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
Srinivas
Hi 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
Similar Messages
-
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 ignoring the entire line
Hi,
I'm getting a CSV file from that i want to skip some records based on some validation.. for example:
I'm getting the following data :
EmpNo EmpName EmpDept
E101 ABC ABAP
E102 XYZ BW
E103 GFC XI
E104 BVM ABAP
E105 ASD BW
E106 YFC XI
SO, here where ever i'm getting EmpDept = XI .. i want to skip those all the records( that entire line i want to skip).. .. this can be possible through Message Mapping.. but i wnat to do this in the File Content Conversion.. how can we do this..
any helpful answers will appriciated..
Thanks
babuHi,
FCC is used to generate the XML structure so that XI can understood properly. You can not do any kind of validations or Skip the records based on Element value condition in FCC.
There are scenarios where you want to skip the lines that time you can use the below option in FCC but this is again not based on condition.
Under Document Offset, specify the number of lines that are to be ignored at the beginning of the document.
This enables you to skip comment lines or column names during processing. If you do not make an entry, the default value is zero lines.
The best way to do is use the UDF:
Write an UDF on target root node.
take input in one context:
input a= Emp Dept:
for(i=o,i<a.length;i++)
if(a{i}.equals("X"))
result.addValue(SUPPRESS); this will supress the target root node if condition is equal to X
else
result.addValue("Constant"); this will generate the target root node.
Thnx
Chirag -
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 -
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 -
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> -
File content conversion for file with hierarchical structure
Hi
I want to read a flat file in the following message structure using file content conversion.
Message structure is :
01 ( occurence = 1)
_ 1B (occurence = unbounded)
_ 1G (occurence = unbounded)
_1H (occurence = 1)
_1N ( occurence = unbounded)
99 (occurence = 1, trailer record)
In short there will be one 01 ( header record) in file. There will multiple 1B records. Under one 1B record there will multiple 1G records. Under each 1G record there will be one 1H recoprd and multiple 1N record. At the end there will one 99 record.
File format : Fixed length
Data in the text file would be as follows :
01Test
1BF0001MS005 4855390859
1GF000172075F31501 GBPINV 040806
1HF000172075F
1NF000172075F0011MS0051125002FOOUKSTFOOD
1NF000172075F0021MS0056540003ICOMSIEARCA
1BF0111TT005 3454390859
1GF011172075F31501 INRINV 040806
1HF011172075F
1NF011172075F0011MS0051125002FOOUKSTFOOD
1NF011172075F0021MS0056540003ICOMSIEARCA
99002187004855390859
Is it possible to do above using file content conversion or is there any method to do it. Please suggest.
Thanks
Varunyou cant acheive this heirarchy using the file adapters cont. conv, cos it supports only to a single level.
Maybe you can have a module or use the conversion agent !!
Some good reads on the Conv. agent!!!
/people/william.li/blog/2006/03/17/how-to-get-started-using-conversion-agent-from-itemfield
/people/paul.medaille/blog/2005/11/18/conversion-agent-a-free-lunch
/people/alexander.bundschuh/blog/2006/03/14/integrate-sap-conversion-agent-by-itemfield-with-sap-xi
/people/paul.medaille/blog/2005/11/17/more-on-the-sap-conversion-agent-by-itemfield -
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 -
File Content Conversion for complex structure
Hi
I have a requirement to repeat a structure consisting of three lines i.e the segment containing these 3 lines will have occurrence 0....unbounded and will be repeated in the File multiple times ,
What is the level that can be handled in File Content Conversion's recordset structure ?
My issue is that the structure is
Dt_File -> Repeating Level1->Level2 ->Field1
->Level2a->Field3
-> Level2b->Field5
where the first level is DT_File
under which I have RepeatingLevel1 as a SubElement
and under Repeating level I have Level2 , Level2a and Level2b at its subelementsl
and under Level2 I have Field1 , Under Level2a i have Field3 and under Levle 2b i have Field5
How do i handle this in the Content Conversion ?? as in how do I create my Recordset Structure ?? as it just handles one level below the Document Name (i,e) Message Type)
Is it possible ??? or should i consider some other way to constuct my data type ??
Thanks
DevHi Tarang
My DT according to the target file structure is this :
DT_File
>Main1(1,1)
>Main2(1,1)
>Main3(0...unbounded)
>Record1(1,1)
>Field1
>Field2
>Field3
>Record2(1,1)
>Field4
>Field5
>Record3(1,1)
>Field6
>Field7
SO I want to confirm if the receiver FCC will be - Main1,Main2,Main3,Record1,Record2,Record3
Record1.fieldSeparator ,
Record1.endSeparator 'nl'
Record2.fieldSeparator ,
Record2.endSeparator 'nl'
Record3.fieldSeparator ,
Record3.endSeparator 'nl'
or Main1,Main2,Record1,Record2,Record3
Thanks
Dev -
File content conversion for receiver file structure(fixed length)
Hi Experts,
I am tryinng reciver file FCC for the following strcuture. it seems I have done some wrong configuration,and failing at conversion level. so experts please help me to get the correct content conversion parameters.
note : ( * Nothing can be altered at repository side * ) and the fields are fixed in length so the file needs to be fixed lentgh format.
Tree--Occ--
TYPE
SBLSALDATA--1..1--
SBLSALDATA
SALDATA----
1..1
Headrec----
1..1
XXX----
1..1
XXX----
1..1
XXX----
1..1
TotalDatarec----
1..Unbounded
YYY----
1..1
YYY----
1..1
YYY----
1..1
YYY----
1..1
LASTREC----
1..1
ZZZ----
1..1
ZZZ----
1..1
Thanks in advance.I have done in the same procedure as in above link. its not working either.
My receiver structure looks like below.
<?xml version="1.0" encoding="UTF-8"?>
<ns1:TaxData xmlns:ns1="urn:XXXXXXXX">
<EmpTaxDat>
<Header>
<A/>
<B/>
<c/>
</Header>
<Detail>
<D/>
<e/>
<f/>
</Detail>
<Trail>
<g/>
<h/>
<i/>
</Trail>
</EmpTaxDat>
</ns1:TaxData>
Edited by: Harish.k on Jan 2, 2010 2:15 PM -
File Content conversion for Fiexed length output file
Hi,
I am Working on Idoc to File scenario.
I would like to know the content conversion partmenrts for the follwoing structure.
Structrure is as below:
Message Type
Header Record 1..unbounded
. Field1 0...1
. Field2 0...1
. Field3 0...1
.. Detaillines 0...unbounded
... Field3 0..1
... Field4 0..1
.. Detaillines2 0..unbounded
... Field6 0...1
... Field7 0...1
Can you please advise.
Regards,
Manoj KumarHi Manoj
Give the FCC parameter as
RecordSet Structure = Header,,Detaillnes,,Detaillines2,*
Header.endSeparator = 'nl'
Header.fieldFixedLengths = field length
Header.fieldFixedLengthType = char/byte
Header.fieldNames = field1,field2,field3,.....
Header.keyFieldValue = Header
Detaillnes.endSeparator = 'nl'
Detaillnes.fieldFixedLengths = field length
Detaillnes.fieldFixedLengthType = char/byte
Detaillnes.fieldNames = field1,field2,field3,.....
Detaillnes.keyFieldValue = Detaillnes
Detaillines2.endSeparator = 'nl'
Detaillines2.fieldFixedLengths = field length
Detaillines2.fieldFixedLengthType = char/byte
Detaillines2.fieldNames = field1,field2,field3,.....
Detaillines2.keyFieldValue = Detaillines2
The keyFieldValue should be the Value which identifies your record either as Header/Detaillines/Detaillnes2.
Regards
Santhosh
Message was edited by:
Santhosh Kumar V -
Idoc to File Scenarion Using File Content Conversion for Sales order data.
Hi Frineds,
WOuld like to know in what strucuture should i design my output strucutre to get data from idoc coming from SAP system.
How to enbble file contenct conversion to get txt file.
Need a detial view of this scenario.
Please help.Hi,
Get the target file structure format from the system or applicaiton which wants to use this data...
Based on this create message type in ESR and then configure the FCC parameters in the file adapter ..
if the structure is available and based on that want to know FCC ..then post the same some one here can help..
based on your requirement structure needs to be implemented and mapping as well
HTH
Rajesh -
File content conversion for File Reciever
Hi,
I am working on Idoc to file scenario.
I need the file in the format which doesnt have have separators between the fields.
I used the follwing FCC:
HeaderRecord.addHeaderLine
HeaderRecord.fieldFixedLengths 1,1,10,2,4,12,3,1,9,1,4,1,1,1,2,1,4,4,2,3,1,8,4
HeaderRecord.fieldNames CARDCODE,SUBCODE,DNSORDERNUMBER,UNITCODE,DEALERNUMBER,DEALERORDERNUMBER,ORDERTYPE,RECEIVEDBY,SHIPMODE,EDITONLY,DIRECTEDSOURCE,PRIORITY,INVENTORYTYPE,PARTIALSHIPCODE,PROGRAMNUMBER,SPECIALTERMSID,REENTRYUNIT,SVPORDOVSHIPMTHDCARRIER,SVPORDOVSHIPMTHDSERVICE,SVPOVDISTRIBUTIONSTOP,ORDERNUMDESIGNATION,SHIPDATE,SVPORDDESTCODESUFFIX
HeaderRecord.endSeparator 'nl'
HeaderRecord.fixedLengthTooShortHandling ignore
Detaillinesforeachpart.fieldFixedLengths 1,1,10,12,7,49
Detaillinesforeachpart.fieldNames CARDCODE,SUBCODE,DNSORDERNUMBER,PARTNUMBER,ORDEREDQTY,FILLER
Detaillinesforeachpart.endSeparator 'nl'
Detaillinesforeachpart.fixedLengthTooShortHandling ignore
Trailerrecord.fieldFixedLengths 1,79
Trailerrecord.fieldNames CARDCODE,FILLER
Trailerrecord.endSeparator 'nl'
Trailerrecord.fixedLengthTooShortHandling ignore
My file structure is same as the IDoc structure, whic is as below:
Messagetype
-Headerrecord
---field1
---field2
---Field3
---Details line for eachpart
field1
field2
field3
---trailerrecord
field1
field2
If i use the above FCC, i am landing with the following error:
Could not process due to error: 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 '3')', probably configuration error in file adapter (XML parser error)'
Any advises and clues?
Regards,
ManojHere is the Payload.
<?xml version="1.0" encoding="UTF-8" ?>
- <ns0:MT014POAcknowledgements xmlns:ns0="http://deere.com/xi/ijddns/southamerica">
- <HeaderRecord>
<CARDCODE>1</CARDCODE>
<SUBCODE />
<DNSORDERNUMBER>0000001716</DNSORDERNUMBER>
<UNITCODE />
<DEALERNUMBER />
<DEALERORDERNUMBER />
<ORDERTYPE>SN</ORDERTYPE>
<RECEIVEDBY />
<SHIPMODE />
<EDITONLY>N</EDITONLY>
<DIRECTEDSOURCE />
<PRIORITY />
<INVENTORYTYPE />
<PARTIALSHIPCODE />
<PROGRAMNUMBER />
<SPECIALTERMSID />
<REENTRYUNIT />
<SVPORDOVSHIPMTHDCARRIER />
<SVPORDOVSHIPMTHDSERVICE />
<SVPOVDISTRIBUTIONSTOP>F</SVPOVDISTRIBUTIONSTOP>
<ORDERNUMDESIGNATION>F</ORDERNUMDESIGNATION>
<SHIPDATE />
<SVPORDDESTCODESUFFIX />
- <Detaillinesforeachpart>
<CARDCODE>3</CARDCODE>
<SUBCODE />
<DNSORDERNUMBER />
<PARTNUMBER>PS7815003</PARTNUMBER>
<ORDEREDQTY>1.000</ORDEREDQTY>
<FILLER />
</Detaillinesforeachpart>
- <Trailerrecord>
<CARDCODE>4</CARDCODE>
<FILLER />
</Trailerrecord>
</HeaderRecord>
- <HeaderRecord>
<CARDCODE>1</CARDCODE>
<SUBCODE />
<DNSORDERNUMBER>0000001717</DNSORDERNUMBER>
<DEALERNUMBER />
<DEALERORDERNUMBER />
<ORDERTYPE>SN</ORDERTYPE>
<RECEIVEDBY />
<SHIPMODE />
<EDITONLY>N</EDITONLY>
<DIRECTEDSOURCE />
<PRIORITY />
<INVENTORYTYPE />
<PARTIALSHIPCODE />
<PROGRAMNUMBER />
<SPECIALTERMSID />
<REENTRYUNIT />
<SVPORDOVSHIPMTHDCARRIER />
<SVPORDOVSHIPMTHDSERVICE />
<SVPOVDISTRIBUTIONSTOP>F</SVPOVDISTRIBUTIONSTOP>
<ORDERNUMDESIGNATION>F</ORDERNUMDESIGNATION>
<SHIPDATE />
<SVPORDDESTCODESUFFIX />
- <Detaillinesforeachpart>
<CARDCODE>3</CARDCODE>
<SUBCODE />
<DNSORDERNUMBER />
<PARTNUMBER>PS7815003</PARTNUMBER>
<ORDEREDQTY>1.000</ORDEREDQTY>
<FILLER />
</Detaillinesforeachpart>
- <Trailerrecord>
<CARDCODE>4</CARDCODE>
<FILLER />
</Trailerrecord>
</HeaderRecord>
</ns0:MT014POAcknowledgements>
Regards,
Manoj -
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,
LakshmanMost 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.
Maybe you are looking for
-
IOS 7.1.2 screwed up
Folks, While updating iOS 7.1.2 on my iPhone 5, the phone got hanged almost midway. Has been like that for last 10 hours or so... Can not even reboot fix it or hard-reset it as the power button doesn't work due to a manufacturing defect. Can somebody
-
my iPhone 4s doesn't work. i can not swipe to open it or to even turn it off. what can i do??????
-
Import a shape file to oracle spatial format within an oracle pl/sql proced
hi, My task is to import an esri sde shape file to oracle sdo format within pl/sql procedure. i am using oracle 10g, arcgis 9 and arcsdo, geometry type is line, please anyone could help how can i achieve this task, would be very thankful Best Regards
-
Auto login into a website without prompting on Mac OS x
is there a way for firefox to auto login into a windows site with ntlm authentication. - i have installed the keychain add-on - i have the password saved in the keychain when i go to the site, it still prompts me for username and password. Although i
-
I have been succesfully installed DS 5.2 on XP several times, but after i did last time uninstall DS5.2 from the XP, I met problem to install it again. The screen freez at "please waiit while components is loaded". I have cleaned up the registry on t