on 09-15-2008 10:07 AM
Hi,
I have file to Idoc scenario.
I receive csv file with multiple records.
The requirement is to create an Idoc for each record.
For eg.
source file
A1,B1,C1
A2,B2,C2
A3,B3,C3
After FCC
<MT>
<TRANS>
<ROW>
<A>A1</A>
<B>B1</B>
<C>C1</C>
</ROW>
<ROW>
<A>A2</A>
<B>B2</B>
<C>C2</C>
</ROW>
<ROW>
<A>A3</A>
<B>B3</B>
<C>C3</C>
</ROW>
</TRANS>
<MT>
I have first tested it with only 1 record to test end to end connectivity. It works as expected and Idoc is posted to target system.
Now when I am trying to send multiple records, I am getting some issues.
Below are the steps that I have taken to process multiple records:
1. Changed the cardinality of ROW (child of RecordSet) from 1 to Unbounded.
2. Changed the occurance of Idoc to Unbounded.
3. Mapped ROW to Idoc root.
I have tested the mapping in IR and it generates multiple IDOCs.
When I send the test file, it fails with error Tag found instead of tag IDOC BEGIN=
I can see the xml message created with multiple ROWs in XI by File adapter in sxmb_moni.
When I do Test Configuration in ID, with the XML message extracted from sxmbmoni, the result that I got was:_
<?xml version="1.0" encoding="UTF-8"?>
<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge"><ns0:Message1></ns0:Message1></ns0:Messages>
This means that idoc was not created while mapping.
But the same sample message works OK in IR!
Pls help where I have missed.
Regards,
Anirudh.
Hi Check this and analyze your error if it helps.
http://help.sap.com/saphelpnw04/helpdata/en/6b/874a4273bb3830e10000000a155106/frameset.htm_
Thanks!
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,
It is due to receiver end mandatory fields input problem, segment field need to pass 1 always and meanwhile fill control record according to ur parameters. It will wok. If u want each record make as idoc need to set 1..1 occurrence at receiver idoc structure. It will work without fail.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
You can do this by changing the occurance's towards the target element.
Or Use
CreateIf: Use createIf () to create a tag in the target structure depending on the condition. Use createIf, if the nodes at the target side have to be created only after certain condition is true.
Here nodes InternalRequest and ExternalRequest are created depending on the value of Type attribute. InternalRequest node is created if value Type is u2018Internalu2019 and ExternalRequest node is created if value Type is u2018Externalu2019
Edited by: Sainath Chutke on Sep 15, 2008 11:44 AM
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Aniruddh,
It seems that there is some problem in FCC. Check all the parameters.
You can also check the Source file in any editor for proper format.
Thanks!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Sudhir,
Thanks for your response.
FCC is working fine. I have taken the XML message in XI created after FCC from csv sample message.
I have tested this message in IR by placing it between
<?xml version="1.0" encoding="UTF-8"?>
<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
<ns0:Message1>
</ns0:Message1>
</ns0:Message>
It is working fine and Idocs are created in mapping in IR.
But the same sample message is creating below output ID!
<?xml version="1.0" encoding="UTF-8"?>
<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge"><ns0:Message1></ns0:Message1></ns0:Messages>
Regards,
Anirudh.
User | Count |
---|---|
93 | |
11 | |
10 | |
9 | |
9 | |
7 | |
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.