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: 

How Extract Delivery number from DELIVERY_PUBLISH badi

Former Member
0 Kudos

Dear Experts ,

        After creating the delivery through VL01,   Can anyone know how to extract the created delivery order number from the badi DELIVERY_PUBLISH ??

Thank you!

Message was edited by: Matthew Billingham - tag removed at request

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi Venkatesh,

This BADI has 2 methods:

Publish_before_commit

publish_after_save

You can use the first method to extract the delivery number. The method has a parameter IT_CHANGED_DATA which contains VBELN, the delivery number.

You can implement publish_before_commit method of the BADI to achieve your requirement.

This is what you are looking at?

Thanks,

Sowbhagya

10 REPLIES 10

Former Member
0 Kudos

Hi Venkatesh,

This BADI has 2 methods:

Publish_before_commit

publish_after_save

You can use the first method to extract the delivery number. The method has a parameter IT_CHANGED_DATA which contains VBELN, the delivery number.

You can implement publish_before_commit method of the BADI to achieve your requirement.

This is what you are looking at?

Thanks,

Sowbhagya

0 Kudos

Hi sowbhagya,

     i tried that method and i tried to download the IT_CHANGED_DATA table into presentation server , it is not triggering.

Thank you!

0 Kudos

Venkatesh,

I tried searching on the BADI and got the following information form another forum:

PUBLISH_AFTER_SAVE


The method does't have any parameter; but you might be able

to access data from main program (the program that calls the badi), which

is SAPMV50A. Use field-symbols to access those varibles, example:

CONSTANTS: c_program_xlips(32) TYPE c VALUE '(SAPMV50A)XLIPS[]'.

FIELD-SYMBOLS: <fs2> TYPE t_xlips.

ASSIGN (c_program_xlips) TO <fs2>.

it_xlips = <fs2>.

Now in it_xlips you have data from (SAPMV50A)XLIPS[] variable, and can work

with it.


Else you can use USEREXIT_SAVE_DOCUMENT (Include MV50AFZ1) as mentioned in the thread https://scn.sap.com/thread/1440320




Thanks,

Sowbhagya

0 Kudos

Hi sowbhagya,

      Thanks for your suggestion, what is the t_xlips in that ??

Thank you

0 Kudos

Please check this thread from where I got the suggestion:

http://sap.ittoolbox.com/groups/technical-functional/sap-abap/badi-after-saving-outbound-delivery-32...

Thanks,

Sowbhagya

0 Kudos

Hi sowbhagya ,

   Thanks for your reply, working with code

DATA ls_xlikp TYPE likpvb. "DEVK938143
DATA lt_xlips TYPE STANDARD TABLE OF lipsvb. "DEVK938143
DATA ld_mem(62) TYPE c. "DEVK938143
FIELD-SYMBOLS <mem> TYPE ANY. "DEVK938143
ld_mem = '(SAPMV50A)XLIKP'. "DEVK938143
ASSIGN (ld_mem) TO <mem>. "DEVK938143
IF sy-subrc = 0. "DEVK938143
ls_xlikp = <mem>. "DEVK938143
ENDIF. "DEVK938143
ld_mem = '(SAPMV50A)XLIPS[]'. "DEVK938143
ASSIGN (ld_mem) TO <mem>. "DEVK938143
IF sy-subrc = 0. "DEVK938143
lt_xlips[] = <mem>. "DEVK938143
ENDIF. "DEVK938143



Regards,

venkatesh

raymond_giuseppi
Active Contributor
0 Kudos

Why did you sign with my name?

Else look at signature of the methods defined in BAdI interface and read its documentation and/or perform some tests.

Regards,

Raymond

0 Kudos

hi raymond,

       i am really sorry for that , my intention is to call you to know about my problem but i didn't observed that i used your name as a sign.

0 Kudos

Raymond Giuseppi wrote:

Why did you sign with my name?

I've removed it now. I assume it was so you'd get notification that has posted something. However, it's not a practice I encourage.

0 Kudos

I often check for new threads in my favorite spaces, so I would already have noticed it, but yes it's seems to me somewhat cavalier  ("des façons quelque peu cavalières")