on 08-13-2007 7:30 AM
Hi All,
The scenario is File to IDoc and i am using Sender FCC. The data is
H0010100120070802200708021001001 9001 001146
D001010012050000000706 0181820099000 0000099000
H0029100120070805200708051001004 9001 1 001146
D002910010123456789 0000000100000 0000100000
D002910010123456788 0200000050000 0000050000
H - Header
D - Data
Header includes Header data
Data also includes information
I have given in Recordset structure as Header,,Data,
But the xml structure after conversion is
<Header> </Header>
<Data> </Data>
<Data> </Data>
<Header> </Header>
<Data> </Data>
<Data> </Data>
But i need the structure to be as
<Header>
<Data> </Data>
</Header>
<Header>
<Data> </Data>
</Header>
Even Header also includes data.
So how can i specify in FCC. Is it possible in FCC, if so let me how can i go about it ??
Regards
Ramesh P
analyzing ur input file:
D002910010123456789 0000000100000 0000100000 and
D002910010123456788 0200000050000 0000050000 should be under
H0029100120070805200708051001004 9001 1 001146
and the same with
H0010100120070802200708021001001 9001 001146 and
D001010012050000000706 0181820099000 0000099000
if this is the case u get strucutre after convertion as
<Header> </Header>
<Data> </Data>
<Header> </Header>
<Data> </Data>
<Data> </Data>
are u getting this one? if not whats the issue?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
hi prabu,
you have determined exactly correct. I am receiving the content how you have specified.
But can i get the structure as
<Header>
<Data></Data>
<Data></Data>
</Header>
Because with structure which i am getting now i have problem in generating IDoc.
The IDoc generated only has
Segment1 - for header
Segment2 - for data >>>>>>>>>>>>>> other data are missing
Segment1 - for header
Segment2 - for data
how shall i go about to get it right in IDoc
Please give suggestion
regards
Ramesh P
with ur FCC inplace, D00101 is associated to the header H00101. In this case u will get only
<header>
<Data></Data>
</header>
and not
<header>
<Data></Data>
<Data></Data>
<header>
but for D0029 u will get as below as there are 2 line items associated with header H0029
<header>
<Data></Data>
<Data></Data>
<header>
Message was edited by:
Prabhu S
considering this data:
H0010100120070802200708021001001 9001 001146
D001010012050000000706 0181820099000 0000099000
H0029100120070805200708051001004 9001 1 001146
D002910010123456789 0000000100000 0000100000
D002910010123456788 0200000050000 0000050000
post the expected xml strucutre with the dataset and also the FCC parameters u had maintained.
Hi Prabu,
Thanks for your replies.
for the above data the xml structure i require is
<?xml version="1.0" encoding="utf-8"?>
<ns:StoreOrderDetails xmlns:ns="http://namespace.com">
<Header>
<RecordType>H</RecordType>
<TransactionNumber>0010</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<OrderDate>20070802</OrderDate>
<ExpectedDelivery>20070802</ExpectedDelivery>
<PurchaseOrderNumber>1001001</PurchaseOrderNumber>
<VendorSupplierNumber>9001</VendorSupplierNumber>
<OrderType>0</OrderType>
<EnteredBy>01146</EnteredBy>
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0010</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>2050000000706</PLUSKU>
<Quantity1></Quantity1>
<PositiveFlag></PositiveFlag>
<Price>018182</Price>
<Quantity2>0099000</Quantity2>
<VendorSKU></VendorSKU>
<OrderingNumber></OrderingNumber>
<Quantity3>000009900</Quantity3>
</Body>
</Header>
<Header>
<RecordType>H</RecordType>
<TransactionNumber>0029</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<OrderDate>20070805</OrderDate>
<ExpectedDelivery>20070805</ExpectedDelivery>
<PurchaseOrderNumber>1001004</PurchaseOrderNumber>
<VendorSupplierNumber>9001</VendorSupplierNumber>
<OrderType>1</OrderType>
<EnteredBy>001146</EnteredBy>
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0029</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>0123456789</PLUSKU>
<Quantity1></Quantity1>
<PositiveFlag></PositiveFlag>
<Price>000000</Price>
<Quantity2>0100000</Quantity2>
<VendorSKU></VendorSKU>
<OrderingNumber></OrderingNumber>
<Quantity3>000010000</Quantity3>
</Body>
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0029</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>0123456788</PLUSKU>
<Quantity1></Quantity1>
<PositiveFlag></PositiveFlag>
<Price>020000</Price>
<Quantity2>0050000</Quantity2>
<VendorSKU></VendorSKU>
<OrderingNumber></OrderingNumber>
<Quantity3>000005000</Quantity3>
</Body>
</Header>
</ns:StoreOrderDetails>
<b>FCC parameters</b>
Document Name - StoreOrderDetails
Document NameSpace - http://namespace.com
Recordset Structure - Header,,Body,
Recordset Sequence - Ascending
Key Field Name - Record Type
and i have given the conversion parameters
<b>and i am getting payload as</b>
<?xml version="1.0" encoding="utf-8"?>
<ns:StoreOrderDetails xmlns:ns="http://namespace.com">
<Header>
<RecordType>H</RecordType>
<TransactionNumber>0010</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<OrderDate>20070802</OrderDate>
<ExpectedDelivery>20070802</ExpectedDelivery>
<PurchaseOrderNumber>1001001</PurchaseOrderNumber>
<VendorSupplierNumber>9001</VendorSupplierNumber>
<OrderType>0</OrderType>
<EnteredBy>01146</EnteredBy>
</Header>
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0010</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>2050000000706</PLUSKU>
<Quantity1></Quantity1>
<PositiveFlag></PositiveFlag>
<Price>018182</Price>
<Quantity2>0099000</Quantity2>
<VendorSKU></VendorSKU>
<OrderingNumber></OrderingNumber>
<Quantity3>000009900</Quantity3>
</Body>
<Header>
<RecordType>H</RecordType>
<TransactionNumber>0029</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<OrderDate>20070805</OrderDate>
<ExpectedDelivery>20070805</ExpectedDelivery>
<PurchaseOrderNumber>1001004</PurchaseOrderNumber>
<VendorSupplierNumber>9001</VendorSupplierNumber>
<OrderType>1</OrderType>
<EnteredBy>001146</EnteredBy>
</Header>
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0029</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>0123456789</PLUSKU>
<Quantity1></Quantity1>
<PositiveFlag></PositiveFlag>
<Price>000000</Price>
<Quantity2>0100000</Quantity2>
<VendorSKU></VendorSKU>
<OrderingNumber></OrderingNumber>
<Quantity3>000010000</Quantity3>
</Body>
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0029</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>0123456788</PLUSKU>
<Quantity1></Quantity1>
<PositiveFlag></PositiveFlag>
<Price>020000</Price>
<Quantity2>0050000</Quantity2>
<VendorSKU></VendorSKU>
<OrderingNumber></OrderingNumber>
<Quantity3>000005000</Quantity3>
</Body>
</ns:StoreOrderDetails>
Hope you got the clear picture. Suggest me how to go about
Regard
Ramesh P
Message was edited by:
Ramesh Parashivamurthy
hi
my DT given is
Header
|
|
Body
why i have given like this is because my xml payload after FCC is coming as
Header
|
Body I just need help in converting the payload after FCC as Header |
|
Data
Then my target will be achieved.
I read many blogs, i didnt come across such situation. I think this is not possible thru FCC. Do i have make some other appraoch ??
Thanks and Regards,
Ramesh P
i doubt this bcoz the data the is pulled up after FCC is structured as per the data type defintion. hence we may need to have this handleed by changing the DT and FCC acordingly. Still there exists another option via maaping where u need to define another structre as per requirement and use it as a target MT and do the mapping
Hi Prabhu,
How does it matter .. as in FCC and data type def..
>>>FCC is structured as per the data type defintion
True but if you change the data type defination with out changing the FCC . It doesnt matter. The xml would be the same as before.
What i mean to say is that--
While FCC the structure of the data type / message type is not taken into consideration..
Regards,
Sumit Khetawat
Message was edited by:
Sumit Khetawat
prabhu,
i <b>require </b>the following structure after FCC
Header
|_ <data>
|_ <data>
</Header>
Header
|_ <data>
|_ <data>
</Header>
Header
|_ <data>
|_ <data>
</Header>
But now i am getting it as
Header </Header>
<data>
<data>
Header </Header>
<data>
<data>
Header </Header>
<data>
<data>
Hope you are clear
Thanks and regards
Ramesh P
Message was edited by:
Ramesh Parashivamurthy
hi
The exact problem is in my IDoc generation
my idoc is
Segment1
|__ Segment2
My current data type is
Header
Data
Hence i cannot map it correctly
i need my DT as
Header
|__Data
If i get my xml payload like this my problem will be solved and even the IDoc will be generated perfectly.
<i>just do a simple test by changing the DT strucutre like:</i>
I tried as you said, i ll get mapping error.
regards
Ramesh P
Hi Prabhu,
Cause then it needs to know the structure of the xml document to create.
Btw ..you can try changing the data type to a different structure and let the FCC be as it is. XML being created will still be the same..
If you understood wht i am saying ..just give it a try in your XI system...
Anyway..Might be both of us are thinking in a different way.
Regards,
Sumit
hi
I changed my DT
as
Header
|
|__ Body
I am receiving any error while mapping. Because there is data generated for Data node.
="MAPPING">EXCEPTION_DURING_EXECUTE</SAP:Code>
<SAP:P2>com.sap.aii.utilxi.misc.api.BaseRuntimeException</SAP:P2>
<SAP:P3>RuntimeException in Message-Mapping transformatio~</SAP:P3
Because the target node cannot be generated.
Since we have specified as in FCC as Header,,Data, the DT should be
Header </Header>
Data </Data>
Data </Data>
but my requirement is
<Header>
Data </Data>
Data </Data>
</Header>
Thanks and Regards
Ramesh P
hi
if my <b>source </b>xml structure is like this
<Header> </Header>
<Data></Data>
<Data></Data>
Can we <b>change </b>this to
<Header>
<Data></Data>
<Data></Data>
</Header>
both Header and Data are 0... unbounded.
Can we change it? is it possible in FCC or we need to use some node functions as such
Regards
Ramesh P
Ramesh
I have tried a solution which you are discussing and it will give the required...You posted sample XML file you are getting right(which is not the required one)...take that as input file XML for mapping and create a target data type and message type as follow
StorOrderDetails_Target
--Header (1..1)
-RecordType
-Transnum
-.........
-Body (0 to Unbounded)
-RecordType
-TransNum
-........
and map your source XML to corresponding fields in target...just like one to one map..You will get the required mapping you want..
if you have any questions let me know....i guess it should work
Hi Guru
I tried this intermediate mapping. After the mapping the data generated is as follows
<ns0:StoreOrderDetailsIntermediate>
−
<Header>
<RecordType>H</RecordType>
<TransactionNumber>0010</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<OrderDate>20070802</OrderDate>
<ExpectedDelivery>20070802</ExpectedDelivery>
<PurchaseOrderNumber>1001001</PurchaseOrderNumber>
<VendorSupplierNumber>9001</VendorSupplierNumber>
<OrderType/>
<EnteredBy>001146</EnteredBy>
−
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0010</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>2050000000706</PLUSKU>
<Quantity1/>
<PositiveFlag/>
<Price>018182</Price>
<Quantity2>0099000</Quantity2>
<VendorSKU/>
<OrderingNumber/>
<Quantity3>000009900</Quantity3>
</Body>
−
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0029</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>0123456789</PLUSKU>
<Quantity1/>
<PositiveFlag/>
<Price>000000</Price>
<Quantity2>0100000</Quantity2>
<VendorSKU/>
<OrderingNumber/>
<Quantity3>000010000</Quantity3>
</Body>
−
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0029</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>0123456788</PLUSKU>
<Quantity1/>
<PositiveFlag/>
<Price>020000</Price>
<Quantity2>0050000</Quantity2>
<VendorSKU/>
<OrderingNumber/>
<Quantity3>000005000</Quantity3>
</Body>
−
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0030</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>0123456789</PLUSKU>
<Quantity1/>
<PositiveFlag/>
<Price>000000</Price>
<Quantity2>1000000</Quantity2>
<VendorSKU/>
<OrderingNumber/>
<Quantity3>000100000</Quantity3>
</Body>
−
<Body>
<RecordType>D</RecordType>
<TransactionNumber>0030</TransactionNumber>
<StoreNumber>1001</StoreNumber>
<PLUSKU>0123456788</PLUSKU>
<Quantity1/>
<PositiveFlag/>
<Price>020000</Price>
<Quantity2>1000000</Quantity2>
<VendorSKU/>
<OrderingNumber/>
<Quantity3>000100000</Quantity3>
</Body>
</Header>
</ns0:StoreOrderDetailsIntermediate>
The structure all messed up Guru, Now the structure comes as
Header
Body
Body
Body
Header
Header
regards
Ramesh P
Hi Ramesh,
>>>>>But i need the structure to be as--
As per the test data given by you..You mean like this way ?
<Header>
<Data> </Data>
</Header>
<Header>
<Data> </Data>
<Data> </Data>
</Header>
Check this blog.. /people/shabarish.vijayakumar/blog/2006/02/27/content-conversion-the-key-field-problem
Also this link from sap help..
http://help.sap.com/saphelp_nw04/helpdata/en/0d/00453c91f37151e10000000a11402f/frameset.htm
Regards,
Sumit
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
87 | |
10 | |
10 | |
9 | |
7 | |
6 | |
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.