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>

Similar Messages

  • XI File Content Conversion Issue

    Peace to All,
    I am having this funny problem in File Content Conversion:
    com.sap.aii.utilxi.misc.api.BaseRuntimeException: RuntimeException in Message-Mapping transformation: Cannot produce target element /ns0:ZIN_MT. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd
    What did I do:
    DATA TYPE1.
    Structure1:                 TESTOUT_DT           Complex Type
                                             REC               Element                      1-1
                                                   Name11   Element xsd:string        1-1
                                                    Name12   Element xsd:string       1-1
    Structure2:              TESTIN_DT    Complex Type
                                                     Name21   Element xsd:string        1-1
                                                    Name22   Element xsd:string       1-1
    Mapping:
                              name11-name21
                            name12-name22
    Configuration of Sender File :
        DocumentName            :  TESTOUT_DT
        Document NameSpace  : http:/myspace.com/test1
        RecordSetName            :          Recordset
        Recordset Structure       : Rec,1
    Rec.fieldNames                 :name11,name12
    Rec.fieldSeparator             :,
    Rec.endSeparator             :'nl'
    So when I test it it picks up the file but is unable to map it to destination.
    Can anyone help me to find out why?.
    One more hint is that I am using Third party Business System and I use the same for both file CC sender channel and Filereceiver channel.
    I will appreciate your help.
    Thanks

    Many thanks to your guidance...SDN is the best...It worked
    Moving forward I encountered another issue, when I extend it a Trail to it and end up with this mapping:
      ZOUT_MT  11      -ZIN_MT 11
         Recordset 1--1
                 Rec 1unboundedTest01 1-----unbounded
                       key(string)           1...1----
    key 1..1(string)
                       name11(string)    1..1----
    name21   1..1(string)
                       name12(string)    1..1----
    name22  1..1(string)
                 Trail 1...1   -
    Trail 1---1  
                       key(string)   1..1 -
    key 1..1(string)
                        test(string) 1...1 -
    test1..1 (string)
    In Config: Sender File CC
    Doc Name                     :ZOUT_MT
    Doc namspace               : http://mytest.com/test1 
    RecordsetName              : Recordset
    Recordset Structure         : Rec,*,Trail,1
    Key Field Name               : key
    Recordset per message    : 1
    Rec.fieldNames      :   key,name11,name12
    Rec.fieldSeparator  : ,
    Rec.endSeparator  : 'nl'
    Rec.processConfiguration:  FromConfiguration
    Rec.keyFieldValue          : 1
    Trail.fieldNames: key,test
    Trail.endSeparator:  'nl'
    Trail.processConfiguration : FromConfiguration
    Trail.keyFieldValue           : 1
    Trail.fieldSeparator           : ,
    From all this work above , when I put the file having:
       1,111,112
       1,222,223
       1,333,334
       1,99
    The output file in empty (null)...
    Does anyone out there understand why the output file is becoming null..
    here is the log I get in workbecnh (commuunication channel)
    Audit Log for Message: c1a434f5-ad9f-4a26-08c1-e7d579a5927a
    Time Stamp     Status     Description
    21.01.2009 11:48:22     Success     Channel ztest_sender_cc: Entire file content converted to XML format
    21.01.2009 11:48:22     Warning     Channel ztest_sender_cc: Empty document found. Proceed without sending message
    21.01.2009 11:48:22     Success     File "/mylocation/interface/SCM/somefolder/in/shilpagirlsinput.txt" deleted after processing

  • File Content Conversion Issue

    Hi ,
    My Scenario is File to FIle having  Sender  .CVS using File Content Conversion
    The sender file is coming below as an example,
    a,b,"c,d,e",f
    Here I need to consider Double code value "c,d,e" as a single field value using File separator as COMMA(,)
    Please guide me how to achieve this type of file using FCC with file separator COMMA.

    Hi Dilip,
    We had a similar problem where the name for eg: "John,Smith" when written into a .csv file were considered as "John","Smith" as two different entities instead of one. The solution was we used  the character quotes " before and after the name field  message mapping before it is sent to channel for .csv conversion as shown in the screenshot. Now it is treated as one single filed instead of two.
    Hope this helps!
    Thanks,
    Divya.

  • Sender File Content Conversion Issue

    Hi guys,
    I´m trying to convert a flat file into a xml structure using FCC. The flat file looks like:
    G220520102205201003062010
    D824000            006500015010000000000000GPDME                                   4521005   LP00
    D351023            006500015010000000000000GPDME                                   4521005   LP00
    D523000            006500015010000000000010GPDME                                   4521005   LP00
    G220520102205201003062010
    D824000            006500012510000002442490GPDME                                   4521005   LP00
    D351023            006500012510000000049530GPDME                                   4521005   LP00
    D523000            006500012510000000517790GPDME                                   4521005   LP00
    G220520102305201003062010
    D824000            006500012510000000025240GPDME                                   4521005   LP00
    I´ve created the following DT:
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:sap.com" targetNamespace="urn:sap.com">
       <xsd:complexType name="DT_PRODUCTS_OUT">
          <xsd:sequence>
             <xsd:element name="RECORDS" maxOccurs="unbounded">
                <xsd:complexType>
                   <xsd:sequence>
                      <xsd:element name="REG_TYPE" type="xsd:string"></xsd:element>
                      <xsd:element name="PSTNG_DATE" type="xsd:string"></xsd:element>
                      <xsd:element name="DOC_DATE" type="xsd:string"></xsd:element>
                      <xsd:element name="FECINT" type="xsd:string"></xsd:element>
                      <xsd:element name="DETAIL" maxOccurs="unbounded">
                         <xsd:complexType>
                            <xsd:sequence>
                               <xsd:element name="REG_TYPE" type="xsd:string"></xsd:element>
                               <xsd:element name="MATERIAL" type="xsd:string"></xsd:element>
                               <xsd:element name="PLANT" type="xsd:string"></xsd:element>
                               <xsd:element name="STGE_LOC" type="xsd:string"></xsd:element>
                               <xsd:element name="MOVE_TYPE" type="xsd:string"></xsd:element>
                               <xsd:element name="ENTRY_QNT" type="xsd:string"></xsd:element>
                               <xsd:element name="ENTRY_UOM" type="xsd:string"></xsd:element>
                               <xsd:element name="ITEM_TEXT" type="xsd:string"></xsd:element>
                               <xsd:element name="COSTCENTER" type="xsd:string"></xsd:element>
                               <xsd:element name="TR_PART_BA" type="xsd:string"></xsd:element>
                            </xsd:sequence>
                         </xsd:complexType>
                      </xsd:element>
                   </xsd:sequence>
                </xsd:complexType>
             </xsd:element>
          </xsd:sequence>
       </xsd:complexType>
    </xsd:schema>
    As you can see the record DETAIL is nested to the record RECORDS. The point is that with the standard module of the FCC I can´t achieve my requirements, I only could get an XML structure like this:
    <Recordset>
    *<RECORDS>*
      <REG_TYPE>G</REG_TYPE>
      <PSTNG_DATE>22052010</PSTNG_DATE>
      <DOC_DATE>22052010</DOC_DATE>
      <FECINT>03062010</FECINT>
    *</RECORDS>*
    *<DETAIL>*
      <REG_TYPE>D</REG_TYPE>
      <MATERIAL>824000</MATERIAL>
      <PLANT>0065</PLANT>
      <STGE_LOC>0001</STGE_LOC>
      <MOVE_TYPE>501</MOVE_TYPE>
      <ENTRY_QNT>0000000000000</ENTRY_QNT>
      <ENTRY_UOM>GPD</ENTRY_UOM>
      <ITEM_TEXT>ME</ITEM_TEXT>
      <COSTCENTER>4521005</COSTCENTER>
      <TR_PART_BA>LP00</TR_PART_BA>
    *</DETAIL>*
    *<DETAIL>*
      <REG_TYPE>D</REG_TYPE>
      <MATERIAL>351023</MATERIAL>
      <PLANT>0065</PLANT>
      <STGE_LOC>0001</STGE_LOC>
      <MOVE_TYPE>501</MOVE_TYPE>
      <ENTRY_QNT>0000000000000</ENTRY_QNT>
      <ENTRY_UOM>GPD</ENTRY_UOM>
      <ITEM_TEXT>ME</ITEM_TEXT>
      <COSTCENTER>4521005</COSTCENTER>
      <TR_PART_BA>LP00</TR_PART_BA>
    *</DETAIL>*
    *<DETAIL>*
      <REG_TYPE>D</REG_TYPE>
      <MATERIAL>523000</MATERIAL>
      <PLANT>0065</PLANT>
      <STGE_LOC>0001</STGE_LOC>
      <MOVE_TYPE>501</MOVE_TYPE>
      <ENTRY_QNT>0000000000010</ENTRY_QNT>
      <ENTRY_UOM>GPD</ENTRY_UOM>
      <ITEM_TEXT>ME</ITEM_TEXT>
      <COSTCENTER>4521005</COSTCENTER>
      <TR_PART_BA>LP00</TR_PART_BA>
    *</DETAIL>*
    </Recordset>
    But it should look like this, with the records DETAIL inside RECORDS:
    <Recordset>
    +*<RECORDS>*+
      <REG_TYPE>G</REG_TYPE>
      <PSTNG_DATE>22052010</PSTNG_DATE>
      <DOC_DATE>22052010</DOC_DATE>
      <FECINT>03062010</FECINT>
    *<DETAIL>*
      <REG_TYPE>D</REG_TYPE>
      <MATERIAL>824000</MATERIAL>
      <PLANT>0065</PLANT>
      <STGE_LOC>0001</STGE_LOC>
      <MOVE_TYPE>501</MOVE_TYPE>
      <ENTRY_QNT>0000000000000</ENTRY_QNT>
      <ENTRY_UOM>GPD</ENTRY_UOM>
      <ITEM_TEXT>ME</ITEM_TEXT>
      <COSTCENTER>4521005</COSTCENTER>
      <TR_PART_BA>LP00</TR_PART_BA>
    *</DETAIL>*
    *<DETAIL>*
      <REG_TYPE>D</REG_TYPE>
      <MATERIAL>351023</MATERIAL>
      <PLANT>0065</PLANT>
      <STGE_LOC>0001</STGE_LOC>
      <MOVE_TYPE>501</MOVE_TYPE>
      <ENTRY_QNT>0000000000000</ENTRY_QNT>
      <ENTRY_UOM>GPD</ENTRY_UOM>
      <ITEM_TEXT>ME</ITEM_TEXT>
      <COSTCENTER>4521005</COSTCENTER>
      <TR_PART_BA>LP00</TR_PART_BA>
    *</DETAIL>*
    *<DETAIL>*
      <REG_TYPE>D</REG_TYPE>
      <MATERIAL>523000</MATERIAL>
      <PLANT>0065</PLANT>
      <STGE_LOC>0001</STGE_LOC>
      <MOVE_TYPE>501</MOVE_TYPE>
      <ENTRY_QNT>0000000000010</ENTRY_QNT>
      <ENTRY_UOM>GPD</ENTRY_UOM>
      <ITEM_TEXT>ME</ITEM_TEXT>
      <COSTCENTER>4521005</COSTCENTER>
      <TR_PART_BA>LP00</TR_PART_BA>
    *</DETAIL>*
    +*<RECORDS>*+
    </Recordset>
    Any Idea how to achieve that with File Content Conversion?
    Thanks in Advance,
    Luis
    Edited by: Luis Zarzo on Jun 14, 2010 1:22 PM

    Sorry, I don´t know why my message format has been lost. Hopefully is a bit understandable. The point is that I want to achieve a structure like this:
    What I´ve read is that this is not possible to achieve with File Content Conversion, but maybe there is a way.
    Otherwise I would like to know if there is an easy way to make this using for example graphical or maybe java mapping.
    Thanks a lot,
    Luis

  • JMS receiver adapter file content conversion issue

    I'm able to successfully convert complex structure using XML2Plain using StructXML2Plain module keys. However, I'm having trouble with a simple structure. All I see is a LF in the queue.
    For the simple structure, I create the message via ABAP mapping unlike complex structure.
    My data looks like this -
    <?xml version="1.0" ?>
    - <ns1:HQ_reply_MT xmlns:ns1="urn:abc.com:HQToSAP">
      <Data1>      PIPXSDI3070 00000 00342YSDI3070PROCESS_MQSERIES HQXPLOR10 XPLOR.ORDER.RESULTS 0000 000000000000000086312 Invalid Process flag : 2. 065</Data1>
      </ns1:HQ_reply_MT>
    the only think I'm missing is the encoding="UTF-8" in the first line of the xml document. Not sure how to get this via ABAP mapping.
    My conversion rules are as follows -
    <b>Transform.Class   com.sap.aii.messaging.adapter.Conversion
    Transform.ContentType   text/plain;charset=utf-8
    xml.addHeaderLine   0
    xml.conversionType    SimpleXML2Plain
    xml.fieldSeparator    ","</b>
    I've tried Transform.ContentType and TransformContentType, both result in success with only LF in the queue.
    At this point I'm thinking its something to do with my XML message I create. Any ideas?
    Thank you.

    You need an additional hierarchy level:
    root
    -> row
      -> data
    In your example:
    <?xml version="1.0" ?>
    <ns1:HQ_reply_MT xmlns:ns1="urn:abc.com:HQToSAP">
    <b><row></b>
    <Data1> PIPXSDI3070 00000 00342YSDI3070PROCESS_MQSERIES HQXPLOR10 XPLOR.ORDER.RESULTS 0000 000000000000000086312 Invalid Process flag : 2. 065</Data1>
    <b></row></b>
    </ns1:HQ_reply_MT>
    Regards
    Stefan

  • Issue w/ File content conversion (Receiver side)

    Folks, there seems to be an issue with the conversion. I've read several of threads on this forum, but none helped! Although the file is generated with 8 bytes there seems to be nothing in the file.
    However when 'File' message protocol is used, the xml file is generated correctly as expected. All my other settings are fine.
    Here is the scenario:
    1) created Message type -
    MTX
    ..Material
    ..BaseUnit
    ..MatGrp
    ..Division
    2) comm. channel created for -
    Transport protocol: File (NFS)
    Message protocol: File content conversion
    Recordset Structure: MTX
    parameters:
        MTX.fieldSeparator: ,
        MTX.endSeparator: 'nl'
    Should recordset struc. and parameters have 'ns0' prefix, i.e.,
    Recordset Structure: ns0:MTX
    parameters:
        ns0:MTX.fieldSeparator: ,
        ns0:MTX.endSeparator: 'nl'
    What esle is missing? any thoughts are welcome.
    Thanks and appreciate your responses.

    Hi ABAP JUNOON,
    Could you please create another Test scenario and
    try
    MTI_XXX
         - DATA(0..unbounded)
             - fields?
    i mean, without redundant RS(Record Structure).
    and use 
    Transport protocol: File (NFS)
    Message protocol: File content conversion
    Recordset Structure: DATA.
    it will written the complete output file.
    some people create the Reciver data type for  test scenario's as follows.
    MTI_XXX
       -RS
         - DATA(0..unbounded)
             - fields?
    i mean with redundant RS
    in this case file is generated, but nothing will be appear.
    so plz take care while creating the reciver data type with FCC.
    and the following case also will work i.e
    MTI_XXX
       -RS
         -Header(0,1)
             - fields?
         - DATA(0..unbounded)
               - fields?
         - Trailer(0,1)
             - fields?
    Regards
    Mahesh.

  • File Content Conversion and Empty file issue

    Hello,
    The issue is :
    I have configured a file sender adapter with file Content Conversion. I have 2 kinds of records Header and Items.
    i have defined the 'Key Field Name' based on the first character of each line of my flat file and the values associated :
    Header.keyFieldValue = 1
    Item.keyFieldValue = 2
    Flat file example :
    1;Headerfield1;Headerfield2
    2;ItemField1;ItemField1;ItemField1;ItemField1;
    2;ItemField1;ItemField1;ItemField1;ItemField1;
    2;ItemField1;ItemField1;ItemField1;ItemField1;
    and everything works fine !
    But now imagine you receive a bad file like this :
    xxxxx;ohhohoh;llllll
    y;sdfsdfs;zezerz;zerzer
    e;zerzerze;zezerzerzer
    The result is : IS receive nothing and no alert is generated ?!!!???
    What i have seen is that the adapter doesn't find any corresponding value for keyFieldValue so it consider that the flat file is empty and i do nothing, the file is archived and that's all no alert is generated ????
    But i want to receive an alert for checking that the processed flat file was not correct !
    If anybody has an idea, it will be great !
    Regards,
    Vincent

    Hi Vincent.
    Sometimes it really #!@#%%#.. me off when customers excepts that XI will solve their whole organization interfacing problems (and the world hunger as well...:)...
    even when it comes to the responsible systems that creates the file(sometimes with bugs and problems even before XI came to the org.).as in every developed application or out of the box one, the application has to take care of its outputs and deal with errors. when it cant deliver what other systems expects her to  it has to inform some one...
    When it comes to the Adapter frame work XI expects the system in its landscape to be responsible for the data they send (well formed and with the defined  structure...IDocs,XML,flat files).
    as mentioned in my colleagues previous postings you can take care of data verification during mapping and so..
    I belive it is possible to monitor the incoming file before it is parsed to XML (not sure it is the right way to) and maybe we'll get a solution to that in the future (today we can monitor the comm. channel wether its  configures well or not,maybe it will be possible in the future to alert when an incoming file is empty)
    Regards.
    Nimrod

  • Issue in File Content Conversion

    hi all,
      I am getting one Flat file which I need to convert in xml before processing it in mapping. Below is the structure of the input file:-
    dkghdgk
    gkhdggg
    ghdgkhdgk
    46ffsfsf
    :lgjdgdgg
    $dfgxvnlkas
    vnmvkvas;vasofjsfasfv
    vbvgfpwtndfgdjgdgdfv
    vnmvlddg  jgkl  jklk j l;
    jhkg;  gj klhjg njkdgggpr83jg
    nhldggdgdggfgjhgfj
    Number of rows in the file is not constant.
    My requirment is to convert in such a way that first 3 rows should be assigned to first three fields and forth field should contain rest all data or in other manner. But first 3 rows must be in three seperate fields, rest all rows can be defined in any way.
    Please let me know if it is possible in File content conversion. If not please tell the alternate way.
    Thanks
    Jai

    Hi Jaideep,
    But first 3 rows must be in three separate fields, rest all rows can be defined in any way.
    Please let me know if it is possible in File content conversion. If not please tell the alternate way.
    Is it fine if you read the flat file line by line and a temporary structure is created  which will
    have  a field say Row under a node DATA,
    row will repeat as number of times as there are lines in the input file.
    later you can keep first three line as different fields and merge the remaining in a  single field.
    You may have to create two mappings to map it to the actual structure required .
    Please refer this  blog(see the screenshots in the blog)
      /people/sravya.talanki2/blog/2005/08/16/configuring-generic-sender-file-cc-adapter
    My requirment is to convert in such a way that first 3 rows should be
    assigned to first three fields and forth field should contain rest all data or in
    other manner.
    so you can merge the 4 th row and onwards into a single field in the mapping
    Regards,
    Srinivas

  • File-Sender: Verification of file content during file content conversion

    Hello,
    I have a question regarding „file verification“ when using the file-sender adapter.
    I got a flat file (.csv) that I convert into XML with the file-sender adapter and file-content-conversion.
    In the file there is a column “RecTyp” that is my KeyFieldValue. Possible values for RecTyp are “B”, “D”, “U”, “T”.
    So far so good. All this works perfectly.
    If (due to an error) there is another value in RecTyp than the 4 mentioned above (B;D;U;T) the file adapter ignores this row today. And here begins my issue:
    I want to change this behavior. That means in detail, I want to check if there is another value in my KeyFieldValue “RecTyp” than specified. If this is the case an exception should be thrown. The whole message should not be delivered.
    We had the idea to use the module-processor for this verification….
    But may be there are other suggestions. Or may be some one can provide an appropriate module that is already written, etc….
    Does anyone have an idea?
    Kind regards,
    Tobias

    Hi,
    It is better to pick the file in generic way i.e Row by Row and then go with the validation with the help of Adapter Modules or in the Mapping.
    For more-
    /people/sravya.talanki2/blog/2005/08/16/configuring-generic-sender-file-cc-adapter
    Thanks,
    Moorthy

  • Supress Column Heading - File Content Conversion in Sender Adapter

    Hi,
    Let me give a more clear picture about my scenario.  I need to convert CSV File to XML output:-
    My source file has column heading and values.  The sample data is mentioned hereunder:-
    PERNR;KID;PNALT;NACHN;NAME2;VORNA
    ;1200;1200;Angus
    I have created a data type as under:-
    DT_LegacyEmployee (Category - Complex Type)
         Employees (Category - Element, Occurence - 1)
              Header (Category - Element, Occurence - 0...1)
                   PERNR_H
                   KID_H
                   PNALT_H
                   NACHN_H
                   NAME2_H
                   VORNA_H
              Employee (Categroy - Element, Type - DT_LegacyEmployee_Row, Occurence - 0...unbounded)
                   PERNR
                   KID
                   PNALT
                   NACHN
                   NAME2
                   VORNA
    The file conversion parameters in the file sender adapter are mentioned hereunder:-
    Document Name - MT_LegacyEmployee
    Document Namespace - http://abc.com/xi
    Recordset Name - Employees
    Rescordset Structure - Header,1,Employee,*
    Recordsets per Message - 1
    Key Field Type - String (Case Sensitive)
    Employee.fieldSeparator - ;
    Employee.endSeparator - 'nl'
    Employee.fieldNames - PERNR,KID,PNALT,NACHN,NAME2,VORNA
    I dont' have a key field value.  How do we remove the header and show only the values in the xml output.  I have searched the forum topics as well checked many blogs related to file content conversion, but nothing helped.  Kindly advice how to fix this issue.  Thanks in advance.
    Regards.
    Praveen

    Hi Praveen,
    Change your File Adapter as below
    Document Name - MT_LegacyEmployee
    Document Namespace - http://abc.com/xi
    Recordset Name - Employees
    Rescordset Structure - Employee,*
    Recordsets per Message - 1
    Key Field Type - String (Case Sensitive)
    Employee.fieldSeparator - ;
    Employee.endSeparator - 'nl'
    Employee.fieldNames - PERNR,KID,PNALT,NACHN,NAME2,VORNA
    There is no need for the Header required in the data type.
    DT_LegacyEmployee (Category - Complex Type)
    Employees (Category - Element, Occurence - 1)
    Employee (Categroy - Element, Type - DT_LegacyEmployee_Row, Occurence - 0...unbounded)
    PERNR
    KID
    PNALT
    NACHN
    NAME2
    VORNA
    Now the trick is in the mapping program
    Lets assume your mapping looks like
    MT_LegacyEmployee ---> MT_TargetEmployee
    - Employees ---> Records
       - Employee ---> Record
         - PERNR  ---> TargetPERNR
         - .. so on
    When you do a mapping from Employee ---> Record apply the following logic.
    (PERNR)--->
                 (TestEquals =) --->(NOT)--->
    (Constant) --->                                (IF)
    (PERNR)                       (IF Without Else) ---> (Record)
                                                   (THEN)
                                (Employee)--->
    When doing this make sure RightClick on PERNR and Select Context ---> Employees.
    By default context would be from Employee and it will give you an error of XSD format. So make sure you are changing the context.

  • File Content Conversion -All the input content was not shown in output file

    Hi Experts,
    In my scenario, I need to send data from .XML file to .txt file, using File Content Conversion at Receiver communication channel. This is File to File scenario.
    This is my Input xml file.
    <ns:FILEINPUT_MT xmlns:ns="http://File2FileTest">
      <RECORD>
        <Row>
          <FirstName>Susie</FirstName>
          <LastName>Tony</LastName>
          <City>London</City>
          <Country>UK</Country>
        </Row>
      </RECORD>
    </ns:FILEINPUT_MT>
    <b>Processing Parameters</b>
    Target Directory = C:/Test
    File Name Scheme = xi_output.txt
    File Construction Mode = Add Time Stamp
    File Type = Binary
    <b>Content Conversion Parameters</b>
    Recordset Structure : RECORD
    RECORD.endSeparator = ‘nl’
    RECORD.fieldSeparator = ;
    After ‘Activate’ and providing the input xml file, xi_output.txt file was generated. But the file content was shown only with ‘Susie’ i.e. with First Name only. I need xi_output.txt file should have all the four fields (FirstName, LastName, City, Country)
    Could some one help me to resolve the issue?
    Thanks in advance
    Sree

    Check these blogs...Might help you.
    /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/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
    /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/sap.user72/blog/2005/01/06/how-to-process-csv-data-with-xi-file-adapter
    /people/michal.krawczyk2/blog/2004/12/15/how-to-send-a-flat-file-with-fixed-lengths-to-xi-30-using-a-central-file-adapter
    Link for SAP Help
    http://help.sap.com/saphelp_nw2004s/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/content.htm

  • File Content Conversion Error

    Hello,
    I have Async. File receiver scenario in which the following is the XML message structure. This is received by the file adpater.
    <ns1:MT_Info_File xmlns:ns1="urn:http://freemanco.com/xi/info_list">
       <TYPE>
         <FileItem>
               <FileName>DD11022007</FileName>
          </FileItem>
      </TYPE>
      <DATA>
          <LineItem>   <LineEntry>234567891234567890123456789012345678901234567890</LineEntry>
          </LineItem>
       <LineItem>
    <LineEntry>95473523647586969587265245437586979798376524253586</LineEntry>
        </LineItem>
      <DATA>
    <LineItem</ns1:MT_Info_File>
    <u><b>I want to write only folowiing DATA structure to file. I do not want to wite contents of TYPE structure</u>
      <DATA>
          <LineItem>   <LineEntry>234567891234567890123456789012345678901234567890</LineEntry>
          </LineItem>
       <LineItem>
    <LineEntry>95473523647586969587265245437586979798376524253586</LineEntry>
        </LineItem>
      <DATA></b>
    In the receiver file adpater I have follwoing <u><b>File content conversion parameters</b></u>.
    RecordSetStructure: DATA,LineItem,*
    *.addHeaderLine     0
    *.fieldFixedLengths     301
    *.fixedLengthTooShortHandling     Error
    *.endSeparator     nl
    LineItem.fieldSeparator     nl
    DATA.fieldSeparator     nl
    While testing I got following error. Looks like it is expecting some values for FileItem element in the XML.
    <b>Error</b> Attempt to process file failed with java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)'
    <b>Error</b> MP: exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)': java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)'
    <b>Error</b> Exception caught by adapter framework: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)'
    <b>Error</b> Delivery of the message to the application using connection File_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)': java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)'.
    How to resolve this issue? I appreciate your help.
    Thank you,
    Balaji

    Balaji,
    I would suggest to remove FileItem and LineItem in your receiver datatype. They are increasing the hierarchy of your content conversion. If you do that then you will have
    <ns1:MT_Info_File xmlns:ns1="urn:http://freemanco.com/xi/info_list">
    <TYPE>
    <FileName>DD11022007</FileName>
    </TYPE>
    <DATA><LineEntry>234567891234567890123456789012345678901234567890</LineEntry>
    <LineEntry>95473523647586969587265245437586979798376524253586</LineEntry>
    <DATA>
    </ns1:MT_Info_File>
    Then in content converstion give this parameters:
    Record structure :  TYPE,FileName,DATA,LineEntry
    TYPE.fieldfixedlengths   : 0
    FileName.fieldfixedlenghts:0
    DATA.fieldfixedlenghts:0
    LineEntry.fieldfixedlengths:301
    LineEntry.endSeparator:'nl'
    Then it should work. Also you can use FileName in your variable substituition. Also please see this weblog on how to use FileName in variable substitution:
    /people/sravya.talanki2/blog/2005/08/11/solution-to-the-problem-encountered-using-variable-substitution-with-xi-sp12
    If you dont want to remove FileItem and LineItem then add these also in your content conversion. Then the parameters would be:
    Recordset:  TYPE,FileItem,FileName,DATA,LineItem,LineEntry
    TYPE.fieldfixedlengths   : 0
    FileItem.fieldfixedlengths:0
    FileName.fieldfixedlenghts:0
    DATA.fieldfixedlenghts:0
    LineItem.fieldfixedlengths : 0
    LineEntry.fieldfixedlengths:301
    LineEntry.endSeparator:'nl'
    Regards,
    ---Satish

  • ** File Content Conversion Error in Receiver CC - How to solve this?

    Hi friends,
    My target structure looks like below.
    EmployeeJobDetails                                        --> Message Type
       JobCode                                                      --> Node
            EmployeeNumber            xsd:string
            Domain                           xsd:string
       JobTrack                                                     --> Node
             Department                    xsd: string
             Position                         xsd: string
    I use the FCC parameters in the receiver CC as below:
    Recordset Structure:    JobCode,JobTrack
    JobCode.fieldSeparator = |
    JobCode.endSeparator = 'nl'
    JobTrack.fieldSeparator = |
    JobTrack.endSepartor = 'nl'.
    Because, we want the output like below
    1099|Raja
    Accts|JuniorAccountant
    1100|Ram
    HR|Recruiter
    like this.
    In this scenario Source is XML and target is txt file.
    I am using XSLT Mapping. The FCC works fine, if my source input file contains some records. But, when we send empty source XML file as below
    <?xml version="1.0" encoding="UTF-8"?>
    <EMPLOYEE_DATA/>
    Mapping works fine. Message is processed successfully in SXMB_MONI. The payload in response also comes with Message Type name like below
    <EmployeeJobDetails    namespace >
    </EmployeeJobDetails>
    While convert this, the system throws below error.
    Error Message:
    Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure '' found in document', probably configuration error in file adapter (XML parser error)': java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure '' found in document', probably configuration error in file adapter (XML parser error)'
    Friend, how to convert this when source XML is empty.
    But, if we remove JobTrack node in target strucutre and remove the JobTrack parameters in CC, then if we send the same empty XML file FCC is working  fine and  we  get the target text file 0 KB. (Amazing !!)
    But, in the first case, how to solve the issue?
    Kind Regards,
    Jegathees P.

    Hi friends,
    If we remove JobTrack node in target strucutre and remove the JobTrack parameters in CC, then if we send the <b>same empty XML file</b> FCC is working fine and<b> we get the target text file 0 KB</b>. (Amazing !!)
    But, if we give parameters like JobCode,JobTrack then send pass the same empty file, we face the problem 'File Content Conversion' Error.
    Searching solution for this problem ...

  • Define attributes in Sender File Content Conversion

    Hello everybody,
    I have the following issue:
    I have the next flat file:
    0001;159;2008-04-03;Customer_2008-04-03.xml
    0001;953;0;1;0
    0002;2907;0;1;0
    And I have to convert it to the next XML structure:
    <DocumentsBatch id="0001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <BatchInfo>
      <SumDocumenten>159</SumDocumenten>
      <date>2008-04-03</date>
      <name>Customer_2008-04-03.xml></name>
      </BatchInfo>
      <Document id="0001">
      <Customer>953</Customer>
      <Portnumber>0</Portnumber>
      <denied>1</denied>
      <Port>0</Port>
      </Document>
      <Document id="0002">
      <Customer>2907</Customer>
      <Portnumber>0</Portnumber>
      <denied>1</denied>
      <Port>0</Port>
      </Document>
    My question is: Is it possible to define an attribute (e.g. id="0001" in <Document id="0001">) in File Content Conversion? If so, how can I do that?
    Your answers will be rewarded with points.
    Kind regards,
    Kamran

    Hi Kamran,
    its not possible to define attribute in File Content conversion.Instead u can create one more field "id" under the segments DocumentsBatch, Document etc.
    Thanks
    Ritu

  • File Adapter - File Content Conversion to XML last element missing

    I'm using the SAP File Adapter with File Content Conversion to convert | (pipe) delimited records into XML.
    When the last field is blank, I would expect that an empty node gets created, however, the node doesn't get created at all.
    For example given these settings...
    Record.fieldSeparator = |
    Record.endSeparator = 'nl'
    Record.fieldNames = FIELD1,FIELD2,FIELD3
    Using this three record file as my data...
    |123|XYZ
    ABC||XYZ
    ABC|123|
    When converted to XML, this is what the recordset XML structure looks like...
    <Recordset>
    <Record>
    <FIELD1 />
    <FIELD2>123</FIELD2>
    <FIELD3>XYZ</FIELD3>
    </Record>
    <Record>
    <FIELD1>ABC</FIELD1>
    <FIELD2 />
    <FIELD3>XYZ</FIELD3>
    </Record>
    <Record>
    <FIELD1>ABC</FIELD1>
    <FIELD2>123</FIELD2>
    </Record>
    </Recordset>
    Notice that the last record is missing the "FIELD3" element.
    Edited by: William Krick on Jun 17, 2011 4:49 PM

    Giuseppe Agnello wrote:
    > Sorry, there was a typo in the parameter name.
    > Word fields should start with capital F.
    > Try with Record.missingLastFields, with value "add"
    >
    > http://help.sap.com/saphelp_nw70/helpdata/en/ae/d03341771b4c0de10000000a1550b0/frameset.htm
    >
    > Similar issue was resolved with same parameter in this thread:
    > Sender file adapter with FCC not creating last field
    That did the trick.  It was a typo.  Thanks Giuseppe.
    I'm willing to bet that this parameter was added to fix the parsing bug without breaking existing users that had already worked around the original bug.   You shouldn't really have to special case the last field.

Maybe you are looking for

  • Questions on getting "other" data off ipad

    I have been reading the threads, but before I do a full restore I have a few questions. I have about 2GB of "other" space on my 8GB ipad 2 (OS 7 withou the latest patch). I need to get rid of it because I can't load the new OS and I have the ipad dow

  • Where can I buy a replacement DVD drive for a mac mini A1347

    My mac mini is out of warranty and my toddler stuffed several discs into the drive slot. Whenever it booted, it made a horrible ratcheting clicking noise, but couldn't eject anything. I disassembled the entire computer, and pulled all 3 discs out wit

  • [b]Superscript font name in Reports 6[/b]

    Hi forum, Suggest me to find a appropriate font name for the superscripts (Like SM service mark) in Reports 6.o Thanks for your help Natarajan

  • TS3276 How do I cancel an operation in iCloud mail once it has begun?

    I have sent an email in icloud mail with too large an attachment. As a result in Account info under quota limits, "[icloud] is calculating sizes" and has been doing so for several hours. Nothing, including restarting my iMac can stop the little circl

  • A Unix Utility (or Scripting) to Do Major Read-Write-Seek Testing on a HD?

    I'm wondering if there is a utility in Darwin -- or a (reliable, safe, free) Unix utility I can download -- that will do extensive read-write-seek testing on a hard drive? Or if not, could I use some kind of scripting commands in Terminal to do somet