a b c d 필드가 있는 테이블에 a b c d e (e 필드가 추가된 테이블)을 append 해야할 경우
어떻게 해야하는지 알려주십시오..
댓글 5
-
bd
2008.03.07 04:07
-
activeman
2008.03.07 05:27
Web In Abap 님
itab2[] = itab1[] 로 하면 itab1에 있는걸 itab2로 copy 하는 것이지 append 하는 기능은 아닌것 같습니다.
즐밥하세요..
-
지의
2008.03.07 17:11
itab2[] = itab1[]. 이건... 같은 구조가 아니면 안되죠.. 저런 경우는 필드 길이가 같다면 말 그대로 같은 인터널 테이블인데 e 라는 필드가 추가 된거라면...
append lines of itab1 to itab2. 라고 하시면 간단하겠네요.
-
옆집남자
2008.03.07 17:52
그냥 대충 밑과 같다면,
*data : begin of it_talbe occurs 0,
* a type i,
* b type i,
* c type i,
* end of it_table.
--e 추가---
*data : begin of it_table_2 occurs 0,
* e type i.
* include structure it_table.
*data : end of it_table_2.
기존에 it_table에 값들이 존재했다면,
loop at it_table.
move-corresponding it_table to it_talbe_2.
it_table_2-e = 'e 값에 넣을값'.
append it_table_2.
endloop.
--허접 답변.--
-
hogun
2008.03.09 19:43
답변들대로 해보긴했는데 잘 안되서.. 그냥 두테이블 구조 같게 만든다음에 첫번째 테이블의 e필드를 clear 해서 append 했습니다.
답변들 감사합니다.
테이블 안에 선언된 DATE TYPE이 서로 다르지 않은 TYPE 다시말해 UNICODE DATA TYPE 에 어긋나지 않으면
MOVE-CORRESPONDING 을 사용하셔도 무방할듯 합니다.
그런경우가 아니라면
두개의 테이블과 똑같은 구조를 가진 STRUCTURE 를 선언하신후에
필드끼리 MOVE 하시고 APPEND 하시면 될듯한대;;;
아니라면 테클 부탁 드림니다. 선배님들 ^^