반응형
DATA: LV_CLASS TYPE SETHIER-SETCLASS,
LV_SETID TYPE SETHIER-SETID,
LT_VALUES TYPE GSETH_VAL_TAB.
PERFORM READ_K_HIERARCHY_TABLES USING LV_CLASS LV_SETID P_KOKRS CHANGING LT_VALUES.
*&---------------------------------------------------------------------*
*& Form READ_K_HIERARCHY_TABLES
*&---------------------------------------------------------------------*
*& SET CLASS
*& - 0101 : 코스트센터 그룹(SETID: 0101 + 관리회계 영역 + 코스트센터)
*& - 0102 : 원가요소 그룹(SETID: 0102 + 계정과목표 + 원가요소)
*& - 0103 : 오더 그룹(SETID: 0103 + 오더 그룹)
*& - 0110 : WBS 그룹(SETID: 0110 + WBS 그룹)
*&---------------------------------------------------------------------*
FORM READ_K_HIERARCHY_TABLES USING PV_CLASS
PV_SETID
PV_KOKRS
CHANGING PT_VALUES TYPE GSETH_VAL_TAB.
DATA: LT_NODES TYPE GSETH_NODE_TAB,
LV_INFO TYPE GRPHINFO,
LV_OVERWRITE TYPE SY-DATAR.
CALL FUNCTION 'K_HIERARCHY_TABLES_READ'
EXPORTING
E_CLASS = PV_CLASS
E_SETID = PV_SETID
E_KOKRS = PV_KOKRS
TABLES
T_NODES = LT_NODES
T_VALUES = PT_VALUES
CHANGING
C_INFO = LV_INFO
C_OVERWRITE = LV_OVERWRITE.
ENDFORM.
주석 설명에 나와있듯이 SET CLASS는 특정 오브젝트를 의미하는데 보통 위의 요소들을 주로 사용한다.
SET ID에 입력되어야 할 값은 SET CLASS마다 조금 다른데 보통 코스트센터의 경우
0101 + 관리회계 영역 + 코스트센터
이런식으로 값을 입력시켜서 넘겨준다. (다른 오브젝트들은 주석 참고)
LV_SETID = |0101{ P_KOKRS }{ LV_KOSTL }|.
결과는 PT_VALUES에 반환되므로 프로그램에 맞게 수정하면 된다.
반응형
'ABAP' 카테고리의 다른 글
도메인 Value Range 값 가져오기(GET_DOMAIN_VALUES) (0) | 2025.03.05 |
---|---|
특수문자 제거 함수(SF_SPECIALCHAR_DELETE) (0) | 2025.03.04 |
월의 마지막 날 받기(RP_LAST_DAY_OF_MONTHS) (0) | 2025.02.24 |
엑셀 업로드(GUI_UPLOAD) (0) | 2025.02.24 |
POPUP_TO_CONFIRM 팝업 확인 창 띄우기 (0) | 2025.02.19 |