OPALE - 10.0 - Utilisation

Fonctions mathématiques

De MappingDoc

Les fonctions

Abs

Cette fonction renvoie la valeur absolue d'une expression.

Exemple :

DB.float = 15.58
DB.res = Abs ( DB.float )
DB.res => 15

Ceil

Cette fonction renvoie l'entier supérieur le plus proche.

Exemple :

DB.float = 15.58
DB.res = Ceil ( DB.float )
DB.res => 16

ConvertBase

Cette fonction convertit un nombre d'une base à l'autre. Le paramètre est un champ et il faut une base en entrée et une autre en sortie. Les bases vont de 2 à 36.

L'exemple suivant montre comment convertir un champ hexadécimal de valeur FFAA en binaire :

DB.val = "FFAA"
DB.output = ConvertBase ( $DB.val , 16 , 2 )
DB.output = 1111111110101010

Floor

Cette fonction renvoie l'entier inférieur le plus proche.

Exemple :

DB.float = 15.58
DB.res = Floor ( DB.float )
DB.res => 15

Maxi

Cette fonction renvoie la valeur la plus haute parmi deux valeurs passées en paramètres.

Exemple :

DB.num1 = 10.55
DB.num2 = 99.99
DB.res = Maxi ( DB.num1 , DB.num2 )

→ résultat 99.99

Modulo

Cette fonction renvoie le reste de la division d'un premier entier par un second.

DB.int1 = 22
DB.int2 = 4
DB.res = Modulo ( DB.int1 , DB.int2 )
DB.res => 2

Mini

Cette fonction renvoie la valeur la plus basse parmi deux valeurs passées en paramètres.

Exemple :

DB.num1 = 10.55
DB.num2 = 99.99
DB.res = Mini ( DB.num1 , DB.num2 )  

--> résultat 10.55

Percent

Cette fonction renvoie la valeur x en pourcentage de la valeur y.

Exemple :

DB.int1 = 3
DB.int2 = 4
DB.res = Percent ( DB.int1 , DB.int2 )
DB.res => 75 (3 is 75% of 4)

Power

Cette fonction renvoie la valeur de x élevée à la puissance de y.

DB.int1 = 3
DB.int2 = 3
DB.res = Power ( DB.int1 , DB.int2 )
DB.res => 9

Les opérateurs logiques

And

L'opérateur conjonctif And est utilisé dans le conditionnement pour lier deux conditions.Les deux conditions doivent être valides pour que la combinaison des deux soit valide.

Exemple : Pour uniquement sélectionner les produits dont le prix est inférieur à 1000 et supérieur à 100 dans MYTABLE.($PRICE < 1000 And $PRICE > 100)

Nor

L'opérateur conjonctif Nor est utilisé dans le conditionnement pour lier deux conditions.Aucune des deux conditions ne doit être valide pour que la combinaison des deux soit valide.

Exemple : Dans MYTABLE, pour sélectionner les produits dont le prix n'est ni inférieur à 100 ni supérieur à 1000 (donc les prix compris entre 100 et 1000).

($PRICE < 100 Nor $PRICE > 1000)

Or

L'opérateur conjonctif Or est utilisé dans le conditionnement pour lier deux conditions.Une des deux conditions au moins doit être valide pour que la combinaison des deux soit valide.

Exemple : Dans MYTABLE, Poursélectionner les produits dont le prix est inférieur à 100 ou supérieur à 1000.

Xor

L'opérateur conjonctif Xor est utilisé dans le conditionnement pour lier deux conditions. Une seule des deux conditions doit être valide pour que la combinaison des deux soit valide (si les deux ou aucune ne sont valides, la combinaison des deux n'est pas valide).

Exemple : Pour sélectionner dans MYTABLE les produits dont le prix est inférieur à 100 ou la quantité est inférieure à 10 (mais pas les produits dont le prix est inférieur à 100 et la quantité inférieure à 10).

(Value of PRICE < 100 Xor Value of QTY < 10)


Opérateurs mathématiques

CONNECT permet d'utiliser tous les opérateurs ci-dessous et de les combiner (dans ce cas bien utiliser les parenthèses). Pour ajouter un opérateur, il suffit de double-cliquer dessus dans la liste des opérateurs.

Certains opérateurs ne sont disponibles qu'en numérique ou alphanumérique.

  • Addition +

L'opérateur sert à accomplir l'addition de deux expressions.

Calcul = Expression1 + Expression2

Exemple :

Additionner la valeur du champ DISCQTY à la valeur du champ AMOUNT de la table PRODUIT.

DB.MONCALCUL = $PRODUIT.AMOUNT + $PRODUIT.DISCQTY


En numérique, les deux champs sont additionnés : 2+2 = 4

En alphanumérique, les deux champs sont concaténés : A+B = AB


  • Addition affectation +=

Cet opérateur ajoute la valeur d'une expression à la valeur d'une variable et assigne le résultat à cette variable.

résultat += expression (correspond à résultat = résultat + expression)

Exemple :

Pour insérer un sous-total dans votre document : la somme des montants des factures déjà traitées. A chaque fois qu'une facture est traitée, il faut ajouter le montant de la facture en cours à la somme des montants des factures déjà traitées.

Le calcul Sous-total dont la séquence sera : TOTAL+= $PRODUIT.MONTANT


  • Différent !=

Cet opérateur de comparaison teste la non-égalité de deux expressions.

La condition n'est validée que si les deux expressions sont différentes.

Exemple :

Sélectionner uniquement les clients pour lesquels l'adresse de livraison (champ DELIVERYADDRESS) est différente de l'adresse de facturation (champ INVOICINGADDRESS).

($DELIVERYADDRESS != $INVOICINGADDRESS)


  • Différent du précédent

Cet opérateur de comparaison teste la non-égalité de deux valeurs de champ successives.La condition renvoie Vrai si les deux expressions sont différentes et Faux si elles sont identiques.

Exemple d'application :

Vous souhaitez sélectionner le numéro client (CUSTOMERNB) seulement s'il est différent du précédent.

DiffPrevious ( $CUSTOMERNB)


  • Division /

Cet opérateur sert à diviser une expression par une autre.

Calcul = Expression1 / Expression2

Exemple :

diviser le champ AMOUNT par le champ QTY de la table PRODUIT.

DB.CALCUL= $AMOUNT.PRICE * $PRODUIT.QTY


  • Egalité =

Cet opérateur de comparaison sert à tester l'égalité de deux expressions. La condition renvoie Vrai si les deux expressions sont égales, Faux sinon.

Exemple :

Sélectionner les clients pour lesquels le numéro de département (champ DEP) est 40. $DEP = 40


  • Egal au précédent

Cet opérateur de comparaison teste l'égalité de deux valeurs de champ successives. La condition renvoie Vrai si les deux expressions sont identiques et Faux si elles sont différentes.

Exemple d'application :

Sélectionner le numéro client (CUSTOMERNB) seulement s'il est identique au précédent. EqualPrevious ( $CUSTOMERNB)


  • Inférieur <

Cet opérateur de comparaison sert à tester l'infériorité d'une expression par rapport à une autre. La condition renvoie Vrai si la première expression est plus petite que la seconde, Faux sinon.

Exemple :

Pour sélectionner les produits pour lesquels le prix (champ PRICE) est inférieur à 1000. $PRICE < 1000

En alphanumérique, les valeurs sont à mettre entre guillemets : $NOM < "M"


  • Inférieur ou égal <=

Cet opérateur de comparaison sert à tester l'infériorité ou l'égalité d'une expression par rapport à une autre.La condition renvoie Vrai si la première expression est plus petite ou égale à la seconde, Faux sinon.

Exemple :

Pour sélectionner les produits pour lesquels le prix (champ PRICE) est inférieur ou égal à 1000. $PRICE <= 1000

En alphanumérique, les valeurs sont à mettre entre guillemets. $NOM <= "M"


  • Multiplication *

Cet opérateur multiplie une expression par une autre. Résultat = Expression1 * Expression2

Exemple :

Multiplier le champ PRICE par le champ QTY de la table PRODUIT : DB.CALCUL= $PRODUIT.PRICE * $PRODUIT.QTY


  • Parenthèse fermante )

Cet opérateur permet de fermer une parenthèse dans une séquence.


  • Parenthèse ouvrante (

Cet opérateur permet d'ouvrir une parenthèse dans une séquence.


  • Point virgule ;

Cet opérateur permet d'ajouter un point virgule dans une séquence. Le point virgule est utilisé notamment dans le formatage de champs.


  • Soustraction -

Cet opérateur sert à effectuer une soustraction. Calcul = Expression1 - Expression2

Exemple :

soustraire la valeur du champ DISCQTY à la valeur du champ AMOUNT de la table PRODUIT.


  • Supérieur >

Cet opérateur de comparaison sert à tester la supériorité d'une expression par rapport à une autre. La condition renvoie Vrai si la première expression est plus grande que la seconde, Faux sinon.


Exemple :

Sélectionner les produits pour lesquels le prix (champ PRICE) est supérieur à 100. $PRICE > 1000

En alphanumérique, les valeurs sont à mettre entre guillemets. $NOM > "M"

DB.MONCALCUL = $PRODUIT.AMOUNT - $PRODUIT.DISCQTY


  • Virgule ,

Cet opérateur permet de placer une virgule dans une séquence.