How to convert hierarchy XML to CSV/Excel format using PI/XI

posted in PI forum but not many replies, please bear with me as I am in crunch time*
Hi All,
I am working with SAP PI/XI for the first time and need some help file conversion of complex hierarchy XML to CSV file using PI. I have done plenty of research on SDN and could find much related to what I want to do.
Here is the example of how my input XML would look like:
<?xml version="1.0" encoding="UTF-8"?>
<PartyMaster type="OrgHierarchy" name="Compass Group Owned">
<PartyMasterHierarchy>
<Hierarchy level="3" nodeName="Bon Appetit Sector" type="Sector" ID="A00000" refID="A00000">
<Hierarchy level="4" nodeName="BA Division" type="Division" ID="AB0000" refID="AB0000" >
<Hierarchy level="5" nodeName="BA East Coast Region" type="Region" ID="ABE000" refID="ABE000">
<Hierarchy level="6" nodeName="Engstrom, John RVP" type="District" ID="ABE01" refID="ABE01" >
</Hierarchy>
</Hierarchy>
</Hierarchy>
</Hierarchy>
<Hierarchy level="3" nodeName="Levy Sector" type="Sector" ID="K00000" refID="K00000".
<Hierarchy level="4" nodeName="Levy Sector Division" type="Division" ID="K90000" refID="K90000">
<Hierarchy level="5" nodeName="Levy Sector Region" type="Region" ID="K99000" refID="K99000">
<Hierarchy level="6" nodeName="TBA Total" type="District" ID="K9901" refID="K9901"> </Hierarchy>
</Hierarchy>
</Hierarchy>
</Hierarchy>
</PartyMasterHierarchy>
</PartyMaster>
I would like to get CSV output in the format below
DISPLAY_NAME, DOCUMENT_DESCRIPTION, PARENT, EXTERNAL_ID, ORG_UNIT_TYPE
Bon Appetit Sector, Bon Appetit Sector,constant value, A00000, constant value
Levy Sector, Levy Sector, constant value, K00000, constant value
BA Division, BA Division, A00000, AB0000, constant value
Levy Sector Division, Levy Sector Division, K00000, K90000, constant value
BA East Coast Region, BA East Coast Region, AB0000, ABE000, constant value
Levy Sector Region, Levy Sector Region, K90000, K99000, constant value
Engstrom John RVP, Engstrom John RVP, ABE000, ABE01, constant value
TBA Total ,TBA Total ,K99000, K9901, constant value
1) How do I go about this? I think I have to configure an adapter but which adapter would give me the desired result?
2) How do I tell PI when to pick the file from and where to place it after conversion? Could this be done in adapter configuration?
Any help will be greatly appreciated.
Thanks.
--Mithun

Hi Mithun,
You might try this step below :
1. As for xsd schema fo the xml or create xsd schema base on the sample xml file using tools like xmlspy or others free tools.
2. import you xsd schema as outbound Data type
3. apply mapping from source to target (csv).
Configuration
Sender file adapter (without content conversion)
Receiver file adapter (with content conversion).
so the sender adapter will be monitoring inbound directory and write the result to another directory.
Thank You and Best Regards
Fernand.

Similar Messages

  • How to convert org hierarchy XML to CSV/Excel format using PI/XI

    Hi All,
    I am working with SAP PI/XI for the first time and need some help file conversion of complex hierarchy XML to CSV file using PI. I have done plenty of research on SDN and could find much related to what I want to do.
    Here is the example of how my input XML would look like:
    <?xml version="1.0" encoding="UTF-8"?>
    <PartyMaster type="OrgHierarchy" name="Compass Group Owned">
    <PartyMasterHierarchy>
    <Hierarchy level="3" nodeName="Bon Appetit Sector" type="Sector" ID="A00000" refID="A00000">
    <Hierarchy level="4" nodeName="BA Division" type="Division" ID="AB0000" refID="AB0000" >
    <Hierarchy level="5" nodeName="BA East Coast Region" type="Region" ID="ABE000" refID="ABE000">
    <Hierarchy level="6" nodeName="Engstrom, John RVP" type="District" ID="ABE01" refID="ABE01" >
    </Hierarchy>
    </Hierarchy>
    </Hierarchy>
    </Hierarchy>
    <Hierarchy level="3" nodeName="Levy Sector" type="Sector" ID="K00000" refID="K00000".
    <Hierarchy level="4" nodeName="Levy Sector Division" type="Division" ID="K90000" refID="K90000">
    <Hierarchy level="5" nodeName="Levy Sector Region" type="Region" ID="K99000" refID="K99000">
    <Hierarchy level="6" nodeName="TBA Total" type="District" ID="K9901" refID="K9901"> </Hierarchy>
    </Hierarchy>
    </Hierarchy>
    </Hierarchy>
    </PartyMasterHierarchy>
    </PartyMaster>
    I would like to get CSV output in the format below
    DISPLAY_NAME, DOCUMENT_DESCRIPTION, PARENT, EXTERNAL_ID, ORG_UNIT_TYPE
    Bon Appetit Sector, Bon Appetit Sector,constant value, A00000, constant value
    Levy Sector, Levy Sector, constant value, K00000, constant value
    BA Division, BA Division, A00000, AB0000, constant value
    Levy Sector Division, Levy Sector Division, K00000, K90000, constant value
    BA East Coast Region, BA East Coast Region, AB0000, ABE000, constant value
    Levy Sector Region, Levy Sector Region, K90000, K99000, constant value
    Engstrom John RVP, Engstrom John RVP, ABE000, ABE01, constant value
    TBA Total ,TBA Total ,K99000, K9901, constant value
    1) How do I go about this? I think I have to configure an adapter but which adapter would give me the desired result?
    2) How do I tell PI when to pick the file from and where to place it after conversion? Could this be done in adapter configuration?
    Any help will be greatly appreciated.
    Thanks.
    --Mithun

    >>> 1) How do I go about this? I think I have to configure an adapter but which adapter would give me the desired result?
    Use File adapter at the sender side to pick up the xml and use file adapter at the receiver side (message protocol file content conversion) to convert xml format to csv.
    Basically you have to configure in the file adapter (FCC) on the receiver side to get desired csv structure from XML.
    >>> 2) How do I tell PI when to pick the file from and where to place it after conversion? Could this be done in adapter configuration?
    Configure sender file adapter to pick up the file from the specified directory. Configure receiver file (fcc adapter) to drop the csv file after conversion.
    For sender adapter
    http://help.sap.com/saphelp_nw04/helpdata/en/e3/94007075cae04f930cc4c034e411e1/content.htm
    For receiver adapter in our case FCC (FILE content Conversion) follow the link
    http://help.sap.com/saphelp_NW04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
    Hope answered your question.
    Mapping area: simple suggestion. Keep input and output message same structure and do one to one mapping.  In the receiver fcc adapter configure for csv structure following instruction given in the above second link
    Note: FCC adapter does not support nested structure more than 2. So in your case you can achieve using conversion agent tool. Otherwise you might have to achieve through some graphical mapping.

  • How to convert hierarchy XML to CSV format using PI/XI

    Hi All,
         I am working with SAP PI/XI for the first time and need some help file conversion of complex hierarchy XML to CSV file using PI. I have done plenty of research on SDN and could find much related to what I want to do.
    Here is the example of how my input XML would look like:
    <?xml version="1.0" encoding="UTF-8"?>
    <PartyMaster type="OrgHierarchy" name="Compass Group Owned">
        <PartyMasterHierarchy>
             <Hierarchy level="3" nodeName="Bon Appetit Sector" type="Sector" ID="A00000" refID="A00000">     
                   <Hierarchy level="4" nodeName="BA Division" type="Division" ID="AB0000" refID="AB0000" >               <Hierarchy level="5" nodeName="BA East Coast Region" type="Region" ID="ABE000" refID="ABE000">
                             <Hierarchy level="6" nodeName="Engstrom, John RVP" type="District" ID="ABE01" refID="ABE01" >
                             </Hierarchy>
                           </Hierarchy>
         </Hierarchy>
                    </Hierarchy>
                    <Hierarchy level="3" nodeName="Levy Sector" type="Sector" ID="K00000" refID="K00000".               <Hierarchy level="4" nodeName="Levy Sector Division" type="Division" ID="K90000" refID="K90000">              <Hierarchy level="5" nodeName="Levy Sector Region" type="Region" ID="K99000" refID="K99000">                   <Hierarchy level="6" nodeName="TBA Total" type="District" ID="K9901" refID="K9901">                        </Hierarchy>
              </Hierarchy>
         </Hierarchy>
                     </Hierarchy>
            </PartyMasterHierarchy>
    </PartyMaster>
    I would like to get CSV output in the format below
    *DISPLAY_NAME     DOCUMENT_DESCRIPTION      PARENT           EXTERNAL_ID     ORG_UNIT_TYPE*     
    Bon Appetit Sector     Bon Appetit Sector      constant value    A00000                       constant value
    Levy Sector          Levy Sector           constant value    K00000                 constant value
    BA Division          BA Division            A00000                 AB0000                       constant value
    Levy Sector Division         Levy Sector Division       K00000              K90000                       constant value
    BA East Coast Region     BA East Coast Region          AB0000             ABE000                        constant value
    Levy Sector Region     Levy Sector Region       K90000              K99000                        constant value
    Engstrom, John RVP     Engstrom, John RVP        ABE000               ABE01              constant value
    TBA Total                    TBA Total             K99000               K9901             constant value
    1) How do I go about this? I think I have to configure an adapter but which adapter would give me the desired result?
    2) How do I tell PI when to pick the file from and where to place it after conversion? Could this be done in adapter configuration?
    Any help will be greatly appreciated.
    Thanks.
    --Mithun

    Mithun,
    you would get lot of answers if you looking in the PI (process integration forum)... There is something calles File content coversion in XI file adapter (which can convert the xml to csv and viceversa)

  • How to convert internal table data into excel format?

    Hi all,
    I want to convert internal table data in excel format and then
    send it as email attachment in workflow.
    Please tell me how do i perform this.
    Regards,
    Arpita.

    Hi Arpita,
    Try this sample code::
    Send mail
    maildata-obj_name = 'TEST'.
    maildata-obj_descr = 'Test Subject'.
    loop at htmllines.
    mailtxt = htmllines.
    append mailtxt.
    endloop.
    mailrec-receiver = 'your receiver mail id'.
    mailrec-rec_type = 'U'.
    append mailrec.
    call function 'SO_NEW_DOCUMENT_SEND_API1'
    exporting
    document_data = maildata
    document_type = 'EXL'
    put_in_outbox = 'X'
    tables
    object_header = mailtxt
    object_content = mailtxt
    receivers = mailrec
    exceptions
    too_many_receivers = 1
    document_not_sent = 2
    document_type_not_exist = 3
    operation_no_authorization = 4
    parameter_error = 5
    x_error = 6
    enqueue_error = 7
    others = 8.
    if sy-subrc 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    endif.
    Hope it will help you.
    Regards,
    NIkita

  • How to convert from xml file to html using java code

    How to convert from xml file to html file using java code

    Get yourself Apache Xalan or Saxon or some XSLT processor
    String styleSheet = "/YourXSLTStylesheet.xsl";
    String dataSource = "/YourXMLDocument.xml";
    InputStream stylesheetSource = TransformMe.class.getResourceAsStream(styleSheet);
    InputStream dataSourceStream = TransformMe.class.getResourceAsStream(dataSource);
    OutputStream transformedOut = new FileOutputStream("filename.html");
    TransformerFactory tFactory = TransformerFactory.newInstance();
    Transformer transformer = tFactory.newTransformer(new StreamSource(stylesheetSource));
    transformer.transform(new StreamSource(dataSourceStream), new StreamResult(transformedOut));You'll also need to learn XSLT if you don't already know that. Here's a good place to start
    http://www.w3schools.com/xsl/

  • How to read from a xml file(in String format) using a java program

    hi friends
    i have a string , which is xml format. i want read the values and display it.can any one suggest how to read a xml file of string format using a javaprogram
    thanks

            final DocumentBuilder db =  DocumentBuilderFactory.newInstance().newDocumentBuilder();      
            final InputStream documentStream = new ByteArrayInputStream(documentXMLSourceString.getBytes("utf-8"));
            final Document document = db.parse(documentStream);

  • How can I create an csv/excel file using pl/sql and then sending that file

    How can I create an csv/excel file using pl/sql and then sending that file to a clients site using pl/sql?
    I know how to create the csv/excel file but I can't figure out how I would get it to the clients site.

    968776 wrote:
    How can I create an csv/excel file using pl/sql and then sending that file to a clients site using pl/sql?
    I know how to create the csv/excel file but I can't figure out how I would get it to the clients site.You are trying to do it at a wrong place..
    Whay do you want database (pl/sql) code to do these things?
    Anyhow, you may be interested in :
    {message:id=9360007}
    {message:id=9984244}

  • How can i convert oracle report in excel format using 8i

    hi,
    I want to convert oracle report in excel format using 6i reports. please give the solution with emp table.
    millons of thanks in advance.

    You'll have to use the destype DELIMITEDDATA to render your Report in CSV format. Then set the mime type to Excel. I don't know the exact syntax, so please do a search in metalink for "reports excel" for examples and more info.
    Regards,
    Martin Malmstrom

  • Does anyone know how to convert an XML file to a readable file?

    All,
    I have been using an APP called "SMS Backup & Restore" to backup my message conversations to my Laptop PC.  It works fine BUT the backup file, once in my PC, has an XML extent such as "filename.XML"
    I would like to read and/or print and/or save the text message file so does anyone know how to convert the XML file to something else so it shows all the messages without all the formatting instructions.   
    When I try to see the XML file it shows all the formatting.  If I replace the .XML with .TXT that too shows all the formatting mixed in with the text message narrative.
    When I look at the XML file in SMS Backup & Restore in the Charge phone it looks great showing all the messages just as they were on the phones display.  The problem with this is that there is no way to print or read or save the messages as they appear in the file from the phone itself.  I tried screen capture but if you have, let's say, a 28 message conversation you have to do 7 or 8 screen captures to get them all.
    If only I could convert the XML in my PC to something that is printable or savable or readable that would be the "cats meow."
    Anyone know how???
    JerryF
    PS, You might take a look at my related post.
    https://community.verizonwireless.com/message/809832#809832

    Ann154,
    You were correct again.  I deleted everything I had done to date and re-did the entire SMS backup of my 28 message conversation again and YES I was able to open it using IE-8.  It looks great and it prints great and life is good!  I am going to go make a donation.
    Thanks again for the help.  I marked this thread as answered by you.
    JerryF

  • HOW TO CONVERT A XML FILE TO HTML FILE FORMAT IN WINDOWS APPLICATION

    Hi iam a fresher iam working on a project in that i should convert the data in xml file to html file. I dont have any idea regarding this can anyone help me how to convert the xml file to a html file format. I just written the code till how to read the xml
    file. Now i stucked how to write the code for converting to html format.
    Thanks and Regards,
    Dileep.

    Hi iam a fresher iam working on a project in that i should convert the data in xml file to html file. I dont have any idea regarding this can anyone help me how to convert the xml file to a html file format. I just written the code till how to read the xml
    file. Now i stucked how to write the code for converting to html format.
    Thanks and Regards,
    Dileep.
    Hello,
    For converting xml file to html, we could refer to the way shared in the following thread which uses an XSLT stylesheet to transform the XML into another format using the
    XslTransform class.
    http://www.codeproject.com/Articles/12047/How-to-Convert-XML-Files-to-HTML
    Regards.
    Carl
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • How to convert Oracle Report Output to Excel Spread Sheet..

    Hello Sir,
    How to convert Oracle Report Output to Excel Spread Sheet..
    Thanks..

    Hello,
    Please give us more information what kind of report(s). Sample example etc.,
    Sri

  • How to convert from XML to Array ?

    how to convert from XML to Array ?
    thanks in advance

    this is a segment of the xml object:
    var myXML:XML =
    <data>
    <task>
    <taskID>2</taskID>
    <startDate>2/15/2007</startDate>
    </task>
    </data>
    i want to conver myXML into ArrayCollection: like this:
    private var expenses:Array = [
    {taskID:"1", startDate:"2/15/2007"},
    {taskID:"2", startDate:"4/15/2007"}
    how i can do it ? and tell me how to retrieve the data from
    the collection
    thanks

  • I have a MacBook Pro, I want to copy Itunes files to an SD card to play in my car, the SD Card doesn't appear in Itunes when I insert it, and I don't know how to convert the files to the correct format, can anyone help?

    I have a MacBook Pro, I want to copy Itunes files to an SD card to play in my car, the SD Card doesn't appear in Itunes when I insert it, and I don't know how to convert the files to the correct format, can anyone help?
    Thank you

    So it seems from reading the COMMAND manual that my first issue is that I used a 16GB SD card, and the manual says it will only recogize up to a 2GB SD card. I did use my MB Air's SD card slot and crated a folder and dragged the music files to it, then to the card. So I am going to get a 2GB card and try that next. Otherwise just stick with the iPOD connected. At least that is 8GB

  • Want to see xml structure in Excel format

    Hi All,
    Is there any tool by which we can see the xml structure to Excel sheet.
    Regards

    XMLSpy, can show the xml structure in Excel format
    <!--<?xml version="1.0"?>
    <?mso-application progid="Excel.Sheet"?>
    <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">
         <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
              <Created>1996-12-17T01:32:42Z</Created>
              <LastSaved>2000-11-18T06:53:49Z</LastSaved>
              <Version>11.9999</Version>
         </DocumentProperties>
         <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
              <RemovePersonalInformation/>
         </OfficeDocumentSettings>
         <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
              <WindowHeight>4530</WindowHeight>
              <WindowWidth>8505</WindowWidth>
              <WindowTopX>480</WindowTopX>
              <WindowTopY>120</WindowTopY>
              <AcceptLabelsInFormulas/>
              <ProtectStructure>False</ProtectStructure>
              <ProtectWindows>False</ProtectWindows>
         </ExcelWorkbook>
         <Styles>
              <Style ss:ID="Default" ss:Name="Normal">
                   <Alignment ss:Vertical="Bottom"/>
                   <Borders/>
                   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="12"/>
                   <Interior/>
                   <NumberFormat/>
                   <Protection/>
              </Style>
              <Style ss:ID="s21">
                   <Font ss:FontName="Arial Narrow" x:Family="Swiss" ss:Size="12"/>
                   <Interior ss:Color="#00CCFF" ss:Pattern="Solid"/>
              </Style>
              <Style ss:ID="s22">
                   <Font ss:FontName="Arial Narrow" x:Family="Swiss" ss:Size="12"/>
              </Style>
         </Styles>
         <Worksheet ss:Name="Sheet1">
              <Table ss:ExpandedColumnCount="3" ss:ExpandedRowCount="3" x:FullColumns="1" x:FullRows="1" ss:StyleID="s22" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25">
                   <Row ss:AutoFitHeight="0">
                        <Cell ss:StyleID="s21">
                             <Data ss:Type="String">COL1</Data>
                        </Cell>
                        <Cell ss:StyleID="s21">
                             <Data ss:Type="String">COL2</Data>
                        </Cell>
                        <Cell ss:StyleID="s21">
                             <Data ss:Type="String">COL3</Data>
                        </Cell>
                   </Row>
                   <Row ss:AutoFitHeight="0">
                        <Cell>
                             <Data ss:Type="String">A1</Data>
                        </Cell>
                        <Cell>
                             <Data ss:Type="String">B1</Data>
                        </Cell>
                        <Cell>
                             <Data ss:Type="String">C1</Data>
                        </Cell>
                   </Row>
                   <Row ss:AutoFitHeight="0">
                        <Cell>
                             <Data ss:Type="String">A2</Data>
                        </Cell>
                        <Cell>
                             <Data ss:Type="String">B2</Data>
                        </Cell>
                        <Cell>
                             <Data ss:Type="String">C2</Data>
                        </Cell>
                   </Row>
              </Table>
              <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
                   <Unsynced/>
                   <Print>
                        <ValidPrinterInfo/>
                        <PaperSizeIndex>9</PaperSizeIndex>
                        <HorizontalResolution>300</HorizontalResolution>
                        <VerticalResolution>300</VerticalResolution>
                   </Print>
                   <Selected/>
                   <Panes>
                        <Pane>
                             <Number>3</Number>
                             <ActiveRow>16</ActiveRow>
                             <ActiveCol>2</ActiveCol>
                        </Pane>
                   </Panes>
                   <ProtectObjects>False</ProtectObjects>
                   <ProtectScenarios>False</ProtectScenarios>
              </WorksheetOptions>
         </Worksheet>
         <Worksheet ss:Name="Sheet2">
              <Table ss:ExpandedColumnCount="0" ss:ExpandedRowCount="0" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25"/>
              <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
                   <Unsynced/>
                   <ProtectObjects>False</ProtectObjects>
                   <ProtectScenarios>False</ProtectScenarios>
              </WorksheetOptions>
         </Worksheet>
         <Worksheet ss:Name="Sheet3">
              <Table ss:ExpandedColumnCount="0" ss:ExpandedRowCount="0" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25"/>
              <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
                   <Unsynced/>
                   <ProtectObjects>False</ProtectObjects>
                   <ProtectScenarios>False</ProtectScenarios>
              </WorksheetOptions>
         </Worksheet>
    </Workbook>-->
    Edited by: Eric on Mar 3, 2010 6:59 AM
    Edited by: Eric on Mar 3, 2010 7:01 AM

  • How to convert internal table data to PDF format

    HI,
         I have an internal table data having one field with 255 chars. length.I want to send that intenal table data as attachemnt with external mail. i am thinking of converting that data into PDF format and use the FM to send the mail. How to convert internal table data to PDF format.
    Kishore

    In which format is your data in the internal table currently. Is it returned by a smartform/script or its just data fetched from some database table into an internal table. Since its obvious that the data should appear in the PDF with some Layout, you should be using smartform to format the data properly. See the Link
    Smartform to PDF to EMAIL
    This shows convertion of smartform to pdf and send it through email
    Regards,
    Abhishek

Maybe you are looking for

  • Cost component split transfer for Profit center valuation in ke27

    Dear All, We have activated multiple valuation/transfer prices. Material ledger is also activated. We want to transfer cost component split to CO-PA by ke27. We have defined separate costing keys for access to actual cost estimate for legal and profi

  • Collaboration madness

    Hello all, I am desparately seeking a solution to my collaboration madness (help save my hair!). I am producing documents that need to be reviewed by SMEs. As is standard for reviewing documentation, they will need to mark up and add comments within

  • New ESS/MSS in ABAP web dynpro??

    I heard from a somebody that the new ESS/MSS is going to be redeveloped by SAP on ABAP Web dynpro instead of java? Does anybody have info on this? or any links on articles, news etc.?

  • Low Memory Error (Computer also reporting that my hard drive is almost filled)

    Is there a diagnostic tool or something else I can do to find out why I'm getting an low memory error? I have a Compaq Presario CQ60. I have 4.0GB of RAM and a 2.0 GHZ processor.  I only have 5GB left on my hard drive. That can't be right!  The drive

  • Help me Project Deadline...:(

    Hi, I have a project on shared folder monitoring system.I have to validate the fields ,email I.Ds and folder names.... Plz help me to script the code... Project Deadline SOS.....SOS....SOS