on 06-07-2012 1:13 PM
Hi All,
I've a File to IDoc scenario in which I've a Header, Detail & Trailer records where Header is ignored. Details & Trailer are mapped. When I test the mapping in Test Tab I get a structure like below:
<?xml version="1.0" encoding="UTF-8"?>
<ns0:MT_POC xmlns:ns0="http://FiletoIDoc/POC">
<Header>
<Type/>
<Date/>
<Filename/>
</Header>
<Detail>
<Type/>
<OrganizationChannel/>
</Detail>
<Trailer>
<Type/>
<Sequence_no/>
<Date/>
<Filename/>
<Total/>
</Trailer>
</ns0:MT_POC>
whereas when the file is picked from PI drop zone, i could see the structure like
<?xml version="1.0" encoding="utf-8"?>
<ns:MT_POC xmlns:ns="http://FiletoIDoc/POC">
<Recordset>
<Detail>
<Type>D</Type>
<OrganizationChannel>HONDA</OrganizationChannel>
</Detail>
<Trailer>
<Sequence_no>001</Sequence_no>
<Date>20120430080025</Date>
<Filename>Test.txt</Filename>
<Total>50</Total>
</Trailer>
</Recordset>
</ns:MT_POC>
Now my query is in my Data Type I've not created a node called "Recordset" then I'm not sure how is the xml getting convert in this format. Due to this mismatch in the structure I'm getting an error like below:
<SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_IDOC_RUNTIME</SAP:Code>
<SAP:P1>MSGGUID 6741CBF4AB484F862F2DE29A8EEB23F5: Tag found instead of tag IDOC BEGIN=</SAP:P1>
Kindly let me know how can I resolve this issue.
Hi All,
Thank you for all your support. The problem was resolved once I've recreated all the configuration objects again and also re-imported the IDoc Metadata.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Sreedhar,
Check and remove the RecordSet name in the FCC.It will do.
Lakshman V.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
add paramter ignorerecordset to true..it works
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Sreedhar,
>>Now my query is in my Data Type I've not created a node called "Recordset"
This is because of the File Sender Adapter File Content Conversion.
You have to ignore the Recordset.
This is the parameter and SAP help says below,
ignoreRecordsetName
A <Recordset> element is inserted in the XML structure for each recordset structure. This level is not always required, particularly if the recordset only contains one structure definition.
If you set the parameter to true, the <Recordset> element is not inserted.
Edited:
And for the error
"IDOC_ADAPTER">ATTRIBUTE_IDOC_RUNTIME
in mapping, i guess you have missed to map the "@Begin" attribute under <IDOC> node. This is mandatory and you can just map a constant '1' to it.
Message was edited by: Zameer Farook
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
when you set that parameter to true, your xml will be formed at Sender File Adapter without any <Recordset> node. what is the error you get? is it the same in message mapping?
"<SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_IDOC_RUNTIME</SAP:Code>
<SAP:P1>MSGGUID 6741CBF4AB484F862F2DE29A8EEB23F5: Tag found instead of tag IDOC BEGIN=</SAP:P1> "
If so, did you map the IDOC/BEGIN attribute with some constant?
Hi,
A few thoughts to check that were not mentioned yet:
1. Did you import the IDoc metadata from some ECC system for your scenario, or just created it yourself from scratch manually?
2. Do you have the right Operation Mapping assigned in your Interface Determination?
3. At which particular step the SXMB_MONI error occurs? I mean, on the left of the SXMB_MONI window you can find a list of steps showing how PI processed the message. Which particular one has the red flag meaning an error?
Regards,
Greg
And what about my other two questions? The error at Call Adapter step means that the mapping itself is executed successfully. But the error is caused by an incorrect structure being passed to the receiver communication channel, for instance if no mapping at all was performed, or an incorrect one was chosen by mistake.
Regards,
Greg
Hi Greg,
I apologize to miss out 1st two questions
1) Did you import the IDoc metadata from some ECC system for your scenario, or just created it yourself from scratch manually?
-->I imported it from ECC system
2. Do you have the right Operation Mapping assigned in your Interface Determination?
--> Yes Assigned correct Interface Mapping in Interface Determination
But still getting the same error.
Hi Greg,
When I checked the Inbound Message in SXMB_MONI I'm getting the xml like
<?xml version="1.0" encoding="utf-8"?>
<ns:MT_POC xmlns:ns="http://FiletoIDoc/POC">
where it should be like
<?xml version="1.0" encoding="utf-8"?>
<ns0:MT_POC xmlns:ns="http://FiletoIDoc/POC">
Please correct me if I'm wrong but the error is while picking the file only I think.
Regards,
Sreedhar
Hi Sreedhar,
Since your mapping is working fine, it should not be an issue.
One more option is you please check if the cache is updated, as you did the mapping for IDOC/BEGIN node. Also try to delete the particular IDoc metadata in IDX2 transaction in your PI system and re create again. definitely it looks like an issue with IDoc structure.
You can share the mapping output xml screenshot if the issue still persists.
Dear Sreedhar,
In fact, this XML:
<?xml version="1.0" encoding="utf-8"?>
<ns:MT_POC xmlns:ns="http://FiletoIDoc/POC">
and this XML:
<?xml version="1.0" encoding="utf-8"?>
<ns0:MT_POC xmlns:ns0="http://FiletoIDoc/POC">
are exactly identical in terms of processing. It doesn't really matter what prefix you assign to a namespace, just like it doesn't matter what name you use for a variable, the only thing is to use it consequently. So I believe this is not the source of your problem.
And what is the payload on the receiver side? Could you attach it here?
Regards,
Greg
Hi,
Below is the payload which I'm getting
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?><!-- Call Adapter --> <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand=""><SAP:Category>XIAdapter</SAP:Category><SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_IDOC_RUNTIME</SAP:Code><SAP:P1>MSGGUID 8603F3ECBF1C42950D93E22947E67DB1: Tag found instead of tag IDOC BEGIN=</SAP:P1><SAP:P2/><SAP:P3/><SAP:P4/><SAP:AdditionalText/><SAP:ApplicationFaultMessage namespace=""/><SAP:Stack>Error: MSGGUID 8603F3ECBF1C42950D93E22947E67DB1: Tag found instead of tag IDOC BEGIN=
</SAP:Stack><SAP:Retry>M</SAP:Retry></SAP:Error>
Regards,
Sreedhar
User | Count |
---|---|
86 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
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.