DATA : BEGIN OF itab occurs 0,
mandt like kna1-mandt,
KUNNR LIKE KNA1-KUNNR,
LAND1 LIKE KNA1-LAND1,
NAME1 LIKE KNA1-NAME1,
NAME2 LIKE KNA1-NAME2,
NAME(40) TYPE C,
END OF ITAB.
여기서 CONCATENATE을 사용해서 NAME1과 NAME2의 문자를 합칠려고 합니다.
제가 짜본 구문은
CONCATENATE ITAB_KNA1-NAME1 ITAB_KNA1-NAME2 INTO ITAB-NAME.
MODIFY ITAB.
CONCATENATE ITAB-NAME1 ITAB-NAME2 INTO ITAB-NAME.
MODIFY ITAB.
이렇게 둘 다 안되네요..
어떻게 코딩을 해야 되나요..
댓글 3
-
SAP 프로
2008.02.15 20:58
-
빠코
2008.02.15 22:17
DATA : BEGIN OF ITAB OCCURS 0,
MANDT LIKE KNA1-MANDT,
KUNNR LIKE KNA1-KUNNR,
LAND1 LIKE KNA1-LAND1,
NAME1 LIKE KNA1-NAME1,
NAME2 LIKE KNA1-NAME2,
NAME(40) TYPE C,
END OF ITAB.
SELECT *
INTO CORRESPONDING FIELDS OF TABLE ITAB
FROM KNA1.
LOOP AT ITAB WHERE NAME2 IS NOT INITIAL.
CONCATENATE ITAB-NAME1 ITAB-NAME2 INTO ITAB-NAME.
MODIFY ITAB.
ENDLOOP.
짱님께서 올리신 두번쨰 방법으로 하니까 되는데요 -ㅅ-
name1과 name2가 캐릭터 35자리고 name은 캐릭터 40자리라서 짤리는거 아닌가요?
여튼 두번째 방법으로 하신거는 됩니다.
-
ABAP짱!
2008.02.15 22:23
네 감사합니다.. ^^ 살짝 민망하네요~
F1 key 눌러서 보시면 예제에
DATA: t1 TYPE c LENGTH 10 VALUE 'We',
t2 TYPE c LENGTH 10 VALUE 'have',
t3 TYPE c LENGTH 10 VALUE 'all',
t4 TYPE c LENGTH 10 VALUE 'the',
t5 TYPE c LENGTH 10 VALUE 'time',
t6 TYPE c LENGTH 10 VALUE 'in',
t7 TYPE c LENGTH 10 VALUE 'the',
t8 TYPE c LENGTH 10 VALUE 'world',
result TYPE string.
CONCATENATE t1 t2 t3 t4 t5 t6 t7 t8
INTO result.
...
CONCATENATE t1 t2 t3 t4 t5 t6 t7 t8
INTO result SEPARATED BY space.
itab-name 의 타입을 string으로 한번 해보세요.