CATS_NUMERIC_INPUT_CHECKを通った際に、小数点以下が欠けてしまったという内容です。
■これから注意すること
CATS_NUMERIC_INPUT_CHECKを使う際はOUTPUTのパラメータの桁数に注意する
→INPUTパラメータの数値の最大桁数を外部形式にした状態+1桁が必要(詳細は下記参照)
■汎用モジュール処理関連
※汎用モジュール内の動きは下記にまとめてますが、デバッグしたほうがわかりやすい※
変換前の変数(INPUTパラメータ)
CHAR14桁 13(2)想定→12345678901.12
変換後の変数(OUTPUTパラメータ)
CHAR16桁汎用モジュールのロジック:
①最初に外部形式に変換(処理の形式上、外部形式にした状態の桁数+1が必要)
②カンマをスペースに変換
③スペース除去2033331299.97の例
→2,033,331,299.97(16桁)なので、変換後の変数は①に必要な長さ(16+1→17桁)に1足りていない
① 2,033,331,299.9(Space+2,033,331,299.9) この時点で7が切れる
②2 033 331 299.9
③2033331299.9