cancel
Showing results for 
Search instead for 
Did you mean: 

Multiple Operations for File to IDoc scenario

Former Member
0 Kudos

Hi all,

I have a file to IDoc scenario where two IdocXML files (one for INSERT and one for CHANGE of Business Object) have to be picked up by file adapter and transfered to SAP System. In respect to the multiple operations PI 7.1 can handle I would like to create one Service Interface for the Business Object and two operations (INSERT and CHANGE).

Unfortunately I am not able to use the operation in the sender agreement, so I can't specify the comm-channel for the operations, only for the interface.

So, can I use multiple operations in a file scenario (respectively in a non Web Service scenario)??

Thanks a bunch,

Manfred

Accepted Solutions (1)

Accepted Solutions (1)

santhosh_kumarv
Active Contributor
0 Kudos

>>Unfortunately I am not able to use the operation in the sender agreement, so I can't specify the comm-channel for the operations, only for the interface.

You are not required to select Operation in Sender Agreement.

For ex if yor sender interface is SI_File_Send and it has two operations for insert and change with Message type like MT_Change ans MT_Insert, you select the Sender Interface i.e. SI_File in the sender aggrement and assign the File CC. One single file CC would pick both the insert/change file and your Interface determination configuration will determine which mapping should happen based on the input xml file.

~SaNv...

Former Member
0 Kudos

Thanks for your answers.

I just tried the scenario but unfortunately it doesnt work out. I created a Interface with two Operations and different Message types. MT1 and MT2.

I also created the following configuration objects:

- 1 sender agreement

- 1 receiver determination

- 1 interface determination

- 1 receiver determination

The problem is it doesn't recognize the interface determination when specifying a target interface for each operation. In the trace it says:

There is no Interface Determination configured for receiver party and receiver service ...

When I don't specify the sender software component version in the interface determination and therefore I am only able to select one target interface it works perfectly.

Looks like there is one little part I am missing???

Thanks for further help,

Manfred

stefan_grube
Active Contributor
0 Kudos

I think the payload XML has not the requested root tag referring to the operation of the interface.

If the root tag is wrong, the operation cannot be identified.

Former Member
0 Kudos

Does the root tag have to match the name of the message type or the name of the operation?

I tried both

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

<MT1>

...

</MT1>

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

<Operation1>

<MT1>

...

</MT1>

</Operation1>

Or is this still wrong?

Thanks,

Manfred

former_member200962
Active Contributor
0 Kudos

The payload need not be changed when you have multiple Operations. Even for the testing of the interface (mentioned in the blog) I used the payload that we get in the Test Tab of the Message/ Operation Mapping. No need of adding/ removing any node/ tag......how similar is your scenario with that mentioned in the blog?

Regards,

Abhishek.

Former Member
0 Kudos

The scenario is pretty easy. I just want two different files to be read by one Comm Channel with one Sender Agreement.

They are both transferred to the same receiver. I just wanted to test one scenario using multiple operations.

In your blog you described that you should not use two operations with the same set of messages (synchronous/asynchronous). In my case both are asynchronous but I already tried it with one being sync and the other one async. Where did you actually get this information, it puzzles me a little since SAP does the same in its preconfigured Enterprise Services as far as I know.

In the Trace for pipeline step Interface determination in SXMB_MONI it says:

<Trace level="1" type="T">...There is no Interface Determination configured for receiver party and receiver service BS_RECEIVER</Trace>

<Trace level="2" type="T">Check conditions for (Inb: Party Srvc If) BS_RECEIVER SI_..._Out</Trace>

<Trace level="2" type="T">...valid InbIf without Condition: SI_..._Out</Trace>

<Trace level="2" type="T">Number of receiving Interfaces:1</Trace>

So it finds the Outbound Interface in Receiver side which is wrong since I specified the Inbound Interface in the Interface determination. Did anyone of you already encounter such a behaviour? I already deleted and recreated all routing objects but without any success.

Thanks,

Manfred

Answers (3)

Answers (3)

Former Member
0 Kudos

Tried it with another scenario on another machine and ran successfully, maybe I have overseen something.

former_member200962
Active Contributor
0 Kudos

This blog should help you in including Multiple Operations in one Service Interface: /people/abhishek.salvi/blog/2009/07/31/using-service-interfaces-now-reuse-one

There is no restriction on use of Multiple Operations as far as type of scenario is concerned (file/ non-webservice). In the above blog I have shown the same concept of use of the single Service Interface for a File to File and SOAP to SOAP.

Regards,

Abhishek.

stefan_grube
Active Contributor
0 Kudos

> So, can I use multiple operations in a file scenario (respectively in a non Web Service scenario)??

Sure you can. But you have to put all files representing the different operations in the same folder.

The files are identified by the root tag name.

Regards

Stefan