스트럭처 만들기 : https://velog.io/@yrhong8002/%EC%8A%A4%ED%8A%B8%EB%9F%AD%EC%B2%98
TYPE / LIKE
+ 테이블 ----------> 스트럭처
TYPE / LIKE
+ 필드 또는 DE ---> 변수
DATA : BEGIN OF ...
~워크에어리어~ END OF ...
g 또는 l
스코프구분 + s 또는 wa
스트럭처 또는 워크에어리어 의미 + _
구분 + ...
MANDT
는 제외DATA
+ 스트럭처명 + TYPE
+ 테이블명 또는 스트럭처명
+ .
BEGIN OF
~ .
: 스트럭처 선언 시작 및 Field 추가INCLUDE STRUCTURE
+ 구조체명
+ .
: 참조하는 구조체가 테이블인지 스트럭처인지 상관없이 동일하다.DATA :
~ END OF
… : DATA 구문을 넣고 나머지 필드 입력 및 스트럭처 선언 종료.MANDT
는 모든 테이블에 각각 필드 선언 되어있기 때문에, 테이블을 2개 이상 참조하면 충돌해 에러가 생긴다.gs_dis_2
는 스트럭처 및 필드 추가 · 확장이 가능하다.F8
DATA : gv_loekz TYPE ELOEK,
gv_statu TYPE ASTAT,
gv_ematn TYPE EMATNR,
gv_werks TYPE EWERK.
DATA : gv_bpumz TYPE EKPO-BPUMZ,
gv_bpumn TYPE EKPO-BPUMN,
gv_umrez TYPE EKPO-UMREZ,
gv_umren TYPE EKPO-UMREN,
gv_netpr TYPE EKPO-NETPR.
DATA : lv_data_1 LIKE gv_loekz,
lv_data_2 LIKE gv_statu,
lv_data_3 LIKE gv_ematn,
lv_data_4 LIKE gv_werks,
lv_data_5 LIKE gv_bpumz,
lv_data_6 LIKE gv_bpumn,
lv_data_7 LIKE gv_umrez,
lv_data_8 LIKE gv_netpr.
DATA : gs_struc_1 TYPE document_structure.
DATA : gs_struc_2 TYPE fsh_msegdata_append.
DATA : BEGIN OF gs_struc_3,
mblnr TYPE mseg-mblnr,
mjahr TYPE mseg-mjahr,
zeile TYPE mseg-zeile.
INCLUDE STRUCTURE document_structure.
DATA : bwart TYPE bwart,
charg TYPE charg_d.
INCLUDE STRUCTURE zc5t250007.
DATA : END OF gs_struc_3.
DATA : gs_struc_4 LIKE gs_struc_3.
DATA : BEGIN OF gs_struc_5.
INCLUDE STRUCTURE document_structure.
INCLUDE STRUCTURE fsh_msegdata_append.
INCLUDE STRUCTURE afpo_inc.
DATA : END OF gs_struc_5.
DATA : BEGIN OF gs_struc,
belnr TYPE RBKP-BELNR,
gjahr TYPE RBKP-GJAHR.
INCLUDE STRUCTURE RBKP_DATA.
INCLUDE STRUCTURE TDS_SD_PRODH_UNIV_NODE.
DATA : node_key TYPE MRM_SI_GUID,
parent_key TYPE MRM_SI_GUID,
root_key TYPE MRM_SI_GUID,
END OF gs_struc.