출력되는 값들중에서 두 가지가 이상했습니다.
=====================================================================================
REPORT Z15_031.
DATA: l_1 TYPE p DECIMALS 3 VALUE '0.000'.
DATA: l_2 TYPE p DECIMALS 3 VALUE '-1.234'.
DATA: l_3 TYPE d VALUE '20071231'.
DATA: l_4 TYPE p VALUE '1000'. "CURR 15, DECIMAL 3
DATA: l_5 TYPE p DECIMALS 3 VALUE '1.234'.
DATA: l_6 TYPE p DECIMALS 3 VALUE '1.678'.
DATA: l_7 TYPE p DECIMALS 3 VALUE '1000'.
DATA: l_8 TYPE f VALUE '123456789E2'.
DATA: l_9 TYPE d VALUE '20071231'.
DATA: l_10 TYPE d VALUE '20071231'.
DATA: l_11(8) TYPE c VALUE 'YYYYMMDD'.
DATA: l_12(10) TYPE c VALUE 'align'.
WRITE: 'L_1',l_1, l_1 NO-ZERO.
WRITE: / 'L_2', l_2, l_2 NO-SIGN.
WRITE: / 'L_3', l_3, l_3 DD/MM/YY, l_3 DDMMYY.
WRITE: / 'L_4', l_4 CURRENCY 'USA', l_4 CURRENCY 'KRW'. ==> "가"
WRITE: / 'L_5', l_5, l_5 DECIMALS 2.
WRITE: / 'L_6', l_6, l_6 ROUND 2, l_6 ROUND -2.
WRITE: / 'L_7', l_7 UNIT 'STD', l_7 UNIT 'KM'.
WRITE: / 'L_8', l_8, l_8 EXPONENT 2.
WRITE: / 'L_9', l_9 USING EDIT MASK '__:__:__', l_9 USING NO EDIT MASK.
WRITE: /10 'L_10', 20 'L_9'. ==> "나"
WRITE: / l_10 UNDER 'L_10', l_9 UNDER 'L_9'.
WRITE: / l_10 NO-GAP, l_11.
WRITE: / l_12 LEFT-JUSTIFIED, / l_12 CENTERED, / l_12 RIGHT-JUSTIFIED.
=====================================================================================
교제에는 "가"의 출렵값은... 1,000 1,000 이라고 나옵니다만
실제로 출력되는 값은... 10.00 1,000 입니다.
도움말을 통해서 확인해보니...
"TCURX"라는 테이블에 통화에 따른 decimal 값들이 나와있었습니다.
테이블에 따르면... KRW의 decimal값은 "0", USA는 아예 없었구요, USDN은 "5"였습니다.
결론은 "가"에서 출력될 값이 정확히 뭔지, 왜 그렇게 나오는지를 모르겠습니다.
두번째로 "나"는 공백이 각각 10, 20으로 주어져서 출력되는것 같은데 그렇게 출력하려면...
WRITE: /10 'L_10', 20 'L_9'. ==> WRITE: AT /10 'L_10', 20 'L_9'.
이렇게 되어야 하지 않을까 생각합니다. 실제로도 수정된 소스로는 제대로 출력되구요.
확인 부탁드립니다.
첫번째 것은 말씀하신 것이 맞습니다. 정정하겠습니다.
두번째는 AT 구문은 생략해도 동일한 결과가 나옵니다만 좀더 정확성을 두기 위해서 AT 구문을 추가하도록 하겠습니다.
감사합니다.