cancel
Showing results for 
Search instead for 
Did you mean: 

BADI BUPA_GENERAL_UPDATE

Former Member
0 Kudos

Hello, I have a task to check and change some values when creating a business partner through transaction BP. I'm looking at the BADI BUPA_GENERAL_UPDATE, but it only gives me an importing parameter GUID, nothing else. How do I actually save my data to the buffer? I tried for instance function BUP_MEMORY_BUT000_FILL, but it seems not to work.

Even better for me would be to use a BADI triggered from the start of the creation process to update the buffer with default values, haven't found any, does someone know one?

Any help appreciated!

Best regards,

Henrik

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hello Michael,

thanks a lot for the info! But it seems to me that BUP_BUPA_BUT000_COLLECT is for append structures only? I want to change (or rather set default values) standard BUT000 fields (as well as BUT0ID etc), does this function really work then? (checks I_SUBNAME <> 'BUS000_DAT' etc..)

I would like to display these field values to the user on screen, and in the end it should be saved to the db (even values for some views that the user might not have entered). Is this possible? (I realize that I probably have to create several new fm:s for several BDT events).

Best regards,

Henrik

Former Member
0 Kudos

Hi Henrik,

I have the same problem you do... I would like to fill the external numer, which depends on the partner number. I've tried the same fms as you have, with the same outcome...

I will report any progress.

Regards,

Friederike

Former Member
0 Kudos

Hi,

I've always created functions for all events in one function group for each implementation. This way you can experiment by putting break-points in all of them.

If you would like to influence fields before/after user-interaction, use events PBO (process before output) and PAI (process after imput). Everything else comes down to using the events in their respective functions (documentation SAP) and collecting all the information in the memory & the bdoc.

Use functions:

BUPA_NUMBERS_GET

BUP_MEMORY_BUT000_GET (get the structure from memory)

--> make you changes in structure ls_bus000

BUP_MEMORY_BUT000_FILL (put the table back in memory)

Grtz,

Michael.

Former Member
0 Kudos

Hello Michael,

I have tried your idea, in my case, it doesn't work.

As I am saving a NEW Partner, the function BUP_MEMORY_BUT000_GET doesn't seem to know my partner. I've used the BUP_BUPA_BUT000_GET to get the information, and the BUP_MEMORY_BUT000_FILL to refill the memory. The sy-subrc is always 0, but on the mask of the business partner the field is not filled.

I now use the events ISDST (BUP_BUPA_BUT000_GET), DSAVB (BUP_BUPA_BUT000_COLLECT) and DSAVE (BUP_MEMORY_BUT000_FILL), but it still does not work.

Have you any suggestions?

Regards,

Friederike

Former Member
0 Kudos

Hi Henrik,

Try function BUP_BUPA_BUT000_COLLECT.

You'll have to call the function in the correct BDT event. If you search in this forum for BDT events, you'll find a link where the different events are explained (and how to use them).

--> No Badi's for BP enhancements, everything is done in the business data toolset.

Grtz,

Michael.