cancel
Showing results for 
Search instead for 
Did you mean: 

Flat-Idocs via the IDOC-adapter

Former Member
0 Kudos

Hi All,

I want to send a flat-IDOC via the IDOC Adapter to a SAP R/3 system. The IDOC adapter does not accept flat-IDOC, but wants xml-IDOC. Does anyone know how to send this flat-IDOC to the SAP R/3 via ALE, but without XML-lizing the IDOC?

I am looking in to the principle of tunneling, but that will involve some ABAP coding.

Cheers,

Frank

Accepted Solutions (0)

Answers (4)

Answers (4)

bhavesh_kantilal
Active Contributor
0 Kudos

Hi,

DId you check this blog?

/people/michal.krawczyk2/blog/2005/11/21/xi-idoc-to-idoc-tunneling--how-fast-and-easy-can-you-get

Regards,

Bhavesh

Former Member
0 Kudos

I'm always confused why people post the same link again and again in the same thread... that doesn't make sense to me.

Regards,

Robin

bhavesh_kantilal
Active Contributor
0 Kudos

Robin,

The time difference between the replies says it all.

Most of us hit the post reply at the sametime as somebody else was as well.

Regards,

Bhavesh

Former Member
0 Kudos

Hi All,

I notice that a lot of people read the question half. You see "tunneling" as side remark and you all focus on that.

The case is I have already an flat IDOC in my IS, but it is not send via the IDOC adapter. I want to send this flat-IDOC to a SAP R/3 system via the IDOC adapter or via the RFC adapter, without xml-lizing the IDOC. Is this possible?

Cheers,

Frank

bhavesh_kantilal
Active Contributor
0 Kudos

Frank,

Have not worked on idoc tunelling before, but this is from Michal's blog,

<u><i>"Now when you configure and IDOC to IDOC flow without any mapping you'll see that the tunelling feature is [ON]."</i></u>

So, in your case if you are working on an Idoc to Idoc, without any mapping then according to Michal's blog , it should work like you want it to without a conversion to an XML.

The Idoc adapter ( though am not sure ) would or should continue to use the exisiting RFC destination and port from Sm59 and IDX1 respectively.

Have you already tried this and it aint working?

Regards,

Bhavesh

Former Member
0 Kudos

Hi Bhavesh,

I tried, but the IDOC adapter wants XML. The receiver IDOC adapter checks the type of the payload and determines if IDOC tunneling is used or not. I don't know yet how to change the type of the payload:

<i>method CL_IDX_IDOC_SERVICE-GET_PAYLOAD, part of package SIDOC_ADAPTER

  • test if idoc is in tunnel-payload-format

l_content_type = l_payload->getcontenttype( ).

IF l_content_type = if_xms_resource=>mimetype_idoc.

l_idoc_resource ?= l_payload->getdata( ).

l_tunnel_flag = 'X'.

ELSE.</i>

and with tunneling the idoc must be stored in certain tables where the receiver idoc adapter will get the IDOC instead of the payload. And our flat-idoc is in the actual payload. So the direction I am looking into is an abap mapping, which will change the payload type and stores the flat idoc in these tables, so the idoc adapter is "fooled" to believe it is IDOC tunneling.

Cheers,

Frank

former_member192798
Active Contributor
0 Kudos

Hi Frank,

If you do not want to convert IDoc into XML and back, you can use “IDoc Tunneling".

Go to TCode - SXMB_ADM

In the XML Conversion Parameters enter:-

--> '0' Every IDoc is saved as a table; no IDoc-XML conversion

--> '1' Every IDoc is converted to IDoc-XML

--> '2' An IDoc is converted to IDoc-XML if requested by the service

Regards.

Praveen

Former Member
0 Kudos

Hi,

In my opinion you will have to use this tunneling. Please check Michal's blog:

/people/michal.krawczyk2/blog/2005/11/21/xi-idoc-to-idoc-tunneling--how-fast-and-easy-can-you-get

Regards,

Wojciech

Former Member
0 Kudos

Hi,

you mean something like that?

/people/michal.krawczyk2/blog/2005/11/21/xi-idoc-to-idoc-tunneling--how-fast-and-easy-can-you-get

Regards,

Robin