on 06-11-2015 12:47 PM
Hi,
I need to load data to DSO from Sales Document (attributes) where PO number from sales starts with either 0002* or 2* and I have created a filter on DTP for PO Number from sales for value 0002*.
this filter on DTP is working fine but the only problem is that it ignores all the PO number which does not have prefix 000. maximum lenght of the PO number is 13 and if the 000 are there then it is ok but user puts different combination of PO numbers like below
2000000000-re
211-steam Br
2111111111-WE
due to this my DSO activation fails.
How do I make sure that if the PO number starts from 2* then it also gets updated to the dso but without invalid characters.
e.g from above PO order 2000000000-re then we should only transfer 2000000000
PO order 2111111111-WE then only transfer 2111111111
and we should ignore 211-steam Br
I do not have a ABAP knowlege so any help is appreciated.
regards,
Dar Vad
Hi All
thank you for your responses.
I tried different solution and it worked.
1st i put 2 ranges in DTP filter as below
000200000000 to 299999999999
200000000000 to 299999999999
and then I created a field level routine to convert source data from lower case to upper case and it worked.
thanks again for your valuable input.
regards,
Dar
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
just out of curiosity: if users put things like
2000000000-re
211-steam Br
2111111111-WE
as po number in their system, you would suppose that's what they would like to see in a report, no?
so basically this is a case of bull***t in --> bull***t out.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Dar,
i think the characters coming at the end of the string are incorrect and this needs to be fixed at source system itself.
but if its not possible to fix at source then, you will need to modify the PO no's in your start routine.
the pseudo logic for your code can be as follows.
loop at source_package assigning <source_fields>.
IF <source-fields>-Po_number CN '-'.
Clear: string1, string2.
split <source-fields>-Po_number at '-' into string1 and staring 2.
<source-fields>-Po_number = string1.
Endif.
Endloop.
Hope this helps.
-Swati.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Dar,
For this to work them you will have to create condition for all the characters that apear in your input field or else you can try this. Define your target object as NUMC for NUMC shall only allow numeric characters and not others.
Try this and let me knoe if it works.
Hope this helps.
-Swati.
you need to this in a start routine. pretty sure you can't get it merely with a dtp filter.
search the net for examples of start routines. there are plenty. and you requirements are not that complicated, should be feasible
M..
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
76 | |
10 | |
8 | |
8 | |
6 | |
5 | |
5 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.