on 04-13-2010 4:31 AM
Hi
I am working On IDOc to Soap channel.
In idoc Fields ,I am using EMPST field from IDOC and accordingly I am putting Condition in Receiver Determination.
IF EMPST 111 Then Revceive1
IF EMPST 222 Then Revceive2
IF EMPST 333 Then Revceive3
But sometimes values also Come as 000111 or 00111 or 0111 same for Others.
I have used follwong condition in Receiver Determination.
IDOC/E1EDK01/EMPST u2248 *111
But it working fime for leading zero.
But if values come as 8111 or 78111 it is also routing message to Revceive1.
same for others.
Can you plz suggest solution?
Closing
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You can try xpath function number with EX operator. The condition would be like
IDOC/E1EDK01/[number(EMPST)] =111
For details, pls refer to /people/shabarish.vijayakumar/blog/2006/06/07/customise-your-xpath-expressions-in-receiver-determination .
Regards,
Sunil Chandra
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
If values are limited e.g. 000111 or 00111 or 0111 then you can directly configure them in Receiver determination using OR operator, by providing multiple conditions but if values are very high then this is not a feasible solution. A good solution could be asking source to remove zeroes before sending IDOC to PI. They can use User exist to code this at R/3 end.
Another suggestion give as 0*111 may not work as if you get 08111, it would again fail.
Regards
Sushil
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
you can use enhanced receiver determination ,, where you can specify your logic in the mapping
http://wiki.sdn.sap.com/wiki/display/XI/EnhancedReceiverDeterminationinSAP+XI
http://wiki.sdn.sap.com/wiki/display/SI/StepbyStepguidetoExplainEnhancedReceiver+Determination
in the UDF you can write the logic to remove leading zeros if required:
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Since u have given
IDOC/E1EDK01/EMPST u2248 *111 -->Receiver1
then anything which contains 111 will route to Receiver1..... U know that duw this * in r.e.
If u dont want to route 8111 or 78111 to receiver 1 then,
Can u please try with this r.e,
[0]*111
Let us know the result...
Babu
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.