on 2006 Dec 11 3:21 PM
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
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
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
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
66 | |
8 | |
8 | |
6 | |
6 | |
6 | |
6 | |
6 | |
5 | |
5 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.