Challenge in File Sender Content Conversion

Hi,
I have a real challenge concerning File Sender content conversion in SAP XI.
My flat file looks like this:
##H   300
MAR   206
KAS 1
DAT 01.03.08
ART 1.129
KUN 118
EAN 4.499
REL 5.0j 16.05.06
SER             1
##E   300
##H   301
DAT 01.03.08
ZEI 07:54
KAS 1
##E   301
Each row represents a data field and has two values: The first one defines the field name, the second represents the field value. E.g. 'DAT' stands for Date and has the value 01.03.08 in the example.
The fields belonging together in one data set are enclosed by a start qualiefier (##H)and an end qualifier (##E).
The value after these qualifiers (i.e. '300' and '301' in the example above) represent a certain record type, e.g. '300' represents Customer data and '301' represents Account Data.
Is it possible with file content conversion to create the following XML structure:
<?xml version="1.0" encoding="UTF-8"?>
<ns0:MT_DATA xmlns:ns0="http://sap.com/xi/account">
     <300>
          <MAR>206</MAR>
          <KAS>1</KAS>
          <DAT>01.03.08</DAT>
          <ART>1.129</ART>
          <KUN>118</KUN>
          <EAN>4.499</EAN>
          <REL>5.0j 16.05.06</REL>
          <SER>1</SER>
     </300>
     <301>
          <DAT>01.03.08</DAT>
          <ZEI>07:54</ZEI>     
          <KAS>1</KAS>
     </301>
</ns0:MT_DATA>
If it is not possible with content conversion, what could be an alternative? Adapter Module? MultiMapping?
I'd really appreciate your input as I am working on this since several days without a solution.
Thanks in advance.
Alex

It is not possible thru adapter..
There is one blog to convert such files to XML sing java mapping. Search for any flat file to Idoc or xml in the forum.
VJ

Similar Messages

  • File Sender Content Conversion: Help needed

    Hello Experts,
    i need help with file sender content conversion:
    i have a file which looks like this:
    12329460  24.01.09/07:01  167     Y010122851  136086  43300007            E70115  1L2_96_1
    12329660  25.01.09/07:02  157     Y010122851  136086  43390007            E711J5  1L2_96_1
    as you can see 8 fields, separated with whitespaces
    and i want and xml file which looks like this:
    <DT_DATA_FILESENDER>
      <Recordset>
          <Data> 
            <field1>12329460</field1>
            <field2>24.01.09/07:01</field2>
            <field3>167</field3>    
            <field4>Y010122851</field4> 
            <field5>136086</field5> 
            <field6>43300007</field6>
            <field7>E70115</field7> 
            <field8>1L2_96_1</field8
         </Data>
          <Data> 
            <field1>12329660</field1>
            <field2>25.01.09/07:02</field2>
            <field3>157</field3>    
            <field4>Y010122851</field4> 
            <field5>136086</field5> 
            <field6>43390007</field6>
            <field7>E711J5</field7> 
            <field8>1L2_96_1</field8
         </Data>
      </Recordset>
    Would you please let me know how the datatype has to look like?
    And especially how the FCC has to be configured for this scenario?
    Thanks in advance,
    Chris

    > With fixed lengths i get it working,
    >
    > but with de fieldseparator 0X09 it does not work,
    > would you please tell me the complete FCC config not only the fieldSeparation line?
    Well Christian,
    There is one thing, eithere you can use fieldSeparator or fieldFixedLengths you can not use both together. So in your case do not use fieldSeparator.
    The complete FCC is almost same as given in the blog in my previous reply. See the final output in that blog and create your data type accordingly. e.g.
    Recordset
    ------Item 0...unbound
    --------Field1 0..1
    --------Field2 0..1
    --------Field3 0..1
    --------Field8 0..1
    Regards,
    Sarvesh

  • ...file Sender content conversion 'lastFieldsOptional'  error

    Hi All,
    I am working on a File Sender content conversion--> flat file to XI.
    it's fixed length field all the rows with same column.
    090627 344535AFDFG+GBP65433 ASDSSD GFD dFSSGFD 6757532
    090627 344535AFDFG-GBP65433 ASDSSD GFD dFSSGFD 6757532
    090627 344535AFDFG-GBP65433 ASDSSD GFD dFSSGFD 6757532
    090627 344535AFDFG-GBP65433 ASDSSD GFD dFSSGFD 6757532
    090628 344536AFDFG+GBP45434 ASDSSD GFD dFSSGFD 6757532
    090628 344536AFDFG-GBP45434 ASDSSD GFD dFSSGFD 6757532
    **EOF**
    I am sucessfully able to handle the file if i remove "**EOF*" from incoming file. But i get "lastfieldsOptional" error with "*EOF**"
    >
    Parameters-
         Recordset Structure - ROW,*
         Recordsets per message - *
        ROW.fieldFixedLengths - 6,8,20,10,30,1,3,1,11,1,11,6,10,10,20,10,10,2,6,6,2,6,6,3
        ROW.fieldNames - INV_DATE,INV_NO,PAYMENT_REF,CUST_NO,CUST_NAME...etc etc
       ignoreRecordsetName - true
    There are parameters available to ignore Last field(last column) of a Row/Rocerdset
    but how to ignore the last row of the file.
    Plz suggest some parameter to ignore the last row/field of the file.
    Regs,
    Ansh

    Ansh,
    .lastFieldsOptional  is obselete and you cannot use. Please see sap help:
    http://help.sap.com/saphelp_nw04/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/content.htm
    The best thing comes to my mind is use:
    .keepIncompleteFields as YES
    Also give a try with:
    .missingLastfields as add
    So with this I think your last line in the file will read into XI. But the value of last line is **EOF**. So the length is 9. Since your the first two fixed lengths are 6 and 8. You will have these values as ***EOF and ***. So while mapping you can use doesnot satrt with * and map it, so that your last line will be ignored.
    Note: with this apporach you have to make sure your first two columns never start with *. If you have a doubt then you can use the condition doesnot equal to ***EOF for first field and doesnot equal to *** for the second field when you map. I hope it makes sense to you.
    Regards,
    ---Satish

  • 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

  • File sender content conversion

    hello
    I have a txt file sender content conversion in SAP PI.
    I define in the content conversion 6 fields names(field1, field2, field3,field4,field5,field 6) but the fie that I am loading has only three field(field1,field2,field3). the file is still loading though there is a different in the structure between what I define in the PI to what is loading to the PI.
    is there a way to send an error with out loading the file?
    I read about the count function in the mapping. isnt there a build in function that suppose to load only the structure that is define?
    Thanks
    Kfir

    If you define 6 fields and only 3 are present in the test file then you wont get an error (AFAIK)
    However, if you define 3 fields and there are 6 present in the source file then you will get an error saying more number of parameters found.
    isnt there a build in function that suppose to load only the structure that is define?
    I dont think so....this may however be achieved using a custom adapter module.
    Update:
    Just remembered that SAP PI (7.1 and above) comes with inbuilt XML-validation function....check if that helps in your design.
    Regards,
    Abhishek.
    Edited by: abhishek salvi on Dec 15, 2010 1:12 PM

  • File sender content conversion 0..unbounded does not pull file

    i am trying to map a flat file using content conversion to this xml structure:
    <Header>
    <Field_ID/>
    <Filler/>
    <Record_type/>
    <File_name/>
    <File_date/>
    <File_time/>
    <Heb_code/>
    <Claim_no/>
    <Cont_no/>
    <Remark/>
    </Header>
    <Claim_Header>
    <Field_ID/>
    <Filler/>
    <Record_type/>
    <Vendor_code/>
    <Garage_no/>
    <Data_code/>
    <Year/>
    <Job_no/>
    <Cont_no/>
    <License_no/>
    <ODO_meter/>
    <Claim_type/>
    <VIN_code/>
    <Claim_open_date/>
    <Claim_fix_date/>
    <N_code/>
    <C_code/>
    <Ejob1/>
    <Ejob2/>
    <Page_no/>
    <Pre_conf_date/>
    <Pre_conf_no/>
    <Part_buy_date/>
    <KM_prev_fix/>
    <Bill_prev_fix/>
    <Material_fault/>
    <Damage_whole/>
    <Damage_code/>
    <Job_amount/>
    <Towing_amount/>
    <Parts_amount/>
    <Hour_rate/>
    <Cont_mark/>
    </Claim_Header>
    <job_row>
    <Field_ID/>
    <Filler/>
    <Record_type/>
    <Vendor_code/>
    <Garage_no/>
    <Data_code/>
    <Year/>
    <Job_no/>
    <Cont_no/>
    <page_no/>
    <line_no/>
    <shaaton_code/>
    <job_finish_code/>
    <amount/>
    <job_time/>
    <row_value/>
    <color_code/>
    </job_row>
    <part_row>
    <Field_ID/>
    <Filler/>
    <Record_type/>
    <Vendor_code/>
    <Garage_no/>
    <Data_code/>
    <Year/>
    <Job_no/>
    <Cont_no/>
    <page_no/>
    <line_no/>
    <material_code/>
    <amount/>
    <unit_price/>
    <row_value/>
    </part_row>
    <remark>
    <Field_ID/>
    <Filler/>
    <Record_type/>
    <Vendor_code/>
    <Garage_no/>
    <Data_code/>
    <Year/>
    <Job_no/>
    <Cont_no/>
    <page_no/>
    <line_no/>
    <remark/>
    </remark>
    <footer>
    <Field_ID/>
    <Filler/>
    <Record_type/>
    <File_name/>
    <File_Record_no/>
    <Claim_no/>
    <Cont_no/>
    <Remark/>
    </footer>
    job_row, part_row and remark are records that occur 0..unbounded.
    when i write in recordset structure: Header,1,Claim_Header,1,Job_Row,1,Part_Row,1,Remark,1,Footer,1
    and put file with one record each, the file is pulled, but when i change recordset structure to:
    Header,1,Claim_Header,1,Job_Row,* ,Part_Row,* ,Remark,*,Footer,1
    the file is not pulled.
    can anyone tell me what i'm doing wrong?
    thanx
    Tomer

    Hi,
    Refer this links for FCC.
    Introduction to simple(File-XI-File)scenario and complete walk through for starters(Part1)
    Introduction to simple (File-XI-File)scenario and complete walk through for starters(Part2)
    File Receiver with Content Conversion
    Content Conversion (Pattern/Random content in input file)
    NAB the TAB (File Adapter)
    Introduction to simple(File-XI-File)scenario and complete walk through for starters(Part1)
    Introduction to simple (File-XI-File)scenario and complete walk through for starters(Part2)
    How to send a flat file with various field lengths and variable substructures to XI 3.0
    Content Conversion (Pattern/Random content in input file)
    NAB the TAB (File Adapter)
    File Content Conversion for Unequal Number of Columns
    Content Conversion ( The Key Field Problem )
    The specified item was not found.
    File Receiver with Content Conversion
    http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
    Regards,
    Phani

  • File Sender, Content Conversion - how to define variable length last field?

    XI 3.0 SP17
    With a File Sender communication channel, that uses Content Conversion - how do I define a 'variable length' last field?
    The scenario - the input file has four fields, of which the first three are a known fixed length, and the last (fourth, trailing) field is variable in length.
    Using a Message Protocol of 'File Content Conversion', how do I define that last variable length field (field name 'WOData' below) in the Content Conversion Parameters section?
    My current parameters are:
    Recordset Structure  -  Row,*
    ignoreRecordsetName  -  true
    Row.fieldFixedLengths  -  1,12,5,99999
    Row.fieldNames  -  WOType,WONum,WOLine,WOData
    I've tried the following for 'Row.fieldFixedLengths' to no avail -
    '1,12,5,*'
    '1,12,5,0'
    '1,12,5,'
    '1,12,5'
    The last two were grasping at straws )
    The only thing I've got to work is specifying a 'large' value for the final field (99999 above).
    In addition, does anyone know if specifying a large value (e.g. 99999) for the final trailing field will give rise to performance issues when the file is being processed?
    In the help for "Converting File Content in a Sender Adapter", it states -
    <Begin Quote>
    NameA.fieldFixedLengths
    If you make a specification here, the system expects a character string that contains the lengths of the structure columns as arguments separated by commas.
    If you also specify a separator for the columns, you must not add its length to the length of the columns.
    This entry is mandatory if you have not made an entry for NameA.fieldSeparator.
    <End Quote>
    http://help.sap.com/saphelp_nw04/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/content.htm

    << note that fieldFixedLengths will not take any wildcard entries like *. So in these case it is ideal to provide a maximum char length.  But note that while the file is being created that many spaces will be created in your file !!! >>
    Hi Shabarish,
    Yes, no wildcard is the conclusion I came to, hence my maximum )
    The message size did not increase by any 'blank padding'.  When I look in [Message Display Tool (Detail Display)] 'Audit Log for Message: X'  -
    2006-10-17 18:22:42 Success Channel X: Entire file content converted to XML format
    2006-10-17 18:22:42 Success Send binary file  "X" from FTP server "X", size 103290 bytes with QoS EO
    2006-10-17 18:22:42 Success Application attempting to send an XI message asynchronously using connection AFW.
    2006-10-17 18:22:42 Success Trying to put the message into the send queue.
    2006-10-17 18:22:42 Success Message successfully put into the queue.
    2006-10-17 18:22:42 Success The application sent the message asynchronously using connection AFW. Returning to application.
    The input flat file in non-XML format was 92,132 bytes and the message payload into XI was 103,290 bytes.
    My understanding is that trailing spaces are stripped from XML nodes.

  • File Sender Content Conversion Empty Fields

    Hi
    i have a problem with a filecontentconversion in the file sender adapter.
    my incoming csv has the following structure:
    ID,name,,,,,,,email,tel,,,,,
    in the xml that i am processing i would just need a structure
    <rootnode>
    <user>
    <ID></ID>
    <name></name>
    <email></email>
    <tel></tel>
    </user>
    </rootnode>
    i would like to ignore the rest of the fields.
    can anybody tell me if its possible to make a conversion like this or do i have to define a structure where all elements are included ?
    thanks ,
    martin

    Hi Martin,
    In the data type for your sender Service Interface, just set the occurrence of your optional fields to 0..1. Thanks to this, they will not be created by FCC for empty values from a file, which is what you want to achieve.
    Hope this helps,
    Greg

  • File sender content conversion problem.

    Hi,
    I am Working on File to RFC scenario .
    Source file  is zipped and has next structure:
    HEADER1 FIELD1 FIELD2...
    HEADER2 FIELD1 FIELD2...
        DETAIL FIELD1 FIELD2...
        TXT DESCRIPTION1
        TXT DESCRIPTION2
        DETAIL FIELD1 FIELD2...
        TXT DESCRIPTION1
        TXT DESCRIPTION2
    HEADER1 FIELD1 FIELD2...
    HEADER2 FIELD1 FIELD2...
        DETAIL FIELD1 FIELD2...
        TXT DESCRIPTION1
        TXT DESCRIPTION2
        DETAIL FIELD1 FIELD2...
        TXT DESCRIPTION1
        TXT DESCRIPTION2
    I've tryed with
    zip.mode --> unzip
    Transform.Class --> com.sap.aii.messaging.adapter.Conversion
    xml.HEADER1.fieldFixedLengths --> 3,3,17,8,4
    xml.HEADER1.fieldNames --> ID,NODO,REDO,FEDO,HODO
    xml.HEADER2.fieldFixedLengths --> 3,13,17,13
    xml.HEADER2.fieldNames --> ID,QFAC,REDO,AQSP
    xml.DETAIL.fieldFixedLengths --> 3,13,30,5,10,16,3,16,3,16,3,16,5,16,3,1,17,3
    xml.DETAIL.fieldNames --> ID,QFAC,NOMPRO,NUMPLA,TIPRAP,CONIND,TIPCON,RAPPTS,MONRAP,BASERP,MONEDA,CUOTA,TIPIVA,TOTRAP,PERLIQ,NOCOB,NUFA,TIPLIQ
    xml.DETAIL.keyFieldValue --> DETAIL
    xml.TXT.fieldFixedLengths --> 3,70
    xml.TXTfieldNames -->  ID,TEXTO
    xml.TXT.keyFieldValue --> TXT
    xml.conversionType --> StructPlain2XML
    xml.documentName --> MT_I4303_LIQRAP
    xml.keyFieldName --> ID
    xml.recordsetsPerMessage -->1
    But error:
    Exception: ERROR in structure conversion plain->xml configuration: message split not allowed here'; nested exception caused by: java.lang.Exception: ERROR in structure conversion plain->xml configuration: message split not allowed here
    Thanks,
    Carme

    Dear Carme
    I am also trying to use parameter xml.recordsetsPerMessage = 1 of Module MessageTransformBean to get one PI message per document (in my case per line) available in text file.
    like you I am also facing the error
    Attempt to process file failed with com.sap.aii.af.sdk.xi.adapter.trans.TransformException: Error converting Message: 'java.lang.Exception: ERROR in structure conversion plain->xml configuration: message split not allowed here'; nested exception caused by: java.lang.Exception: ERROR in structure conversion plain->xml configuration: message split not allowed here
    but I was not able to solve it by additional parameter xml.recordsetStructureOrder = var
    could you please share more details on your solution?
    Thanks
    best regards
    Jochen

  • Sender content conversion parameters

    what wld be the sender content conversion parameters for the following structure?
    MessageType        1-1
        Records            1-1
           File                1-unbounded
    thanks

    Hi,
    If you have not come across:
    http://help.sap.com/saphelp_nw04/helpdata/en/e3/94007075cae04f930cc4c034e411e1/frameset.htm
    would be of help.
    Regards,
    Manjusha.

  • Sender File Adapter - Content Conversion

    HI Friends,
    I got a scenario where I need to convert the File to XML document through Sender file adapter..
    My file looks like below.
    BATCH1234........
    12DASER123142JMM
    237DSAFDLKC839890
    45SDFLASJ90011
    BATCH3455...
    132FGAR
    SD21352525
    BATCH998898...
    123145DSRTW
    12FSTS
    So there is a Header and Body for each record set..
    My XML Structure is as follows.
    <TimeStructure>
      <TimeRecord>
         <ControlRec>
             <Field1>BATCH </Field1>   
             <Field2> ...</Field2>
         </ControlRec>
         <DataRec>
             <F1> ...... </F1>
             <F2> ...... </F2>
         </DataRec>
      </TimeRecord>
      <TimeRecord>
         <ControlRec>
             <Field1> BATCH  </Field1>   
             <Field2> ADFAS  </Field2>
         </ControlRec>
         <DataRec>
             <F1> ...... </F1>
             <F2> ...... </F2>
         </DataRec>
       </TimeRecord>
    </TimeStructure>
    The blog <a href="/people/shabarish.vijayakumar/blog/2006/02/27/content-conversion-the-key-field-problem:///people/shabarish.vijayakumar/blog/2006/02/27/content-conversion-the-key-field-problem
    is somewhat relevant to my requirement.
    But the problem is I have the keyfield "BATCH" for my header file but don't have any <b>key field in the data record</b> of the input file.
    Please help me out how to mention the configuration parameters.
    Regards,
    Kumar

    Hi,
    If you don't have constant key value for your detail records, then you can not directly get the required xml.
    So in this case, you can read all the records in a common Row model, i.e each record will be considered as a one row with all the values, and then split this row with Substring or java functions in the mapping.
    Even you can do this in the Adapter module .
    If you have key value for each record to identify then you can try with content conversion.
    Regards,
    Moorthy

  • Key field from content - Sender file adapter content conversion

    I am reading a source CSV file that has this structure. All rows in the source file are the same structure: line items of a PO. But there will be multiple POs in a single file, identified by the PO number as one column in the file.
    PONum,LineItemNum,Qty,Description
    001,1,34,Carrots
    001,2,17,Apples
    001,3,22,Bananas
    002,1,4,Mangos
    002,2,9,Coconuts
    003,1,44,Grapes
    Goal is to generate 3 messages, one for each PO:
    <po>
         <num>001</num>
         <line_items>
              ... 3 line items for PO # 001 ...
         </line_items>
    </po>
    <po>
         <num>002</num>
         <line_items>
              ... 2 line items for PO # 002 ...
         </line_items>
    </po>
    <po>
         <num>003</num>
         <line_items>
              ... 1 line item for PO # 003 ...
         </line_items>
    </po>
    Is there any way to use the Content Conversion Key Field Name to group the line items into the correct 3 messages? "Key Field Name" expects a static identifier for each type of row; but mine varies by the PO number in the content.
    Or do I need to do this in the mapping? If so, what is the easiest way to split 1 large message of all line items into multiple target messages based on the PO number? (I assume this is better than sending individual line item messages and aggregating them later, as long as the file size is OK.)
    Thanks in advance!
    RBL
    Edited by: Robert Burfoot-Lobo on Apr 8, 2009 11:43 AM

    Hi Robert,
    If ur goal is to split into 3 messages one for each PO, you can go for message split and using graphical mapping you can achieve that.
    Within the message mapping go to the tab Messages.
    Change the occurrence of the target message to 0..unbounded.
    Also this link may help you.
    /people/claus.wallacher/blog/2006/06/29/message-splitting-using-the-graphical-mapping-tool
    Regards,
    Madhu

  • Sender FILE Adapater Content Conversion: Header and Item Data

    Hi
    I need to pick a file and do the content conversion. The XML structure which should be formed should be in the below format. I have a CSV file which needs to be converted.
    Kindly suggest how can I maintain parameters for Header and Item level data in Recordset structure.
    How can I specify in Recordset parameter which is Header(Customerno, Doc type and Address) and Item level(Line Item) data.
      <?xml version="1.0" encoding="UTF-8" ?>
      <customernumber></customernumber>
      <documenttype></documenttype>
    - <Address>
            <name1></name1>
            <name2></name2>
      </Address>
    - <LineItem>
            <material>100016</material>
            <amount>1000</amount>
    </LineItem>

    Hi Swetank,
    The file after conversion should have one Header and you can have any number of line items.
    Once you choose File Content Conversion in the message protocol header while configuring the Sender File Adapter, you get the following enteries in the Content Conversion Parameters:
    Document Name
    Document Namespace
    Document Offset
    Recordset Name
    Recordset Namespace
    Recordset Structure
    Recordsets per Message
    Key Field Name
    To maintain the Header information, Some entries are mandatory, i.e.
    Recordset Name: Here please specify the name of the structure. It is included in the XML schema.
    Recorset Structure: Here you need to enter the sequence and the number of substructures. Since Header is one but you can have many Line items, you will write:
    customernumber,1,documenttype,1,Address,1,LineItem,*
    this format is clearly explained in the link provided by Divya.
    And in the Additional fields you need to write the name of fields corresponding to different Recorset Structures and also add some property to it, like fixed lengths, use some separators etc.
    and Most important field is:
    Key Field Name: If you specified a variable number of substructures for Recordset Structure, in other words, at least one substructure has the value ‘*’, then the substructures must be identified by the parser from their content. This means that a key field must be set with different constants for the substructures. In this case, you must specify a key field and the field name must occur in all substructures.
    Here you need to enter LineItem as it is the only Recordset Structure with an *.
    I hope this solves your problem,
    Thanks and Regards,
    Varun Joshi

  • Sender file adapter - content conversion question

    Hi all
    We have a .csv file to be passed to XI that has column headings as well. Is there a way of stripping the header using "Content conversion". We declared the RecordsetStructure as "header,1,item,*" but then it needs a keyFieldname and identifier which is obviously not available as the first line only has column headings.
    Hoping for a reply soon.
    Thanks
    Salil

    Salil,
    In RecordsetStructure you define as header,1,item,9999999999. But if you have more than 9999999999 records then the extra records after this will come as a second file.
    If you expect more item records then increase the number of 9's. Then we dont need to give the key field.
    ---Satish

  • Sender File Adapter content conversion problem

    Hi all,
    is it possible to do content conversion like this:
    Key;Field1;Field2;Field3
    PO00H;0482000000;20061102;PL61
    PO01I;00010;0A720;Material 1;100.000
    PO02D;20061102;100.000;
    PO00H;0482000001;20061102;PL63
    PO01I;00010;0A730;Material 2;40.000
    PO02D;20061102;40.000;
    PO01I;00010;0A740;Material 3;140.000
    PO02D;20061102;30.000;
    PO02D;20061103;110.000;
    convert to
    <?xml version="1.0" encoding="utf-8" ?>
    <MT_PO>
        <DT_PO>
            <DocumentHeader>
                <PONumber>0482000000</PONumber>
                <PODate>20061102</PODate>
                <CompanyCode>PL61</CompanyCode>
            </DocumentHeader>
            <Item>
                <ItemHeader>
                    <ItemNumber>00010</ItemNumber>
                    <MaterialCode>0A720</MaterialCode>
                    <MaterialDescription>Material 1</MaterialDescription>
                    <Quantity>100.000</Quantity>
                </ItemHeader>
                <ItemDetail>
                    <DeliveryDate>20061102</DeliveryDate>
                    <Quantity>100.000</Quantity>
                </ItemDetail>
            </Item>
        </DT_PO>
        <DT_PO>
            <DocumentHeader>
                <PONumber>0482000001</PONumber>
                <PODate>20061102</PODate>
                <CompanyCode>PL63</CompanyCode>
            </DocumentHeader>
            <Item>
                <ItemHeader>
                    <ItemNumber>00010</ItemNumber>
                    <MaterialCode>0A730</MaterialCode>
                    <MaterialDescription>Material 2</MaterialDescription>
                    <Quantity>40.000</Quantity>
                </ItemHeader>
                <ItemDetail>
                    <DeliveryDate>20061102</DeliveryDate>
                    <Quantity>40.000</Quantity>
                </ItemDetail>
            </Item>
            <Item>
                <ItemHeader>
                    <ItemNumber>00010</ItemNumber>
                    <MaterialCode>0A740</MaterialCode>
                    <MaterialDescription>Material 3</MaterialDescription>
                    <Quantity>140.000</Quantity>
                </ItemHeader>
                <ItemDetail>
                    <DeliveryDate>20061102</DeliveryDate>
                    <Quantity>30.000</Quantity>
                </ItemDetail>
                <ItemDetail>
                    <DeliveryDate>20061103</DeliveryDate>
                    <Quantity>110.000</Quantity>
                </ItemDetail>
            </Item>
        </DT_PO>
    </MT_PO>

    Ivan,
    I fear this is not possible.
    You can have
    <?xml version="1.0" encoding="utf-8" ?>
    <MT_PO>
    <DocumentHeader>
                <PONumber>0482000000</PONumber>
                <PODate>20061102</PODate>
                <CompanyCode>PL61</CompanyCode>
    </DocumentHeader>
    <ItemHeader>
                    <ItemNumber>00010</ItemNumber>
                    <MaterialCode>0A720</MaterialCode>
                    <MaterialDescription>Material 1</MaterialDescription>
                    <Quantity>100.000</Quantity>
    </ItemHeader>
    <ItemDetail>
                    <DeliveryDate>20061102</DeliveryDate>
                    <Quantity>100.000</Quantity>
    </ItemDetail>
    </MT_PO>
    Multiple <Item header> and multiple <Item details>
    Do the content conversion like this and then in mapping, convert it to any structure you need.
    Regards,
    JaiShankar

Maybe you are looking for

  • [SOLVED] log into KDE given a blank black screen with mouse cursor

    hi, noticed kwin using much higher cpu usage then normal, restarted KDE, everything seemed ok and then, while copying a file over to a samba share, my desktop went black with only a mouse cursor. Restarted KDE, rebooted pc, reinstalled KDE (everythin

  • I dropped my Iphone in water and the on/off button stopped working, how do I fix it?

    I dropped my phone in some water and it was only in there for about two or three seconds. I grabbed it and dried it straight away and made sure to get in all of it, and it was fine, everything worked. But about an hour after the on/off button stopped

  • Hyperion System 9.3.1 Installation order.

    Hi , I would like to install Hyperion Sytem 9.3.1 version. Mainly, I will work on Essbase. Please let me know installation order if any one has an idea or experience. If you provide me list of tasks that would be a great help. Thanks in advance.... R

  • Extremely high fan speeds while using Skype

    I have a MAc book pro intel based, the fan goes on whirling at the hihgest possible speed even when there is about 30% of cpu usage i tried the SMC and the PRAM reset but it hasn't helped me at all. Does any one ave any idea how to fix this problem?

  • Creating a Business Sign in CS3

    I have run into a problem I am not sure how to solve. Anyone's help will be greatly appreciated. I have been using CS3 flawlessly for sometime. However I am trying to do something that I am now having problems with. I am trying to design a business s