Précédent Suivant

Classe BirtMath

La classe BirtMath fournit des fonctions permettant de manipuler les données numériques, par exemple, pour ajouter, soustraire, multiplier, diviser et arrondir des nombres. Un nombre est un objet générique qui peut être transtypé dans la zone Type de données de la boîte de dialogue Edition de la liaison de données. Cette classe est statique. L'application ne peut pas créer d'instance de la classe.

BirtMath.add

Cette fonction retourne la somme de deux nombres.

Syntaxe

Nombre BirtMath.add( Nombre n1, Nombre n2 )

Paramètres

n1

Objet Nombre. Premier nombre à utiliser dans le calcul.

n2

Deuxième nombre à utiliser dans le calcul.

Renvoie

Objet Nombre. Nombre résultant de l'ajout de n1 et n2.

Exemple

L'exemple suivant renvoie la somme des valeurs figurant dans les zones SalesTotal et Shipping :

BirtMath.add( row["SalesTotal"], row["Shipping"] )

BirtMath.ceiling

Cette fonction arrondit un nombre vers le nombre supérieur au dessus de zéro, au multiple le plus proche.

Syntaxe

Number BirtMath.ceiling( Number n, Number significance )

Paramètres

n

Objet Nombre. Nombre à arrondir.

significance

Objet Nombre. Multiple auquel arrondir n.

Renvoie

Objet Nombre. Nombre résultant de l'arrondi. Si n est un multiple exact de significance, aucun arrondi n'est calculé.

Exemples

BirtMath.ceiling( ) est généralement utilisé pour arrondir des prix. Par exemple, pour éviter d'utiliser les pennies (1 cent), il est possible d'arrondir les prix dans une zone de prix au nickel (5 cents) le plus proche avec l'expression suivante :

BirtMath.ceiling( row["Price"] , 0.05 )

Si le prix est 20.52, l'expression retourne 20.55.

L'expression suivante arrondit le prix au dime (10 cents) le plus proche :

BirtMath.ceiling( row["Price"] , 0.1 )

Si le prix est 20.52, l'expression retourne 20.60. Si le prix est 20.40, l'expression retourne 20.40. Aucun arrondi n'est calculé, car 20.40 est un multiple de 0.1.

L'expression suivante arrondit les prix au dollar le plus proche :

BirtMath.ceiling( row["Price"] , 1 )

Si le prix est 20.30, l'expression retourne 21.

BirtMath.divide

Cette fonction retourne le résultat de la division d'un nombre par un autre.

Syntaxe

Nombre BirtMath.divide( Nombre dividend, Nombre divisor )

Paramètres

dividend

Objet Nombre. Nombre à diviser.

divisor

Objet Nombre. Nombre par lequel le dividende est divisé.

Renvoie

Objet Nombre. Nombre résultant de la division du dividende par le diviseur.

Exemples

L'exemple suivant montre le résultat de la division de nombres :

BirtMath.divide( 10, 2 ) // retourne 5
BirtMath.divide( 2, 10) // retourne 0.2

L'exemple suivant retourne le résultat de la division des valeurs de la zone Total par les valeurs de la zone Quantity :

BirtMath.divide( row["Total"], row["Quantity"] )

BirtMath.mod

Cette fonction retourne le reste de la division d'un nombre.

Syntaxe

Nombre BirtMath.mod( Nombre number, Nombre divisor )

Paramètres

number

Objet Nombre. Nombre à diviser.

divisor

Objet Nombre. Nombre par lequel le premier nombre est divisé. Vous devez spécifier un nombre autre que zéro.

Renvoie

Reste de la division d'un nombre.

Exemples

Les exemples suivants montrent le résultat que retourne la fonction pour des nombres spécifiques :

BirtMath.mod( 10, 3 ) // retourne 1
BirtMath.mod( 10, 5 ) // retourne 0
BirtMath.mod( 10, 6 ) // retourne 4

L'exemple suivant permet de déterminer si la zone Grade contient des nombres impairs ou pairs. Lorsque le diviseur est 2, la fonction retourne 0 pour les nombres pairs et 1 pour les nombres impairs.

BirtMath.mod( row["Grade"], 2 )

BirtMath.multiply

Cette fonction retourne la multiplication de deux nombres.

Syntaxe

Nombre BirtMath.multiply( Nombre n1, Nombre n2 )

Paramètres

n1

Objet Nombre. Premier nombre à utiliser dans le calcul.

n2

Objet Nombre. Deuxième nombre à utiliser dans le calcul.

Renvoie

Objet Nombre. Nombre résultant de la multiplication de n1 et n2.

Exemple

L'exemple suivant retourne le résultat de la multiplication des valeurs des zones QuantityOrdered et PriceEach :

BirtMath.multiply( row["QuantityOrdered"], row["PriceEach"] )

BirtMath.round

Cette fonction arrondit un nombre à un nombre de chiffres spécifié.

Syntaxe

Nombre BirtMath.round( Nombre number, Nombre dec )

Paramètres

number

Objet Nombre. Nombre à arrondir.

dec

Objet Nombre. Nombre de chiffres pour l'arrondi. Si vous omettez cet argument, la fonction suppose que la valeur est 0.

Renvoie

Objet Nombre. Nombre arrondi au nombre spécifié de chiffres.

Exemples

Les exemples suivants montrent le résultat que retourne la fonction pour des nombres spécifiques :

BirtMath.round( 1545.50 ) // retourne 1546
BirtMath.round( 1545.56, 1 ) // retourne 1545.6
BirtMath.round( 1545.23, 1 ) // retourne 1545.2
BirtMath.round( 1545.50, -1 ) // retourne 1550

L'exemple suivant arrondit les valeurs de la zone PriceEstimate pour retourner un entier :

BirtMath.round( row["PriceEstimate"], 0 )

BirtMath.roundDown

Cette fonction arrondit un nombre vers le nombre inférieur avec le nombre de chiffres spécifiés.

Syntaxe

Nombre BirtMath.roundDown( Nombre number, Nombre dec )

Paramètres

number

Objet Nombre. Nombre à arrondir.

dec

Objet Nombre. Nombre de chiffres pour l'arrondi à un nombre inférieur. Si vous omettez cet argument, la fonction suppose que la valeur est 0.

Renvoie

Objet Nombre. Nombre arrondi au nombre de chiffres spécifié vers le nombre inférieur.

Exemples

Les exemples suivants montrent le résultat que retourne la fonction pour des nombres spécifiques :

BirtMath.roundDown( 1545.50 ) // retourne 1545
BirtMath.roundDown( 1545.56, 1 ) // retourne 1545.5
BirtMath.roundDown( 1545.23, 1 ) // retourne 1545.2
BirtMath.roundDown( 1545.50, -1 ) // retourne 1540

L'exemple suivant arrondit vers un nombre inférieur les valeurs de la zone PriceEstimate pour retourner un entier :

BirtMath.roundDown( row["PriceEstimate"], 0 )

BirtMath.roundUp

Cette fonction arrondit un nombre au nombre de chiffres supérieurs défini.

Syntaxe

Nombre BirtMath.roundUp( Nombre number, Nombre dec )

Paramètres

number

Objet Nombre. Nombre à arrondir.

dec

Objet Nombre. Nombre de chiffres pour l'arrondi vers le nombre supérieur. Si vous omettez cet argument, la fonction suppose que la valeur est 0.

Renvoie

Objet Nombre. Nombre arrondi au nombre de chiffres spécifié vers le nombre supérieur.

Exemples

Les exemples suivants montrent le résultat que retourne la fonction pour des nombres spécifiques :

BirtMath.roundUp( 1545.50 ) // retourne 1546
BirtMath.roundUp( 1545.56, 1 ) // retourne 1545.6
BirtMath.roundUp( 1545.23, 1 ) // retourne 1545.3
BirtMath.roundUp( 1545.50, -1 ) // retourne 1550

L'exemple suivant arrondit vers le nombre supérieur les valeurs de la zone PriceEstimate pour retourner un entier :

BirtMath.roundUp( row["PriceEstimate"], 0 )

BirtMath.safeDivide

Cette fonction retourne le résultat de la division d'un nombre par un autre, en évitant la division par zéro.

Syntaxe

Nombre BirtMath.safeDivide( Nombre dividend, Nombre divisor, objet ifZero )

Paramètres

dividend

Objet Nombre. Nombre à diviser.

divisor

Objet Nombre. Nombre par lequel le dividende est divisé.

ifZero

Objet. Valeur à renvoyer lorsque le diviseur est zéro.

Renvoie

Objet Nombre. Objet nombre. Nombre résultant de la division du dividende par le diviseur.

Exemples

L'exemple suivant montre le résultat que retourne la fonction pour des nombres spécifiques :

BirtMath.safeDivide( 10, 2, 0 ) // retourne 5
BirtMath.safeDivide( 10, 0, 0 ) // retourne 0

L'exemple suivant retourne le résultat de la division des valeurs de la zone Revenue par les valeurs de la zone Volume. Si le volume est 0, la fonction retourne 0.

BirtMath.safeDivide( row["Revenue"], row["Volume"], 0 )

BirtMath.subtract

Cette fonction retourne le résultat de la soustraction d'un nombre d'un autre.

Syntaxe

Nombre BirtMath.subtract( Nombre n1, Nombre n2 )

Paramètres

n1

Objet Nombre. Nombre duquel soustraire.

n2

Objet Nombre. Nombre à soustraire de n1.

Renvoie

Objet Nombre. Nombre résultant de la soustraction de n2 de n1.

Exemple

L'exemple suivant montre le résultat de la soustraction de nombres spécifiques :

BirtMath.subtract( 12, 4 ) // retourne 8
BirtMath.subtract( 4, 12) // retourne -8

L'exemple suivant retourne le résultat de la soustraction des valeurs de la zone Discount des valeurs de la zone Total :

BirtMath.subtract( row["Total"], row["Discount"] )

(c) Copyright Actuate Corporation 2013