Complex File Content Conversion

Hi SDNites,
I have a XML on the receiver side which needs to be converted into CSV,
XML structure,
Structure 1 (1....Unbounded)
   - Field Structure 1
   - Field Structure 2
   - Substructure 1....Unbounded)
          - Field Substructure1
          - Field Substructure2.
Expected output : (As multiple occurence is there)
Record 1 - > Field Structure 1 value, Field Structure 2 value, Field Substructure1 value, Field Substructure2 value.
Record 2 - > Field Structure 1 value, Field Structure 2 value, Field Substructure1 value, Field Substructure2 value.
Record 3 - > Field Structure 1 value, Field Structure 2 value, Field Substructure1 value, Field Substructure2 value.
Please let me know what is the best way to achieve the same.
Regards,
Abhis

Abhishek,
Input to FCC cannot have depth more than 3.
Allowed sample XML
<root>
  <nameA>
  <value1>value</value1>
  <value2>value</value2>
  <value3>value</value3>
  </nameA>
  <nameB>
  <value4>value</value4>
  </nameB>
</root>
Reduce the depth in graphical mapping (you can add another mapping after your first mapping OR handle in first mapping it self).
Use node function "useOneAsMany" and get all Str fields under SubStr.
<Str>
  <SubStr>
  <value1_FromStu>value</value1_FromStu>
  <value2_FromStu>value</value2_FromStu>
  <value3>value</value3>
  <value4>value</value4>
  </SubStr>
  <SubStr>
  <value1_FromStu>value</value1_FromStu>
  <value2_FromStu>value</value2_FromStu>
  <value3>value</value3>
  <value4>value</value4>
  </SubStr>
</Str>

Similar Messages

  • 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

  • Complex File Content conversion - Reciver

    Hi all,
    I have to convert a XML to CSV. it shuld be fixedLength. My Structure is as follows
    <root>
    <NameA>
        <Val1>dfjsf </Val1>
        <Val2>
             <Val21>ajdfjs</Val21>
              <Val22>dfsdfsd</Val22>
         </Val2>
        <Val3>sfsfd</Val3>
    </NameA>
    <NameB>
       <ValA>dfsdfc</ValA>
       <ValB>
            <ValB1>sfdsaf</ValB1>
            <ValB2>sdfsf</ValB2>
       </ValB>
       <ValC>aedfsad</ValC>
    </NameB>
    </root>
    the problem is i am not able to get the right record structure
    i tried with
    root,NameA,NameB,Val2
    it gives an error
    can anyone suggest me how can i do this in Adapter or XSLT Mapping is the best option?
    Rgds
    Aditya

    Hi,
    Can u pls tell me ur data which is coming under Name A node and Name B is same or it is different.
    if the data is coming under node Name A and Name B is same then u can change ur target data type and creaste only one data type of NameA and make its occurance to 0-unbounded and ur FCC will be simple.
    for example if u have 10 records then ur name A will repeate 10 times in that case no need to have name B.
    Refer the below FCC.
    Receiver FCC no need of Endseparator
    File Adapter (Receiver) - Are we "really" sure about the concepts?
    Receiver-
    File Receiver with Content Conversion
    chirag

  • Sender File Content Conversion with re-occuring record pairs

    Hi,
    Our FCC works fine with the following structure:
    Header1: H1F1, H1F2, H1F3,... (1:1)
    Header2: H2F1,H2F2,H2F3,..... (1:1)
    Notes: NF1,NF2,NF3,.............(1:1)
    Line1:L1F1,L1F2,L1F3,.............(1:N)
    Line1:L1F1,L1F2,L1F3,
    Line1:L1F1,L1F2,L1F3,
    Line1:L1F1,L1F2,L1F3
    Line2:L2F1,L2F2,L2F3,............(1:N)
    Line2:L2F1,L2F2,L2F3,
    Line2:L2F1,L2F2,L2F3,
    Line2:L2F1,L2F2,L2F3,
    But we have structure as below:
    Header1: H1F1, H1F2, H1F3,... (1:1)
    Header2: H2F1,H2F2,H2F3,..... (1:1)
    Notes: NF1,NF2,NF3,.............(1:1)
    Line1:L1F1,L1F2,L1F3,.............(1:N)
    Line2:L2F1,L2F2,L2F3,.............(1:N)
    Line1:L1F1,L1F2,L1F3,
    Line2:L2F1,L2F2,L2F3,
    Line1:L1F1,L1F2,L1F3,
    Line2:L2F1,L2F2,L2F3,
    Line1:L1F1,L1F2,L1F3,
    Line2:L2F1,L2F2,L2F3,
    Lin1 and Line2 occur as multiple pairs making it as multiple line items. When we use content conversion parameters as below:
    Header1.fieldNames          H1F1,H1F2,H1F2,...
    Header1.fieldFixedLengths     10,5,10,.....
    Header1.keyFieldValue          H1 
    Header1.keyFieldInStructure     add
    Header1.endSeparator          'nl'
    Header1.lastFieldsOptional     YES
    and same for Header2, Notes, Line1, Line2
    It picks up only first Header1, Header2, Notes, Line1 and Line2 in a recordset.
    Does anyone have idea how could we do this content conversion? Any help would be appreciated.
    Reagrds,
    N@v!n

    Hi Navin,
    You can check the below links :-
    Complex File Content Conversion - with random multiple occurrences
    /people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
    /people/shabarish.vijayakumar/blog/2007/08/03/file-adapter-receiver--are-we-really-sure-about-the-concepts
    Complex content conversion File sender
    These might be of some help.
    Regards,
    Rohit

  • Need help in file content conversion complex structure

    Hi Guys ,
    Iam new to this file content conversion , Please let me know whether below requirement is possible .if yes than how ?
    Inbound XML file from Proxy
    <Data>
      <keyfield1>0011</keyfield1>
      <keyfield2>0012</keyfield2>
      <Keyfield3>0013</Keyfield3>
      <field1>Test1</field1>
      <field2>testfield1</field2>
      <field3>0001</field3>
    <Data>
      <keyfield1>0021</keyfield1>
      <keyfield2>0022</keyfield2>
      <Keyfield3>0023</Keyfield3>
      <field1>Test2</field1>
      <field2>testfield2</field2>
      <field3>0002</field3>
    output pgp flat file .
    pgp file format should be as below after file content conversion
      0011|0012|0013|Test1||||||
      0011|0012|0013|Testfield1||||||
      0011|0012|0013|0001||||||
      0021|0022|0023|Test2||||||
      0011|0012|0013|Testfield2||||||
      0011|0012|0013|0002||||||
    thanks a lot .
    Regards
    Prabhu

    Hi.
    Try this.
    First you need to use a message mapping  and create a target structure to convert a similar output  structure that do you want.  like this
    <Target>
    --  Field1
    --  Field2
    --  Field3
    --  Field4
    --  Field5
    --  Field6
    --  Field7
    --  Field8
    --  Field9
    </Target>.
    Then map
    keyfield1-> Field 1 ,keyfield2-> Field 2 , keyfield 3---> Field 3
    map  field1-> field4 .. for the others fields duplicate the Target node (right click)  and  map map  field2-> field5 ..etc.
    For the field 5 until field 9 map with constant ("'')
    Then in you receiver comunication channel put simple parameters. 
    Target.fieldSeparator = |
    Target.endSeparator = 'nl'
    Regards.

  • Sender File Content Conversion Complexity

    It is again time to dip into the well of knowledge that is SDN.
    I have a question about sender file content conversion.  
    It appears that I can only create simple XML structures with it, but I'm hoping someone here can help.
    Lets says I have a file where each record layout is the same.   There are not header records, trailer records, etc.   Basically only one structure within the recordset.
    However the record itself may have a complicated structure.   For example, the layout of each record may be:
    String1, String2, String3, Array(0:3) consisting of String4, String5, String6.
    Can I convert that to a structure of
    <Node>
        <string1>
        <string2>
        <string3>
        <array>
            <string4>
            <string5>
            <string6>
        <array>
            <string4>
            <string5>
            <string6>
    </Node>
    Or must I create a DT containing one node giving string4,5 and 6 a unique name for each occurance?
    Thanks in advance.

    Hi,
    You can go with generic structure and then either in the adapter module or Mapping, you can format the structure. Because content conversion has a limitation to upto one level.
    check this for limitation-
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/50061bd9-e56e-2910-3495-c5faa652b710
    check this for generic structure-
    /people/sravya.talanki2/blog/2005/08/16/configuring-generic-sender-file-cc-adapter
    Rgds,
    Moorthy

  • File Content Conversion for complex structure

    Hi
    I have a requirement to repeat a structure consisting of three lines i.e the segment  containing these 3 lines will have occurrence 0....unbounded and will be repeated in the File multiple times ,
    What is the level that can be handled in File Content Conversion's recordset structure ?
    My issue is that  the structure is
    Dt_File -> Repeating Level1->Level2 ->Field1
                                                ->Level2a->Field3
                                                -> Level2b->Field5
    where the first level is DT_File
    under which I have RepeatingLevel1 as a SubElement
    and under Repeating level I have Level2 , Level2a and Level2b at its subelementsl
    and under Level2 I have Field1 , Under Level2a i have Field3 and under Levle 2b i have Field5
    How do i handle this in the Content Conversion ?? as in how do I create my Recordset Structure ?? as it just handles one level below the Document Name (i,e) Message Type)
    Is it possible ??? or should i consider some other way to constuct my data type ??
    Thanks
    Dev

    Hi Tarang
    My DT according to the target file structure is this :
    DT_File
    >Main1(1,1)
    >Main2(1,1)
    >Main3(0...unbounded)
    >Record1(1,1)
    >Field1
    >Field2
    >Field3
    >Record2(1,1)
    >Field4
    >Field5
    >Record3(1,1)
    >Field6
    >Field7
    SO I want to confirm if the receiver FCC will be   -     Main1,Main2,Main3,Record1,Record2,Record3
    Record1.fieldSeparator  ,
    Record1.endSeparator     'nl'
    Record2.fieldSeparator  ,
    Record2.endSeparator     'nl'
    Record3.fieldSeparator  ,
    Record3.endSeparator     'nl'
    or                                                                   Main1,Main2,Record1,Record2,Record3
    Thanks
    Dev

  • 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.

  • Using File Content Conversion converting XML format to text format

    Hi All,
                 I am able to convert to Text format using file content conversion, But the requirement is to convert the same for the structure with additional subnodes  as in the example (also complex nested structures)
    <ns0:SendXSDEmployeeDetails xmlns:ns0="http://ehro.eds.com/FRAMEWORK/FileToFile/FileCConverion">
        <Employee>
                  <Employee_ID>2</Employee_ID>
                   <Employee_Name>KannanKumar</Employee_Name>
                     <Address>
        <Street>13th Cross Reddy</Street>
        <City>Bangalore</City>
        <Pincode>641026</Pincode>
        <Phone_No>
            <t1>9901934934</t1>
            <t2>9901934934</t2>
        </Phone_No>
    </Address>
       </Employee>
    </ns0:SendXSDEmployeeDetails>
    can any one help on this please
    I have already seen the blogs :
    /people/krishnakumar.ramamoorthy3/blog/2007/01/27/generic-mapping-to-convert-nested-xml-to-flat--receiver-file-adatper
    /people/ravikumar.allampallam/blog/2005/06/24/convert-any-flat-file-to-any-idoc-java-mapping
    <b>Can any one help to do  this in simple way</b><br>

    Hi,
    Like correctly pointed by JaiShankar, the Sender File Adapter currently does not supoort such stracutures.
    the strcuture supported is described in this link,
    http://help.sap.com/saphelp_nw2004s/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/content.htm
    Regards
    Bhavesh

  • Required help for Identifying diff. items in file content conversion.

    Hi All,
    I've to use a file content conversion parameters for a .txt file in which there are two objects. One is a header and the other is a item detail.
    How do we get or mark the difference between both so that XI recognizes the particular line is a Header and the other is a Item detail
    Thanks in Advance.
    Regards,
    Sree.

    Hi
    Make use of a field which is common to header and item line which will always hold different values for header and item. Or otherwise if possible, add an extra field in the header and item lines, say 'Key' and use it in the 'Key Field Name' parameter in the adapter configuration. See this for details - [File Content Conversion for Complex Structures|http://www.riyaz.net/blog/index.php/2008/02/20/xipi-file-content-conversion-for-complex-structures/].
    Regards,
    Riyaz

  • File Content Conversion Receiver Channel

    Hi,
    I have a complex structure like:
    <Header>
    </Header>
    <Item>
      <SubItem>
        <Info>
        </Info>
      </Subitem>
    </Item
    <Item>
      <SubItem>
        <Info>
        </Info>
      </Subitem>
    </Item
    When I follow the instructions for File Content conversion I cannot separate the Item / SubItem and Info segments into separate lines in my flat file.
    The result is:
    Header
    Item Subitem Info
    Item Subitem Info
    I want
    Header
    Item
    Subitem
    Info
    Item
    Subitem
    Info
    How can i establish the correct result?
    Best regards
    Ron.

    Hi,
    I specified the following
    Name                                                                   value
    Header.addHeaderLine                 0
    Header.fieldSeparator                   ;
    Header.endSeparator                   'nl'
    Item.addHeaderLine                     0
    Item.fieldSeparator                       ;
    Item.endSeparator                       'nl'
    Subitem.addHeaderLine               0
    Subitem.fieldSeparator                 ;
    Subitem.endSeparator                  'nl'
    Info.addHeaderLine                       0
    Info.fieldSeparator                        ;
    Info.endSeparator                         'nl'
    Best Regards
    Ron

  • File Content Conversion on the Receiving side

    Is there a way in which if I want a Pipe Delimited File as a result, after the last field also I get a pipe with next record starting in the next line.

    Hi,
    For | (Pipe), use corresponding hex code as fieldSeparator i.e. 0x7C as fieldSeparator.
    For FCC on receiver side refer -
    [Simple FCC|http://www.riyaz.net/blog/index.php/2008/02/19/xipi-file-content-conversion-for-simple-structure/], [Complex FCC|http://www.riyaz.net/blog/index.php/2008/02/20/xipi-file-content-conversion-for-complex-structures/]
    For separotor at the end of line you can try using a dummy field or use combination of pipe and newline i.e. '0x7C' and '0x0D' (stands for carriage return) or 'nl' as endSeparator
    Edit: You might consider using 'nl' as beginSeparator parameter and 0x7C as endSeparator. This will do the trick. However, this would add a blank line in the beginning of the file.
    Hope this helps.
    Regards,
    Riyaz
    Edited by: Riyaz Sayyad on Aug 21, 2008 3:00 PM

  • 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 Problem in IDOC-XI-File Scenario

    Dear All,
    I am doing IDOC-XI-FILE scenario.
    I am facing one problem related to File Content Coversion.My requirement was to generate a dynamic file like <b>%store_code%_%current_date%_sitemaster.xml</b> , I have completed the dynamic generation successfully .
    Now there is slight change in the requirement ,<b>we have to suppress the current_date node of the xml content</b> . i have tried to suppress the current_date using these <b>DATE.fieldFixedLengths 0 , Date.fixedLengthTooShortHandling Cut</b> , But I am unable to suppress it Can some body provide me the details on this .
    The output xml version generated by Reciever file adapter is as below :
    <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:MT_SITE_MASTER xmlns:ns0="http://sample-xitest.com/sitemaster">
    - <SITE_DATA>
    <STORE_CODE>N002</STORE_CODE>
    <TITLE_MEDI>Company</TITLE_MEDI>
    <STORE_NAME>Mount Road</STORE_NAME>
    <STREET>Chennai</STREET>
    <COUNTRY>IN</COUNTRY>
    <SALES_TAX_NO>12345678910</SALES_TAX_NO>
    </SITE_DATA>
    </ns0:MT_SITE_MASTER>
    Plz provide me the code I have to write in the file content conversion .
    Thanks in advance
    Regards
    Prabhat

    If u see my earlier reply, I mentioned that u can not suppress the field from the one node.i.e Form SITE_DATA data type u can not suppress the field called CURRENT_DATE.
    My suggestion is that , modify the Data type in such a way that you will be having two nodes as I have mentioned earlier.  Then use the Suppress Logic for the Current Date.
    So it will look like this-
    <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:MT_SITE_MASTER xmlns:ns0="http://sample-xitest.com/sitemaster">
    - <SITE_DATA>
    <STORE_CODE>N002</STORE_CODE>
    <TITLE_MEDI>Company</TITLE_MEDI>
    <STORE_NAME>Mount Road</STORE_NAME>
    <STREET>Chennai</STREET>
    <COUNTRY>IN</COUNTRY>
    <SALES_TAX_NO>12345678910</SALES_TAX_NO>
    </SITE_DATA>
    <CURR_DATE>
       <CURRENT_DATE>20051105</CURRENT_DATE>
    </CURR_DATE>
    </ns0:MT_SITE_MASTER>
    So ur SITE_DATA is not having a field called CURRENT_DATE. This field is in separate node (segment ) called CURR_DATE. Now u can use the Suppress Logic for the same like this.
    CURR_DATE.fieldFixedLengths - 0
    CURR_DATE.fixedLengthTooShortHanling - Cut
    And in your Variable Substitution you can use the date from the other segment called CURR_DATE.
    Hope this solves ur problem.
    Regards,
    Moorthy

  • File Content Conversion Problem

    Hi
    I have a flat file having 10 fileds with fixed length of field 7 characters
    abc  bcd  dce  cef  ecf  fgi
    123  234  343  233 434 343
    322  222  222  222 222 222
    +++++++++++++++++++++++++++++++
    XML CODE FOLLOWS
    +++++++++++++++++++++++++++++++
    <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:MT_send xmlns:ns0="http://OTO-Continue.com">
      -<SEND>
       <abc>343</abc>
       <bcd>343</bcd>
       <dce>434</dce>
       <cef>3434</cef>
       <ecf>343</ecf>
       <fgi>434</fgi>
      </SEND>
      </ns0:MT_send
    As per the client req I'm going with FCC. The file is picking fine with the FILE. But not picking with the FCC.
    The parameters which I gave are as follows.
    SOURCE I feel it is fine since file is picking fine and keeping the same for FCC also.
    PROCESSING
    QOS -- Exactly Once
    Poll Interval -- 10
    Processing Mode -- Delete
    Empty-File Handling -- Process empty files
    CONTENT CONVERSION Parameters
    Document Name -- (am giving sender data type name) DT_send
    Document NSpace -- http://OTO-Continue.com
    Recordset Name -- SEND
    Recordset Structure -- SEND,*
    Recordset Sequence -- Ascending
    Recordset per Message -- 0
    And in the table the parameters am settings are
    SEND.fieldNames                 abc,bcd,cde,def,efg,ghk
    SEND.fieldFixedLengths      7,7,7,7,7,7       (because each and every field has 7 characters)
    SEND.keepIncompleteFields       No
    SEND.fieldFixedLengthType      char
    SEND.fieldContentFormatting     trim
    SEND.fieldEndSeparator            'nl'
    This was the configuration. But this is not working I monitored the Communication Channel and file is not reading and not getting deleting.
    What actually went wrong in above configuration. Why it is not working.
    Thanks.

    Hi Swarna,
    CONTENT CONVERSION Parameters
    Document Name -- ?
    DocumentNSpace -- ?
    Recordset Name -- ?
    Recordset Structure -- ?
    Recordset Sequence -- Ascending
    Recordset per Message -- ?
    Document Name - <Message Type> eg:- (MT_ABC)
    DocumentNSpace - Name space of your MT
    Recordset Name - The root node( Which has one occurence)
    Recordset Structure - The parent node of the fields(can have multiple occurences)
    Recordset Sequence -- Ascending
    Recordset per Message -- 1/* (No.of records per each record set)
    In your structure
    +++++++++++++++++++++++++++++++
    XML CODE FOLLOWS
    +++++++++++++++++++++++++++++++
    <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:MT_send xmlns:ns0="http://OTO-Continue.com">
    -<SEND>
    <abc>343</abc>
    <bcd>343</bcd>
    <dce>434</dce>
    <cef>3434</cef>
    <ecf>343</ecf>
    <fgi>434</fgi>
    </SEND>
    </ns0:MT_send
    There is no root node,  so in your FCC you need to mention your RecordsetName and you can ignoreRecordSetName in result structure. Check the following blog simulates your requirement.
    /people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
    Regards,
    Prasanna

Maybe you are looking for

  • How do I transpose and group a table in a ViewObject?

    Hi, I want to transpose and group a table within a view object and don't know how to do it. Please let me explain what I want to do: One table, e.g. Employees, has one row per employee. Each employee has a departmenent and a room assigned: Employee D

  • Transfering 14 gig of music with USB 1

    They way I understand things is that if the hard drive is constantly spinning the battery life is significantly decreased. I have 14 gig of music and as USB 1 won't charge as it transfers I am worried that if I buy a new ipod I won't be able to trans

  • Time machine no longer backs up after cloning startup disk

    I cloned my startup disk (250 mb) in April 2013 to a 500 mb disk and replaced it with the cloned disk. Before the clone, Time Machine was backing up properly to the 6tb external drive designated for backup.  Since installing the clone Time Machine ha

  • Reinstalling CS5 on new computers.. what do I need to do?

    Hi all, I've got the Production Premium 64bit CS5 Student version, everything installed, registered, and up to date. I'm looking to build a new computer (well, new motherboard, processor, and memory), this means I'll have to reinstall Windows 7 which

  • Uploading From Sony HD Camcorder

    I recently purchased a Sony camcorder HD the new 500.I use with a Sony shotgun mike and it is unbelievable for concerts.The problem is sharing. I don't want to post public like on youtube(plus I tried and it takes about 4 hr for a 5 min. video)The fi