Steps in creating CSV file from XML file using PI 7.0

Hi Experts,

I have a scenario in which I need to use PI7.0 to pick up XML file from source (ECC6.0) convert it to CSV and send it to CLM system. I already found information on SDN and got some help from experts here on what the adapter configuration should be for sender and receiver. I will be using file adapter and I am new to PI/XI and trying to understand the steps.

1) I created new "product" and "software component version" in SLD. When I tried to import it in IR9Integration Repository) using TOOLS>Transfer From System Landscape Directory>Import software component version, I am getting the error below:

Unable to read software component versions from SLD <server>:<port>

I found lot of articles on this on SDN and I had BASIS try everything but still having same problem. I am still working with BASIS on this but if anyone has any more ideas, please share with me.

2) I have a program in R3 that creates input XML file in a specific directory and this XML has very complex structure. I converted complex XML to simpler XML that I need for CSV output using MAPFORCE which generaes XSLT on the background.

I read quiet a bit on PI/XI but still trying to understand how I can acheive the result.

a) Can I mention somewhere in PI to automatically pick up the file created from SAP from a specific directory at certain intervals? Should I always have PI running for this to happen?

b) I created XSLT file to convert complex XML to simpler XML so that I can use "File Content Conversion" on the recceiver side to create output CSV file. Where would my XSLT file come into the picture i.e. where can I tell PI to convert one XML to another XML using XSLT that I created? I want to then use this converted simpler XML as input.

c) Can I mention somewhere in PI to ftp the converted CSV file so that CLM system can receive it?

I might be asking dumb questions but for this whole file conversion to happen, should I always run something in PI or is there any service that could be run in the background?

I would really appreciate any of your feedback.


Helpful Answer