cancel
Showing results for 
Search instead for 
Did you mean: 

IDoc tunneling (Parameter XML_CONVERSION)

Former Member
0 Kudos

The parameter in the SXMB_ADM transaction defines whether the IDoc is transported as a table and is not converted to IDoc-XML in the IDoc adapter. This is only recommended if IDocs are received and sent as IDocs in the Integration Server. If none of the services in the Integration Engine use IDoc-XML, you can avoid unnecessary conversion from and to XML, thereby improving system performance.

Possible Values

'<b>0</b>' Every IDoc is saved as a table; no IDoc-XML conversion.

'<b>1</b>' Every IDoc is converted to IDoc-XML.

'<b>2</b>' An IDoc is converted to IDoc-XML only <i>if requested by the service</i>.

The question is: does anybody know what "<i>if requested by the service</i>" exaclty means ?

Regards,

Sandro

Accepted Solutions (0)

Answers (2)

Answers (2)

0 Kudos

Hi Sandro,

I analyzed the abap-source and found this:

If an IDOC is transferred into XI via function module Idoc_Inbound_asynchronous the XI checks the existance of a rule (receiver determination) and the existance of a mapping( which needs XML ) . If one of this conditions is true, then tunnel-flag stays initial. Otherwise, if XML isn't necessary for the internal processing of the message , the flag is set to true 'X' .

Regards Josef

bhavesh_kantilal
Active Contributor
0 Kudos

Josef,

Interesting info. But , got a few questions,

1 .><i>If an IDOC is transferred into XI via function module Idoc_Inbound_asynchronous the XI checks the existance of a rule (receiver determination) . . If one of this conditions is true, then tunnel-flag stays initial</i>

If I do want idoc Tunneling for an Idoc X, I would still need a Receiver Determination in XI as without the Receiver Determination I will not be able to route this Idoc to the correct receiver and finally to the correct target system.

Don't you think it should be if only there is no Interface Mapping , the Tunneling will happen?

just my 2 cents. Gonna try this out once again all over

Regards

Bhavesh

0 Kudos

Think about a scenario SAP-XI -JMS (or Flat file) vice versa . I will do the transformation with ABAP-Mapping in both direction and theres no need for receiveing an XML-Stream from IDOC-Adpater or send an XML-stream to IDOC-Adpater.

We would receive a better performance if we could avoid the expensive XML-Transformation.

There is a check of an existing Mapping for Sender-Message in the Table SMPPREL3 .

There could be an special XML-flag in this Table and in the Receiver-Determination you could set this flag or not .

XI uses CL_IDX_IDOC_RESOURCE for the IDOC-Tunnel. In this class EDIDC and EDIDD are serialized in an XSTRING . In my ABAP-Mapping first i would check Content_Type via PARAM->GET. For transforming the binary Content into EDIDC and EDIDD a static method should be implemented by SAP in CL_IDX_IDOC_RESOURCE . I think I could implement such a method myself, but its risky if SAP changes their ITAB_TO_BINARY-method in an incompatible way.

In the XI-SAP -direction I would like to set the content_type in ABAP-Mapping to bin and convert the EDIDC and EDIDD in X-string (like in CL_IDX_IDOC_RESOURCE ->ITAB_TO_BINARY ).

Regards Josef

Former Member
0 Kudos

Hi Sandro!

> The question is: does anybody know what "<i>if

> requested by the service</i>" exaclty means ?

The IDoc will be converted to IDoc XML only if necessary, e.g if the receiving system is a non-SAP system or if a mapping is required.

Regards, Tanja

Former Member
0 Kudos

Do you have a link to standard documentation or document that say this ?

I made some test with XML_CONVERSION=2 and it looks like the IDoc is always "application/x-sap.idoc.bin" type, even with mapping and content based routing.

Regards

Sandro

bhavesh_kantilal
Active Contributor
0 Kudos

Sandro,

Have been looking for the same info as well for sometime now.

Do let me know if you find anything on this.

Regards,

Bhavesh

Former Member
0 Kudos

Hi Bhavesh,

I cannot find nothing till now, what about you ?

I think that if I will not find nothing within today I will open an OSS message to SAP.

Regards,

Sandro

bhavesh_kantilal
Active Contributor
0 Kudos

Sandro,

Have been in the same position for the past few months now!

If I find something will sure let you know!

Regards

Bhavesh

Former Member
0 Kudos

Hi Sandro,

Hope all is well with you!

Did you find anything out about this? I would like to be able to see if I can get the payload of the Idoc to appear as if it were written to a file port on SAP.

Regards,

Mark Rinkel