次の方法で共有


MATH_NUMERIC 型の使用

ここでは、MATH_NUMERIC 型および指数の処理方法、最大桁数、および最大 10 進桁数の詳細について説明します。 次の項目についても説明します。

  • Exponents (指数)

  • 無効な値

  • 演算の精度

  • Currency

    MATH_NUMERIC 型は数値文字列型です。 この型を使用するには、次の形式のパラメーター値を入力します。

<OptionalSign><IntegerAndFractionalPart><OptionalExponentPart>  

場所

  • <OptionalSign> には、+ または - を指定できます。 + は既定値です。

  • <IntegerAndFractionalPart> は最大 32 桁で、小数点記号は含みません。 この小数点の記号は JD Edwards OneWorld インストールのロケールに固有であり、通常はピリオド (.) またはコンマ (,) となります。 値はすべて整数、すべて小数、または整数と小数の組み合わせのいずれでもかまいませんが、32 桁を超えることはできません。

  • <OptionalExponentPart> は以下と同等です

    'e' <OptionalSign><ExponentDigits>  
    

    場所

  • <OptionalSign> または を指定 + できます。 + は既定値です。

  • <ExponentDigits> は最大 2 桁です。 指定できる値は、-63 ~ 63 です (0 は除く)。

有効な値

有効な MATH_NUMERIC 値の例は次のとおりです。

  • 123.045

  • 4089 (3 桁ごとのコンマがないことに注意してください)

  • -9084

  • -230.75

  • 0.010503

  • 1.023e-10 は、0.0000000001023 と同じです

  • 0.097e5 または 0.097e+5 は、9700 と同じです

  • 1.0e-32 (0.00000000000000000000000000000001 に等しい)

    (この値が有効なのは、整数 '0' が無視され、小数点以下の桁数が 32 であるためです。)

無効な値

無効な値は値の種類に依存します。 小さすぎる小数部はゼロと解釈されます (すべての有効桁が失われます)。 有効桁が多すぎる整数は、予期しない結果になります。 こ場合、必ずしもエラー状態が発生するとは限りません。

指数が大きすぎるか小さすぎる場合は、無効な値としてが返されます。

無効な MATH_NUMERIC 値の例は次のとおりです。

  • 1034.00000000000000000000000000001023 - 有効桁が多すぎます

  • 1.023e-64 - 指数部が小さすぎます

  • 0.00317e64 - 指数部が大きすぎます

    符合と小数点記号以外に数字以外の文字が含まれていると、無効な値になります。

Exponents (指数)

値を入力しやすくするために、JD Edwards OneWorld MATH_NUMERIC により、指数が指定されます。 ただし、ほとんどの値は指数なしで返ります (32 有効桁がすべて示されます)。

演算の精度

演算によって精度が失われると、丸めが行われます。 次に例を示します。

1.9e-31 / 10.0 = 0.00000000000000000000000000000002

1.9e-31 / 100.0 = 0.000000000000000000000000000000000000000000

それ以外では、非常に大きい正の値どうしを乗算した場合に、予期しない結果が発生します。

1.01e32 * 2.053e32 は信頼性の高い結果を生成せず、エラーも発生しません。

実際に使用する場合には、通常、これらの範囲を超えることはありません。

Currency

JD Edwards OneWorld のビジネス関数が通貨値を予期している場合、常に 4 文字の通貨コード用の別のパラメーターがあります。 JD Edwards OneWorld システム用に構成された既定値とは異なる通貨を使用しない限り、このコードを渡す必要はありません。

参照

付録 A: データ型