Utilisation du type MATH_NUMERIC
Cette rubrique décrit le type MATH_NUMERIC et détaille la gestion des exposants, le nombre maximal de chiffres et le nombre maximal de chiffres décimaux. Il comprend également une discussion sur les éléments suivants :
exposants ;
Valeurs non valides
précision des opérations ;
Devise
Le type MATH_NUMERIC est un type de chaîne numérique. Pour l'utiliser, vous devez entrer les valeurs des paramètres au format suivant :
<OptionalSign><IntegerAndFractionalPart><OptionalExponentPart>
Where
<OptionalSign>
peut avoir la valeur+
ou-
.+
est la valeur par défaut.<IntegerAndFractionalPart>
inclut jusqu'à 32 chiffres significatifs, sans compter le symbole décimal. Le symbole décimal est spécifique aux paramètres régionaux de l'installation JD Edwards OneWorld, généralement un point (.) ou une virgule (,). Les chiffres peuvent être des nombres entiers et/ou des fractions, et sont 32 au maximum.<OptionalExponentPart>
équivaut à :'e' <OptionalSign><ExponentDigits>
Where
<OptionalSign>
peut être+
ou -.+
est la valeur par défaut.<ExponentDigits>
inclut jusqu'à deux chiffres. Les valeurs comprises entre 63 et -63 sont autorisées (à l'exception de zéro).
Valeurs valides
Voici des exemples de valeurs MATH_NUMERIC valides :
123.045
4089 (notez qu'il n'y a pas de virgule pour les milliers)
-9084
-230.75
0.010503
1.023e-10, qui est équivalent à 0.0000000001023
0.097e5 ou 0.097e+5, qui est équivalent à 9700
1.0e-32, qui est équivalent à 0.00000000000000000000000000000001
(Cette valeur est valide car, dans ce cas, l'intégrale « 0 » est ignorée, 32 chiffres fractionnels significatifs.)
Valeurs non valides
Les valeurs non valides dépendent du type de valeur. Une fraction décimale trop petite est interprétée comme un zéro (tous les chiffres significatifs sont perdus). Un nombre entier ayant trop de chiffres significatifs génère des résultats inattendus. JD Edwards OneWorld ne génère pas toujours une condition d'erreur dans ce cas.
Un exposant trop grand ou trop petit retourne comme une valeur non valide.
Voici des exemples de valeurs MATH_NUMERIC non valides :
1034.00000000000000000000000000001023 (trop de chiffres significatifs)
1.023e-64 (exposant trop petit)
0.00317e64 (exposant trop grand)
Les caractères non numériques autres que ceux appropriés pour les signes et symboles décimaux génèrent une valeur non valide.
exposants ;
Les exposants fournis par le type MATH_NUMERIC de JD Edwards OneWorld facilitent la saisie des valeurs. Toutefois, la plupart des valeurs sont renvoyées sans exposant (avec les 32 chiffres significatifs visibles).
précision des opérations ;
Si une opération entraîne une perte de précision, un arrondi est effectué. Par exemple :
1.9e-31 / 10.0 = 0.00000000000000000000000000000002
1.9e-31 / 100.0 = 0.0000000000000000000000000000000000
Dans d'autres cas, des résultats imprévisibles sont générés, comme lorsqu'une valeur positive très grande est multipliée par une autre.
1.01e32 * 2.053e32 ne produit pas de résultats fiables et ne génère pas d’erreur.
Pour la plupart des scénarios d'entreprise, ces plages ne sont pas dépassées.
Devise
Lorsqu'une fonction d'entreprise JD Edwards OneWorld attend une valeur de devise, la fonction d'entreprise inclut toujours un paramètre distinct pour un code de devise à quatre caractères. Il n'est pas nécessaire de transmettre ce code, sauf si vous utilisez une devise autre que celle par défaut configurée pour le système JD Edwards OneWorld.