File Content Conversion for Sender Channel
Hi Experts,
We are using SAP - PI 7.11 system. We have a scenario where we wld be getting 7-8 records and the record structure repeats n no.of times in a flat-file and while converting the Flat -File data into XML data we are facing an issue , explained below with an example :
HEADER : KeyField , f2, f3, f4, f5, f6, f7, f8
RECORD1 : f1, f2, KeyField , f3, f4, f5, f6, f7 , f8
RECORD2 : f1, f2, f3, f4, KeyField, f5, f6, f7, f8
TRAILER : keyField, f1, f2, f3, f4,f5, f6, f7, f8.
Its a fixed length flat - flie. Now the problem is : we have KeyField Value for RECORD1 as '0' and when the f3 of TRAILER is '0' the record is getting formed as RECORD1 instead TRAILER even i get proper keyField value for TRAILER RECORD. Could you please tell me why its happenning so ? And please provide the solution for this. I have used all the parameters like : fieldNames, fieldfixedLengths, keyFieldValue, endSeparator and ignoreRecordsetname and lastFieldOptional and fromConfiguration.
But still i am not able to get the proper XML out of this flat - file. Could you please suggest any solution for this asap.
Thanks & Best Regards,
Lakshman
Most of the configuration seems fine,
Just validate your configuration against below configuration, which is working fine for me,
Recordset Structure : HEADER, 1, RECORD1, ,RECORD2,,TRAILER,1
Recordset Sequence : Ascending
Recordsets per message : *
Key Field Name : recid
Key Field type : string
HEADER.fieldFixedLengths *********************
HEADER.endSeparator 'nl'
HEADER.fieldNames ************************
HEADER.keyFieldValue 01
HEADER.keyFieldlnStructure add
HEADER.lastFieldsOptional YES
-santosh.
Similar Messages
-
Reg:File content conversion for Sender File Adaptor
Hi all,
i would like to know , how the file content conversion is written for the below mentioned XML code. The flat file will have only the table name and the fieldname
<?xml version="1.0" encoding="UTF-8"?>
<ns0:Mt_File xmlns:ns0="http:/file_to_idoc">
<query_table>ztable1</query_table>
<row_count/>
<Fields>
<item>
<fieldname>zempno</fieldname>
</item>
</Fields>
</ns0:Mt_File>
regards
priyaFirst you create the conversion rules, then you create the XML structure accordingly, not the other way.
online help will help you -
Content Conversion for Sending Communication Channel using File Protocol
I have a file as follows:
CUSC,CRCA,OBAL,DATE
10197,0111,15250094.05,20071008
10758,0111,8131440.17,20071008
12939,0111,8212006.53,20071008
13129,0111,6953749.77,20071008
13331,0111,8607294.15,20071008
13579,0111,11972774.95,20071008
13676,0111,6636698.47,20071008
What is the content conversion that I can proceed with so that I can go with the mapping. I have to use File Adapter?
Please HelpHi,
Check below links for Content conversion.
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
/people/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
/people/venkat.donela/blog/2005/06/08/how-to-send-a-flat-file-with-various-field-lengths-and-variable-substructures-to-xi-30
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/jeyakumar.muthu2/blog/2005/11/29/file-content-conversion-for-unequal-number-of-columns
/people/shabarish.vijayakumar/blog/2006/02/27/content-conversion-the-key-field-problem
/people/michal.krawczyk2/blog/2004/12/15/how-to-send-a-flat-file-with-fixed-lengths-to-xi-30-using-a-central-file-adapter
/people/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
Regards,
Phani
Reward points if Helpful -
Key field values for file content conversion at sender communicationchannel
Hi all,
I am working on scenario File to Idoc.In this scenario at the sender side we configure the file content conversion for .CSV file.
In the flat file i am having more than one orders, XI will pick the file and creates a separate Idoc for each sales order at r/3.
We have similar fields "Order Item Number" both header and item.
If we got '00000' on the Header item then it should create a new idoc at the r/3 side other wise it will create line item.
Order item number will be 00000 for header but it will differ from order item to item.
source structure
Order Header
Order type
Sold-to-code
PO number
Order item number
Order date
AdresName1
AdresName2
Street and House number
Postal Code
City
Country Code
Filler
Order Item
Order type
Sold-to-code
PO number
Order item number
Order date
Product code
Order quantity
Item text
Filler
Now I have some questions....
I don't have standard filed values to give the key fileds at source structure.
I need to create the Idoc at r/3 system for each individual record.
Is it possible to create new idoc with out using the Key filed value?
If it is possible then how can i proceed with fcc?
please give me your valuable suggestions
Best Regards,
satya
Edited by: satyatanuku on Mar 3, 2010 1:41 PM
Edited by: satyatanuku on Mar 3, 2010 1:42 PM
Edited by: satyatanuku on Mar 3, 2010 1:44 PMHi,
Just check the Content Conversion Parameters- Recordset Structure.
If you have filled in this parameter with
Header,1,Item,1
then change it to
Header,1,Item,3
Regards
Chandra -
File content conversion in Sender Adapater for multiple occurances
Hi ,
I am mapping from flat file to idoc .
My flat file is a tab demilited
Since the idoc would have structure
like header , lineitem , schedule
in my flat file conversion
i am giving recordset structure
as header,1,lineitem ,,schedule,
since lineitem would be repeated many times
Bt if i give * i need to give a keyfieldname
which would mean that keyfieldname has to appaer in header and schedule .
since in my case my Column values in header , lineitem and schedule are different
how can i do the file conversion in this case
i can doing something like this
header.keyFieldValue ""
schedule.keyFieldValue ""
header.keyFieldInStructure ignore
schedule.keyFieldInStructure ignore
i am not even sure if thats the correct way
Thanks
AmitHi Amit,
Take a look at these...
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/jeyakumar.muthu2/blog/2005/11/29/file-content-conversion-for-unequal-number-of-columns
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
cheers,
Prashanth
P.S Please mark helpful answers -
File Content Conversion in Sender File
how to convert a fixed length flat file without end seperator sent to XI to a xml form?
Pleasegive me the idea of Sender Adapter configuration details (esp endSeperator)Hi,
For file content convertion if there are fixed lenth then no need to give the feildseperator,just give the fixed lenths for all the feild in FCC.
check below links for FCC
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
/people/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
/people/venkat.donela/blog/2005/06/08/how-to-send-a-flat-file-with-various-field-lengths-and-variable-substructures-to-xi-30
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/jeyakumar.muthu2/blog/2005/11/29/file-content-conversion-for-unequal-number-of-columns
/people/shabarish.vijayakumar/blog/2006/02/27/content-conversion-the-key-field-problem
/people/michal.krawczyk2/blog/2004/12/15/how-to-send-a-flat-file-with-fixed-lengths-to-xi-30-using-a-central-file-adapter
/people/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
Regards,
Phani.
Reward Points If Helpful -
FCC (File Content conversion)-In sender
Hi All,
Using FCC in sender i need to convert text to xml.Such that my text file format is
Line1
Line2
Line3
All the three lines is having some data..My source data type structure is
DT_Emp
>Emp_Info
>Header
ID----
(0..1)
>Details
Line----
(0..unbounded)
Now i need to get data from text file into only line element..My ID element should be blank..XML should have ID element but it should not be populated from input file.How to get this using FCC..Is there any parameters for this?
Can anyone give some useful ideas
Regards
VenkatHI,
For FCC Check this links.
File content conversion sites
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
/people/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
/people/venkat.donela/blog/2005/06/08/how-to-send-a-flat-file-with-various-field-lengths-and-variable-substructures-to-xi-30
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/jeyakumar.muthu2/blog/2005/11/29/file-content-conversion-for-unequal-number-of-columns
/people/shabarish.vijayakumar/blog/2006/02/27/content-conversion-the-key-field-problem
/people/michal.krawczyk2/blog/2004/12/15/how-to-send-a-flat-file-with-fixed-lengths-to-xi-30-using-a-central-file-adapter
/people/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
Regards,
phani -
File content conversion on Sender Side
Hi,
I am doing file content conversion on sender side.when i am executing the scenario,i am getting the following error in sxmb_moni:
Invalid at the top level of the document. Error processing resource 'file:///D:/Documents and Settings/...............
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?><!-- Inbound Message --> DOC_HEADER ...
when i right click on the pyaload and select view source
its displaying the whole flat file with the following line at the beginning:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?><!-- Inbound Message -->
i have given all the parameters correctly....
in sxmb_moni.....the error category is Mapping and the error id id EXCEPTION_DURING_EXECUTE
Please help me with this error.
thanks n regards,
anuradhaHi !!
The best way to debug would be to add TRACE statements in your mappigs. In both Graphical and java Mapping.
Trace out the entire output of java mapping and see if this is the input that the next mapping expects.
For trace , http://help.sap.com/saphelp_nw04/helpdata/en/c8/98e7d5c1620642973565ea3dd319d1/content.htm
refr this links also
Fatal Error: com.sap.engine.lib.xml.parser.ParserException: Name expected
unsported character error in message mapping
Re: HTTP to RFC Mapping error:com.sap.aii.utilxi.misc.api.BaseRuntimeException:
Exception com.sap.aii.utilxi.misc.api.BaseRuntimeException
Re: Outbound error
Re: mapping error
error in file to file
have a look at this weblog on how to test your mapping
/people/michal.krawczyk2/blog/2005/09/16/xi-how-to-test-your-mapping-in-real-life-scenarios
Thanks !!! -
Hierarchy on file content conversion for receiver?
Y'all,
I'm stuck in this problem and I haven't find a solution to solved it... so, all your clues and reply's are really appreciate...
The basic problem is a File content conversion for a receiver C.C. that is not working and it's raising some errors in the RWB, I have gone thru some blogs but I still having a lot of doubts...
I want to produce a flat TXT file that will have a line for every node or subnode, it doesn't matter if it's not represented as hierarchical structure like this one... but the records must be produced or written in the same order...
Man_Del_Header as main node with Man_Header, Delete_Detail and Trailer as subnodes...
<?xml version="1.0" encoding="UTF-8"?>
<ns1:MT_DISTRIBUTOR_DELETE xmlns:ns1="http://xxx.com/xi/POSout">
<Man_Del_Header>
<MD_Header>|HM|1|</MD_Header>
<MD_StoreNumber>051</MD_StoreNumber>
<MD_filler1>|2|0000|3|</MD_filler1>
<MD_EffDate>09/17/07</MD_EffDate>
<MD_filler2>|4|005|5|dsdvnd|7|</MD_filler2>
<MD_BatchNumber>500</MD_BatchNumber>
<MD_fiiller3>|8|</MD_fiiller3>
<MD_BatchDescr>DELETE PREV CST BTCH</MD_BatchDescr>
<MD_filler4>|10|D|</MD_filler4>
<MD_linef>1</MD_linef>
<Man_Header>
<Man_Header>|HM|1|</Man_Header>
<Man_StoreNumber>051</Man_StoreNumber>
<Man_filler1>|2|0000|3|</Man_filler1>
<Man_EffDate>09/17/07</Man_EffDate>
<Man_filler2>|4|005|5|dsdvnd|7|</Man_filler2>
<Man_BatchNumber>500</Man_BatchNumber>
<Man_filler3>|8|</Man_filler3>
<Man_BatchDescription>Delete Distributor</Man_BatchDescription>
<Man_filler4>|</Man_filler4>
<Man_linef>Constant</Man_linef>
</Man_Header>
<Delete_Detail>
<Delete_Detail>|D|901|170|</Delete_Detail>
<Delete_DistribNumber>0000005010</Delete_DistribNumber>
<filler9>|</filler9>
<delete_linef>1</delete_linef>
</Delete_Detail>
<Delete_Detail>
<Delete_Detail>|D|901|170|</Delete_Detail>
<Delete_DistribNumber>0000005011</Delete_DistribNumber>
<filler9>|</filler9>
<delete_linef>1</delete_linef>
</Delete_Detail>
<Trailer>
<Trailer>|T|1|</Trailer>
<TotalRecCnt>00005</TotalRecCnt>
<filler1>|2|</filler1>
<NoOfHeaders>00002</NoOfHeaders>
<filler2>|3|</filler2>
<NoOfAdds>00000</NoOfAdds>
<filler3>|4|</filler3>
<NoOfChanges>00000</NoOfChanges>
<filler4>|5|</filler4>
<NoOfDeletes>00002</NoOfDeletes>
<filler5>|13|</filler5>
<NoOfSubstitution>00000</NoOfSubstitution>
<filler6>|</filler6>
<linef>1</linef>
</Trailer>
</Man_Del_Header>
<Man_Del_Header>
<MD_Header>|HM|1|</MD_Header>
<MD_StoreNumber>061</MD_StoreNumber>
<MD_filler1>|2|0000|3|</MD_filler1>
<MD_EffDate>09/17/07</MD_EffDate>
<MD_filler2>|4|005|5|dsdvnd|7|</MD_filler2>
<MD_BatchNumber>500</MD_BatchNumber>
<MD_fiiller3>|8|</MD_fiiller3>
<MD_BatchDescr>DELETE PREV CST BTCH</MD_BatchDescr>
<MD_filler4>|10|D|</MD_filler4>
<MD_linef>1</MD_linef>
<Man_Header>
<Man_Header>|HM|1|</Man_Header>
<Man_StoreNumber>061</Man_StoreNumber>
<Man_filler1>|2|0000|3|</Man_filler1>
<Man_EffDate>09/17/07</Man_EffDate>
<Man_filler2>|4|005|5|dsdvnd|7|</Man_filler2>
<Man_BatchNumber>500</Man_BatchNumber>
<Man_filler3>|8|</Man_filler3>
<Man_BatchDescription>Delete Distributor</Man_BatchDescription>
<Man_filler4>|</Man_filler4>
<Man_linef>Constant</Man_linef>
</Man_Header>
<Delete_Detail>
<Delete_Detail>|D|901|170|</Delete_Detail>
<Delete_DistribNumber>0000005012</Delete_DistribNumber>
<filler9>|</filler9>
<delete_linef>1</delete_linef>
</Delete_Detail>
<Delete_Detail>
<Delete_Detail>|D|901|170|</Delete_Detail>
<Delete_DistribNumber>0000005013</Delete_DistribNumber>
<filler9>|</filler9>
<delete_linef>1</delete_linef>
</Delete_Detail>
<Delete_Detail>
<Delete_Detail>|D|901|170|</Delete_Detail>
<Delete_DistribNumber>0000005014</Delete_DistribNumber>
<filler9>|</filler9>
<delete_linef>1</delete_linef>
</Delete_Detail>
<Trailer>
<Trailer>|T|1|</Trailer>
<TotalRecCnt>00006</TotalRecCnt>
<filler1>|2|</filler1>
<NoOfHeaders>00002</NoOfHeaders>
<filler2>|3|</filler2>
<NoOfAdds>00000</NoOfAdds>
<filler3>|4|</filler3>
<NoOfChanges>00000</NoOfChanges>
<filler4>|5|</filler4>
<NoOfDeletes>00003</NoOfDeletes>
<filler5>|13|</filler5>
<NoOfSubstitution>00000</NoOfSubstitution>
<filler6>|</filler6>
<linef>1</linef>
</Trailer>
</Man_Del_Header>
</ns1:MT_DISTRIBUTOR_DELETE>
|HM|1|051|2|0000|3|09/17/07|4|005|5|dsdvnd|7|500|8|DELETE PREV CST BTCH|10|D|1
|HM|1|051|2|0000|3|09/17/07|4|005|5|dsdvnd|7|500|8|Delete Distributor|Constant
|D|901|170|0000005010|1
|D|901|170|0000005011|1
|T|1|00005|2|00002|3|00000|4|00000|5|00002|13|00000|1
|HM|1|061|2|0000|3|09/17/07|4|005|5|dsdvnd|7|500|8|DELETE PREV CST BTCH|10|D|1
|HM|1|061|2|0000|3|09/17/07|4|005|5|dsdvnd|7|500|8|Delete Distributor|Constant
|D|901|170|0000005012|1
|D|901|170|0000005013|1
|D|901|170|0000005014|1
|T|1|00006|2|00002|3|00000|4|00000|5|00003|13|00000|1
So as you can see, i wanna produce a flat file that will have line or record for each node, it doesn't matter that it has a hierarchy or a deeper level, it should be a simple flat file...
The thing is that i have been trying to setup the receiver comm. channel and it's raising some errors like Could not process due to error:
<i>java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'java.lang.Exception: Consistency error: more fields found in XML structure than specified in conversion parameters! (Value 'XXXX')', probably configuration error in file adapter (XML parser error)'</i>
I have checked this blog:
/people/karthiknarayan.kesavan2/blog/2007/08/22/file-content-conversion-for-multi-hierarchical-structure
Unfortunately i don't know if there's another way to achieve this...Jerry,
it easy if you go with multi mapping concept and without BPM if you are above >XI3.0 SP14.and use Append mode in the receiver file adapter.
just create the target structure like root under that Man_Del_Header,Man_Header,Detail,Trailer at the same level but got be careful with occurences.
<b>Source:</b>
I think from your structure you have
Man_Del_Header (1-unb)
Man_Header (1-1)
detail (0-unb ) may be (1-unb)
trailer (1-1)
create <b>target DT</b> like:
ROOT
..Man_Del_Header (1-1)
..Man_Header (1-1)
..detail (0-unb ) may be (1-unb)
..trailer (1-1)
all are at same level under ROOT.
create MT,MI,MM,IM.
in MM just map correspoding fields and if you have any unbounded onces map the nodes too. and map Man_Del_Header in the source to MT_XYZ (important)
and in the MM go to MESSAGES tab and change the occurences of the target Message to 0-unbounded same way in the interface mapping 0-unbounded.
here it create anothe extra node in the mapping something like Message1,this is ok.
and in ID just create all other objects like as usual except creating Interface determination ,in that select the extended radio button.
in reciever File CC use FCC ,would be very simple in the recordsetstrcture give
your four nodes Man_Del_Header,Man_Header,Detail,Trailer.
and use either fixed or field seperator.use append mode in recv File CC otherwise it will generate files as many occurences your source "Man_Del_Header" has ,cos we are mapping it to the MT--xyz .
thats it you are ready to go...
if any error post back here again.
you can make use of this thread
/people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible (here there are two target DT ,but you just create one DT,remaining are similar)
good luck.
Babu -
File Content Conversion for Unequal Number of Columns
Hi,
Iam following this thread FCC for Unequal Number of Columns.
/people/jeyakumar.muthu2/blog/2005/11/29/file-content-conversion-for-unequal-number-of-columns
when iam doing ,iam getting an error
Conversion initialization failed: java.lang.Exception: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found: Parameter 'TOTALSET.fieldFixedLengths' or 'TOTALSET.fieldSeparator' is missing Consistency check: no. of arguments in 'TOTALSET.fieldFixedLength' does not match 'TOTALSET.fieldNames' (0 <> 1)
My conversion parameters are
Recordset Structure : TOTALSET,*
TOTALSET.fieldNames : ITEMSET
ignoreRecordsetName : true
TOTALSET.fieldSeparator : 'nl'
My file structure is as below
01,021000021,G4886704,080919,0742,001,,,2
02,G4886704,021000021,1,080918,0742,,2
03,000000135073477,,010,105303839,,,015,489113155,,,045,489039455,,,072,73700
Please help in resoving the error.
Thanks in Advance
SrinivasHi Srivinas,
your file structure is as below
01,021000021,G4886704,080919,0742,001,,,2
02,G4886704,021000021,1,080918,0742,,2
03,000000135073477,,010,105303839,,,015,489113155,,,045,489039455,,,072,73700
So it's easy, you have to use KEYFIELD option, coz you have something like that :
Line 1 : keyfield = 01 following by a limited number of columns (e.g 30 fields for Structure1)
Line 2 : keyfield = 02 following by a limited number of columns (e.g 14 fields for Structure2)
Line 3 : keyfield = 03 following by a limited number of columns (e.g 23 fields for Structure3)
Thanks to the Keyfield, you define a field which is present in each line that you can used to distinguished the different structures of lines. In your case, it seems that the keyfield is the first column (01, 02, 03).
Try to use that:
Recorset = TOTALSET (and don't use option "ignoreRecordsetName : true")
Recordset structure =Structure1,1,Structure2,(star),Structure3,(start) (the difficulty will be to find the good use of "*" and "1", but after some tests you will find the good one).
Note: replace (start) by the character " * "
Key field value = keyfield
Key field type = String (case sensitive)
Structure1.fieldNames = keyfield,field2, field3 etc.. of Structure1
Structure2.fieldNames = keyfield,field2, field3 etc.. of Structure2
Structure3.fieldNames = keyfield,field2, field3 etc.. of Structure3
and then you will have a XML like that:
TOTALSET
Structure1 and all its fieldN
Structure2 and all its fieldN
Structure2 and all its fieldN
Structure3 and all its fieldN
Structure3 and all its fieldN
TOTALSET
Structure1 and all its fieldN because I used Structure1,1
Structure3 and all its fieldN
Regards.
Mickael
Edited by: Mickael Huchet on Apr 20, 2009 5:18 PM
Edited by: Mickael Huchet on Apr 20, 2009 5:19 PM -
File Content Conversion for Multi Hierarchical Structure for Sender Adapter
Hi Gurus,
My text file is coming as
Header,filed1,field2(Occurrence=1)
Content,field3,field4(Occurrence =1-Unbounded)
Detail,field4,field5(Occurrence = 1-unbounded)
Trailer,fieldN(Occurrence=1)
My requirement is to write a file content conversion, so that, in the resultant XML Structure the Detail will come under Content.
I have defined the Record Set Structure as
Header,1,Content,*,Detail,*,Trailer,1
But after FCC, the Detailed record is coming in the same level as the Content Record. But the business requires that, the Detailed Record should come under Content Record, so that they can correlate.
Could any one advise?
Regards,
SS
Edited by: Subhendu Sahu on Jun 17, 2011 4:43 PMHi,
Please use the below parameters -
○ NameA.keyFieldValue
Specify the value of the key field for the structure.
This entry is mandatory if the key field name is set. Otherwise, the entry is ignored.
NameA.keyFieldInStructure
■ If the key field of the substructure is to be added to the XML document, enter add. This is the default.
■ If the key field is to be ignored, enter ignore.
http://help.sap.com/saphelp_nwpi711/helpdata/en/44/6713ec3f914ddee10000000a1553f7/frameset.htm
cheers,
Sunil -
File content conversion for Pipe delimited file
Hi
i have a scenario ( file-xi-proxy) in whch file is coming in a pipe delimited.
my data type is like
DT_ XXXXX
AwardInfo
Header contains some fileds
DetailRecord contains some fileds
trailer contains some fields
what are content conversion parameters i have to use
venkatSedamkar,
Expecting you have one header, multiple details and one trailer then give recordset structure in sender file communication channel as:
Header,1,DetailRecord ,*,trailer,1
In content conversion you should give parameters:
Header.fieldSeparator : |
Header.endSeparator : 'nl'
DetailRecord.fieldSeparator : |
DetailRecord.endSeparator : 'nl'
trailer.fieldSeparator : |
trailer.endSeparator : 'nl'
You may need to change the parameters also according to your strcuture and the file layout. See this SAP help for file content conversion:
http://help.sap.com/saphelp_nw04/helpdata/en/e3/94007075cae04f930cc4c034e411e1/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/content.htm
Regards,
---Satish -
Supress Column Heading - File Content Conversion in Sender Adapter
Hi,
Let me give a more clear picture about my scenario. I need to convert CSV File to XML output:-
My source file has column heading and values. The sample data is mentioned hereunder:-
PERNR;KID;PNALT;NACHN;NAME2;VORNA
;1200;1200;Angus
I have created a data type as under:-
DT_LegacyEmployee (Category - Complex Type)
Employees (Category - Element, Occurence - 1)
Header (Category - Element, Occurence - 0...1)
PERNR_H
KID_H
PNALT_H
NACHN_H
NAME2_H
VORNA_H
Employee (Categroy - Element, Type - DT_LegacyEmployee_Row, Occurence - 0...unbounded)
PERNR
KID
PNALT
NACHN
NAME2
VORNA
The file conversion parameters in the file sender adapter are mentioned hereunder:-
Document Name - MT_LegacyEmployee
Document Namespace - http://abc.com/xi
Recordset Name - Employees
Rescordset Structure - Header,1,Employee,*
Recordsets per Message - 1
Key Field Type - String (Case Sensitive)
Employee.fieldSeparator - ;
Employee.endSeparator - 'nl'
Employee.fieldNames - PERNR,KID,PNALT,NACHN,NAME2,VORNA
I dont' have a key field value. How do we remove the header and show only the values in the xml output. I have searched the forum topics as well checked many blogs related to file content conversion, but nothing helped. Kindly advice how to fix this issue. Thanks in advance.
Regards.
PraveenHi Praveen,
Change your File Adapter as below
Document Name - MT_LegacyEmployee
Document Namespace - http://abc.com/xi
Recordset Name - Employees
Rescordset Structure - Employee,*
Recordsets per Message - 1
Key Field Type - String (Case Sensitive)
Employee.fieldSeparator - ;
Employee.endSeparator - 'nl'
Employee.fieldNames - PERNR,KID,PNALT,NACHN,NAME2,VORNA
There is no need for the Header required in the data type.
DT_LegacyEmployee (Category - Complex Type)
Employees (Category - Element, Occurence - 1)
Employee (Categroy - Element, Type - DT_LegacyEmployee_Row, Occurence - 0...unbounded)
PERNR
KID
PNALT
NACHN
NAME2
VORNA
Now the trick is in the mapping program
Lets assume your mapping looks like
MT_LegacyEmployee ---> MT_TargetEmployee
- Employees ---> Records
- Employee ---> Record
- PERNR ---> TargetPERNR
- .. so on
When you do a mapping from Employee ---> Record apply the following logic.
(PERNR)--->
(TestEquals =) --->(NOT)--->
(Constant) ---> (IF)
(PERNR) (IF Without Else) ---> (Record)
(THEN)
(Employee)--->
When doing this make sure RightClick on PERNR and Select Context ---> Employees.
By default context would be from Employee and it will give you an error of XSD format. So make sure you are changing the context. -
Problem with file content conversion for multiple substrcture. Please help!
Hi Experts,
I am using file content conversion in file sender communication channel. The input file is a flat file with data like this:
A01 AA8I0NBVDA 20090704 84900
A02 AA8I0NBVDA 20090704 84900
A03 AA8I0NBVDA 20090704 84900
I want the data in sender side after content conversion to be like this:
<ns:Receive_Schedules xmlns:ns="http://mynamespace">
<ScheduleData>
<line>A01 AA8I0NBVDA 20090704 84900</line>
<line>A02 AA8I0NBVDA 20090704 84900</line>
<line>A03 AA8I0NBVDA 20090704 84900</line>
</ScheduleData>
</ns:Receive_Schedules>
I have tried many options in file content conversion but getting the data like this:
<ns:Receive_Schedules xmlns:ns="http://mynamespace">
<ScheduleData>
<line>A01 AA8I0NBVDA 20090704 84900</line>
</ScheduleData>
<ScheduleData>
<line>A02 AA8I0NBVDA 20090704 84900</line>
</ScheduleData>
<ScheduleData>
<line>A03 AA8I0NBVDA 20090704 84900</line>
</ScheduleData>
</ns:Receive_Schedules>
Following are the settings/properties have configured in content conversion:
Document Name Receive_Schedules
Document namespace http://mynamespace
Document Offset <no value>
Recordset Name <no value>
Recordset namespace <no value>
Recordset structure ScheduleData,*
Recordset sequence Ascending
Recordsets per message 1
Key field Name <no value>
Key Field Type String
ignoreRecordsetName true
ScheduleData.endSeparator 'nl'
ScheduleData.fieldNames line
ScheduleData.fieldSeparator 'nl'
How to get the desired message? What changes I need to do in content conversion settings? Please help!
thanks
Gopal
Edited by: GOPAL BALIGA on Jul 1, 2009 12:11 PMHi Ranjan,
My structure is like what you ahve defined.
scheduledata...1.1
...line....0...Unbound
I also tried the parameters you gave but still getting the same.
<ns:Receive_Schedules xmlns:ns="http://mynamespace">
<ScheduleData>
<line>A01 AA8I0NBVDA 20090704 84900</line>
</ScheduleData>
<ScheduleData>
<line>A02 AA8I0NBVDA 20090704 84900</line>
</ScheduleData>
<ScheduleData>
<line>A03 AA8I0NBVDA 20090704 84900</line>
</ScheduleData>
</ns:Receive_Schedules>
Following are the settings/properties have configured in content conversion:
Recordset structure ScheduleData,* -
> Is the value correct?
Recordset sequence Ascending -
> Is the value correct?
Recordsets per message 1 -
> Is the value correct?
ignoreRecordsetName true
ScheduleData.fieldSeparator nl
ScheduleData.fieldNames line
ScheduleData.endSeparator nl
Edited by: GOPAL BALIGA on Jul 2, 2009 5:28 AM -
Receiver File content conversion for multi level hireachy
Receiver channel file content conversion..
this is SAP proxy to FIle Scenario, which will get invoice details from SAP along with multiple invoice texts for each invoice.
I would like to have below mentioned payload at Target side,
<MT_Invoice>
<File Header> 1...1
<f1> customer invoices </f1>
<f2> 12/02/2010 </f2>
</File Header>
<Invocie header>
<f1> Invoice number1 </f1>
<f2> customer number1 </f2>
</Invoice header>
<Invoice text>
<f1> Inovice no1-text1 </f1>
</Invoice text>
<Invoice text>
<f1> Inovice no1-text2 </f1>
</Invoice text>
<Invocie header>
<f1> Invoice number2 </f1>
<f2> customer number2 </f2>
</Invoice header>
<Invoice text>
<f1> Inovice no2-text1 </f1>
</Invoice text>
<Invoice text>
<f1> Inovice no2-text2 </f1>
</Invoice text>
<Invocie header>
<f1> Invoice number3 </f1>
<f2> customer number3 </f2>
</Invoice header>
<Invoice text>
<f1> Inovice no3-text1 </f1>
</Invoice text>
<Footer> 1..1
<f1> have a great day </f1>
</footer>
</MT_Invoice>
for the above payload file should come as mentioned below
customer invoices 12/02/2010
invocie number1 customer no 1
invoice no1-text1
invoice no1-text2
invocie number2 customer no 2
invoice no2-text1
invoice no2-text2
invoice no2-text3
invocie number3 customer no 3
invoice no3-text1
have a great day
For to get the above payloadI have create a message type like
MT_invoice
header 1...1
f1 1
f2 1
invoice details 0... unbound
f1 1
f2 1
invoice text 0.... unbound
f1
footer 1...1
f1 1
Please correct me if my message type declaration was wrong...
Please suggest how do i need to approach for message mapping and as well as FCC in File adapter...
Edited by: Vidyadhar Kurmala on Dec 2, 2010 10:28 AMIt is not possible to create alternating nodes in graphical mapping tool.
I recommend using the MessageTransformBean for FCC, as this supports a 2-level hierarchy.
Then you add a node record like this:
<MT_Invoice>
<Record>
<File Header> 1...1
<f1> customer invoices </f1>
<f2> 12/02/2010 </f2>
</File Header>
</Record>
<Record>
<Invocie header>
<f1> Invoice number1 </f1>
<f2> customer number1 </f2>
</Invoice header>
<Invoice text>
<f1> Inovice no1-text1 </f1>
</Invoice text>
<Invoice text>
<f1> Inovice no1-text2 </f1>
</Invoice text>
</Record>
<Record>
<Invocie header>
<f1> Invoice number2 </f1>
<f2> customer number2 </f2>
</Invoice header>
<Invoice text>
<f1> Inovice no2-text1 </f1>
</Invoice text>
<Invoice text>
<f1> Inovice no2-text2 </f1>
</Invoice text>
<Invocie header>
<f1> Invoice number3 </f1>
<f2> customer number3 </f2>
</Invoice header>
<Invoice text>
<f1> Inovice no3-text1 </f1>
</Invoice text>
</Record>
<Record>
<Footer> 1..1
<f1> have a great day </f1>
</footer>
</Record>
</MT_Invoice>
Maybe you are looking for
-
my safari is always shutting off and then a box asking me to fill out a report pops up it happens at least once a day, is there anything i could do to stop this?
-
Hello all, Perhaps a question more for the tech-experts (I'm not one ) : I have been running the (well-known) App Memory Clean for a while, and have been quite satisfied with its "Auto-Clean" function, as it saves me up on the Disk swapping. However,
-
Geting select option value on the basis of filtering criteria
Hi I have a selection parameter field is PRPS-WERKS. when user will go for f4 help, the value should come as filtered on the basis of the condition : select the respective WBS ELEMENT (PRPS- PSPNR) and select the respective PR LINE item. (The relatio
-
Where can I find a net change E1 812 vs. E1 9.0.2 document regarding specifically database table layouts when considering table conversion. For example, if the table layout for the F0911 table in E1 9.0.2 has changed as compared to the same in E1 8.1
-
Messages stuck in Outbox of iPad Mini
Can't send messages using Yahoo on iPad Mini, they get stuck in Outbox. Can't delete messages in Outbox either. Please help, thanks.