Files

202 KiB

type, title, description, resource, tags, generated, status, x-package, x-changed-on, x-tables-read, x-tables-write, x-calls, x-code-hash, x-unit-count, x-chunk-count, x-declaration-count
type title description resource tags generated status x-package x-changed-on x-tables-read x-tables-write x-calls x-code-hash x-unit-count x-chunk-count x-declaration-count
abap-program ZFIR0120 — 법인카드 청구 정산 법인카드 승인·매입·청구 내역(외부 연계 테이블 ZUNICT1001/1002/1003)을 SAP 전표와 대조해 정산하고 반제 전표를 생성하는 화면이다. 카드사 청구액과 기표된 비용 전표를 매칭해 헤더/아이템 2단 ALV 로 보여주고, 확정 건에 대해 FB05 BDC 로 반제 전표를 만든다. 정산 결과는 ZFIT0150/0151 에 이력으로 남긴다. abap://ZFIR0120
법인카드
정산
반제
대사작업
경비처리
채무관리
FI
반제전표
전기
반제선택
전표생성
반제결과
반제전표번호
상태아이콘
오류메시지
처리일시
변경분갱신
청구정산
미결생성
전기키
by at
abap-indexing/z-ai/glm-5.2:free 2026-09-20T15:36:22+00:00
stable
BKPF
BSEG
CSKT
J_1BBRANCH
LFA1
LTDX
SKAT
T001
T007S
TKA02
USR01
V_USERNAME
ZFIT0150
ZFIT0151
ZFIT0160
ZUNICT1000
ZUNICT1001
ZUNICT1002
ZUNICT1003
GT_HEAD
GT_ITEM
ZFIT0150
ZFIT0151
BAL_DSP_LOG_DISPLAY
BAL_LOG_CREATE
BAL_LOG_MSG_ADD
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
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
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
SSF_CLOSE
SSF_FUNCTION_MODULE_NAME
SSF_OPEN
TEXT_CONVERT_XLS_TO_SAP
a47be08b24931e5b2a0286dd36be92cc959d5169a4f8d768d1d810265421669b 113 67 316

업무 목적

법인카드 승인·매입·청구 내역(외부 연계 테이블 ZUNICT1001/1002/1003)을 SAP 전표와 대조해 정산하고 반제 전표를 생성하는 화면이다. 카드사 청구액과 기표된 비용 전표를 매칭해 헤더/아이템 2단 ALV 로 보여주고, 확정 건에 대해 FB05 BDC 로 반제 전표를 만든다. 정산 결과는 ZFIT0150/0151 에 이력으로 남긴다.

주 흐름

  1. ALV 설정을 준비하고 회사코드 권한을 검증한다 (ALV_SETTING → AUTHORITY_BUKRS)
  2. 법인카드 승인·매입·청구 내역을 각각 추출한다 (GET_ZUNICT1001 / GET_ZUNICT1002 / GET_ZUNICT1003)
  3. 기존 정산 저장내역과 전표 아이템을 읽어 대조 기준을 만든다 (GET_ZFIT0150 → GET_BSEG)
  4. 청구액과 전표를 매칭해 헤더/아이템 표시 데이터를 만든다 (DISPLAY_DATA, 461줄)
  5. 스플리터 2단 ALV 로 화면 0100 에 출력한다 (SPLITTER_CONTAINER)
  6. 확정 건에 대해 반제전표 헤더·아이템을 구성해 FB05 BDC 로 전기한다 (DOCUMENT_POSTING → MAKE_BSELK / MAKE_BKPF / MAKE_BSEG → BDC_FB05)
  7. 정산 이력은 별도 화면에서 조회한다 (DISPLAY_DATA_2)

핵심 내부테이블

  • GT_HEAD — 카드 청구 정산 헤더 (채움: DISPLAY_DATA / 소비: SET_FIELD_CATALOGS1)
  • GT_ITEM — 대조 대상 전표 아이템 (채움: GET_BSEG, DISPLAY_DATA / 소비: SET_FIELD_CATALOGS2, DOCUMENT_POSTING)

테이블 / 외부 호출

  • read: BKPF, BSEG, CSKT, J_1BBRANCH, LFA1, LTDX, SKAT, T001, T007S, TKA02, USR01, V_USERNAME, ZFIT0150, ZFIT0151, ZFIT0160, ZUNICT1000, ZUNICT1001, ZUNICT1002, ZUNICT1003
  • write: GT_HEAD, GT_ITEM, ZFIT0150, ZFIT0151
  • 외부 호출: BAL_DSP_LOG_DISPLAY, BAL_LOG_CREATE, BAL_LOG_MSG_ADD, 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, 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, NUMBER_GET_NEXT, NUMERIC_CHECK, POPUP_TO_CONFIRM_STEP, P_TCODE, REUSE_ALV_EVENTS_GET, REUSE_ALV_FIELDCATALOG_MERGE

로직 조각 (67건 / unit 50개)

LLM 이 코드에서 골라낸 업무 로직 단위다. 조각마다 소스 원문과 자연어 설명을 함께 싣는다 — 설명이 코드와 맞는지 바로 대조할 수 있어야 하기 때문이다. 테이블·호출은 LLM 이 쓴 값이 아니라 파서가 조각 범위에서 다시 뽑은 사실이다. 순서는 실행 순서다.

EVENT INITIALIZATION — ZFIR0120 L32-L54 (23줄)

INITIALIZATION 에서 ALV 설정을 준비하고 정산월(전월)·카드사(롯데카드 210)·전기일(당일) 기본값을 설정한다.

이 unit 의 조각 1개가 9/23줄(39%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[other] 선택화면 기본값으로 정산월 P_SPMON 을 지난달, 카드사 P_COMP 를 '210'(롯데카드), 전표 전기일 P_BUDAT 을 당일로 설정한다.

    37|   GV_MONTH = SY-DATUM+4(2).
    38|   GV_MONTH = GV_MONTH - 1.
    39|   CONCATENATE SY-DATUM(4) GV_MONTH INTO P_SPMON.
    40| 
    41| * 카드사는 Default 롯데카드
    42|   P_COMP = '210'.
    43| 
    44| * 전표의 전기일 Default 현재일자
    45|   P_BUDAT = SY-DATUM.
  • EN: Default the selection screen: settlement month to the previous month, card company to '210' (Lotte Card) and posting date to today.
  • 업무 키워드: 기본값, 정산월, 카드사, 전기일
  • English: Default Value, Settlement Month, Card Company, Posting Date
  • 정의부(복사 시 함께 필요): GV_MONTH, P_SPMON, P_COMP, P_BUDAT
  • 위치: abap://ZFIR0120/ZFIR0120#L37-L45 · confidence 0.8 · ZFIR0120#ZFIR0120#EVENT#INITIALIZATION#C1

EVENT START-OF-SELECTION — ZFIR0120 L55-L63 (9줄)

START-OF-SELECTION 에서 회사코드 권한(AUTHORITY_BUKRS)을 검증하고 GET_DATA 로 수불 I/F 이력을 조회하는 디스패치 블록이다.

이 unit 의 조각 1개가 3/9줄(33%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[validation] 공용 AUTHORITY_BUKRS 로 선택한 회사코드(P_BUKRS)에 대한 사용자 권한(ZFIT0160 기반)을 검증한 뒤 GET_DATA 로 수불부 I/F 이력을 조회한다.

    57|   PERFORM AUTHORITY_BUKRS USING P_BUKRS.
    58| 
    59|   PERFORM GET_DATA.
  • EN: Check the user's authorization for the selected company code via AUTHORITY_BUKRS and then extract the interface history with GET_DATA.
  • 호출(파서): AUTHORITY_BUKRS, GET_DATA
  • SAP 객체: ZFIT0160
  • 업무 키워드: 회사코드 권한 체크, 권한 검증, 데이터 조회
  • English: authorization check, company code
  • 정의부(복사 시 함께 필요): P_BUKRS
  • 위치: abap://ZFIR0120/ZFIR0120#L57-L59 · confidence 0.8 · ZFIR0120#ZFIR0120#EVENT#START-OF-SELECTION#C1

FORM AUTHORITY_BUKRS — ZFICOM L528-L536 (9줄)

회사코드에 대한 SAP 표준 권한(F_BKPF_BUK)을 검사하고 권한이 없으면 처리를 중단한다.

이 unit 의 조각 1개가 7/9줄(78%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[validation] 전표 권한 오브젝트 F_BKPF_BUK 로 해당 회사코드 접근 권한을 검사하고, 권한이 없으면 메시지를 띄운 뒤 리스트 처리를 즉시 중단한다.

   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
  • 정의부(복사 시 함께 필요): P_BUKRS, GF_CHECK, C_X
  • 위치: abap://ZFIR0120/ZFICOM#L529-L535 · confidence 0.93 · ZFIR0120#ZFICOM#FORM#AUTHORITY_BUKRS#C1

FORM GET_DATA — ZFIR0120F01 L9-L49 (41줄)

정산월(P_SPMON)로 조회기간 범위를 만들고 전표 생성 모드면 이력·승인·매입·청구·전표 아이템을 읽어 대조 데이터를, 이력조회 모드면 저장 이력을 읽어 표시 데이터를 만든다.

이 unit 의 조각 2개가 34/41줄(83%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[calculation] 정산월 P_SPMON 의 1일부터 말일(LAST_DAY 매크로)까지를 승인일 조회 범위 R_BUDAT 로 구성한다.

    12|   R_BUDAT-SIGN   = C_I.
    13|   R_BUDAT-OPTION = C_BT.
    14|   CONCATENATE P_SPMON '01' INTO R_BUDAT-LOW.
    15|   LAST_DAY R_BUDAT-LOW R_BUDAT-HIGH.
    16|   APPEND R_BUDAT.
  • EN: Build the approval date range R_BUDAT from the first to the last day of the settlement month P_SPMON using the LAST_DAY macro.
  • 업무 키워드: 정산월, 조회기간, 월말일, 범위 테이블
  • English: Settlement Month, Date Range, Last Day of Month
  • 정의부(복사 시 함께 필요): R_BUDAT, C_I, C_BT, P_SPMON, LAST_DAY
  • 위치: abap://ZFIR0120/ZFIR0120F01#L12-L16 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#GET_DATA#C1

[control_flow] 전표 생성(P_RC)이면 기존 이력(ZFIT0150)·승인(ZUNICT1001)·매입(ZUNICT1002)·청구(ZUNICT1003)·전표 아이템(BSEG)을 순서대로 읽어 DISPLAY_DATA 로 대조하고, 이력조회면 ZFIT0150 과 BSEG 만 읽어 DISPLAY_DATA_2 로 표시한다.

    19|   IF P_RC EQ C_X.
    20| *   기존 저장내역 추출
    21|     PERFORM GET_ZFIT0150.
    22| 
    23| *   법인카드 승인내역 추출
    24|     PERFORM GET_ZUNICT1001.
    25| 
    26| *   법인카드 매입내역 추출
    27|     PERFORM GET_ZUNICT1002.
    28| 
    29| *   법인카드 청구내역 추출
    30|     PERFORM GET_ZUNICT1003.
    31| 
    32| *   전표 아이템 추출
    33|     PERFORM GET_BSEG.
    34| 
    35| *   Display Data
    36|     PERFORM DISPLAY_DATA.
    37| * 이력조회
    38|   ELSE.
    39| *   기존 저장내역 추출
    40|     PERFORM GET_ZFIT0150.
    41| 
    42| *   전표 아이템 추출
    43|     PERFORM GET_BSEG.
    44| 
    45| *   Display Data
    46|     PERFORM DISPLAY_DATA_2.
    47|   ENDIF.
  • EN: In posting mode read settlement history, card approvals, purchases, billing and document items and build the reconciliation display; in history mode read only the saved history and document items for DISPLAY_DATA_2.
  • 호출(파서): GET_ZFIT0150, GET_ZUNICT1001, GET_ZUNICT1002, GET_ZUNICT1003, GET_BSEG, DISPLAY_DATA, GET_ZFIT0150, GET_BSEG, DISPLAY_DATA_2
  • SAP 객체: ZFIT0150, ZUNICT1001, ZUNICT1002, ZUNICT1003, BSEG
  • 업무 키워드: 전표 생성 모드, 이력조회 모드, 법인카드 정산, 데이터 추출 흐름
  • English: Corporate Card Settlement, Data Retrieval, History Mode, Posting Mode
  • 정의부(복사 시 함께 필요): P_RC, C_X
  • 위치: abap://ZFIR0120/ZFIR0120F01#L19-L47 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#GET_DATA#C2

FORM GET_ZFIT0150 — ZFIR0120F01 L148-L226 (79줄)

정산 이력 테이블 ZFIT0150/ZFIT0151 에서 해당 월의 기존 저장내역과 관련 전표 헤더를 읽고, 전표 생성 모드에서 역분개되지 않은 반제전표가 이미 있으면 중복 처리를 막는다.

이 unit 의 조각 2개가 63/79줄(80%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[sql_select] 회사코드·카드사·정산월 조건으로 정산 헤더(ZFIT0150)와 상세(ZFIT0151) 이력을 읽고, 헤더의 반제전표(AUGBL)와 상세의 원전표(BELNR)에 대한 BKPF 헤더를 조회한다.

   158|   SELECT *
   159|     INTO TABLE GT_Z0150
   160|     FROM ZFIT0150
   161|    WHERE BUKRS  EQ P_BUKRS
   162|      AND COMP   EQ P_COMP
   163|      AND SPMON  EQ P_SPMON.
   164| 
   165| * DETAIL
   166|   SELECT *
   167|     INTO TABLE GT_Z0151
   168|     FROM ZFIT0151
   169|    WHERE BUKRS  EQ P_BUKRS
   170|      AND COMP   EQ P_COMP
   171|      AND SPMON  EQ P_SPMON.
   172| 
   173|   CHECK GT_Z0150[] IS NOT INITIAL.
   174| 
   175| * 전표 헤더내역
   176|   SELECT *
   177|     INTO TABLE GT_BKPF
   178|     FROM BKPF
   179|      FOR ALL ENTRIES IN GT_Z0150
   180|    WHERE BUKRS EQ P_BUKRS
   181|      AND GJAHR EQ GT_Z0150-AUGDT(4)
   182|      AND BELNR EQ GT_Z0150-AUGBL.
   183| 
   184|   SELECT *
   185|     INTO TABLE GT_BKPF
   186|     FROM BKPF
   187|      FOR ALL ENTRIES IN GT_Z0151
   188|    WHERE BUKRS EQ P_BUKRS
   189|      AND GJAHR EQ GT_Z0151-GJAHR
   190|      AND BELNR EQ GT_Z0151-BELNR.
  • EN: Read settlement header ZFIT0150 and detail ZFIT0151 for company code, card company and month, then fetch BKPF headers for the clearing documents and the original documents.
  • 테이블(파서): read ZFIT0150, ZFIT0151, BKPF / write -
  • SAP 객체: ZFIT0150, ZFIT0151, BKPF
  • 업무 키워드: 정산 이력, 반제전표, 전표 헤더, 정산월
  • English: Settlement History, Clearing Document, BKPF, ZFIT0150
  • 정의부(복사 시 함께 필요): GT_Z0150, P_BUKRS, P_COMP, P_SPMON, GT_Z0151, BKPF, GT_BKPF
  • 위치: abap://ZFIR0120/ZFIR0120F01#L158-L190 · confidence 0.9 · ZFIR0120#ZFIR0120F01#FORM#GET_ZFIT0150#C1

[validation] 이력조회(P_RD)면 카드 마스터(ZUNICT1000)를 추가로 읽고, 전표 생성 모드면 기존 반제전표를 모아 BKPF 에서 역분개(STBLG)되지 않은 건이 하나라도 있으면 '기 처리한 이력이 존재합니다' 메시지로 중단해 중복 정산을 막는다.

   193|   IF P_RD EQ C_X.
   194|     SELECT *
   195|       APPENDING TABLE GT_Z1000
   196|       FROM ZUNICT1000
   197|        FOR ALL ENTRIES IN GT_Z0150
   198|      WHERE BUKRS  EQ P_BUKRS
   199|        AND CARDNO EQ GT_Z0150-CARDNO.
   200| * 생성일때 기존반제전표가 생성되어있으면 메시지
   201|   ELSE.
   202|     LOOP AT GT_Z0150.
   203|       IF GT_Z0150-AUGBL NE SPACE.
   204|         LT_DOCU-AUGBL = GT_Z0150-AUGBL.
   205|         LT_DOCU-AUGDT = GT_Z0150-AUGDT.
   206|         COLLECT LT_DOCU. CLEAR LT_DOCU.
   207|       ENDIF.
   208|     ENDLOOP.
   209| *   모두 역분개되었을 경우엔 생성가능
   210|     LOOP AT LT_DOCU.
   211|       READ TABLE GT_BKPF WITH KEY BELNR = LT_DOCU-AUGBL
   212|                                   GJAHR = LT_DOCU-AUGDT(4).
   213|       IF SY-SUBRC EQ 0.
   214|         IF GT_BKPF-STBLG EQ SPACE.
   215|           MESSAGE S000 WITH '기 처리한 이력이 존재합니다!!'
   216|           DISPLAY LIKE C_E.
   217|           LEAVE LIST-PROCESSING.
   218|         ELSE.
   219|         ENDIF.
   220|       ENDIF.
   221|     ENDLOOP.
   222|   ENDIF.
  • EN: In history mode read card master ZUNICT1000; in posting mode collect existing clearing documents and, if any is not reversed (BKPF-STBLG empty), stop with the message that a processed history already exists to prevent duplicate settlement.
  • 테이블(파서): read ZUNICT1000 / write -
  • SAP 객체: ZUNICT1000, BKPF
  • 업무 키워드: 중복 정산 방지, 역분개 확인, 반제전표 존재, 이력조회, 카드 마스터
  • English: Duplicate Check, Reversal, Clearing Document, ZUNICT1000
  • 정의부(복사 시 함께 필요): P_RD, C_X, ZUNICT1000, GT_Z1000, GT_Z0150, P_BUKRS, LT_DOCU, BKPF, GT_BKPF, C_E
  • 위치: abap://ZFIR0120/ZFIR0120F01#L193-L222 · confidence 0.9 · ZFIR0120#ZFIR0120F01#FORM#GET_ZFIT0150#C2

FORM GET_ZUNICT1001 — ZFIR0120F01 L55-L83 (29줄)

법인카드 승인내역과 카드 마스터, 관련 전표 헤더를 조회한다.

이 unit 의 조각 1개가 24/29줄(83%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[sql_select] 회사코드·카드사·승인일자 범위로 법인카드 승인내역(ZUNICT1001)을 읽고, 해당 카드번호의 카드 마스터(ZUNICT1000)와 이미 기표된 전표 헤더(BKPF)를 FOR ALL ENTRIES 로 함께 읽어 정산 대조 기준을 만든다.

    58|   SELECT *
    59|     INTO TABLE GT_Z1001
    60|     FROM ZUNICT1001
    61|    WHERE BUKRS    EQ P_BUKRS
    62|      AND COMP     EQ P_COMP
    63|      AND AP_DATE  IN R_BUDAT.
    64| 
    65|   CHECK GT_Z1001[] IS NOT INITIAL.
    66| * 법인카드 마스터 내역
    67|   SELECT *
    68|     APPENDING TABLE GT_Z1000
    69|     FROM ZUNICT1000
    70|      FOR ALL ENTRIES IN GT_Z1001
    71|    WHERE BUKRS  EQ P_BUKRS
    72|      AND CARDNO EQ GT_Z1001-CARDNO.
    73| 
    74| * 전표 헤더내역
    75|   SELECT *
    76|     APPENDING TABLE GT_BKPF
    77|     FROM BKPF
    78|      FOR ALL ENTRIES IN GT_Z1001
    79|    WHERE BUKRS EQ P_BUKRS
    80|      AND GJAHR EQ GT_Z1001-GJAHR
    81|      AND BELNR EQ GT_Z1001-BELNR.
  • EN: Reads corporate-card authorizations (ZUNICT1001) plus the card master (ZUNICT1000) and already-posted document headers (BKPF) as the reconciliation basis.
  • 테이블(파서): read ZUNICT1001, ZUNICT1000, BKPF / write -
  • SAP 객체: ZUNICT1001, ZUNICT1000, BKPF, CARDNO
  • 업무 키워드: 법인카드, 카드승인내역, 승인일자, 카드마스터, 전표헤더, 정산대조
  • English: corporate card, card authorization, card master, document header, reconciliation
  • 정의부(복사 시 함께 필요): ZUNICT1001, GT_Z1001, P_BUKRS, P_COMP, R_BUDAT, ZUNICT1000, GT_Z1000, BKPF, GT_BKPF
  • 선언을 못 찾은 이름: AP_DATE (수집 안 된 인클루드·함수 인터페이스일 수 있다)
  • 위치: abap://ZFIR0120/ZFIR0120F01#L58-L81 · confidence 0.88 · ZFIR0120#ZFIR0120F01#FORM#GET_ZUNICT1001#C1

FORM GET_ZUNICT1002 — ZFIR0120F01 L89-L117 (29줄)

회사코드·카드사·정산월 조건으로 법인카드 매입내역(ZUNICT1002)을 읽고 카드 마스터(ZUNICT1000)와 기표 전표 헤더(BKPF)를 추가 조회한다.

이 unit 의 조각 1개가 24/29줄(83%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[sql_select] 회사코드·카드사·승인일 범위로 법인카드 매입내역 ZUNICT1002 를 읽은 뒤 해당 카드의 마스터 ZUNICT1000 과 매입건에 기표된 회계전표 헤더 BKPF(회사코드·연도·전표번호)를 FOR ALL ENTRIES 로 APPENDING 한다.

    92|   SELECT *
    93|     INTO TABLE GT_Z1002
    94|     FROM ZUNICT1002
    95|    WHERE BUKRS    EQ P_BUKRS
    96|      AND COMP     EQ P_COMP
    97|      AND AP_DATE  IN R_BUDAT.
    98| 
    99|   CHECK GT_Z1002[] IS NOT INITIAL.
   100| * 법인카드 마스터 내역
   101|   SELECT *
   102|     APPENDING TABLE GT_Z1000
   103|     FROM ZUNICT1000
   104|      FOR ALL ENTRIES IN GT_Z1002
   105|    WHERE BUKRS  EQ P_BUKRS
   106|      AND CARDNO EQ GT_Z1002-CARDNO.
   107| 
   108| * 전표 헤더내역
   109|   SELECT *
   110|     APPENDING TABLE GT_BKPF
   111|     FROM BKPF
   112|      FOR ALL ENTRIES IN GT_Z1002
   113|    WHERE BUKRS EQ P_BUKRS
   114|      AND GJAHR EQ GT_Z1002-GJAHR
   115|      AND BELNR EQ GT_Z1002-BELNR.
  • EN: Select corporate card purchase records from ZUNICT1002 by company code, card company and approval date range, then append the card master ZUNICT1000 and the posted FI document headers BKPF for those records.
  • 테이블(파서): read ZUNICT1002, ZUNICT1000, BKPF / write -
  • SAP 객체: ZUNICT1002, ZUNICT1000, BKPF
  • 업무 키워드: 법인카드 매입내역, 카드 마스터, 전표 헤더, 기표 전표
  • English: Corporate Card, Purchase Data, Card Master, BKPF
  • 정의부(복사 시 함께 필요): ZUNICT1002, GT_Z1002, P_BUKRS, P_COMP, R_BUDAT, ZUNICT1000, GT_Z1000, BKPF, GT_BKPF
  • 선언을 못 찾은 이름: AP_DATE (수집 안 된 인클루드·함수 인터페이스일 수 있다)
  • 위치: abap://ZFIR0120/ZFIR0120F01#L92-L115 · confidence 0.9 · ZFIR0120#ZFIR0120F01#FORM#GET_ZUNICT1002#C1

FORM GET_ZUNICT1003 — ZFIR0120F01 L123-L142 (20줄)

회사코드·카드사·정산월 조건으로 법인카드 청구내역(ZUNICT1003)을 읽고 해당 카드의 카드 마스터(ZUNICT1000)를 추가 조회한다.

이 unit 의 조각 1개가 15/20줄(75%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[sql_select] 회사코드·카드사(COMP)·승인일 범위(R_BUDAT)로 법인카드 청구내역 ZUNICT1003 을 GT_Z1003 에 읽고, 청구건의 카드번호로 법인카드 마스터 ZUNICT1000 을 GT_Z1000 에 APPENDING 한다.

   126|   SELECT *
   127|     INTO TABLE GT_Z1003
   128|     FROM ZUNICT1003
   129|    WHERE BUKRS    EQ P_BUKRS
   130|      AND COMP     EQ P_COMP
   131|      AND AP_DATE  IN R_BUDAT.
   132| 
   133|   CHECK GT_Z1003[] IS NOT INITIAL.
   134| * 법인카드 마스터 내역
   135|   SELECT *
   136|     APPENDING TABLE GT_Z1000
   137|     FROM ZUNICT1000
   138|      FOR ALL ENTRIES IN GT_Z1003
   139|    WHERE BUKRS  EQ P_BUKRS
   140|      AND CARDNO EQ GT_Z1003-CARDNO.
  • EN: Select corporate card billing records from ZUNICT1003 by company code, card company and approval date range, then append the matching card master records from ZUNICT1000 for all entries.
  • 테이블(파서): read ZUNICT1003, ZUNICT1000 / write -
  • SAP 객체: ZUNICT1003, ZUNICT1000
  • 업무 키워드: 법인카드 청구내역, 카드 마스터, 카드사, 승인일
  • English: Corporate Card, Billing Data, Card Master, FOR ALL ENTRIES
  • 정의부(복사 시 함께 필요): ZUNICT1003, GT_Z1003, P_BUKRS, P_COMP, R_BUDAT, ZUNICT1000, GT_Z1000
  • 선언을 못 찾은 이름: AP_DATE (수집 안 된 인클루드·함수 인터페이스일 수 있다)
  • 위치: abap://ZFIR0120/ZFIR0120F01#L126-L140 · confidence 0.9 · ZFIR0120#ZFIR0120F01#FORM#GET_ZUNICT1003#C1

FORM GET_BSEG — ZFIR0120F01 L232-L278 (47줄)

카드 마스터를 중복 제거한 뒤 카드사 공급업체(LFA1)·회사코드(T001)·관리회계영역(TKA02)·코스트센터 텍스트(CSKT)를 읽고, 전표 헤더 기준으로 전표 아이템(BSEG)을 조회한다.

이 unit 의 조각 2개가 38/47줄(81%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[sql_select] 카드 마스터(GT_Z1000)를 회사코드·카드번호로 중복 제거한 뒤 카드사 공급업체 정보(LFA1 사업자번호·이름), 회사코드 T001, 관리회계영역 TKA02 를 읽고 그 KOKRS 로 코스트센터 텍스트(CSKT)를 조회한다.

   237|   SORT GT_Z1000 BY BUKRS CARDNO.
   238|   DELETE ADJACENT DUPLICATES FROM GT_Z1000 COMPARING BUKRS CARDNO.
   239| 
   240|   IF GT_Z1000[] IS NOT INITIAL.
   241|     SELECT LIFNR STCD2 NAME1
   242|       INTO TABLE GT_LFA1
   243|       FROM LFA1
   244|        FOR ALL ENTRIES IN GT_Z1000
   245|      WHERE LIFNR EQ GT_Z1000-LIFNR.
   246| 
   247|      SELECT SINGLE *
   248|        FROM T001
   249|       WHERE BUKRS EQ P_BUKRS.
   250| 
   251|      SELECT SINGLE *
   252|        FROM TKA02
   253|       WHERE BUKRS EQ P_BUKRS.
   254| 
   255|      SELECT KOSTL LTEXT
   256|        INTO TABLE GT_CSKT
   257|        FROM CSKT
   258|         FOR ALL ENTRIES IN GT_Z1000
   259|       WHERE SPRAS  EQ SY-LANGU
   260|         AND KOKRS  EQ TKA02-KOKRS
   261|         AND KOSTL  EQ GT_Z1000-KOSTL.
   262|   ENDIF.
  • EN: Deduplicate the card master by company code and card number, then read vendor name/tax number from LFA1, company code T001, controlling area TKA02 and cost center texts from CSKT for the cards' cost centers.
  • 테이블(파서): read LFA1, T001, TKA02, CSKT / write -
  • SAP 객체: LFA1, T001, TKA02, CSKT
  • 업무 키워드: 카드사 공급업체, 코스트센터 텍스트, 관리회계영역, 회사코드, 중복 제거
  • English: Vendor Master, LFA1, Cost Center Text, CSKT, Controlling Area
  • 정의부(복사 시 함께 필요): ZUNICT1000, GT_Z1000, GT_LFA1, LFA1, T001, P_BUKRS, TKA02, GT_CSKT
  • 위치: abap://ZFIR0120/ZFIR0120F01#L237-L262 · confidence 0.9 · ZFIR0120#ZFIR0120F01#FORM#GET_BSEG#C1

[sql_select] 전표 헤더(GT_BKPF)를 중복 제거하고 그 전표들의 아이템(BSEG)을 회사코드·연도·전표번호로 읽어 반제 대상 채무 라인과 할인 계정 라인 대조에 사용한다.

   265|   SORT GT_BKPF BY BUKRS GJAHR BELNR.
   266|   DELETE ADJACENT DUPLICATES FROM GT_BKPF COMPARING BUKRS GJAHR BELNR.
   267| 
   268|   CHECK GT_BKPF[] IS NOT INITIAL.
   269| 
   270|   SELECT *
   271|     INTO TABLE GT_BSEG
   272|     FROM BSEG
   273|      FOR ALL ENTRIES IN GT_BKPF
   274|    WHERE BUKRS EQ P_BUKRS
   275|      AND GJAHR EQ GT_BKPF-GJAHR
   276|      AND BELNR EQ GT_BKPF-BELNR.
  • EN: Deduplicate the document headers and select all BSEG line items for those documents to identify vendor lines for clearing and G/L lines for discounts.
  • 테이블(파서): read BSEG / write -
  • SAP 객체: BSEG, BKPF
  • 업무 키워드: 전표 아이템, 반제 대상 라인, 전표 헤더 중복 제거
  • English: BSEG, Line Items, FOR ALL ENTRIES, Clearing
  • 정의부(복사 시 함께 필요): BKPF, GT_BKPF, BSEG, GT_BSEG, P_BUKRS
  • 위치: abap://ZFIR0120/ZFIR0120F01#L265-L276 · confidence 0.9 · ZFIR0120#ZFIR0120F01#FORM#GET_BSEG#C2

FORM DISPLAY_DATA — ZFIR0120F01 L284-L744 (461줄)

카드 매입내역(ZUNICT1002)을 기준으로 승인·청구 내역과 기표 전표(BKPF/BSEG)를 대조해 처리금액·대상금액·청구·할인·차액·미청구액을 계산하고 아이템(GT_ITEM)과 카드별 헤더(GT_HEAD)를 만든다(1/2 창).

이 unit 의 조각 8개가 424/461줄(92%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[aggregation] 승인번호가 있는 매입내역마다 취소(PU_STAT='0')면 음수 매입금액으로 GT_ITEM 을 만들고, 기표 전표가 있으면 처리금액(AMT_A)·역분개 여부(BKPF STBLG/STJAH)·반제용 채무 라인(BSEG KOART='K' BUZEI)을 확인하며 카드 마스터·카드사명(LFA1)·코스트센터명(CSKT)을 붙인다.

   296|   LOOP AT GT_Z1002.
   297| *   승인번호가 없는 경우 제외
   298|     CHECK GT_Z1002-AP_NUM NE SPACE.
   299| 
   300|     CLEAR GT_ITEM.
   301|     GT_ITEM-BUKRS   = GT_Z1002-BUKRS.
   302|     GT_ITEM-COMP    = GT_Z1002-COMP.
   303|     GT_ITEM-CARDNO  = GT_Z1002-CARDNO.
   304|     GT_ITEM-AP_DATE = GT_Z1002-AP_DATE.
   305|     GT_ITEM-AP_NUM  = GT_Z1002-AP_NUM.
   306|     GT_ITEM-PU_NUM  = GT_Z1002-PU_NUM.
   307|     IF GT_Z1002-PU_STAT EQ C_0.    "취소
   308|       GT_ITEM-PU_AMT  = 0 - GT_Z1002-PU_AMT.
   309|     ELSE.
   310|       GT_ITEM-PU_AMT  = GT_Z1002-PU_AMT.
   311|     ENDIF.
   312|     GT_ITEM-BELNR   = GT_Z1002-BELNR.
   313|     GT_ITEM-GJAHR   = GT_Z1002-GJAHR.
   314| *   처리금액
   315|     IF GT_ITEM-BELNR NE SPACE.
   316|       GT_ITEM-AMT_A = GT_ITEM-PU_AMT.
   317| *     역분개 되었는지 체크
   318|       READ TABLE GT_BKPF WITH KEY BUKRS = P_BUKRS
   319|                                   GJAHR = GT_Z1002-GJAHR
   320|                                   BELNR = GT_Z1002-BELNR.
   321|       IF SY-SUBRC EQ 0.
   322|         GT_ITEM-STBLG = GT_BKPF-STBLG.
   323|         GT_ITEM-STJAH = GT_BKPF-STJAH.
   324|       ENDIF.
   325| *     반제위해 항목추출
   326|       READ TABLE GT_BSEG WITH KEY BUKRS = P_BUKRS
   327|                                   GJAHR = GT_Z1002-GJAHR
   328|                                   BELNR = GT_Z1002-BELNR
   329|                                   KOART = C_K.
   330|       IF SY-SUBRC EQ 0.
   331|         GT_ITEM-BUZEI = GT_BSEG-BUZEI.
   332|       ENDIF.
   333| 
   334|     ENDIF.
   335| 
   336| *   카드정보
   337|     READ TABLE GT_Z1000 WITH KEY BUKRS  = P_BUKRS
   338|                                  CARDNO = GT_Z1002-CARDNO.
   339|     IF SY-SUBRC EQ 0.
   340|       GT_ITEM-LIFNR = GT_Z1000-LIFNR.
   341|       GT_ITEM-KOSTL = GT_Z1000-KOSTL.
   342|       GT_ITEM-CUSER = GT_Z1000-CUSER.
   343| *     카드사명
   344|       IF GT_ITEM-LIFNR NE SPACE.
   345|         READ TABLE GT_LFA1 WITH KEY LIFNR = GT_ITEM-LIFNR.
   346|         IF SY-SUBRC EQ 0.
   347|           GT_ITEM-STCD2   = GT_LFA1-STCD2.
   348|           GT_ITEM-LIFNR_T = GT_LFA1-NAME1.
   349|         ENDIF.
   350|       ENDIF.
   351| *     코스트센터명
   352|       IF GT_ITEM-KOSTL NE SPACE.
   353|         READ TABLE GT_CSKT WITH KEY KOSTL = GT_ITEM-KOSTL.
   354|         IF SY-SUBRC EQ 0.
   355|           GT_ITEM-KOSTL_T = GT_CSKT-LTEXT.
   356|         ENDIF.
   357|       ENDIF.
   358|     ENDIF.
  • EN: For each purchase record with an approval number build an item with sign-adjusted purchase amount; if an FI document exists set processed amount AMT_A, reversal status from BKPF and the vendor line (KOART='K') from BSEG for clearing, and enrich with card master, vendor name and cost center text.
  • SAP 객체: ZUNICT1002, ZUNICT1000, BKPF, BSEG, LFA1, CSKT
  • 업무 키워드: 법인카드 매입내역, 취소 매입, 처리금액, 역분개 확인, 반제 대상 라인, 카드 마스터
  • English: Corporate Card, Purchase Data, Reversal Check, Vendor Line Item, ZUNICT1002
  • 정의부(복사 시 함께 필요): ZUNICT1002, GT_Z1002, GT_ITEM, C_0, BKPF, GT_BKPF, P_BUKRS, BSEG, GT_BSEG, C_K, ZUNICT1000, GT_Z1000 외 2건
  • 위치: abap://ZFIR0120/ZFIR0120F01#L296-L358 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DISPLAY_DATA#C1

[calculation] 매입건에 대응하는 승인내역(GT_Z1001)을 찾아 취소 반영 승인금액을 잡고 매입쪽 전표가 없으면 승인쪽 전표로 처리금액·역분개·채무 라인을 확인한 뒤 매칭된 승인건을 LT_Z1001 에서 제거하고, 청구내역(GT_Z1003)에서 청구금액(REQ_AMT)을 가져오며 매칭된 청구건을 LT_Z1003 에서 제거한다.

   361|     READ TABLE GT_Z1001 WITH KEY BUKRS    = P_BUKRS
   362|                                  COMP     = P_COMP
   363|                                  CARDNO   = GT_Z1002-CARDNO
   364|                                  AP_DATE  = GT_Z1002-AP_DATE
   365|                                  AP_NUM   = GT_Z1002-AP_NUM.
   366|     IF SY-SUBRC EQ 0.
   367|       IF GT_Z1001-AP_STAT EQ C_0.  "취소
   368|         GT_ITEM-AP_AMT = 0 - GT_Z1001-AP_AMT.
   369|       ELSE.
   370|         GT_ITEM-AP_AMT = GT_Z1001-AP_AMT.
   371|       ENDIF.
   372| 
   373| *     전표번호가 없는 경우 승인쪽 전표
   374|       IF GT_ITEM-BELNR IS INITIAL.
   375|         GT_ITEM-BELNR = GT_Z1001-BELNR.
   376|         GT_ITEM-GJAHR = GT_Z1001-GJAHR.
   377| *       처리금액
   378|         IF GT_ITEM-BELNR NE SPACE.
   379|           GT_ITEM-AMT_A = GT_ITEM-AP_AMT.
   380| 
   381| *         역분개 되었는지 체크
   382|           READ TABLE GT_BKPF WITH KEY BUKRS = P_BUKRS
   383|                                       GJAHR = GT_Z1001-GJAHR
   384|                                       BELNR = GT_Z1001-BELNR.
   385|           IF SY-SUBRC EQ 0.
   386|             GT_ITEM-STBLG = GT_BKPF-STBLG.
   387|             GT_ITEM-STJAH = GT_BKPF-STJAH.
   388|           ENDIF.
   389| *         반제위해 항목추출
   390|           READ TABLE GT_BSEG WITH KEY BUKRS = P_BUKRS
   391|                                       GJAHR = GT_Z1001-GJAHR
   392|                                       BELNR = GT_Z1001-BELNR
   393|                                       KOART = C_K.
   394|           IF SY-SUBRC EQ 0.
   395|             GT_ITEM-BUZEI = GT_BSEG-BUZEI.
   396|           ENDIF.
   397| 
   398|         ENDIF.
   399|       ENDIF.
   400| 
   401|       DELETE LT_Z1001 WHERE BUKRS    EQ P_BUKRS
   402|                         AND COMP     EQ P_COMP
   403|                         AND CARDNO   EQ GT_Z1002-CARDNO
   404|                         AND AP_DATE  EQ GT_Z1002-AP_DATE
   405|                         AND AP_NUM   EQ GT_Z1002-AP_NUM.
   406|     ENDIF.
   407| 
   408| *   청구데이터 추출
   409|     READ TABLE GT_Z1003 WITH KEY BUKRS    = P_BUKRS
   410|                                  COMP     = P_COMP
   411|                                  CARDNO   = GT_Z1002-CARDNO
   412|                                  AP_DATE  = GT_Z1002-AP_DATE
   413|                                  AP_NUM   = GT_Z1002-AP_NUM
   414|                                  PU_NUM   = GT_Z1002-PU_NUM.
   415|     IF SY-SUBRC EQ 0.
   416|       GT_ITEM-REQ_AMT = GT_Z1003-REQ_AMT.
   417| 
   418|       DELETE LT_Z1003 WHERE BUKRS   EQ P_BUKRS
   419|                          AND COMP    EQ P_COMP
   420|                          AND CARDNO  EQ GT_Z1002-CARDNO
   421|                          AND AP_DATE EQ GT_Z1002-AP_DATE
   422|                          AND AP_NUM  EQ GT_Z1002-AP_NUM
   423|                          AND PU_NUM  EQ GT_Z1002-PU_NUM.
   424|     ENDIF.
  • EN: Match the purchase to its approval record (sign-adjusted amount, fall back to the approval-side document for processed amount, reversal and vendor line) and remove it from LT_Z1001; then match the billing record to take the billed amount and remove it from LT_Z1003.
  • SAP 객체: ZUNICT1001, ZUNICT1003, BKPF, BSEG
  • 업무 키워드: 승인내역 매칭, 청구내역 매칭, 청구금액, 취소 승인, 매칭 제거
  • English: Approval Data, Billing Data, Matching, ZUNICT1001, ZUNICT1003
  • 정의부(복사 시 함께 필요): ZUNICT1001, GT_Z1001, P_BUKRS, P_COMP, ZUNICT1002, GT_Z1002, C_0, GT_ITEM, BKPF, GT_BKPF, BSEG, GT_BSEG 외 5건
  • 선언을 못 찾은 이름: AP_DATE, AP_NUM, PU_NUM (수집 안 된 인클루드·함수 인터페이스일 수 있다)
  • 위치: abap://ZFIR0120/ZFIR0120F01#L361-L424 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DISPLAY_DATA#C2

[calculation] 대상금액(AMT_B=매입금액)과 기존 이력(ZFIT0151)의 기반제액(AMT_E)을 잡고 청구금액·할인(대상-청구)·잔액·차액(처리-청구-할인)·미청구액을 계산하며, 전표가 있고 할인이 있으면 BSEG G/L 라인(KOART='S')의 계정·코스트센터를 할인 전표용으로 저장한 뒤 차이자료 옵션에 따라 GT_ITEM 추가 및 카드별 GT_HEAD COLLECT 한다.

   427|     GT_ITEM-AMT_B = GT_ITEM-PU_AMT.
   428| *   기반제액
   429|     READ TABLE GT_Z0151 WITH KEY BUKRS    = P_BUKRS
   430|                                  COMP     = P_COMP
   431|                                  CARDNO   = GT_Z1002-CARDNO
   432|                                  AP_DATE  = GT_Z1002-AP_DATE
   433|                                  AP_NUM   = GT_Z1002-AP_NUM
   434|                                  PU_NUM   = GT_Z1002-PU_NUM.
   435|     IF SY-SUBRC EQ 0.
   436|       IF GT_Z0151-AUGBL NE SPACE.
   437|         GT_ITEM-AMT_E = GT_ITEM-AMT_A.
   438|       ENDIF.
   439|     ENDIF.
   440| 
   441| *   청구금액
   442|     GT_ITEM-AMT_F = GT_ITEM-REQ_AMT.
   443| *   할인금액(대상금액 - 청구금액)
   444|     IF GT_ITEM-REQ_AMT IS NOT INITIAL.
   445|       GT_ITEM-AMT_G = GT_ITEM-AMT_B - GT_ITEM-REQ_AMT.
   446|     ENDIF.
   447| *   잔액(청구금액 - 할인금액)
   448|     GT_ITEM-AMT_H = GT_ITEM-REQ_AMT - GT_ITEM-AMT_G.
   449| *   차액(처리금액 - 청구금액 - 할인금액)
   450|     GT_ITEM-AMT_C = GT_ITEM-AMT_A - GT_ITEM-AMT_F - GT_ITEM-AMT_G.
   451| *   미청구액(대상금액 - 청구금액 - 할인금액)
   452|     GT_ITEM-AMT_D = GT_ITEM-AMT_B - GT_ITEM-AMT_F - GT_ITEM-AMT_G.
   453| 
   454| *   전표번호가 있음서 할인금액 있는 경우
   455|     IF GT_ITEM-BELNR NE SPACE AND GT_ITEM-AMT_G IS  NOT INITIAL.
   456|       READ TABLE GT_BSEG WITH KEY BUKRS = P_BUKRS
   457|                                   GJAHR = GT_ITEM-GJAHR
   458|                                   BELNR = GT_ITEM-BELNR
   459|                                   KOART = C_S.
   460|       IF SY-SUBRC EQ 0.
   461|         GT_ITEM-HKONT  = GT_BSEG-HKONT.
   462|         GT_ITEM-KOSTL2 = GT_BSEG-KOSTL.
   463|       ENDIF.
   464|     ENDIF.
   465| 
   466| *   차이자료
   467|     IF P_RB EQ C_X AND GT_ITEM-AMT_C IS INITIAL.
   468|       CONTINUE.
   469|     ENDIF.
   470| 
   471|     APPEND GT_ITEM.
   472| 
   473|     MOVE-CORRESPONDING GT_ITEM TO GT_HEAD.
   474|     COLLECT GT_HEAD. CLEAR GT_HEAD.
  • EN: Set target amount and already-cleared amount from ZFIT0151, compute billed, discount, remainder, difference and unbilled amounts, take G/L account and cost center from the BSEG G/L line (KOART='S') when a discount exists, then append to GT_ITEM (skipping zero-difference rows in difference mode) and COLLECT into the per-card header GT_HEAD.
  • SAP 객체: ZFIT0151, BSEG
  • 업무 키워드: 청구할인, 차액 계산, 미청구액, 기반제액, 할인 계정, 카드별 합계
  • English: Discount Amount, Difference, Unbilled Amount, G/L Line Item, COLLECT
  • 정의부(복사 시 함께 필요): GT_ITEM, GT_Z0151, P_BUKRS, P_COMP, ZUNICT1002, GT_Z1002, BSEG, GT_BSEG, C_S, P_RB, C_X, GT_HEAD
  • 선언을 못 찾은 이름: AP_DATE, AP_NUM, PU_NUM (수집 안 된 인클루드·함수 인터페이스일 수 있다)
  • 위치: abap://ZFIR0120/ZFIR0120F01#L427-L474 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DISPLAY_DATA#C3

[aggregation] 청구내역(LT_Z1003) 중 승인번호가 있는 건만 GT_ITEM 기본 필드(카드번호·승인일·승인번호·매입번호·청구금액)에 옮기고 카드 마스터(GT_Z1000)에서 카드사 공급업체·코스트센터·사용자를, LFA1 에서 카드사명·사업자번호를, CSKT 에서 코스트센터명을 붙인다.

   479|   LOOP AT LT_Z1003.
   480| 
   481| *   승인번호가 없는 경우 제외
   482|     CHECK LT_Z1003-AP_NUM NE SPACE.
   483| 
   484|     CLEAR GT_ITEM.
   485|     GT_ITEM-BUKRS   = LT_Z1003-BUKRS.
   486|     GT_ITEM-COMP    = LT_Z1003-COMP.
   487|     GT_ITEM-CARDNO  = LT_Z1003-CARDNO.
   488|     GT_ITEM-AP_DATE = LT_Z1003-AP_DATE.
   489|     GT_ITEM-AP_NUM  = LT_Z1003-AP_NUM.
   490|     GT_ITEM-PU_NUM  = LT_Z1003-PU_NUM.
   491|     GT_ITEM-REQ_AMT = LT_Z1003-REQ_AMT.
   492| 
   493| *   카드정보
   494|     READ TABLE GT_Z1000 WITH KEY BUKRS  = P_BUKRS
   495|                                  CARDNO = LT_Z1003-CARDNO.
   496|     IF SY-SUBRC EQ 0.
   497|       GT_ITEM-LIFNR = GT_Z1000-LIFNR.
   498|       GT_ITEM-KOSTL = GT_Z1000-KOSTL.
   499|       GT_ITEM-CUSER = GT_Z1000-CUSER.
   500| *     카드사명
   501|       IF GT_ITEM-LIFNR NE SPACE.
   502|         READ TABLE GT_LFA1 WITH KEY LIFNR = GT_ITEM-LIFNR.
   503|         IF SY-SUBRC EQ 0.
   504|           GT_ITEM-STCD2   = GT_LFA1-STCD2.
   505|           GT_ITEM-LIFNR_T = GT_LFA1-NAME1.
   506|         ENDIF.
   507|       ENDIF.
   508| *     코스트센터명
   509|       IF GT_ITEM-KOSTL NE SPACE.
   510|         READ TABLE GT_CSKT WITH KEY KOSTL = GT_ITEM-KOSTL.
   511|         IF SY-SUBRC EQ 0.
   512|           GT_ITEM-KOSTL_T = GT_CSKT-LTEXT.
   513|         ENDIF.
   514|       ENDIF.
   515|     ENDIF.
  • EN: For each billing record with an approval number fill the item key fields and enrich with card master data (vendor, cost center, user), vendor name/tax number from LFA1 and cost center text from CSKT.
  • SAP 객체: ZUNICT1003, ZUNICT1000, LFA1, CSKT
  • 업무 키워드: 법인카드 청구내역, 카드 마스터, 카드사, 코스트센터, 승인번호
  • English: Corporate Card, Billing Data, Vendor, Cost Center, ZUNICT1003
  • 정의부(복사 시 함께 필요): ZUNICT1003, LT_Z1003, GT_ITEM, ZUNICT1000, GT_Z1000, P_BUKRS, GT_LFA1, GT_CSKT
  • 위치: abap://ZFIR0120/ZFIR0120F01#L479-L515 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DISPLAY_DATA#C4

[calculation] 청구건에 대응하는 승인내역(GT_Z1001)을 찾아 취소(AP_STAT='0')면 음수 승인금액으로 하고, 전표가 기표된 건은 처리금액(AMT_A)과 역분개 여부(BKPF STBLG)·반제용 채무 라인(BSEG KOART='K')을 확인하며, 특정 가맹점 사업자번호(3개)를 제외하고 대상금액(AMT_B)을 설정한 뒤 매칭된 승인건을 LT_Z1001 에서 제거한다.

   518|     READ TABLE GT_Z1001 WITH KEY BUKRS    = P_BUKRS
   519|                                  COMP     = P_COMP
   520|                                  CARDNO   = LT_Z1003-CARDNO
   521|                                  AP_DATE  = LT_Z1003-AP_DATE
   522|                                  AP_NUM   = LT_Z1003-AP_NUM.
   523|     IF SY-SUBRC EQ 0.
   524|       IF GT_Z1001-AP_STAT EQ C_0.  "취소
   525|         GT_ITEM-AP_AMT = 0 - GT_Z1001-AP_AMT.
   526|       ELSE.
   527|         GT_ITEM-AP_AMT = GT_Z1001-AP_AMT.
   528|       ENDIF.
   529| 
   530|       GT_ITEM-BELNR = GT_Z1001-BELNR.
   531|       GT_ITEM-GJAHR = GT_Z1001-GJAHR.
   532| *     처리금액
   533|       IF GT_ITEM-BELNR NE SPACE.
   534|         GT_ITEM-AMT_A = GT_ITEM-AP_AMT.
   535| 
   536| *       역분개 되었는지 체크
   537|         READ TABLE GT_BKPF WITH KEY BUKRS = P_BUKRS
   538|                                     GJAHR = GT_Z1001-GJAHR
   539|                                     BELNR = GT_Z1001-BELNR.
   540|         IF SY-SUBRC EQ 0.
   541|           GT_ITEM-STBLG = GT_BKPF-STBLG.
   542|           GT_ITEM-STJAH = GT_BKPF-STJAH.
   543|         ENDIF.
   544| *       반제위해 항목추출
   545|         READ TABLE GT_BSEG WITH KEY BUKRS = P_BUKRS
   546|                                     GJAHR = GT_Z1001-GJAHR
   547|                                     BELNR = GT_Z1001-BELNR
   548|                                     KOART = C_K.
   549|         IF SY-SUBRC EQ 0.
   550|           GT_ITEM-BUZEI = GT_BSEG-BUZEI.
   551|         ENDIF.
   552| 
   553|       ENDIF.
   554| 
   555| *     가맹점사업자번호가 '1048116860' '1238191439' '1088158902' 경우
   556| *     대상금액 무조건 매입금액
   557|       IF GT_Z1001-STREGNO EQ '1048116860' OR
   558|          GT_Z1001-STREGNO EQ '1238191439' OR
   559|          GT_Z1001-STREGNO EQ '1088158902'.
   560|       ELSE.
   561|         GT_ITEM-AMT_B = GT_ITEM-AP_AMT.
   562|       ENDIF.
   563| 
   564|       DELETE LT_Z1001 WHERE BUKRS    EQ P_BUKRS
   565|                         AND COMP     EQ P_COMP
   566|                         AND CARDNO   EQ LT_Z1003-CARDNO
   567|                         AND AP_DATE  EQ LT_Z1003-AP_DATE
   568|                         AND AP_NUM   EQ LT_Z1003-AP_NUM.
   569|     ENDIF.
  • EN: Match the billing record to its approval record: negate the amount for cancellations, set processed amount AMT_A when an FI document exists, look up reversal status in BKPF and the vendor line (KOART='K') in BSEG for clearing, set target amount AMT_B except for three excluded merchant registration numbers, and remove the matched approval from LT_Z1001.
  • SAP 객체: ZUNICT1001, BKPF, BSEG
  • 업무 키워드: 승인내역 매칭, 취소 승인, 처리금액, 역분개 확인, 반제 대상 라인, 가맹점 제외
  • English: Approval Data, Reversal Check, Vendor Line Item, Target Amount, ZUNICT1001
  • 정의부(복사 시 함께 필요): ZUNICT1001, GT_Z1001, P_BUKRS, P_COMP, ZUNICT1003, LT_Z1003, C_0, GT_ITEM, BKPF, GT_BKPF, BSEG, GT_BSEG 외 2건
  • 선언을 못 찾은 이름: AP_DATE, AP_NUM (수집 안 된 인클루드·함수 인터페이스일 수 있다)
  • 위치: abap://ZFIR0120/ZFIR0120F01#L518-L569 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DISPLAY_DATA#C5

[calculation] 기존 정산 이력(ZFIT0151)에 반제전표가 있으면 기반제액(AMT_E)을 잡고, 청구금액(AMT_F)·할인금액(AMT_G=대상-청구)·잔액(AMT_H)·차액(AMT_C=처리-청구-할인)·미청구액(AMT_D)을 계산해 차이자료 옵션(P_RB)이면 차액 0 건을 제외하고 GT_ITEM 에 추가하며 카드별 GT_HEAD 로 COLLECT 합산한다.

   573|     READ TABLE GT_Z0151 WITH KEY BUKRS    = P_BUKRS
   574|                                  COMP     = P_COMP
   575|                                  CARDNO   = LT_Z1003-CARDNO
   576|                                  AP_DATE  = LT_Z1003-AP_DATE
   577|                                  AP_NUM   = LT_Z1003-AP_NUM
   578|                                  PU_NUM   = LT_Z1003-PU_NUM.
   579|     IF SY-SUBRC EQ 0.
   580|       IF GT_Z0151-AUGBL NE SPACE.
   581|         GT_ITEM-AMT_E = GT_ITEM-AMT_A.
   582|       ENDIF.
   583|     ENDIF.
   584| 
   585| *   청구금액
   586|     GT_ITEM-AMT_F = GT_ITEM-REQ_AMT.
   587| *   할인금액(대상금액 - 청구금액)
   588|     IF GT_ITEM-REQ_AMT IS NOT INITIAL.
   589|       GT_ITEM-AMT_G = GT_ITEM-AMT_B - GT_ITEM-REQ_AMT.
   590|     ENDIF.
   591| *   잔액(청구금액 - 할인금액)
   592|     GT_ITEM-AMT_H = GT_ITEM-REQ_AMT - GT_ITEM-AMT_G.
   593| *   차액(처리금액 - 청구금액 - 할인금액)
   594|     GT_ITEM-AMT_C = GT_ITEM-AMT_A - GT_ITEM-AMT_F - GT_ITEM-AMT_G.
   595| *   미청구액(대상금액 - 청구금액 - 할인금액)
   596|     GT_ITEM-AMT_D = GT_ITEM-AMT_B - GT_ITEM-AMT_F - GT_ITEM-AMT_G.
   597| 
   598| *   차이자료
   599|     IF P_RB EQ C_X AND GT_ITEM-AMT_C IS INITIAL.
   600|       CONTINUE.
   601|     ENDIF.
   602| 
   603|     APPEND GT_ITEM.
   604| 
   605|     MOVE-CORRESPONDING GT_ITEM TO GT_HEAD.
   606|     COLLECT GT_HEAD. CLEAR GT_HEAD.
  • EN: Set already-cleared amount AMT_E from settlement history ZFIT0151, compute billed amount, discount (target minus billed), remainder, difference (processed minus billed minus discount) and unbilled amount, skip zero-difference rows in difference-only mode, append to GT_ITEM and COLLECT into the per-card header GT_HEAD.
  • SAP 객체: ZFIT0151
  • 업무 키워드: 청구할인, 차액 계산, 미청구액, 기반제액, 카드별 합계, 차이자료
  • English: Discount Amount, Difference, Unbilled Amount, COLLECT, ZFIT0151
  • 정의부(복사 시 함께 필요): GT_Z0151, P_BUKRS, P_COMP, ZUNICT1003, LT_Z1003, GT_ITEM, P_RB, C_X, GT_HEAD
  • 선언을 못 찾은 이름: AP_DATE, AP_NUM, PU_NUM (수집 안 된 인클루드·함수 인터페이스일 수 있다)
  • 위치: abap://ZFIR0120/ZFIR0120F01#L573-L606 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DISPLAY_DATA#C6

[aggregation] 청구내역과 매칭되지 않고 남은 승인내역(LT_Z1001)을 기준으로 취소 여부를 반영한 승인금액, 기표 전표의 처리금액·역분개 여부·채무 라인, 카드 마스터·카드사명·코스트센터명을 채워 GT_ITEM 을 구성한다.

   612|   LOOP AT LT_Z1001.
   613| *   승인번호가 없는 경우 제외
   614|     CHECK LT_Z1001-AP_NUM NE SPACE.
   615| 
   616|     CLEAR GT_ITEM.
   617|     GT_ITEM-BUKRS   = LT_Z1001-BUKRS.
   618|     GT_ITEM-COMP    = LT_Z1001-COMP.
   619|     GT_ITEM-CARDNO  = LT_Z1001-CARDNO.
   620|     GT_ITEM-AP_DATE = LT_Z1001-AP_DATE.
   621|     GT_ITEM-AP_NUM  = LT_Z1001-AP_NUM.
   622|     GT_ITEM-BELNR   = LT_Z1001-BELNR.
   623|     GT_ITEM-GJAHR   = LT_Z1001-GJAHR.
   624|     IF LT_Z1001-AP_STAT EQ C_0.  "취소
   625|       GT_ITEM-AP_AMT = 0 - LT_Z1001-AP_AMT.
   626|     ELSE.
   627|       GT_ITEM-AP_AMT = LT_Z1001-AP_AMT.
   628|     ENDIF.
   629| 
   630| *   처리금액
   631|     IF GT_ITEM-BELNR NE SPACE.
   632|       GT_ITEM-AMT_A = GT_ITEM-AP_AMT.
   633| *     역분개 되었는지 체크
   634|       READ TABLE GT_BKPF WITH KEY BUKRS = P_BUKRS
   635|                                   GJAHR = LT_Z1001-GJAHR
   636|                                   BELNR = LT_Z1001-BELNR.
   637|       IF SY-SUBRC EQ 0.
   638|         GT_ITEM-STBLG = GT_BKPF-STBLG.
   639|         GT_ITEM-STJAH = GT_BKPF-STJAH.
   640|       ENDIF.
   641| *     반제위해 항목추출
   642|       READ TABLE GT_BSEG WITH KEY BUKRS = P_BUKRS
   643|                                   GJAHR = LT_Z1001-GJAHR
   644|                                   BELNR = LT_Z1001-BELNR
   645|                                   KOART = C_K.
   646|       IF SY-SUBRC EQ 0.
   647|         GT_ITEM-BUZEI = GT_BSEG-BUZEI.
   648|       ENDIF.
   649| 
   650|     ENDIF.
   651| 
   652| *   카드정보
   653|     READ TABLE GT_Z1000 WITH KEY BUKRS  = P_BUKRS
   654|                                  CARDNO = LT_Z1001-CARDNO.
   655|     IF SY-SUBRC EQ 0.
   656|       GT_ITEM-LIFNR = GT_Z1000-LIFNR.
   657|       GT_ITEM-KOSTL = GT_Z1000-KOSTL.
   658|       GT_ITEM-CUSER = GT_Z1000-CUSER.
   659| *     카드사명
   660|       IF GT_ITEM-LIFNR NE SPACE.
   661|         READ TABLE GT_LFA1 WITH KEY LIFNR = GT_ITEM-LIFNR.
   662|         IF SY-SUBRC EQ 0.
   663|           GT_ITEM-STCD2   = GT_LFA1-STCD2.
   664|           GT_ITEM-LIFNR_T = GT_LFA1-NAME1.
   665|         ENDIF.
   666|       ENDIF.
   667| *     코스트센터명
   668|       IF GT_ITEM-KOSTL NE SPACE.
   669|         READ TABLE GT_CSKT WITH KEY KOSTL = GT_ITEM-KOSTL.
   670|         IF SY-SUBRC EQ 0.
   671|           GT_ITEM-KOSTL_T = GT_CSKT-LTEXT.
   672|         ENDIF.
   673|       ENDIF.
   674|     ENDIF.
  • EN: For remaining unmatched approval records build items with sign-adjusted approval amount, processed amount plus reversal status and vendor line for posted documents, and card master / vendor / cost center texts.
  • SAP 객체: ZUNICT1001, BKPF, BSEG, LFA1, CSKT
  • 업무 키워드: 미청구 승인내역, 취소 승인, 처리금액, 역분개 확인, 카드 마스터
  • English: Approval Data, Unbilled, Reversal Check, Card Master, ZUNICT1001
  • 정의부(복사 시 함께 필요): ZUNICT1001, LT_Z1001, GT_ITEM, C_0, BKPF, GT_BKPF, P_BUKRS, BSEG, GT_BSEG, C_K, ZUNICT1000, GT_Z1000 외 2건
  • 위치: abap://ZFIR0120/ZFIR0120F01#L612-L674 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DISPLAY_DATA#C7

[calculation] 승인 기준 건에 청구금액·대상금액(특정 가맹점 제외)·기반제액을 붙여 할인·잔액·차액·미청구액을 계산하고, 전표가 있고 할인금액이 있으면 BSEG G/L 라인(KOART='S')에서 계정·코스트센터를 가져와 할인 전표 생성용으로 저장한 뒤 GT_ITEM 추가 및 GT_HEAD COLLECT 한다.

   677|     READ TABLE GT_Z1003 WITH KEY BUKRS    = P_BUKRS
   678|                                  COMP     = P_COMP
   679|                                  CARDNO   = LT_Z1001-CARDNO
   680|                                  AP_DATE  = LT_Z1001-AP_DATE
   681|                                  AP_NUM   = LT_Z1001-AP_NUM.
   682|     IF SY-SUBRC EQ 0.
   683|       GT_ITEM-REQ_AMT = GT_Z1003-REQ_AMT.
   684|     ENDIF.
   685| 
   686| *   가맹점사업자번호가 '1048116860' '1238191439' '1088158902' 경우
   687| *   대상금액 무조건 매입금액
   688|     IF LT_Z1001-STREGNO EQ '1048116860' OR
   689|        LT_Z1001-STREGNO EQ '1238191439' OR
   690|        LT_Z1001-STREGNO EQ '1088158902'.
   691|     ELSE.
   692|       GT_ITEM-AMT_B = GT_ITEM-AP_AMT.
   693|     ENDIF.
   694| *   기반제액
   695|     READ TABLE GT_Z0151 WITH KEY BUKRS    = P_BUKRS
   696|                                  COMP     = P_COMP
   697|                                  CARDNO   = LT_Z1001-CARDNO
   698|                                  AP_DATE  = LT_Z1001-AP_DATE
   699|                                  AP_NUM   = LT_Z1001-AP_NUM.
   700|     IF SY-SUBRC EQ 0.
   701|       IF GT_Z0151-AUGBL NE SPACE.
   702|         GT_ITEM-AMT_E = GT_ITEM-AMT_A.
   703|       ENDIF.
   704|     ENDIF.
   705| 
   706| *   청구금액
   707|     GT_ITEM-AMT_F = GT_ITEM-REQ_AMT.
   708| *   할인금액(대상금액 - 청구금액)
   709|     IF GT_ITEM-REQ_AMT IS NOT INITIAL.
   710|       GT_ITEM-AMT_G = GT_ITEM-AMT_B - GT_ITEM-REQ_AMT.
   711|     ENDIF.
   712| *   잔액(청구금액 - 할인금액)
   713|     GT_ITEM-AMT_H = GT_ITEM-REQ_AMT - GT_ITEM-AMT_G.
   714| *   차액(처리금액 - 청구금액 - 할인금액)
   715|     GT_ITEM-AMT_C = GT_ITEM-AMT_A - GT_ITEM-AMT_F - GT_ITEM-AMT_G.
   716| *   미청구액(대상금액 - 청구금액 - 할인금액)
   717|     GT_ITEM-AMT_D = GT_ITEM-AMT_B - GT_ITEM-AMT_F - GT_ITEM-AMT_G.
   718| 
   719| *   전표번호가 있음서 할인금액 있는 경우
   720|     IF GT_ITEM-BELNR NE SPACE AND GT_ITEM-AMT_G IS  NOT INITIAL.
   721|       READ TABLE GT_BSEG WITH KEY BUKRS = P_BUKRS
   722|                                   GJAHR = GT_ITEM-GJAHR
   723|                                   BELNR = GT_ITEM-BELNR
   724|                                   KOART = C_S.
   725|       IF SY-SUBRC EQ 0.
   726|         GT_ITEM-HKONT  = GT_BSEG-HKONT.
   727|         GT_ITEM-KOSTL2 = GT_BSEG-KOSTL.
   728|       ENDIF.
   729|     ENDIF.
   730| 
   731| *   차이자료
   732|     IF P_RB EQ C_X AND GT_ITEM-AMT_C IS INITIAL.
   733|       CONTINUE.
   734|     ENDIF.
   735| 
   736|     APPEND GT_ITEM.
   737| 
   738|     MOVE-CORRESPONDING GT_ITEM TO GT_HEAD.
   739|     COLLECT GT_HEAD. CLEAR GT_HEAD.
  • EN: Attach billed, target and already-cleared amounts to approval-based items, compute discount, remainder, difference and unbilled amounts, and when a document with a discount exists take the G/L account and cost center from the BSEG G/L line (KOART='S') for the discount posting; append to GT_ITEM and COLLECT into GT_HEAD.
  • SAP 객체: ZUNICT1003, ZFIT0151, BSEG
  • 업무 키워드: 청구할인, 할인 계정, 차액 계산, G/L 라인, 카드별 합계
  • English: Discount Amount, G/L Line Item, Cost Center, COLLECT, ZFIT0151
  • 정의부(복사 시 함께 필요): ZUNICT1003, GT_Z1003, P_BUKRS, P_COMP, ZUNICT1001, LT_Z1001, GT_ITEM, GT_Z0151, BSEG, GT_BSEG, C_S, P_RB 외 2건
  • 선언을 못 찾은 이름: AP_DATE, AP_NUM (수집 안 된 인클루드·함수 인터페이스일 수 있다)
  • 위치: abap://ZFIR0120/ZFIR0120F01#L677-L739 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DISPLAY_DATA#C8

FORM DISPLAY_DATA_2 — ZFIR0120F01 L750-L771 (22줄)

정산 이력 조회 모드에서 저장된 헤더(ZFIT0150)와 상세(ZFIT0151) 이력을 GT_HEAD/GT_ITEM 으로 옮기고 반제전표 유무에 따라 신호등 아이콘을 설정한다.

이 unit 의 조각 1개가 16/22줄(73%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[output] ZFIT0150 정산 헤더 이력을 GT_HEAD 로 옮기며 반제전표(AUGBL)가 없으면 빨간불, 있으면 초록불 아이콘을 붙이고 ZFIT0151 상세 이력을 GT_ITEM 으로 옮긴다.

   754|   LOOP AT GT_Z0150.
   755|     MOVE-CORRESPONDING GT_Z0150 TO GT_HEAD.
   756|     IF GT_Z0150-AUGBL EQ SPACE.
   757|       GT_HEAD-CICON = ICON_RED_LIGHT.
   758|     ELSE.
   759|       GT_HEAD-CICON = ICON_GREEN_LIGHT.
   760|     ENDIF.
   761| 
   762|     APPEND GT_HEAD. CLEAR GT_HEAD.
   763|   ENDLOOP.
   764| 
   765| * Detail
   766|   LOOP AT GT_Z0151.
   767|     MOVE-CORRESPONDING GT_Z0151 TO GT_ITEM.
   768|     APPEND GT_ITEM. CLEAR GT_ITEM.
   769|   ENDLOOP.
  • EN: Copy settlement history headers from ZFIT0150 into GT_HEAD with a red/green light icon depending on whether a clearing document exists, and copy detail history ZFIT0151 into GT_ITEM.
  • SAP 객체: ZFIT0150, ZFIT0151
  • 업무 키워드: 정산 이력, 반제전표 여부, 신호등 아이콘, 법인카드 정산
  • English: Settlement History, Clearing Document, Status Icon, ZFIT0150
  • 정의부(복사 시 함께 필요): GT_Z0150, GT_HEAD, GT_Z0151, GT_ITEM
  • 위치: abap://ZFIR0120/ZFIR0120F01#L754-L769 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DISPLAY_DATA_2#C1

EVENT END-OF-SELECTION — ZFIR0120 L64-L70 (7줄)

END-OF-SELECTION 에서 조회 결과 GT_HEAD 가 없으면 메시지 S003 후 종료하고 있으면 화면 0100 을 호출하는 블록이다.

이 unit 의 조각 1개가 6/7줄(86%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[control_flow] 수불 헤더 데이터가 없으면 '데이터 없음' 메시지(S003)를 내고 리스트 처리를 종료하며, 있으면 2단 ALV 화면 0100 을 호출한다.

    65|   IF GT_HEAD[] IS INITIAL.
    66|     MESSAGE S003.
    67|     LEAVE LIST-PROCESSING.
    68|   ELSE.
    69|     CALL SCREEN 0100.
    70|   ENDIF.
  • EN: If no header data was found issue message S003 and leave, otherwise call screen 0100 to show the ALV.
  • 호출(파서): 0100
  • 업무 키워드: 결과 없음, 화면 호출, 조회 결과 확인
  • English: no data, call screen
  • 정의부(복사 시 함께 필요): GT_HEAD
  • 위치: abap://ZFIR0120/ZFIR0120#L65-L70 · confidence 0.8 · ZFIR0120#ZFIR0120#EVENT#END-OF-SELECTION#C1

FORM NAME_SELECT — ZFICOM L378-L387 (10줄)

사용자 ID 로 V_USERNAME 뷰에서 사용자 이름을 조회하는 공통 FORM 이다.

이 unit 의 조각 1개가 7/10줄(70%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[sql_select] V_USERNAME 뷰에서 사용자 ID 의 이름(NAME_TEXT)을 조회하고 이름이 비어 있으면 사용자 ID 를 그대로 돌려준다.

   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 / write -
  • SAP 객체: V_USERNAME, USR21, ADRP
  • 업무 키워드: 사용자 이름, 사용자 ID, 담당자명
  • English: User Name, V_USERNAME, User Master
  • 선언을 못 찾은 이름: V_USERNAME (수집 안 된 인클루드·함수 인터페이스일 수 있다)
  • 위치: abap://ZFIR0120/ZFICOM#L380-L386 · confidence 0.9 · ZFIR0120#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 를 단건 조회한다.

   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 / write -
  • SAP 객체: CSKT
  • 업무 키워드: 코스트센터, 코스트센터명, 관리회계영역, 유효기간
  • English: Cost Center, Controlling Area, CSKT
  • 위치: abap://ZFIR0120/ZFICOM#L401-L407 · confidence 0.9 · ZFIR0120#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)을 단건 조회한다.

   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 / write -
  • SAP 객체: J_1BBRANCH
  • 업무 키워드: 사업장, 사업장명, 회사코드, 세금계산서
  • English: Business Place, Branch, Company Code
  • 정의부(복사 시 함께 필요): P_BUKRS
  • 선언을 못 찾은 이름: J_1BBRANCH (수집 안 된 인클루드·함수 인터페이스일 수 있다)
  • 위치: abap://ZFIR0120/ZFICOM#L423-L427 · confidence 0.9 · ZFIR0120#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) 기준으로 단건 조회한다.

   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 / write -
  • SAP 객체: SKAT
  • 업무 키워드: 계정과목 텍스트, G/L 계정, 계정표, 언어
  • English: G/L Account, Chart of Accounts, Account Text, SKAT
  • 정의부(복사 시 함께 필요): L_LANG, C_L, C_KTOPL
  • 위치: abap://ZFIR0120/ZFICOM#L443-L463 · confidence 0.9 · ZFIR0120#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 에 받는다.

   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
  • 위치: abap://ZFIR0120/ZFICOM#L482-L489 · confidence 0.85 · ZFIR0120#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 에 받는다.

   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
  • 위치: abap://ZFIR0120/ZFICOM#L510-L518 · confidence 0.85 · ZFIR0120#ZFICOM#FORM#CHECK_CONFIRM_STEP_2#C1

FORM AUTHORITY_PG — ZFICOM L545-L563 (19줄)

사용자 ID 로 커스텀 권한테이블 ZFIT0160 을 조회해 프로그램(T-Code)별 실행 권한을 검증하는 공통 FORM 이다.

이 unit 의 조각 1개가 16/19줄(84%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[validation] ZFIT0160 에서 사용자 ID 의 프로그램 권한 행을 조회하고, 미등록이거나 ZFIR0090 권한 플래그가 비어 있으면 '프로그램 권한이 없습니다' 메시지 후 GF_CHECK 를 세우고 처리를 중단한다.

   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 / write -
  • SAP 객체: ZFIT0160, ZFIR0090
  • 업무 키워드: 프로그램 권한, 권한 체크, 사용자 ID, 권한 테이블
  • English: Authorization Check, Custom Authorization Table, User ID
  • 정의부(복사 시 함께 필요): ZFIT0160, GF_CHECK, C_X
  • 위치: abap://ZFIR0120/ZFICOM#L547-L562 · confidence 0.9 · ZFIR0120#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)를 얻고 미존재 시 시스템 메시지를 표시한다.

   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://ZFIR0120/ZFICOM#L578-L591 · confidence 0.85 · ZFIR0120#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 로 계산한다.

   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://ZFIR0120/ZFICOM#L613-L621 · confidence 0.85 · ZFIR0120#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 로 경과 일수·개월·연수를 계산한다.

   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://ZFIR0120/ZFICOM#L642-L649 · confidence 0.85 · ZFIR0120#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 로 돌려준다.

   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, LV_PROG, LV_DNUM, C_X
  • 위치: abap://ZFIR0120/ZFICOM#L682-L702 · confidence 0.85 · ZFIR0120#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 을 단건 조회한다.

   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 / write -
  • SAP 객체: T007S
  • 업무 키워드: 세금코드, 부가세, 세금계산절차, 텍스트 조회
  • English: Tax Code, Tax Procedure, Sales Tax
  • 정의부(복사 시 함께 필요): GV_KALSM, C_KALSM
  • 위치: abap://ZFIR0120/ZFICOM#L761-L769 · confidence 0.9 · ZFIR0120#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 로 지정한 번호범위·오브젝트·서브오브젝트의 다음 일련번호를 채번하고, 구간 미존재·오버플로 등 예외는 시스템 메시지로 그대로 올린다.

   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://ZFIR0120/ZFICOM#L787-L806 · confidence 0.9 · ZFIR0120#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)를 판별해 업로드 방식을 결정한다.

   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, LV_POS, LV_TYPE
  • 위치: abap://ZFIR0120/ZFICOM#L864-L867 · confidence 0.85 · ZFIR0120#ZFICOM#FORM#DATA_UPLOAD#C1

[fm_call] TXT 파일이면 GUI_UPLOAD(탭 구분자)로 로컬 파일을 T_LOAD 내부테이블로 읽고 실패 시 메시지 I106 후 종료한다.

   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, LV_FILENAME, C_X
  • 위치: abap://ZFIR0120/ZFICOM#L869-L885 · confidence 0.9 · ZFIR0120#ZFICOM#FORM#DATA_UPLOAD#C2

[fm_call] XLS 파일이면 TEXT_CONVERT_XLS_TO_SAP 으로 엑셀을 T_LOAD 로 변환(헤더행 옵션)하고, 실패·미지원 확장자면 메시지 I006/I007 로 종료한다.

   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, LV_RAW_DATA
  • 위치: abap://ZFIR0120/ZFICOM#L887-L907 · confidence 0.9 · ZFIR0120#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 로 읽고 실패 시 '업로드 실패' 메시지 후 종료한다.

   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
  • 위치: abap://ZFIR0120/ZFICOM#L922-L939 · confidence 0.9 · ZFIR0120#ZFICOM#FORM#DATA_UPLOAD_2#C1

[calculation] 셀 데이터를 행·열 순으로 정렬한 뒤 열 번호를 T_LOAD 구조의 컴포넌트에 ASSIGN 해 값을 채우고 행이 끝날 때마다 T_LOAD 에 한 줄씩 추가한다.

   941|   SORT GT_XLS BY ROW COL.
   942|   LOOP AT GT_XLS.
   943|     ASSIGN COMPONENT GT_XLS-COL OF STRUCTURE T_LOAD TO <FS>.
   944|     <FS> = 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, <FS>
  • 위치: abap://ZFIR0120/ZFICOM#L941-L948 · confidence 0.9 · ZFIR0120#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)으로 환산하고 오류 시 시스템 메시지를 표시한다.

   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, C_WAERS
  • 위치: abap://ZFIR0120/ZFICOM#L967-L998 · confidence 0.9 · ZFIR0120#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)을 계산하며 환율 미존재 등 오류 시 메시지를 띄운다.

  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, C_WAERS
  • 위치: abap://ZFIR0120/ZFICOM#L1016-L1038 · confidence 0.9 · ZFIR0120#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 을 단건 조회해 사용자 기본 설정(날짜/숫자 형식 등)을 읽는다.

  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 / write -
  • SAP 객체: USR01
  • 업무 키워드: 사용자 마스터, 사용자 기본값, 사용자 ID
  • English: User Master, USR01
  • 정의부(복사 시 함께 필요): USR01
  • 위치: abap://ZFIR0120/ZFICOM#L1085-L1087 · confidence 0.85 · ZFIR0120#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 에 설정한다.

  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, GS_DEVICE, C_X, GS_OPTIONS
  • 위치: abap://ZFIR0120/ZFICOM#L1108-L1136 · confidence 0.9 · ZFIR0120#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 을 연다.

  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, GS_OPTIONS
  • 위치: abap://ZFIR0120/ZFICOM#L1145-L1155 · confidence 0.85 · ZFIR0120#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)를 받으며 오류 시 시스템 메시지를 표시한다.

  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
  • 위치: abap://ZFIR0120/ZFICOM#L1163-L1174 · confidence 0.85 · ZFIR0120#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)에 추가한다.

  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, GT_BDC
  • 위치: abap://ZFIR0120/ZFICOM#L1242-L1250 · confidence 0.9 · ZFIR0120#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 에 수집한다.

  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, GV_MODE, C_A, GT_BDC, GT_MESS
  • 위치: abap://ZFIR0120/ZFICOM#L1260-L1265 · confidence 0.9 · ZFIR0120#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 로 읽을 수 있는 메시지 텍스트로 만들어 로그 필드에 돌려준다.

  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
  • 위치: abap://ZFIR0120/ZFICOM#L1275-L1284 · confidence 0.9 · ZFIR0120#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 으로 구매처 마스터를 표시한다.

  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
  • 정의부(복사 시 함께 필요): P_BUKRS, C_X, CTU_PARAMS, C_E, C_A, GT_BDC
  • 위치: abap://ZFIR0120/ZFICOM#L1299-L1316 · confidence 0.9 · ZFIR0120#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 트랜잭션을 첫 화면 건너뛰기로 호출해 회계전표를 조회한다.

  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
  • 정의부(복사 시 함께 필요): P_BUKRS
  • 위치: abap://ZFIR0120/ZFICOM#L1331-L1335 · confidence 0.95 · ZFIR0120#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 로 상태바에 처리 진행 상황을 표시한다.

  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, GV_KBETR, GV_TABIN, LV_TEXT, LV_PCEN
  • 위치: abap://ZFIR0120/ZFICOM#L1350-L1365 · confidence 0.9 · ZFIR0120#ZFICOM#FORM#STATUS_BAR#C1

FORM HOTSPOT_CLICK — ZFIR0120F01 L1179-L1210 (32줄)

헤더 ALV 핫스팟 클릭 시 카드번호(CARDNO)면 해당 카드의 상세 아이템을 GT_ITEM2 로 추려 상세 그리드를 갱신하고, 반제전표(AUGBL)면 FB03 으로 전표를 조회한다.

이 unit 의 조각 2개가 19/32줄(59%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[control_flow] 카드번호 컬럼 클릭 시 헤더 행의 회사코드·카드번호와 일치하는 GT_ITEM 을 GT_ITEM2 로 복사하고 OK 코드 ZUSER 를 발생시켜 PAI 에서 상세 그리드를 갱신한다.

  1187|     WHEN 'CARDNO'.
  1188|       CLEAR : GT_ITEM2[], GT_ITEM2.
  1189| 
  1190|       LOOP AT GT_ITEM WHERE BUKRS  EQ GT_HEAD-BUKRS
  1191|                         AND CARDNO EQ GT_HEAD-CARDNO.
  1192|         MOVE-CORRESPONDING GT_ITEM TO GT_ITEM2.
  1193|         APPEND GT_ITEM2. CLEAR GT_ITEM2.
  1194|       ENDLOOP.
  1195| 
  1196| *     PAI로 호출
  1197|       CALL METHOD CL_GUI_CFW=>SET_NEW_OK_CODE
  1198|         EXPORTING
  1199|           NEW_CODE = 'ZUSER'.
  • EN: On CARDNO hotspot copy matching items into GT_ITEM2 and raise OK code ZUSER via CL_GUI_CFW=>SET_NEW_OK_CODE to refresh the detail grid in PAI.
  • 호출(파서): CL_GUI_CFW=>SET_NEW_OK_CODE
  • SAP 객체: CL_GUI_CFW
  • 업무 키워드: 카드번호, 헤더-아이템 연동, 상세 그리드 갱신, 핫스팟
  • English: Card Number, Hotspot, Drilldown, CL_GUI_CFW
  • 정의부(복사 시 함께 필요): GT_ITEM, GT_ITEM2, GT_HEAD
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1187-L1199 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#HOTSPOT_CLICK#C1

[interface] 반제전표 컬럼 클릭 시 반제전표번호·회사코드·반제연도(AUGDT 앞 4자리)로 파라미터 ID 를 설정하고 FB03 으로 반제전표를 조회한다.

  1202|     WHEN 'AUGBL'.
  1203|       CHECK GT_HEAD-AUGBL IS NOT INITIAL.
  1204|       SET PARAMETER ID 'BLN' FIELD GT_HEAD-AUGBL.
  1205|       SET PARAMETER ID 'BUK' FIELD P_BUKRS.
  1206|       SET PARAMETER ID 'GJR' FIELD GT_HEAD-AUGDT(4).
  1207|       CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.
  • EN: On AUGBL hotspot set parameter IDs from clearing document, company code and clearing year and call FB03 to display the clearing document.
  • 호출(파서): FB03
  • SAP 객체: FB03
  • 업무 키워드: 반제전표 조회, 핫스팟, 회계전표
  • English: Clearing Document, FB03, Hotspot
  • 정의부(복사 시 함께 필요): GT_HEAD, P_BUKRS
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1202-L1207 · confidence 0.9 · ZFIR0120#ZFIR0120F01#FORM#HOTSPOT_CLICK#C2

FORM HOTSPOT_CLICK2 — ZFIR0120F01 L1219-L1235 (17줄)

상세 ALV 에서 전표번호(BELNR) 핫스팟 클릭 시 파라미터 ID 를 설정하고 FB03 으로 회계전표를 조회한다.

이 unit 의 조각 1개가 12/17줄(71%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[interface] 클릭한 상세 행의 전표번호가 있으면 BLN/BUK/GJR 파라미터 ID 를 설정하고 FB03 트랜잭션을 호출해 전표를 조회한다.

  1222|   READ TABLE GT_ITEM2 INDEX P_ROW_ID-INDEX.
  1223|   CHECK SY-SUBRC EQ 0.
  1224| 
  1225|   CASE P_COLUMN_ID.
  1226| *   전표번호
  1227|     WHEN 'BELNR'.
  1228|       CHECK GT_ITEM2-BELNR IS NOT INITIAL.
  1229|       SET PARAMETER ID 'BLN' FIELD GT_ITEM2-BELNR.
  1230|       SET PARAMETER ID 'BUK' FIELD P_BUKRS.
  1231|       SET PARAMETER ID 'GJR' FIELD GT_ITEM2-GJAHR.
  1232|       CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.
  1233|   ENDCASE.
  • EN: For the clicked detail row with a document number set parameter IDs BLN/BUK/GJR and call transaction FB03 to display the accounting document.
  • 호출(파서): FB03
  • SAP 객체: FB03
  • 업무 키워드: 전표 조회, 핫스팟, 회계전표, 파라미터 ID
  • English: Hotspot, FB03, Display Document, SET PARAMETER
  • 정의부(복사 시 함께 필요): GT_ITEM, GT_ITEM2, P_BUKRS
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1222-L1233 · confidence 0.9 · ZFIR0120#ZFIR0120F01#FORM#HOTSPOT_CLICK2#C1

FORM DOUBLE_CLICK — ZFIR0120F01 L1244-L1263 (20줄)

헤더 ALV 더블클릭 시 해당 회사코드·카드번호의 상세 아이템(GT_ITEM)을 GT_ITEM2 로 추려 상세 그리드 갱신용 OK 코드 ZUSER 를 발생시킨다.

이 unit 의 조각 1개가 13/20줄(65%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[control_flow] 더블클릭한 헤더 행의 회사코드·카드번호와 일치하는 아이템을 GT_ITEM 에서 GT_ITEM2 로 복사하고 CL_GUI_CFW=>SET_NEW_OK_CODE 로 OK 코드 ZUSER 를 발생시켜 PAI 에서 상세 그리드를 갱신하게 한다.

  1249|   READ TABLE GT_HEAD INDEX P_ROW-INDEX.
  1250|   CHECK SY-SUBRC EQ 0.
  1251| 
  1252|   LOOP AT GT_ITEM WHERE BUKRS  EQ GT_HEAD-BUKRS
  1253|                     AND CARDNO EQ GT_HEAD-CARDNO.
  1254|     MOVE-CORRESPONDING GT_ITEM TO GT_ITEM2.
  1255|     APPEND GT_ITEM2. CLEAR GT_ITEM2.
  1256|   ENDLOOP.
  1257| 
  1258| * PAI로 호출
  1259|   CALL METHOD CL_GUI_CFW=>SET_NEW_OK_CODE
  1260|     EXPORTING
  1261|       NEW_CODE = 'ZUSER'.
  • EN: Copy the items matching the double-clicked header row's company code and card number into GT_ITEM2 and trigger OK code ZUSER via CL_GUI_CFW=>SET_NEW_OK_CODE so PAI refreshes the detail grid.
  • 호출(파서): CL_GUI_CFW=>SET_NEW_OK_CODE
  • SAP 객체: CL_GUI_CFW
  • 업무 키워드: 더블클릭, 헤더-아이템 연동, 카드번호, 상세 그리드 갱신
  • English: Double Click, Header-Item Drilldown, Card Number, CL_GUI_CFW
  • 정의부(복사 시 함께 필요): GT_HEAD, GT_ITEM, GT_ITEM2
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1249-L1261 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DOUBLE_CLICK#C1

FORM ALV_GRID_DISPLAY1 — ZFIR0120F01 L898-L913 (16줄)

헤더 필드카탈로그를 만든 뒤 GV_ALV_GRID1->SET_TABLE_FOR_FIRST_DISPLAY로 임시전표 헤더 목록(GT_HEAD)을 상단 ALV에 표시하는 FORM이다.

이 unit 의 조각 1개가 12/16줄(75%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[output] 레이아웃·변형·툴바 제외 목록과 함께 GV_ALV_GRID1->SET_TABLE_FOR_FIRST_DISPLAY를 호출해 임시전표 헤더 내부테이블 GT_HEAD를 상단 ALV 그리드에 출력한다.

   901|   GV_VARI1-REPORT = SY-REPID.
   902|   CALL METHOD GV_ALV_GRID1->SET_TABLE_FOR_FIRST_DISPLAY
   903|     EXPORTING
   904|       I_STRUCTURE_NAME     = 'GT_HEAD'
   905|       IT_TOOLBAR_EXCLUDING = GT_EXCLUDE
   906|       IS_LAYOUT            = GV_LAYO1
   907|       IS_VARIANT           = GV_VARI1
   908|       I_BUFFER_ACTIVE      = C_X
   909|       I_SAVE               = C_A
   910|     CHANGING
   911|       IT_OUTTAB            = GT_HEAD[]
   912|       IT_FIELDCATALOG      = GT_FCAT_HEAD[].
  • EN: Displays the parked document header list (GT_HEAD) in the upper ALV grid via SET_TABLE_FOR_FIRST_DISPLAY with layout, variant and toolbar exclusions.
  • 호출(파서): GV_ALV_GRID1->SET_TABLE_FOR_FIRST_DISPLAY
  • SAP 객체: CL_GUI_ALV_GRID
  • 업무 키워드: 헤더 ALV 출력, 임시전표 목록, 그리드 표시
  • English: ALV Grid, SET_TABLE_FOR_FIRST_DISPLAY, Parked Document
  • 정의부(복사 시 함께 필요): GV_VARI1, GV_ALV_GRID1, GT_EXCLUDE, GV_LAYO1, C_X, C_A, GT_HEAD, GT_FCAT_HEAD
  • 위치: abap://ZFIR0120/ZFIR0120F01#L901-L912 · confidence 0.8 · ZFIR0120#ZFIR0120F01#FORM#ALV_GRID_DISPLAY1#C1

FORM ALV_GRID_DISPLAY2 — ZFIR0120F01 L1041-L1056 (16줄)

아이템 필드카탈로그를 만든 뒤 GV_ALV_GRID2->SET_TABLE_FOR_FIRST_DISPLAY로 선택 전표의 아이템 목록(GT_ITEM2)을 하단 ALV에 표시하는 FORM이다.

이 unit 의 조각 1개가 12/16줄(75%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[output] 레이아웃·변형·툴바 제외 목록과 함께 GV_ALV_GRID2->SET_TABLE_FOR_FIRST_DISPLAY를 호출해 전표 아이템 내부테이블 GT_ITEM2를 하단 ALV 그리드에 출력한다.

  1044|   GV_VARI2-REPORT = SY-REPID.
  1045|   CALL METHOD GV_ALV_GRID2->SET_TABLE_FOR_FIRST_DISPLAY
  1046|     EXPORTING
  1047|       I_STRUCTURE_NAME     = 'GT_ITEM'
  1048|       IT_TOOLBAR_EXCLUDING = GT_EXCLUDE
  1049|       IS_LAYOUT            = GV_LAYO2
  1050|       IS_VARIANT           = GV_VARI2
  1051|       I_BUFFER_ACTIVE      = C_X
  1052|       I_SAVE               = C_A
  1053|     CHANGING
  1054|       IT_OUTTAB            = GT_ITEM2[]
  1055|       IT_FIELDCATALOG      = GT_FCAT_ITEM[].
  • EN: Displays the document line items (GT_ITEM2) in the lower ALV grid via SET_TABLE_FOR_FIRST_DISPLAY with layout, variant and toolbar exclusions.
  • 호출(파서): 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, GV_ALV_GRID2, GT_EXCLUDE, GV_LAYO2, C_X, C_A, GT_ITEM, GT_ITEM2, GT_FCAT_ITEM
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1044-L1055 · confidence 0.8 · ZFIR0120#ZFIR0120F01#FORM#ALV_GRID_DISPLAY2#C1

FORM DOCUMENT_POSTING — ZFIR0120F01 L1269-L1375 (107줄)

카드별 청구 정산 내역으로 반제/미결 전표 데이터를 만들고 카드 300건 단위로 전표를 생성한 뒤 정산 이력을 저장한다.

이 unit 의 조각 3개가 87/107줄(81%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[aggregation] 카드별로 아이템을 돌며, 이미 전표번호가 있고 역분개되지 않은 항목은 BSEG 기준 반제 선택항목(BSELP)으로 넣고, 전표가 없는 항목은 금액 부호에 따라 전기키 34/24 로 미결 항목을 생성하며 승인번호·구매번호·가맹점명을 참조필드에 남긴다. 할인금액은 계정·코스트센터별로 COLLECT 해 합산한다.

  1283|   LOOP AT GT_HEAD.
  1284|     GT_HEAD-CHFLG = C_X.
  1285|     MODIFY GT_HEAD.
  1286| 
  1287|     AT LAST.
  1288|       LV_LAST = C_X.
  1289|     ENDAT.
  1290| 
  1291|     LV_CNT = LV_CNT + 1.
  1292|     MOVE-CORRESPONDING GT_HEAD TO GT_Z0150_S.
  1293|     APPEND GT_Z0150_S. CLEAR GT_Z0150_S.
  1294| 
  1295| *   ITEM 내역 생성
  1296|     LOOP AT GT_ITEM WHERE CARDNO EQ GT_HEAD-CARDNO.
  1297|       GT_ITEM-CHFLG = C_X.
  1298|       MODIFY GT_ITEM.
  1299| 
  1300|       MOVE-CORRESPONDING GT_ITEM TO GT_Z0151_S.
  1301|       APPEND GT_Z0151_S. CLEAR GT_Z0151_S.
  1302| 
  1303| *     청구금액이 있는 데이터만..
  1304|       CHECK GT_ITEM-REQ_AMT IS NOT INITIAL.
  1305| 
  1306| *     전표번호가 있는 경우 해당 항목 반제 처리
  1307|       IF GT_ITEM-BELNR NE SPACE AND GT_ITEM-STBLG EQ SPACE.
  1308| 
  1309|         GT_BSELP-STYPE   = C_D.
  1310|         GT_BSELP-TBNAM   = 'BSEG'.
  1311|         GT_BSELP-FELDN_1 = 'BELNR'.
  1312|         CONCATENATE GT_ITEM-BELNR GT_ITEM-GJAHR GT_ITEM-BUZEI
  1313|                INTO GT_BSELP-SLVON_1.
  1314|         APPEND GT_BSELP.   CLEAR GT_BSELP.
  1315|       ELSE.
  1316| *       대상금액으로 미결항목 생성
  1317|         IF GT_ITEM-AMT_B GT 0.
  1318|           GT_BBSEG-NEWBS = '34'.          "전기키
  1319|         ELSE.
  1320|           GT_BBSEG-NEWBS = '24'.          "전기키
  1321|           GT_ITEM-AMT_B = 0 - GT_ITEM-AMT_B.
  1322|         ENDIF.
  1323| 
  1324|         GT_BBSEG-NEWKO = GT_ITEM-LIFNR.    "구매처코드
  1325|         CHANGE_CURRENCY GT_ITEM-AMT_B GT_BBSEG-WRBTR C_WAERS.
  1326|         CONCATENATE P_SPMON(4) '년' P_SPMON+4(2) ' 법인카드 청구정산 미결생성'
  1327|                INTO GT_BBSEG-SGTXT.
  1328|         GT_BBSEG-XREF1 = GT_ITEM-AP_NUM.
  1329|         GT_BBSEG-XREF2 = GT_ITEM-PU_NUM+22(12).
  1330|         GT_BBSEG-XREF3 = GT_ITEM-STREGNM.
  1331|         APPEND GT_BBSEG. CLEAR GT_BBSEG.
  1332|       ENDIF.
  1333| *     할인금액이 있는 경우
  1334|       IF GT_ITEM-AMT_G IS NOT INITIAL.
  1335|         GT_AMT_G-HKONT = GT_ITEM-HKONT.
  1336|         GT_AMT_G-KOSTL = GT_ITEM-KOSTL.
  1337|         GT_AMT_G-DMBTR = GT_ITEM-AMT_G.
  1338|         COLLECT GT_AMT_G. CLEAR GT_AMT_G.
  1339|       ENDIF.
  1340|     ENDLOOP.
  • EN: Per card item: adds already-posted items as clearing selections (BSELP) or creates open items with posting key 34/24 by sign, stamping reference fields, and collects discount amounts by account/cost center.
  • 테이블(파서): read - / write GT_HEAD, GT_ITEM
  • SAP 객체: BSELP, BBSEG, BSEG, NEWBS, XREF1, XREF2, XREF3, LIFNR
  • 업무 키워드: 법인카드, 청구정산, 반제선택, 미결생성, 전기키, 할인금액, 참조필드, 가맹점
  • English: corporate card, billing settlement, clearing selection, open item, posting key, discount amount, reference field
  • 정의부(복사 시 함께 필요): GT_HEAD, C_X, LV_LAST, LV_CNT, GT_Z0150_S, GT_ITEM, GT_Z0151_S, GT_BSELP, C_D, GT_BBSEG, CHANGE_CURRENCY, C_WAERS 외 2건
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1283-L1340 · confidence 0.84 · ZFIR0120#ZFIR0120F01#FORM#DOCUMENT_POSTING#C1

[control_flow] 카드 300건마다(또는 마지막 건에서) 반제전표 헤더·전표헤더·할인금액 아이템을 만들고, 청구금액 합계 부호에 따라 전기키 31/21 로 공급업체 AP 라인을 추가한 뒤 전표 생성 함수를 호출한다.

  1343|     IF LV_CNT EQ '300' OR LV_LAST EQ C_X.
  1344| *     반제전표 헤더
  1345|       PERFORM MAKE_BSELK.
  1346| *     전표헤더
  1347|       PERFORM MAKE_BKPF.
  1348| *     할인금액 아이템
  1349|       PERFORM MAKE_BSEG.
  1350| *     청구금액합계로 AP라인
  1351|       IF GT_HEAD-AMT_F GT 0.
  1352|         GT_BBSEG-NEWBS = '31'.
  1353|       ELSE.
  1354|         GT_BBSEG-NEWBS = '21'.
  1355|         GT_HEAD-AMT_F = 0 - GT_HEAD-AMT_F.
  1356|       ENDIF.
  1357|       GT_BBSEG-NEWKO = GT_HEAD-LIFNR.
  1358|       CHANGE_CURRENCY GT_HEAD-AMT_F GT_BBSEG-WRBTR C_WAERS.
  1359|       CONCATENATE P_SPMON(4) '년' P_SPMON+4(2) ' 법인카드 청구정산'
  1360|              INTO GT_BBSEG-SGTXT.
  1361|       APPEND GT_BBSEG. CLEAR GT_BBSEG.
  1362| 
  1363| *     전표생성펑션 CALL
  1364|       PERFORM BDC_FB05.
  1365| 
  1366|       CLEAR: LV_CNT, GT_BBSEG[], GT_BBSEG, GT_BSELP[], GT_BSELP.
  1367|     ENDIF.
  • EN: Every 300 cards (or at the last record) builds the clearing header, document header and discount lines, appends the vendor AP line with posting key 31/21 by sign, and posts.
  • 호출(파서): MAKE_BSELK, MAKE_BKPF, MAKE_BSEG, BDC_FB05
  • SAP 객체: BSELK, BBKPF, BBSEG, NEWBS, LIFNR
  • 업무 키워드: 분할전기, 300건단위, 청구금액, 공급업체, AP라인, 전기키, 반제전표
  • English: batch posting, chunked posting, billing amount, vendor, AP line, posting key, clearing document
  • 정의부(복사 시 함께 필요): LV_CNT, LV_LAST, C_X, GT_HEAD, GT_BBSEG, CHANGE_CURRENCY, C_WAERS, P_SPMON, GT_BSELP
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1343-L1367 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#DOCUMENT_POSTING#C2

[db_write] 정산 헤더·아이템 이력을 CBO 테이블 ZFIT0150/ZFIT0151 에 저장한다.

  1370|   IF GT_Z0150_S[] IS NOT INITIAL.
  1371|     MODIFY ZFIT0150 FROM TABLE GT_Z0150_S.
  1372|     MODIFY ZFIT0151 FROM TABLE GT_Z0151_S.
  1373|   ENDIF.
  • EN: Persists settlement header and item history to ZFIT0150/ZFIT0151.
  • 테이블(파서): read - / write ZFIT0150, ZFIT0151
  • SAP 객체: ZFIT0150, ZFIT0151
  • 업무 키워드: 정산이력, 이력저장, 카드정산
  • English: settlement history, persist, card settlement
  • 정의부(복사 시 함께 필요): GT_Z0150_S, GT_Z0151_S
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1370-L1373 · confidence 0.9 · ZFIR0120#ZFIR0120F01#FORM#DOCUMENT_POSTING#C3

FORM MAKE_BSELK — ZFIR0120F01 L1381-L1391 (11줄)

FB05 반제 전기를 위한 반제 계정 선택 헤더(BSELK)에 공급업체(LIFNR)·회사코드·계정유형 K·특별G/L 제외 지시자를 채운다.

이 unit 의 조각 1개가 6/11줄(55%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[other] FB05 반제 대상 계정 선택 헤더 GT_BSELK 에 카드사 공급업체(LIFNR)·회사코드·계정유형 'K'·특별G/L 제외(XNOPS) 를 설정해 미결 채무를 반제 대상으로 지정한다.

  1384|   GT_BSELK-AGKON = GT_HEAD-LIFNR.
  1385|   GT_BSELK-AGBUK = P_BUKRS.
  1386|   GT_BSELK-AGKOA = C_K.
  1387|   GT_BSELK-XNOPS = C_X. "지시자: 특별 G/L이 아닌 미결항목만 선택합니까?
  1388| 
  1389|   APPEND GT_BSELK.   CLEAR GT_BSELK.
  • EN: Fill the FB05 clearing account selection header GT_BSELK with the card vendor, company code, account type K and the standard-open-items-only indicator XNOPS.
  • SAP 객체: FB05, BSELK
  • 업무 키워드: 반제 계정 선택, 공급업체, 미결 항목, 특별 G/L 제외, FB05
  • English: Clearing, BSELK, Vendor, Open Items, FB05
  • 정의부(복사 시 함께 필요): GT_BSELK, GT_HEAD, P_BUKRS, C_K, C_X
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1384-L1389 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#MAKE_BSELK#C1

FORM MAKE_BKPF — ZFIR0120F01 L1397-L1410 (14줄)

FB05 반제 전기용 전표 헤더(BBKPF)를 전표유형 KZ, 전기일, 회사코드, 현지통화, 반제 트랜잭션 UMBUCHNG(대체전기)로 구성한다.

이 unit 의 조각 1개가 9/14줄(64%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[other] 배치입력 전표 헤더 GT_BBKPF 에 T-Code FB05, 전표유형 KZ(지급), 전표일·전기일(P_BUDAT), 회사코드, 통화(T001-WAERS), 반제 트랜잭션 UMBUCHNG(반제 후 대체전기)을 설정한다.

  1400|   GT_BBKPF-TCODE    = 'FB05'.
  1401|   GT_BBKPF-BLDAT    = P_BUDAT.
  1402|   GT_BBKPF-BUDAT    = P_BUDAT.
  1403|   GT_BBKPF-BLART    = 'KZ'.
  1404|   GT_BBKPF-BUKRS    = P_BUKRS.
  1405|   GT_BBKPF-WAERS    = T001-WAERS.
  1406|   GT_BBKPF-AUGLV    = 'UMBUCHNG'.  "반제하여 대체전기
  1407| 
  1408|   APPEND GT_BBKPF.
  • EN: Prepare the batch-input document header GT_BBKPF for FB05 with document type KZ, document/posting date, company code, local currency and clearing transaction UMBUCHNG (transfer posting with clearing).
  • SAP 객체: FB05, BBKPF, T001
  • 업무 키워드: 전표 헤더, 반제 전기, 대체전기, 전표유형 KZ, FB05
  • English: Document Header, BBKPF, Clearing Transaction, UMBUCHNG, FB05
  • 정의부(복사 시 함께 필요): GT_BBKPF, P_BUDAT, P_BUKRS, T001
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1400-L1408 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#MAKE_BKPF#C1

FORM MAKE_BSEG — ZFIR0120F01 L1416-L1435 (20줄)

코스트센터별 청구할인 금액(GT_AMT_G)을 G/L 계정 라인(BBSEG)으로 만들어 금액 부호에 따라 전기키 50/40 과 반대전기 지시자를 설정한다.

이 unit 의 조각 1개가 16/20줄(80%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[calculation] 코스트센터·G/L 계정별 청구할인 금액을 양수면 전기키 50(대변), 음수면 전기키 40(차변)+반대전기(XNEGP)로 BBSEG 라인에 만들고 통화 변환 매크로 CHANGE_CURRENCY 로 금액을 넣으며 '법인카드 청구정산 청구할인' 적요와 코스트센터를 설정한다.

  1418|   LOOP AT GT_AMT_G.
  1419|     IF GT_AMT_G-DMBTR GT 0.
  1420|       GT_BBSEG-NEWBS = '50'.
  1421|     ELSE.
  1422|       GT_BBSEG-NEWBS = '40'.
  1423|       GT_BBSEG-XNEGP = C_X.
  1424|       GT_AMT_G-DMBTR = 0 - GT_AMT_G-DMBTR.
  1425|     ENDIF.
  1426|     GT_BBSEG-NEWKO = GT_AMT_G-HKONT.
  1427|     CHANGE_CURRENCY GT_AMT_G-DMBTR GT_BBSEG-WRBTR C_WAERS.
  1428|     CONCATENATE P_SPMON(4) '년' P_SPMON+4(2) ' 법인카드 청구정산 청구할인'
  1429|            INTO GT_BBSEG-SGTXT.
  1430|     GT_BBSEG-KOSTL = GT_AMT_G-KOSTL.
  1431| 
  1432|     APPEND GT_BBSEG. CLEAR GT_BBSEG.
  1433|   ENDLOOP.
  • EN: Convert each cost-center/G-L account discount amount into a BBSEG line: posting key 50 for positive, 40 with negative-posting flag for negative amounts, converting the amount via CHANGE_CURRENCY and setting the text 'corporate card settlement discount' and cost center.
  • SAP 객체: BBSEG
  • 업무 키워드: 청구할인, 법인카드 정산, 전기키, 반대전기, 코스트센터, G/L 라인
  • English: Posting Key, Negative Posting, Cost Center, BBSEG, G/L Line Item
  • 정의부(복사 시 함께 필요): GT_AMT_G, GT_BBSEG, C_X, CHANGE_CURRENCY, C_WAERS, P_SPMON
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1418-L1433 · confidence 0.85 · ZFIR0120#ZFIR0120F01#FORM#MAKE_BSEG#C1

FORM BDC_FB05 — ZFIR0120F01 L1441-L1525 (85줄)

구성한 반제 데이터로 전표를 전기하고 결과를 화면 테이블·정산 이력에 반영한다.

이 unit 의 조각 2개가 75/85줄(88%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[fm_call] 커스텀 전기 함수에 전표 헤더·아이템과 반제 선택 테이블(BSELK/BSELP)을 함께 넘겨 반제 전표를 생성한다.

  1448|   CALL FUNCTION 'Z_FI_DOCUMENT_POSTING'
  1449|     EXPORTING
  1450|       I_BDC_MODE = GV_MODE
  1451|       I_MESSAGE  = SPACE
  1452|     IMPORTING
  1453|       E_BELNR    = GV_BELNR
  1454|       E_GJAHR    = GV_GJAHR
  1455|       E_BUKRS    = GV_BUKRS
  1456|     TABLES
  1457|       T_BBKPF    = GT_BBKPF
  1458|       T_BBSEG    = GT_BBSEG
  1459|       T_BSELK    = GT_BSELK
  1460|       T_BSELP    = GT_BSELP
  1461|       T_MESSTAB  = GT_FIMSG.
  • EN: Posts the clearing document by passing header/items plus the clearing selection tables (BSELK/BSELP) to the custom posting FM.
  • 호출(파서): Z_FI_DOCUMENT_POSTING
  • SAP 객체: Z_FI_DOCUMENT_POSTING, BSELK, BSELP, BBKPF, BBSEG
  • 업무 키워드: 반제전표, 전기, 반제선택, 전표생성
  • English: clearing document, posting, clearing selection, FB05
  • 정의부(복사 시 함께 필요): GV_MODE, GV_BELNR, GV_GJAHR, GV_BUKRS, GT_BBKPF, GT_BBSEG, GT_BSELK, GT_BSELP, GT_FIMSG
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1448-L1461 · confidence 0.9 · ZFIR0120#ZFIR0120F01#FORM#BDC_FB05#C1

[control_flow] 성공하면 반제전표번호·반제일을 정산 헤더/아이템과 화면 테이블에 채우고 상태 아이콘을 녹색으로, 실패하면 메시지 테이블에서 오류를 뽑아 문구를 만들고 아이콘을 빨간색으로 바꾼 뒤, 처리일시·처리자와 함께 변경분만 갱신한다.

  1463|   IF GV_BELNR NE SPACE.
  1464|     GT_Z0150_S-AUGBL = GT_Z0151_S-AUGBL = GV_BELNR.
  1465|     GT_Z0150_S-AUGDT = GT_Z0151_S-AUGDT = P_BUDAT.
  1466| 
  1467|     GT_HEAD-AUGBL = GT_ITEM-AUGBL = GV_BELNR.
  1468|     GT_HEAD-AUGDT = GT_ITEM-AUGDT = P_BUDAT.
  1469|     GT_HEAD-CICON = ICON_GREEN_LIGHT.
  1470|   ELSE.
  1471|     READ TABLE GT_FIMSG WITH KEY MSGTY = C_E.    "에러
  1472|     IF SY-SUBRC <> 0.
  1473|       READ TABLE GT_FIMSG WITH KEY MSGTY = C_A.  "AVEND
  1474|     ENDIF.
  1475|     IF GT_FIMSG IS INITIAL.
  1476| *     메시지 타입이 정상이면서 에러인 건이 있는지 확인
  1477|       DESCRIBE TABLE GT_MESS LINES GV_INDEX.
  1478|       READ TABLE GT_MESS INDEX GV_INDEX.
  1479|       IF SY-SUBRC EQ 0.
  1480|         CALL FUNCTION 'MESSAGE_TEXT_BUILD'
  1481|           EXPORTING
  1482|             MSGID               = GT_FIMSG-MSGID
  1483|             MSGNR               = GT_FIMSG-MSGNO
  1484|             MSGV1               = GT_FIMSG-MSGV1
  1485|             MSGV2               = GT_FIMSG-MSGV2
  1486|             MSGV3               = GT_FIMSG-MSGV3
  1487|             MSGV4               = GT_FIMSG-MSGV4
  1488|           IMPORTING
  1489|             MESSAGE_TEXT_OUTPUT = GT_Z0150-MESSG.
  1490|       ENDIF.
  1491|     ELSE.
  1492|       CALL FUNCTION 'MESSAGE_TEXT_BUILD'
  1493|         EXPORTING
  1494|           MSGID               = GT_FIMSG-MSGID
  1495|           MSGNR               = GT_FIMSG-MSGNO
  1496|           MSGV1               = GT_FIMSG-MSGV1
  1497|           MSGV2               = GT_FIMSG-MSGV2
  1498|           MSGV3               = GT_FIMSG-MSGV3
  1499|           MSGV4               = GT_FIMSG-MSGV4
  1500|         IMPORTING
  1501|           MESSAGE_TEXT_OUTPUT = GT_Z0150_S-MESSG.
  1502|     ENDIF.
  1503|     GT_HEAD-CICON = ICON_RED_LIGHT.
  1504|   ENDIF.
  1505|   GT_Z0151_S-MESSG = GT_Z0150_S-MESSG.
  1506|   GT_Z0150_S-CDATE = GT_Z0151_S-CDATE = SY-DATUM.
  1507|   GT_Z0150_S-CTIME = GT_Z0151_S-CTIME = SY-UZEIT.
  1508|   GT_Z0150_S-CNAME = GT_Z0151_S-CNAME = SY-UNAME.
  1509| 
  1510|   MODIFY GT_Z0150_S TRANSPORTING AUGBL AUGDT MESSG
  1511|                                  CDATE CTIME CNAME
  1512|                            WHERE CDATE EQ SPACE.
  1513| 
  1514|   MODIFY GT_Z0151_S TRANSPORTING AUGBL AUGDT MESSG
  1515|                                  CDATE CTIME CNAME
  1516|                            WHERE CDATE EQ SPACE.
  1517| 
  1518|   GT_HEAD-MESSG = GT_Z0150_S-MESSG.
  1519|   CLEAR: GT_HEAD-CHFLG, GT_ITEM-CHFLG.
  1520|   MODIFY GT_HEAD TRANSPORTING AUGBL AUGDT MESSG CHFLG CICON
  1521|                         WHERE CHFLG EQ C_X.
  1522|   MODIFY GT_ITEM TRANSPORTING AUGBL AUGDT CHFLG
  1523|                         WHERE CHFLG EQ C_X.
  • EN: On success stamps clearing document number/date and a green status icon; on failure builds an error text and sets a red icon, then updates only the changed rows with audit fields.
  • 테이블(파서): read - / write GT_HEAD, GT_ITEM
  • 호출(파서): MESSAGE_TEXT_BUILD, MESSAGE_TEXT_BUILD
  • SAP 객체: MESSAGE_TEXT_BUILD, ZFIT0150, ZFIT0151, AUGBL, AUGDT
  • 업무 키워드: 반제결과, 반제전표번호, 상태아이콘, 오류메시지, 처리일시, 변경분갱신
  • English: clearing result, clearing document number, status icon, error message, audit fields
  • 정의부(복사 시 함께 필요): GV_BELNR, GT_Z0150_S, GT_Z0151_S, P_BUDAT, GT_HEAD, GT_ITEM, GT_FIMSG, C_E, C_A, GT_MESS, GV_INDEX, GT_Z0150 외 1건
  • 위치: abap://ZFIR0120/ZFIR0120F01#L1463-L1523 · confidence 0.86 · ZFIR0120#ZFIR0120F01#FORM#BDC_FB05#C2

MODULE USER_COMMAND_0100 INPUT — ZFIR0120I01 L9-L17 (9줄)

화면 0100 PAI 에서 POST 기능코드일 때 DOCUMENT_POSTING 을 호출해 전표를 생성하는 사용자 명령 MODULE 이다.

이 unit 의 조각 1개가 6/9줄(67%)을 덮는다. 나머지는 선언·화면설정 등 업무 의미가 없다고 판단해 버린 구간이다.

[control_flow] 사용자 명령이 POST(전표생성)이면 DOCUMENT_POSTING 을 수행해 법인카드 청구정산 전표를 전기한다.

    11|   GV_UCOMM = SY-UCOMM.
    12|   CASE GV_UCOMM.
    13| *   전표생성
    14|     WHEN 'POST'.
    15|       PERFORM DOCUMENT_POSTING.
    16|   ENDCASE.
  • EN: Dispatch the POST user command to DOCUMENT_POSTING, which posts the corporate card settlement document.
  • 호출(파서): DOCUMENT_POSTING
  • 업무 키워드: 전표생성, 사용자 명령, 전기
  • English: User Command, Document Posting, PAI
  • 정의부(복사 시 함께 필요): GV_UCOMM
  • 위치: abap://ZFIR0120/ZFIR0120I01#L11-L16 · confidence 0.8 · ZFIR0120#ZFIR0120I01#MODULE#USER_COMMAND_0100_INPUT#C1

정의부 (333건)

로직 조각을 다른 프로그램으로 옮겨 붙일 때 함께 가야 하는 선언이다. 조각별로 무엇이 필요한지는 위 조각 항목의 정의부 줄에 있고(이름을 누르면 여기로 온다), 붙여넣기용으로 의존까지 묶은 코드는 GET /chunks/<chunk_id>declaration_code 로 받는다.

ZFIALV (76건)

SLIS — type-pool · L7-L7

TYPE-POOLS : SLIS.

LCL_EVENT_RECEIVER — class · L10-L20

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

DATA : GT_FIELDCAT         TYPE SLIS_T_FIELDCAT_ALV.  " WA

GT_FIELDCAT_HEAD — data · L38-L38

DATA:
       GT_FIELDCAT_HEAD    TYPE SLIS_T_FIELDCAT_ALV.  " HEAD

GT_FIELDCAT_ITEM — data · L39-L39

DATA:
       GT_FIELDCAT_ITEM    TYPE SLIS_T_FIELDCAT_ALV.  " ITEM

GT_FIELDCAT_FIELD — data · L40-L40

DATA:
       GT_FIELDCAT_FIELD   TYPE SLIS_T_FIELDCAT_ALV.

GT_DROP — data · L41-L41

DATA:
       GT_DROP             TYPE LVC_T_DROP.  " Drop-down

GT_DRAL — data · L42-L42

DATA:
       GT_DRAL             TYPE LVC_T_DRAL.

GT_SORTINFO — data · L43-L43

DATA:
       GT_SORTINFO         TYPE SLIS_T_SORTINFO_ALV.  " SORT

GT_EVENT — data · L44-L44

DATA:
       GT_EVENT            TYPE SLIS_T_EVENT.  " EVENT

GT_PRINT — data · L45-L45

DATA:
       GT_PRINT            TYPE SLIS_PRINT_ALV.  " PRINT

GT_LISTHEADER — data · L46-L46

DATA:
       GT_LISTHEADER       TYPE SLIS_T_LISTHEADER.  " TITLE

GT_CELLTAB — data · L47-L47

DATA:
       GT_CELLTAB          TYPE LVC_T_STYL.

GT_COLOR — data · L48-L48

DATA:
       GT_COLOR            TYPE LVC_T_SCOL.

GT_COLINFO — data · L49-L49

DATA:
       GT_COLINFO          TYPE SLIS_T_SPECIALCOL_ALV WITH HEADER LINE.

GS_FIELDCAT_HEAD — data · L51-L51

DATA : GS_FIELDCAT_HEAD    TYPE SLIS_FIELDCAT_ALV.  " HEAD

GS_FIELDCAT_ITEM — data · L52-L52

DATA:
       GS_FIELDCAT_ITEM    TYPE SLIS_FIELDCAT_ALV.  " ITEM

GS_DROP — data · L53-L53

DATA:
       GS_DROP             TYPE LVC_S_DROP.  " Drop-down

GS_DRAL — data · L54-L54

DATA:
       GS_DRAL             TYPE LVC_S_DRAL.

GS_SORTINFO — data · L55-L55

DATA:
       GS_SORTINFO         TYPE SLIS_SORTINFO_ALV.  " SORT

GS_EVENT — data · L56-L56

DATA:
       GS_EVENT            LIKE LINE OF GT_EVENT.  " EVENT

GS_VARIANT — data · L57-L57

DATA:
       GS_VARIANT          LIKE DISVARIANT.  " Layout

GS_DEF_VARIANT — data · L58-L58

DATA:
       GS_DEF_VARIANT      LIKE DISVARIANT.  " Default Layout

GS_LAYOUT — data · L59-L59

DATA:
       GS_LAYOUT           TYPE SLIS_LAYOUT_ALV.  " Layout

GS_EXIT_BY_USER — data · L60-L60

DATA:
       GS_EXIT_BY_USER     TYPE SLIS_EXIT_BY_USER.

GS_LISTHEADER — data · L61-L61

DATA:
       GS_LISTHEADER       TYPE SLIS_LISTHEADER.  " TITLE

GS_KEYINFO — data · L62-L62

DATA:
       GS_KEYINFO          TYPE SLIS_KEYINFO_ALV.

GS_CELLTAB — data · L63-L63

DATA:
       GS_CELLTAB          TYPE LVC_S_STYL.

GS_COLOR — data · L64-L64

DATA:
       GS_COLOR            TYPE LVC_S_SCOL.

GS_GRIDSET — data · L65-L65

DATA:
       GS_GRIDSET          TYPE LVC_S_GLAY.  " GRID SETTING

GV_REPID — data · L67-L67

DATA : GV_REPID            TYPE SY-REPID.  " Program-ID.

GV_PROGRAM — data · L68-L68

DATA:
       GV_PROGRAM          LIKE SY-REPID.  " Program-ID

GV_INCLNAME — data · L69-L69

DATA:
       GV_INCLNAME         LIKE SY-REPID.

GV_GRID_TITLE — data · L70-L70

DATA:
       GV_GRID_TITLE       TYPE LVC_TITLE.  " GRID TITLE

GV_VARIANT_EXIT — data · L71-L71

DATA:
       GV_VARIANT_EXIT(1)  TYPE C.

GV_SAVE — data · L72-L72

DATA:
       GV_SAVE(1)          TYPE C.

GV_TABNAME_HEAD — data · L73-L73

DATA:
       GV_TABNAME_HEAD     TYPE SLIS_TABNAME.

GV_TABNAME_ITEM — data · L74-L74

DATA:
       GV_TABNAME_ITEM     TYPE SLIS_TABNAME.

GV_PF_STATUS — data · L75-L75

DATA:
       GV_PF_STATUS        TYPE SLIS_FORMNAME VALUE 'SET_STATUS'.

GV_USER_COMMAND — data · L76-L76

DATA:
       GV_USER_COMMAND     TYPE SLIS_FORMNAME VALUE 'USER_COMMAND'.

GV_DATA_CHANGED — data · L77-L77

DATA:
       GV_DATA_CHANGED     TYPE SLIS_FORMNAME VALUE 'ALV_DATA_CHANGED'.

GV_TOP_OF_PAGE — data · L78-L78

DATA:
       GV_TOP_OF_PAGE      TYPE SLIS_FORMNAME.

GV_F2CODE — data · L79-L79

DATA:
       GV_F2CODE           LIKE SY-UCOMM VALUE 'PICK'.

GT_FCAT_HEAD — data · L81-L81

DATA : GT_FCAT_HEAD        TYPE LVC_T_FCAT.

GT_FCAT_ITEM — data · L82-L82

DATA:
       GT_FCAT_ITEM        TYPE LVC_T_FCAT.

GS_FCAT_HEAD — data · L83-L83

DATA:
       GS_FCAT_HEAD        TYPE LVC_S_FCAT.

GS_FCAT_ITEM — data · L84-L84

DATA:
       GS_FCAT_ITEM        TYPE LVC_S_FCAT.

GS_LAYOUT_ON — data · L85-L85

DATA:
       GS_LAYOUT_ON        TYPE LVC_S_LAYO.  " ALV_LAYOUT

GT_SORT — data · L86-L86

DATA:
       GT_SORT             TYPE LVC_T_SORT.  " Sort

GS_SORT — data · L87-L87

DATA:
       GS_SORT             TYPE LVC_S_SORT.  " Sort

GT_F4 — data · L88-L88

DATA:
       GT_F4               TYPE LVC_T_F4.

GS_F4 — data · L89-L89

DATA:
       GS_F4               TYPE LVC_S_F4.  " F4

GS_ROW_ID — data · L90-L90

DATA:
       GS_ROW_ID           TYPE LVC_S_ROW.  " Cursor

GS_COLUMN_ID — data · L91-L91

DATA:
       GS_COLUMN_ID        TYPE LVC_S_COL.

GT_EXCLUDING — data · L93-L93

DATA : GT_EXCLUDING    TYPE SLIS_T_EXTAB.

GT_EVENT_EXIT — data · L94-L94

DATA:
       GT_EVENT_EXIT   TYPE SLIS_T_EVENT_EXIT.

GV_TOOLBAR — data · L96-L96

DATA : GV_TOOLBAR           TYPE REF TO CL_GUI_TOOLBAR.

GV_TOP_NODE — data · L97-L97

DATA:
       GV_TOP_NODE          TYPE LVC_NKEY.

GV_ALV_TREE — data · L98-L98

DATA:
       GV_ALV_TREE          TYPE REF TO CL_GUI_ALV_TREE.

GV_ALV_ITEM — data · L99-L99

DATA:
       GV_ALV_ITEM          TYPE REF TO CL_GUI_ALV_GRID.

GT_ROW — data · L100-L100

DATA:
       GT_ROW               TYPE LVC_T_ROW.  " SELLECTION INDEX

GT_ROID — data · L101-L101

DATA:
       GT_ROID              TYPE LVC_T_ROID.

GT_EXCLUDE — data · L102-L102

DATA:
       GT_EXCLUDE           TYPE UI_FUNCTIONS.

GS_EXCLUDE — data · L103-L103

DATA:
       GS_EXCLUDE           TYPE UI_FUNC.

DC_GRID — data · L105-L105

DATA : DC_GRID              TYPE REF TO CL_GUI_DOCKING_CONTAINER.

CC_GRID — data · L106-L106

DATA:
       CC_GRID              TYPE REF TO CL_GUI_CUSTOM_CONTAINER.

CC_GRID2 — data · L107-L107

DATA:
       CC_GRID2             TYPE REF TO CL_GUI_CUSTOM_CONTAINER.

CC_DIALOG — data · L108-L108

DATA:
       CC_DIALOG            TYPE REF TO CL_GUI_DIALOGBOX_CONTAINER.

GV_EVENT_RECEIVER — data · L109-L109

DATA:
       GV_EVENT_RECEIVER    TYPE REF TO LCL_EVENT_RECEIVER.

GT_UCOMM — data · L111-L111

DATA : GT_UCOMM             TYPE TABLE OF SY-UCOMM. "버튼제어

C_BDC01 — constants · L115-L115

CONSTANTS : C_BDC01(9) TYPE C       VALUE 'Sequence'.

C_BDC02 — constants · L116-L116

CONSTANTS:
            C_BDC02(9) TYPE C       VALUE 'Field'.

C_BDC03 — constants · L117-L117

CONSTANTS:
            C_BDC03(9) TYPE C       VALUE 'Type'.

C_BDC04 — constants · L118-L118

CONSTANTS:
            C_BDC04(9) TYPE C       VALUE 'Length'.

C_BDC05 — constants · L119-L119

CONSTANTS:
            C_BDC05(9) TYPE C       VALUE 'Required'.

C_BDC06 — constants · L120-L120

CONSTANTS:
            C_BDC06(9) TYPE C       VALUE 'Example'.

ZFICOM (201건)

ICON — type-pool · L7-L7

TYPE-POOLS : SHLP, KCDE, VRM, ICON, TPIT.

KCDE — type-pool · L7-L7

TYPE-POOLS : SHLP, KCDE, VRM, ICON, TPIT.

SHLP — type-pool · L7-L7

TYPE-POOLS : SHLP, KCDE, VRM, ICON, TPIT.

TPIT — type-pool · L7-L7

TYPE-POOLS : SHLP, KCDE, VRM, ICON, TPIT.

VRM — type-pool · L7-L7

TYPE-POOLS : SHLP, KCDE, VRM, ICON, TPIT.

T001 — tables · L11-L11

TABLES : T001.  " Company Codes

T005 — tables · L12-L12

TABLES:
         T005.  " Land

BKPF — tables · L13-L13

TABLES:
         BKPF.  " Accounting Document Heade

BSEG — tables · L14-L14

TABLES:
         BSEG.  " Accounting Document Segment

BSID — tables · L15-L15

TABLES:
         BSID.  " Accounting: Secondary Index for Customers

BSAD — tables · L16-L16

TABLES:
         BSAD.  " Accounting: Secondary Index for Customers

BSIK — tables · L18-L18

TABLES:
         BSIK.  " Accounting: Secondary Index for Vendors

BSAK — tables · L19-L19

TABLES:
         BSAK.  " Accounting: Secondary Index for Vendors

BSIS — tables · L21-L21

TABLES:
         BSIS.  " Accounting: Secondary Index for G/L Accounts

BSAS — tables · L22-L22

TABLES:
         BSAS.  " Accounting: Secondary Index for G/L Accounts

BSEC — tables · L24-L24

TABLES:
         BSEC.  " One-Time Account Data Document Segment

BSET — tables · L25-L25

TABLES:
         BSET.  " Tax Data Document Segment

BSED — tables · L26-L26

TABLES:
         BSED.  " n  Bill of Exchange Fields Docume

VBKPF — tables · L27-L27

TABLES:
         VBKPF.  " Document Header for Document Parking

VBSEGS — tables · L28-L28

TABLES:
         VBSEGS.  " Document Segment for Document Parking

VBSEGD — tables · L30-L30

TABLES:
         VBSEGD.  " Document Segment for Customer Document Parking

VBSEGK — tables · L31-L31

TABLES:
         VBSEGK.  " Document Segment for Vendor Document Parking

VBSET — tables · L32-L32

TABLES:
         VBSET.  " Document Segment for Taxes Document Parking

VBSEC — tables · L33-L33

TABLES:
         VBSEC.  " Document Parking One-Time Data Document Segment

SKA1 — tables · L34-L34

TABLES:
         SKA1.  " G/L Account Master (Chart of Accounts)

SKB1 — tables · L35-L35

TABLES:
         SKB1.  " G/L account master (company code)

LFA1 — tables · L36-L36

TABLES:
         LFA1.  " Vendor Master (General Section)

LFB1 — tables · L37-L37

TABLES:
         LFB1.  " Vendor Master (Company Code)

KNA1 — tables · L38-L38

TABLES:
         KNA1.  " General Data in Customer Master

KNB1 — tables · L39-L39

TABLES:
         KNB1.  " Customer Master (Company Code)

ADRC — tables · L40-L40

TABLES:
         ADRC.  " Addresses (Business Address Services)

USR01 — tables · L41-L41

TABLES:
         USR01.  " User master record (runtime data)

USR05 — tables · L42-L42

TABLES:
         USR05.  " User Master Parameter ID

USR21 — tables · L43-L43

TABLES:
         USR21.  " Assign user name address key

ZFIT0160 — tables · L45-L45

TABLES:
         ZFIT0160.  " FI 권한 관리 테이블

CTU_PARAMS — tables · L48-L48

TABLES : CTU_PARAMS.  "CALL TRANSACTION USING...

GT_SQL — data · L54-L54

DATA : GT_SQL(72) OCCURS 0 WITH HEADER LINE.

GT_FIELD — data · L56-L56

DATA : GT_FIELD LIKE HELP_VALUE OCCURS 0 WITH HEADER LINE.

GV_FIELD — data · L57-L57

DATA:
       GV_FIELD LIKE HELP_INFO-FIELDNAME.

GV_VALUE — data · L58-L58

DATA:
       GV_VALUE LIKE HELP_INFO-FLDVALUE.

GV_TABIX — data · L59-L59

DATA:
       GV_TABIX LIKE SY-TABIX.

GT_SHLP — data · L61-L61

DATA : GT_SHLP      TYPE SHLP_DESCR_T.

GT_DYNFIELDS — data · L63-L63

DATA : GT_DYNFIELDS LIKE DYNPREAD   OCCURS 0 WITH HEADER LINE.

GT_RETVALUES — data · L64-L64

DATA:
       GT_RETVALUES LIKE DDSHRETVAL OCCURS 0 WITH HEADER LINE.

GT_RECEIVE — data · L65-L65

DATA:
       GT_RECEIVE   LIKE DYNPREAD   OCCURS 0 WITH HEADER LINE.

GT_EXCODE — data · L66-L66

DATA:
       GT_EXCODE    TYPE TABLE OF SY-UCOMM.  " Button Control

GV_DBCNT — data · L68-L68

DATA : GV_DBCNT LIKE SY-DBCNT.  " Inquiry count

GV_TFILL — data · L69-L69

DATA:
       GV_TFILL LIKE SY-TFILL.  " Current number of lines

GV_SUBRC — data · L70-L70

DATA:
       GV_SUBRC LIKE SY-SUBRC.  " Return Value

GV_UCOMM — data · L71-L71

DATA:
       GV_UCOMM LIKE SY-UCOMM.  " Function Code

GV_TITLE — data · L72-L72

DATA:
       GV_TITLE LIKE SY-TITLE.  " Title

GV_DATUM — data · L73-L73

DATA:
       GV_DATUM LIKE SY-DATUM.  " Date

GV_TYPE — data · L74-L74

DATA:
       GV_TYPE  LIKE DD01V-DATATYPE.  " Num/Char Flag

GV_SEQNO — data · L75-L75

DATA:
       GV_SEQNO(3) TYPE N.  " Seqence No

GV_CURSOR_FIELD — data · L76-L76

DATA:
       GV_CURSOR_FIELD(30).  " CURSOR FIELD

GV_CURSOR_LINE — data · L77-L77

DATA:
       GV_CURSOR_LINE LIKE SY-LILLI.  " CURSOR LINE

GV_10_D — data · L79-L79

DATA : GV_10_D(16) TYPE P DECIMALS 0.

GV_TABIN — data · L81-L81

DATA : GV_TABIN(06).  " total count

GV_INDEX — data · L82-L82

DATA:
       GV_INDEX(06).  " progress count

GV_KBETR — data · L83-L83

DATA:
       GV_KBETR(05).  " progress percent

GV_INDIC — data · L84-L84

DATA:
       GV_INDIC(80).  " progress status

GV_TEXT — data · L85-L85

DATA:
       GV_TEXT(100).

GF_CHECK — data · L87-L87

DATA : GF_CHECK(1).  " Input Check

GF_MARK — data · L88-L88

DATA:
       GF_MARK(1).  " Select Flag

GF_LOCK — data · L89-L89

DATA:
       GF_LOCK(1).  " Lock Flag

GF_ANSWER — data · L90-L90

DATA:
       GF_ANSWER(1).  " MessageBox Return Value

GF_COLOR — data · L91-L91

DATA:
       GF_COLOR(1).  " LINE COLOR

GV_NAME — data · L94-L94

DATA : GV_NAME  TYPE VRM_ID.

GT_LIST — data · L95-L95

DATA:
       GT_LIST  TYPE VRM_VALUES.

GS_VALUE — data · L96-L96

DATA:
       GS_VALUE LIKE LINE OF GT_LIST.

GV_FNAME — data · L98-L98

DATA : GV_FNAME   TYPE RS38L_FNAM.

GS_OPTIONS — data · L99-L99

DATA:
       GS_OPTIONS TYPE SSFCOMPOP.

GS_DEVICE — data · L100-L100

DATA:
       GS_DEVICE  TYPE SSFCTRLOP.

GV_TDDEST — data · L101-L101

DATA:
       GV_TDDEST  LIKE GS_OPTIONS-TDDEST VALUE 'LOCL'.

GS_JOB_OUTPUT_INFO — data · L102-L102

DATA:
       GS_JOB_OUTPUT_INFO TYPE SSFCRESCL.

GV_BELNR — data · L104-L104

DATA : GV_BELNR  LIKE BKPF-BELNR.

GV_BUKRS — data · L105-L105

DATA:
       GV_BUKRS  LIKE BKPF-BUKRS.

GV_GJAHR — data · L106-L106

DATA:
       GV_GJAHR  LIKE BKPF-GJAHR.

GV_BUZEI — data · L107-L107

DATA:
       GV_BUZEI  LIKE BSEG-BUZEI.

GT_BBKPF — data · L108-L108

DATA : GT_BBKPF  LIKE BBKPF OCCURS 0 WITH HEADER LINE.

GT_BBSEG — data · L109-L109

DATA:
       GT_BBSEG  LIKE BBSEG OCCURS 0 WITH HEADER LINE.

GT_BBTAX — data · L110-L110

DATA:
       GT_BBTAX  LIKE BBTAX OCCURS 0 WITH HEADER LINE.

GT_BWITH — data · L111-L111

DATA:
       GT_BWITH  LIKE BWITH OCCURS 0 WITH HEADER LINE.

GT_BSELK — data · L112-L112

DATA:
       GT_BSELK  LIKE BSELK OCCURS 0 WITH HEADER LINE.

GT_BSELP — data · L113-L113

DATA:
       GT_BSELP  LIKE BSELP OCCURS 0 WITH HEADER LINE.

GT_FIMSG — data · L115-L115

DATA:
       GT_FIMSG  LIKE FIMSG OCCURS 0 WITH HEADER LINE.

GT_ACCCHG — data · L117-L117

DATA : GT_ACCCHG LIKE ACCCHG OCCURS 0 WITH HEADER LINE.

GS_ACCPMBLK — data · L119-L119

DATA : GS_ACCPMBLK LIKE ACCPMBLK.

GT_ROWS — data · L121-L121

DATA : GT_ROWS TYPE LVC_T_ROW.  " ALV control: Table rows

GS_ROWS — data · L122-L122

DATA:
       GS_ROWS TYPE LVC_S_ROW.  " ALV control: Line description

GV_ROW_POS — data · L123-L123

DATA:
       GV_ROW_POS TYPE I.

GT_EXTAB — data · L125-L125

DATA : GT_EXTAB LIKE SY-UCOMM OCCURS 0 WITH HEADER LINE.

GS_EMAIL_DATA — data · L127-L129

DATA : BEGIN OF GS_EMAIL_DATA.
        INCLUDE STRUCTURE SODOCCHGI1.
DATA : END OF GS_EMAIL_DATA.

GT_EMAIL — data · L131-L131

DATA : GT_EMAIL LIKE SOMLRECI1 OCCURS 0 WITH HEADER LINE.

GT_ETEXT — data · L132-L132

DATA:
       GT_ETEXT LIKE SOLISTI1  OCCURS 0 WITH HEADER LINE.

GT_RSPAR — data · L134-L134

DATA : GT_RSPAR LIKE RSPARAMS OCCURS 10 WITH HEADER LINE.

GV_SMTP_ADDR — data · L136-L136

DATA : GV_SMTP_ADDR LIKE ADR6-SMTP_ADDR.

GF_FIRST — data · L138-L138

DATA : GF_FIRST(1) TYPE C.

GF_NEW — data · L139-L139

DATA:
       GF_NEW(1)   TYPE C.

GF_END — data · L140-L140

DATA:
       GF_END(1)   TYPE C.

GF_LAST — data · L141-L141

DATA:
       GF_LAST(1)  TYPE C.

GV_BUK — data · L144-L144

DATA : GV_BUK   LIKE BKPF-BUKRS.  " Company Code

GV_KURST — data · L145-L145

DATA:
       GV_KURST LIKE TCURR-KURST.  " Exchange rate type

GV_KALSM — data · L146-L146

DATA:
       GV_KALSM LIKE T005-KALSM.  " Procedure

GV_KOKRS — data · L147-L147

DATA:
       GV_KOKRS LIKE CSKT-KOKRS.  " Controlling Area

GT_BSE — data · L149-L165

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

DATA : BEGIN OF GT_BDC OCCURS 0.
        INCLUDE STRUCTURE BDCDATA.
DATA : END OF GT_BDC.

GT_MESS — data · L172-L172

DATA : GT_MESS LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.

GV_MODE — data · L174-L174

DATA : GV_MODE(1) VALUE 'N'.  "BDC MODE

GS_LOG — data · L176-L176

DATA : GS_LOG             TYPE BAL_S_LOG.

GS_LOG_HANDLE — data · L177-L177

DATA:
       GS_LOG_HANDLE      TYPE BALLOGHNDL.

GS_DISPLAY_PROFILE — data · L178-L178

DATA:
       GS_DISPLAY_PROFILE TYPE BAL_S_PROF.

GT_LOG_HANDLE — data · L179-L179

DATA:
       GT_LOG_HANDLE      TYPE BAL_T_LOGH.

GS_MSG — data · L180-L180

DATA:
       GS_MSG             TYPE BAL_S_MSG.

GS_BAL_FCAT — data · L181-L181

DATA:
       GS_BAL_FCAT        TYPE BAL_S_FCAT.

GV_COL_POS — data · L182-L182

DATA:
       GV_COL_POS         TYPE I.

GT_STRUCT — data · L185-L193

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

CONSTANTS:
          C_BUKRS LIKE BKPF-BUKRS   VALUE 'KR01'.  " Company Code

C_WAERS — constants · L199-L199

CONSTANTS:
          C_WAERS LIKE BKPF-WAERS   VALUE 'KRW'.  " Currency Key

C_LANGU — constants · L200-L200

CONSTANTS:
          C_LANGU LIKE SKAT-SPRAS   VALUE '3'.  " Country Key

C_LAND1 — constants · L201-L201

CONSTANTS:
          C_LAND1 LIKE T001-LAND1   VALUE 'KR'.  " Country Key

C_KTOPL — constants · L202-L202

CONSTANTS:
          C_KTOPL LIKE SKAT-KTOPL   VALUE '1000'.  " Chart of Accounts

C_KOKRS — constants · L203-L203

CONSTANTS:
          C_KOKRS LIKE CSKT-KOKRS   VALUE 'KR01'.  " Controlling Area

C_KALSM — constants · L204-L204

CONSTANTS:
          C_KALSM LIKE T007S-KALSM  VALUE 'TAXKR'.  " Procedure

C_KURST — constants · L205-L205

CONSTANTS:
          C_KURST LIKE TCURR-KURST  VALUE 'M'.  " Exchange Rate Type

C_SPRAS — constants · L206-L206

CONSTANTS:
          C_SPRAS LIKE T001-SPRAS   VALUE '3'.  " Language Key

C_PARID — constants · L207-L207

CONSTANTS:
          C_PARID LIKE USR05-PARID  VALUE 'ZSP'.  " 사용자종속언어

C_A — constants · L208-L208

CONSTANTS:
          C_A(1)  TYPE C            VALUE 'A'.

C_B — constants · L209-L209

CONSTANTS:
          C_B(1)  TYPE C            VALUE 'B'.

C_C — constants · L210-L210

CONSTANTS:
          C_C(1)  TYPE C            VALUE 'C'.

C_D — constants · L211-L211

CONSTANTS:
          C_D(1)  TYPE C            VALUE 'D'.

C_E — constants · L212-L212

CONSTANTS:
          C_E(1)  TYPE C            VALUE 'E'.

C_F — constants · L213-L213

CONSTANTS:
          C_F(1)  TYPE C            VALUE 'F'.

C_G — constants · L214-L214

CONSTANTS:
          C_G(1)  TYPE C            VALUE 'G'.

C_H — constants · L215-L215

CONSTANTS:
          C_H(1)  TYPE C            VALUE 'H'.

C_I — constants · L216-L216

CONSTANTS:
          C_I(1)  TYPE C            VALUE 'I'.

C_J — constants · L217-L217

CONSTANTS:
          C_J(1)  TYPE C            VALUE 'J'.

C_K — constants · L218-L218

CONSTANTS:
          C_K(1)  TYPE C            VALUE 'K'.

C_L — constants · L219-L219

CONSTANTS:
          C_L(1)  TYPE C            VALUE 'L'.

C_M — constants · L220-L220

CONSTANTS:
          C_M(1)  TYPE C            VALUE 'M'.

C_N — constants · L221-L221

CONSTANTS:
          C_N(1)  TYPE C            VALUE 'N'.

C_O — constants · L222-L222

CONSTANTS:
          C_O(1)  TYPE C            VALUE 'O'.

C_P — constants · L223-L223

CONSTANTS:
          C_P(1)  TYPE C            VALUE 'P'.

C_Q — constants · L224-L224

CONSTANTS:
          C_Q(1)  TYPE C            VALUE 'Q'.

C_R — constants · L225-L225

CONSTANTS:
          C_R(1)  TYPE C            VALUE 'R'.

C_S — constants · L226-L226

CONSTANTS:
          C_S(1)  TYPE C            VALUE 'S'.

C_T — constants · L227-L227

CONSTANTS:
          C_T(1)  TYPE C            VALUE 'T'.

C_U — constants · L228-L228

CONSTANTS:
          C_U(1)  TYPE C            VALUE 'U'.

C_V — constants · L229-L229

CONSTANTS:
          C_V(1)  TYPE C            VALUE 'V'.

C_W — constants · L230-L230

CONSTANTS:
          C_W(1)  TYPE C            VALUE 'W'.

C_X — constants · L231-L231

CONSTANTS:
          C_X(1)  TYPE C            VALUE 'X'.

C_Y — constants · L232-L232

CONSTANTS:
          C_Y(1)  TYPE C            VALUE 'Y'.

C_Z — constants · L233-L233

CONSTANTS:
          C_Z(1)  TYPE C            VALUE 'Z'.

C_0 — constants · L234-L234

CONSTANTS:
          C_0(1)  TYPE C            VALUE '0'.

C_1 — constants · L235-L235

CONSTANTS:
          C_1(1)  TYPE C            VALUE '1'.

C_2 — constants · L236-L236

CONSTANTS:
          C_2(1)  TYPE C            VALUE '2'.

C_3 — constants · L237-L237

CONSTANTS:
          C_3(1)  TYPE C            VALUE '3'.

C_4 — constants · L238-L238

CONSTANTS:
          C_4(1)  TYPE C            VALUE '4'.

C_5 — constants · L239-L239

CONSTANTS:
          C_5(1)  TYPE C            VALUE '5'.

C_6 — constants · L240-L240

CONSTANTS:
          C_6(1)  TYPE C            VALUE '6'.

C_7 — constants · L241-L241

CONSTANTS:
          C_7(1)  TYPE C            VALUE '7'.

C_8 — constants · L242-L242

CONSTANTS:
          C_8(1)  TYPE C            VALUE '8'.

C_9 — constants · L243-L243

CONSTANTS:
          C_9(1)  TYPE C            VALUE '9'.

C_EQ — constants · L244-L244

CONSTANTS:
          C_EQ(2) TYPE C            VALUE 'EQ'.

C_NE — constants · L245-L245

CONSTANTS:
          C_NE(2) TYPE C            VALUE 'NE'.

C_BT — constants · L246-L246

CONSTANTS:
          C_BT(2) TYPE C            VALUE 'BT'.

C_CP — constants · L247-L247

CONSTANTS:
          C_CP(2) TYPE C            VALUE 'CP'.

C_NP — constants · L248-L248

CONSTANTS:
          C_NP(2) TYPE C            VALUE 'NP'.

C_LE — constants · L249-L249

CONSTANTS:
          C_LE(2) TYPE C            VALUE 'LE'.

C_LT — constants · L250-L250

CONSTANTS:
          C_LT(2) TYPE C            VALUE 'LT'.

C_GE — constants · L251-L251

CONSTANTS:
          C_GE(2) TYPE C            VALUE 'GE'.

C_GT — constants · L252-L252

CONSTANTS:
          C_GT(2) TYPE C            VALUE 'GT'.

C_FBV0 — constants · L253-L253

CONSTANTS:
          C_FBV0  LIKE BKPF-TCODE VALUE 'FBV0'.  " 임시전표전기 T-Code

C_FBV1 — constants · L254-L254

CONSTANTS:
          C_FBV1  LIKE BKPF-TCODE VALUE 'FBV1'.  " 임시전표생성 T-Code

C_FB01 — constants · L255-L255

CONSTANTS:
          C_FB01  LIKE BKPF-TCODE VALUE 'FB01'.  " 전표생성 T-Code

C_FB05 — constants · L256-L256

CONSTANTS:
          C_FB05  LIKE BKPF-TCODE VALUE 'FB05'.  " 전표반제 T-Code

C_FB08 — constants · L257-L257

CONSTANTS:
          C_FB08  LIKE BKPF-TCODE VALUE 'FB08'.  " 전표역분개-Code

ALPHA_INPUT — macro · L267-L273

DEFINE ALPHA_INPUT.
  CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
    EXPORTING
      INPUT  = &1
    IMPORTING
      OUTPUT = &2.
END-OF-DEFINITION.

ALPHA_OUTPUT — macro · L282-L288

DEFINE ALPHA_OUTPUT.
  CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
    EXPORTING
      INPUT  = &1
    IMPORTING
      OUTPUT = &2.
END-OF-DEFINITION.

SET_RANGES — macro · L294-L301

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

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

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

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

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

DEFINE WRITE_STCD2.
  WRITE &1 TO &2 USING EDIT MASK '___-__-_____'.
END-OF-DEFINITION.

WRITE_STCD1 — macro · L367-L369

DEFINE WRITE_STCD1.
  WRITE &1 TO &2 USING EDIT MASK '______-_______'.
END-OF-DEFINITION.

L_LANG — data · unit 로컬 · L441-L441

  DATA : L_LANG LIKE SY-LANGU.

LV_PROG — data · unit 로컬 · L678-L678

  DATA : LV_PROG LIKE D020S-PROG.

LV_DNUM — data · unit 로컬 · L679-L679

DATA:
         LV_DNUM LIKE D020S-DNUM.

LV_LEN — data · unit 로컬 · L858-L858

  DATA : LV_LEN      TYPE I.

LV_POS — data · unit 로컬 · L859-L859

DATA:
         LV_POS      TYPE I.

LV_TYPE — data · unit 로컬 · L860-L860

DATA:
         LV_TYPE(3)  TYPE C.

LV_FILENAME — data · unit 로컬 · L861-L861

DATA:
         LV_FILENAME TYPE STRING.

LV_RAW_DATA — data · unit 로컬 · L862-L862

DATA:
         LV_RAW_DATA TYPE TRUXS_T_TEXT_DATA.

GT_XLS — data · unit 로컬 · L919-L919

  DATA: GT_XLS TYPE STANDARD TABLE OF KCDE_INTERN_STRUC WITH HEADER LINE.

— field-symbol · unit 로컬 · L920-L920

  FIELD-SYMBOLS <FS> TYPE ANY.

CHANGE_UNIT — macro · L1045-L1050

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

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

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

  DATA : LV_TEXT(100).

LV_PCEN — data · unit 로컬 · L1348-L1348

DATA:
         LV_PCEN(3).

ZFIR0120CLS (3건)

LCL_EVENT_RECEIVER_GRID — class · L7-L27

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

DATA : GV_EVENT1 TYPE REF TO LCL_EVENT_RECEIVER_GRID.

GV_EVENT2 — data · L49-L49

DATA:
       GV_EVENT2 TYPE REF TO LCL_EVENT_RECEIVER_GRID.

ZFIR0120TOP (48건)

ZUNICT1000 — tables · L7-L7

TABLES: ZUNICT1000.  " [ZUNIC] 법인카드 마스터

ZUNICT1001 — tables · L8-L8

TABLES:
        ZUNICT1001.  " [ZUNIC] 법인카드 승인 데이타

ZUNICT1002 — tables · L9-L9

TABLES:
        ZUNICT1002.  " [ZUNIC] 법인카드 매입 데이타

ZUNICT1003 — tables · L10-L10

TABLES:
        ZUNICT1003.  " [ZUNIC] 법인카드 청구 데이타

TKA02 — tables · L11-L11

TABLES:
        TKA02.

GT_HEAD — data · L17-L49

DATA: BEGIN OF GT_HEAD  OCCURS 0,
        CICON    LIKE ICON-ID,
        BUKRS    LIKE ZUNICT1002-BUKRS,
        COMP     LIKE ZUNICT1000-COMP,
        CARDNO   LIKE ZUNICT1002-CARDNO,
        CUSER    LIKE ZUNICT1000-CUSER,
        LIFNR    LIKE ZUNICT1000-LIFNR,
        STCD2    LIKE LFA1-STCD2,
        LIFNR_T  LIKE LFA1-NAME1,
        AMT_A    LIKE ZUNICT1002-PU_AMT,      "처리금액
        AMT_B    LIKE ZUNICT1002-PU_AMT,      "대상금액
        AMT_C    LIKE ZUNICT1002-PU_AMT,      "차액
        AMT_D    LIKE ZUNICT1002-PU_AMT,      "미청구액
        AMT_E    LIKE ZUNICT1002-PU_AMT,      "기반제액
        AMT_F    LIKE ZUNICT1002-PU_AMT,      "청구금액
        AMT_G    LIKE ZUNICT1002-PU_AMT,      "할인금액
        AMT_H    LIKE ZUNICT1002-PU_AMT,      "잔액
        KOSTL    LIKE ZUNICT1000-KOSTL,
        KOSTL_T  LIKE CSKT-LTEXT,
        AUGBL    LIKE BSEG-AUGBL,             "반제전표
        AUAHR    LIKE BKPF-GJAHR,             "반제년도
        AUGDT    LIKE BSEG-AUGDT,             "반제일
        STBLG    LIKE BKPF-STBLG,             "역분개전표
        STJAH    LIKE BKPF-STJAH,             "역분개년도
        MESSG(100) TYPE C,                    "에러메시지
        CDATE    LIKE ZFIS0050-CDATE,
        CTIME    LIKE ZFIS0050-CTIME,
        CNAME    LIKE ZFIS0050-CNAME,
        UDATE    LIKE ZFIS0050-UDATE,
        UTIME    LIKE ZFIS0050-UTIME,
        UNAME    LIKE ZFIS0050-UNAME,
        CHFLG(1) TYPE C,
      END OF GT_HEAD.

GT_ITEM — data · L51-L87

DATA: BEGIN OF GT_ITEM  OCCURS 0,
        BUKRS    LIKE ZUNICT1002-BUKRS,
        COMP     LIKE ZUNICT1000-COMP,
        CARDNO   LIKE ZUNICT1002-CARDNO,
        CUSER    LIKE ZUNICT1000-CUSER,
        LIFNR    LIKE ZUNICT1000-LIFNR,
        STCD2    LIKE LFA1-STCD2,
        LIFNR_T  LIKE LFA1-NAME1,
        KOSTL    LIKE ZUNICT1000-KOSTL,
        KOSTL_T  LIKE CSKT-LTEXT,
        AP_DATE  LIKE ZUNICT1002-AP_DATE,
        AP_NUM   LIKE ZUNICT1002-AP_NUM,
        PU_NUM   LIKE ZUNICT1002-PU_NUM,
        BELNR    LIKE ZUNICT1002-BELNR,
        GJAHR    LIKE ZUNICT1002-GJAHR,
        AP_AMT   LIKE ZUNICT1001-AP_AMT,
        PU_AMT   LIKE ZUNICT1002-PU_AMT,
        REQ_AMT  LIKE ZUNICT1003-REQ_AMT,
        STREGNM  LIKE ZUNICT1002-STREGNM,
        AMT_A    LIKE ZUNICT1002-PU_AMT,      "처리금액
        AMT_B    LIKE ZUNICT1002-PU_AMT,      "대상금액
        AMT_C    LIKE ZUNICT1002-PU_AMT,      "차액
        AMT_D    LIKE ZUNICT1002-PU_AMT,      "미청구액
        AMT_E    LIKE ZUNICT1002-PU_AMT,      "기반제액
        AMT_F    LIKE ZUNICT1002-PU_AMT,      "청구금액
        AMT_G    LIKE ZUNICT1002-PU_AMT,      "할인금액
        AMT_H    LIKE ZUNICT1002-PU_AMT,      "잔액
        STBLG    LIKE BKPF-STBLG,             "역분개전표
        STJAH    LIKE BKPF-STJAH,             "역분개년도
        BUZEI    LIKE BSEG-BUZEI,
        HKONT    LIKE BSEG-HKONT,
        KOSTL2   LIKE BSEG-KOSTL,
        AUGBL    LIKE BSEG-AUGBL,
        AUAHR    LIKE BKPF-GJAHR,
        AUGDT    LIKE BSEG-AUGDT,
        CHFLG(1) TYPE C,
      END OF GT_ITEM.

GT_ITEM2 — data · L89-L89

DATA: GT_ITEM2 LIKE GT_ITEM OCCURS 0 WITH HEADER LINE.

GT_Z1000 — data · L91-L91

DATA: GT_Z1000   LIKE ZUNICT1000 OCCURS 0 WITH HEADER LINE.

GT_Z1001 — data · L92-L92

DATA:
      GT_Z1001   LIKE ZUNICT1001 OCCURS 0 WITH HEADER LINE.

GT_Z1002 — data · L93-L93

DATA:
      GT_Z1002   LIKE ZUNICT1002 OCCURS 0 WITH HEADER LINE.

GT_Z1003 — data · L94-L94

DATA:
      GT_Z1003   LIKE ZUNICT1003 OCCURS 0 WITH HEADER LINE.

GT_Z0150 — data · L95-L95

DATA:
      GT_Z0150   LIKE ZFIT0150   OCCURS 0 WITH HEADER LINE.

GT_Z0151 — data · L96-L96

DATA:
      GT_Z0151   LIKE ZFIT0151   OCCURS 0 WITH HEADER LINE.

GT_Z0150_S — data · L97-L97

DATA:
      GT_Z0150_S LIKE ZFIT0150   OCCURS 0 WITH HEADER LINE.

GT_Z0151_S — data · L98-L98

DATA:
      GT_Z0151_S LIKE ZFIT0151   OCCURS 0 WITH HEADER LINE.

GT_BKPF — data · L99-L99

DATA:
      GT_BKPF    LIKE BKPF       OCCURS 0 WITH HEADER LINE.

GT_BSEG — data · L100-L100

DATA:
      GT_BSEG    LIKE BSEG       OCCURS 0 WITH HEADER LINE.

GT_AMT_G — data · L103-L107

DATA: BEGIN OF GT_AMT_G OCCURS 0,
        HKONT LIKE BSEG-HKONT,
        KOSTL LIKE BSEG-KOSTL,
        DMBTR LIKE BSEG-DMBTR,
      END OF GT_AMT_G.

GT_LFA1 — data · L110-L114

DATA: BEGIN OF GT_LFA1 OCCURS 0,
        LIFNR LIKE LFA1-LIFNR,
        STCD2 LIKE LFA1-STCD2,
        NAME1 LIKE LFA1-NAME1,
      END OF GT_LFA1.

GT_CSKT — data · L117-L120

DATA: BEGIN OF GT_CSKT OCCURS 0,
        KOSTL LIKE CSKT-KOSTL,
        LTEXT LIKE CSKT-LTEXT,
      END OF GT_CSKT.

GT_DOMAIN — data · L123-L127

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.

GV_MONTH — data · L129-L129

DATA: GV_MONTH(2) TYPE N.

GV_HIDE — data · L130-L130

DATA:
      GV_HIDE(1)  TYPE C.  " 포스팅 가능 여부

R_BUDAT — ranges · L132-L132

RANGES: R_BUDAT FOR BKPF-BUDAT.

GT_FCAT_ITEM2 — data · L135-L135

DATA : GT_FCAT_ITEM2 TYPE LVC_T_FCAT.

GS_STABLE — data · L137-L137

DATA : GS_STABLE     TYPE LVC_S_STBL.

GC_SPLITTER — data · L138-L138

DATA:
       GC_SPLITTER   TYPE REF TO CL_GUI_SPLITTER_CONTAINER.

GC_CONTAINER1 — data · L139-L139

DATA:
       GC_CONTAINER1 TYPE REF TO CL_GUI_CONTAINER.

GC_CONTAINER2 — data · L140-L140

DATA:
       GC_CONTAINER2 TYPE REF TO CL_GUI_CONTAINER.

GV_ALV_GRID — data · L141-L141

DATA:
       GV_ALV_GRID   TYPE REF TO CL_GUI_ALV_GRID.

GV_ALV_GRID1 — data · L142-L142

DATA:
       GV_ALV_GRID1  TYPE REF TO CL_GUI_ALV_GRID.

GV_ALV_GRID2 — data · L143-L143

DATA:
       GV_ALV_GRID2  TYPE REF TO CL_GUI_ALV_GRID.

GV_LAYO — data · L144-L144

DATA:
       GV_LAYO       TYPE LVC_S_LAYO.

GV_LAYO1 — data · L145-L145

DATA:
       GV_LAYO1      TYPE LVC_S_LAYO.

GV_LAYO2 — data · L146-L146

DATA:
       GV_LAYO2      TYPE LVC_S_LAYO.

GV_VARI — data · L147-L147

DATA:
       GV_VARI       TYPE DISVARIANT.

GV_VARI1 — data · L148-L148

DATA:
       GV_VARI1      TYPE DISVARIANT.

GV_VARI2 — data · L149-L149

DATA:
       GV_VARI2      TYPE DISVARIANT.

C_BLART — constants · L154-L154

CONSTANTS: C_BLART LIKE BKPF-BLART VALUE 'KZ'.    "공급업체 지급

P_BUKRS — parameter · L161-L161

PARAMETERS: P_BUKRS LIKE T001-BUKRS MEMORY ID BUK OBLIGATORY.

P_SPMON — parameter · L162-L162

PARAMETERS:
            P_SPMON LIKE S001-SPMON OBLIGATORY.

P_COMP — parameter · L163-L163

PARAMETERS:
            P_COMP  LIKE ZUNICT1000-COMP OBLIGATORY.

P_RA — parameter · L169-L169

PARAMETERS : P_RA RADIOBUTTON GROUP G1.     "전체

P_RB — parameter · L171-L171

PARAMETERS : P_RB RADIOBUTTON GROUP G1.     "차이자료

P_RC — parameter · L180-L180

PARAMETERS : P_RC RADIOBUTTON GROUP G2.     "전표생성

P_RD — parameter · L182-L182

PARAMETERS : P_RD RADIOBUTTON GROUP G2.     "이력조회

P_BUDAT — parameter · L189-L189

PARAMETERS: P_BUDAT LIKE BKPF-BUDAT OBLIGATORY.

ZFIR0120F01 (5건)

LT_DOCU — data · unit 로컬 · L149-L152

  DATA: BEGIN OF LT_DOCU OCCURS 0,
          AUGBL LIKE BSEG-AUGBL,
          AUGDT LIKE BSEG-AUGDT,
        END OF LT_DOCU.

LT_Z1001 — data · unit 로컬 · L285-L285

  DATA: LT_Z1001 LIKE ZUNICT1001 OCCURS 0 WITH HEADER LINE.

LT_Z1003 — data · unit 로컬 · L287-L287

DATA:
        LT_Z1003 LIKE ZUNICT1003 OCCURS 0 WITH HEADER LINE.

LV_CNT — data · unit 로컬 · L1270-L1270

  DATA: LV_CNT(3)  TYPE N.

LV_LAST — data · unit 로컬 · L1271-L1271

DATA:
        LV_LAST(1) TYPE C.

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 ZFIR0120 L32-54 1 INITIALIZATION 에서 ALV 설정을 준비하고 정산월(전월)·카드사(롯데카드 210)·전기일(당일) 기본값을 설정한다.
START-OF-SELECTION EVENT ZFIR0120 L55-63 1 START-OF-SELECTION 에서 회사코드 권한(AUTHORITY_BUKRS)을 검증하고 GET_DATA 로 수불 I/F 이력을 조회하는 디스패치 블록이다.
END-OF-SELECTION EVENT ZFIR0120 L64-70 1 END-OF-SELECTION 에서 조회 결과 GT_HEAD 가 없으면 메시지 S003 후 종료하고 있으면 화면 0100 을 호출하는 블록이다.
LCL_EVENT_RECEIVER_GRID~HANDLE_HOTSPOT_CLICK METHOD ZFIR0120CLS L33-35 0 ALV 그리드 핫스팟 클릭 이벤트를 받아 HOTSPOT_CLICK 서브루틴으로 위임하는 이벤트 핸들러다.
LCL_EVENT_RECEIVER_GRID~HANDLE_HOTSPOT_CLICK2 METHOD ZFIR0120CLS L37-39 0 두 번째 ALV 그리드의 핫스팟 클릭 이벤트를 HOTSPOT_CLICK2 서브루틴으로 위임하는 이벤트 핸들러다.
LCL_EVENT_RECEIVER_GRID~HANDLE_DOUBLE_CLICK METHOD ZFIR0120CLS L41-43 0 ALV 그리드 더블클릭 이벤트를 받아 DOUBLE_CLICK 서브루틴으로 위임하는 이벤트 핸들러다.
GET_DATA FORM ZFIR0120F01 L9-49 2 정산월(P_SPMON)로 조회기간 범위를 만들고 전표 생성 모드면 이력·승인·매입·청구·전표 아이템을 읽어 대조 데이터를, 이력조회 모드면 저장 이력을 읽어 표시 데이터를 만든다.
GET_ZUNICT1001 FORM ZFIR0120F01 L55-83 1 법인카드 승인내역과 카드 마스터, 관련 전표 헤더를 조회한다.
GET_ZUNICT1002 FORM ZFIR0120F01 L89-117 1 회사코드·카드사·정산월 조건으로 법인카드 매입내역(ZUNICT1002)을 읽고 카드 마스터(ZUNICT1000)와 기표 전표 헤더(BKPF)를 추가 조회한다.
GET_ZUNICT1003 FORM ZFIR0120F01 L123-142 1 회사코드·카드사·정산월 조건으로 법인카드 청구내역(ZUNICT1003)을 읽고 해당 카드의 카드 마스터(ZUNICT1000)를 추가 조회한다.
GET_ZFIT0150 FORM ZFIR0120F01 L148-226 2 정산 이력 테이블 ZFIT0150/ZFIT0151 에서 해당 월의 기존 저장내역과 관련 전표 헤더를 읽고, 전표 생성 모드에서 역분개되지 않은 반제전표가 이미 있으면 중복 처리를 막는다.
GET_BSEG FORM ZFIR0120F01 L232-278 2 카드 마스터를 중복 제거한 뒤 카드사 공급업체(LFA1)·회사코드(T001)·관리회계영역(TKA02)·코스트센터 텍스트(CSKT)를 읽고, 전표 헤더 기준으로 전표 아이템(BSEG)을 조회한다.
DISPLAY_DATA FORM ZFIR0120F01 L284-744 8 카드 매입내역(ZUNICT1002)을 기준으로 승인·청구 내역과 기표 전표(BKPF/BSEG)를 대조해 처리금액·대상금액·청구·할인·차액·미청구액을 계산하고 아이템(GT_ITEM)과 카드별 헤더(GT_HEAD)를 만든다(1/2 창).
DISPLAY_DATA_2 FORM ZFIR0120F01 L750-771 1 정산 이력 조회 모드에서 저장된 헤더(ZFIT0150)와 상세(ZFIT0151) 이력을 GT_HEAD/GT_ITEM 으로 옮기고 반제전표 유무에 따라 신호등 아이콘을 설정한다.
SPLITTER_CONTAINER FORM ZFIR0120F01 L777-829 0 화면 0100 의 커스텀 컨테이너에 2행 스플리터를 만들어 헤더/상세 ALV 그리드 객체 두 개를 생성하는 컨트롤 플러밍 FORM 이다.
CREATE_AND_INIT_CONTROLS_CON FORM ZFIR0120F01 L838-865 0 두 ALV 그리드에 핫스팟·더블클릭 이벤트 핸들러를 등록하고 레이아웃·툴바 제외·필드카탈로그를 설정해 그리드를 표시하는 ALV 초기화 플러밍 FORM 이다.
SET_GRID_LAYOUT1 FORM ZFIR0120F01 L874-889 0 헤더/상세 두 ALV 그리드의 레이아웃(제목, 열 최적화, 선택모드, 줄무늬)을 설정하는 ALV 플러밍 FORM 이다.
ALV_GRID_DISPLAY1 FORM ZFIR0120F01 L898-913 1 헤더 필드카탈로그를 만든 뒤 GV_ALV_GRID1->SET_TABLE_FOR_FIRST_DISPLAY로 임시전표 헤더 목록(GT_HEAD)을 상단 ALV에 표시하는 FORM이다.
SET_FIELD_CATALOGS1 FORM ZFIR0120F01 L922-1032 0 헤더 ALV(GT_HEAD)의 필드카탈로그를 생성하고 상태 아이콘·카드번호·금액·코스트센터·반제전표(핫스팟)·오류메시지 컬럼 속성을 설정하는 ALV 플러밍 FORM 이다.
ALV_GRID_DISPLAY2 FORM ZFIR0120F01 L1041-1056 1 아이템 필드카탈로그를 만든 뒤 GV_ALV_GRID2->SET_TABLE_FOR_FIRST_DISPLAY로 선택 전표의 아이템 목록(GT_ITEM2)을 하단 ALV에 표시하는 FORM이다.
SET_FIELD_CATALOGS2 FORM ZFIR0120F01 L1065-1169 0 아이템 ALV(GT_ITEM)의 필드카탈로그를 생성하고 카드번호·사용자·공급업체·승인/매입번호·전표번호(핫스팟)·금액 컬럼의 텍스트·정렬·통화 속성을 설정하는 ALV 플러밍 FORM 이다.
HOTSPOT_CLICK FORM ZFIR0120F01 L1179-1210 2 헤더 ALV 핫스팟 클릭 시 카드번호(CARDNO)면 해당 카드의 상세 아이템을 GT_ITEM2 로 추려 상세 그리드를 갱신하고, 반제전표(AUGBL)면 FB03 으로 전표를 조회한다.
HOTSPOT_CLICK2 FORM ZFIR0120F01 L1219-1235 1 상세 ALV 에서 전표번호(BELNR) 핫스팟 클릭 시 파라미터 ID 를 설정하고 FB03 으로 회계전표를 조회한다.
DOUBLE_CLICK FORM ZFIR0120F01 L1244-1263 1 헤더 ALV 더블클릭 시 해당 회사코드·카드번호의 상세 아이템(GT_ITEM)을 GT_ITEM2 로 추려 상세 그리드 갱신용 OK 코드 ZUSER 를 발생시킨다.
DOCUMENT_POSTING FORM ZFIR0120F01 L1269-1375 3 카드별 청구 정산 내역으로 반제/미결 전표 데이터를 만들고 카드 300건 단위로 전표를 생성한 뒤 정산 이력을 저장한다.
MAKE_BSELK FORM ZFIR0120F01 L1381-1391 1 FB05 반제 전기를 위한 반제 계정 선택 헤더(BSELK)에 공급업체(LIFNR)·회사코드·계정유형 K·특별G/L 제외 지시자를 채운다.
MAKE_BKPF FORM ZFIR0120F01 L1397-1410 1 FB05 반제 전기용 전표 헤더(BBKPF)를 전표유형 KZ, 전기일, 회사코드, 현지통화, 반제 트랜잭션 UMBUCHNG(대체전기)로 구성한다.
MAKE_BSEG FORM ZFIR0120F01 L1416-1435 1 코스트센터별 청구할인 금액(GT_AMT_G)을 G/L 계정 라인(BBSEG)으로 만들어 금액 부호에 따라 전기키 50/40 과 반대전기 지시자를 설정한다.
BDC_FB05 FORM ZFIR0120F01 L1441-1525 2 구성한 반제 데이터로 전표를 전기하고 결과를 화면 테이블·정산 이력에 반영한다.
USER_COMMAND_0100 INPUT MODULE ZFIR0120I01 L9-17 1 화면 0100 PAI 에서 POST 기능코드일 때 DOCUMENT_POSTING 을 호출해 전표를 생성하는 사용자 명령 MODULE 이다.
STATUS_0100 OUTPUT MODULE ZFIR0120O01 L10-20 0
CREATE_INSTANCE_CONTROLS OUTPUT MODULE ZFIR0120O01 L26-49 0