cancel
Showing results for 
Search instead for 
Did you mean: 

Is it Possible ? -- Multiple Receivers Of Same Service

Former Member
0 Kudos

Hi Friends,

I have a scenario where i will get the data from Abap Proxy into XI And XI sends this data to multiple receivers of same Service...What i mean to say is I need to write the data to 2 same files on the same server...But those will be in different directories with different filenames....So i have 2 communication channels on receiver side. But only one Inbound Interface, coz two files are of same format..

When i create a Receiver Determination there i will give my Receiver Service.Everything is fine till now...But the problem is as I am having only one Inbound interface i can create only one Interface Detemination and only one receiver Aggrement...Adn as you know we can specify only one communication channel for one recevier Aggrement.....

Is it Possible to Send data to Multiple Receivers of Same Service(Same interface..only one inbound interface....) ????......

Regards,

Shyam M.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos
  • Create Another BS is not good idea, since when you create another receiver determination, for the same sender / sender interface, system will complain that the receiver determination has been created for this sender using this sending interface.

  • Create additional receiving interface, this is possible.

When you add additional interface determination, you need to specify the conditions, as long as your two interface names are different, you can use condition called EX (exist) to distinguish them.

  • Configure "Run Operating System Command After message Processing", make sure you can run OS command for your end systm, then this command just simply copy the file from one directory to another.

Liang

Former Member
0 Kudos

Hi Liang Ji,

I believe the "Run Operating System Command" is for executing commands on Adapter Engine (On XI if u r using Centralized Adapter Engine). I think it is not for executing commands on End System... Correct me If i am wrong....

Regards,

Shyam M.

Former Member
0 Kudos

Yes you are right. I made it wrong.

But if you have directories on end system shared, you can still use OS command on XI application server to copy file from one directory to another.

Another solution:

Just Configure another scenario to move file from one diectory to another, you do not need to create any IR objects,

Please refer:

How to send any data (even binary) through XI, without using the Integration Repository‏:

/people/william.li/blog/2006/09/08/how-to-send-any-data-even-binary-through-xi-without-using-the-integration-repository

Liang

justin_santhanam
Active Contributor
0 Kudos

>Create Another BS is not good idea, since when you create another receiver determination

Liang,

Can u tell why we need to create one more Receiver Determination? This receiver acts as the Receiver Service, only one Receiver Determination is enough. I understood his only concern was mapping

raj.

Former Member
0 Kudos

Hi, Raj:

If you have two receivers and just one receiver determination, are you talking about conditional routing in this case ?

Liang

justin_santhanam
Active Contributor
0 Kudos

Liang,

It's not manadatory if you have two receivers then it has to be conditional routing.Even without conditions, I can route to different business Services/Systems.

raj.

Former Member
0 Kudos

Hi, Raj:

I got you !

Yes, This is anothe solution !

Thanks

Liang

Former Member
0 Kudos

Hi Liang,

This is a scheduled data transfer once per day... With your suggested approach i have to create sender file adapter which polls the folder for every poll interval..... and the problem could be.......Because once i write the file to that FTP Server, it will be moved to archived folder for every 15 mins(Either Applications or Scripts will do this on the FTP Server). And more over that 15Mins is also like polling....so u can't guarantee that how long the file will be there on that particular folder.(Coz although their poll interval is 15 mins....there is more chances that the file may be moved immediately,because we might be writing the file at 14th min of their poll interval..).. I

Regards,

Shyam M.

Former Member
0 Kudos

Hi, Shyam:

In this case, the other solution maybe better choice, like the suggested by Raj to add a BS, routing to two BSs at same time.

Regards !

Liang

justin_santhanam
Active Contributor
0 Kudos

Shyam,

Ok, let me ask one morething. Are u ready to use BPM?

raj.

Answers (7)

Answers (7)

Former Member
0 Kudos

Hi Shiyam !

I suggest to create a dummy Business Service to allow you to select it as a second receiver in the Receiver Determination object.

If your concern about performance and want to run the mapping program only once, then you could use BPM along with the dummy BS idea:

1) receive step from abap proxy

2) send step to BS1

3) send step to BS2

And do the mapping transformation outside the BPM, during the conversion from the outbound async interface to the abstract interface.

Another idea: develop the whole scenario like having only one receiver and use "Execute OS Command After Message Processing" to have a operating system script that replicates the file where necessary.

Regards,

Matias.

rodrigoalejandro_pertierr
Active Contributor
0 Kudos

hi

as RAJ said, its not possible.

to solver your problem,you must define 2 receiver determination each one associated to the message mapping and each receiver pointed to 2 receiver communication channel.

or define a aux BS,so, you only have to define one Receiver Determination one message mapping but 2 receiver determination

Thanks

Rodrigo

rodrigoalejandro_pertierr
Active Contributor
0 Kudos

hi

as RAJ said, its not possible.

to solver your problem,you must define 2 receiver determination each one associated to one message mapping and receiver communication channel.

try this way.

Thanks

Rodrigo

Former Member
0 Kudos

Hi, Rodrigo:

If you read the history of the thread, Raj and I have discussion regarding the receiver determination.

One receiver determination is enough for routing to two or more Business services, no need to have another receiver detemination. But you can specify same interface mapping.

Regards !

Liang

Former Member
0 Kudos

Hi Guys,

The Main Motive of doing like this is.... I want the Message Mapping to be executed only once...And if i use a different interface, i believe the mapping executes 2 times.... If i am wrong please correct me...

Is there any other procedure to do this by ensuring that mapping will be executed only once......Because as the mapping is complex and there are more no.of fields, it takes more time............ Even if i create one more receiver service for the same system....in that case i can use the same interface but here also the mapping will be executed 2 times...Correct me if i am wrong.....

What ever be the solution, i want mapping to be executed only once......

Regards,

Shyam M.

Former Member
0 Kudos

Hi,

A simpler way would be to use Variable Substitution

Try these links

Link : [

/people/sameer.shadab/blog/2005/09/23/an-interesting-usage-of-variable-substitution-in-xi

https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/2161] [original link is broken] [original link is broken] [original link is broken];

Based on the payload or header fields you can determine the directory name, etc.

Two comm channels would not be requried.

Award points if useful.

Best Regards

Abhishek

Former Member
0 Kudos

Hi Abhishek,

But the problem is, i have to use different FTP User & Password.....Because for one directory permissions are for one user and for the other directory i have to use other Ftp user which has the permissions for that..

Regards,

Shyam M.

Former Member
0 Kudos

I believe your main concern is Performance? Rite

Just as a suggestion

Then Why Dont you use a Anonymous login to your FTP server?

And then use the variable substitution method.

justin_santhanam
Active Contributor
0 Kudos

Abishek,

How come it's possible. Could you tell us briefly? He want to write the file into two different folders with different file names, is it possible?

raj.

Former Member
0 Kudos

Hi Abhishek,

These are client FTP Systems and i am sure they won't be ready to give anonymous access to their FTP servers, which makes them to compromise on security....... And at the same time they can't give same user and password for both the directories as that has been in use for long time and those users are used in several applications with permissions to particular folders........... And no single user has permissions for multiple directories.....

And at the same time...i want to write it to 2 files...not to one file based on payload....

Regards,

Shyam M.

Edited by: Shyam M on Feb 25, 2008 4:39 PM

Former Member
0 Kudos

Hi,

Probably you could use the Extended feature of Receiver determination and could decide the receiver at runtime.

I am not sure but then you need multiple Receiver agreements to be defined for each communication channel. It is also reconized as "MULTICAST". With BPM its possible.

In Receiver determination you will not be able to do this without using extend to set the receiver dynamically.

Refer

http://help.sap.com/saphelp_nw04/helpdata/en/14/d5283fd0ca8443e10000000a114084/frameset.htm

http://help.sap.com/saphelp_nw04/helpdata/en/11/13283fd0ca8443e10000000a114084/frameset.htm

thanks

Swarup

Edited by: Swarup Sawant on Feb 25, 2008 4:04 PM

Edited by: Swarup Sawant on Feb 25, 2008 4:08 PM

justin_santhanam
Active Contributor
0 Kudos

>Its possible.

Swarup,

Do u think, its possible? I won't think so. Go to Interface determination and try to add the same Inbound Interface in Interface determination. Now come to Receiver Determination, are u able to see two Interface determinations in the bottom of the page? Basically is't applicable only for multiple inbound interfaces, in his case he is having only one Inbound Interface.

Probably, I might be wrong!

raj.

justin_santhanam
Active Contributor
0 Kudos

Shyam,

It's not possible. Possibly you can create one more service and use the same inbound interface with diff Interface determination comm.channel and recv.agreement.

raj.