on 05-14-2008 2:53 PM
Hi all,
I have gone through the blog ([/people/venkataramanan.parameswaran/blog/2006/03/17/illustration-of-enhanced-receiver-determination--sp16|/people/venkataramanan.parameswaran/blog/2006/03/17/illustration-of-enhanced-receiver-determination--sp16]) for Enhanced Receiver Determination and the recent thread related to it ().
But I still have some doubts as follows:
(a) Normally when I want to have only one of the both receivers dynamically, I can just go ahead with specifying condition in ReceiverDetermination. I hope that will serve my purpose. In that case what is the need of Enhanced Receiver Determination?
(b) When I go for Enhanced Receiver Determination as per the blog, there are three message mappings defined. One for Receiver Services, and remaining two for each receiver structure. Here, I didn't find any relation between Receiver Service mapping and the actual two receivers' mappings. But in Interface Maping RcvrDetm_MM (receiver service mapping) is used. How does it serves my purpose of mapping to one of the receivers dynamically?
Please clarify me. Thanks in advance.
Regards
Bhanu
Intelligroup.
1) what is the need for Enhanced Receiver determination?
This is used to identify the receiver based on message mapping at run time.
There may be more than one receivers in your requirement.
but based on condition in your source structure you are forwarding the message to the particular receiver alone.
2) relation between Receiver Service mapping and the actual two receivers' mappings.?
Receivers could be part of the incoming message and are being determined using a mapping lookup
E.g. you could have a plant code in an incoming document and use a mapping lookup to retrieve the business system belonging to this plant.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Thanks for useful replies.
I understand that using Enhanced Receiver Determination, we need not to list all receivers. It will dynamically select the respective receiver to process the message. Ok fine.
But coming to mapping part, in the blog i've followed, service mapping is used in Interface mapping. My question is how that mapping actually picks the desired receiver mapping?
Regards
Bhanu
Intelligroup.
assume that there are 2 receivers as MrService and MsService.
Based on the input in name that contains the substring mr. or ms.
If there is at least one name starting with Mr then MrService is added to the receivers list. In a similar manner if there is a name starting with Ms then MsService is added to the receivers list.
see the UDF
function myudf(name[],ResultList result, Container container)
{
int i;
int mr=0;
int ms=0;
for(i=0; i<name.length;i++)
{
if( name<i>.substring(0,2).equals("Mr") && mr==0)
{
result.addValue("MrService");
mr=1;
}
if( name<i>.substring(0,2).equals("Ms") && ms==0)
{
result.addValue("MsService");
ms=1;
}
}
}
Hence your service may contain any one of the receiver as populated.
Hi,
> Normally when I want to have only one of the both receivers dynamically, I can just go ahead with specifying condition in ReceiverDetermination. I hope that will serve my purpose. In that case what is the need of Enhanced Receiver Determination?
In (normal) RD you have to specify all receivers. In the ERD it's not necessary.
Imagine you have 1000 receivers then it's more comfortable to get the receiver dynamical than to enter 1000 receivers in the RD.
Regards
Patrick
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
90 | |
10 | |
10 | |
10 | |
7 | |
7 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.