cancel
Showing results for 
Search instead for 
Did you mean: 

IDX1 IDOC Adapter and Communicatino Channel Port

Former Member
0 Kudos

Hi, why I have do create for IDOC a Port in the IB in the Communication Channel and also a redundant information in the IDOC Adapter (IDX1)?

Accepted Solutions (1)

Accepted Solutions (1)

udo_martens
Active Contributor
0 Kudos

Hi Rene,

you just refer the port in the adapter. The adapter needs to know which port you use. The port it selv (IDX1) is required to get the IDoc metadata from SAP system.

Regards,

Udo

Former Member
0 Kudos

Thx, but I have the following problem with understanding.

http://help.sap.com/saphelp_nw04/helpdata/de/ab/bdb13b00ae793be10000000a11402f/frameset.htm

I wonder why I have to configure identically information in the communication channel and in the IDOC adapter. I've read in the help docu, the IDOC Adapter sends the nativ IDOC to the JAVA stack (XML IDOC), the JAVA stack is doing all steps in the pipeline and sends the IDOC back to the IDOC Adapter, which is sending the native IDOC to the business system e.g. ERP system.

Furthermore in the docu is described, the XML IDOC will be send to a third party system over the communication channel. Where is definied, what kind the back end is and why I have to configure this information redundant in the adapter and in the communication channel?

Also to load the meta data of the IDOC the IDOC Adapter will to this and in the IB repository it is also loaded? Why?

Or is the IDOC Adapter receiving IDOCs transparent and in the port definition I have only to assign an RFC destination for the meta data load for the IDOC convertion? And where are stored this information? It is not the same as the Interface data from IB repository, which are mapped to the business system?!

Edited by: René Schulz on Jan 5, 2012 2:57 PM

udo_martens
Active Contributor
0 Kudos

Hi Rene,

I wonder why I have to configure identically information in the communicatino channel and in the IDOC adapter. I've read in the help docu, the IDOC Adapter sends the nativ IDOC to the JAVA stack (XML IDOC), the JAVA stack is doing all steps in the pipeline and sends the IDOC back to the IDOC Adapter, which is sending the native IDOC to the business system e.g. ERP system.

i think the help docu is confusing. Actually the Java stack in not involved.

Furthermore in the docu is described, the XML IDOC will be send to a third party system over the communication channel. Where is definied, what the back end is and why I have to configure this redundant?

The channels (Java) configuration will be cached to PI's ABAP stack, the IDoc will be send to ERP (ABAP), therefore no Java involved (during runtime).

Also to load the meta data of the IDOC the IDOC Adapter will to this and in the IB repository it is also loaded? Why?

The meta data are stored in ABAP stack of PI (IDX2). You have to give the port in the channel to allow PI to use the RFC destination of the port to load the meta data. The RFC in the channel is used for IDoc exchange.

Or is the IDOC Adapter receiving IDOCs transparent and in the port definition I have only to assign an RFC destination for the meta data load for the IDOC convertion? And where are stored this information? It is not the same as the Interface data from IB repository, which are mapped to the business system?!

The adapter receives XML (http) and sends IDocs (DIAG). It is using the channel's RFC for exchange and the port's RFC for meta data load. Interface data are something different and they are not mapped to a Business System.

Regards,

Udo

Former Member
0 Kudos

Hi Udo, thanks for your excelent explanation, but now I'm a bit more confused In the SAP help is described the system sends by default the IDOC in XML from the IDOC adapter to the JAVA Stack pipeline if no "conficuration parameter" is set to ignore the piplene without a mention in the help? This contradicts with your explanation that not JAVA stack is involved.

And last but not least I don't understand why I have to load the metadata also in the IB repository. But it is I think a design problem. repository for mapping in the IB, repository for IDOC convertion in ABAP, IB and IB repository... three tools and why not all in one!?

help:

If none of the pipeline services require the IDoc XML, then you can set a corresponding configuration parameter so that IDocs are not converted to IDoc XML, but are transported as tables instead. > http://help.sap.com/saphelp_nw04/helpdata/en/89/b5553bf3a76258e10000000a114084/content.htm

that implies the IDOC will always send from IDOC Adapter to the IB?

Is this correct?

IDX1 IDOC Adapter receive IDOC from external system

IDX1 Port holds RFC destination to receive META DATA of IDOC for XML convertion (not for exchange)

IDX2 shows allready loaded META DATA (is the META DATA loaded at runtime for every IDOC or is the PI using the cached data if the META DATA are allready knwon?

IDX5 shows allready converted IDOC data in XML form

Communication Channel - RFC Destinatino configured as Receiver is definied for exchange XML IDOC to send to the Back End Receiver System?

Communication Channel - Port configured as Receiver is doing what?

Repository Data in the IB Repository is for what?

Edited by: René Schulz on Jan 5, 2012 4:13 PM

udo_martens
Active Contributor
0 Kudos

Hi Rene,

i suppose you send from 3rd party to PI to ERP (IDoc)? - Otherwise (if you send from ERP) you would not need a channel.

If you sent from ERP it is bit different:

SAP sends via DIAG the IDoc to the adapter (ABAP). The adapter will load the meta data (only for the first message sent) and convert to XML. Next the XML is sent via http to Integration Engine (ABAP). The IE is configured in Java (Integration Builder), but cached to ABAP stack (runtime only ABAP). The meta data are NOT loaded to IB, the IB is only a configuration surface, runtime is in ABAP. If you use a mapping the Java stack will be involved (via a JCO destination).

that implies the IDOC will always send from IDOC Adapter to the IB?

no, to the IE

Is this correct?

IDX1 IDOC Adapter receive IDOC from external system

no, IDX1 is a transaction, IDoc adapter is a kind of a program. The adapter will receive IDocs from a ERP system and transfer to XML or get XML from IE and transfer to IDoc

IDX1 Port holds RFC destination to receive META DATA of IDOC for XML convertion (not for exchange)

yes

IDX2 shows allready loaded META DATA (is the META DATA loaded at runtime for every IDOC or is the PI using the cached data if the META DATA are allready knwon?

Meta data are loaded only once for the first exchanged message

IDX5 shows allready converted IDOC data in XML form

yes

Communication Channel - RFC Destinatino configured as Receiver is definied for exchange XML IDOC to send to the Back End Receiver System?

yes

Communication Channel - Port configured as Receiver is doing what?

Refer to the IDX1 defined port which is loading meta data

Repository Data in the IB Repository is for what?

Only basis for mappings and container of BPM

Regards,

Udo

Former Member
0 Kudos

thx for your excelent explanation

best regards

René

Answers (1)

Answers (1)

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Usage of IDX1 port:

1) The IDoc adapter needs access at runtime to the IDoc structure for conversions between IDoc and XML displays. If the sender system sends IDOC at runtime, idoc adapter at PI converts IDOC format into IDOC XML format.

2) SAP systems comply with the naming convention <SID><Client>. In the port, you enter an RFC destination for an SAP system

that contains the required IDoc metadata.