on 05-07-2009 11:09 AM
Hi Guys,
I have a requirement in message mapping.......
i have a field qual in the Customized idoc and the possible valuesfor the field are .......OT,IT,UT and ST...
if the value of QUAL is OTor IT or UT then target should get created and if the value is ST then mapping should not fail and target should not get created...the message should get dropped...
any suggestions please.....
Thanks,
Madhu
QUAL->FixValues->equalsS->NOT->IfWithoutElse->TargetNode
Constant(blank)-/ Constant((blank))-/
In FixValues Table Assign those following values
OT = T
IT = T
UT = T
Thanks
Gabriel
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Use like below.
There is no need of change the message mapping. You can made the change in the receiver determination step.In the receiver determination give the condition as like below.
Go to condition editor.
QUAL ='OT'
In condition editor Select insert group.
QUAL ='IT'
In condition editor Select insert group.
QUAL ='UT'.
It will make a OR condition.
After that In the " if no receiver is found,Process as follows" select end message processing without error. Now only QUAL = OT,IT,UT then target will create.
Regards,
Prakasu.M
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Madhu,
You can achive this using standard functions and UDF, since the standard way you need to use more elements i am specifying below the udf for this.
Select Simple Type (Value).
String rtnValue="false";
if(a.equals("OT")||a.eqauls("IT")||a.equals("UT"))
rtnvalue="true";
return rtnValue;
and map as below
QUAL->UDF_NODE->CreateIf->target_Node
or
QUAL->UDF_NODE->IFWithoutElse->target
(This assumes your target node is optional 0..1/unbound occurences)
Regards,
Prasanna
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
If the target is a node, then use createIf standard function.
If the target is a field , then use IfWithOutElse std function.The mapping would not fail as per your requirement in any of the cases mentioned.
Regards,
Swetha.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
What do you mean by message should get dropped????
Meanwhile wjat requirement you are saying can be achievedusing the createIF function at rthe receiver root node.
Regards,
Siddhesh S.Tawate
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
See your receiver side field should be 0..1 or 0.. unbounded. Now if you use the combination of ifwithoutelse and createif, it shud work as you wish. If field contains ST the target field will not be created and there will not be mapping error. Whereas if the value is amongst what you are expecting then target field is created.
I dont see need of UDF for achieving this.
Regards,
Siddhesh S.Tawate
Correction in above reply: Map creatif to your field. I thought that you want to drop whole mssg if your field contains ST.
User | Count |
---|---|
81 | |
10 | |
10 | |
9 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.