Guide du Designer Crystal Reports pour Rational Application Developer

Moment d'évaluation

Les formules ne sont pas évaluées "à la demande" ou appelées (autrement dit, une formule donnée ne peut pas appeler une autre formule pour effectuer un traitement particulier, même par le biais de variables globales).
Par exemple :
Rem Formula PrintSquare
Global x As Number
x = 5
formula = "The square of " & CStr(x,0) & " is " &
ToText ({@square, 0) & "."

Rem Formula Square
Global x As Number
formula = x * x
En utilisant la formule ImprimerCarré dans un rapport, vous obtenez :
The square of 5 is 0.
Dans cet exemple, la formule ImprimerCarré utilise la formule Carré ; Crystal Reports doit donc ordonner l'évaluation des deux formules. La formule Carré est évaluée avant la formule ImprimerCarré. Lorsque la formule Carré est évaluée, la valeur de la variable globale x est 0 car elle représente une variable numérique non initialisée.
Les fonctions personnalisées sont au contraire évaluées à la demande ou appelées. Utilisons une fonction personnalisée dans l'exemple précédent :
Rem Formula PrintSquare
formula = "The square of " & CStr (5,0) & " is " &
CStr(cf9Square (5),0) + "."

Rem Custom Function cf9Square
Function cf9Square (x As Number)
cf9Square = x * x
End Function
Si vous utilisez la formule ImprimerCarré dans votre rapport, vous obtenez :
The square of 5 is 25.



Business Objects, une société du groupe SAP
http://www.france.businessobjects.com/
Services de support technique
http://www.businessobjects.com/services/support/
Documentation des produits sur le Web
http://support.businessobjects.com/documentation/