Content conversion in mapping

Hi,
I have a xml document that comes into a mapping as a result of lookup to SAP in XI. The xml structure is
<MT_I_RFC>
  <HEADER>1212</HEADER>
<MESSAGE>TEST MESSAGE/DO NOT ERASE/TEST</MESSAGE>
</MT_I_RFC>
<MESSAGE> is 0:1.
In my mapping I need to take the content in <MESSAGE> and when I find / in the message, the content needs to be split into multiple resulting tags like below
structure of result is
<MT_FF>
<ROW>
   <MESSAGE></MESSAGE>
</ROW>
</MT_FF>
<ROW> and <MESSAGE> is 0..unbounded.
After mapping the above input the result should be:
<MT_FF>
<ROW>
  <MESSAGE>TEST MESSAGE</MESAGE>
</ROW>
<ROW>
  <MESSAGE>DO NOT ERASE</MESSAGE>
</ROW>
<ROW>
   <MESSAGE>TEST</MESSAGE>
<ROW>
</MT_FF>
can I please know how to achieve this? thanks for your help in advance.
Edited by: developer on Jul 8, 2008 5:50 AM

Hi,
Assuming source element MESSAGE occurrence is 0..1 and that of target elements ROW and MESSAGE is 0..unbounded, you can do something like this -
Map source element MESSAGE to target element MESSAGE using UDF split() shown below -
public void split(String[] a,ResultList result,Container container){
   int i;
   String [] temp = a[0].split("/");
   for( i = 0; i < temp.length; i++ ) {
      result.addValue(temp<i>);
      result.addContextChange();
And map source element MESSAGE to target element ROW using UDF split2() shown below -
public void split2(String[] a,ResultList result,Container container){
   int i;
   String [] temp = a[0].split("/");
   for( i = 0; i < temp.length; i++ ) {
      result.addValue(temp<i>);
Edit: These are advanced UDFs. i.e. while creating the UDFs, under Cache, select the radio button next to Queue. This allows you to modify the entire message queue in the UDF.
Hope this helps.
Regards,
Riyaz

Similar Messages

  • Sender adapter: File content conversion suggestion

    Hi all,
      I require your suggestion on File content conversion with Sender File adapter. I am having a scenario where I would be getting multiple orders data i.e., header and item information in a single file. Suppose, we have given a chance to design the source structure. So, which would be the better way for having the source structure so that it would be easy for file content conversion and mapping. Is it like Method 1 or Method II?
    Method I:
       Orderno,FieldA,FieldB,FieldC
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
       Orderno,FieldA,FieldB,FieldC
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
       Orderno,FieldA,FieldB,FieldC
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
    Method II:
       Orderno,FieldA,FieldB,FieldC
       Orderno,FieldA,FieldB,FieldC
       Orderno,FieldA,FieldB,FieldC
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
       Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
      If you suggest method I, can you let me know how the content conversion parameters look like?
    Thanks in Advance,
    Adithya K
    Message was edited by:
            Adithya K

    Adithya,
    Looking at your input file I think a structure as below would be better.
    <Order_Data>
      <Orderno>
          <Orderno/>
          <FieldA/>
          <FieldB/>
          <FieldC/>
      </Orderno>
      <Items>
          <Orderno/>
          <OrderItem/>
          <Field1/>
          <Field2/>
          <Field3/>
          <Field4/>
          <Field5/>
      </Items>
    </Order_Data>
    Content Conversion Parameters for this would be:
    RecordSet Structure        OrderData,,Orderno,1,items,
    OrderData.fieldNames       Orderno,items
    OrderData.fieldSeparator   'nl'
    OrderData.endSeparator    'nl'
    Orderno.fieldNames          Orderno,FieldA,FieldB,FieldC
    Orderno.fieldSeparator       ,
    Orderno.endSeparator       'nl'
    items.fieldNames              Orderno,OrderItem,Field1,Field2,Field3,Field4,Field5
    items.fieldSeparator           ,
    Items.endSeparator           'nl'
    ignoreRecordsetName        true
    Depending on which are your key fields you will  have to put two more parameters:
    Orderno.keyFieldValue
    items.keyFieldValue
    Hope this would be of some help.
    Thanx,
    Manju.

  • File Content Conversion issue in PI 7.1

    Hi Experts
    I am working on a file to Proxy scenario, I am getting a flat file with , separated but my file will have multiple nodes and I need to do the content conversion and map it to the following structure
    Interface Header
      InterfaceName
      UserID
      Date
      Time
    Journal Entries (1 - Unbounded)
        DocumentHeader
           DocumentDate
           DocHeadetext
           postingDate
        DocumentLineItems
          lineItemno
          lineitemText
          postingkey
    InterfaceTrailer
      Noofrecords.
    Here the problem :I have declared the InterfaceHeader, DocumentHeade,DocumentLineItems and Interface trailer but for Journal entries node what are all the parameters to declare in the content conversion
    please let me know if there are any solutions for this coples structure (content conversion)
    Thanks
    PR

    <?xml version="1.0" encoding="UTF-8"?>
    <!-- New document created with EditiX at Thu May 12 18:57:06 EDT 2011 -->
    <xsd:schema targetNamespace="http://pi.dvn.com/fa/app/ecc/journalEntries/10" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://pi.dvn.com/fa/app/ecc/journalEntries/10">
         <xsd:element name="MT_JournalEntryVouchers" type="DT_JournalEntryVouchers"/>
         <xsd:complexType name="DT_JEHeader">
              <xsd:annotation>
                   <xsd:documentation xml:lang="EN">Journal Entry Header structure</xsd:documentation>
              </xsd:annotation>
              <xsd:sequence>
                   <xsd:element name="documentDate">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="10"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="docHeaderText" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="25"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="postingDate">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="10"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="companyCode">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="4"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="currency" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="5"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="documentType">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="2"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="transactionCode">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="20"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="referenceNumber" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="16"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="accrualReasonForReversal" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="2"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="accrualReversalDate" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="10"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="taxCalculationFlag" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="1"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
              </xsd:sequence>
         </xsd:complexType>
         <xsd:complexType name="DT_JELineItems">
              <xsd:annotation>
                   <xsd:documentation xml:lang="EN">Journal Entry Line Items structure</xsd:documentation>
              </xsd:annotation>
              <xsd:sequence>
                   <xsd:element name="lineItemNumber">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="3"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="lineItemText" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="50"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="postingKey">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="2"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="companyCodeLineitem">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="4"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="accountNumber">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="17"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="transactionAmount">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="13"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="costCenter" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="10"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="accountType">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="1"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="wbsElement" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="8"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="quantity" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="13"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="unitOfMeasure" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="3"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="productionDate" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="10"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="tradingPartner" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="6"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="materialNumber" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="18"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="paymentKeyTerms" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="4"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="paymentBlockKey" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="1"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="paymentMethod" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="1"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="paymentMethodSupplement" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="1"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="baselineDate" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="10"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="witholdingTaxCode" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="2"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="payer_payeeNumber" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="10"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="jointVenture" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="6"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="equityGroup" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="3"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="partnerAcctNumber" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="10"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="recoveryIndicator" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="2"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="billingIndicator" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="2"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="orderNumber" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="12"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="profitCenter" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="10"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="partnerProfitCenter" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="10"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="assignment" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="18"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="referenceKey" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="12"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="transactionType" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="2"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="amountInLocalCurrency" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="13"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="amountInGroupCurrency" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="13"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="taxCode" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="2"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="splGLIndicator" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="1"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="assetTransactionType" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="3"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
                   <xsd:element name="xref2" minOccurs="0">
                        <xsd:simpleType>
                             <xsd:restriction base="xsd:string">
                                  <xsd:maxLength value="12"/>
                             </xsd:restriction>
                        </xsd:simpleType>
                   </xsd:element>
              </xsd:sequence>
         </xsd:complexType>
         <xsd:complexType name="DT_JournalEntryRecord">
              <xsd:annotation>
                   <xsd:documentation xml:lang="EN">Record Set for Journal Entry</xsd:documentation>
              </xsd:annotation>
              <xsd:sequence>
                   <xsd:element name="InterfaceHeader" type="DT_InterfaceHeader"/>
                   <xsd:element name="journalEntries" type="DT_JEDocument" maxOccurs="unbounded"/>
                   <xsd:element name="InterfaceTrailer" type="DT_InterfaceTrailer"/>
              </xsd:sequence>
         </xsd:complexType>
         <xsd:complexType name="DT_JEDocument">
              <xsd:annotation>
                   <xsd:documentation xml:lang="EN">Journal Entry Document Data Type</xsd:documentation>
              </xsd:annotation>
              <xsd:sequence>
                   <xsd:element name="documentHeader" type="DT_JEHeader"/>
                   <xsd:element name="documentLineItems" type="DT_JELineItems" maxOccurs="unbounded"/>
              </xsd:sequence>
         </xsd:complexType>
         <xsd:complexType name="DT_InterfaceTrailer">
              <xsd:sequence>
                   <xsd:element name="numberOfRecords" type="xsd:string" minOccurs="0"/>
              </xsd:sequence>
         </xsd:complexType>
         <xsd:complexType name="DT_JournalEntryVouchers">
              <xsd:annotation>
                   <xsd:documentation xml:lang="EN">Journal Entry Voucher Interface structure</xsd:documentation>
              </xsd:annotation>
              <xsd:sequence>
                   <xsd:element name="JournalEntryRecordSet" type="DT_JournalEntryRecord"/>
              </xsd:sequence>
         </xsd:complexType>
         <xsd:complexType name="DT_InterfaceHeader">
              <xsd:sequence>
                   <xsd:element name="interfaceName" type="xsd:string"/>
                   <xsd:element name="userID" type="xsd:string" minOccurs="0"/>
                   <xsd:element name="runDate" type="xsd:string" minOccurs="0"/>
                   <xsd:element name="runTime" type="xsd:string" minOccurs="0"/>
                   <xsd:element name="testRun" type="xsd:string" minOccurs="0"/>
              </xsd:sequence>
         </xsd:complexType>
    </xsd:schema>

  • Using XSLT mapping to avoid File content conversion

    Hi all,
    Can we avoid FCC by using XSLT mapping? I have a scenario in which I have to avoid FCC in the adapter and save the file in a excel/csv format. I have been through the different blogs and forums in SDN.
    I have been through Michal Krawczyk's Blog https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/2803. [original link is broken] [original link is broken] [original link is broken] [original link is broken]
    Got a bit confused whether that blog serves my purpose. Expecting your valid inputs.
    Thanks and regards,
    Harikumar. S

    Hi,
    There are multiple ways in which you can avoid Content Conversion in the Sender / Receiver File adapters.
    I think there was a heated discussion already regarding this in one of your earlier threads,
    Read/Write csv files without file converter
    Basically, if you want to avoid content conversion on the sender file adapter,
    1. Write an Adapter Module. or,
    2. Use a Java Mapping.
    If you want to avoid content conversion on the receiver File adapter,
    1,. Use a Adapter Modules or,
    2. Use Java Or XSLTmapping ( XSLT can be used if the input to the mapping is XML and output needs to be say a Excel File etc).
    Regards
    Bhavesh

  • Mapping issue after Content Conversion in PI 7.1

    Hi Experts
    I am working on a File (Fixed format) to proxy , Data is getting converted in the File Content and conversion and passing to mapping as xml data , But the when the mapping happens no values are being returned on the  target side
    When I load the data (xml ) file from sxmb_moni on the sender side all nodes  shows in red color though file content happened without issues
    please provide the inputs how to map with the values
    Thanks
    PR

    A couple of checkpoints for you:
    1. When you load the XML from SXMB_MONI in the test tab of message mapping it turns red..this means the constructed XML (from CC content conversion) doesnt match the one (XSD) defined in your ESR/IR. In this case you have to check again thoroughly the file content conversion fields values/field length in the sender Communication chaneel.
    2. Once you rectify the error above then you can test the mapping in ESR message mapping.

  • Java mapping and no content conversion

    Hi all,
    I have a file to idoc scenario. The file is in flat idoc format and I've made my own java mapping that gets the flat file and converts it to idoc xml format.
    I don't use content conversion in the sender file adapter because I don't wan't the file to be converted to xml before the java mapping processes it. But with this configuration my scenario fails in the interface determination step, as it doesn't find an xml to apply the java mapping.
    Is there a way to make it work as I want? (with my java mapping and not applying content conversion?) If not, is there a way to put all the file in a single xml tag using content conversion?
    I mean something like this:
    <FILE>
    </FILE>
    This way it would be easy for my java mapping to remove the tags and work with the flat file as it does now.
    Thanks in advance.

    Thanks Stephan for your answer.
    In fact I have the defined that interface, as well as a dummy data type and message type that uses it. I still get the error though. My guess is that, as I don't use content conversion in file adapter (message protocol is file) the outbound message is in fact not in xml format, and it cannot identify it in interface determination. That's my guess but perhaps I'm wrong?
    This is the error I'm getting:
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Interface Determination
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="IF_DETERMINATION">CX_ID_PLSRV</SAP:Code>
      <SAP:P1>No interface determination found for outbound interface http://********.****/EDELIVERY.SI_OUT_A_0596_RECADV: Error while determining root tag of XML: BOM / charset detection failed</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:Stack>Error when determining the inbound interface: No interface determination found for outbound interface http://********.****/EDELIVERY.SI_OUT_A_0596_RECADV: Error while determining root tag of XML: BOM / charset detection failed No interface determination found for outbound interface http://********.****/EDELIVERY.SI_OUT_A_0596_RECADV: Error while determining root tag of XML: BOM / charset detection failed Error while determining root tag of XML: BOM / charset detection failed Error while parsing an XML stream: 'BOM / charset detection failed'.</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Any idea?

  • Java Mapping Or Adapter Module for MultiLevel File Content Conversion ??

    Hi Experts,
    Hi All,
    As we all know file content conversion cannot parse more than three level even if we use FCC paramenters or MessageTransform Bean /StrictXmlToPlain Bean.
    Currently i am facing an scenario where i can expect an content coversion with four or five levels.
    for ex.
    Target Message Looks like
    Header(0..1)
           |_____X
           |_____Y
           |_____Detail(0.n)
                 |____A
                 |____B
                 |____SubDetail(0.n)
                        |_____Trailer(0.n)
                                |______rec1
                                |______rec2
                                |______rec3(0..n)
                                       |______Subrec1
                                       |______Subrec2
    So my question how can i do the FixedLength/CSV in the target system ???
    Shall i do java mapping ? if yes then any code example relevant to this type of scenario
    Shall i do adapter module development ?if yes then any code example relevant to this type of scenario
    Thanks In Advance
    Ronit Mishra

    Target Message Looks like
    Header(0..1)----
    Level 1
           |_____X
           |_____Y
           |_____Detail(0.n)----
    Level 2
                 |____A
                 |____B
                 |____SubDetail(0.n)----
    Level 3
                        |_____Trailer(0.n)----
    Level 4
                                |______rec1
                                |______rec2
                                |______rec3(0..n)----
    Level 5
                                       |______Subrec1
                                       |______Subrec2

  • Proxy - ABAP mapping - file with content conversion

    Scenario goes from ECC (proxy) to XI then I do ABAP mapping.  I have tested the ABAP mapping with SXI_mapping_test transaction.  My ABAP mapping puts the payload back into XML and then the data goes to a file adapter where I also use content conversion.  If I do not do the content conversion the data comes out correct in XML.  When I change to content conversion I get 20 blank lines.  Is it possible to do content conversion from ABAP mapping?
    Any help would be greatly appreciated.
    Thanks
    Skip Ford

    Hi,
    Have you checked whether the blank lines you got in the XML files are from the blank nodes or elements which you created in ABAP mapping?
    If it is, then just create your elements or nodes whenever there are corresponding values in your ABAP mapping.
    e.g.
    If  l_sender_service is NOT initial.
      elementsender = odocument->create_simple_element(
                                   name = 'SenderService'
                                   value = l_sender_service
                                   parent = msgtype ).
    endif.
    Regards,
    Lim...

  • Error in mapping and in file content conversion

    Dear All,
    I am configuring one file-xi-rfc scenario in which the structure of the input file is as follows:
    EDI_DC40                      2   DELVRY03                                           SHPCON
    E1EDL20                       020                              <b>0083710164</b>
    E1EDL18                       020                              PIC
    E1EDL18                       020                              PGI
    E1EDL18                       020                              GWT
    I want to pick only VBELN from the segment E1EDL20 and post ot to the RFC. In the input file, the above structure is getting repeated for different VBELN.
    Please help in configuring the sender DT, MM and in doing File Content Conversion.
    Waiting for your reply.
    Warm Regards,
    N.Jain

    Hi,
    Check Below Links which will help u to do content convertion at Sender side and Receiver side.
    /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

  • Problem in message mapping due to file sender content conversion

    Hi all
    basically i m using file sender content conversion and couldn't make file in a proper nested structure where weight was the nested field of detail as there is a limitation of content conversion in file adapter:
    My file came out like this:
    <header>
    </header>
    <Detail>
    </Detail>
    <Weight>
    </Weight>
    <Weight>
    </Weight>
    <Detail>
    </Detail>
    <Weight>
    </Weight>
    <Weight>
    </Weight>
    <trailer>
    </trailer>
    and i wanted it like:
    <header>
    </header>
    <Detail>
    <Weight>
    </Weight>
    <Weight>
    </Weight>
    </Detail>
    <Detail>
    <Weight>
    </Weight>
    <Weight>
    </Weight>
    </Detail>
    <trailer>
    </trailer>
    so now the problem is i want to generate an idoc from it....but theres no way out to determine which weight is related to what detail except that the weight related to detail 1 comes after start and end of detail 1 tag and then weights of second detail comes after start and end of detail 2 tag in my source xml file.
    The structure of the target idoc is
    <header>
    </header>
    <Detail>
    <Weight>
    <flag>D1</flag>
    </Weight>
    <Weight>
    <flag>D1</flag>
    </Weight>
    </Detail>
    <Detail>
    <Weight>
    <flag>D2</flag>
    </Weight>
    <Weight>
    <flag>D2</flag>
    </Weight>
    </Detail>
    <trailer>
    </trailer>
    so i was wondering if i can make a user defined function in which i feed detail and weight and result a flag d1/ d2 inside the tag field. My logic is smth like
    while detail is 1 make all the tag weights coming after detail 1 inside <detail1> tag then resultlist.CC for context change  then while detail is 2 make a loop to fill the weight coming after detail 2 inside the <detail2>
    Is this possible by any means. I really need help
    Thnks
    Naina

    Hi
    My sender file content conversion have this setting:
    HEADER,1,DETAIL,*,Weights,*,TRAILER,*
    And plz give me more idea of the adapter module ....is there any blog available which is related to my problem.
    Naina

  • What are the content conversion parameters for this structure

    Hi All,
    The below file is the text file. what are the content conversion parameters are required and what is the structure to create in the IR to convert into xml.
    Schedule D - District/Port List (by District Code) [Produced13APR11]
    District |    Port      |    Name
    Code     |    Code      |
    01       |              |    PORTLAND, ME
             |    0101      |    PORTLAND, ME
             |    0102      |    BANGOR, ME
             |    0103      |    EASTPORT, ME
             |    0104      |    JACKMAN, ME
             |    0105      |    VANCEBORO, ME
             |    0106      |    HOULTON, ME
             |    0107      |    FORT FAIRFIELD, ME
             |    0108      |    VAN BUREN, ME
             |    0109      |    MADAWASKA, ME
             |    0110      |    FORT KENT, ME
             |    0111      |    BATH, ME
             |    0112      |    BAR HARBOR, ME
             |    0115      |    CALAIS, ME
             |    0118      |    LIMESTONE, ME
             |    0121      |    ROCKLAND, ME
             |    0122      |    JONESPORT, ME
             |    0127      |    BRIDGEWATER, ME
             |    0131      |    PORTSMOUTH, NH
             |    0132      |    BELFAST, ME
             |    0152      |    SEARSPORT, ME
             |    0181      |    LEBANON AIRPORT
             |    0182      |    MANCHESTER USER FEE AIRPORT, NH
    02       |              |    ST. ALBANS, VT
             |    0201      |    ST. ALBANS, VT
             |    0203      |    RICHFORD, VT
             |    0206      |    BEECHER FALLS, VT
             |    0207      |    BURLINGTON, VT
             |    0209      |    DERBY LINE, VT
             |    0211      |    NORTON, VT
             |    0212      |    HIGHGATE SPRINGS/ALBURG

    since in this case you dont seem to have a key value to figure out what your header is, it is better to go for a two level mapping. i.e first read all the data - each line as an xml tag. and in the first mapping group it as required and then use it for your original mapping.
    Regards,
    Ninu

  • 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,
    Yash

    Hi 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 PM

    You 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
    Chandra

    Posted in Incorrect forum.
    Posted again in Process Integration forum

Maybe you are looking for