본문 바로가기

Ⅰ. ERP/1. ABAP

[ABAP] BDC 레코딩 만들기

728x90

저는 SD 가격조건 등록을 BDC로 만들어볼거에요. 

 

시스템 -> 서비스 -> 배치입력 -> 리코드 클릭

 

1. 신규 기록을 생성합니다. 

2. T-CODE를 입력하고 기본값에 체크합니다. 

3. 원하는 엑티비티를 하고 나면 이러한 레코딩이 생성된다.

아래 DYNPRO 소스를 이용해서 가공을 한다. 

FORM DYNPRO  USING  PV_DYNBEGIN
                    PV_FNAM
                    PV_FVAL.

* - Prefix 정의 - Form Parameter
*   1. PT_  : Internal Table or Ranges
*   2. PS_  : Structure
*   3. PV_  : Variables
*   4. PR_ : Reference Variables

  CLEAR: GS_BDCDATA.

  IF PV_DYNBEGIN EQ ABAP_TRUE.
    GS_BDCDATA-DYNBEGIN = ABAP_TRUE.
    GS_BDCDATA-PROGRAM  = PV_FNAM.
    GS_BDCDATA-DYNPRO   = PV_FVAL.
    APPEND GS_BDCDATA TO GT_BDCDATA.
  ELSE.
    GS_BDCDATA-FNAM = PV_FNAM.
    GS_BDCDATA-FVAL = PV_FVAL.
    APPEND GS_BDCDATA TO GT_BDCDATA.
  ENDIF.

ENDFORM.                    " DYNPRO

예시

  PERFORM DYNPRO USING:

* START ID     프로그램 ID         SCREEN NO.  (START ID가 X 일때)
* STARTID      FIELDNAME           FIELD VALUE.(START ID가 X가 아닐때)
    'X'       'SAPMV13A'          '0100', "프로그램명
    ' '       'RV13A-KSCHL'       PA_KSCHL,    "조건
    ' '       'BDC_OKCODE'        '/00',   "키값 (ENTER)
    'X'       'SAPLV14A'          '0100',   "화면번호
    ' '       'RV130-SELKZ(01)'   ' ',         "
    ' '       'RV130-SELKZ(02)'   'X',         "
    ' '       'BDC_OKCODE'        '=WEIT', 
    'X'       'SAPMV13A'          '1701',
    ' '       'KOMG-VKORG'        VKORG변수,
    ' '       'KOMG-KUNNR'        KUNNR변수,
    ' '       'KOMG-HIENR'        HIENR변수,
    ' '       'KOMG-MATNR(01)'    LV_MATNR_변수,
    ' '       'KONP-KBETR(01)'    LV_KBETR_변수,
    ' '       'KONP-KONWA(01)'    KONWA변수,
    ' '       'RV13A-DATAB(01)'   <FS_DATA>-DATAB,
    ' '       'RV13A-DATBI(01)'   <FS_DATA>-DATBI,
    ' '       'BDC_OKCODE'        '=SICH'.

 

이렇게 하고 TEST 하면 BDC 활용한 프로그램 완성!

728x90