Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

User Exit after PGI in Outbound Delivery

Former Member
0 Kudos

All,

We would like to post an additional goods movement following the standard PGI in the outbound delivery. According to the business requirement, we need to do a 561 W movement (to receive the same PGI'ed stock as non-valuated customer consignment. This is for the stock that is being sold but not shipped immediately). Can someone suggest if there is any userexit or BADI that is executed after PGI so we can trigger 561 W based on the success of PGI.

Thanks & Regards

KC

3 REPLIES 3

eduardo_hinojosa
Active Contributor
0 Kudos

Hi

You have the BADI MB_DOCUMENT_BADI, but in my opinion, it isn't advisable to call a BAPI (BAPI_GOODSMVT_CREATE) from this BADI (read Note 1284654 - Caution with implementations of the BAdI: MB_DOCUMENT_BADI to know it).

Other possibility is to see SAP Note 415716 - User exits in delivery processing to find other ways to solve it. Be careful with the suggestions related with what you can do during goods issue posting in this note.

I hope this helps you

Regards

Eduardo

0 Kudos

Hi Eduardo,

You are right that these BADI's are not advisable to do any customer specific goods movements as it can destroy standard updates & cause consistency issues. Another alternative we are exploring is to use an output type of medium 'special function', which would be triggered only if goods issue has been posted (a standard requirement can be assigned to the output type). Custom program assigned to the output type could be used to do the additional goods movement; we're hoping this won't have any undesirable affects.

Thanks & Regards,

KC

0 Kudos

Hi

You can call the report for the movement in this program calling the BAPI with a function module with option IN UPDATE TASK, and after, you can run this BAPI with a job that you can create with the sequence of FM: JOB_OPEN, GET_PRINT_PARAMETERS, RS_CREATE_VARIANT, JOB_SUBMIT, JOB_CLOSE, running it with a gap of 30 or 60 seconds.

I hope this helps you

Regards

Eduardo