λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
πŸ§‘‍πŸ’Ό SAP/ABAP

[SAP ABAP] BAPI_REPMANCONF1_CREATE_MTS μ‚¬μš© 방법

by Jay Din 2025. 1. 24.
728x90
λ°˜μ‘ν˜•

 

1. BAPI_REPMANCONF1_CREATE_MTS λž€?

BAPI_REPMANCONF1_CREATE_MTS λŠ” SAP PP λͺ¨λ“ˆμ—μ„œ Make-to-Stock 생산(MTS) μ‹œλ‚˜λ¦¬μ˜€μ—μ„œ 생산 μ˜€λ”μ˜ 싀적 확인 및 μž…κ³  처리λ₯Ό μˆ˜ν–‰ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ˜λŠ” BAPIμž…λ‹ˆλ‹€.

이 BAPIλŠ” 생산 μ˜€λ”μ˜ μ΅œμ’… κ²°κ³Όλ¬Ό(μ™„μ œν’ˆ)을 μž…κ³  μ²˜λ¦¬ν•˜λ©΄μ„œ 싀적 확인(Confirmation)을 κΈ°λ‘ν•©λ‹ˆλ‹€.

 

2. μ£Όμš” κΈ°λŠ₯

  1. 생산 μ˜€λ”μ— λŒ€ν•œ 싀적 확인(Confirmation)κ³Ό λ™μ‹œμ— 자재 이동(Goods Movement)을 생성
  2. Make-to-Stock 생산(MTS) ν”„λ‘œμ„ΈμŠ€μ—μ„œ μ™„μ œν’ˆμ„ 재고둜 μž…κ³ 
  3. Scrap(슀크랩) 및 μž¬μž‘μ—…(Rework) μˆ˜λŸ‰μ„ 관리
  4. λ°±ν”ŒλŸ¬μ‹œ(Backflush) ν”„λ‘œμ„ΈμŠ€λ₯Ό μžλ™μœΌλ‘œ 처리

 

3. μ‚¬μš© μ‹œλ‚˜λ¦¬μ˜€

  1. 생산 μ˜€λ” 기반 싀적 확인
    • 생산 μ˜€λ”μ˜ μž‘μ—…μ΄ μ™„λ£Œλœ ν›„ 결과물을 μž…κ³  처리
    • 생산 μ˜€λ”μ— μžˆλŠ” BOM(Materials) 자재λ₯Ό μ†ŒλΉ„ 처리
  2. μ™„μ œν’ˆμ„ μž¬κ³ μ— μž…κ³ 
    • 생산 μ™„λ£Œλœ 결과물을 Make-to-Stock ν™˜κ²½μ—μ„œ μž…κ³ 
    • 이동 μœ ν˜•(Movement Type)을 μžλ™ 생성(예:131)
  3. μž¬μž‘μ—… λ˜λŠ” κ²°ν’ˆ 처리
    • 싀적 확인 μ‹œ μž¬μž‘μ—… μˆ˜λŸ‰μ΄λ‚˜ 슀크랩 μˆ˜λŸ‰μ„ μž…λ ₯ν•˜μ—¬ 처리.
  4. μžλ™ λ°±ν”ŒλŸ¬μ‹œ(Backflush)
    • BOM 자재λ₯Ό μžλ™μœΌλ‘œ 좜고 처리

 

4. μ£Όμš” νŒŒλΌλ―Έν„°

EXPORTING νŒŒλΌλ―Έν„°

νŒŒλΌλ―Έν„° μ„€λͺ…
BFLUSHFLAGS λ°±ν”ŒλŸ¬μ‹œ ν”Œλž˜κ·Έ, 자재 좜고 및 λ°±ν”ŒλŸ¬μ‹œ λ™μž‘μ— λŒ€ν•œ μ œμ–΄
BFLUSHDATAGEN κΈ°λ³Έ 데이터: 생산 μ˜€λ” 번호, 생산 μˆ˜λŸ‰, 증빙 λ‚ μ§œ, μ „κΈ° λ‚ μ§œ λ“±
BFLUSHDATAITEMS κ°œλ³„ ν•­λͺ© 데이터: 슀크랩 μˆ˜λŸ‰, μž¬μž‘μ—… μˆ˜λŸ‰ 

 

IMPORTING νŒŒλΌλ―Έν„°

νŒŒλΌλ―Έν„° μ„€λͺ…
CONFIRMATION μƒμ‚°λœ 싀적 확인 번호
RETURN BAPI 호좜 κ²°κ³Ό λ©”μ‹œμ§€ (성곡/였λ₯˜ λ©”μ‹œμ§€)

 

TABLES νŒŒλΌλ―Έν„°

νŒŒλΌλ―Έν„° μ„€λͺ…
GOODSMOVEMENTS 자재 이동 데이터(예: μ™„μ œν’ˆ μž…κ³ , BOM 자재 좜고)
SERIALNR μ‹œλ¦¬μ–Ό 번호 데이터(ν•„μš”μ‹œ)

 

5. BAPI_REPMANCONF1_CREATE_MTS 호좜 예제

λ‹€μŒμ€ BAPI_REPMANCONF1_CREATE_MTS λ₯Ό μ‚¬μš©ν•˜μ—¬ 생산 μ˜€λ”λ₯Ό 기반으둜 μ™„μ œν’ˆ μž…κ³ μ™€ 싀적 확인을 μˆ˜ν–‰ν•˜λŠ” μ˜ˆμ œμž…λ‹ˆλ‹€.

DATA: LS_BFLUSHFLAGS   TYPE BAPI_RM_FLG,       " λ°±ν”ŒλŸ¬μ‹œ ν”Œλž˜κ·Έ
      LS_BFLUSHDATAGEN TYPE BAPI_RM_DATGEN,    " 일반 데이터
      LT_GOODSMOVEMENTS TYPE TABLE OF BAPI2017_GM_ITEM_CREATE, " 자재 이동 ν…Œμ΄λΈ”
      LT_SERIALNR      TYPE TABLE OF BAPI_RM_DATSERIAL,        " μ‹œλ¦¬μ–Ό 번호 ν…Œμ΄λΈ”
      LS_RETURN        TYPE BAPIRET2,         " κ²°κ³Ό λ©”μ‹œμ§€
      LV_CONFIRMATION  TYPE BAPI_RM_DATKEY-CONFIRMATION.   		" μƒμ„±λœ 싀적 확인 번호

" 1. λ°±ν”ŒλŸ¬μ‹œ μ œμ–΄ ν”Œλž˜κ·Έ μ„€μ •
CLEAR LS_BFLUSHFLAGS.
LS_BFLUSHFLAGS-BCKFLTYPE = '01'.  " λ°±ν”ŒλŸ¬μ‹œ μœ ν˜• (01: 정상 처리)

" 2. κΈ°λ³Έ 데이터 μ„€μ •
CLEAR LS_BFLUSHDATAGEN.
LS_BFLUSHDATAGEN-PRODORDER   = '000000000010001958'.   " 생산 μ˜€λ” 번호
LS_BFLUSHDATAGEN-BACKFLQUANT = '100'.          " μƒμ‚°λœ μˆ˜λŸ‰
LS_BFLUSHDATAGEN-UNITOFMEASURE  = 'KG'.   	   " λ‹¨μœ„

LS_BFLUSHDATAGEN-SCRAPQUANT  = '0'.            " 슀크랩 μˆ˜λŸ‰
LS_BFLUSHDATAGEN-REWORKQUANT = '0'.            " μž¬μž‘μ—… μˆ˜λŸ‰

LS_BFLUSHDATAGEN-POSTDATE    = SY-DATUM.       " μ „κΈ° λ‚ μ§œ
LS_BFLUSHDATAGEN-DOCDATE     = SY-DATUM.       " 증빙 λ‚ μ§œ

LS_BFLUSHDATAGEN-PLANPLANT   = 'PL01'.         " ν”ŒλžœνŠΈ
LS_BFLUSHDATAGEN-PRODPLANT   = 'PL01'.         " κ³„νš ν”ŒλžœνŠΈ
LS_BFLUSHDATAGEN-STORAGELOC  = '1011'.     	   " μ €μž₯μœ„μΉ˜

LS_BFLUSHDATAGEN-PRODVERSION = 'DE08'.         " 생산버전
LS_BFLUSHDATAGEN-DOCHEADERTXT = 'HEADER test'.        " HEADER TEXT 

" 3. 자재 이동 데이터 μ„€μ •
DATA: LS_GOODSMOVEMENTS TYPE BAPI2017_GM_ITEM_CREATE.
CLEAR LS_GOODSMOVEMENTS.
LS_GOODSMOVEMENTS-MATERIAL  = 'MAT12345'.    " 자재 번호
LS_GOODSMOVEMENTS-PLANT     = 'PL01'.       " ν”ŒλžœνŠΈ
LS_GOODSMOVEMENTS-STGE_LOC  = '0010'.       " μ €μž₯ μœ„μΉ˜
LS_GOODSMOVEMENTS-MOVE_TYPE = '101'.        " 이동 μœ ν˜• (μž…κ³ )
LS_GOODSMOVEMENTS-ENTRY_QNT = '100'.        " μž…κ³  μˆ˜λŸ‰
LS_GOODSMOVEMENTS-ENTRY_UOM = 'EA'.         " λ‹¨μœ„
APPEND LS_GOODSMOVEMENTS TO LT_GOODSMOVEMENTS.

" 4. BAPI 호좜
CALL FUNCTION 'BAPI_REPMANCONF1_CREATE_MTS'
  EXPORTING
    BFLUSHFLAGS    = LS_BFLUSHFLAGS
    BFLUSHDATAGEN  = LS_BFLUSHDATAGEN
  IMPORTING
    CONFIRMATION   = LV_CONFIRMATION
    RETURN         = LS_RETURN
  TABLES
    GOODSMOVEMENTS = LT_GOODSMOVEMENTS
    SERIALNR       = LT_SERIALNR.

" 5. κ²°κ³Ό 확인 및 처리
IF LS_RETURN-TYPE = 'S'.
  WRITE: / '생산 μ˜€λ” 싀적 확인 및 μž…κ³  성곡!',
         / 'μƒμ„±λœ 싀적 확인 번호: ', LV_CONFIRMATION.
ELSE.
  WRITE: / '였λ₯˜ λ°œμƒ: ', LS_RETURN-MESSAGE.
ENDIF.

" 6. νŠΈλžœμž­μ…˜ 컀밋 λ˜λŠ” λ‘€λ°±
IF LS_RETURN-TYPE = 'S'.
  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
      WAIT = 'X'.
ELSE.
  CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
ENDIF.

 

자재 λ¬Έμ„œ 리슀트(MB51)μ—μ„œ μž…κ³  된 것을 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

mb51 μ‹€ν–‰ κ²°κ³Ό

 

6. μ‚¬μš©ν•˜λ©΄ μ–΄λ–»κ²Œ λ˜λŠ”κ°€

  1. 생산 μ˜€λ” 싀적 확인 생성:
    • 싀적 확인(Confirmation) λ²ˆν˜Έκ°€ μƒμ„±λ˜μ–΄ 생산 μ˜€λ”μ— κΈ°λ‘λ©λ‹ˆλ‹€.
  2. 재고 이동(Goods Movement):
    • μ™„μ œν’ˆμ΄ 이동 μœ ν˜• 101둜 μž…κ³  μ²˜λ¦¬λ©λ‹ˆλ‹€.
    • BOM μžμž¬κ°€ μ†ŒλΉ„(좜고) μ²˜λ¦¬λ©λ‹ˆλ‹€.
  3. λ°±ν”ŒλŸ¬μ‹œ 처리:
    • BOM μžμž¬κ°€ μžλ™μœΌλ‘œ μΆœκ³ λ©λ‹ˆλ‹€(ν•„μš” μ‹œ).

 

 

728x90
λ°˜μ‘ν˜•