1. RFC import parameter로 EQUNR을 받음
2. EQUNR로 LIKP-WADAT_IST ( Actual GI Date ) 찾기
1. EQUNR로 OBKNR 값 찾기
- OBJK(Plant Maintenance Object List)-OBKNR
2. OBKNR로 DO 값 찾기
- SER01(Document Header for Serial Numbers for Delivery)-LIEF_NR
3. DO로 Actual GI date 찾기
- LIKP-WADAT_IST
" get Object list number
SELECT obknr equnr
INTO TABLE lt_objk
FROM objk
FOR ALL ENTRIES IN lt_equi
WHERE equnr = lt_equi-equnr
AND taser = 'SER01'.
DELETE ADJACENT DUPLICATES FROM lt_objk COMPARING ALL FIELDS.
SORT lt_objk BY obknr.
" get DO
SELECT lief_nr obknr
INTO CORRESPONDING FIELDS OF TABLE lt_lief_nr
FROM ser01
FOR ALL ENTRIES IN lt_objk
WHERE obknr = lt_objk-obknr.
DELETE ADJACENT DUPLICATES FROM lt_lief_nr COMPARING ALL FIELDS.
SORT lt_lief_nr BY lief_nr.
" get Actual GI date
SELECT vbeln wadat_ist
FROM likp
INTO CORRESPONDING FIELDS OF TABLE lt_likp
FOR ALL ENTRIES IN lt_lief_nr
WHERE vbeln = lt_lief_nr-lief_nr.
SORT lt_likp BY vbeln.
LOOP AT lt_lief_nr INTO ls_lief_nr.
CLEAR ls_objk.
READ TABLE lt_objk INTO ls_objk WITH KEY obknr = ls_lief_nr-obknr
BINARY SEARCH.
IF sy-subrc = 0.
ls_lief_nr-equnr = ls_objk-equnr.
CLEAR ls_likp.
READ TABLE lt_likp INTO ls_likp WITH KEY vbeln = ls_lief_nr-lief_nr
BINARY SEARCH.
IF sy-subrc = 0.
ls_likp-equnr = ls_lief_nr-equnr.
"동일한 DO의 equnr을 lt_likp-equnr에 넣어줌.
MODIFY lt_likp FROM ls_likp TRANSPORTING equnr WHERE vbeln = ls_lief_nr-lief_nr.
ENDIF.
ENDIF.
ENDLOOP.
SORT lt_likp BY equnr.
**CRM I/F 개발 플젝중에 정리함.
**회사마다 세팅이 달라서 다를 수 있음.
'ABAP' 카테고리의 다른 글
변경 문서 헤더 CDHDR, 변경 문서 상세 정보 CDPOS (1) | 2025.03.14 |
---|---|
ABAP SELECT문 동적 WEHRE / RTTI를 활용하여 필드 존재 여부 확인 (0) | 2025.02.27 |
VC_I_GET_CONFIGURATION_IBASE (0) | 2025.02.10 |
SYSTEM-CALL OTR GET_TEXT_BY_ALIAS (0) | 2025.02.04 |
BDC와 SAP 세션 (1) | 2024.12.24 |