일주일중 가장 힘든 목요일입니다
다들 힘들 팍팍내시구요
아침부터 기본적인거 여쭤봐서 죄송하구요 부탁좀 드릴께요
필드카탈로그를 그냥 만드는것과
머지기능의 펑션을 사용해서 만들어주는것과의 차이점에 대해서 잘모르겠습니다.
그리고 머지를 해주는 펑션도 종류가 몇가지 있는것 같던데
펑션 아시는것좀 올려주십시요 간단히 사용법도좀 부탁드릴께요
그럼 수고하십시요
댓글 2
-
Giant
2008.10.16 19:24
-
CoolGuy
2008.10.16 23:54
일반적으로 필드카탈로그생성해 APPEND해서 만들어쓰지만
1개의 테이블에서 대량의 필드를 쓸때는 일일이 만들어쓰기 힘들죠..
그래서 i_structure_name = 'SFLIGHT' 요런식으로 테이블타입을 가져다 쓰기도하고
예외로 여러개의 테이블에서 필드를 가져와야할때역시 일일이 선언해서쓰기힘들다면 인터널테이블을만들어
머지 펑션으로 인터널테이블의 필드를 필드카탈로그로 생성해서 쓰죠...거기에 추가도 할수있구요..
시간이 없어서 간단하게 설명드리는데 도움이 되셨으면 합니다...
필드카탈로그를 그냥 만드는것은 자기 자신에 맞게끔 만들어 주는것이지요!
그런데 머지기능을 사용하면 정해진 database의 필드카탈로그를 가져오는것입니다.
머지 기능의 펑션의 사용법은 아래와 같습니다.
DATA ls_fcat type lvc_s_fcat .
CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = 'SFLIGHT'
CHANGING
ct_fieldcat = pt_fieldcat[]
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
*--Exception handling
ENDIF.
LOOP AT pt_fieldcat INTO ls_fcat .
CASE pt_fieldcat-fieldname .
WHEN 'CARRID' .
ls_fcat-outpulen = '10' .
ls_fcat-coltext = 'Airline Carrier ID' .
MODIFY pt_fieldcat FROM ls_fcat .
WHEN 'PAYMENTSUM' .
ls_fcat-no_out = 'X' .
MODIFY pt_fieldcat FROM ls_fcat .
ENDCASE .
ENDLOOP .
도움이 되였으면 합니다.(저도 abap을 접한지 얼마 안되서요.)