Le Sun Report Builder intègre les fonctions suivantes:
Arrondir
Nom de la Fonction
|
Description
|
Exemple
|
INT
|
Cette fonction renvoit une valeur correspondant à l'entier inférieur le plus proche
|
|
Informations
Nom de la Fonction
|
Description
|
Exemple
|
CHOOSE
|
Cette fonction utilise un indexe pour renvoyer une valeur à partir d'une liste de valeurs.
|
|
HASCHANGED
|
Cette fonction vérifie si les colonnes spécifiées par le nom donné ont changé.
|
|
ISBLANK
|
Cette fonction vérifie si la valeur est indéfinie (null).
|
|
ISERR
|
Cette fonction vérifie si le paramètre est du type "Erreur", mais renvoit "Faux" si l'erreur est du type "NA".
|
|
ISERROR
|
Cette fonction vérifie si le paramètre est du type "Erreur" et renvoit "Faux".
|
|
ISEVEN
|
Cette fonction vérifie s'il s'agit d'une valeur qui est un nombre pair.
|
|
ISLOGICAL
|
Cette fonction vérifie s'il s'agit d'une valeur de type "Logique".
|
|
ISNA
|
Cette fonction vérifie s'il s'agit d'une erreur de type "NA".
|
|
ISNONTEXT
|
Cette fonction vérifie s'il s'agit d'une valeur qui n'est pas du type "Texte".
|
|
ISNUMBER
|
Cette fonction vérifie s'il s'agit d'une valeur qui n'est pas du type "Nombre".
|
|
ISODD
|
Cette fonction vérifie s'il s'agit d'une valeur qui est un nombre impair.
|
|
ISREF
|
Cette fonction vérifie s'il s'agit d'une valeur qui est une référence.
|
|
ISTEXT
|
Cette fonction vérifie s'il s'agit d'une valeur est du type "Texte".
|
|
NA
|
Cette fonction renvoit la constante d'erreur NA.
|
|
Date/Temps
Nom de la Fonction
|
Description
|
Exemple
|
DATE
|
Cette fonction renvoit le nombre de jours écoulé depuis le 01.01.1900
Nom du Paramètre
|
Description du Paramètre
|
Month
|
Mois
|
Day
|
Jour
|
|
|
DATEDIF
|
Cette fonction renvoit le nombre de jours entre une première date et une deuxième date.
Nom du Paramètre
|
Description du Paramètre
|
Date2
|
Deuxième date.
|
Format
|
Code de Formatage.
|
|
|
DATEVALUE
|
Cette fonction renvoit un numéro de série correspondant à une date à partir d'un texte donné.
|
|
DAY
|
Cette fonction renvoit le jour d'une date donnée
|
|
HOUR
|
Cette fonction renvoit l'heure (de 0 jusqu'à 23) à partir d'une heure donnée.
|
|
MONTH
|
Cette fonction renvoit le mois d'une date donnée
|
|
NOW
|
Cette fonction renvoit l'heure actuelle
|
|
TIME
|
Cette fonction renvoit l'heure
Nom du Paramètre
|
Description du Paramètre
|
Minute.
|
Minutes
|
Second
|
Secondes
|
|
|
TODAY
|
Cette fonction renvoit la date actuelle
|
|
WEEKDAY
|
Cette fonction renvoit le jour de la semaine à partir d'une date.
Nom du Paramètre
|
Description du Paramètre
|
Type
|
Cette fonction définit le type de résultat (de 1 à 3)
|
|
|
YEAR
|
Cette fonction renvoit l'année à partir d'une date donnée
|
|
Text
Nom de la Fonction
|
Description
|
Exemple
|
EXACT
|
Cette fonction indique si deux valeurs de texte sont identiques en effectuant une comparaison sensible à la casse.
Nom du Paramètre
|
Description du Paramètre
|
Text2
|
Le deuxième texte.
|
|
|
FIND
|
Returns the starting position of a given text.
Nom du Paramètre
|
Description du Paramètre
|
Text
|
Le texte d'origine.
|
Index
|
L'indexe de départ.
|
|
|
LEFT
|
Cette fonction renvoit une chaîne de caractères en partant du caractère numéro "n" vers la gauche, où "n" est la position du caractère à partir duquel s'applique la fonction.
Nom du Paramètre
|
Description du Paramètre
|
Length
|
Cette fonction renvoit la longueur d'une chaîne de caractères.
|
|
|
LEN
|
Cette fonction renvoit la longueur de la chaîne de caractères qui lui est passée.
|
|
LOWER
|
Cette fonction renvoit la chaîne en minuscules.
|
|
MID
|
Cette fonction renvoit une chaîne de caractère, à partir d'une chaîne initiale, de la position de départ, et de la longueur de la chaîne.
Nom du Paramètre
|
Description du Paramètre
|
Start
|
L'indexe de départ.
|
Length
|
La longueur de la chaîne.
|
|
|
REPLACE
|
Remplace une chaîne de caractères d'origine par une autre chaîne passé en paramètre, et dans l'indexe de départ et la fourchette de longueur.
Nom du Paramètre
|
Description du Paramètre
|
Start
|
L'indexe de départ.
|
Len
|
La longueur.
|
New
|
La nouvelle chaîne à insérer.
|
|
|
REPT
|
Cette fonction renvoit un texte répété par un nombre de fois défini par "Count".
Nom du Paramètre
|
Description du Paramètre
|
Count
|
Le nombre de fois à répéter le texte.
|
|
|
RIGHT
|
Cette fonction renvoit une chaîne de caractères en partant du caractère "Count" vers la droite, où "Count" est la position du caractère à partir duquel s'applique la fonction.
Nom du Paramètre
|
Description du Paramètre
|
Count
|
Le numéro de la position du caractère de départ.
|
|
|
SUBSTITUTE
|
Remplace une chaîne de texte par une nouvelle chaîne. Par défaut chaque fois que la chaîne est rencontrée, elle sera remplacée par la nouvelle chaîne. Autrement, on peut préciser le nombre de remplacements par le paramètre "Which".
Nom du Paramètre
|
Description du Paramètre
|
Old
|
La chaîne de caractères à remplacer.
|
New
|
La chaîne de caractères à insérer.
|
Which
|
Le nombre de fois que la chaîne à remplacer doit être recherchée.
|
|
|
T
|
Cette fonction renvoit la valeur du texte recherché ou bien une chaîne de longueur zéro pour des valeurs qui ne sont pas des chaînes de caractères de type "Texte".
|
|
TEXT
|
Renvoit la valeur passée en tant que texte.
|
|
TRIM
|
Renvoit la chaîne de caractères passée en enlevant tous les espaces devant et après la chaîne. Des espaces multiples sont remplacés par une seule espace.
|
|
UPPER
|
Renvoit la chaîne de caractères passée en majuscules.
|
|
URLENCODE
|
Applique l'encodage URL à une chaîne de caractères passée en premier paramètre en utilisant l'encodage indiqué en deuxième paramètre. Si aucun encodage n'est précisé, ISO-8859-1 est appliqué.
Nom du Paramètre
|
Description du Paramètre
|
Encoding
|
L'encodage à utiliser.
|
|
|
Mathematical
Nom de la Fonction
|
Description
|
Exemple
|
ABS
|
Renvoit la valeur absolue (non négative) de la valeur à laquelle est appliquée la fonction.
|
|
AVERAGE
|
Renvoit la moyenne d'une liste de valeurs numériques.
|
|
Even
|
Renvoit une valeur arrondie au nombre entier pair supérieur.
|
|
MAX
|
Renvoit la valeur maximale à partir d'un ensemble de valeurs.
|
|
MIN
|
Renvoit la valeur minimale à partir d'un ensemble de valeurs.
|
|
MOD
|
Renvoit le modulo lorsqu'un nombre est divisé par un autre.
Nom du Paramètre
|
Description du Paramètre
|
Divisor
|
Le diviseur.
|
|
|
ODD
|
Renvoit une valeur arrondie au nombre entier impair supérieur.
|
|
SUM
|
Faire la somme d'une liste de valeurs.
|
|
Logical
Nom de la Fonction
|
Description
|
Exemple
|
AND
|
ET logique
|
|
FALSE
|
FAUX logique
|
|
IF
|
Exécution Conditionnelle
Nom du Paramètre
|
Description du Paramètre
|
Une expression qui est évaluée si la condition est remplie.
|
True-Term
|
Une expression qui est évaluée si la condition n'est pas remplie.
|
False-Term
|
|
|
AND
|
ET logique
|
|
OR
|
OU logique
|
|
TRUE
|
VRAI logique
|
|
XOR
|
XOR logique
|
|
Code nécessaire pour obtenir la fonction à partir du fichier jar libformula
[java]
import java.util.Locale;
import org.jfree.formula.DefaultFormulaContext;
/*
* Si vous voulez changer ce modèle, choisissez Outils | Modèles
* et ouvrez le modèle dans l'éditeur.
*/
import org.jfree.formula.function.FunctionCategory;
import org.jfree.formula.function.FunctionDescription;
import org.jfree.formula.function.FunctionRegistry;
/**
*
* @author Ocke Janssen
*/
public class NewMain {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
DefaultFormulaContext obj = new DefaultFormulaContext();
FunctionRegistry func = obj.getFunctionRegistry();
FunctionCategory[] categories = func.getCategories();
for ( int i = 0 ; i < categories.length;++i)
{
String display = categories[i].getDisplayName(Locale.ENGLISH);
System.out.println( "" + display +"
");
System.out.println( "{| class=\"prettytable\" cellpadding=\"10\" border=\"1\"");
System.out.println( "| Function Name");
System.out.println( "| Description ");
System.out.println( "| Example ");
String[] functions = func.getFunctionNamesByCategory(categories[i]);
for(int j= 0; j < functions.length;++j)
{
FunctionDescription desc = func.getMetaData(functions[j]);
System.out.println( "");
System.out.println( "|-");
System.out.println("| "+ desc.getDisplayName(Locale.ENGLISH));
System.out.println("| "+ desc.getDescription(Locale.ENGLISH));
int count = desc.getParameterCount();
if ( count > 1 ){
System.out.println( "{| class=\"prettytable\" cellpadding=\"10\" border=\"1\"");
System.out.println( "| Parameter Name ");
System.out.println( "| Parameter Description ");
System.out.println( "");
}
for(int k= 1;k < count;++k){
try{
System.out.println( "|-");
System.out.println("| " + desc.getParameterDisplayName(k,Locale.ENGLISH) );
System.out.println("| " + desc.getParameterDescription(k,Locale.ENGLISH) );
} catch(Exception e){
}
}
if ( count > 1 ){
System.out.println("|}");
System.out.println("");
}
System.out.println("| ");
}
System.out.println("|}");
System.out.println("
");
}
}
}