Spaces getting trimmed in file content conversion
Hi all,
I am converting a flat file to an XML file by XI. The problem which i am facing in file content conversion is that the spaces in flat file data are getting trimmed to one space in the XML in SXMB_MONI.
The data in flat file is like SOUTHSEA and HANTS is having nearly 8 spaces.
But the data in XML is:
<b><u>SOUTHSEA HANTS PO5 2LZ PO5 2LZ020327</u></b> i.e. in XML, there is only 1 space between SOUTHSEA and HANTS.
The following parameters i have used in file content conversion:
.keyFieldValue '*'
.fieldSeparator 'nl'
.fieldNames RECORD_DATA
.ignoreRecordsetName true
I am taking each record of the flat-file in a single record RECORD_DATA in XML.
<b>So can anyone tell me why the big spaces are getting trimmed to a single space eg. between SOUTHSEA and HANTS etc.</b>
Thanks in advance.
Rajeev Gupta
Hi,
try :
NameA.fieldContentFormatting = <b>nothing </b>
as the default is <b>trim </b>
refere:
http://help.sap.com/saphelp_nw04/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/content.htm
Regards,
michal
<a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>
Similar Messages
-
Trailing spaces problem during file content conversion
I have developed a proxy to file scenario.And am using file content conversion for creating the file. The file is to be a fixed length file.
File Structure
<Header>
<Item>
<Item Trailer>
<File Trailer>
Each tab in the file has the last character mapped to spaces.
Eg: Header00000001 2006011700000000020060<blank space>
Item00000001 2006011700000000020060<blank space>
The problem is that during file content conversion. XI does not preserve trailing spaces at the end of the line i.e.if a particular line in the file ends with space. It terminates the line at the last non-space character (in this case at 060).
However we are required to maintain these trailing spaces at the end of each line.
I have tried preserve white space in data type that does not work.
I know that xslt mapping may solve the problem but I am looking for a workaround with my current graphical mapping.
Looking for suggestions !!
Thanks,
RashidaHi,
I have the problem quite opposite to this where we are getting the trailing spaces at end of each record which should not come.
File structure is
<Record>
- <Data>
<Content>11/09/2007@210@ZACSL007@GBB-56436@PS01@29@1044@19@646@0</Content>
</Data>
</Record>
............. n records
<Header>
<File_Name>UK01</File_Name>
</Header>
Record structure in communication channel used is
Header, Data
Data.fieldFixedLengths 1024
Data.addHeaderLine 0
Header.addHeaderLine 0
Header.fieldFixedLengths 0
Header.fixedLengthTooShortHandling Cut
Data.fixedLengthTooShortHandling Cut
Header.endSeparator '0'
Actually if the length of record is less than 1024, rest of the length is being filled with spaces which should not occur.
Many advanced thanks.
Jitender -
File Content Conversion Removes Leading Blank/Space
I'm having a problem where file content conversion is trimming leading blanks/space/whitespace from fields when reading in the inbound file. I've seen where people have posted that you need to use fieldContentFormatting to prevent content conversion from stripping the leading/trailing whitespace. I added that parameter to my list (see below example) but it still appears to be trimming the leading whitespace. Look forward to hearing your thoughts. Here are the details:
I'm using fixed length file content conversion for Sender File Adapter (SP15). I have the following parameters set:
Document Name = MaterialData
Recordset name = item
Recordset Structure = MaterialLine, 1
I have:
MaterialLine.fieldNames = matno_external, mat_description
MaterialLine.fieldFixedLengths = 40, 40
MaterialLine.fieldContentFormatting = nothing, nothing
The following is the input file (notice spaces prior to second occurrence of material numbers)
ZED00000001 AIMS LIGHT A
ZED00000001 AIMS LIGHT B
ZED00000002 AIMS SWITCH A
ZED00000002 AIMS SWITCH B
ZED00000003 AIMS SEMICONDUCTOR A
ZED00000003 AIMS SEMICONDUCTOR B
The following is the source XML after file content conversion from SXMB_MONI (note spaces no longer exist in matno_external tag).
<?xml version="1.0" encoding="utf-8" ?>
- <ns:MaterialData xmlns:ns="http://xxxxxxx.com/yyy/test">
- <item>
- <MaterialLine>
<matno_external>ZED00000001</matno_external>
<mat_description>AIMS LIGHT A</mat_description>
</MaterialLine>
</item>
- <item>
- <MaterialLine>
<matno_external>ZED00000001</matno_external>
<create_date>10/09/06</create_date>
<mat_description>AIMS LIGHT B</mat_description>
</MaterialLine>
</item>
- <item>
- <MaterialLine>
<matno_external>ZED00000002</matno_external>
<mat_description>AIMS SWITCH A</mat_description>
</MaterialLine>
</item>
- <item>
- <MaterialLine>
<matno_external>ZED00000002</matno_external>
<mat_description>AIMS SWITCH B</mat_description>
</MaterialLine>
</item>
- <item>
- <MaterialLine>
<matno_external>ZED00000003</matno_external>
<mat_description>AIMS SEMICONDUCTOR A</mat_description>
</MaterialLine>
</item>
- <item>
- <MaterialLine>
<matno_external>ZED00000003</matno_external>
<mat_description>AIMS SEMICONDUCTOR B</mat_description>
</MaterialLine>
</item>
</ns:MaterialData>Thanks all for your attempts but I figured it out and wasn't this the biggest case of irony.
Here I was trying to prevent leading spaces from being trimmed in the loading of my file and my problem was that when I typed:
MaterialLine.fieldContentFormatting
I actually left a "blank" at the end of the "g" in Formatting. Apparently XI didn't like that and neither gave me a runtime or compile error. Anyway I found this and though I'd share in case anyone else encounters it. I removed the blank and all is working now. -
Can't get File content conversion to produce CSV file
Hi Guys
Have no problem at all getting XML file created via an RFC
Structure is something like this
From MONI message monitor inbound message payload
<?xml version="1.0" encoding="UTF-8" ?>
- <rfc:Z_XI_005_RFC xmlns:rfc="urn:sap-com:document:sap:rfc:functions">
- <IP_CUSTOMER_HEADER>
<CUSTOMERID>100853</CUSTOMERID>
<COMPANY>Bram Van Tuyl Coldstore</COMPANY>
<SHORT_NAME>VAN TUYL</SHORT_NAME>
<STREET>Middelkampseweg 1</STREET>
etc
</IP_CUSTOMER_HEADER>
</rfc:Z_XI_005_RFC>
Receiver Grouping payload
<?xml version="1.0" encoding="UTF-8" ?>
- <rfc:Z_XI_005_RFC xmlns:rfc="urn:sap-com:document:sap:rfc:functions">
- <IP_CUSTOMER_HEADER>
<CUSTOMERID>100853</CUSTOMERID>
<COMPANY>Bram Van Tuyl Coldstore</COMPANY>
<SHORT_NAME>VAN TUYL</SHORT_NAME>
etc.
With no conversion xml file is created on output directory
<?xml version="1.0" encoding="UTF-8"?>
<ns1:MT_customer_header xmlns:ns1="http://avenue.com/xi/test"><customerid>100853</customerid><company>Bram Van Tuyl Coldstore</company>
etc
Now trying to use File content conversion with the simplest possible conversion -- just insert a colon after all the fields in the structure.
Following parameters
Adapter type FILE
receiver box checked
Message protocol File Content conversion
File access etc as before
Content conversion parameters
Recordset : IP_CUSTOMER_HEADER
(have also tried Z_XI 005_RFC)
Name
CUSTOMERID.fieldSeparator : (colon)
MONI shows message received by XI and processed correctly but NO outfile gets written to the target directory.
what am I doing wrong --it's probably something stupid.
The data into XI is a ONE RECORD structure -- not a table etc.
Cheers
jimboHi guys -- both solutions STILL not working
all I'm now getting is just a file with garbage in it
Payload is fine on XI system
Here's the payload
<?xml version="1.0" encoding="UTF-8" ?>
- <rfc:Z_XI_005_RFC xmlns:rfc="urn:sap-com:document:sap:rfc:functions">
- <IP_CUSTOMER_HEADER>
- <item>
<CUSTOMERID>65013</CUSTOMERID>
<COMPANY>OY PANDA AB</COMPANY>
<SHORT_NAME>PANDA</SHORT_NAME>
<STREET>P.O.Box 3</STREET>
<STREET2 />
<STREET3 />
<STREET4 />
<POSTCODE>3331 GT</POSTCODE>
etc etc until end of customer mmaster details
</item>
</IP_CUSTOMER_HEADER>
</rfc:Z_XI_005_RFC>
Without conversion file is generated on target directory
Here's the XML output file sent to the directory
(for testing I only usec the ist 3 fields)
Not sure why <item> disappeared - maybe that has something to do with it ?
<?xml version="1.0" encoding="UTF-8" ?>
- <ns1:MT_customer_header xmlns:ns1="http://avenue.com/xi/test">
<CustomerId>65013</CustomerId>
<company>OY PANDA AB</company>
<shortname>PANDA</shortname>
</ns1:MT_customer_header>
RFC call from R3 system is fine (otherwise I wouldn't get the message into XI. Transaction SM58 as well on R3 shows no RFC errors
Converted file is just a blank with nl character at the end ??????
cheers
jimbo -
Preserve spaces in File Content Conversion
Dears colleagues,
we have a problem with the File Content Conversion in SAP PI 7.1
We send an IDOC from SAP to PI and a file to an external system. For example we have:
IDOC Z,
Segment S1 with fields
F1
F2
Segment S2 with fields
F3
F4
the mapping contains:
Z-S1-F1 --> File-Fiedl1 ( lenght 5 )
Z-S1-F2 --> File-Field2 ( lenght 5 )
Z-S2-F3 --> File-Field3 ( lenght 5 )
Z-S2-F4 --> File-Field4 ( lenght 5 )
If all the fields come filled the mapping it's ok and the result too, but if for example the second segment didn't come, the mapping it's ok ( no error in sxmb_moni ) but the result doesn't preserve the las 10 positions.
Any idea¿?
Thanks in advance.
JC.JC Says..
If all the fields come filled the mapping it's ok and the result too, but if for example the second segment didn't come, the mapping it's ok ( no error in sxmb_moni ) but the result doesn't preserve the las 10 positions.
Use the following parameters in your FCC..
<recordsetName>.fieldFixedLength = 5,5,5,5,5
Regards,
Madan Agrawal -
File Content Conversion Problem
Hi
I have a flat file having 10 fileds with fixed length of field 7 characters
abc bcd dce cef ecf fgi
123 234 343 233 434 343
322 222 222 222 222 222
+++++++++++++++++++++++++++++++
XML CODE FOLLOWS
+++++++++++++++++++++++++++++++
<?xml version="1.0" encoding="UTF-8" ?>
- <ns0:MT_send xmlns:ns0="http://OTO-Continue.com">
-<SEND>
<abc>343</abc>
<bcd>343</bcd>
<dce>434</dce>
<cef>3434</cef>
<ecf>343</ecf>
<fgi>434</fgi>
</SEND>
</ns0:MT_send
As per the client req I'm going with FCC. The file is picking fine with the FILE. But not picking with the FCC.
The parameters which I gave are as follows.
SOURCE I feel it is fine since file is picking fine and keeping the same for FCC also.
PROCESSING
QOS -- Exactly Once
Poll Interval -- 10
Processing Mode -- Delete
Empty-File Handling -- Process empty files
CONTENT CONVERSION Parameters
Document Name -- (am giving sender data type name) DT_send
Document NSpace -- http://OTO-Continue.com
Recordset Name -- SEND
Recordset Structure -- SEND,*
Recordset Sequence -- Ascending
Recordset per Message -- 0
And in the table the parameters am settings are
SEND.fieldNames abc,bcd,cde,def,efg,ghk
SEND.fieldFixedLengths 7,7,7,7,7,7 (because each and every field has 7 characters)
SEND.keepIncompleteFields No
SEND.fieldFixedLengthType char
SEND.fieldContentFormatting trim
SEND.fieldEndSeparator 'nl'
This was the configuration. But this is not working I monitored the Communication Channel and file is not reading and not getting deleting.
What actually went wrong in above configuration. Why it is not working.
Thanks.Hi Swarna,
CONTENT CONVERSION Parameters
Document Name -- ?
DocumentNSpace -- ?
Recordset Name -- ?
Recordset Structure -- ?
Recordset Sequence -- Ascending
Recordset per Message -- ?
Document Name - <Message Type> eg:- (MT_ABC)
DocumentNSpace - Name space of your MT
Recordset Name - The root node( Which has one occurence)
Recordset Structure - The parent node of the fields(can have multiple occurences)
Recordset Sequence -- Ascending
Recordset per Message -- 1/* (No.of records per each record set)
In your structure
+++++++++++++++++++++++++++++++
XML CODE FOLLOWS
+++++++++++++++++++++++++++++++
<?xml version="1.0" encoding="UTF-8" ?>
- <ns0:MT_send xmlns:ns0="http://OTO-Continue.com">
-<SEND>
<abc>343</abc>
<bcd>343</bcd>
<dce>434</dce>
<cef>3434</cef>
<ecf>343</ecf>
<fgi>434</fgi>
</SEND>
</ns0:MT_send
There is no root node, so in your FCC you need to mention your RecordsetName and you can ignoreRecordSetName in result structure. Check the following blog simulates your requirement.
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
Regards,
Prasanna -
Doubt regarding Sender adapter file content conversion to RFC
Hi Experts,
Below is the my Source and Target XML structure ( i have creaated source structure same as target RFC structure), This scenario is working fine when i give XML file as input. File -> XI -> RFC , xml file is able to update the information in R3.
How should i configure sender file adapter for file content conversion for above structure(in this case input is fixed lenth text), and i could able to change source structure according to our req, without changing target RFC strucuture.
<?xml version="1.0" encoding="UTF-8"?>
<ns0:MT_HSA_IDNumber xmlns:ns0="urn:passhe.com/UpdateIdNumberISA32">
<COMMIT_I>X</COMMIT_I>
<IDENTIFICATION>
<STUDENT>6500001191</STUDENT>
<ID_TYPE>FS0030</ID_TYPE>
<ID_NUMBER>testxml</ID_NUMBER>
<VALID_FROM>20070421</VALID_FROM>
<VALID_TO>20091231</VALID_TO>
</IDENTIFICATION>
</ns0:MT_HSA_IDNumber>
I have configured sender file adapter with FCC like :
Document name as: MT_HSA_IDNumber
Document name space as: urn:passhe.com/UpdateIdNumberISA32
Record structure as: COMMIT_I,1,IDENTIFICATION,1
COMMIT_I.fieldNames : COMMIT_I
COMMIT_I.fieldFixedlengths: 1
IDENTIFICATION.fieldNames: STUDENT,ID_TYPE,ID_NUMBER,VALID_FROM,VALID_TO
IDENTIFICATION.fieldFixedlengths: 12,6,60,8,8
i am getting error like this: even when i change source structure like below metioned:
<?xml version="1.0" encoding="UTF-8"?>
<ns0:MT_HSA_IDNumber xmlns:ns0="urn:passhe.com/UpdateIdNumberISA32">
<COMMIT>
<COMMIT_I>X</COMMIT_I>
</COMMIT>
<IDENTIFICATION>
<STUDENT>6500001191</STUDENT>
<ID_TYPE>FS0030</ID_TYPE>
<ID_NUMBER>idnumber1</ID_NUMBER>
<VALID_FROM>20070421</VALID_FROM>
<VALID_TO>20091231</VALID_TO>
</IDENTIFICATION>
</ns0:MT_HSA_IDNumber>
Conversion initialization failed: java.lang.Exception: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found: Parameter 'COMMIT_I.fieldFixedLengths' or 'COMMIT_I.fieldSeparator' is missing Consistency check: no. of arguments in 'COMMIT_I.fieldFixedLength' does not match 'COMMIT_I.fieldNames' (0 <> 1)
Please help me out
thanks
dhanushHi Dhanush,
Try giving the Sender FCC this way for the source structure you have mentioned above.
Record structure as: COMMIT,1,IDENTIFICATION,1
COMMIT.fieldNames : COMMIT_I
COMMIT.fieldFixedlengths: 1
Hope this helps.
Thanks and Regards,
Induja -
hi,
i have sender and received side -file content conversion.
in sender communication channel -
Recordset structure is -> Header,1,Detail,*
Message type structure is
MT1 has 2 subnodes Header and Detail.
In my message type,there is no field identical in Header and Details. All fields are different.
(1) Is Key Field Name mandatory in this case ? If I am not giving Key field name,sender channel gives error. How to resolve it ?
(2) Input file comes from customer and in the input file there is no specific data to identify header and detail. 1st line shud be header and other lines shud be Detail ,they say. If no identification coming in incoming data,how can we set the key field name ?
rgdsHi SAP PI,
For this moment try this.
Let the file content is like this
03456451 TESTDATABC 7645649 8746464
12344 60042
45678 60043
You try reading the file like this
<MT_S>
<RECORDSET>
<ROW>
<field1>03456451</field1>
<field2>TESTDATABC 7645649 8746464</field1>
</ROW>
<ROW>
<field1>03456451</field1>
<field2>TESTDATABC 7645649 8746464</field1>
</ROW>
<ROW>
<field1>03456451</field1>
<field2>TESTDATABC 7645649 8746464</field1>
</ROW>
</RECORDSET>
</MT_S>
FCC is like this
Document Name : MT_S
Document Namespace: "put name space here"
Recordset Name: RECORDSET
Recordset Structure: ROW,*
ROW.fieldNames field1,field2
ROW.endSeparator 'nl'
ROW.fieldSeparator 0x20
Once you get this in mapping use a simple UDF to ignore the first ROW values and read the rest.
Populate the target structure from the output of UDF for each field value.
Please let me know if you need the uDF and further mapping for this.
Regards
Anupam -
FILE CONTENT CONVERSION PARAMETERS
HI
my source file is text format.. and source struture is contain only two fields.. but the data was getting from source is large string.. like in the bellow format i'm getting the source files..
<b>FI 6E151/AN VT-IND
DT BKK MAA 250445 M14A
- 1001 OUTRP 0151/25 VOBG/VOCI .VT-IND</b>
like this three lines i'm getting for 2 fields.. i want to send entire the first line to first field. and the next two lines i want to send to next field..( the 2nd and 3 rd lines data both i want to send into a particular field only..
so, in file content conversion what are the paramenters i need to pass.. plz suggest me..
but if i use as normal parametrs the first line was not going completely to the first field of the source
insted of that where ever i'm getting space in the first line.. from that it was going to second field but the remaning 2 lines data it was not going to any fields...
thanks
babuhi babu,
File Content Parameters
Under Content Converstion Parameter:
DocumentName: Here give your OutBound MessageType name
Cocument NameSapace: give your namesapace
RecordsetName: Recordset
RecordsetStructure: Records1,*
Records1.fieldNames:Field1,Field2,Field3
Records1.endSeparator 'nl'
regards
Ramesh P
Message was edited by:
Ramesh P -
Receiver adopter using File Content Conversion
Guys,
I am using File Content Conversion at receiver end.
<b>maintained record structure:</b> Table1,Table2,Table4,Table5,Table6,Table7,Table8,Table9
and maintained parameters below menction for each table.
fieldFixedLengths
fieldNames
fixedLengthTooShortHandling
I want to create target file fixed length and the order which maintained in source file.(EXPECTED FORMAT).
But receiver File Content Conversion creating file in below menction format(FILE COMING FORMAT) which i don't want. Can any one help me what are the parameters do I need to maintain, to create the file same order which is like source file.
<b>SOURCE FILE</b>
100ABCDEF 0430000960603201321
2 000000000040008000802
400100160200002000015E59332 000000000010424400
50000000640672060320ABCDEF 043000096
600100100220887000311003510300958527437215 BAMBERGER POLYMERS
400100160100002000015E59347 000000000000008250
700100206430530603200010022088700
80010030643053060320000100220887009
400100160100002000015E59347 000000000000008260
9000010
<?xml version="1.0" encoding="utf-8"?>
<ns:CSAA_Bankdet_src xmlns:ns="urn:cs.www.abcdefinc.com/CSAA_ODSFTP_ECC_Bank_Details">
<Table1>
<RecordType>1</RecordType>
<PriorityCode>00</PriorityCode>
<Destination>abcdef</Destination>
<BankOrginNo>043000096</BankOrginNo>
<CreationDate>060320</CreationDate>
<CretionTime>1321</CretionTime>
<Spaces></Spaces>
</Table1>
<Table2>
<RecordType>2</RecordType>
<Destination>00000000</Destination>
<BankOrginNo>0040008000</BankOrginNo>
</Table2>
<Table4>
<RecordType>4</RecordType>
<BatchNumber>001</BatchNumber>
<ItemNumber>001</ItemNumber>
<RecordOverflow>6</RecordOverflow>
<SequenceNumber>020</SequenceNumber>
<OverflowCode>0</OverflowCode>
<CustomerNumber>002000015E</CustomerNumber>
<InvoiceNumber>59332 0</InvoiceNumber>
<DiscountAmount>00000000</DiscountAmount>
<GrossAmount>010424400</GrossAmount>
</Table4>
<Table5>
<RecordType>5</RecordType>
<BatchNumber>000</BatchNumber>
<ItemNumber>000</ItemNumber>
<LockboxNumber>0640672</LockboxNumber>
<DepositDate>060320</DepositDate>
<Destination>abcdef</Destination>
<BankOrigin>043000096</BankOrigin>
<Spaces></Spaces>
</Table5>
<Table6>
<RecordType>6</RecordType>
<BatchNumber>001</BatchNumber>
<ItemNumber>001</ItemNumber>
<RemittanceAmount>0022088700</RemittanceAmount>
<MICRTransitRouting>031100351</MICRTransitRouting>
<MICRAccountNumber>03009585274372</MICRAccountNumber>
<MICRCheckSerialNumber>15 BAMB</MICRCheckSerialNumber>
<CustomerName>ERGER POLYMERS</CustomerName>
</Table6>
<Table4>
<RecordType>4</RecordType>
<BatchNumber>001</BatchNumber>
<ItemNumber>001</ItemNumber>
<RecordOverflow>6</RecordOverflow>
<SequenceNumber>010</SequenceNumber>
<OverflowCode>0</OverflowCode>
<CustomerNumber>002000015E</CustomerNumber>
<InvoiceNumber>59347 0</InvoiceNumber>
<DiscountAmount>00000000</DiscountAmount>
<GrossAmount>000008250</GrossAmount>
</Table4>
<Table7>
<RecordType>7</RecordType>
<BatchNumber>001</BatchNumber>
<ItemNumber>002</ItemNumber>
<LockboxNumber>0643053</LockboxNumber>
<DepositDate>060320</DepositDate>
<NoofDetailRecords>001</NoofDetailRecords>
<BatchDollarAmount>0022088700</BatchDollarAmount>
<Spaces></Spaces>
</Table7>
<Table8>
<RecordType>8</RecordType>
<BatchNumber>001</BatchNumber>
<ItemNumber>003</ItemNumber>
<LockboxNumber>0643053</LockboxNumber>
<DepositDate>060320</DepositDate>
<NoofDetailRecords>0001</NoofDetailRecords>
<RemittanceDollarAmount>0022088700</RemittanceDollarAmount>
<LastRecordIndicator>9</LastRecordIndicator>
<Spaces></Spaces>
</Table8>
<Table4>
<RecordType>4</RecordType>
<BatchNumber>001</BatchNumber>
<ItemNumber>001</ItemNumber>
<RecordOverflow>6</RecordOverflow>
<SequenceNumber>010</SequenceNumber>
<OverflowCode>0</OverflowCode>
<CustomerNumber>002000015E</CustomerNumber>
<InvoiceNumber>59347 0</InvoiceNumber>
<DiscountAmount>00000000</DiscountAmount>
<GrossAmount>000008260</GrossAmount>
</Table4>
<Table9>
<RecordType>9</RecordType>
<TotalRecords>000010</TotalRecords>
<Spaces></Spaces>
</Table9>
</ns:CSAA_Bankdet_src>
<b>FILE COMING FORMAT</b>
100ABCDEF 043000096 0603201321
200000000
40010016020059332 0 00000000 010424400
40010016010059347 0 00000000 000008250
40010016010059347 0 00000000 000008260
50000000640672060320ABCDEF 043000096
600100100220887000311003510300958527437215 BAMBERGER POLYMERS
700100206430530603200010022088700
80010030643053060320000100220887009
9000010
<b>EXPECTED FORMAT</b>
100ABCDEF 043000096 0603201321
200000000
40010016020059332 0 00000000 010424400
50000000640672060320ABCDEF 043000096
600100100220887000311003510300958527437215 BAMBERGER POLYMERS
40010016010059347 0 00000000 000008250
700100206430530603200010022088700
80010030643053060320000100220887009
40010016010059347 0 00000000 000008260
9000010
Thanks
MHi,
Try to handle this with the context in the mapping.
I think your mapped xml will look like this-
<i>100ABCDEF 043000096 0603201321
200000000
40010016020059332 0 00000000 010424400
40010016010059347 0 00000000 000008250
40010016010059347 0 00000000 000008260
50000000640672060320ABCDEF 043000096
600100100220887000311003510300958527437215 BAMBERGER POLYMERS
700100206430530603200010022088700
80010030643053060320000100220887009
9000010</i>
SO this is because of context problem. All similar nodes are grouped in the Message Mapping.
1) For this you can try with Context Handling - i.e using RemoveContext,SPlity value functions etc in the message mapping.
2) Another way use XSLT mapping here. In this case it will be easier, because you just need to read the input xml as it is and produce the same.
3) One more thing, your input xml looks as if is the output xml. Is it required to have mapping here? If there is no transformation required, then you can do without any mapping, and you will get the required output as it is ..
Regards,
Moorthy
Message was edited by: Krishna Moorthy P -
Problem in file content conversion from XML to CSV
Hi Experts,
I am finding problem in file content conversion. I need to convert the following XML file into CSV file:
<?xml version="1.0" encoding="UTF-8" ?>
- <ns0:MT_CROSS_REF xmlns:ns0="urn:dabur:idoc2file:pos">
<Update_type>2</Update_type>
<PLU>00000000</PLU>
<Cross_ref_PLU>7777777</Cross_ref_PLU>
<Capture_PLU />
<Package_size />
<Package_desc />
</ns0:MT_CROSS_REF>
The output file data has to be like:
2,00000000,7777777,,,,
The problem I am facing is while specifying the content conversion parameters in communication channel i dont know what recordset structure i should mention as all the records are directly under root. If I mention recordset structure as "ns0:MT_CROSS_REF" and parameters as
ns0:MT_CROSS_REF.fieldSeparator ,
ns0:MT_CROSS_REF.endSeparator 'nl'
i get error in communication channel monitoring and no file is posted.
Please help me as to what correct parameter i should mention in my case.
Thanks,
Regards,
YashHi Chirag,
I cannot change the xml file as it comes after mapping idoc to a message type. How can I add ROOT in the xml? My message type is like MT_CROSS_REF and it has those 6 fields as in the XML (Update_type, PLU etc.). I do the mapping of these fields from a IDOC and get the XML.
I hope you got my point.
Thanks,
Yash -
Complex file content conversion in case of CSV file
Hi Friends,
What you see below is generated from Excel i.e excel file saved as CSV file. This file i need to map in XI.
Problem is i have to take only the data and not the header part.
for e.g in this particular line
Employee ID :,,E00315
I need only E0315 and not the header value. Similarly i have to find some solution to map all the required data.
Please suggest me how to use file content conversion in such scenarios.
Solution is required on top priority. Points will be immdly rewarded.
Thanks & Regards
K.Ramesh
,,Time Sheet,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,Ref. No: T-PRO-01-011,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,Page No.: 01,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Employee ID :,,E00315,,,Sale Order No / Line Item :,,,SO123456,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Employee Name :,,K.RAMESH,,,Client Name :,,,NCLIENTELE,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Month / Week :,,Jul-08,,,Project Name :,,,Internal Project,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Sales Team :,,,,,Project Role Start date :,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Location :,,BANGALORE,,,Project Role End date :,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Sl. No.,Date,Day,AA Type, Task Description,,,,,No.of Hours,Remarks,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
1,7/1/2008,Tue,0814-Talent acquitision,task 1,,,,,12.00,rmk 1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
2,7/2/2008,Wed,0814-Talent acquitision,task 2,,,,,10.00,rmk 2,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
3,7/3/2008,Thu,0814-Talent acquitision,task 3,,,,,12.00,rmk 3,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
4,7/4/2008,Fri,0814-Talent acquitision,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
5,7/5/2008,Sat,0814-Talent acquitision,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
6,7/6/2008,Sun,0950-Holiday,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
7,7/7/2008,Mon,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
8,7/8/2008,Tue,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, , , ,,,,,,,,,,,,,,,,,,,,
9,7/9/2008,Wed,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
10,7/10/2008,Thu,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
11,7/11/2008,Fri,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,, , ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
12,7/12/2008,Sat,0950-Holiday,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
13,7/13/2008,Sun,0950-Holiday,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,
14,7/14/2008,Mon,0900-Paid leave,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
15,7/15/2008,Tue,0900-Paid leave,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
16,7/16/2008,Wed,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
17,7/17/2008,Thu,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
18,7/18/2008,Fri,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
19,7/19/2008,Sat,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
20,7/20/2008,Sun,0950-Holiday,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
21,7/21/2008,Mon,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
22,7/22/2008,Tue,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
23,7/23/2008,Wed,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
24,7/24/2008,Thu,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
25,7/25/2008,Fri,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
26,7/26/2008,Sat,0814-Talent acquitision,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
27,7/27/2008,Sun,0950-Holiday,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
28,7/28/2008,Mon,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
29,7/29/2008,Tue,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
30,7/30/2008,Wed,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
31,7/31/2008,Thu,0804-Development,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Prepared By:,,,,,Approved By:,Company Project Manager,,,,Client Project Manager,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Name,,K.RAMESH,,,Name,YYY,,,,ZZZ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Signature,,,,,Signature,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Date ,,31.07.2008,,,Date ,31.07.2008,,,,31.07.2008,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,Hi,
In this CSV file, what all i need is the value E00315 after the label Employee ID. I used in FCC the parameters u asked me to do. Also in the Document Offset i gave value 3 so that the first three lines are ignored.
1,,,Time Sheet,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
1,,,,,,,,,,,Ref. No: T-PRO-01-011,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
1,,,,,,,,,,,Page No.: 01,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
1,Employee ID :,E00315
But still i am getting the error
Conversion of file content to XML failed at position 0: java.lang.Exception: ERROR converting document line no. 4 according to structure 'tims_header':java.lang.Exception: ERROR in configuration / structure 'tims_header.': More elements in file csv structure than field names specified!
Please help.
Thanks
Ramesh -
Problem with File Content Conversion
Hi All
I am facing a problem with file content conversion.
This is my sample file structure:
Header_Record (Occurance - 1)
Field1 in Header
Field2 in Header
Item(Occ-1 to n)
Field3 in Item
Field4 in Item
<<ItemType>> (Structure in Item) (Occ - 0 to n)
<<Field5>> in ItemType
<<Field6>> in ItemType
<<ItemTypeCategory>> (Structure in ItemType)(Occ - 0 to n)
<<<<Field7>>>> in ItemTypeCategory
<<<<Field8>>>> in ItemTypeCategory
Footer_Record (Occurance-1)
Field9
Field10
There is a key field 'Type' in all the above records with unique value in each record.
Now, I defined Field content conversion as follows:
Recordset Structure: Header_Record,1,Item, * , ItemType, * ,ItemTypeCategory, * ,Footer_Record,1
Recordset Sequence: Ascending
KeyField Name: Type
Following are parameters defiled:
Header_Record.Keyfieldvalue: 00
Header_Record.fieldseperator: ,
Header_Record.fieldnames: Field1,Field2
Header_Record.endseperator: 'nl'
Item.keyfieldvalue: 05
item.fieldseperator: ,
item.fieldfieldnames: field3,field4
item.endseperator: 'nl'
ItemType.keyfieldvalue: 10
itemType.fieldseperator: ,
itemType.fieldfieldnames: field5,field6
itemType.endseperator: 'nl'
ItemTypecategory.keyfieldvalue: 15
itemTypecategory.fieldseperator: ,
itemTypecategory.fieldfieldnames: field7,field8
itemTypecategory.endseperator: 'nl'
Footer.keyfieldvalue: 20
Footer.fieldseperator: ,
Footer.fieldfieldnames: field5,field6
Footer.endseperator: 'nl'
Now, i pass the following file:
00,111
05,222
10,333
15,444
20,555
What i expect out of my FCC is this (Sample output to show the hierarchy of field values):
00,111
05,222
<<10,333>>
<<<<15,444>>>>
20,555
But, I am getting this output (Hierarchy is missing. All the structures are in the same order without hierarchy):
00,111
05,222
10,333
15,444
20,555
Field values are being identified according to field content conversion, but, the hierarchy of the fields is missing.
Can you please tell me how should i change my FCC config?
Sorry for this long question.
Many Thanks
Chandra
Edited by: Chandra Sekhar H on Jan 30, 2009 7:10 PM
Edited by: Chandra Sekhar H on Jan 30, 2009 7:16 PM
Edited by: Chandra Sekhar H on Jan 30, 2009 7:17 PMYou will always get a flat structure from FCC. If you want hierarchichal strucuture, you have to create a target and map. You will get only like -
Root
--Recordset
Group1
Fields
Grop2
Fields
Group3
Fields
VJ -
Problem with file content conversion in receiver file adapter
Hi All
I have a problem with file content conversion in receiver file adapter.
This is my recordset structure: Header_Record,1,Claim_Record,*,Check_Rec,1
These are the content conversion parameters:
Header_Record.fieldSeparator = ,
Header_Record.endSeparator = 'nl'
Claim_Record.fieldSeparator = ,
Claim_Record.endSeparator = 'nl'
Check_Rec.fieldSeparator = ,
Check_Rec.endSeparator = 'nl'
In SXMB_MONI, i can see that the data is correctly extracted from proxy, and correctly mapped to receiver message, and i see a checkered flag (success).
But, Adapter status is RED with the following error message:
Conversion initialization failed: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found: Parameter '1.fieldFixedLengths' or '1.fieldSeparator' is missing
In communication channel monitoring, i get the following error message:
Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: Channel has not been correctly initialized and cannot process messages
What is going wrong here? Can anyone please tell me?
Thanks
ChandraPosted in Incorrect forum.
Posted again in Process Integration forum -
Error in Receiver File adapter using File content Conversion
Hi,
I am getting the following error in the receiver file adapter.
Conversion initialization failed: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found: Parameter 'statement.fieldFixedLengths' or 'statement.fieldSeparator' is missing
I am using the below parameters for FCC:
Recordset Structure - statement
statement.endSeparator - 'nl'
statement.fieldSeparator - '0X09'
statement.fieldNames -xblnr,wrbtr,newbs,kostl,newko,prctr,xref1,rke_wwfud,rke_wwst3,blart,bukrs,bldate,budat,gjahr,monat,ctype,waers,bktxt,posnr,wbs_element,mwxkz,businessplace,businessplace,c_waers,c_wrbtr,g_ctype,g_waers,g_wrbtr,h_ctype,h_waers,h_wrbtr,trade_id,lob,sgtxt,zuonr,reason_rev,ldgrp,tcode,lifnr
ignoreRecordsetName - true
Please let me know where i am going wrong.
Thanks,
AparnaHi Aparna,
I feel the problem in your content conversion parameters is with
statement.fieldNames and ignoreRecordsetName
When you are confirguring receiver file adapter for file content conversion the above one is not required. Please refer below link for details on configuring content conversion in file adapter
[http://help.sap.com/saphelp_nw04/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/frameset.htm]
Hope this helps !!
Regards,
Amit
Maybe you are looking for
-
Hi Experts, I have been tasked with looking at options to Upload 1,6 Million BP records into a Standalone SAP CRM Box. Business has decided that only BP Address data needs to be bought across from our ISU box. As I am not a Migration consultant, I am
-
How do I install photoshop 7 on windows 8.1
Microsoft says Photoshop 7 is compatible with Windows 8.1. How do I install it?
-
Bad quality movie menu in Premiere Elements 12
Hi everybody, I have a serious problem... when I create a movie menu and then I click on preview, its quality is really bad, images and text as well! I tried to burn the DVD to see if it was just a preview problem but it's still the same. I've also i
-
Hi, Since we can configure Exchange 2010 <> Exchange 2010 Organisation for Free / Busy lookup without using MS federation. (We have must be having GALSYNC) Can we do the same with Exchange 2010 <> Exchange 2010 + Exchange 2003 witout MS federation or
-
10g (Primary) to 9i (Standby) configuration
Dear Gurus, Can you please inform me that Is it possible to run Oracle 10g 10.2 as Primary Database Server and Oracle 9i 9.2.0.7 as Standby Database Server. Kindly help. Regards, Asif Abbasi