on 02-15-2010 8:10 AM
Hi SapAll.
here i have got a tricky situation where in a Idoc(Matmas.Matmas05) to file Interface thorugh XI there is an error message raising in sxmb_moni.
to get the conclusion for this error i just copied the message from Sxmb_moni and tried with Message mapping in Design by just pasting there,after all this process iam getting the error message as below
Cannot produce target element /MT_FCI_MATERIAL/fcidataimport/objects/object/extensions/collection[3]/row/fields/PLANTEXT. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd
When i go the mapping program it is defined as
if Matmas.matmas05WERKS(sender) exists then map werks to plant tex(reciver MType)t else map constant with(null value) to reciever(MType).
and the important thing is the here the occurance of field plant text is 1.1.
so iam not sure on why the error was raised in message mapping as every thing is fine.
can any body help in slolving this.
regards.
Varma
Hi Varma,
*Cannot produce target element /MT_FCI_MATERIAL/fcidataimport/objects/object/extensions/collection[3]/row/fields/PLANTEXT*
means that the mapping to the field PLAINTEXT is not correct.
Since the occurence of PLAINTEXT is 1..1 u need to map one variable always.
If there is no mapping required please map with a constant or make PLAINTEXT field optional(0..1).
If still prblm occurs pl do post the problem...
Babu.
Edited by: hlbabu123 on Feb 15, 2010 1:57 PM
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi.
here the occurance of the field plant text is 1.1 and in case if the sender field doesnt exist then i also mapped the reciever field plant text with constant(space or no value).
so there should be no chance to get the error as i also defined the mapping in such a way that if there is no value at sender werks then map constant(no value or space) with plant text(reciever).
regards.
Varma
When you are using IfWithElse there should be some value in the IF-queue......in your case you are not passing any value for the source node and hence the result of IfWithEsle is getting suppressed.....so use a mapWithDefault function just after the source node/ or at least try to pass some value to the if-queue when the source node is absent from the input payload.
Regards,
Abhishek.
Hi,
So it means that, ur source XML which is coming is having a problem.
Please go through the source xml once. May be the fields which u are mapping with are not populationg.
As mentioned in above post... by Abhishek... please take care of occuerence also using the context changes.
If the field is not there in source and u r trying to map... then it will throw the above said problem.
Hence u use two mappings, which will make sure that every field is populating properly... if not use \
exists node function, and if conditions.
If node or element doesn't exist assign a default values.
I hope this should work fr you...
Babu
if Matmas.matmas05WERKS(sender) exists then map werks to plant tex(reciver MType)t else map constant with(null value) to reciever(MType).
When WERKS's is absent the IF doesn't have a value and hence the whole context gets suppressed which returns the error. What you have configured would work fine if WERKS is there but with no value. Here the case is a bit different. WERKS itself is not coming. Your logic doesn't handle that. Hope you got what I intend to convey.
Correct me if I am wrong but the logic is you need to pass WERKS value to PLANTTEXT if value comes else map a blank constant...right??
If so, why not just use mapWithDefault
WERKS -> mapWithDefault(blank contant) -> PLANTTEXT
This way if WERKS comes teh value would be passed, if comes with blank value blank value would eb passed if doesn't come atall, even then a blank value would be passed.
Regards
Soumen...
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Please check whether the field is string or anything else and also the value which is coming as output is ok as per the data type.
Also if possible can you provide the xsd part for the particular field.
Regards,
Tiny
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
When you test and get the above error, do you have an occurence of the source node....Matmas.matmas05WERKS?
Regards,
Abhishek.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
98 | |
11 | |
11 | |
10 | |
10 | |
8 | |
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.