유니코드 문제인지..주소필드에 원치않는 값이 포함되어 있음을 디버깅중에 발견 하였습니다.
시각적으로는 이상없이 보이지만 디버깅이나 출력을 하면 '#'이 들어가 있음을 알 수 있습니다.
여러분의 도움을 받아 급하게 작성하느라 품질은 좀..
하지만 원하시는 분들에게 도움이 되었으면 좋겠습니다.
*&LFA1-MCOD3필드에 '#'이 포함되어 있어 테이블 조회시에는 안보이나
*&출력시 주소에 '#'이 포함되어 나오는 문제가 발생함.
*&본 프로그램은 기존 등록된 주소에 포함된 '#'을 지우는 역할을 함.
*&---------------------------------------------------------------------*
TABLES : LFA1.
Data: IT_LFA1 LIKE TABLE OF LFA1 WITH HEADER LINE.
data: c type c.
data: hexa1 type string.
data: hexa2 type string.
SELECT * INTO CORRESPONDING FIELDS OF TABLE IT_LFA1
FROM LFA1.
SORT IT_LFA1 BY LIFNR.
field-symbols:
field-symbols:
LOOP AT IT_LFA1.
*char -> hexa 로 변환
assign IT_LFA1-MCOD3 to
hexa1 =
*00A0(#) -> 0020(null)으로 변환
IF hexa1 CS '00A0'.
WRITE: IT_LFA1-MCOD3. "수정전 출력
REPLACE ALL OCCURRENCES OF '00A0' IN hexa1 WITH '0020'.
*hexa -> char로 변환
assign
IT_LFA1-MCOD3 =
WRITE: IT_LFA1-MCOD3. "수정후 출력
new-line.
MODIFY LFA1 FROM IT_LFA1.
ENDIF.
ENDLOOP.
감사합니다.