cancel
Showing results for 
Search instead for 
Did you mean: 

Cannot trigger BAdi BBP_PO_SEND_XML to send PO to supplier via XI

former_member186444
Participant
0 Kudos

We want to send an SRM PO to a supplier via XI. I assumed that this is performed via transaction 'BBP_PO_ACTION_DEF', using the 'BBP_PO_SEND_XML' BAdi. However, I have not been able to prove that this is the case as I cannot get it to hit my breakpoint in debug when creating a PO. As the customizing is currently set to 'Process using selecton report', I ran program 'RSPPFPROCESS', thinking that this would trigger the BAdi (the 'Output Medium' for the supplier is set to 'XML/XI'). It did not, however. The reason for this being that there is no entry for the newly created PO in table PPFTTRIGG. So, I guess I'm either running the wrong report or there is a problem stopping the PO getting into this table.

Can anyone help with ths please ?

thanks,

Malcolm.

Accepted Solutions (0)

Answers (3)

Answers (3)

summer_wang
Contributor
0 Kudos

hi

Please check the call stack as your reference

FUNCTION#BBP_DOCUMENT_TO_SAPXML1_MAPS

#SAPLBBP_BD_MAPPING_SAPXML1

FUNCTION#BBP_SAPXML1_PO_SEND#SAPLBBP_BD_DRIVER_SAPXML1

FUNCTION#META_PO_SEND#SAPLBBP_BD_META_BAPIS_PART2

FUNCTION#BBP_PO_SEND#SAPLBBP_BD_SIMPLE_META_CALL

METHOD#IF_EX_EXEC_METHODCALL_PPF~EXECUTE

#CL_IM_BBP_PO_SEND_XML=========CP

METHOD#IF_EX_EXEC_METHODCALL_PPF~EXECUTE

#CL_EX_EXEC_METHODCALL_PPF=====CP

METHOD#EXECUTE#CL_METHODCALL_PPF=============CP

The badi would be called in the FM below .

FM BBP_DOCUMENT_TO_SAPXML1_MAPS

PERFORM call_badi_out USING is_header

it_item

it_item_rel

it_attach

it_account

it_partner

it_longtext

it_limit

it_sdln

it_freight

it_tax

ls_message_info

I hope it will help you to debug the case.

Summer Wang

former_member186444
Participant
0 Kudos

thanks Summer and Jay.

Jay, you're correct, the PO status is not 'Ordered', it is 'Saved'. We spotted that ourselves yesterday but I can't figure out why that would be since I'm definitely hitting the 'Order' button and it's coming back telling me that it is ordered. There is no output record either, so no opportunity to perform a 'repeat output'. I guess this is also why it isn't hitting any of the code mentioned by Summer as well as debugging, I've done some tracing, in case it's a user I'm not expecting).

Do you have any idea why it may be going into 'Saved' status and not 'Ordered' ?

thanks both for your help.

Malcolm.

Former Member
0 Kudos

the PO status is not 'Ordered', it is 'Saved'.

There would be no output if your PO is not in ordered status as the output is processed while the status is changed to "Ordered". However, I can't tell why your PO is in saved status after you pressed "Order" button. Chances are you indeed had saved it. In any case, you should edit the PO and "Order" it again. Note: press "refresh" button after a button click. This should give you more up to date status of the PO.

former_member186444
Participant
0 Kudos

when I edit the PO and Order again, I get the following message:

"Output: No details for medium XML in master record "

I've been trying to track down where this is coming from but have had no success so far. I've checked the supplier and the ouptut medium is set to 'XML'. I did read something on SDN that suggested an entry may be needed in the PPOMA_BBP attributes for the org unit but I'm not sure which attribute it may be referring to.

thanks again.

Former Member
0 Kudos

Can you check the following two areas:

1. From the web, check your PO under Header >> Output, "additional output requested data". I assume the "XML" is checked.

2. In SRM sever, run transaction "BP" and display the detail of your vendor. Under section "Communication", what's the "StandardComm.Mtd"?

former_member186444
Participant
0 Kudos

1. is set to 'XML'.

2. StandardComm. Mtd is 'INT E-mail'. Should this be something different ?

Former Member
0 Kudos

Set an external breakpoint in program LBBP_OUTPUTF26, line ~ 35 "CALL FUNCTION 'BBP_OUTPUT_PARAMS_SET'". Then try to order the PO again. The error should be thrown from calling this FM. You might want to dig into this FM call and see where exactly the error is. Or I'd do a simpler change by setting the "StandardCommMtd." to "PRINTER" and test first. (And deactivate any implementation for BBP_SEND_MEDIUM_MODE BADI if you haven't.)

former_member186444
Participant
0 Kudos

Hi Jay,

problem solved. I needed to activate PI in customizing, which took some finding since they've renamed it in our version.

That still left us with an issue as our config was still slightly incorrect in 'Define System Landscape' but I've had our Basis guys change that and all works fine now.

Thanks very much for your help. I'll award points.

I can go back to sleep now !

cheers,

Malcolm.

Former Member
0 Kudos

One potential reason that your breakpoint wasn't effective is that the PO output (automatic when ordered) is through an asynchronous process, e.g. with background task. What you could try is to "repeat output" for the same PO and see if the breakpoint hits. If you are in SRM 7 environment, the button to repeat output is under "header" tab >> "output" link.

former_member186444
Participant
0 Kudos

thanks for the suggestion Jay. For some reason, when I try to do that, there are no outputs available to try and perform the 'repeat output'. I can see that it is set to 'XML' but that seems to be as far as it has got so far. Being fairly new to SRM, I have no idea why that would be the case.

Former Member
0 Kudos

If your PO in "ordered" status?

former_member186444
Participant
0 Kudos

there is a class called 'CL_PD_PO_DETERMINATION_BBP' (the description for the class is 'SRM: Output Determination: Purchase Order') that sounds relevant but again, I can't get this to stop in debug either though - using my own ID and batch users.