안녕하세요. 현업에서 문의 받은 내용중에 원인을 찾을 수 없어 여기 계신 분들께 조언을 구합니다.
상황) BAPI_PO_CREATE1를 통해서 PO생성을 하는데 PO는 정상적으로 생성되나, 자동으로 납품문서가 생기지 않음
-> 납품문서생성에 대한 별도 로직은 보이지 않아 추측으로는 위 BAPI의 Schedule 데이터에 납품 데이터롤 넣어 자동으로 생기는것인가 추측
문의)
1. BAPI_PO_CREATE1의 po schedule 데이터를 넣으면 납품문서가 생성되는게 맞는 추측인가요?
2. 몇가지 예시를 찾아보면 poschedule-po_item과 poschedulex-po_item 의 값이 같은 오더번호가 들어가는것으로 보았습니다.
그런데 현재 코딩된 내용을보면 서로 다른 값이 들어갈 수 있는 상황(lv_ebelp를 loop내에서 초기화 하지 않음)이라
이 때문에 PO는 정상적으로 생성되나 납품문서가 생성되지 않을 수 있는지..
읽어주셔서 감사합니다.
도움 부탁드립니다.
댓글 4
-
SAPMM
2020.06.10 00:41
-
아좀더
2020.06.10 19:59
도움주시는 답변감사합니다!!
1. 죄송하게도 제가 글을 상세히 못적었는데 제가 겪는 케이스는 inbound가 아닌 outbound인 케이스인듯 합니다ㅠ
(A사업장에서 B업체로 반품을 보내는 케이스)
2. 잘못들어가는 구조변 수정하려고 하는데 정상경우라면 두 값이 같은 값이 들어가야 하는건가요??
-
Hwable
2020.06.13 00:50
2. 해당 필드에는 품목 순번은 동일한 값이 들어가는게 맞구요.
(poschedule = 데이터, poschedulex = 바인딩되는 필드여부 표시, 단, KEY 값은 데이터)
품목이 여러개일수도 있기 때문에 LOOP 구문 내에서는 초기화가 안되는 게 맞습니다. (00010, 00020.. )
<lt_item>-ebelp 와 lv-ebelp 는 동일한 데이터인 것 같은데 추측해보면 Type casting 때문에 변수를 2개로 나눈 것 같습니다.
해당 건이 잘못되면 PO 내 scheduling 데이터 자체가 생성 또는 업데이트 되지 않지, inbound/outbound 자동 생성과는 다른 문제인 것 같습니다.
-
아좀더
2020.06.16 20:37
답변 감사합니다!!
일단 두 값이 같은 값이 들어가야 한다는것에 대해 속시원히 얘기해주셔서 감사합니다 !!
혹시 1번항목에 대해서도 도움을 받을 수 있을까요??
오늘 다시 확인해보니.. BAPI_PO_CREATE1에서 뭔가 세팅을 해주는게 아니라 IMG세팅에서 구매문서 유형에 따라 납품문서생성을 해주는 세팅이 있는 것으로 확인하였습니다.
저희가 겪은 문제는.. PO생성은 정상인덴 납품문서가 생기지 않은 경우입니다.
이런 케이스가 있거나.. 추적을 할 수 있는 방법이 있을까요?
바쁘신 와중에 도움주셔서 다시 한번 감사드립니다.
IMG 세팅
1. POSCHEDULE 부분은 PO 의 item tab 중에 delivery schedule 부분을 정의해주기 위한 거고요. 납품문서가 inbound delivery document (VL31N) 을 말씀하시는 거면 PO BAPI 가 생성해주진 않습니다. 프로그램 로직 중에 이후에 IBD 생성해주는 부분이 있는지 보시는게 좋을듯 하네요. 아니면 스탠다드로 PO 메세제 아웃풋에 IDOC 으로 IBD 생성하도록 세팅이 되어 있을 수도 있습니다.
2. 이거는 디버깅 해서 잘 못 들어가는 구조면 바꾸면 되는 것 같네요.