--- type: abap-program title: "ZFIR0130 — 시뮬레이션" description: "ZFIR0090(전자결재 승인 자동기표)의 전기 결과를 실제로 전표를 만들지 않고 미리 확인하는 시뮬레이션 화면이다. ZIFT0010 을 읽어 BSEG_PROCESS(286줄)로 전표 아이템을 구성해 헤더/아이템 2단 ALV 로 보여주며, 계정 결정과 금액 배분이 의도대로 되는지 검증하는 용도다. 선택화면이 없고 ZFIR0110_DOC 에서 호출된다." resource: "abap://ZFIR0130" tags: ["전자결재", "시뮬레이션", "자동기표", "경비처리", "FI", "행선택", "단건조회", "결재문서", "선택검증", "문서조회", "인터페이스로그", "공통로그", "순번", "호출이력", "요청자", "감사로그", "URL", "브라우저호출", "RFC", "외부시스템연계"] generated: { by: "abap-indexing/z-ai/glm-5.2:free", at: "2026-09-20T15:36:22+00:00" } status: stable x-package: x-changed-on: x-tables-read: ["ANLA", "CSKT", "J_1BBRANCH", "KNA1", "LFA1", "LTDX", "MAKT", "SKAT", "T001", "T003T", "T007S", "T052U", "TBSLT", "TKA02", "USR01", "V_USERNAME", "ZFIT0160", "ZIFT0010"] x-tables-write: ["ZIFT0010"] x-calls: ["AS03", "BAL_DSP_LOG_DISPLAY", "BAL_LOG_CREATE", "BAL_LOG_MSG_ADD", "CALL_BROWSER", "CLOI_PUT_SIGN_IN_FRONT", "CONVERSION_EXIT_ALPHA_INPUT", "CONVERSION_EXIT_ALPHA_OUTPUT", "CONVERT_TO_FOREIGN_CURRENCY", "CONVERT_TO_LOCAL_CURRENCY", "CURRENCY_AMOUNT_IDOC_TO_SAP", "CURRENCY_AMOUNT_SAP_TO_IDOC", "DOMAIN_VALUE_GET", "DYNP_VALUES_READ", "F4IF_INT_TABLE_VALUE_REQUEST", "FB03", "FD03", "FK03", "GUI_UPLOAD", "HELP_VALUES_GET_NO_DD_NAME", "HRVE_GET_TIME_BETWEEN_DATES", "ICON_CREATE", "KCD_EXCEL_OLE_TO_INT_CONVERT", "LVC_VARIANT_DEFAULT_GET", "LVC_VARIANT_EXISTENCE_CHECK", "LVC_VARIANT_F4", "MESSAGE_TEXT_BUILD", "MM03", "NUMBER_GET_NEXT", "NUMERIC_CHECK", "POPUP_TO_CONFIRM_STEP", "P_TCODE", "REUSE_ALV_EVENTS_GET", "REUSE_ALV_FIELDCATALOG_MERGE", "REUSE_ALV_GRID_DISPLAY", "REUSE_ALV_GRID_DISPLAY_LVC", "REUSE_ALV_HIERSEQ_LIST_DISPLAY", "RP_CALC_DATE_IN_INTERVAL", "RP_LAST_DAY_OF_MONTHS", "SAPGUI_PROGRESS_INDICATOR"] x-code-hash: "f6db1face2853c032fed7901b66647143351edecdee832f800c21a4ec83371a2" x-unit-count: 105 x-chunk-count: 47 x-declaration-count: 312 --- ## 업무 목적 ZFIR0090(전자결재 승인 자동기표)의 전기 결과를 실제로 전표를 만들지 않고 미리 확인하는 시뮬레이션 화면이다. ZIFT0010 을 읽어 BSEG_PROCESS(286줄)로 전표 아이템을 구성해 헤더/아이템 2단 ALV 로 보여주며, 계정 결정과 금액 배분이 의도대로 되는지 검증하는 용도다. 선택화면이 없고 ZFIR0110_DOC 에서 호출된다. ## 주 흐름 1. ALV 설정을 준비한다 (ALV_SETTING) 2. ZIFT0010 에서 대상 결재 문서를 읽는다 (START-OF-SELECTION 에서 직접 처리) 3. 전표 아이템을 구성한다 — 계정 결정, 금액 배분, 세금 처리 (BSEG_PROCESS) 4. 결재상신 중인 문서를 별도로 조회한다 (DISPLAY_PROCESSING_DATA) 5. 스플리터 2단 ALV 로 헤더/아이템을 화면에 출력한다 (SPLITTER_CONTAINER) ## 핵심 내부테이블 - `GT_ITEM` — 시뮬레이션된 전표 아이템 (채움: BSEG_PROCESS / 소비: SET_FIELD_CATALOGS2) ## 테이블 / 외부 호출 - read: ANLA, CSKT, J_1BBRANCH, KNA1, LFA1, LTDX, MAKT, SKAT, T001, T003T, T007S, T052U, TBSLT, TKA02, USR01, V_USERNAME, ZFIT0160, ZIFT0010 - write: ZIFT0010 - 외부 호출: AS03, BAL_DSP_LOG_DISPLAY, BAL_LOG_CREATE, BAL_LOG_MSG_ADD, CALL_BROWSER, CLOI_PUT_SIGN_IN_FRONT, CONVERSION_EXIT_ALPHA_INPUT, CONVERSION_EXIT_ALPHA_OUTPUT, CONVERT_TO_FOREIGN_CURRENCY, CONVERT_TO_LOCAL_CURRENCY, CURRENCY_AMOUNT_IDOC_TO_SAP, CURRENCY_AMOUNT_SAP_TO_IDOC, DOMAIN_VALUE_GET, DYNP_VALUES_READ, F4IF_INT_TABLE_VALUE_REQUEST, FB03, FD03, FK03, GUI_UPLOAD, HELP_VALUES_GET_NO_DD_NAME, HRVE_GET_TIME_BETWEEN_DATES, ICON_CREATE, KCD_EXCEL_OLE_TO_INT_CONVERT, LVC_VARIANT_DEFAULT_GET, LVC_VARIANT_EXISTENCE_CHECK, LVC_VARIANT_F4, MESSAGE_TEXT_BUILD, MM03, NUMBER_GET_NEXT, NUMERIC_CHECK ## 로직 조각 (47건 / unit 36개) LLM 이 코드에서 골라낸 업무 로직 단위다. **조각마다 소스 원문과 자연어 설명을 함께 싣는다** — 설명이 코드와 맞는지 바로 대조할 수 있어야 하기 때문이다. 테이블·호출은 LLM 이 쓴 값이 아니라 파서가 조각 범위에서 다시 뽑은 사실이다. 순서는 실행 순서다. ### EVENT START-OF-SELECTION — `ZFIR0130` L46-L68 (23줄) *ZFIR0110_DOC 이 ABAP 메모리로 넘긴 T_BKPF/T_BSEG 를 IMPORT 해 GT_BKPF/GT_BSEG 로 받고 회사코드 정보를 읽은 뒤 BSEG_PROCESS 로 시뮬레이션 아이템을 구성한다.* > 이 unit 의 조각 1개가 17/23줄(74%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [interface] 메모리 ID T_BKPF/T_BSEG 에서 호출 프로그램이 넘긴 전표 헤더·아이템을 IMPORT 해 GT_BKPF/GT_BSEG 에 담고, 헤더가 없으면 화면을 닫으며 T001 회사코드 정보를 읽은 후 BSEG_PROCESS 를 수행한다. ```abap 48| IMPORT T_BKPF FROM MEMORY ID 'T_BKPF'. 49| IMPORT T_BSEG FROM MEMORY ID 'T_BSEG'. 50| 51| GT_BKPF[] = T_BKPF[]. 52| GT_BSEG[] = T_BSEG[]. 53| 54| 55| READ TABLE GT_BKPF INDEX 1. 56| IF SY-SUBRC <> 0. 57| LEAVE TO SCREEN 0. 58| ENDIF. 59| 60| SELECT SINGLE * FROM T001 61| WHERE BUKRS = GT_BKPF-BUKRS. 62| 63| 64| PERFORM BSEG_PROCESS. ``` - **EN**: Imports the caller's document header/items from ABAP memory IDs T_BKPF/T_BSEG into GT_BKPF/GT_BSEG, leaves when no header exists, reads T001 for the company code and runs BSEG_PROCESS. - 테이블(파서): read [T001](/tables/T001.md) / write - - 호출(파서): BSEG_PROCESS - SAP 객체: T001, BKPF, BSEG - 업무 키워드: 메모리 IMPORT, 전표 시뮬레이션, 전표 헤더, 회사코드 - English: IMPORT FROM MEMORY, Document Simulation, T001 - 정의부(복사 시 함께 필요): [`BKPF`](#decl-zficom-13-bkpf), [`T_BKPF`](#decl-zfir0130top-18-t_bkpf), [`BSEG`](#decl-zficom-14-bseg), [`T_BSEG`](#decl-zfir0130top-19-t_bseg), [`GT_BKPF`](#decl-zfir0130top-15-gt_bkpf), [`GT_BSEG`](#decl-zfir0130top-16-gt_bseg), [`T001`](#decl-zficom-11-t001) - 위치: `abap://ZFIR0130/ZFIR0130#L48-L64` · confidence 0.9 · `ZFIR0130#ZFIR0130#EVENT#START-OF-SELECTION#C1` ### FORM BSEG_PROCESS — `ZFIR0130F01` L617-L902 (286줄) *메모리로 받은 시뮬레이션 BSEG 아이템에 전표유형·코스트센터·사업장·전기키·고객/구매처/자산/자재·G/L 계정·지급조건·세금코드 텍스트를 붙여 표시용 GT_ITEM/GT_ITEM2 를 만드는 FORM 이다.* > 이 unit 의 조각 7개가 251/286줄(88%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [sql_select] 입력자명(V_USERNAME)·전표유형명(T003T)을 조회하고 회사코드의 관리회계영역(TKA02)을 읽어 후속 코스트센터 조회에 사용한다. ```abap 625| CLEAR : GT_UNAME[], GT_UNAME. 626| SELECT BNAME 627| NAME_TEXT AS NAMET 628| INTO TABLE GT_UNAME 629| FROM V_USERNAME 630| WHERE BNAME EQ SY-UNAME. 631| 632| 633| 634| * 전표유형명 635| CLEAR : GT_T003T[], GT_T003T. 636| SELECT BLART LTEXT 637| INTO TABLE GT_T003T 638| FROM T003T 639| WHERE SPRAS EQ SY-LANGU 640| AND BLART EQ GT_BKPF-BLART. 641| 642| 643| 644| * 코스트센터명 645| CLEAR : GT_CSKT[], GT_CSKT, TKA02. 646| SELECT SINGLE * 647| FROM TKA02 648| WHERE BUKRS EQ GT_BKPF-BUKRS. ``` - **EN**: Reads the user name from V_USERNAME, the document type text from T003T, and the controlling area of the company code from TKA02. - 테이블(파서): read [V_USERNAME](/tables/V_USERNAME.md), [T003T](/tables/T003T.md), [TKA02](/tables/TKA02.md) / write - - SAP 객체: V_USERNAME, T003T, TKA02 - 업무 키워드: 입력자명, 전표유형명, 관리회계영역 - English: User Name, Document Type, Controlling Area, TKA02 - 정의부(복사 시 함께 필요): [`GT_UNAME`](#decl-zfir0130top-107-gt_uname), [`GT_T003T`](#decl-zfir0130top-112-gt_t003t), [`BKPF`](#decl-zficom-13-bkpf), [`GT_BKPF`](#decl-zfir0130top-15-gt_bkpf), [`GT_CSKT`](#decl-zfir0130top-117-gt_cskt), [`TKA02`](#decl-zfir0130top-9-tka02) - 선언을 못 찾은 이름: V_USERNAME (수집 안 된 인클루드·함수 인터페이스일 수 있다) - 위치: `abap://ZFIR0130/ZFIR0130F01#L625-L648` · confidence 0.85 · `ZFIR0130#ZFIR0130F01#FORM#BSEG_PROCESS#C1` #### [sql_select] GT_BSEG 기준 FOR ALL ENTRIES 로 코스트센터명(CSKT)·사업장명(J_1BBRANCH)·전기키명(TBSLT, 특별G/L지시자 포함)을 일괄 조회한다. ```abap 651| SELECT KOSTL KTEXT 652| INTO TABLE GT_CSKT 653| FROM CSKT 654| FOR ALL ENTRIES IN GT_BSEG 655| WHERE SPRAS EQ SY-LANGU 656| AND KOKRS EQ TKA02-KOKRS 657| AND KOSTL EQ GT_BSEG-KOSTL. 658| 659| 660| * 사업장명 661| CLEAR : GT_BRANCH[], GT_BRANCH. 662| SELECT BRANCH NAME 663| INTO TABLE GT_BRANCH 664| FROM J_1BBRANCH 665| FOR ALL ENTRIES IN GT_BSEG 666| WHERE BUKRS EQ GT_BSEG-BUKRS 667| AND BRANCH EQ GT_BSEG-BUPLA. 668| 669| 670| * 전기키명 671| CLEAR : GT_TBSLT[], GT_TBSLT. 672| SELECT BSCHL UMSKZ LTEXT 673| INTO TABLE GT_TBSLT 674| FROM TBSLT 675| FOR ALL ENTRIES IN GT_BSEG 676| WHERE SPRAS EQ SY-LANGU 677| AND BSCHL EQ GT_BSEG-BSCHL 678| AND UMSKZ EQ GT_BSEG-UMSKZ. ``` - **EN**: Mass-reads cost center texts (CSKT), business place names (J_1BBRANCH) and posting key texts (TBSLT incl. special G/L indicator) for all BSEG lines. - 테이블(파서): read [CSKT](/tables/CSKT.md), [J_1BBRANCH](/tables/J_1BBRANCH.md), [TBSLT](/tables/TBSLT.md) / write - - SAP 객체: CSKT, J_1BBRANCH, TBSLT - 업무 키워드: 코스트센터명, 사업장명, 전기키명, 특별 G/L - English: Cost Center, Business Place, Posting Key, Special G/L Indicator - 정의부(복사 시 함께 필요): [`GT_CSKT`](#decl-zfir0130top-117-gt_cskt), [`BSEG`](#decl-zficom-14-bseg), [`GT_BSEG`](#decl-zfir0130top-16-gt_bseg), [`TKA02`](#decl-zfir0130top-9-tka02), [`GT_BRANCH`](#decl-zfir0130top-122-gt_branch), [`GT_TBSLT`](#decl-zfir0130top-127-gt_tbslt) - 선언을 못 찾은 이름: J_1BBRANCH (수집 안 된 인클루드·함수 인터페이스일 수 있다) - 위치: `abap://ZFIR0130/ZFIR0130F01#L651-L678` · confidence 0.9 · `ZFIR0130#ZFIR0130F01#FORM#BSEG_PROCESS#C2` #### [sql_select] 고객명(KNA1)·구매처명(LFA1)과 G/L 계정명(SKAT, HKONT 및 SAKNR 양쪽)을 FOR ALL ENTRIES 로 조회하고 SKAT 결과를 계정번호 기준 중복 제거한다. ```abap 681| CLEAR : GT_KNA1[], GT_KNA1. 682| SELECT KUNNR NAME1 683| INTO TABLE GT_KNA1 684| FROM KNA1 685| FOR ALL ENTRIES IN GT_BSEG 686| WHERE KUNNR EQ GT_BSEG-KUNNR. 687| 688| * 구매처명 689| CLEAR : GT_LFA1[], GT_LFA1. 690| SELECT LIFNR NAME1 691| INTO TABLE GT_LFA1 692| FROM LFA1 693| FOR ALL ENTRIES IN GT_BSEG 694| WHERE LIFNR EQ GT_BSEG-LIFNR. 695| 696| * G/L 계정명 697| CLEAR : GT_SKAT[], GT_SKAT. 698| SELECT SAKNR TXT50 699| INTO TABLE GT_SKAT 700| FROM SKAT 701| FOR ALL ENTRIES IN GT_BSEG 702| WHERE KTOPL EQ T001-KTOPL 703| AND SPRAS EQ SY-LANGU 704| AND SAKNR EQ GT_BSEG-HKONT. 705| 706| 707| SELECT SAKNR TXT50 708| APPENDING TABLE GT_SKAT 709| FROM SKAT 710| FOR ALL ENTRIES IN GT_BSEG 711| WHERE KTOPL EQ T001-KTOPL 712| AND SPRAS EQ SY-LANGU 713| AND SAKNR EQ GT_BSEG-SAKNR. 714| SORT GT_SKAT BY SAKNR. 715| DELETE ADJACENT DUPLICATES FROM GT_SKAT COMPARING SAKNR. ``` - **EN**: Reads customer names (KNA1), vendor names (LFA1) and G/L account texts (SKAT for both HKONT and SAKNR) for all BSEG lines, de-duplicating SKAT by account. - 테이블(파서): read [KNA1](/tables/KNA1.md), [LFA1](/tables/LFA1.md), [SKAT](/tables/SKAT.md) / write - - SAP 객체: KNA1, LFA1, SKAT - 업무 키워드: 고객명, 구매처명, G/L 계정명, 중복 제거 - English: Customer, Vendor, G/L Account Text, KNA1, LFA1, SKAT - 정의부(복사 시 함께 필요): [`GT_KNA1`](#decl-zfir0130top-133-gt_kna1), [`KNA1`](#decl-zficom-38-kna1), [`BSEG`](#decl-zficom-14-bseg), [`GT_BSEG`](#decl-zfir0130top-16-gt_bseg), [`GT_LFA1`](#decl-zfir0130top-138-gt_lfa1), [`LFA1`](#decl-zficom-36-lfa1), [`GT_SKAT`](#decl-zfir0130top-143-gt_skat), [`T001`](#decl-zficom-11-t001) - 위치: `abap://ZFIR0130/ZFIR0130F01#L681-L715` · confidence 0.9 · `ZFIR0130#ZFIR0130F01#FORM#BSEG_PROCESS#C3` #### [sql_select] 지급조건명(T052U)과 세금절차(T005-KALSM) 기준 세금코드명(T007S)을 FOR ALL ENTRIES 로 조회한다. ```abap 719| CLEAR : GT_T052U[], GT_T052U. 720| SELECT ZTERM TEXT1 721| INTO TABLE GT_T052U 722| FROM T052U 723| FOR ALL ENTRIES IN GT_BSEG 724| WHERE SPRAS EQ SY-LANGU 725| AND ZTERM EQ GT_BSEG-ZTERM. 726| 727| * 세금코드명 728| CLEAR : GT_T007S[], GT_T007S. 729| SELECT MWSKZ TEXT1 730| INTO TABLE GT_T007S 731| FROM T007S 732| FOR ALL ENTRIES IN GT_BSEG 733| WHERE SPRAS EQ SY-LANGU 734| AND KALSM EQ T005-KALSM 735| AND MWSKZ EQ GT_BSEG-MWSKZ. ``` - **EN**: Reads payment term texts (T052U) and tax code texts (T007S for the country tax procedure) for all BSEG lines. - 테이블(파서): read [T052U](/tables/T052U.md), [T007S](/tables/T007S.md) / write - - SAP 객체: T052U, T007S, T005 - 업무 키워드: 지급조건명, 세금코드명, 세금계산절차 - English: Payment Terms, Tax Code, T052U, T007S - 정의부(복사 시 함께 필요): [`GT_T052U`](#decl-zfir0130top-148-gt_t052u), [`BSEG`](#decl-zficom-14-bseg), [`GT_BSEG`](#decl-zfir0130top-16-gt_bseg), [`GT_T007S`](#decl-zfir0130top-153-gt_t007s), [`T005`](#decl-zficom-12-t005) - 위치: `abap://ZFIR0130/ZFIR0130F01#L719-L735` · confidence 0.9 · `ZFIR0130#ZFIR0130F01#FORM#BSEG_PROCESS#C4` #### [calculation] BSEG 행을 GT_ITEM 으로 옮기며 사업장명을 붙이고, 역전기 지시자(XNEGP)면 금액 부호를 뒤집고 차대지시자(SHKZG)를 S↔H 로 바꾼다. ```abap 740| LOOP AT GT_BSEG. 741| MOVE-CORRESPONDING GT_BSEG TO GT_ITEM. 742| 743| * 사업장명 744| READ TABLE GT_BRANCH WITH KEY BRANCH = GT_BSEG-BUPLA. 745| IF SY-SUBRC EQ 0. 746| GT_ITEM-BUPLA_T = GT_BRANCH-NAME. 747| ENDIF. 748| 749| * 차대지시자 750| IF GT_BSEG-XNEGP = C_X. "마이너스 751| GT_ITEM-WRBTR = 0 - GT_ITEM-WRBTR. 752| GT_ITEM-DMBTR = 0 - GT_ITEM-DMBTR. 753| CASE GT_BSEG-SHKZG. 754| WHEN C_S. 755| GT_ITEM-SHKZG = C_H. 756| WHEN C_H. 757| GT_ITEM-SHKZG = C_S. 758| ENDCASE. 759| ENDIF. ``` - **EN**: Copies each BSEG line into GT_ITEM with the business place name and, for negative postings (XNEGP), negates the amounts and swaps the debit/credit indicator. - SAP 객체: BSEG - 업무 키워드: 역전기, 차대지시자, 금액 부호, 사업장 - English: Negative Posting, Debit/Credit Indicator, XNEGP - 정의부(복사 시 함께 필요): [`BSEG`](#decl-zficom-14-bseg), [`GT_BSEG`](#decl-zfir0130top-16-gt_bseg), [`GT_ITEM`](#decl-zfir0130top-50-gt_item), [`GT_BRANCH`](#decl-zfir0130top-122-gt_branch), [`C_X`](#decl-zficom-231-c_x), [`C_S`](#decl-zficom-226-c_s), [`C_H`](#decl-zficom-215-c_h) - 위치: `abap://ZFIR0130/ZFIR0130F01#L740-L759` · confidence 0.85 · `ZFIR0130#ZFIR0130F01#FORM#BSEG_PROCESS#C5` #### [calculation] 계정유형(KOART D/K/A/M/S)에 따라 보조부 계정(고객·구매처·자산 ANLN1·자재 MATNR)과 그 명칭(KNA1/LFA1/ANLA/MAKT)을 세팅하고, 계정유형이 없는 임시전표는 LIFNR/KUNNR/ANLN1 존재 여부로 유형과 명칭을 보완한다. ```abap 762| CASE GT_BSEG-KOART. 763| WHEN C_D. 764| GT_ITEM-KOART_T = '고객'. 765| IF NOT GT_BSEG-KUNNR IS INITIAL. 766| GT_ITEM-SUBAC = GT_BSEG-KUNNR. 767| * 고객명 768| READ TABLE GT_KNA1 WITH KEY KUNNR = GT_BSEG-KUNNR. 769| IF SY-SUBRC EQ 0. 770| GT_ITEM-SUBNM = GT_KNA1-NAME1. 771| ENDIF. 772| ENDIF. 773| WHEN C_K. 774| GT_ITEM-KOART_T = '구매처'. 775| * 보조부계정 776| IF NOT GT_BSEG-LIFNR IS INITIAL. 777| GT_ITEM-SUBAC = GT_BSEG-LIFNR. 778| * 구매처명 779| READ TABLE GT_LFA1 WITH KEY LIFNR = GT_BSEG-LIFNR. 780| IF SY-SUBRC EQ 0. 781| GT_ITEM-SUBNM = GT_LFA1-NAME1. 782| ENDIF. 783| ENDIF. 784| WHEN C_A. 785| GT_ITEM-KOART_T = '자산'. 786| IF NOT GT_BSEG-ANLN1 IS INITIAL. 787| GT_ITEM-SUBAC = GT_BSEG-ANLN1+2(10). 788| * 자산코드명 789| SELECT SINGLE TXT50 790| INTO GT_ITEM-SUBNM 791| FROM ANLA 792| WHERE ANLA~BUKRS EQ GT_BSEG-BUKRS 793| AND ANLA~ANLN1 EQ GT_BSEG-ANLN1. "자산 794| ENDIF. 795| WHEN C_M. 796| GT_ITEM-KOART_T = '자재'. 797| IF NOT GT_BSEG-MATNR IS INITIAL. 798| GT_ITEM-SUBAC = GT_BSEG-MATNR+8(10). 799| * 자재코드명 800| SELECT SINGLE MAKTX 801| INTO GT_ITEM-SUBNM 802| FROM MAKT 803| WHERE MAKT~SPRAS EQ SY-LANGU 804| AND MAKT~MATNR EQ GT_BSEG-MATNR. 805| ENDIF. 806| WHEN C_S. 807| GT_ITEM-KOART_T = 'G/L 계정'. 808| ENDCASE. 809| 810| * 임시전표일 경우 계정유형이 없음 811| * 보조부계정 812| IF NOT GT_BSEG-LIFNR IS INITIAL. 813| GT_ITEM-KOART = C_K. 814| GT_ITEM-SUBAC = GT_BSEG-LIFNR. 815| * 구매처명 816| READ TABLE GT_LFA1 WITH KEY LIFNR = GT_BSEG-LIFNR. 817| IF SY-SUBRC EQ 0. 818| GT_ITEM-SUBNM = GT_LFA1-NAME1. 819| ENDIF. 820| ENDIF. 821| IF NOT GT_BSEG-KUNNR IS INITIAL. 822| GT_ITEM-KOART = C_D. 823| GT_ITEM-SUBAC = GT_BSEG-KUNNR. 824| * 고객명 825| READ TABLE GT_KNA1 WITH KEY KUNNR = GT_BSEG-KUNNR. 826| IF SY-SUBRC EQ 0. 827| GT_ITEM-SUBNM = GT_KNA1-NAME1. 828| ENDIF. 829| ENDIF. 830| IF NOT GT_BSEG-ANLN1 IS INITIAL. 831| GT_ITEM-SUBAC = GT_BSEG-ANLN1+2(10). 832| * 자산코드명 833| SELECT SINGLE TXT50 834| INTO GT_ITEM-SUBNM 835| FROM ANLA 836| WHERE ANLA~BUKRS EQ GT_BSEG-BUKRS 837| AND ANLA~ANLN1 EQ GT_BSEG-ANLN1. "자산 838| ENDIF. ``` - **EN**: Sets the sub-ledger account and its name by account type (customer/vendor/asset via ANLA/material via MAKT) and, for temporary documents without KOART, derives them from LIFNR/KUNNR/ANLN1. - 테이블(파서): read [ANLA](/tables/ANLA.md), [MAKT](/tables/MAKT.md) / write - - SAP 객체: ANLA, MAKT, KNA1, LFA1 - 업무 키워드: 계정유형, 보조부 계정, 고객, 구매처, 자산, 자재, 임시전표 - English: Account Type, Sub-ledger Account, Asset Master, Material, ANLA, MAKT - 정의부(복사 시 함께 필요): [`BSEG`](#decl-zficom-14-bseg), [`GT_BSEG`](#decl-zfir0130top-16-gt_bseg), [`C_D`](#decl-zficom-211-c_d), [`GT_ITEM`](#decl-zfir0130top-50-gt_item), [`GT_KNA1`](#decl-zfir0130top-133-gt_kna1), [`C_K`](#decl-zficom-218-c_k), [`GT_LFA1`](#decl-zfir0130top-138-gt_lfa1), [`C_A`](#decl-zficom-208-c_a), [`C_M`](#decl-zficom-220-c_m), [`C_S`](#decl-zficom-226-c_s) - 위치: `abap://ZFIR0130/ZFIR0130F01#L762-L838` · confidence 0.85 · `ZFIR0130#ZFIR0130F01#FORM#BSEG_PROCESS#C6` #### [calculation] G/L 계정명(HKONT 없으면 SAKNR 사용)·전기키명·지급조건명·코스트센터명·세금코드명을 조회 결과에서 붙이고 헤더(GT_BKPF)의 통화를 아이템에 넣어 GT_ITEM 에 추가한다. ```abap 841| IF NOT GT_BSEG-HKONT IS INITIAL. 842| READ TABLE GT_SKAT WITH KEY SAKNR = GT_BSEG-HKONT. 843| IF SY-SUBRC EQ 0. 844| GT_ITEM-TXT50 = GT_SKAT-TXT50. 845| ENDIF. 846| ELSE. 847| IF NOT GT_BSEG-SAKNR IS INITIAL. 848| GT_ITEM-HKONT = GT_BSEG-SAKNR. 849| READ TABLE GT_SKAT WITH KEY SAKNR = GT_BSEG-SAKNR. 850| IF SY-SUBRC EQ 0. 851| GT_ITEM-TXT50 = GT_SKAT-TXT50. 852| ENDIF. 853| ENDIF. 854| ENDIF. 855| 856| * 전기키명 857| IF NOT GT_BSEG-BSCHL IS INITIAL. 858| READ TABLE GT_TBSLT WITH KEY BSCHL = GT_BSEG-BSCHL 859| UMSKZ = GT_BSEG-UMSKZ. 860| IF SY-SUBRC EQ 0. 861| GT_ITEM-BSCHL_T = GT_TBSLT-LTEXT. 862| ENDIF. 863| ENDIF. 864| 865| * 지급조건명 866| IF NOT GT_BSEG-ZTERM IS INITIAL. 867| READ TABLE GT_T052U WITH KEY ZTERM = GT_BSEG-ZTERM. 868| IF SY-SUBRC EQ 0. 869| GT_ITEM-ZTERM_T = GT_T052U-TEXT1. 870| ENDIF. 871| ENDIF. 872| 873| * 코스트센터명 874| READ TABLE GT_CSKT WITH KEY KOSTL = GT_BSEG-KOSTL. 875| IF SY-SUBRC EQ 0. 876| GT_ITEM-KOSTL_T = GT_CSKT-KTEXT. 877| ENDIF. 878| 879| * 세금코드명 880| READ TABLE GT_T007S WITH KEY MWSKZ = GT_BSEG-MWSKZ. 881| IF SY-SUBRC EQ 0. 882| GT_ITEM-MWSKZ_T = GT_T007S-TEXT1. 883| ENDIF. 884| 885| READ TABLE GT_BKPF WITH KEY BELNR = GT_ITEM-BELNR 886| GJAHR = GT_ITEM-GJAHR. 887| IF SY-SUBRC EQ 0. 888| GT_ITEM-WAERS = GT_BKPF-WAERS. 889| ENDIF. 890| APPEND GT_ITEM. CLEAR GT_ITEM. ``` - **EN**: Attaches G/L account (falling back to SAKNR), posting key, payment term, cost center and tax code texts from the lookup tables, sets the document currency from GT_BKPF and appends the item. - SAP 객체: SKAT, TBSLT, T052U, CSKT, T007S - 업무 키워드: G/L 계정명, 전기키명, 지급조건명, 코스트센터명, 세금코드명, 전표통화 - English: G/L Account, Posting Key, Payment Terms, Cost Center, Tax Code, Currency - 정의부(복사 시 함께 필요): [`BSEG`](#decl-zficom-14-bseg), [`GT_BSEG`](#decl-zfir0130top-16-gt_bseg), [`GT_SKAT`](#decl-zfir0130top-143-gt_skat), [`GT_ITEM`](#decl-zfir0130top-50-gt_item), [`GT_TBSLT`](#decl-zfir0130top-127-gt_tbslt), [`GT_T052U`](#decl-zfir0130top-148-gt_t052u), [`GT_CSKT`](#decl-zfir0130top-117-gt_cskt), [`GT_T007S`](#decl-zfir0130top-153-gt_t007s), [`BKPF`](#decl-zficom-13-bkpf), [`GT_BKPF`](#decl-zfir0130top-15-gt_bkpf) - 위치: `abap://ZFIR0130/ZFIR0130F01#L841-L890` · confidence 0.85 · `ZFIR0130#ZFIR0130F01#FORM#BSEG_PROCESS#C7` ### FORM NAME_SELECT — `ZFICOM` L378-L387 (10줄) *사용자 ID 로 V_USERNAME 뷰에서 사용자 이름을 조회하는 공통 FORM 이다.* > 이 unit 의 조각 1개가 7/10줄(70%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [sql_select] V_USERNAME 뷰에서 사용자 ID 의 이름(NAME_TEXT)을 조회하고 이름이 비어 있으면 사용자 ID 를 그대로 돌려준다. ```abap 380| SELECT SINGLE V_USERNAME~NAME_TEXT 381| INTO P_NAMET 382| FROM V_USERNAME 383| WHERE V_USERNAME~BNAME EQ P_UNAME. 384| IF SY-DBCNT GT 0 AND P_NAMET IS INITIAL. 385| P_NAMET = P_UNAME. 386| ENDIF. ``` - **EN**: Reads the user's full name from view V_USERNAME by user ID, falling back to the user ID when the name is empty. - 테이블(파서): read [V_USERNAME](/tables/V_USERNAME.md) / write - - SAP 객체: V_USERNAME, USR21, ADRP - 업무 키워드: 사용자 이름, 사용자 ID, 담당자명 - English: User Name, V_USERNAME, User Master - 선언을 못 찾은 이름: V_USERNAME (수집 안 된 인클루드·함수 인터페이스일 수 있다) - 위치: `abap://ZFIR0130/ZFICOM#L380-L386` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#NAME_SELECT#C1` ### FORM SELECT_CSKT — `ZFICOM` L397-L408 (12줄) *관리회계영역·코스트센터로 CSKT 에서 유효한 코스트센터명을 조회하는 공통 FORM 이다.* > 이 unit 의 조각 1개가 7/12줄(58%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [sql_select] CSKT 에서 영어 언어 기준 관리회계영역(KOKRS)·코스트센터(KOSTL)의 현재 유효(DATBI ≥ 오늘)한 명칭 KTEXT 를 단건 조회한다. ```abap 401| SELECT SINGLE CSKT~KTEXT 402| INTO P_KTEXT 403| FROM CSKT 404| WHERE CSKT~SPRAS EQ 'E' "SY-LANGU 405| AND CSKT~KOKRS EQ P_KOKRS 406| AND CSKT~KOSTL EQ P_KOSTL 407| AND CSKT~DATBI GE SY-DATLO. ``` - **EN**: Reads the currently valid cost center name KTEXT from CSKT for the controlling area and cost center (language 'E', DATBI >= today). - 테이블(파서): read [CSKT](/tables/CSKT.md) / write - - SAP 객체: CSKT - 업무 키워드: 코스트센터, 코스트센터명, 관리회계영역, 유효기간 - English: Cost Center, Controlling Area, CSKT - 위치: `abap://ZFIR0130/ZFICOM#L401-L407` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#SELECT_CSKT#C1` ### FORM SELECT_J_1BBRANCH — `ZFICOM` L419-L428 (10줄) *회사코드·사업장(Business Place)으로 J_1BBRANCH 사업장명을 조회하는 공통 FORM 이다.* > 이 unit 의 조각 1개가 5/10줄(50%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [sql_select] 회사코드와 사업장 코드로 J_1BBRANCH 에서 사업장명(NAME)을 단건 조회한다. ```abap 423| SELECT SINGLE J_1BBRANCH~NAME 424| INTO P_NAME 425| FROM J_1BBRANCH 426| WHERE J_1BBRANCH~BUKRS EQ P_BUKRS 427| AND J_1BBRANCH~BRANCH EQ P_BRANCH. ``` - **EN**: Reads the business place name from J_1BBRANCH for the company code and branch. - 테이블(파서): read [J_1BBRANCH](/tables/J_1BBRANCH.md) / write - - SAP 객체: J_1BBRANCH - 업무 키워드: 사업장, 사업장명, 회사코드, 세금계산서 - English: Business Place, Branch, Company Code - 선언을 못 찾은 이름: J_1BBRANCH (수집 안 된 인클루드·함수 인터페이스일 수 있다) - 위치: `abap://ZFIR0130/ZFICOM#L423-L427` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#SELECT_J_1BBRANCH#C1` ### FORM SELECT_SKAT — `ZFICOM` L438-L464 (27줄) *G/L 계정번호로 SKAT 계정과목 텍스트(장문 50/단문 20)를 언어별로 조회하는 공통 FORM 이다.* > 이 unit 의 조각 1개가 21/27줄(78%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [sql_select] 파라미터 ID ZSP 또는 로그온 언어로 언어를 정한 뒤 텍스트 유형(L/S)에 따라 SKAT 에서 계정과목 장문(TXT50) 또는 단문(TXT20)을 계정표(C_KTOPL) 기준으로 단건 조회한다. ```abap 443| GET PARAMETER ID 'ZSP' FIELD L_LANG. 444| IF L_LANG IS INITIAL. 445| L_LANG = SY-LANGU. 446| ENDIF. 447| * Long text 448| IF P_TYPE EQ C_L. 449| SELECT SINGLE SKAT~TXT50 450| INTO P_TXT20 451| FROM SKAT 452| WHERE SKAT~SPRAS EQ L_LANG 453| AND SKAT~KTOPL EQ C_KTOPL 454| AND SKAT~SAKNR EQ P_SAKNR. 455| * Short text 456| ELSE. 457| SELECT SINGLE SKAT~TXT20 458| INTO P_TXT20 459| FROM SKAT 460| WHERE SKAT~SPRAS EQ L_LANG 461| AND SKAT~KTOPL EQ C_KTOPL 462| AND SKAT~SAKNR EQ P_SAKNR. 463| ENDIF. ``` - **EN**: Determines the language (parameter ZSP or SY-LANGU) and reads the G/L account long text TXT50 or short text TXT20 from SKAT for the chart of accounts. - 테이블(파서): read [SKAT](/tables/SKAT.md) / write - - SAP 객체: SKAT - 업무 키워드: 계정과목 텍스트, G/L 계정, 계정표, 언어 - English: G/L Account, Chart of Accounts, Account Text, SKAT - 정의부(복사 시 함께 필요): [`L_LANG`](#decl-zficom-441-l_lang), [`C_L`](#decl-zficom-219-c_l), [`C_KTOPL`](#decl-zficom-202-c_ktopl) - 위치: `abap://ZFIR0130/ZFICOM#L443-L463` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#SELECT_SKAT#C1` ### FORM CHECK_CONFIRM_STEP — `ZFICOM` L476-L491 (16줄) *제목·메시지 1줄로 POPUP_TO_CONFIRM_STEP 확인 팝업을 띄우고 응답(GF_ANSWER)을 받는 공통 헬퍼다.* > 이 unit 의 조각 1개가 8/16줄(50%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] POPUP_TO_CONFIRM_STEP 으로 제목·메시지·취소버튼 여부·기본버튼을 지정한 확인 팝업을 띄우고 사용자의 응답을 GF_ANSWER 에 받는다. ```abap 482| CALL FUNCTION 'POPUP_TO_CONFIRM_STEP' 483| EXPORTING 484| DEFAULTOPTION = P_BUTTON 485| TEXTLINE1 = P_MESS1 486| TITEL = P_TITLE 487| CANCEL_DISPLAY = P_CANCEL 488| IMPORTING 489| ANSWER = GF_ANSWER. ``` - **EN**: Shows a confirmation popup via POPUP_TO_CONFIRM_STEP and returns the user's answer in GF_ANSWER. - 호출(파서): POPUP_TO_CONFIRM_STEP - SAP 객체: POPUP_TO_CONFIRM_STEP - 업무 키워드: 확인 팝업, 사용자 확인, 실행 확인 - English: Confirmation Popup, POPUP_TO_CONFIRM_STEP - 정의부(복사 시 함께 필요): [`GF_ANSWER`](#decl-zficom-90-gf_answer) - 위치: `abap://ZFIR0130/ZFICOM#L482-L489` · confidence 0.85 · `ZFIR0130#ZFICOM#FORM#CHECK_CONFIRM_STEP#C1` ### FORM CHECK_CONFIRM_STEP_2 — `ZFICOM` L503-L520 (18줄) *제목·메시지 2줄로 POPUP_TO_CONFIRM_STEP 확인 팝업을 띄우고 응답(GF_ANSWER)을 받는 공통 헬퍼다.* > 이 unit 의 조각 1개가 9/18줄(50%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] POPUP_TO_CONFIRM_STEP 으로 제목·메시지 2줄·취소버튼 여부·기본버튼을 지정한 확인 팝업을 띄우고 사용자의 응답을 GF_ANSWER 에 받는다. ```abap 510| CALL FUNCTION 'POPUP_TO_CONFIRM_STEP' 511| EXPORTING 512| DEFAULTOPTION = P_BUTTON 513| TEXTLINE1 = P_MESS1 514| TEXTLINE2 = P_MESS2 515| TITEL = P_TITLE 516| CANCEL_DISPLAY = P_CANCEL 517| IMPORTING 518| ANSWER = GF_ANSWER. ``` - **EN**: Shows a confirmation popup via POPUP_TO_CONFIRM_STEP with two text lines and returns the user's answer in GF_ANSWER. - 호출(파서): POPUP_TO_CONFIRM_STEP - SAP 객체: POPUP_TO_CONFIRM_STEP - 업무 키워드: 확인 팝업, 사용자 확인, 실행 확인 - English: Confirmation Popup, POPUP_TO_CONFIRM_STEP - 정의부(복사 시 함께 필요): [`GF_ANSWER`](#decl-zficom-90-gf_answer) - 위치: `abap://ZFIR0130/ZFICOM#L510-L518` · confidence 0.85 · `ZFIR0130#ZFICOM#FORM#CHECK_CONFIRM_STEP_2#C1` ### FORM AUTHORITY_BUKRS — `ZFICOM` L528-L536 (9줄) *회사코드에 대한 SAP 표준 권한(F_BKPF_BUK)을 검사하고 권한이 없으면 처리를 중단한다.* > 이 unit 의 조각 1개가 7/9줄(78%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [validation] 전표 권한 오브젝트 F_BKPF_BUK 로 해당 회사코드 접근 권한을 검사하고, 권한이 없으면 메시지를 띄운 뒤 리스트 처리를 즉시 중단한다. ```abap 529| AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' 530| ID 'BUKRS' FIELD P_BUKRS. 531| IF SY-SUBRC NE 0. 532| MESSAGE I240(FZ) WITH P_BUKRS. 533| GF_CHECK = C_X. 534| LEAVE LIST-PROCESSING. 535| ENDIF. ``` - **EN**: Checks company-code authorization via F_BKPF_BUK and aborts list processing when the user lacks it. - SAP 객체: F_BKPF_BUK, T001, BUKRS - 업무 키워드: 권한체크, 회사코드권한, 권한오브젝트, 접근제어, 처리중단 - English: authority check, company code authorization, F_BKPF_BUK, access control - 정의부(복사 시 함께 필요): [`GF_CHECK`](#decl-zficom-87-gf_check), [`C_X`](#decl-zficom-231-c_x) - 위치: `abap://ZFIR0130/ZFICOM#L529-L535` · confidence 0.93 · `ZFIR0130#ZFICOM#FORM#AUTHORITY_BUKRS#C1` ### FORM AUTHORITY_PG — `ZFICOM` L545-L563 (19줄) *사용자 ID 로 커스텀 권한테이블 ZFIT0160 을 조회해 프로그램(T-Code)별 실행 권한을 검증하는 공통 FORM 이다.* > 이 unit 의 조각 1개가 16/19줄(84%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [validation] ZFIT0160 에서 사용자 ID 의 프로그램 권한 행을 조회하고, 미등록이거나 ZFIR0090 권한 플래그가 비어 있으면 '프로그램 권한이 없습니다' 메시지 후 GF_CHECK 를 세우고 처리를 중단한다. ```abap 547| SELECT SINGLE * FROM ZFIT0160 548| WHERE USERID = P_UNAME. 549| 550| IF SY-SUBRC = 0. 551| IF P_TCODE = 'ZFIR0090'. 552| IF ZFIT0160-ZFIR0090 = ''. 553| MESSAGE I000 WITH '프로그램 권한이 없습니다 (ZFIR0160) 미등록'. 554| GF_CHECK = C_X. 555| LEAVE LIST-PROCESSING. 556| ENDIF. 557| ENDIF. 558| ELSE. 559| MESSAGE I000 WITH '프로그램 권한이 없습니다 (ZFIR0160) 미등록'. 560| GF_CHECK = C_X. 561| LEAVE LIST-PROCESSING. 562| ENDIF. ``` - **EN**: Reads the custom program authorization table ZFIT0160 by user ID and stops with an 'no program authorization' message (GF_CHECK = X) when the user is not registered or the ZFIR0090 flag is empty. - 테이블(파서): read [ZFIT0160](/tables/ZFIT0160.md) / write - - SAP 객체: ZFIT0160, ZFIR0090 - 업무 키워드: 프로그램 권한, 권한 체크, 사용자 ID, 권한 테이블 - English: Authorization Check, Custom Authorization Table, User ID - 정의부(복사 시 함께 필요): [`ZFIT0160`](#decl-zficom-45-zfit0160), [`GF_CHECK`](#decl-zficom-87-gf_check), [`C_X`](#decl-zficom-231-c_x) - 위치: `abap://ZFIR0130/ZFICOM#L547-L562` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#AUTHORITY_PG#C1` ### FORM GET_DOMAIN_VALUE — `ZFICOM` L574-L593 (20줄) *DOMAIN_VALUE_GET 으로 도메인 고정값의 텍스트를 조회하는 공통 헬퍼다.* > 이 unit 의 조각 1개가 14/20줄(70%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] 도메인명·값으로 DOMAIN_VALUE_GET 을 호출해 고정값 텍스트(DDTEXT)를 얻고 미존재 시 시스템 메시지를 표시한다. ```abap 578| CALL FUNCTION 'DOMAIN_VALUE_GET' 579| EXPORTING 580| I_DOMNAME = P_DOMNAME 581| I_DOMVALUE = P_DOMVALUE 582| IMPORTING 583| E_DDTEXT = P_DDTEXT 584| EXCEPTIONS 585| NOT_EXIST = 1 586| OTHERS = 2. 587| 588| IF SY-SUBRC NE 0. 589| MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO 590| WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. 591| ENDIF. ``` - **EN**: Calls DOMAIN_VALUE_GET to get the fixed-value text of a domain value and raises the system message if not found. - 호출(파서): DOMAIN_VALUE_GET - SAP 객체: DOMAIN_VALUE_GET - 업무 키워드: 도메인, 고정값 텍스트, 코드 설명 - English: Domain, Fixed Value, DDTEXT - 위치: `abap://ZFIR0130/ZFICOM#L578-L591` · confidence 0.85 · `ZFIR0130#ZFICOM#FORM#GET_DOMAIN_VALUE#C1` ### FORM CALC_DATE_IN_INTERVAL — `ZFICOM` L606-L623 (18줄) *기준일에 일·월·년을 가감한 날짜를 RP_CALC_DATE_IN_INTERVAL 로 계산하는 공통 헬퍼다.* > 이 unit 의 조각 1개가 9/18줄(50%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] 기준일에 일·월·년 값을 부호(SIGNUM)에 따라 더하거나 빼서 결과 날짜를 RP_CALC_DATE_IN_INTERVAL 로 계산한다. ```abap 613| CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL' 614| EXPORTING 615| DATE = P_DATE 616| DAYS = P_DAYS 617| MONTHS = P_MONTHS 618| SIGNUM = P_SIGNUM 619| YEARS = P_YEARS 620| IMPORTING 621| CALC_DATE = P_CALC_DATE. ``` - **EN**: Adds or subtracts days/months/years to a base date with RP_CALC_DATE_IN_INTERVAL according to SIGNUM. - 호출(파서): RP_CALC_DATE_IN_INTERVAL - SAP 객체: RP_CALC_DATE_IN_INTERVAL - 업무 키워드: 날짜 계산, 기준일, 일자 가감 - English: Date Calculation, RP_CALC_DATE_IN_INTERVAL - 위치: `abap://ZFIR0130/ZFICOM#L613-L621` · confidence 0.85 · `ZFIR0130#ZFICOM#FORM#CALC_DATE_IN_INTERVAL#C1` ### FORM CALC_BETWEEN_DATES — `ZFICOM` L635-L651 (17줄) *두 날짜 사이의 일·월·년 차이를 HRVE_GET_TIME_BETWEEN_DATES 로 계산하는 공통 헬퍼다.* > 이 unit 의 조각 1개가 8/17줄(47%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] 시작일·종료일을 넘겨 HRVE_GET_TIME_BETWEEN_DATES 로 경과 일수·개월·연수를 계산한다. ```abap 642| CALL FUNCTION 'HRVE_GET_TIME_BETWEEN_DATES' 643| EXPORTING 644| BEG_DATE = P_BDATE 645| END_DATE = P_EDATE 646| IMPORTING 647| DAYS = P_DAYS 648| MONTHS = P_MONTHS 649| YEARS = P_YEARS. ``` - **EN**: Calculates days, months and years between two dates via HRVE_GET_TIME_BETWEEN_DATES. - 호출(파서): HRVE_GET_TIME_BETWEEN_DATES - SAP 객체: HRVE_GET_TIME_BETWEEN_DATES - 업무 키워드: 기간 계산, 일수, 개월수, 경과기간 - English: Date Difference, Period Calculation - 위치: `abap://ZFIR0130/ZFICOM#L642-L649` · confidence 0.85 · `ZFIR0130#ZFICOM#FORM#CALC_BETWEEN_DATES#C1` ### FORM DYNP_VALUES_READ — `ZFICOM` L674-L703 (30줄) *DYNP_VALUES_READ 로 현재 화면 필드의 입력값을 PAI 전에 읽어오는 공통 헬퍼다.* > 이 unit 의 조각 1개가 21/30줄(70%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] 읽을 화면 필드명·STEPL 을 GT_DYNFIELDS 에 담고 DYNP_VALUES_READ 로 현재 프로그램·화면의 필드 값을 읽어 P_VALUE 로 돌려준다. ```abap 682| CLEAR : GT_DYNFIELDS, GT_DYNFIELDS[]. 683| GT_DYNFIELDS-FIELDNAME = P_FNAME. 684| GT_DYNFIELDS-STEPL = P_STEPL. 685| APPEND GT_DYNFIELDS. 686| 687| LV_PROG = SY-CPROG. 688| LV_DNUM = SY-DYNNR. 689| * To read Field Value on screen 690| CALL FUNCTION 'DYNP_VALUES_READ' 691| EXPORTING 692| DYNAME = LV_PROG 693| DYNUMB = LV_DNUM 694| DETERMINE_LOOP_INDEX = C_X 695| TABLES 696| DYNPFIELDS = GT_DYNFIELDS 697| EXCEPTIONS 698| OTHERS = 01. 699| IF SY-SUBRC EQ 0. 700| READ TABLE GT_DYNFIELDS INDEX 1. 701| P_VALUE = GT_DYNFIELDS-FIELDVALUE. 702| ENDIF. ``` - **EN**: Fills GT_DYNFIELDS with the screen field name/STEPL and reads its current value from the active dynpro with DYNP_VALUES_READ. - 호출(파서): DYNP_VALUES_READ - SAP 객체: DYNP_VALUES_READ - 업무 키워드: 화면 필드값 읽기, 다이나프로, 입력값 - English: DYNP_VALUES_READ, Dynpro Field, Screen Value - 정의부(복사 시 함께 필요): [`GT_DYNFIELDS`](#decl-zficom-63-gt_dynfields), [`LV_PROG`](#decl-zficom-678-lv_prog), [`LV_DNUM`](#decl-zficom-679-lv_dnum), [`C_X`](#decl-zficom-231-c_x) - 위치: `abap://ZFIR0130/ZFICOM#L682-L702` · confidence 0.85 · `ZFIR0130#ZFICOM#FORM#DYNP_VALUES_READ#C1` ### FORM SELECT_T007S — `ZFICOM` L758-L770 (13줄) *세금코드(MWSKZ)의 부가세 텍스트를 T007S 에서 조회하는 공통 FORM 이다.* > 이 unit 의 조각 1개가 9/13줄(69%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [sql_select] 세금계산절차(KALSM) 기본값을 세팅하고 T007S 에서 영어 언어 기준 세금코드(MWSKZ)의 설명 TEXT1 을 단건 조회한다. ```abap 761| IF GV_KALSM IS INITIAL. 762| GV_KALSM = C_KALSM. 763| ENDIF. 764| SELECT SINGLE T007S~TEXT1 765| INTO P_TEXT1 766| FROM T007S 767| WHERE T007S~SPRAS EQ 'E' " SY-LANGU 768| AND T007S~KALSM EQ GV_KALSM 769| AND T007S~MWSKZ EQ P_MWSKZ. ``` - **EN**: Defaults the tax procedure KALSM and reads the tax code description TEXT1 from T007S (language 'E'). - 테이블(파서): read [T007S](/tables/T007S.md) / write - - SAP 객체: T007S - 업무 키워드: 세금코드, 부가세, 세금계산절차, 텍스트 조회 - English: Tax Code, Tax Procedure, Sales Tax - 정의부(복사 시 함께 필요): [`GV_KALSM`](#decl-zficom-146-gv_kalsm), [`C_KALSM`](#decl-zficom-204-c_kalsm) - 위치: `abap://ZFIR0130/ZFICOM#L761-L769` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#SELECT_T007S#C1` ### FORM GET_NEXT_NUMBER — `ZFICOM` L781-L819 (39줄) *번호범위 오브젝트에서 다음 일련번호를 받아온다 (CBO 테이블의 키 생성용).* > 이 unit 의 조각 1개가 20/39줄(51%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] 표준 FM NUMBER_GET_NEXT 로 지정한 번호범위·오브젝트·서브오브젝트의 다음 일련번호를 채번하고, 구간 미존재·오버플로 등 예외는 시스템 메시지로 그대로 올린다. ```abap 787| CALL FUNCTION 'NUMBER_GET_NEXT' 788| EXPORTING 789| NR_RANGE_NR = P_NRRNG 790| OBJECT = P_OBJCT 791| SUBOBJECT = P_SBJCT 792| IMPORTING 793| NUMBER = P_NUMBR 794| EXCEPTIONS 795| INTERVAL_NOT_FOUND = 1 796| NUMBER_RANGE_NOT_INTERN = 2 797| OBJECT_NOT_FOUND = 3 798| QUANTITY_IS_0 = 4 799| QUANTITY_IS_NOT_1 = 5 800| INTERVAL_OVERFLOW = 6 801| BUFFER_OVERFLOW = 7 802| OTHERS = 8. 803| IF SY-SUBRC <> 0. 804| MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO 805| WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. 806| ENDIF. ``` - **EN**: Draws the next sequence number from a number-range object via NUMBER_GET_NEXT, surfacing interval/overflow exceptions as system messages. - 호출(파서): NUMBER_GET_NEXT - SAP 객체: NUMBER_GET_NEXT, INRI, NROBJ - 업무 키워드: 번호범위, 채번, 일련번호, 키생성, 번호오브젝트 - English: number range, number assignment, sequence number, NUMBER_GET_NEXT, NROBJ - 위치: `abap://ZFIR0130/ZFICOM#L787-L806` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#GET_NEXT_NUMBER#C1` ### FORM DATA_UPLOAD — `ZFICOM` L853-L908 (56줄) *파일 확장자(TXT/XLS)에 따라 GUI_UPLOAD 또는 TEXT_CONVERT_XLS_TO_SAP 으로 로컬 파일을 내부테이블로 업로드하는 공통 FORM 이다.* > 이 unit 의 조각 3개가 42/56줄(75%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [validation] 파일명의 마지막 3자리로 확장자(TXT/XLS)를 판별해 업로드 방식을 결정한다. ```abap 864| LV_LEN = STRLEN( P_FNAME ). 865| LV_POS = LV_LEN - 3. 866| LV_TYPE = P_FNAME+LV_POS(3). 867| TRANSLATE LV_TYPE TO UPPER CASE. ``` - **EN**: Extracts the file extension (last 3 characters) to decide the upload method. - 업무 키워드: 파일 확장자, 업로드 방식, 파일명 - English: File Extension, File Upload - 정의부(복사 시 함께 필요): [`LV_LEN`](#decl-zficom-858-lv_len), [`LV_POS`](#decl-zficom-859-lv_pos), [`LV_TYPE`](#decl-zficom-860-lv_type) - 위치: `abap://ZFIR0130/ZFICOM#L864-L867` · confidence 0.85 · `ZFIR0130#ZFICOM#FORM#DATA_UPLOAD#C1` #### [fm_call] TXT 파일이면 GUI_UPLOAD(탭 구분자)로 로컬 파일을 T_LOAD 내부테이블로 읽고 실패 시 메시지 I106 후 종료한다. ```abap 869| IF LV_TYPE EQ 'TXT'. 870| CLEAR : T_LOAD[], T_LOAD. 871| LV_FILENAME = P_FNAME. 872| CALL FUNCTION 'GUI_UPLOAD' 873| EXPORTING 874| FILENAME = LV_FILENAME 875| * FILETYPE = 'ASC' 876| * tab 877| HAS_FIELD_SEPARATOR = C_X 878| * CODEPAGE = '8000' 879| TABLES 880| DATA_TAB = T_LOAD. 881| 882| IF SY-SUBRC NE 0. 883| MESSAGE I106. 884| LEAVE LIST-PROCESSING. 885| ENDIF. ``` - **EN**: For TXT files uploads the tab-separated local file into T_LOAD with GUI_UPLOAD and stops with message I106 on failure. - 호출(파서): GUI_UPLOAD - SAP 객체: GUI_UPLOAD - 업무 키워드: 텍스트 파일 업로드, 탭 구분, 로컬 파일 - English: GUI_UPLOAD, Text File, Local File - 정의부(복사 시 함께 필요): [`LV_TYPE`](#decl-zficom-860-lv_type), [`LV_FILENAME`](#decl-zficom-861-lv_filename), [`C_X`](#decl-zficom-231-c_x) - 위치: `abap://ZFIR0130/ZFICOM#L869-L885` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#DATA_UPLOAD#C2` #### [fm_call] XLS 파일이면 TEXT_CONVERT_XLS_TO_SAP 으로 엑셀을 T_LOAD 로 변환(헤더행 옵션)하고, 실패·미지원 확장자면 메시지 I006/I007 로 종료한다. ```abap 887| ELSEIF LV_TYPE EQ 'XLS'. 888| CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP' 889| EXPORTING 890| * I_FIELD_SEPERATOR = 891| I_LINE_HEADER = P_HLINE 892| I_TAB_RAW_DATA = LV_RAW_DATA 893| I_FILENAME = P_FNAME 894| TABLES 895| I_TAB_CONVERTED_DATA = T_LOAD 896| EXCEPTIONS 897| CONVERSION_FAILED = 1 898| OTHERS = 2. 899| 900| IF SY-SUBRC NE 0. 901| MESSAGE I006. "업로드 실패!! 담당자에게 문의하세요. 902| LEAVE LIST-PROCESSING. 903| ENDIF. 904| ELSE. 905| MESSAGE I007. "지원하지 않는 확장자입니다. 파일형식을 확인하세요. 906| LEAVE LIST-PROCESSING. 907| ENDIF. ``` - **EN**: For XLS files converts the Excel sheet into T_LOAD with TEXT_CONVERT_XLS_TO_SAP (header line option); unsupported extensions or failures stop with messages I006/I007. - 호출(파서): TEXT_CONVERT_XLS_TO_SAP - SAP 객체: TEXT_CONVERT_XLS_TO_SAP - 업무 키워드: 엑셀 업로드, 헤더행, 파일 변환, 미지원 확장자 - English: Excel Upload, TEXT_CONVERT_XLS_TO_SAP, Conversion - 정의부(복사 시 함께 필요): [`LV_TYPE`](#decl-zficom-860-lv_type), [`LV_RAW_DATA`](#decl-zficom-862-lv_raw_data) - 위치: `abap://ZFIR0130/ZFICOM#L887-L907` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#DATA_UPLOAD#C3` ### FORM DATA_UPLOAD_2 — `ZFICOM` L917-L950 (34줄) *엑셀 파일을 KCD_EXCEL_OLE_TO_INT_CONVERT 로 셀 단위로 읽어 행별로 T_LOAD 내부테이블 구조에 매핑하는 공통 업로드 FORM 이다.* > 이 unit 의 조각 2개가 26/34줄(76%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] KCD_EXCEL_OLE_TO_INT_CONVERT 로 엑셀 파일을 2행부터(헤더 제외) 셀 단위 내부테이블 GT_XLS 로 읽고 실패 시 '업로드 실패' 메시지 후 종료한다. ```abap 922| CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT' 923| EXPORTING 924| FILENAME = P_FNAME 925| I_BEGIN_COL = 1 926| I_BEGIN_ROW = 2 927| I_END_COL = 256 928| I_END_ROW = 65536 929| TABLES 930| INTERN = GT_XLS 931| EXCEPTIONS 932| INCONSISTENT_PARAMETERS = 1 933| UPLOAD_OLE = 2 934| OTHERS = 3. 935| 936| IF SY-SUBRC <> 0. 937| MESSAGE I000 WITH '업로드 실패!! 담당자에게 문의하세요.'. 938| LEAVE LIST-PROCESSING. 939| ENDIF. ``` - **EN**: Reads the Excel file cell by cell (from row 2, skipping the header) into GT_XLS with KCD_EXCEL_OLE_TO_INT_CONVERT and stops with an upload-failed message on error. - 호출(파서): KCD_EXCEL_OLE_TO_INT_CONVERT - SAP 객체: KCD_EXCEL_OLE_TO_INT_CONVERT, KCDE_INTERN_STRUC - 업무 키워드: 엑셀 업로드, OLE, 헤더 제외, 셀 데이터 - English: Excel Upload, KCD_EXCEL_OLE_TO_INT_CONVERT, OLE - 정의부(복사 시 함께 필요): [`GT_XLS`](#decl-zficom-919-gt_xls) - 위치: `abap://ZFIR0130/ZFICOM#L922-L939` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#DATA_UPLOAD_2#C1` #### [calculation] 셀 데이터를 행·열 순으로 정렬한 뒤 열 번호를 T_LOAD 구조의 컴포넌트에 ASSIGN 해 값을 채우고 행이 끝날 때마다 T_LOAD 에 한 줄씩 추가한다. ```abap 941| SORT GT_XLS BY ROW COL. 942| LOOP AT GT_XLS. 943| ASSIGN COMPONENT GT_XLS-COL OF STRUCTURE T_LOAD TO . 944| = GT_XLS-VALUE. 945| AT END OF ROW. 946| APPEND T_LOAD. CLEAR: T_LOAD. 947| ENDAT. 948| ENDLOOP. ``` - **EN**: Sorts cells by row/column, assigns each cell value to the corresponding component of T_LOAD by column index and appends a line at the end of each row. - 업무 키워드: 행 변환, 컬럼 매핑, 업로드 내역, 필드심볼 - English: Row Mapping, Field Symbol, Internal Table - 정의부(복사 시 함께 필요): [`GT_XLS`](#decl-zficom-919-gt_xls), [``](#decl-zficom-920--fs-) - 위치: `abap://ZFIR0130/ZFICOM#L941-L948` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#DATA_UPLOAD_2#C2` ### FORM CONVERT_TO_FOREIGN_CURRENCY — `ZFICOM` L962-L999 (38줄) *현지통화 금액을 환율·기준일로 외화 금액으로 환산하는 공통 FORM 이다.* > 이 unit 의 조각 1개가 32/38줄(84%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] 현지통화 기본값을 설정한 뒤 CONVERT_TO_FOREIGN_CURRENCY 로 현지통화금액(DMBTR)을 환율(KURSF)·기준일 기준 외화금액(WRBTR)으로 환산하고 오류 시 시스템 메시지를 표시한다. ```abap 967| IF T001-WAERS IS INITIAL. 968| T001-WAERS = C_WAERS. 969| ENDIF. 970| CALL FUNCTION 'CONVERT_TO_FOREIGN_CURRENCY' 971| EXPORTING 972| * CLIENT = SY-MANDT 973| DATE = P_DATUM 974| FOREIGN_CURRENCY = P_WAERS 975| LOCAL_AMOUNT = P_DMBTR 976| LOCAL_CURRENCY = T001-WAERS 977| RATE = P_KURSF 978| * TYPE_OF_RATE = 'M' 979| * READ_TCURR = 'X' 980| IMPORTING 981| * EXCHANGE_RATE = 982| FOREIGN_AMOUNT = P_WRBTR 983| * FOREIGN_FACTOR = 984| * LOCAL_FACTOR = 985| * EXCHANGE_RATEX = 986| * DERIVED_RATE_TYPE = 987| * FIXED_RATE = 988| EXCEPTIONS 989| NO_RATE_FOUND = 1 990| OVERFLOW = 2 991| NO_FACTORS_FOUND = 3 992| NO_SPREAD_FOUND = 4 993| DERIVED_2_TIMES = 5 994| OTHERS = 6. 995| IF SY-SUBRC NE 0. 996| MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO 997| WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. 998| ENDIF. ``` - **EN**: Converts the local currency amount (DMBTR) to the foreign currency amount (WRBTR) via CONVERT_TO_FOREIGN_CURRENCY using rate and date, raising the system message on error. - 호출(파서): CONVERT_TO_FOREIGN_CURRENCY - SAP 객체: CONVERT_TO_FOREIGN_CURRENCY, T001, TCURR - 업무 키워드: 환율, 외화 환산, 현지통화, 전표금액 - English: Foreign Currency, Exchange Rate, Currency Conversion - 정의부(복사 시 함께 필요): [`T001`](#decl-zficom-11-t001), [`C_WAERS`](#decl-zficom-199-c_waers) - 위치: `abap://ZFIR0130/ZFICOM#L967-L998` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#CONVERT_TO_FOREIGN_CURRENCY#C1` ### FORM CONVERT_TO_LOCAL_CURRENCY — `ZFICOM` L1011-L1039 (29줄) *외화 금액을 환율·기준일로 회사코드 현지통화(T001-WAERS) 금액으로 환산하는 공통 FORM 이다.* > 이 unit 의 조각 1개가 23/29줄(79%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] 현지통화가 없으면 기본통화(C_WAERS)를 쓰고 CONVERT_TO_LOCAL_CURRENCY 로 외화금액(WRBTR)·환율(KURSF)·기준일로 현지통화금액(DMBTR)을 계산하며 환율 미존재 등 오류 시 메시지를 띄운다. ```abap 1016| IF T001-WAERS IS INITIAL. 1017| T001-WAERS = C_WAERS. 1018| ENDIF. 1019| CALL FUNCTION 'CONVERT_TO_LOCAL_CURRENCY' 1020| EXPORTING 1021| DATE = P_DATUM 1022| FOREIGN_AMOUNT = P_WRBTR 1023| FOREIGN_CURRENCY = P_WAERS 1024| LOCAL_CURRENCY = T001-WAERS 1025| RATE = P_KURSF 1026| IMPORTING 1027| LOCAL_AMOUNT = P_DMBTR 1028| EXCEPTIONS 1029| NO_RATE_FOUND = 1 1030| OVERFLOW = 2 1031| NO_FACTORS_FOUND = 3 1032| NO_SPREAD_FOUND = 4 1033| DERIVED_2_TIMES = 5 1034| OTHERS = 6. 1035| IF SY-SUBRC NE 0. 1036| MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO 1037| WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. 1038| ENDIF. ``` - **EN**: Converts the foreign amount to local currency amount (DMBTR) with CONVERT_TO_LOCAL_CURRENCY using the rate and date, defaulting the local currency, and raises the system message on error. - 호출(파서): CONVERT_TO_LOCAL_CURRENCY - SAP 객체: CONVERT_TO_LOCAL_CURRENCY, T001, TCURR - 업무 키워드: 환율, 외화 환산, 현지통화, 전표금액 - English: Local Currency, Exchange Rate, Currency Conversion - 정의부(복사 시 함께 필요): [`T001`](#decl-zficom-11-t001), [`C_WAERS`](#decl-zficom-199-c_waers) - 위치: `abap://ZFIR0130/ZFICOM#L1016-L1038` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#CONVERT_TO_LOCAL_CURRENCY#C1` ### FORM SELECT_USR01 — `ZFICOM` L1084-L1088 (5줄) *사용자명으로 USR01(사용자 마스터 기본값)을 단건 조회하는 공통 FORM 이다.* > 이 unit 의 조각 1개가 3/5줄(60%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [sql_select] 사용자 ID(P_UNAME)로 USR01 을 단건 조회해 사용자 기본 설정(날짜/숫자 형식 등)을 읽는다. ```abap 1085| SELECT SINGLE * 1086| FROM USR01 1087| WHERE USR01~BNAME EQ P_UNAME. ``` - **EN**: Reads the user master defaults from USR01 for the given user name. - 테이블(파서): read [USR01](/tables/USR01.md) / write - - SAP 객체: USR01 - 업무 키워드: 사용자 마스터, 사용자 기본값, 사용자 ID - English: User Master, USR01 - 정의부(복사 시 함께 필요): [`USR01`](#decl-zficom-41-usr01) - 위치: `abap://ZFIR0130/ZFICOM#L1085-L1087` · confidence 0.85 · `ZFIR0130#ZFICOM#FORM#SELECT_USR01#C1` ### FORM SMARTFORM_CONTROL — `ZFICOM` L1101-L1138 (38줄) *Smartform 이름으로 생성 FM 이름을 구하고 미리보기·다이얼로그·프린터 등 출력 옵션(GS_DEVICE/GS_OPTIONS)을 설정한다.* > 이 unit 의 조각 1개가 29/38줄(76%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] SSF_FUNCTION_MODULE_NAME 으로 Smartform 의 실행 FM 이름(GV_FNAME)을 구한 뒤 미리보기·NO_DIALOG·OTF·프린터(TDDEST)·즉시출력 등 출력 옵션을 GS_DEVICE/GS_OPTIONS 에 설정한다. ```abap 1108| CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME' 1109| EXPORTING 1110| FORMNAME = P_FORMNAME 1111| IMPORTING 1112| FM_NAME = GV_FNAME 1113| EXCEPTIONS 1114| NO_FORM = 1 1115| NO_FUNCTION_MODULE = 2 1116| OTHERS = 3. 1117| 1118| IF SY-SUBRC EQ 0. 1119| * Output option appointment (preview screen exception) 1120| GS_DEVICE-PREVIEW = P_PREVIEW. 1121| GS_DEVICE-NO_DIALOG = P_DIALOG. 1122| GS_DEVICE-GETOTF = P_GETOTF. 1123| GS_DEVICE-LANGU = SY-LANGU. 1124| GS_DEVICE-DEVICE = 'PRINTER'. 1125| GS_DEVICE-NO_OPEN = C_X. 1126| GS_DEVICE-NO_CLOSE = C_X. 1127| GS_OPTIONS-TDDEST = P_TDDEST. 1128| GS_OPTIONS-TDIMMED = C_X. 1129| GS_OPTIONS-TDDELETE = C_X. 1130| GS_OPTIONS-TDNEWID = C_X. 1131| * 미리보기버튼 1132| GS_OPTIONS-TDNOPREV = SPACE. 1133| GS_OPTIONS-TDCOVER = SPACE. "C_S. 1134| GS_OPTIONS-TDNOPRINT = P_TDNOPRINT. 1135| * GS_OPTIONS-TDRECEIVER = SY-UNAME. 1136| ENDIF. ``` - **EN**: Gets the generated function module name of the Smart Form via SSF_FUNCTION_MODULE_NAME and fills control parameters (preview, no dialog, OTF) and output options (TDDEST, immediate print). - 호출(파서): SSF_FUNCTION_MODULE_NAME - SAP 객체: SSF_FUNCTION_MODULE_NAME, SSFCTRLOP, SSFCOMPOP - 업무 키워드: 스마트폼, 출력 옵션, 미리보기, 프린터 - English: Smart Forms, Output Options, Control Parameters, Print Preview - 정의부(복사 시 함께 필요): [`GV_FNAME`](#decl-zficom-98-gv_fname), [`GS_DEVICE`](#decl-zficom-100-gs_device), [`C_X`](#decl-zficom-231-c_x), [`GS_OPTIONS`](#decl-zficom-99-gs_options) - 위치: `abap://ZFIR0130/ZFICOM#L1108-L1136` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#SMARTFORM_CONTROL#C1` ### FORM SMARTFORM_OPEN — `ZFICOM` L1144-L1156 (13줄) *Smartform 출력 작업을 SSF_OPEN 으로 시작하는 공통 FORM 이다.* > 이 unit 의 조각 1개가 11/13줄(85%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] GS_DEVICE/GS_OPTIONS 의 출력 옵션으로 SSF_OPEN 을 호출해 Smartform 출력 job 을 연다. ```abap 1145| CALL FUNCTION 'SSF_OPEN' 1146| EXPORTING 1147| CONTROL_PARAMETERS = GS_DEVICE 1148| OUTPUT_OPTIONS = GS_OPTIONS 1149| USER_SETTINGS = SPACE 1150| EXCEPTIONS 1151| FORMATTING_ERROR = 1 1152| INTERNAL_ERROR = 2 1153| SEND_ERROR = 3 1154| USER_CANCELED = 4 1155| OTHERS = 5. ``` - **EN**: Opens a Smart Form print job with SSF_OPEN using the control parameters GS_DEVICE and output options GS_OPTIONS. - 호출(파서): SSF_OPEN - SAP 객체: SSF_OPEN - 업무 키워드: 스마트폼, 출력 시작, 양식 출력 - English: Smart Forms, SSF_OPEN, Output Options - 정의부(복사 시 함께 필요): [`GS_DEVICE`](#decl-zficom-100-gs_device), [`GS_OPTIONS`](#decl-zficom-99-gs_options) - 위치: `abap://ZFIR0130/ZFICOM#L1145-L1155` · confidence 0.85 · `ZFIR0130#ZFICOM#FORM#SMARTFORM_OPEN#C1` ### FORM SMARTFORM_CLOSE — `ZFICOM` L1162-L1175 (14줄) *Smartform 출력 작업을 SSF_CLOSE 로 종료하고 JOB_OUTPUT_INFO 를 받아오는 공통 FORM 이다.* > 이 unit 의 조각 1개가 12/14줄(86%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] SSF_CLOSE 로 Smartform 출력 job 을 닫고 출력 결과(GS_JOB_OUTPUT_INFO)를 받으며 오류 시 시스템 메시지를 표시한다. ```abap 1163| CALL FUNCTION 'SSF_CLOSE' 1164| IMPORTING 1165| JOB_OUTPUT_INFO = GS_JOB_OUTPUT_INFO 1166| EXCEPTIONS 1167| FORMATTING_ERROR = 1 1168| INTERNAL_ERROR = 2 1169| SEND_ERROR = 3 1170| OTHERS = 4. 1171| IF SY-SUBRC NE 0. 1172| MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO 1173| WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. 1174| ENDIF. ``` - **EN**: Closes the Smart Form print job with SSF_CLOSE, retrieves JOB_OUTPUT_INFO and raises the system message on error. - 호출(파서): SSF_CLOSE - SAP 객체: SSF_CLOSE - 업무 키워드: 스마트폼, 출력 종료, 양식 출력 - English: Smart Forms, SSF_CLOSE, Print Job - 정의부(복사 시 함께 필요): [`GS_JOB_OUTPUT_INFO`](#decl-zficom-102-gs_job_output_info) - 위치: `abap://ZFIR0130/ZFICOM#L1163-L1174` · confidence 0.85 · `ZFIR0130#ZFICOM#FORM#SMARTFORM_CLOSE#C1` ### FORM DYNPRO — `ZFICOM` L1240-L1251 (12줄) *BDC 화면 시작 또는 필드값 한 줄을 GT_BDC(BDCDATA) 에 추가하는 공통 BDC 빌더 헬퍼다.* > 이 unit 의 조각 1개가 9/12줄(75%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [interface] P_DYN 이 X 면 모듈풀·화면번호로 BDC 화면 시작 행을, 아니면 필드명·값 행을 GT_BDC(BDCDATA)에 추가한다. ```abap 1242| IF P_DYN EQ C_X. 1243| MOVE : P_NAME TO GT_BDC-PROGRAM, "BDC module pool 1244| P_VALUE TO GT_BDC-DYNPRO, "Screen Number 1245| P_DYN TO GT_BDC-DYNBEGIN. "BDC screen start 1246| ELSE. 1247| MOVE : P_NAME TO GT_BDC-FNAM, "Field Name 1248| P_VALUE TO GT_BDC-FVAL. "BDC field value 1249| ENDIF. 1250| APPEND GT_BDC. ``` - **EN**: Appends either a screen-start row (program, dynpro, DYNBEGIN) or a field/value row to GT_BDC (BDCDATA). - SAP 객체: BDCDATA - 업무 키워드: BDC 데이터, 화면 번호, 필드값, 배치인풋 - English: BDCDATA, Batch Input, Dynpro - 정의부(복사 시 함께 필요): [`C_X`](#decl-zficom-231-c_x), [`GT_BDC`](#decl-zficom-168-gt_bdc) - 위치: `abap://ZFIR0130/ZFICOM#L1242-L1250` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#DYNPRO#C1` ### FORM BDC_TRANSACTION — `ZFICOM` L1259-L1266 (8줄) *GT_BDC 데이터로 지정 T-Code 를 CALL TRANSACTION 하고 결과 메시지를 GT_MESS 에 받는 공통 BDC 실행 FORM 이다.* > 이 unit 의 조각 1개가 6/8줄(75%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [interface] BDC 실행 옵션(표시모드 GV_MODE, 갱신모드 A)을 CTU_PARAMS 에 설정하고 GT_BDC 로 P_TCODE 트랜잭션을 CALL TRANSACTION 해 결과 메시지를 GT_MESS 에 수집한다. ```abap 1260| CTU_PARAMS-DISMODE = GV_MODE. 1261| CTU_PARAMS-UPDMODE = C_A. 1262| * CTU_PARAMS-NOBINPT = C_X. 1263| * CTU_PARAMS-RACOMMIT = C_X. 1264| CALL TRANSACTION P_TCODE USING GT_BDC OPTIONS FROM CTU_PARAMS 1265| MESSAGES INTO GT_MESS. ``` - **EN**: Sets CTU_PARAMS (display mode GV_MODE, sync update) and runs CALL TRANSACTION for P_TCODE with GT_BDC, collecting messages into GT_MESS. - 호출(파서): P_TCODE - SAP 객체: BDCDATA, BDCMSGCOLL, CTU_PARAMS - 업무 키워드: BDC 실행, 트랜잭션 호출, 처리 메시지, 표시모드 - English: Call Transaction, BDC, CTU_PARAMS - 정의부(복사 시 함께 필요): [`CTU_PARAMS`](#decl-zficom-48-ctu_params), [`GV_MODE`](#decl-zficom-174-gv_mode), [`C_A`](#decl-zficom-208-c_a), [`GT_BDC`](#decl-zficom-168-gt_bdc), [`GT_MESS`](#decl-zficom-172-gt_mess) - 위치: `abap://ZFIR0130/ZFICOM#L1260-L1265` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#BDC_TRANSACTION#C1` ### FORM MESSAGE_SELECT — `ZFICOM` L1274-L1285 (12줄) *BDC 메시지(GT_MESS)의 ID·번호·변수를 MESSAGE_TEXT_BUILD 로 메시지 텍스트로 조립하는 공통 헬퍼다.* > 이 unit 의 조각 1개가 10/12줄(83%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] BDC 결과 메시지(GT_MESS)의 MSGID·MSGNR·MSGV1~4 를 MESSAGE_TEXT_BUILD 로 읽을 수 있는 메시지 텍스트로 만들어 로그 필드에 돌려준다. ```abap 1275| CALL FUNCTION 'MESSAGE_TEXT_BUILD' 1276| EXPORTING 1277| MSGID = GT_MESS-MSGID 1278| MSGNR = GT_MESS-MSGNR 1279| MSGV1 = GT_MESS-MSGV1 1280| MSGV2 = GT_MESS-MSGV2 1281| MSGV3 = GT_MESS-MSGV3 1282| MSGV4 = GT_MESS-MSGV4 1283| IMPORTING 1284| MESSAGE_TEXT_OUTPUT = P_NATXT. ``` - **EN**: Builds the readable message text from the BDC message fields (MSGID, MSGNR, MSGV1-4) in GT_MESS using MESSAGE_TEXT_BUILD. - 호출(파서): MESSAGE_TEXT_BUILD - SAP 객체: MESSAGE_TEXT_BUILD, BDCMSGCOLL - 업무 키워드: BDC 메시지, 메시지 텍스트, 처리 로그 - English: BDC Message, MESSAGE_TEXT_BUILD, Message Log - 정의부(복사 시 함께 필요): [`GT_MESS`](#decl-zficom-172-gt_mess) - 위치: `abap://ZFIR0130/ZFICOM#L1275-L1284` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#MESSAGE_SELECT#C1` ### FORM BDC_FK03 — `ZFICOM` L1294-L1318 (25줄) *구매처코드와 회사코드로 FK03 구매처 마스터 조회 화면을 BDC 로 호출한다.* > 이 unit 의 조각 1개가 18/25줄(72%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [interface] SAPMF02K 0106 화면에 구매처·회사코드와 조회 뷰 플래그를 BDC 로 채우고 CALL TRANSACTION FK03 으로 구매처 마스터를 표시한다. ```abap 1299| PERFORM DYNPRO USING : 1300| 'X' 'SAPMF02K' '0106', 1301| ' ' 'BDC_OKCODE' '/00', 1302| ' ' 'RF02K-LIFNR' P_LIFNR, 1303| ' ' 'RF02K-BUKRS' P_BUKRS, 1304| ' ' 'RF02K-D0110' C_X, 1305| ' ' 'RF02K-D0120' C_X, 1306| ' ' 'RF02K-D0130' C_X, 1307| ' ' 'RF02K-D0210' C_X, 1308| ' ' 'RF02K-D0215' C_X, 1309| ' ' 'RF02K-D0215' C_X, 1310| ' ' 'RF02K-D0610' C_X. 1311| 1312| CTU_PARAMS-DISMODE = C_E. 1313| CTU_PARAMS-UPDMODE = C_A. 1314| CTU_PARAMS-NOBINPT = C_X. 1315| CTU_PARAMS-RACOMMIT = C_X. 1316| CALL TRANSACTION 'FK03' USING GT_BDC OPTIONS FROM CTU_PARAMS. ``` - **EN**: Builds BDC data for screen SAPMF02K 0106 (vendor, company code, view flags) and calls transaction FK03 to display the vendor master. - 호출(파서): DYNPRO, DYNPRO, DYNPRO, DYNPRO, DYNPRO, DYNPRO, DYNPRO, DYNPRO, DYNPRO, DYNPRO, DYNPRO, FK03 - SAP 객체: FK03, SAPMF02K, LFA1 - 업무 키워드: 구매처 조회, 구매처 마스터, BDC, 회사코드 - English: Vendor Master, BDC, Call Transaction - 정의부(복사 시 함께 필요): [`C_X`](#decl-zficom-231-c_x), [`CTU_PARAMS`](#decl-zficom-48-ctu_params), [`C_E`](#decl-zficom-212-c_e), [`C_A`](#decl-zficom-208-c_a), [`GT_BDC`](#decl-zficom-168-gt_bdc) - 위치: `abap://ZFIR0130/ZFICOM#L1299-L1316` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#BDC_FK03#C1` ### FORM CALL_TRANSACTION_FB03 — `ZFICOM` L1328-L1336 (9줄) *회사코드·전표번호·회계연도를 파라미터 ID 로 넘겨 FB03 회계전표 조회 화면을 호출한다.* > 이 unit 의 조각 1개가 5/9줄(56%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [control_flow] 전표번호가 있으면 SET PARAMETER ID(BLN/BUK/GJR) 로 키를 넘기고 FB03 트랜잭션을 첫 화면 건너뛰기로 호출해 회계전표를 조회한다. ```abap 1331| CHECK P_BELNR IS NOT INITIAL. 1332| SET PARAMETER ID 'BLN' FIELD P_BELNR. 1333| SET PARAMETER ID 'BUK' FIELD P_BUKRS. 1334| SET PARAMETER ID 'GJR' FIELD P_GJAHR. 1335| CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN. ``` - **EN**: Sets parameter IDs BLN/BUK/GJR and calls transaction FB03 with SKIP FIRST SCREEN to display the accounting document. - 호출(파서): FB03 - SAP 객체: FB03, BKPF - 업무 키워드: 회계전표 조회, 전표번호, 회사코드, 회계연도 - English: Accounting Document, Display Document, FB03 - 위치: `abap://ZFIR0130/ZFICOM#L1331-L1335` · confidence 0.95 · `ZFIR0130#ZFICOM#FORM#CALL_TRANSACTION_FB03#C1` ### FORM STATUS_BAR — `ZFICOM` L1345-L1366 (22줄) *처리 진행률을 계산해 SAPGUI 상태바에 진행 상황 텍스트를 표시하는 공통 유틸리티다.* > 이 unit 의 조각 1개가 16/22줄(73%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [fm_call] 텍스트가 없으면 GV_INDEX/GV_TABIN 으로 진행률(%)을 계산해 SAPGUI_PROGRESS_INDICATOR 로 상태바에 처리 진행 상황을 표시한다. ```abap 1350| IF P_TXT EQ SPACE. 1351| GV_INDEX = GV_INDEX + 1. 1352| GV_KBETR = GV_INDEX / GV_TABIN * 100. 1353| CONCATENATE GV_INDEX '/' GV_TABIN '=====>' GV_KBETR '% Processing...' 1354| INTO LV_TEXT SEPARATED BY SPACE. 1355| CONDENSE GV_KBETR. 1356| LV_PCEN = GV_KBETR. 1357| ELSE. 1358| LV_TEXT = P_TXT. 1359| LV_PCEN = P_PCT. 1360| ENDIF. 1361| 1362| CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR' 1363| EXPORTING 1364| PERCENTAGE = LV_PCEN 1365| TEXT = LV_TEXT. ``` - **EN**: Calculates the processing percentage from GV_INDEX/GV_TABIN and shows a progress indicator via SAPGUI_PROGRESS_INDICATOR. - 호출(파서): SAPGUI_PROGRESS_INDICATOR - SAP 객체: SAPGUI_PROGRESS_INDICATOR - 업무 키워드: 진행률, 상태바, 처리건수, 진행표시 - English: Progress Indicator, Status Bar - 정의부(복사 시 함께 필요): [`GV_INDEX`](#decl-zficom-82-gv_index), [`GV_KBETR`](#decl-zficom-83-gv_kbetr), [`GV_TABIN`](#decl-zficom-81-gv_tabin), [`LV_TEXT`](#decl-zficom-1347-lv_text), [`LV_PCEN`](#decl-zficom-1348-lv_pcen) - 위치: `abap://ZFIR0130/ZFICOM#L1350-L1365` · confidence 0.9 · `ZFIR0130#ZFICOM#FORM#STATUS_BAR#C1` ### FORM HOTSPOT_CLICK — `ZFIR0130F01` L414-L435 (22줄) *헤더 ALV 핫스팟 클릭 시 선택 문서에 대해 BSEG_PROCESS로 전표 아이템을 구성하고 정렬한 뒤 OK코드 ZUSER로 PAI를 트리거해 하단 ALV를 갱신하는 FORM이다.* > 이 unit 의 조각 1개가 17/22줄(77%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [control_flow] 클릭한 헤더 행을 읽어 전표번호 컬럼이면 BSEG_PROCESS로 해당 경비 문서의 전표 아이템(GT_ITEM2)을 만들어 전표번호·항목 순으로 정렬하고 CL_GUI_CFW=>SET_NEW_OK_CODE로 화면 재표시를 유도한다. ```abap 417| READ TABLE GT_HEAD INDEX P_ROW_ID-INDEX. 418| CHECK SY-SUBRC EQ 0. 419| 420| CASE P_COLUMN_ID. 421| * 전표번호 422| WHEN 'BELNR'. 423| 424| PERFORM BSEG_PROCESS. 425| 426| SORT GT_ITEM2 BY BELNR BUZEI. 427| * PAI로 호출 428| CALL METHOD CL_GUI_CFW=>SET_NEW_OK_CODE 429| EXPORTING 430| NEW_CODE = 'ZUSER'. 431| 432| 433| ENDCASE. ``` - **EN**: On document-number hotspot, builds the line items for the selected expense document via BSEG_PROCESS, sorts them and triggers PAI with OK-code ZUSER to refresh the item grid. - 호출(파서): BSEG_PROCESS, CL_GUI_CFW=>SET_NEW_OK_CODE - SAP 객체: CL_GUI_CFW - 업무 키워드: 핫스팟 클릭, 전표 아이템 구성, 화면 갱신 - English: Hotspot Click, Line Item, SET_NEW_OK_CODE - 정의부(복사 시 함께 필요): [`GT_HEAD`](#decl-zfir0130top-29-gt_head), [`GT_ITEM`](#decl-zfir0130top-50-gt_item), [`GT_ITEM2`](#decl-zfir0130top-103-gt_item2) - 위치: `abap://ZFIR0130/ZFIR0130F01#L417-L433` · confidence 0.8 · `ZFIR0130#ZFIR0130F01#FORM#HOTSPOT_CLICK#C1` ### FORM HOTSPOT_CLICK2 — `ZFIR0130F01` L444-L475 (32줄) *아이템 ALV 의 보조부계정(SUBAC) 핫스팟 클릭 시 계정유형별로 FD03/FK03/AS03/MM03 마스터 조회 화면을 호출한다.* > 이 unit 의 조각 1개가 27/32줄(84%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [control_flow] 클릭한 아이템의 계정유형이 고객(D)이면 FD03, 구매처(K)면 FK03, 자산(A)이면 AS03, 자재(M)면 MM03 을 파라미터 ID 로 키를 넘겨 호출해 마스터를 조회한다. ```abap 447| READ TABLE GT_ITEM2 INDEX P_ROW_ID-INDEX. 448| CHECK SY-SUBRC EQ 0. 449| 450| CASE P_COLUMN_ID. 451| WHEN 'SUBAC'. 452| CHECK GT_ITEM2-SUBAC IS NOT INITIAL. 453| * 고객 454| IF GT_ITEM2-KOART EQ C_D. 455| SET PARAMETER ID 'KUN' FIELD GT_ITEM2-SUBAC. 456| SET PARAMETER ID 'BUK' FIELD GT_ITEM2-BUKRS. 457| CALL TRANSACTION 'FD03' AND SKIP FIRST SCREEN. 458| * 구매처 459| ELSEIF GT_ITEM2-KOART EQ C_K. 460| SET PARAMETER ID 'LIF' FIELD GT_ITEM2-SUBAC. 461| SET PARAMETER ID 'BUK' FIELD GT_ITEM2-BUKRS. 462| CALL TRANSACTION 'FK03' AND SKIP FIRST SCREEN. 463| * 자산 464| ELSEIF GT_ITEM2-KOART EQ C_A. 465| SET PARAMETER ID 'AN1' FIELD GT_ITEM2-ANLN1. 466| SET PARAMETER ID 'BUK' FIELD GT_ITEM2-BUKRS. 467| CALL TRANSACTION 'AS03' AND SKIP FIRST SCREEN. 468| * 자재 469| ELSEIF GT_ITEM2-KOART EQ C_M. 470| SET PARAMETER ID 'MAT' FIELD GT_ITEM2-MATNR. 471| CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN. 472| ENDIF. 473| ENDCASE. ``` - **EN**: Depending on the clicked item's account type calls FD03 (customer), FK03 (vendor), AS03 (asset) or MM03 (material) with parameter IDs to display the master record. - 호출(파서): FD03, FK03, AS03, MM03 - SAP 객체: FD03, FK03, AS03, MM03 - 업무 키워드: 핫스팟, 보조부계정 조회, 고객 마스터, 구매처 마스터, 자산 마스터, 자재 마스터 - English: Hotspot, Customer Master, Vendor Master, Asset Master, Material Master - 정의부(복사 시 함께 필요): [`GT_ITEM`](#decl-zfir0130top-50-gt_item), [`GT_ITEM2`](#decl-zfir0130top-103-gt_item2), [`C_D`](#decl-zficom-211-c_d), [`C_K`](#decl-zficom-218-c_k), [`C_A`](#decl-zficom-208-c_a), [`C_M`](#decl-zficom-220-c_m) - 위치: `abap://ZFIR0130/ZFIR0130F01#L447-L473` · confidence 0.9 · `ZFIR0130#ZFIR0130F01#FORM#HOTSPOT_CLICK2#C1` ### FORM DOUBLE_CLICK — `ZFIR0130F01` L484-L505 (22줄) *헤더 ALV 더블클릭 시 해당 전표(BUKRS/GJAHR/BELNR)의 아이템을 GT_ITEM에서 골라 GT_ITEM2를 채우고 OK코드 ZUSER로 PAI를 트리거해 하단 ALV를 갱신하는 FORM이다.* > 이 unit 의 조각 1개가 15/22줄(68%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [aggregation] 더블클릭한 헤더 행의 회사코드·연도·전표번호와 일치하는 아이템을 GT_ITEM에서 추려 GT_ITEM2에 담고 전표번호·항목 순으로 정렬한 뒤 CL_GUI_CFW=>SET_NEW_OK_CODE로 화면 재표시를 유도한다. ```abap 489| READ TABLE GT_HEAD INDEX P_ROW-INDEX. 490| CHECK SY-SUBRC EQ 0. 491| 492| LOOP AT GT_ITEM WHERE BUKRS EQ GT_HEAD-BUKRS 493| AND GJAHR EQ GT_HEAD-GJAHR 494| AND BELNR EQ GT_HEAD-BELNR. 495| MOVE-CORRESPONDING GT_ITEM TO GT_ITEM2. 496| APPEND GT_ITEM2. CLEAR GT_ITEM2. 497| ENDLOOP. 498| 499| SORT GT_ITEM2 BY BELNR BUZEI. 500| * PAI로 호출 501| CALL METHOD CL_GUI_CFW=>SET_NEW_OK_CODE 502| EXPORTING 503| NEW_CODE = 'ZUSER'. ``` - **EN**: Filters the line items of the double-clicked document header into GT_ITEM2, sorts by document and line number, and triggers PAI with OK-code ZUSER to refresh the item grid. - 호출(파서): CL_GUI_CFW=>SET_NEW_OK_CODE - SAP 객체: CL_GUI_CFW - 업무 키워드: 더블클릭, 전표 아이템 필터, 헤더 아이템 연동, 화면 갱신 - English: Double Click, Line Item, Header-Item Link, SET_NEW_OK_CODE - 정의부(복사 시 함께 필요): [`GT_HEAD`](#decl-zfir0130top-29-gt_head), [`GT_ITEM`](#decl-zfir0130top-50-gt_item), [`GT_ITEM2`](#decl-zfir0130top-103-gt_item2) - 위치: `abap://ZFIR0130/ZFIR0130F01#L489-L503` · confidence 0.85 · `ZFIR0130#ZFIR0130F01#FORM#DOUBLE_CLICK#C1` ### FORM ALV_GRID_DISPLAY2 — `ZFIR0130F01` L259-L278 (20줄) *아이템 필드카탈로그를 만든 뒤 GV_ALV_GRID2->SET_TABLE_FOR_FIRST_DISPLAY로 생성할 전표 아이템(GT_ITEM2)을 하단 ALV에 표시하는 FORM이다.* > 이 unit 의 조각 1개가 12/20줄(60%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [output] 레이아웃·변형·툴바 제외 목록과 함께 SET_TABLE_FOR_FIRST_DISPLAY를 호출해 전표 아이템 내부테이블 GT_ITEM2를 하단 ALV 그리드에 출력한다. ```abap 264| GV_VARI2-REPORT = SY-REPID. 265| CALL METHOD GV_ALV_GRID2->SET_TABLE_FOR_FIRST_DISPLAY 266| EXPORTING 267| I_STRUCTURE_NAME = 'GT_ITEM' 268| IT_TOOLBAR_EXCLUDING = GT_EXCLUDE 269| IS_LAYOUT = GV_LAYO2 270| IS_VARIANT = GV_VARI2 271| I_BUFFER_ACTIVE = C_X 272| I_SAVE = C_A 273| CHANGING 274| IT_OUTTAB = GT_ITEM2[] 275| IT_FIELDCATALOG = GT_FCAT_ITEM[]. ``` - **EN**: Displays the document line items (GT_ITEM2) in the lower ALV grid via SET_TABLE_FOR_FIRST_DISPLAY. - 호출(파서): GV_ALV_GRID2->SET_TABLE_FOR_FIRST_DISPLAY - SAP 객체: CL_GUI_ALV_GRID - 업무 키워드: 아이템 ALV 출력, 전표 아이템 - English: ALV Grid, SET_TABLE_FOR_FIRST_DISPLAY, Line Item - 정의부(복사 시 함께 필요): [`GV_VARI2`](#decl-zfir0130top-188-gv_vari2), [`GV_ALV_GRID2`](#decl-zfir0130top-182-gv_alv_grid2), [`GT_EXCLUDE`](#decl-zfialv-102-gt_exclude), [`GV_LAYO2`](#decl-zfir0130top-185-gv_layo2), [`C_X`](#decl-zficom-231-c_x), [`C_A`](#decl-zficom-208-c_a), [`GT_ITEM`](#decl-zfir0130top-50-gt_item), [`GT_ITEM2`](#decl-zfir0130top-103-gt_item2), [`GT_FCAT_ITEM`](#decl-zfialv-82-gt_fcat_item) - 위치: `abap://ZFIR0130/ZFIR0130F01#L264-L275` · confidence 0.8 · `ZFIR0130#ZFIR0130F01#FORM#ALV_GRID_DISPLAY2#C1` ### FORM ALV_GRID_DISPLAY1 — `ZFIR0130F01` L135-L152 (18줄) *헤더 필드카탈로그를 만든 뒤 GV_ALV_GRID1->SET_TABLE_FOR_FIRST_DISPLAY로 승인 경비 문서 헤더(GT_HEAD)를 상단 ALV에 표시하는 FORM이다.* > 이 unit 의 조각 1개가 12/18줄(67%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [output] 레이아웃·변형·툴바 제외 목록과 함께 SET_TABLE_FOR_FIRST_DISPLAY를 호출해 전자결재 승인 경비 헤더 GT_HEAD를 상단 ALV 그리드에 출력한다. ```abap 140| GV_VARI1-REPORT = SY-REPID. 141| CALL METHOD GV_ALV_GRID1->SET_TABLE_FOR_FIRST_DISPLAY 142| EXPORTING 143| I_STRUCTURE_NAME = 'GT_HEAD' 144| IT_TOOLBAR_EXCLUDING = GT_EXCLUDE 145| IS_LAYOUT = GV_LAYO1 146| IS_VARIANT = GV_VARI1 147| I_BUFFER_ACTIVE = C_X 148| I_SAVE = C_A 149| CHANGING 150| IT_OUTTAB = GT_HEAD[] 151| IT_FIELDCATALOG = GT_FCAT_HEAD[]. ``` - **EN**: Displays the approved expense document headers (GT_HEAD) in the upper ALV grid via SET_TABLE_FOR_FIRST_DISPLAY. - 호출(파서): GV_ALV_GRID1->SET_TABLE_FOR_FIRST_DISPLAY - SAP 객체: CL_GUI_ALV_GRID - 업무 키워드: 헤더 ALV 출력, 승인 경비 문서 - English: ALV Grid, SET_TABLE_FOR_FIRST_DISPLAY, Expense Document - 정의부(복사 시 함께 필요): [`GV_VARI1`](#decl-zfir0130top-187-gv_vari1), [`GV_ALV_GRID1`](#decl-zfir0130top-181-gv_alv_grid1), [`GT_EXCLUDE`](#decl-zfialv-102-gt_exclude), [`GV_LAYO1`](#decl-zfir0130top-184-gv_layo1), [`C_X`](#decl-zficom-231-c_x), [`C_A`](#decl-zficom-208-c_a), [`GT_HEAD`](#decl-zfir0130top-29-gt_head), [`GT_FCAT_HEAD`](#decl-zfialv-81-gt_fcat_head) - 위치: `abap://ZFIR0130/ZFIR0130F01#L140-L151` · confidence 0.8 · `ZFIR0130#ZFIR0130F01#FORM#ALV_GRID_DISPLAY1#C1` ### FORM DISPLAY_PROCESSING_DATA — `ZFIR0130F01` L511-L613 (103줄) *선택한 결재 문서의 전자결재 원문을 외부 시스템에서 URL 로 받아 브라우저로 띄운다.* > 이 unit 의 조각 3개가 80/103줄(78%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다. #### [validation] ALV 에서 선택된 행을 가져와 선택이 없으면 중단하고, 문서조회는 한 건씩만 가능하므로 두 건 이상이면 안내 후 중단한다. 선택한 행에 결재문서 ID(APPID)가 없으면 조회할 수 없다고 알린다. ```abap 522| CALL METHOD GV_ALV_GRID1->GET_SELECTED_ROWS 523| IMPORTING 524| ET_INDEX_ROWS = GT_ROWS[]. 525| 526| IF GT_ROWS[] IS INITIAL. 527| MESSAGE S004. "선택된 데이터가 없습니다. 528| EXIT. 529| ELSE. 530| CLEAR: LV_CNT. 531| * 문서조회는 한건씩 532| DESCRIBE TABLE GT_ROWS LINES LV_CNT. 533| 534| IF LV_CNT GT 1. 535| MESSAGE S000 WITH '문서조회는 한건씩 조회 가능합니다' 536| DISPLAY LIKE C_E. 537| EXIT. 538| ENDIF. 539| 540| LOOP AT GT_ROWS INTO GS_ROWS. 541| READ TABLE GT_HEAD INDEX GS_ROWS-INDEX. 542| CHECK SY-SUBRC EQ 0. 543| 544| IF GT_HEAD-APPID IS INITIAL. 545| MESSAGE S000 WITH '해당 데이터의 문서조회를 할 수 없습니다.' 546| DISPLAY LIKE C_E. 547| EXIT. 548| ENDIF. ``` - **EN**: Validates the ALV selection — exactly one row, and it must carry an approval document ID (APPID). - 호출(파서): GV_ALV_GRID1->GET_SELECTED_ROWS - SAP 객체: CL_GUI_ALV_GRID, GET_SELECTED_ROWS, APPID - 업무 키워드: 행선택, 단건조회, 결재문서, 선택검증, 문서조회 - English: row selection, single record, approval document, selection validation - 정의부(복사 시 함께 필요): [`GV_ALV_GRID1`](#decl-zfir0130top-181-gv_alv_grid1), [`GT_ROWS`](#decl-zficom-121-gt_rows), [`LV_CNT`](#decl-zfir0130f01-512-lv_cnt), [`C_E`](#decl-zficom-212-c_e), [`GS_ROWS`](#decl-zficom-122-gs_rows), [`GT_HEAD`](#decl-zfir0130top-29-gt_head) - 위치: `abap://ZFIR0130/ZFIR0130F01#L522-L548` · confidence 0.88 · `ZFIR0130#ZFIR0130F01#FORM#DISPLAY_PROCESSING_DATA#C1` #### [db_write] 인터페이스 공통 로그 테이블 ZIFT0010 에서 해당 결재 ID 의 마지막 순번을 찾아 +1 한 새 로그 행을 만들고, 호스트·프로그램·요청자·요청시각·모듈(FI)을 기록해 저장한다 — 외부 호출 이력을 남기는 단계다. ```abap 553| SELECT MAX( SEQ ) 554| INTO LV_MAX 555| FROM ZIFT0010 556| WHERE UNQID EQ GT_HEAD-APPID. 557| 558| CLEAR ZIFT0010. 559| ZIFT0010-UNQID = GT_HEAD-APPID. 560| ZIFT0010-SEQ = LV_MAX + 1. 561| ZIFT0010-HOST = SY-HOST. 562| ZIFT0010-PGMID = SY-REPID. 563| ZIFT0010-REQID = SY-UNAME. 564| ZIFT0010-REQTM = SY-UZEIT. 565| * CBO TABLE 저장 566| ZIFT0010-MODUL = 'FI'. 567| MODIFY ZIFT0010. 568| 569| CLEAR: LT_CMLOG. 570| MOVE-CORRESPONDING ZIFT0010 TO LT_CMLOG. 571| APPEND LT_CMLOG. ``` - **EN**: Creates the next sequence row in the interface common-log table ZIFT0010 with host, program, requester and timestamp before calling out. - 테이블(파서): read [ZIFT0010](/tables/ZIFT0010.md) / write [ZIFT0010](/tables/ZIFT0010.md) - SAP 객체: ZIFT0010, ZIFS0010, UNQID, SEQ - 업무 키워드: 인터페이스로그, 공통로그, 순번, 호출이력, 요청자, 감사로그 - English: interface log, common log, sequence, call history, requester, audit log - 정의부(복사 시 함께 필요): [`LV_MAX`](#decl-zfir0130f01-516-lv_max), [`ZIFT0010`](#decl-zfir0130top-8-zift0010), [`GT_HEAD`](#decl-zfir0130top-29-gt_head), [`LT_CMLOG`](#decl-zfir0130f01-517-lt_cmlog) - 위치: `abap://ZFIR0130/ZFIR0130F01#L553-L571` · confidence 0.86 · `ZFIR0130#ZFIR0130F01#FORM#DISPLAY_PROCESSING_DATA#C2` #### [interface] RFC destination 'ZFI01' 의 Z_FI_CONFIRM_DISPLAY 를 호출해 결재 문서의 조회 URL 을 받아오고, URL 이 없으면 안내 후 중단, 있으면 표준 FM CALL_BROWSER 로 웹 브라우저를 띄운다. 브라우저 호출 실패도 사용자에게 알린다. ```abap 576| CLEAR: LV_STATS, LV_MESSG, LV_URL. 577| CALL FUNCTION 'Z_FI_CONFIRM_DISPLAY' 578| DESTINATION 'ZFI01' 579| EXPORTING 580| I_UNQID = GT_HEAD-APPID 581| IMPORTING 582| E_STATS = LV_STATS 583| E_MESSG = LV_MESSG 584| E_URL = LV_URL 585| TABLES 586| IT_CMLOG = LT_CMLOG. 587| 588| IF LV_URL EQ SPACE. 589| MESSAGE S000 WITH '문서조회할 URL 주소가 없습니다.' 590| DISPLAY LIKE C_E. 591| EXIT. 592| ELSE. 593| * 브라우져 호출 594| CALL FUNCTION 'CALL_BROWSER' 595| EXPORTING 596| URL = LV_URL 597| EXCEPTIONS 598| FRONTEND_NOT_SUPPORTED = 1 599| FRONTEND_ERROR = 2 600| PROG_NOT_FOUND = 3 601| NO_BATCH = 4 602| UNSPECIFIED_ERROR = 5 603| OTHERS = 6. 604| IF SY-SUBRC NE 0. 605| MESSAGE S000 WITH '웹 브라우저 호출 시 에러가 발생하였습니다.' 606| DISPLAY LIKE C_E. 607| EXIT. 608| ENDIF. 609| ENDIF. ``` - **EN**: Calls Z_FI_CONFIRM_DISPLAY over RFC to obtain the approval document URL and opens it via CALL_BROWSER, reporting missing URL or browser errors. - 호출(파서): Z_FI_CONFIRM_DISPLAY, CALL_BROWSER - SAP 객체: Z_FI_CONFIRM_DISPLAY, CALL_BROWSER, ZFI01, ZIFT0010 - 업무 키워드: 전자결재, 문서조회, URL, 브라우저호출, RFC, 외부시스템연계 - English: electronic approval, document display, URL, browser, RFC destination, external system - 정의부(복사 시 함께 필요): [`LV_STATS`](#decl-zfir0130f01-513-lv_stats), [`LV_MESSG`](#decl-zfir0130f01-514-lv_messg), [`LV_URL`](#decl-zfir0130f01-515-lv_url), [`GT_HEAD`](#decl-zfir0130top-29-gt_head), [`LT_CMLOG`](#decl-zfir0130f01-517-lt_cmlog), [`C_E`](#decl-zficom-212-c_e) - 위치: `abap://ZFIR0130/ZFIR0130F01#L576-L609` · confidence 0.89 · `ZFIR0130#ZFIR0130F01#FORM#DISPLAY_PROCESSING_DATA#C3` ## 정의부 (330건) 로직 조각을 다른 프로그램으로 옮겨 붙일 때 **함께 가야 하는 선언**이다. 조각별로 무엇이 필요한지는 위 조각 항목의 `정의부` 줄에 있고(이름을 누르면 여기로 온다), 붙여넣기용으로 의존까지 묶은 코드는 `GET /chunks/` 의 `declaration_code` 로 받는다. ### `ZFIALV` (76건) #### SLIS — type-pool · L7-L7 {#decl-zfialv-7-slis} ```abap TYPE-POOLS : SLIS. ``` #### LCL_EVENT_RECEIVER — class · L10-L20 {#decl-zfialv-10-lcl_event_receiver} ```abap CLASS LCL_EVENT_RECEIVER DEFINITION. PUBLIC SECTION. METHODS : HANDLE_CLOSE FOR EVENT CLOSE OF CL_GUI_DIALOGBOX_CONTAINER IMPORTING SENDER. PRIVATE SECTION. * 'X': does exist, SPACE: does not ex. DATA : DIALOGBOX_STATUS TYPE C. ENDCLASS. "lcl_event_receiver DEFINITION ``` #### GT_FIELDCAT — data · L37-L37 {#decl-zfialv-37-gt_fieldcat} ```abap DATA : GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV. " WA ``` #### GT_FIELDCAT_HEAD — data · L38-L38 {#decl-zfialv-38-gt_fieldcat_head} ```abap DATA: GT_FIELDCAT_HEAD TYPE SLIS_T_FIELDCAT_ALV. " HEAD ``` #### GT_FIELDCAT_ITEM — data · L39-L39 {#decl-zfialv-39-gt_fieldcat_item} ```abap DATA: GT_FIELDCAT_ITEM TYPE SLIS_T_FIELDCAT_ALV. " ITEM ``` #### GT_FIELDCAT_FIELD — data · L40-L40 {#decl-zfialv-40-gt_fieldcat_field} ```abap DATA: GT_FIELDCAT_FIELD TYPE SLIS_T_FIELDCAT_ALV. ``` #### GT_DROP — data · L41-L41 {#decl-zfialv-41-gt_drop} ```abap DATA: GT_DROP TYPE LVC_T_DROP. " Drop-down ``` #### GT_DRAL — data · L42-L42 {#decl-zfialv-42-gt_dral} ```abap DATA: GT_DRAL TYPE LVC_T_DRAL. ``` #### GT_SORTINFO — data · L43-L43 {#decl-zfialv-43-gt_sortinfo} ```abap DATA: GT_SORTINFO TYPE SLIS_T_SORTINFO_ALV. " SORT ``` #### GT_EVENT — data · L44-L44 {#decl-zfialv-44-gt_event} ```abap DATA: GT_EVENT TYPE SLIS_T_EVENT. " EVENT ``` #### GT_PRINT — data · L45-L45 {#decl-zfialv-45-gt_print} ```abap DATA: GT_PRINT TYPE SLIS_PRINT_ALV. " PRINT ``` #### GT_LISTHEADER — data · L46-L46 {#decl-zfialv-46-gt_listheader} ```abap DATA: GT_LISTHEADER TYPE SLIS_T_LISTHEADER. " TITLE ``` #### GT_CELLTAB — data · L47-L47 {#decl-zfialv-47-gt_celltab} ```abap DATA: GT_CELLTAB TYPE LVC_T_STYL. ``` #### GT_COLOR — data · L48-L48 {#decl-zfialv-48-gt_color} ```abap DATA: GT_COLOR TYPE LVC_T_SCOL. ``` #### GT_COLINFO — data · L49-L49 {#decl-zfialv-49-gt_colinfo} ```abap DATA: GT_COLINFO TYPE SLIS_T_SPECIALCOL_ALV WITH HEADER LINE. ``` #### GS_FIELDCAT_HEAD — data · L51-L51 {#decl-zfialv-51-gs_fieldcat_head} ```abap DATA : GS_FIELDCAT_HEAD TYPE SLIS_FIELDCAT_ALV. " HEAD ``` #### GS_FIELDCAT_ITEM — data · L52-L52 {#decl-zfialv-52-gs_fieldcat_item} ```abap DATA: GS_FIELDCAT_ITEM TYPE SLIS_FIELDCAT_ALV. " ITEM ``` #### GS_DROP — data · L53-L53 {#decl-zfialv-53-gs_drop} ```abap DATA: GS_DROP TYPE LVC_S_DROP. " Drop-down ``` #### GS_DRAL — data · L54-L54 {#decl-zfialv-54-gs_dral} ```abap DATA: GS_DRAL TYPE LVC_S_DRAL. ``` #### GS_SORTINFO — data · L55-L55 {#decl-zfialv-55-gs_sortinfo} ```abap DATA: GS_SORTINFO TYPE SLIS_SORTINFO_ALV. " SORT ``` #### GS_EVENT — data · L56-L56 {#decl-zfialv-56-gs_event} ```abap DATA: GS_EVENT LIKE LINE OF GT_EVENT. " EVENT ``` #### GS_VARIANT — data · L57-L57 {#decl-zfialv-57-gs_variant} ```abap DATA: GS_VARIANT LIKE DISVARIANT. " Layout ``` #### GS_DEF_VARIANT — data · L58-L58 {#decl-zfialv-58-gs_def_variant} ```abap DATA: GS_DEF_VARIANT LIKE DISVARIANT. " Default Layout ``` #### GS_LAYOUT — data · L59-L59 {#decl-zfialv-59-gs_layout} ```abap DATA: GS_LAYOUT TYPE SLIS_LAYOUT_ALV. " Layout ``` #### GS_EXIT_BY_USER — data · L60-L60 {#decl-zfialv-60-gs_exit_by_user} ```abap DATA: GS_EXIT_BY_USER TYPE SLIS_EXIT_BY_USER. ``` #### GS_LISTHEADER — data · L61-L61 {#decl-zfialv-61-gs_listheader} ```abap DATA: GS_LISTHEADER TYPE SLIS_LISTHEADER. " TITLE ``` #### GS_KEYINFO — data · L62-L62 {#decl-zfialv-62-gs_keyinfo} ```abap DATA: GS_KEYINFO TYPE SLIS_KEYINFO_ALV. ``` #### GS_CELLTAB — data · L63-L63 {#decl-zfialv-63-gs_celltab} ```abap DATA: GS_CELLTAB TYPE LVC_S_STYL. ``` #### GS_COLOR — data · L64-L64 {#decl-zfialv-64-gs_color} ```abap DATA: GS_COLOR TYPE LVC_S_SCOL. ``` #### GS_GRIDSET — data · L65-L65 {#decl-zfialv-65-gs_gridset} ```abap DATA: GS_GRIDSET TYPE LVC_S_GLAY. " GRID SETTING ``` #### GV_REPID — data · L67-L67 {#decl-zfialv-67-gv_repid} ```abap DATA : GV_REPID TYPE SY-REPID. " Program-ID. ``` #### GV_PROGRAM — data · L68-L68 {#decl-zfialv-68-gv_program} ```abap DATA: GV_PROGRAM LIKE SY-REPID. " Program-ID ``` #### GV_INCLNAME — data · L69-L69 {#decl-zfialv-69-gv_inclname} ```abap DATA: GV_INCLNAME LIKE SY-REPID. ``` #### GV_GRID_TITLE — data · L70-L70 {#decl-zfialv-70-gv_grid_title} ```abap DATA: GV_GRID_TITLE TYPE LVC_TITLE. " GRID TITLE ``` #### GV_VARIANT_EXIT — data · L71-L71 {#decl-zfialv-71-gv_variant_exit} ```abap DATA: GV_VARIANT_EXIT(1) TYPE C. ``` #### GV_SAVE — data · L72-L72 {#decl-zfialv-72-gv_save} ```abap DATA: GV_SAVE(1) TYPE C. ``` #### GV_TABNAME_HEAD — data · L73-L73 {#decl-zfialv-73-gv_tabname_head} ```abap DATA: GV_TABNAME_HEAD TYPE SLIS_TABNAME. ``` #### GV_TABNAME_ITEM — data · L74-L74 {#decl-zfialv-74-gv_tabname_item} ```abap DATA: GV_TABNAME_ITEM TYPE SLIS_TABNAME. ``` #### GV_PF_STATUS — data · L75-L75 {#decl-zfialv-75-gv_pf_status} ```abap DATA: GV_PF_STATUS TYPE SLIS_FORMNAME VALUE 'SET_STATUS'. ``` #### GV_USER_COMMAND — data · L76-L76 {#decl-zfialv-76-gv_user_command} ```abap DATA: GV_USER_COMMAND TYPE SLIS_FORMNAME VALUE 'USER_COMMAND'. ``` #### GV_DATA_CHANGED — data · L77-L77 {#decl-zfialv-77-gv_data_changed} ```abap DATA: GV_DATA_CHANGED TYPE SLIS_FORMNAME VALUE 'ALV_DATA_CHANGED'. ``` #### GV_TOP_OF_PAGE — data · L78-L78 {#decl-zfialv-78-gv_top_of_page} ```abap DATA: GV_TOP_OF_PAGE TYPE SLIS_FORMNAME. ``` #### GV_F2CODE — data · L79-L79 {#decl-zfialv-79-gv_f2code} ```abap DATA: GV_F2CODE LIKE SY-UCOMM VALUE 'PICK'. ``` #### GT_FCAT_HEAD — data · L81-L81 {#decl-zfialv-81-gt_fcat_head} ```abap DATA : GT_FCAT_HEAD TYPE LVC_T_FCAT. ``` #### GT_FCAT_ITEM — data · L82-L82 {#decl-zfialv-82-gt_fcat_item} ```abap DATA: GT_FCAT_ITEM TYPE LVC_T_FCAT. ``` #### GS_FCAT_HEAD — data · L83-L83 {#decl-zfialv-83-gs_fcat_head} ```abap DATA: GS_FCAT_HEAD TYPE LVC_S_FCAT. ``` #### GS_FCAT_ITEM — data · L84-L84 {#decl-zfialv-84-gs_fcat_item} ```abap DATA: GS_FCAT_ITEM TYPE LVC_S_FCAT. ``` #### GS_LAYOUT_ON — data · L85-L85 {#decl-zfialv-85-gs_layout_on} ```abap DATA: GS_LAYOUT_ON TYPE LVC_S_LAYO. " ALV_LAYOUT ``` #### GT_SORT — data · L86-L86 {#decl-zfialv-86-gt_sort} ```abap DATA: GT_SORT TYPE LVC_T_SORT. " Sort ``` #### GS_SORT — data · L87-L87 {#decl-zfialv-87-gs_sort} ```abap DATA: GS_SORT TYPE LVC_S_SORT. " Sort ``` #### GT_F4 — data · L88-L88 {#decl-zfialv-88-gt_f4} ```abap DATA: GT_F4 TYPE LVC_T_F4. ``` #### GS_F4 — data · L89-L89 {#decl-zfialv-89-gs_f4} ```abap DATA: GS_F4 TYPE LVC_S_F4. " F4 ``` #### GS_ROW_ID — data · L90-L90 {#decl-zfialv-90-gs_row_id} ```abap DATA: GS_ROW_ID TYPE LVC_S_ROW. " Cursor ``` #### GS_COLUMN_ID — data · L91-L91 {#decl-zfialv-91-gs_column_id} ```abap DATA: GS_COLUMN_ID TYPE LVC_S_COL. ``` #### GT_EXCLUDING — data · L93-L93 {#decl-zfialv-93-gt_excluding} ```abap DATA : GT_EXCLUDING TYPE SLIS_T_EXTAB. ``` #### GT_EVENT_EXIT — data · L94-L94 {#decl-zfialv-94-gt_event_exit} ```abap DATA: GT_EVENT_EXIT TYPE SLIS_T_EVENT_EXIT. ``` #### GV_TOOLBAR — data · L96-L96 {#decl-zfialv-96-gv_toolbar} ```abap DATA : GV_TOOLBAR TYPE REF TO CL_GUI_TOOLBAR. ``` #### GV_TOP_NODE — data · L97-L97 {#decl-zfialv-97-gv_top_node} ```abap DATA: GV_TOP_NODE TYPE LVC_NKEY. ``` #### GV_ALV_TREE — data · L98-L98 {#decl-zfialv-98-gv_alv_tree} ```abap DATA: GV_ALV_TREE TYPE REF TO CL_GUI_ALV_TREE. ``` #### GV_ALV_ITEM — data · L99-L99 {#decl-zfialv-99-gv_alv_item} ```abap DATA: GV_ALV_ITEM TYPE REF TO CL_GUI_ALV_GRID. ``` #### GT_ROW — data · L100-L100 {#decl-zfialv-100-gt_row} ```abap DATA: GT_ROW TYPE LVC_T_ROW. " SELLECTION INDEX ``` #### GT_ROID — data · L101-L101 {#decl-zfialv-101-gt_roid} ```abap DATA: GT_ROID TYPE LVC_T_ROID. ``` #### GT_EXCLUDE — data · L102-L102 {#decl-zfialv-102-gt_exclude} ```abap DATA: GT_EXCLUDE TYPE UI_FUNCTIONS. ``` #### GS_EXCLUDE — data · L103-L103 {#decl-zfialv-103-gs_exclude} ```abap DATA: GS_EXCLUDE TYPE UI_FUNC. ``` #### DC_GRID — data · L105-L105 {#decl-zfialv-105-dc_grid} ```abap DATA : DC_GRID TYPE REF TO CL_GUI_DOCKING_CONTAINER. ``` #### CC_GRID — data · L106-L106 {#decl-zfialv-106-cc_grid} ```abap DATA: CC_GRID TYPE REF TO CL_GUI_CUSTOM_CONTAINER. ``` #### CC_GRID2 — data · L107-L107 {#decl-zfialv-107-cc_grid2} ```abap DATA: CC_GRID2 TYPE REF TO CL_GUI_CUSTOM_CONTAINER. ``` #### CC_DIALOG — data · L108-L108 {#decl-zfialv-108-cc_dialog} ```abap DATA: CC_DIALOG TYPE REF TO CL_GUI_DIALOGBOX_CONTAINER. ``` #### GV_EVENT_RECEIVER — data · L109-L109 {#decl-zfialv-109-gv_event_receiver} ```abap DATA: GV_EVENT_RECEIVER TYPE REF TO LCL_EVENT_RECEIVER. ``` #### GT_UCOMM — data · L111-L111 {#decl-zfialv-111-gt_ucomm} ```abap DATA : GT_UCOMM TYPE TABLE OF SY-UCOMM. "버튼제어 ``` #### C_BDC01 — constants · L115-L115 {#decl-zfialv-115-c_bdc01} ```abap CONSTANTS : C_BDC01(9) TYPE C VALUE 'Sequence'. ``` #### C_BDC02 — constants · L116-L116 {#decl-zfialv-116-c_bdc02} ```abap CONSTANTS: C_BDC02(9) TYPE C VALUE 'Field'. ``` #### C_BDC03 — constants · L117-L117 {#decl-zfialv-117-c_bdc03} ```abap CONSTANTS: C_BDC03(9) TYPE C VALUE 'Type'. ``` #### C_BDC04 — constants · L118-L118 {#decl-zfialv-118-c_bdc04} ```abap CONSTANTS: C_BDC04(9) TYPE C VALUE 'Length'. ``` #### C_BDC05 — constants · L119-L119 {#decl-zfialv-119-c_bdc05} ```abap CONSTANTS: C_BDC05(9) TYPE C VALUE 'Required'. ``` #### C_BDC06 — constants · L120-L120 {#decl-zfialv-120-c_bdc06} ```abap CONSTANTS: C_BDC06(9) TYPE C VALUE 'Example'. ``` ### `ZFICOM` (201건) #### ICON — type-pool · L7-L7 {#decl-zficom-7-icon} ```abap TYPE-POOLS : SHLP, KCDE, VRM, ICON, TPIT. ``` #### KCDE — type-pool · L7-L7 {#decl-zficom-7-kcde} ```abap TYPE-POOLS : SHLP, KCDE, VRM, ICON, TPIT. ``` #### SHLP — type-pool · L7-L7 {#decl-zficom-7-shlp} ```abap TYPE-POOLS : SHLP, KCDE, VRM, ICON, TPIT. ``` #### TPIT — type-pool · L7-L7 {#decl-zficom-7-tpit} ```abap TYPE-POOLS : SHLP, KCDE, VRM, ICON, TPIT. ``` #### VRM — type-pool · L7-L7 {#decl-zficom-7-vrm} ```abap TYPE-POOLS : SHLP, KCDE, VRM, ICON, TPIT. ``` #### T001 — tables · L11-L11 {#decl-zficom-11-t001} ```abap TABLES : T001. " Company Codes ``` #### T005 — tables · L12-L12 {#decl-zficom-12-t005} ```abap TABLES: T005. " Land ``` #### BKPF — tables · L13-L13 {#decl-zficom-13-bkpf} ```abap TABLES: BKPF. " Accounting Document Heade ``` #### BSEG — tables · L14-L14 {#decl-zficom-14-bseg} ```abap TABLES: BSEG. " Accounting Document Segment ``` #### BSID — tables · L15-L15 {#decl-zficom-15-bsid} ```abap TABLES: BSID. " Accounting: Secondary Index for Customers ``` #### BSAD — tables · L16-L16 {#decl-zficom-16-bsad} ```abap TABLES: BSAD. " Accounting: Secondary Index for Customers ``` #### BSIK — tables · L18-L18 {#decl-zficom-18-bsik} ```abap TABLES: BSIK. " Accounting: Secondary Index for Vendors ``` #### BSAK — tables · L19-L19 {#decl-zficom-19-bsak} ```abap TABLES: BSAK. " Accounting: Secondary Index for Vendors ``` #### BSIS — tables · L21-L21 {#decl-zficom-21-bsis} ```abap TABLES: BSIS. " Accounting: Secondary Index for G/L Accounts ``` #### BSAS — tables · L22-L22 {#decl-zficom-22-bsas} ```abap TABLES: BSAS. " Accounting: Secondary Index for G/L Accounts ``` #### BSEC — tables · L24-L24 {#decl-zficom-24-bsec} ```abap TABLES: BSEC. " One-Time Account Data Document Segment ``` #### BSET — tables · L25-L25 {#decl-zficom-25-bset} ```abap TABLES: BSET. " Tax Data Document Segment ``` #### BSED — tables · L26-L26 {#decl-zficom-26-bsed} ```abap TABLES: BSED. " n Bill of Exchange Fields Docume ``` #### VBKPF — tables · L27-L27 {#decl-zficom-27-vbkpf} ```abap TABLES: VBKPF. " Document Header for Document Parking ``` #### VBSEGS — tables · L28-L28 {#decl-zficom-28-vbsegs} ```abap TABLES: VBSEGS. " Document Segment for Document Parking ``` #### VBSEGD — tables · L30-L30 {#decl-zficom-30-vbsegd} ```abap TABLES: VBSEGD. " Document Segment for Customer Document Parking ``` #### VBSEGK — tables · L31-L31 {#decl-zficom-31-vbsegk} ```abap TABLES: VBSEGK. " Document Segment for Vendor Document Parking ``` #### VBSET — tables · L32-L32 {#decl-zficom-32-vbset} ```abap TABLES: VBSET. " Document Segment for Taxes Document Parking ``` #### VBSEC — tables · L33-L33 {#decl-zficom-33-vbsec} ```abap TABLES: VBSEC. " Document Parking One-Time Data Document Segment ``` #### SKA1 — tables · L34-L34 {#decl-zficom-34-ska1} ```abap TABLES: SKA1. " G/L Account Master (Chart of Accounts) ``` #### SKB1 — tables · L35-L35 {#decl-zficom-35-skb1} ```abap TABLES: SKB1. " G/L account master (company code) ``` #### LFA1 — tables · L36-L36 {#decl-zficom-36-lfa1} ```abap TABLES: LFA1. " Vendor Master (General Section) ``` #### LFB1 — tables · L37-L37 {#decl-zficom-37-lfb1} ```abap TABLES: LFB1. " Vendor Master (Company Code) ``` #### KNA1 — tables · L38-L38 {#decl-zficom-38-kna1} ```abap TABLES: KNA1. " General Data in Customer Master ``` #### KNB1 — tables · L39-L39 {#decl-zficom-39-knb1} ```abap TABLES: KNB1. " Customer Master (Company Code) ``` #### ADRC — tables · L40-L40 {#decl-zficom-40-adrc} ```abap TABLES: ADRC. " Addresses (Business Address Services) ``` #### USR01 — tables · L41-L41 {#decl-zficom-41-usr01} ```abap TABLES: USR01. " User master record (runtime data) ``` #### USR05 — tables · L42-L42 {#decl-zficom-42-usr05} ```abap TABLES: USR05. " User Master Parameter ID ``` #### USR21 — tables · L43-L43 {#decl-zficom-43-usr21} ```abap TABLES: USR21. " Assign user name address key ``` #### ZFIT0160 — tables · L45-L45 {#decl-zficom-45-zfit0160} ```abap TABLES: ZFIT0160. " FI 권한 관리 테이블 ``` #### CTU_PARAMS — tables · L48-L48 {#decl-zficom-48-ctu_params} ```abap TABLES : CTU_PARAMS. "CALL TRANSACTION USING... ``` #### GT_SQL — data · L54-L54 {#decl-zficom-54-gt_sql} ```abap DATA : GT_SQL(72) OCCURS 0 WITH HEADER LINE. ``` #### GT_FIELD — data · L56-L56 {#decl-zficom-56-gt_field} ```abap DATA : GT_FIELD LIKE HELP_VALUE OCCURS 0 WITH HEADER LINE. ``` #### GV_FIELD — data · L57-L57 {#decl-zficom-57-gv_field} ```abap DATA: GV_FIELD LIKE HELP_INFO-FIELDNAME. ``` #### GV_VALUE — data · L58-L58 {#decl-zficom-58-gv_value} ```abap DATA: GV_VALUE LIKE HELP_INFO-FLDVALUE. ``` #### GV_TABIX — data · L59-L59 {#decl-zficom-59-gv_tabix} ```abap DATA: GV_TABIX LIKE SY-TABIX. ``` #### GT_SHLP — data · L61-L61 {#decl-zficom-61-gt_shlp} ```abap DATA : GT_SHLP TYPE SHLP_DESCR_T. ``` #### GT_DYNFIELDS — data · L63-L63 {#decl-zficom-63-gt_dynfields} ```abap DATA : GT_DYNFIELDS LIKE DYNPREAD OCCURS 0 WITH HEADER LINE. ``` #### GT_RETVALUES — data · L64-L64 {#decl-zficom-64-gt_retvalues} ```abap DATA: GT_RETVALUES LIKE DDSHRETVAL OCCURS 0 WITH HEADER LINE. ``` #### GT_RECEIVE — data · L65-L65 {#decl-zficom-65-gt_receive} ```abap DATA: GT_RECEIVE LIKE DYNPREAD OCCURS 0 WITH HEADER LINE. ``` #### GT_EXCODE — data · L66-L66 {#decl-zficom-66-gt_excode} ```abap DATA: GT_EXCODE TYPE TABLE OF SY-UCOMM. " Button Control ``` #### GV_DBCNT — data · L68-L68 {#decl-zficom-68-gv_dbcnt} ```abap DATA : GV_DBCNT LIKE SY-DBCNT. " Inquiry count ``` #### GV_TFILL — data · L69-L69 {#decl-zficom-69-gv_tfill} ```abap DATA: GV_TFILL LIKE SY-TFILL. " Current number of lines ``` #### GV_SUBRC — data · L70-L70 {#decl-zficom-70-gv_subrc} ```abap DATA: GV_SUBRC LIKE SY-SUBRC. " Return Value ``` #### GV_UCOMM — data · L71-L71 {#decl-zficom-71-gv_ucomm} ```abap DATA: GV_UCOMM LIKE SY-UCOMM. " Function Code ``` #### GV_TITLE — data · L72-L72 {#decl-zficom-72-gv_title} ```abap DATA: GV_TITLE LIKE SY-TITLE. " Title ``` #### GV_DATUM — data · L73-L73 {#decl-zficom-73-gv_datum} ```abap DATA: GV_DATUM LIKE SY-DATUM. " Date ``` #### GV_TYPE — data · L74-L74 {#decl-zficom-74-gv_type} ```abap DATA: GV_TYPE LIKE DD01V-DATATYPE. " Num/Char Flag ``` #### GV_SEQNO — data · L75-L75 {#decl-zficom-75-gv_seqno} ```abap DATA: GV_SEQNO(3) TYPE N. " Seqence No ``` #### GV_CURSOR_FIELD — data · L76-L76 {#decl-zficom-76-gv_cursor_field} ```abap DATA: GV_CURSOR_FIELD(30). " CURSOR FIELD ``` #### GV_CURSOR_LINE — data · L77-L77 {#decl-zficom-77-gv_cursor_line} ```abap DATA: GV_CURSOR_LINE LIKE SY-LILLI. " CURSOR LINE ``` #### GV_10_D — data · L79-L79 {#decl-zficom-79-gv_10_d} ```abap DATA : GV_10_D(16) TYPE P DECIMALS 0. ``` #### GV_TABIN — data · L81-L81 {#decl-zficom-81-gv_tabin} ```abap DATA : GV_TABIN(06). " total count ``` #### GV_INDEX — data · L82-L82 {#decl-zficom-82-gv_index} ```abap DATA: GV_INDEX(06). " progress count ``` #### GV_KBETR — data · L83-L83 {#decl-zficom-83-gv_kbetr} ```abap DATA: GV_KBETR(05). " progress percent ``` #### GV_INDIC — data · L84-L84 {#decl-zficom-84-gv_indic} ```abap DATA: GV_INDIC(80). " progress status ``` #### GV_TEXT — data · L85-L85 {#decl-zficom-85-gv_text} ```abap DATA: GV_TEXT(100). ``` #### GF_CHECK — data · L87-L87 {#decl-zficom-87-gf_check} ```abap DATA : GF_CHECK(1). " Input Check ``` #### GF_MARK — data · L88-L88 {#decl-zficom-88-gf_mark} ```abap DATA: GF_MARK(1). " Select Flag ``` #### GF_LOCK — data · L89-L89 {#decl-zficom-89-gf_lock} ```abap DATA: GF_LOCK(1). " Lock Flag ``` #### GF_ANSWER — data · L90-L90 {#decl-zficom-90-gf_answer} ```abap DATA: GF_ANSWER(1). " MessageBox Return Value ``` #### GF_COLOR — data · L91-L91 {#decl-zficom-91-gf_color} ```abap DATA: GF_COLOR(1). " LINE COLOR ``` #### GV_NAME — data · L94-L94 {#decl-zficom-94-gv_name} ```abap DATA : GV_NAME TYPE VRM_ID. ``` #### GT_LIST — data · L95-L95 {#decl-zficom-95-gt_list} ```abap DATA: GT_LIST TYPE VRM_VALUES. ``` #### GS_VALUE — data · L96-L96 {#decl-zficom-96-gs_value} ```abap DATA: GS_VALUE LIKE LINE OF GT_LIST. ``` #### GV_FNAME — data · L98-L98 {#decl-zficom-98-gv_fname} ```abap DATA : GV_FNAME TYPE RS38L_FNAM. ``` #### GS_OPTIONS — data · L99-L99 {#decl-zficom-99-gs_options} ```abap DATA: GS_OPTIONS TYPE SSFCOMPOP. ``` #### GS_DEVICE — data · L100-L100 {#decl-zficom-100-gs_device} ```abap DATA: GS_DEVICE TYPE SSFCTRLOP. ``` #### GV_TDDEST — data · L101-L101 {#decl-zficom-101-gv_tddest} ```abap DATA: GV_TDDEST LIKE GS_OPTIONS-TDDEST VALUE 'LOCL'. ``` #### GS_JOB_OUTPUT_INFO — data · L102-L102 {#decl-zficom-102-gs_job_output_info} ```abap DATA: GS_JOB_OUTPUT_INFO TYPE SSFCRESCL. ``` #### GV_BELNR — data · L104-L104 {#decl-zficom-104-gv_belnr} ```abap DATA : GV_BELNR LIKE BKPF-BELNR. ``` #### GV_BUKRS — data · L105-L105 {#decl-zficom-105-gv_bukrs} ```abap DATA: GV_BUKRS LIKE BKPF-BUKRS. ``` #### GV_GJAHR — data · L106-L106 {#decl-zficom-106-gv_gjahr} ```abap DATA: GV_GJAHR LIKE BKPF-GJAHR. ``` #### GV_BUZEI — data · L107-L107 {#decl-zficom-107-gv_buzei} ```abap DATA: GV_BUZEI LIKE BSEG-BUZEI. ``` #### GT_BBKPF — data · L108-L108 {#decl-zficom-108-gt_bbkpf} ```abap DATA : GT_BBKPF LIKE BBKPF OCCURS 0 WITH HEADER LINE. ``` #### GT_BBSEG — data · L109-L109 {#decl-zficom-109-gt_bbseg} ```abap DATA: GT_BBSEG LIKE BBSEG OCCURS 0 WITH HEADER LINE. ``` #### GT_BBTAX — data · L110-L110 {#decl-zficom-110-gt_bbtax} ```abap DATA: GT_BBTAX LIKE BBTAX OCCURS 0 WITH HEADER LINE. ``` #### GT_BWITH — data · L111-L111 {#decl-zficom-111-gt_bwith} ```abap DATA: GT_BWITH LIKE BWITH OCCURS 0 WITH HEADER LINE. ``` #### GT_BSELK — data · L112-L112 {#decl-zficom-112-gt_bselk} ```abap DATA: GT_BSELK LIKE BSELK OCCURS 0 WITH HEADER LINE. ``` #### GT_BSELP — data · L113-L113 {#decl-zficom-113-gt_bselp} ```abap DATA: GT_BSELP LIKE BSELP OCCURS 0 WITH HEADER LINE. ``` #### GT_FIMSG — data · L115-L115 {#decl-zficom-115-gt_fimsg} ```abap DATA: GT_FIMSG LIKE FIMSG OCCURS 0 WITH HEADER LINE. ``` #### GT_ACCCHG — data · L117-L117 {#decl-zficom-117-gt_accchg} ```abap DATA : GT_ACCCHG LIKE ACCCHG OCCURS 0 WITH HEADER LINE. ``` #### GS_ACCPMBLK — data · L119-L119 {#decl-zficom-119-gs_accpmblk} ```abap DATA : GS_ACCPMBLK LIKE ACCPMBLK. ``` #### GT_ROWS — data · L121-L121 {#decl-zficom-121-gt_rows} ```abap DATA : GT_ROWS TYPE LVC_T_ROW. " ALV control: Table rows ``` #### GS_ROWS — data · L122-L122 {#decl-zficom-122-gs_rows} ```abap DATA: GS_ROWS TYPE LVC_S_ROW. " ALV control: Line description ``` #### GV_ROW_POS — data · L123-L123 {#decl-zficom-123-gv_row_pos} ```abap DATA: GV_ROW_POS TYPE I. ``` #### GT_EXTAB — data · L125-L125 {#decl-zficom-125-gt_extab} ```abap DATA : GT_EXTAB LIKE SY-UCOMM OCCURS 0 WITH HEADER LINE. ``` #### GS_EMAIL_DATA — data · L127-L129 {#decl-zficom-127-gs_email_data} ```abap DATA : BEGIN OF GS_EMAIL_DATA. INCLUDE STRUCTURE SODOCCHGI1. DATA : END OF GS_EMAIL_DATA. ``` #### GT_EMAIL — data · L131-L131 {#decl-zficom-131-gt_email} ```abap DATA : GT_EMAIL LIKE SOMLRECI1 OCCURS 0 WITH HEADER LINE. ``` #### GT_ETEXT — data · L132-L132 {#decl-zficom-132-gt_etext} ```abap DATA: GT_ETEXT LIKE SOLISTI1 OCCURS 0 WITH HEADER LINE. ``` #### GT_RSPAR — data · L134-L134 {#decl-zficom-134-gt_rspar} ```abap DATA : GT_RSPAR LIKE RSPARAMS OCCURS 10 WITH HEADER LINE. ``` #### GV_SMTP_ADDR — data · L136-L136 {#decl-zficom-136-gv_smtp_addr} ```abap DATA : GV_SMTP_ADDR LIKE ADR6-SMTP_ADDR. ``` #### GF_FIRST — data · L138-L138 {#decl-zficom-138-gf_first} ```abap DATA : GF_FIRST(1) TYPE C. ``` #### GF_NEW — data · L139-L139 {#decl-zficom-139-gf_new} ```abap DATA: GF_NEW(1) TYPE C. ``` #### GF_END — data · L140-L140 {#decl-zficom-140-gf_end} ```abap DATA: GF_END(1) TYPE C. ``` #### GF_LAST — data · L141-L141 {#decl-zficom-141-gf_last} ```abap DATA: GF_LAST(1) TYPE C. ``` #### GV_BUK — data · L144-L144 {#decl-zficom-144-gv_buk} ```abap DATA : GV_BUK LIKE BKPF-BUKRS. " Company Code ``` #### GV_KURST — data · L145-L145 {#decl-zficom-145-gv_kurst} ```abap DATA: GV_KURST LIKE TCURR-KURST. " Exchange rate type ``` #### GV_KALSM — data · L146-L146 {#decl-zficom-146-gv_kalsm} ```abap DATA: GV_KALSM LIKE T005-KALSM. " Procedure ``` #### GV_KOKRS — data · L147-L147 {#decl-zficom-147-gv_kokrs} ```abap DATA: GV_KOKRS LIKE CSKT-KOKRS. " Controlling Area ``` #### GT_BSE — data · L149-L165 {#decl-zficom-149-gt_bse} ```abap DATA : BEGIN OF GT_BSE OCCURS 0, BUKRS_CLR LIKE BSE_CLR-BUKRS_CLR, "반제전표-회사코드 BELNR_CLR LIKE BSE_CLR-BELNR_CLR, "반제전표-전표번호 GJAHR_CLR LIKE BSE_CLR-GJAHR_CLR, "반제전표-회계연도 INDEX_CLR LIKE BSE_CLR-INDEX_CLR, "반제정보에 대한 일련번호 WAERS LIKE BSE_CLR-WAERS, "통화 키 CLRIN LIKE BSE_CLR-CLRIN, "반제유형 BUKRS LIKE BSE_CLR-BUKRS, "원전표-회사코드 BELNR LIKE BSE_CLR-BELNR, "원전표-전표번호 GJAHR LIKE BSE_CLR-GJAHR, "원전표-회계연도 BUZEI LIKE BSE_CLR-BUZEI, "원전표-개별항목번호 SHKZG LIKE BSE_CLR-SHKZG, "차대변지시자 DMBTR LIKE BSE_CLR-DMBTR, "금액(현지통화) DIFHW LIKE BSE_CLR-DIFHW, "차액(현지통화) WRBTR LIKE BSE_CLR-WRBTR, "금액(전표통화) DIFFW LIKE BSE_CLR-DIFFW, "차약(전표통화) END OF GT_BSE. ``` #### GT_BDC — data · L168-L170 {#decl-zficom-168-gt_bdc} ```abap DATA : BEGIN OF GT_BDC OCCURS 0. INCLUDE STRUCTURE BDCDATA. DATA : END OF GT_BDC. ``` #### GT_MESS — data · L172-L172 {#decl-zficom-172-gt_mess} ```abap DATA : GT_MESS LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE. ``` #### GV_MODE — data · L174-L174 {#decl-zficom-174-gv_mode} ```abap DATA : GV_MODE(1) VALUE 'N'. "BDC MODE ``` #### GS_LOG — data · L176-L176 {#decl-zficom-176-gs_log} ```abap DATA : GS_LOG TYPE BAL_S_LOG. ``` #### GS_LOG_HANDLE — data · L177-L177 {#decl-zficom-177-gs_log_handle} ```abap DATA: GS_LOG_HANDLE TYPE BALLOGHNDL. ``` #### GS_DISPLAY_PROFILE — data · L178-L178 {#decl-zficom-178-gs_display_profile} ```abap DATA: GS_DISPLAY_PROFILE TYPE BAL_S_PROF. ``` #### GT_LOG_HANDLE — data · L179-L179 {#decl-zficom-179-gt_log_handle} ```abap DATA: GT_LOG_HANDLE TYPE BAL_T_LOGH. ``` #### GS_MSG — data · L180-L180 {#decl-zficom-180-gs_msg} ```abap DATA: GS_MSG TYPE BAL_S_MSG. ``` #### GS_BAL_FCAT — data · L181-L181 {#decl-zficom-181-gs_bal_fcat} ```abap DATA: GS_BAL_FCAT TYPE BAL_S_FCAT. ``` #### GV_COL_POS — data · L182-L182 {#decl-zficom-182-gv_col_pos} ```abap DATA: GV_COL_POS TYPE I. ``` #### GT_STRUCT — data · L185-L193 {#decl-zficom-185-gt_struct} ```abap DATA : BEGIN OF GT_STRUCT OCCURS 0, SEQNO(03), "Sequence no FNAME(60), "Field name FTYPE(04), "Type FLENG(03), "Length FFLAG(50), "Required FEXAM(80), "Example * FNOTE(80), "Note END OF GT_STRUCT. ``` #### C_BUKRS — constants · L198-L198 {#decl-zficom-198-c_bukrs} ```abap CONSTANTS: C_BUKRS LIKE BKPF-BUKRS VALUE 'KR01'. " Company Code ``` #### C_WAERS — constants · L199-L199 {#decl-zficom-199-c_waers} ```abap CONSTANTS: C_WAERS LIKE BKPF-WAERS VALUE 'KRW'. " Currency Key ``` #### C_LANGU — constants · L200-L200 {#decl-zficom-200-c_langu} ```abap CONSTANTS: C_LANGU LIKE SKAT-SPRAS VALUE '3'. " Country Key ``` #### C_LAND1 — constants · L201-L201 {#decl-zficom-201-c_land1} ```abap CONSTANTS: C_LAND1 LIKE T001-LAND1 VALUE 'KR'. " Country Key ``` #### C_KTOPL — constants · L202-L202 {#decl-zficom-202-c_ktopl} ```abap CONSTANTS: C_KTOPL LIKE SKAT-KTOPL VALUE '1000'. " Chart of Accounts ``` #### C_KOKRS — constants · L203-L203 {#decl-zficom-203-c_kokrs} ```abap CONSTANTS: C_KOKRS LIKE CSKT-KOKRS VALUE 'KR01'. " Controlling Area ``` #### C_KALSM — constants · L204-L204 {#decl-zficom-204-c_kalsm} ```abap CONSTANTS: C_KALSM LIKE T007S-KALSM VALUE 'TAXKR'. " Procedure ``` #### C_KURST — constants · L205-L205 {#decl-zficom-205-c_kurst} ```abap CONSTANTS: C_KURST LIKE TCURR-KURST VALUE 'M'. " Exchange Rate Type ``` #### C_SPRAS — constants · L206-L206 {#decl-zficom-206-c_spras} ```abap CONSTANTS: C_SPRAS LIKE T001-SPRAS VALUE '3'. " Language Key ``` #### C_PARID — constants · L207-L207 {#decl-zficom-207-c_parid} ```abap CONSTANTS: C_PARID LIKE USR05-PARID VALUE 'ZSP'. " 사용자종속언어 ``` #### C_A — constants · L208-L208 {#decl-zficom-208-c_a} ```abap CONSTANTS: C_A(1) TYPE C VALUE 'A'. ``` #### C_B — constants · L209-L209 {#decl-zficom-209-c_b} ```abap CONSTANTS: C_B(1) TYPE C VALUE 'B'. ``` #### C_C — constants · L210-L210 {#decl-zficom-210-c_c} ```abap CONSTANTS: C_C(1) TYPE C VALUE 'C'. ``` #### C_D — constants · L211-L211 {#decl-zficom-211-c_d} ```abap CONSTANTS: C_D(1) TYPE C VALUE 'D'. ``` #### C_E — constants · L212-L212 {#decl-zficom-212-c_e} ```abap CONSTANTS: C_E(1) TYPE C VALUE 'E'. ``` #### C_F — constants · L213-L213 {#decl-zficom-213-c_f} ```abap CONSTANTS: C_F(1) TYPE C VALUE 'F'. ``` #### C_G — constants · L214-L214 {#decl-zficom-214-c_g} ```abap CONSTANTS: C_G(1) TYPE C VALUE 'G'. ``` #### C_H — constants · L215-L215 {#decl-zficom-215-c_h} ```abap CONSTANTS: C_H(1) TYPE C VALUE 'H'. ``` #### C_I — constants · L216-L216 {#decl-zficom-216-c_i} ```abap CONSTANTS: C_I(1) TYPE C VALUE 'I'. ``` #### C_J — constants · L217-L217 {#decl-zficom-217-c_j} ```abap CONSTANTS: C_J(1) TYPE C VALUE 'J'. ``` #### C_K — constants · L218-L218 {#decl-zficom-218-c_k} ```abap CONSTANTS: C_K(1) TYPE C VALUE 'K'. ``` #### C_L — constants · L219-L219 {#decl-zficom-219-c_l} ```abap CONSTANTS: C_L(1) TYPE C VALUE 'L'. ``` #### C_M — constants · L220-L220 {#decl-zficom-220-c_m} ```abap CONSTANTS: C_M(1) TYPE C VALUE 'M'. ``` #### C_N — constants · L221-L221 {#decl-zficom-221-c_n} ```abap CONSTANTS: C_N(1) TYPE C VALUE 'N'. ``` #### C_O — constants · L222-L222 {#decl-zficom-222-c_o} ```abap CONSTANTS: C_O(1) TYPE C VALUE 'O'. ``` #### C_P — constants · L223-L223 {#decl-zficom-223-c_p} ```abap CONSTANTS: C_P(1) TYPE C VALUE 'P'. ``` #### C_Q — constants · L224-L224 {#decl-zficom-224-c_q} ```abap CONSTANTS: C_Q(1) TYPE C VALUE 'Q'. ``` #### C_R — constants · L225-L225 {#decl-zficom-225-c_r} ```abap CONSTANTS: C_R(1) TYPE C VALUE 'R'. ``` #### C_S — constants · L226-L226 {#decl-zficom-226-c_s} ```abap CONSTANTS: C_S(1) TYPE C VALUE 'S'. ``` #### C_T — constants · L227-L227 {#decl-zficom-227-c_t} ```abap CONSTANTS: C_T(1) TYPE C VALUE 'T'. ``` #### C_U — constants · L228-L228 {#decl-zficom-228-c_u} ```abap CONSTANTS: C_U(1) TYPE C VALUE 'U'. ``` #### C_V — constants · L229-L229 {#decl-zficom-229-c_v} ```abap CONSTANTS: C_V(1) TYPE C VALUE 'V'. ``` #### C_W — constants · L230-L230 {#decl-zficom-230-c_w} ```abap CONSTANTS: C_W(1) TYPE C VALUE 'W'. ``` #### C_X — constants · L231-L231 {#decl-zficom-231-c_x} ```abap CONSTANTS: C_X(1) TYPE C VALUE 'X'. ``` #### C_Y — constants · L232-L232 {#decl-zficom-232-c_y} ```abap CONSTANTS: C_Y(1) TYPE C VALUE 'Y'. ``` #### C_Z — constants · L233-L233 {#decl-zficom-233-c_z} ```abap CONSTANTS: C_Z(1) TYPE C VALUE 'Z'. ``` #### C_0 — constants · L234-L234 {#decl-zficom-234-c_0} ```abap CONSTANTS: C_0(1) TYPE C VALUE '0'. ``` #### C_1 — constants · L235-L235 {#decl-zficom-235-c_1} ```abap CONSTANTS: C_1(1) TYPE C VALUE '1'. ``` #### C_2 — constants · L236-L236 {#decl-zficom-236-c_2} ```abap CONSTANTS: C_2(1) TYPE C VALUE '2'. ``` #### C_3 — constants · L237-L237 {#decl-zficom-237-c_3} ```abap CONSTANTS: C_3(1) TYPE C VALUE '3'. ``` #### C_4 — constants · L238-L238 {#decl-zficom-238-c_4} ```abap CONSTANTS: C_4(1) TYPE C VALUE '4'. ``` #### C_5 — constants · L239-L239 {#decl-zficom-239-c_5} ```abap CONSTANTS: C_5(1) TYPE C VALUE '5'. ``` #### C_6 — constants · L240-L240 {#decl-zficom-240-c_6} ```abap CONSTANTS: C_6(1) TYPE C VALUE '6'. ``` #### C_7 — constants · L241-L241 {#decl-zficom-241-c_7} ```abap CONSTANTS: C_7(1) TYPE C VALUE '7'. ``` #### C_8 — constants · L242-L242 {#decl-zficom-242-c_8} ```abap CONSTANTS: C_8(1) TYPE C VALUE '8'. ``` #### C_9 — constants · L243-L243 {#decl-zficom-243-c_9} ```abap CONSTANTS: C_9(1) TYPE C VALUE '9'. ``` #### C_EQ — constants · L244-L244 {#decl-zficom-244-c_eq} ```abap CONSTANTS: C_EQ(2) TYPE C VALUE 'EQ'. ``` #### C_NE — constants · L245-L245 {#decl-zficom-245-c_ne} ```abap CONSTANTS: C_NE(2) TYPE C VALUE 'NE'. ``` #### C_BT — constants · L246-L246 {#decl-zficom-246-c_bt} ```abap CONSTANTS: C_BT(2) TYPE C VALUE 'BT'. ``` #### C_CP — constants · L247-L247 {#decl-zficom-247-c_cp} ```abap CONSTANTS: C_CP(2) TYPE C VALUE 'CP'. ``` #### C_NP — constants · L248-L248 {#decl-zficom-248-c_np} ```abap CONSTANTS: C_NP(2) TYPE C VALUE 'NP'. ``` #### C_LE — constants · L249-L249 {#decl-zficom-249-c_le} ```abap CONSTANTS: C_LE(2) TYPE C VALUE 'LE'. ``` #### C_LT — constants · L250-L250 {#decl-zficom-250-c_lt} ```abap CONSTANTS: C_LT(2) TYPE C VALUE 'LT'. ``` #### C_GE — constants · L251-L251 {#decl-zficom-251-c_ge} ```abap CONSTANTS: C_GE(2) TYPE C VALUE 'GE'. ``` #### C_GT — constants · L252-L252 {#decl-zficom-252-c_gt} ```abap CONSTANTS: C_GT(2) TYPE C VALUE 'GT'. ``` #### C_FBV0 — constants · L253-L253 {#decl-zficom-253-c_fbv0} ```abap CONSTANTS: C_FBV0 LIKE BKPF-TCODE VALUE 'FBV0'. " 임시전표전기 T-Code ``` #### C_FBV1 — constants · L254-L254 {#decl-zficom-254-c_fbv1} ```abap CONSTANTS: C_FBV1 LIKE BKPF-TCODE VALUE 'FBV1'. " 임시전표생성 T-Code ``` #### C_FB01 — constants · L255-L255 {#decl-zficom-255-c_fb01} ```abap CONSTANTS: C_FB01 LIKE BKPF-TCODE VALUE 'FB01'. " 전표생성 T-Code ``` #### C_FB05 — constants · L256-L256 {#decl-zficom-256-c_fb05} ```abap CONSTANTS: C_FB05 LIKE BKPF-TCODE VALUE 'FB05'. " 전표반제 T-Code ``` #### C_FB08 — constants · L257-L257 {#decl-zficom-257-c_fb08} ```abap CONSTANTS: C_FB08 LIKE BKPF-TCODE VALUE 'FB08'. " 전표역분개-Code ``` #### ALPHA_INPUT — macro · L267-L273 {#decl-zficom-267-alpha_input} ```abap DEFINE ALPHA_INPUT. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT' EXPORTING INPUT = &1 IMPORTING OUTPUT = &2. END-OF-DEFINITION. ``` #### ALPHA_OUTPUT — macro · L282-L288 {#decl-zficom-282-alpha_output} ```abap DEFINE ALPHA_OUTPUT. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING INPUT = &1 IMPORTING OUTPUT = &2. END-OF-DEFINITION. ``` #### SET_RANGES — macro · L294-L301 {#decl-zficom-294-set_ranges} ```abap DEFINE SET_RANGES. CLEAR &1. &1-SIGN = &2. &1-OPTION = &3. &1-LOW = &4. &1-HIGH = &5. COLLECT &1. END-OF-DEFINITION. ``` #### LAST_DAY — macro · L310-L316 {#decl-zficom-310-last_day} ```abap DEFINE LAST_DAY. CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS' EXPORTING DAY_IN = &1 IMPORTING LAST_DAY_OF_MONTH = &2. END-OF-DEFINITION. ``` #### CHANGE_UNIT — macro · L322-L327 {#decl-zficom-322-change_unit} ```abap DEFINE CHANGE_UNIT. WRITE &1 TO &2 CURRENCY &3. CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT' CHANGING VALUE = &2. END-OF-DEFINITION. ``` #### CHANGE_CURRENCY — macro · L333-L340 {#decl-zficom-333-change_currency} ```abap DEFINE CHANGE_CURRENCY. CALL FUNCTION 'CURRENCY_AMOUNT_SAP_TO_IDOC' EXPORTING CURRENCY = &3 SAP_AMOUNT = &1 IMPORTING IDOC_AMOUNT = &2. END-OF-DEFINITION. ``` #### CHANGE_CURRENCY_SAP — macro · L346-L353 {#decl-zficom-346-change_currency_sap} ```abap DEFINE CHANGE_CURRENCY_SAP. CALL FUNCTION 'CURRENCY_AMOUNT_IDOC_TO_SAP' EXPORTING CURRENCY = &3 IDOC_AMOUNT = &1 IMPORTING SAP_AMOUNT = &2. END-OF-DEFINITION. ``` #### WRITE_STCD2 — macro · L359-L361 {#decl-zficom-359-write_stcd2} ```abap DEFINE WRITE_STCD2. WRITE &1 TO &2 USING EDIT MASK '___-__-_____'. END-OF-DEFINITION. ``` #### WRITE_STCD1 — macro · L367-L369 {#decl-zficom-367-write_stcd1} ```abap DEFINE WRITE_STCD1. WRITE &1 TO &2 USING EDIT MASK '______-_______'. END-OF-DEFINITION. ``` #### L_LANG — data · unit 로컬 · L441-L441 {#decl-zficom-441-l_lang} ```abap DATA : L_LANG LIKE SY-LANGU. ``` #### LV_PROG — data · unit 로컬 · L678-L678 {#decl-zficom-678-lv_prog} ```abap DATA : LV_PROG LIKE D020S-PROG. ``` #### LV_DNUM — data · unit 로컬 · L679-L679 {#decl-zficom-679-lv_dnum} ```abap DATA: LV_DNUM LIKE D020S-DNUM. ``` #### LV_LEN — data · unit 로컬 · L858-L858 {#decl-zficom-858-lv_len} ```abap DATA : LV_LEN TYPE I. ``` #### LV_POS — data · unit 로컬 · L859-L859 {#decl-zficom-859-lv_pos} ```abap DATA: LV_POS TYPE I. ``` #### LV_TYPE — data · unit 로컬 · L860-L860 {#decl-zficom-860-lv_type} ```abap DATA: LV_TYPE(3) TYPE C. ``` #### LV_FILENAME — data · unit 로컬 · L861-L861 {#decl-zficom-861-lv_filename} ```abap DATA: LV_FILENAME TYPE STRING. ``` #### LV_RAW_DATA — data · unit 로컬 · L862-L862 {#decl-zficom-862-lv_raw_data} ```abap DATA: LV_RAW_DATA TYPE TRUXS_T_TEXT_DATA. ``` #### GT_XLS — data · unit 로컬 · L919-L919 {#decl-zficom-919-gt_xls} ```abap DATA: GT_XLS TYPE STANDARD TABLE OF KCDE_INTERN_STRUC WITH HEADER LINE. ``` #### — field-symbol · unit 로컬 · L920-L920 {#decl-zficom-920--fs-} ```abap FIELD-SYMBOLS TYPE ANY. ``` #### CHANGE_UNIT — macro · L1045-L1050 {#decl-zficom-1045-change_unit} ```abap DEFINE CHANGE_UNIT. WRITE &1 TO &2 CURRENCY &3. CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT' CHANGING VALUE = &2. END-OF-DEFINITION. ``` #### CHANGE_CURRENCY — macro · L1056-L1063 {#decl-zficom-1056-change_currency} ```abap DEFINE CHANGE_CURRENCY. CALL FUNCTION 'CURRENCY_AMOUNT_SAP_TO_IDOC' EXPORTING CURRENCY = &3 SAP_AMOUNT = &1 IMPORTING IDOC_AMOUNT = &2. END-OF-DEFINITION. ``` #### CHANGE_CURRENCY_SAP — macro · L1069-L1076 {#decl-zficom-1069-change_currency_sap} ```abap DEFINE CHANGE_CURRENCY_SAP. CALL FUNCTION 'CURRENCY_AMOUNT_IDOC_TO_SAP' EXPORTING CURRENCY = &3 IDOC_AMOUNT = &1 IMPORTING SAP_AMOUNT = &2. END-OF-DEFINITION. ``` #### LV_TEXT — data · unit 로컬 · L1347-L1347 {#decl-zficom-1347-lv_text} ```abap DATA : LV_TEXT(100). ``` #### LV_PCEN — data · unit 로컬 · L1348-L1348 {#decl-zficom-1348-lv_pcen} ```abap DATA: LV_PCEN(3). ``` ### `ZFIR0130CLS` (3건) #### LCL_EVENT_RECEIVER_GRID — class · L7-L27 {#decl-zfir0130cls-7-lcl_event_receiver_grid} ```abap CLASS LCL_EVENT_RECEIVER_GRID DEFINITION. PUBLIC SECTION. METHODS : HANDLE_HOTSPOT_CLICK FOR EVENT HOTSPOT_CLICK OF CL_GUI_ALV_GRID IMPORTING E_ROW_ID E_COLUMN_ID ES_ROW_NO, HANDLE_HOTSPOT_CLICK2 FOR EVENT HOTSPOT_CLICK OF CL_GUI_ALV_GRID IMPORTING E_ROW_ID E_COLUMN_ID ES_ROW_NO, HANDLE_DOUBLE_CLICK FOR EVENT DOUBLE_CLICK OF CL_GUI_ALV_GRID IMPORTING E_ROW E_COLUMN ES_ROW_NO . ENDCLASS. "LCL_EVENT_RECEIVER_GRID DEFINITION ``` #### GV_EVENT1 — data · L48-L48 {#decl-zfir0130cls-48-gv_event1} ```abap DATA : GV_EVENT1 TYPE REF TO LCL_EVENT_RECEIVER_GRID. ``` #### GV_EVENT2 — data · L49-L49 {#decl-zfir0130cls-49-gv_event2} ```abap DATA: GV_EVENT2 TYPE REF TO LCL_EVENT_RECEIVER_GRID. ``` ### `ZFIR0130TOP` (44건) #### ZFIT0100 — tables · L7-L7 {#decl-zfir0130top-7-zfit0100} ```abap TABLES: ZFIT0100. " 임시전표 상신 관리 ``` #### ZIFT0010 — tables · L8-L8 {#decl-zfir0130top-8-zift0010} ```abap TABLES: ZIFT0010. " IF 공통 Log ``` #### TKA02 — tables · L9-L9 {#decl-zfir0130top-9-tka02} ```abap TABLES: TKA02. " 관리회계 영역 지정 ``` #### GT_BKPF — data · L15-L15 {#decl-zfir0130top-15-gt_bkpf} ```abap DATA: GT_BKPF LIKE BKPF OCCURS 0 WITH HEADER LINE. ``` #### GT_BSEG — data · L16-L16 {#decl-zfir0130top-16-gt_bseg} ```abap DATA: GT_BSEG LIKE BSEG OCCURS 0 WITH HEADER LINE. ``` #### T_BKPF — data · L18-L18 {#decl-zfir0130top-18-t_bkpf} ```abap DATA: T_BKPF LIKE BKPF OCCURS 0 WITH HEADER LINE. ``` #### T_BSEG — data · L19-L19 {#decl-zfir0130top-19-t_bseg} ```abap DATA: T_BSEG LIKE BSEG OCCURS 0 WITH HEADER LINE. ``` #### IT_ZFIT0140 — data · L22-L24 {#decl-zfir0130top-22-it_zfit0140} ```abap DATA: BEGIN OF IT_ZFIT0140 OCCURS 0. INCLUDE STRUCTURE ZFIT0140. DATA END OF IT_ZFIT0140. ``` #### GT_HEAD — data · L29-L47 {#decl-zfir0130top-29-gt_head} ```abap DATA: BEGIN OF GT_HEAD OCCURS 0, BUKRS LIKE ZFIT0140-BUKRS, LIFNR LIKE ZFIT0140-LIFNR, GUBUN LIKE ZFIT0140-GUBUN, BELNR LIKE ZFIT0140-BELNR, GJAHR LIKE ZFIT0140-GJAHR, AMT LIKE ZFIT0140-AMT, DRAFT_DATE LIKE ZFIT0140-DRAFT_DATE, APPROVAL_DATE LIKE ZFIT0140-APPROVAL_DATE, BUDAT LIKE ZFIT0140-BUDAT, GSBER2 LIKE ZFIT0140-GSBER2, APPID LIKE ZFIT0140-APPID, KOSTL LIKE BSEG-KOSTL, GUBUN_N(10), NAME1(20), TEXT1(20), * CELLTAB TYPE LVC_T_STYL, END OF GT_HEAD. ``` #### GT_ITEM — data · L50-L101 {#decl-zfir0130top-50-gt_item} ```abap DATA: BEGIN OF GT_ITEM OCCURS 0, BUKRS LIKE BSEG-BUKRS, GJAHR LIKE BSEG-GJAHR, "회계년도 BELNR LIKE BSEG-BELNR, "전표번호 BUZEI LIKE BSEG-BUZEI, "개별항목id SHKZG LIKE BSEG-SHKZG, "차대(S,H) BSCHL LIKE BSEG-BSCHL, "전기키 UMSKZ LIKE BSEG-UMSKZ, "SpGl BSCHL_T LIKE TBSLT-LTEXT, "전기키이름 HKONT LIKE BSEG-HKONT, "G/L 계정 TXT50 LIKE SKAT-TXT50, "G/L 계정명 MWSKZ LIKE BSEG-MWSKZ, "세금코드(Tx) MWSKZ_T LIKE T007S-TEXT1, "세금코드명 DMBTR LIKE BSEG-DMBTR, "원화금액 WRBTR LIKE BSEG-WRBTR, "전표통화금액 MWSTS LIKE BSEG-MWSTS, "세액(현지 통화) WMWST LIKE BSEG-WMWST, "세액(전표 통화) GSBER LIKE BSEG-GSBER, "BA(사업영역) SGTXT LIKE BSEG-SGTXT, "적요 KOART LIKE BSEG-KOART, "계정유형 KOART_T(8) TYPE C, "계정유형명 SUBAC LIKE BSEG-LIFNR, "보조부계정(구매처,고객) SUBNM LIKE LFA1-NAME1, "보조부계정명 ZLSPR LIKE BSEG-ZLSPR, "지급보류 ZLSPR_T LIKE T008T-TEXTL, "지급보류명 ZTERM LIKE /DSD/HH_RACOLPAY-ZTERM, "지급조건 ZTERM_T LIKE T052U-TEXT1, "지급조건명 FDTAG LIKE BSEG-FDTAG, "계획일(지급만기일) ZLSCH LIKE BSEG-ZLSCH, "지급방법 ZLSCH_T LIKE T042Z-TEXT1, "지급방법명 KOSTL LIKE BSEG-KOSTL, "코스트센터 KOSTL_T LIKE CSKT-LTEXT, "코스트센터명 AUFNR LIKE BSEG-AUFNR, "오더 FISTL LIKE BSEG-FISTL, "FUND CENTER FISTL_T LIKE FMFCTRT-BESCHR, "FUND CENTER Description PICON LIKE ICON-ID, "PA 아이콘 PRCTR LIKE BSEG-PRCTR, "손익센터 ANBWA LIKE BSEG-ANBWA, "자산거래유형 WAERS LIKE BKPF-WAERS, "통화 FKBER LIKE BSEG-FKBER, "기능영역 XREF1 LIKE BSEG-XREF1, "신고사업자 XNEGP LIKE BSEG-XNEGP, "마이너스 EBELN LIKE BSEG-EBELN, "구매문서 ZUONR LIKE BSEG-ZUONR, "지정 BUPLA LIKE BSEG-BUPLA, "사업장 BUPLA_T LIKE J_1BBRANCH-NAME, "사업장명 MATNR LIKE BSEG-MATNR, "자재번호 ANLN1 LIKE BSEG-ANLN1, "자산번호 AUGBL LIKE BSEG-AUGBL, AUGDT LIKE BSEG-AUGDT, KIDNO LIKE BSEG-KIDNO, END OF GT_ITEM. ``` #### GT_ITEM2 — data · L103-L103 {#decl-zfir0130top-103-gt_item2} ```abap DATA: GT_ITEM2 LIKE GT_ITEM OCCURS 0 WITH HEADER LINE. ``` #### GT_UNAME — data · L107-L110 {#decl-zfir0130top-107-gt_uname} ```abap DATA: BEGIN OF GT_UNAME OCCURS 0, BNAME LIKE V_USERNAME-BNAME, NAMET LIKE V_USERNAME-NAME_TEXT, END OF GT_UNAME. ``` #### GT_T003T — data · L112-L115 {#decl-zfir0130top-112-gt_t003t} ```abap DATA: BEGIN OF GT_T003T OCCURS 0, BLART LIKE T003T-BLART, LTEXT LIKE T003T-LTEXT, END OF GT_T003T. ``` #### GT_CSKT — data · L117-L120 {#decl-zfir0130top-117-gt_cskt} ```abap DATA: BEGIN OF GT_CSKT OCCURS 0, KOSTL LIKE CSKT-KOSTL, KTEXT LIKE CSKT-KTEXT, END OF GT_CSKT. ``` #### GT_BRANCH — data · L122-L125 {#decl-zfir0130top-122-gt_branch} ```abap DATA: BEGIN OF GT_BRANCH OCCURS 0, BRANCH LIKE J_1BBRANCH-BRANCH, NAME LIKE J_1BBRANCH-NAME, END OF GT_BRANCH. ``` #### GT_TBSLT — data · L127-L131 {#decl-zfir0130top-127-gt_tbslt} ```abap DATA: BEGIN OF GT_TBSLT OCCURS 0, BSCHL LIKE TBSLT-BSCHL, UMSKZ LIKE TBSLT-UMSKZ, LTEXT LIKE TBSLT-LTEXT, END OF GT_TBSLT. ``` #### GT_KNA1 — data · L133-L136 {#decl-zfir0130top-133-gt_kna1} ```abap DATA: BEGIN OF GT_KNA1 OCCURS 0, KUNNR LIKE KNA1-KUNNR, NAME1 LIKE KNA1-NAME1, END OF GT_KNA1. ``` #### GT_LFA1 — data · L138-L141 {#decl-zfir0130top-138-gt_lfa1} ```abap DATA: BEGIN OF GT_LFA1 OCCURS 0, LIFNR LIKE LFA1-LIFNR, NAME1 LIKE LFA1-NAME1, END OF GT_LFA1. ``` #### GT_SKAT — data · L143-L146 {#decl-zfir0130top-143-gt_skat} ```abap DATA: BEGIN OF GT_SKAT OCCURS 0, SAKNR LIKE SKAT-SAKNR, TXT50 LIKE SKAT-TXT50 , END OF GT_SKAT. ``` #### GT_T052U — data · L148-L151 {#decl-zfir0130top-148-gt_t052u} ```abap DATA: BEGIN OF GT_T052U OCCURS 0, ZTERM LIKE T052U-ZTERM, TEXT1 LIKE T052U-TEXT1, END OF GT_T052U. ``` #### GT_T007S — data · L153-L156 {#decl-zfir0130top-153-gt_t007s} ```abap DATA: BEGIN OF GT_T007S OCCURS 0, MWSKZ LIKE T007S-MWSKZ, TEXT1 LIKE T007S-TEXT1, END OF GT_T007S. ``` #### GT_DOMAIN — data · L158-L162 {#decl-zfir0130top-158-gt_domain} ```abap DATA: BEGIN OF GT_DOMAIN OCCURS 0, DOMNAME LIKE DD07T-DOMNAME, DOMVALUE_L LIKE DD07T-DOMVALUE_L, DDTEXT LIKE DD07T-DDTEXT, END OF GT_DOMAIN. ``` #### R_STATS — ranges · L164-L164 {#decl-zfir0130top-164-r_stats} ```abap RANGES: R_STATS FOR ZFIT0100-STATS. ``` #### R_BLART — ranges · L165-L165 {#decl-zfir0130top-165-r_blart} ```abap RANGES: R_BLART FOR BKPF-BLART. ``` #### GV_SUPER — data · L167-L167 {#decl-zfir0130top-167-gv_super} ```abap DATA: GV_SUPER TYPE C. " 회계팀장권한 ``` #### GV_CON — data · L168-L168 {#decl-zfir0130top-168-gv_con} ```abap DATA: GV_CON TYPE C. " 임원권한 ``` #### GV_SABUN — data · L169-L169 {#decl-zfir0130top-169-gv_sabun} ```abap DATA: GV_SABUN LIKE ZFIT0100-SABUN VALUE 'xclick'. " 사번(입력) ``` #### G_NAME1 — data · L171-L171 {#decl-zfir0130top-171-g_name1} ```abap DATA: G_NAME1(20). ``` #### GT_FCAT_ITEM2 — data · L174-L174 {#decl-zfir0130top-174-gt_fcat_item2} ```abap DATA : GT_FCAT_ITEM2 TYPE LVC_T_FCAT. ``` #### GS_STABLE — data · L176-L176 {#decl-zfir0130top-176-gs_stable} ```abap DATA : GS_STABLE TYPE LVC_S_STBL. ``` #### GC_SPLITTER — data · L177-L177 {#decl-zfir0130top-177-gc_splitter} ```abap DATA: GC_SPLITTER TYPE REF TO CL_GUI_SPLITTER_CONTAINER. ``` #### GC_CONTAINER1 — data · L178-L178 {#decl-zfir0130top-178-gc_container1} ```abap DATA: GC_CONTAINER1 TYPE REF TO CL_GUI_CONTAINER. ``` #### GC_CONTAINER2 — data · L179-L179 {#decl-zfir0130top-179-gc_container2} ```abap DATA: GC_CONTAINER2 TYPE REF TO CL_GUI_CONTAINER. ``` #### GV_ALV_GRID — data · L180-L180 {#decl-zfir0130top-180-gv_alv_grid} ```abap DATA: GV_ALV_GRID TYPE REF TO CL_GUI_ALV_GRID. ``` #### GV_ALV_GRID1 — data · L181-L181 {#decl-zfir0130top-181-gv_alv_grid1} ```abap DATA: GV_ALV_GRID1 TYPE REF TO CL_GUI_ALV_GRID. ``` #### GV_ALV_GRID2 — data · L182-L182 {#decl-zfir0130top-182-gv_alv_grid2} ```abap DATA: GV_ALV_GRID2 TYPE REF TO CL_GUI_ALV_GRID. ``` #### GV_LAYO — data · L183-L183 {#decl-zfir0130top-183-gv_layo} ```abap DATA: GV_LAYO TYPE LVC_S_LAYO. ``` #### GV_LAYO1 — data · L184-L184 {#decl-zfir0130top-184-gv_layo1} ```abap DATA: GV_LAYO1 TYPE LVC_S_LAYO. ``` #### GV_LAYO2 — data · L185-L185 {#decl-zfir0130top-185-gv_layo2} ```abap DATA: GV_LAYO2 TYPE LVC_S_LAYO. ``` #### GV_VARI — data · L186-L186 {#decl-zfir0130top-186-gv_vari} ```abap DATA: GV_VARI TYPE DISVARIANT. ``` #### GV_VARI1 — data · L187-L187 {#decl-zfir0130top-187-gv_vari1} ```abap DATA: GV_VARI1 TYPE DISVARIANT. ``` #### GV_VARI2 — data · L188-L188 {#decl-zfir0130top-188-gv_vari2} ```abap DATA: GV_VARI2 TYPE DISVARIANT. ``` #### C_USNAM — constants · L193-L193 {#decl-zfir0130top-193-c_usnam} ```abap CONSTANTS: C_USNAM TYPE SY-UNAME VALUE 'FI07'. " 회계팀장ID ``` #### C_USNAM_2 — constants · L194-L194 {#decl-zfir0130top-194-c_usnam_2} ```abap CONSTANTS: C_USNAM_2 TYPE SY-UNAME VALUE 'FI03'. " 임원ID ``` ### `ZFIR0130F01` (6건) #### LV_CNT — data · unit 로컬 · L512-L512 {#decl-zfir0130f01-512-lv_cnt} ```abap DATA: LV_CNT TYPE N. ``` #### LV_STATS — data · unit 로컬 · L513-L513 {#decl-zfir0130f01-513-lv_stats} ```abap DATA: LV_STATS TYPE CHAR1. ``` #### LV_MESSG — data · unit 로컬 · L514-L514 {#decl-zfir0130f01-514-lv_messg} ```abap DATA: LV_MESSG TYPE CHAR100. ``` #### LV_URL — data · unit 로컬 · L515-L515 {#decl-zfir0130f01-515-lv_url} ```abap DATA: LV_URL TYPE CHAR1024. ``` #### LV_MAX — data · unit 로컬 · L516-L516 {#decl-zfir0130f01-516-lv_max} ```abap DATA: LV_MAX LIKE ZIFT0010-SEQ. ``` #### LT_CMLOG — data · unit 로컬 · L517-L517 {#decl-zfir0130f01-517-lt_cmlog} ```abap DATA: LT_CMLOG LIKE ZIFS0010 OCCURS 0 WITH HEADER LINE. ``` ## Unit 목록 (컨테이너) | unit | 유형 | 위치 | 조각 | 한 줄 요약 | |---|---|---|---|---| | LCL_EVENT_RECEIVER~HANDLE_CLOSE | METHOD | ZFIALV L27-31 | 0 | | | ALV_SETTING | FORM | ZFIALV L126-129 | 0 | | | VARIANT_DEFAULT | FORM | ZFIALV L137-168 | 0 | | | VARIANT_HELP | FORM | ZFIALV L176-199 | 0 | | | VARIANT_FILL | FORM | ZFIALV L207-233 | 0 | | | FIELDCATALOG_CALL | FORM | ZFIALV L241-256 | 0 | | | EVENT_BUILD | FORM | ZFIALV L269-282 | 0 | | | ALV_LAYOUT_BUILD | FORM | ZFIALV L291-308 | 0 | | | ALV_DISPLAY | FORM | ZFIALV L317-354 | 0 | | | COLOR_SETTING | FORM | ZFIALV L360-367 | 0 | | | FIELD_SORTING | FORM | ZFIALV L380-393 | 0 | | | COLINFO_SETTING | FORM | ZFIALV L403-410 | 0 | | | ALV_HIERSEQ_DISPLAY | FORM | ZFIALV L419-460 | 0 | | | BUILD_LAYOUT | FORM | ZFIALV L475-492 | 0 | | | ALV_EVENTS_GET | FORM | ZFIALV L501-532 | 0 | | | USE_FORM | FORM | ZFIALV L538-550 | 0 | | | ALV_CELL_CONTROL | FORM | ZFIALV L560-570 | 0 | | | CREATE_DIALOG | FORM | ZFIALV L582-603 | 0 | | | ALV_CELL_COLOR | FORM | ZFIALV L612-620 | 0 | | | EVENT_BUILD_LVC | FORM | ZFIALV L633-704 | 0 | | | ALV_DISPLAY_LVC | FORM | ZFIALV L713-752 | 0 | | | SET_GRID_EXCLUDE | FORM | ZFIALV L761-782 | 0 | | | DATA_WRITE | FORM | ZFIALV L795-806 | 0 | | | FIELDCATALOG_MERGE_STRUCTURE | FORM | ZFIALV L812-845 | 0 | | | LOG_ALV_DISPLAY | FORM | ZFIALV L851-874 | 0 | | | LOG_CREATE | FORM | ZFIALV L885-942 | 0 | | | LOG_FIELDCATALOG | FORM | ZFIALV L952-962 | 0 | | | NAME_SELECT | FORM | ZFICOM L378-387 | 1 | 사용자 ID 로 V_USERNAME 뷰에서 사용자 이름을 조회하는 공통 FORM 이다. | | SELECT_CSKT | FORM | ZFICOM L397-408 | 1 | 관리회계영역·코스트센터로 CSKT 에서 유효한 코스트센터명을 조회하는 공통 FORM 이다. | | SELECT_J_1BBRANCH | FORM | ZFICOM L419-428 | 1 | 회사코드·사업장(Business Place)으로 J_1BBRANCH 사업장명을 조회하는 공통 FORM 이다. | | SELECT_SKAT | FORM | ZFICOM L438-464 | 1 | G/L 계정번호로 SKAT 계정과목 텍스트(장문 50/단문 20)를 언어별로 조회하는 공통 FORM 이다. | | CHECK_CONFIRM_STEP | FORM | ZFICOM L476-491 | 1 | 제목·메시지 1줄로 POPUP_TO_CONFIRM_STEP 확인 팝업을 띄우고 응답(GF_ANSWER)을 받는 공통 헬퍼다. | | CHECK_CONFIRM_STEP_2 | FORM | ZFICOM L503-520 | 1 | 제목·메시지 2줄로 POPUP_TO_CONFIRM_STEP 확인 팝업을 띄우고 응답(GF_ANSWER)을 받는 공통 헬퍼다. | | AUTHORITY_BUKRS | FORM | ZFICOM L528-536 | 1 | 회사코드에 대한 SAP 표준 권한(F_BKPF_BUK)을 검사하고 권한이 없으면 처리를 중단한다. | | AUTHORITY_PG | FORM | ZFICOM L545-563 | 1 | 사용자 ID 로 커스텀 권한테이블 ZFIT0160 을 조회해 프로그램(T-Code)별 실행 권한을 검증하는 공통 FORM 이다. | | GET_DOMAIN_VALUE | FORM | ZFICOM L574-593 | 1 | DOMAIN_VALUE_GET 으로 도메인 고정값의 텍스트를 조회하는 공통 헬퍼다. | | CALC_DATE_IN_INTERVAL | FORM | ZFICOM L606-623 | 1 | 기준일에 일·월·년을 가감한 날짜를 RP_CALC_DATE_IN_INTERVAL 로 계산하는 공통 헬퍼다. | | CALC_BETWEEN_DATES | FORM | ZFICOM L635-651 | 1 | 두 날짜 사이의 일·월·년 차이를 HRVE_GET_TIME_BETWEEN_DATES 로 계산하는 공통 헬퍼다. | | NUMERIC_CHECK | FORM | ZFICOM L659-665 | 0 | | | DYNP_VALUES_READ | FORM | ZFICOM L674-703 | 1 | DYNP_VALUES_READ 로 현재 화면 필드의 입력값을 PAI 전에 읽어오는 공통 헬퍼다. | | FIELD_SETTING | FORM | ZFICOM L713-720 | 0 | | | HELP_DISPLAY | FORM | ZFICOM L729-749 | 0 | | | SELECT_T007S | FORM | ZFICOM L758-770 | 1 | 세금코드(MWSKZ)의 부가세 텍스트를 T007S 에서 조회하는 공통 FORM 이다. | | GET_NEXT_NUMBER | FORM | ZFICOM L781-819 | 1 | 번호범위 오브젝트에서 다음 일련번호를 받아온다 (CBO 테이블의 키 생성용). | | CREATE_ICON | FORM | ZFICOM L829-844 | 0 | | | DATA_UPLOAD | FORM | ZFICOM L853-908 | 3 | 파일 확장자(TXT/XLS)에 따라 GUI_UPLOAD 또는 TEXT_CONVERT_XLS_TO_SAP 으로 로컬 파일을 내부테이블로 업로드하는 공통 FORM 이다. | | DATA_UPLOAD_2 | FORM | ZFICOM L917-950 | 2 | 엑셀 파일을 KCD_EXCEL_OLE_TO_INT_CONVERT 로 셀 단위로 읽어 행별로 T_LOAD 내부테이블 구조에 매핑하는 공통 업로드 FORM 이다. | | CONVERT_TO_FOREIGN_CURRENCY | FORM | ZFICOM L962-999 | 1 | 현지통화 금액을 환율·기준일로 외화 금액으로 환산하는 공통 FORM 이다. | | CONVERT_TO_LOCAL_CURRENCY | FORM | ZFICOM L1011-1039 | 1 | 외화 금액을 환율·기준일로 회사코드 현지통화(T001-WAERS) 금액으로 환산하는 공통 FORM 이다. | | SELECT_USR01 | FORM | ZFICOM L1084-1088 | 1 | 사용자명으로 USR01(사용자 마스터 기본값)을 단건 조회하는 공통 FORM 이다. | | SMARTFORM_CONTROL | FORM | ZFICOM L1101-1138 | 1 | Smartform 이름으로 생성 FM 이름을 구하고 미리보기·다이얼로그·프린터 등 출력 옵션(GS_DEVICE/GS_OPTIONS)을 설정한다. | | SMARTFORM_OPEN | FORM | ZFICOM L1144-1156 | 1 | Smartform 출력 작업을 SSF_OPEN 으로 시작하는 공통 FORM 이다. | | SMARTFORM_CLOSE | FORM | ZFICOM L1162-1175 | 1 | Smartform 출력 작업을 SSF_CLOSE 로 종료하고 JOB_OUTPUT_INFO 를 받아오는 공통 FORM 이다. | | F4IF_INT_TABLE_VALUE_REQUEST | FORM | ZFICOM L1186-1214 | 0 | | | EXIT INPUT | MODULE | ZFICOM L1220-1230 | 0 | | | DYNPRO | FORM | ZFICOM L1240-1251 | 1 | BDC 화면 시작 또는 필드값 한 줄을 GT_BDC(BDCDATA) 에 추가하는 공통 BDC 빌더 헬퍼다. | | BDC_TRANSACTION | FORM | ZFICOM L1259-1266 | 1 | GT_BDC 데이터로 지정 T-Code 를 CALL TRANSACTION 하고 결과 메시지를 GT_MESS 에 받는 공통 BDC 실행 FORM 이다. | | MESSAGE_SELECT | FORM | ZFICOM L1274-1285 | 1 | BDC 메시지(GT_MESS)의 ID·번호·변수를 MESSAGE_TEXT_BUILD 로 메시지 텍스트로 조립하는 공통 헬퍼다. | | BDC_FK03 | FORM | ZFICOM L1294-1318 | 1 | 구매처코드와 회사코드로 FK03 구매처 마스터 조회 화면을 BDC 로 호출한다. | | CALL_TRANSACTION_FB03 | FORM | ZFICOM L1328-1336 | 1 | 회사코드·전표번호·회계연도를 파라미터 ID 로 넘겨 FB03 회계전표 조회 화면을 호출한다. | | STATUS_BAR | FORM | ZFICOM L1345-1366 | 1 | 처리 진행률을 계산해 SAPGUI 상태바에 진행 상황 텍스트를 표시하는 공통 유틸리티다. | | INITIALIZATION | EVENT | ZFIR0130 L32-39 | 0 | 프로그램 초기화 시 ALV_SETTING 으로 ALV 기본 설정을 수행하는 이벤트다. | | AT SELECTION-SCREEN OUTPUT | EVENT | ZFIR0130 L40-45 | 0 | 선택화면 출력 이벤트이며 내용이 없다. | | START-OF-SELECTION | EVENT | ZFIR0130 L46-68 | 1 | ZFIR0110_DOC 이 ABAP 메모리로 넘긴 T_BKPF/T_BSEG 를 IMPORT 해 GT_BKPF/GT_BSEG 로 받고 회사코드 정보를 읽은 뒤 BSEG_PROCESS 로 시뮬레이션 아이템을 구성한다. | | END-OF-SELECTION | EVENT | ZFIR0130 L69-71 | 0 | 선택 처리 후 시뮬레이션 결과 화면 0100 을 호출하는 이벤트다. | | LCL_EVENT_RECEIVER_GRID~HANDLE_HOTSPOT_CLICK | METHOD | ZFIR0130CLS L33-35 | 0 | ALV 그리드 핫스팟 클릭 이벤트를 받아 HOTSPOT_CLICK 서브루틴으로 위임하는 이벤트 핸들러다. | | LCL_EVENT_RECEIVER_GRID~HANDLE_HOTSPOT_CLICK2 | METHOD | ZFIR0130CLS L37-39 | 0 | 두 번째 ALV 그리드의 핫스팟 클릭 이벤트를 HOTSPOT_CLICK2 서브루틴으로 위임하는 이벤트 핸들러다. | | LCL_EVENT_RECEIVER_GRID~HANDLE_DOUBLE_CLICK | METHOD | ZFIR0130CLS L41-43 | 0 | ALV 그리드 더블클릭 이벤트를 받아 DOUBLE_CLICK 서브루틴으로 위임하는 이벤트 핸들러다. | | SPLITTER_CONTAINER | FORM | ZFIR0130F01 L9-63 | 0 | 화면 0100 의 커스텀 컨테이너에 2행 스플리터를 만들고 아이템 ALV 그리드(GV_ALV_GRID2)를 생성하는 플러밍 FORM 이다. | | CREATE_AND_INIT_CONTROLS_CON | FORM | ZFIR0130F01 L72-100 | 0 | 아이템 ALV(GV_ALV_GRID2)의 핫스팟 이벤트 핸들러를 등록하고 레이아웃·툴바 제외·표시를 초기화하는 플러밍 FORM 이다. | | SET_GRID_LAYOUT1 | FORM | ZFIR0130F01 L109-126 | 0 | 헤더/상세 ALV 두 그리드의 레이아웃(제목·열 최적화·선택모드·지브라·셀스타일)을 설정하는 플러밍 FORM 이다. | | ALV_GRID_DISPLAY1 | FORM | ZFIR0130F01 L135-152 | 1 | 헤더 필드카탈로그를 만든 뒤 GV_ALV_GRID1->SET_TABLE_FOR_FIRST_DISPLAY로 승인 경비 문서 헤더(GT_HEAD)를 상단 ALV에 표시하는 FORM이다. | | SET_FIELD_CATALOGS1 | FORM | ZFIR0130F01 L161-250 | 0 | GT_HEAD 구조로 헤더 ALV 필드카탈로그를 만들고 사번·구분·전표번호(핫스팟)·금액·기안일자·결재일자 등 컬럼을 설정하는 플러밍 FORM 이다. | | ALV_GRID_DISPLAY2 | FORM | ZFIR0130F01 L259-278 | 1 | 아이템 필드카탈로그를 만든 뒤 GV_ALV_GRID2->SET_TABLE_FOR_FIRST_DISPLAY로 생성할 전표 아이템(GT_ITEM2)을 하단 ALV에 표시하는 FORM이다. | | SET_FIELD_CATALOGS2 | FORM | ZFIR0130F01 L287-404 | 0 | GT_ITEM 구조로 아이템 ALV 필드카탈로그를 만들고 전표 아이템 컬럼별 헤더텍스트·통화참조·순서를 설정하는 플러밍 FORM 이다. | | HOTSPOT_CLICK | FORM | ZFIR0130F01 L414-435 | 1 | 헤더 ALV 핫스팟 클릭 시 선택 문서에 대해 BSEG_PROCESS로 전표 아이템을 구성하고 정렬한 뒤 OK코드 ZUSER로 PAI를 트리거해 하단 ALV를 갱신하는 FORM이다. | | HOTSPOT_CLICK2 | FORM | ZFIR0130F01 L444-475 | 1 | 아이템 ALV 의 보조부계정(SUBAC) 핫스팟 클릭 시 계정유형별로 FD03/FK03/AS03/MM03 마스터 조회 화면을 호출한다. | | DOUBLE_CLICK | FORM | ZFIR0130F01 L484-505 | 1 | 헤더 ALV 더블클릭 시 해당 전표(BUKRS/GJAHR/BELNR)의 아이템을 GT_ITEM에서 골라 GT_ITEM2를 채우고 OK코드 ZUSER로 PAI를 트리거해 하단 ALV를 갱신하는 FORM이다. | | DISPLAY_PROCESSING_DATA | FORM | ZFIR0130F01 L511-613 | 3 | 선택한 결재 문서의 전자결재 원문을 외부 시스템에서 URL 로 받아 브라우저로 띄운다. | | BSEG_PROCESS | FORM | ZFIR0130F01 L617-902 | 7 | 메모리로 받은 시뮬레이션 BSEG 아이템에 전표유형·코스트센터·사업장·전기키·고객/구매처/자산/자재·G/L 계정·지급조건·세금코드 텍스트를 붙여 표시용 GT_ITEM/GT_ITEM2 를 만드는 FORM 이다. | | USER_COMMAND_0100 INPUT | MODULE | ZFIR0130I01 L9-18 | 0 | 화면 0100 에서 조회(SERCH) 기능코드 시 DISPLAY_PROCESSING_DATA 로 결재상신 중 문서를 조회하는 PAI 모듈이다. | | USER_COMMAND_0200 INPUT | MODULE | ZFIR0130I01 L24-32 | 0 | 화면 0200 에서 엔터(ENTR) 시 화면을 닫는 PAI 모듈이다. | | STATUS_0100 OUTPUT | MODULE | ZFIR0130O01 L9-14 | 0 | | | CREATE_INSTANCE_CONTROLS OUTPUT | MODULE | ZFIR0130O01 L20-43 | 0 | | | STATUS_0200 OUTPUT | MODULE | ZFIR0130O01 L49-54 | 0 | |