cancel
Showing results for 
Search instead for 
Did you mean: 

Cannot create target element in SAP PI 7.4

0 Kudos
228

Good afternoon Dear,

I am developing an SAP ECC Abap Proxy -> SAP PI-> Webservice(Soap/XML) interface.

This interface is synchronous.

I imported the wsdl from the Webservice in SAP PI (Version 7.4).

I performed the message mapping of response as shown in the image:

The first difference I see is that when performing the response message mapping, the buscaOrdemServicoResponse node does not appear in the message mapping. It only appears when I imported wsdl. This is the first question, I didn't understand why the buscaOrdemServicoResponse node only appears in the External Definition when you import the wsdl and it doesn't appear in the message mapping.

Have you seen this scenario? Or have you been through a situation like this?

The other issue is that the Webservice is returning a different xml (payload) that SAP PI is expecting to receive.

The Webservice is returning the following XML:

However, SAP PI is expecting to receive the following XML:

Consequently I am getting a mapping error:

Would it be the case to ask the team that developed the webservice to make the adjustment on the webservice side for the integration to work? Or is there something that can be done on the SAP PI side?

Could you help me?

Regards,

Sérgio Salomão

Accepted Solutions (0)

Answers (2)

Answers (2)

0 Kudos

Hello Salomão,

On external definition (WSDL), change the field MESSAGES to "Using RPC Style".

This option changes the structure of messages imported from WSDL.

https://help.sap.com/doc/saphelp_nw74/7.4.16/en-us/c7/55edd6c454472ab1aa1aa2f4f7310f/frameset.htm

Best regards,

Josieudes Claudio

0 Kudos

Thank you very much Josieudes. Through the xslt extract body program the interface worked.

Ryan-Crosby
Active Contributor
0 Kudos

Hi Sergio,

What is the response message type that you have registered in your service interface? That should be matching the message type that you are receiving in the service response - buscaOrdemServicoResponse. When that is mapped appropriately to the internal response message type then your error will go away.

Regards,

Ryan Crosby