Maximo Open Forum

 Exporting or publishing asset data in CSV format to FTP site. It seems I can only export or publish in XML format

  • Assets
  • Integrations
Stephen Santoro's profile image
Stephen Santoro posted 09-10-2025 12:31

I have a requirement to export or publish certain assets on a frequent basis to an FTP site in CSV format. It seems that I can only publish data in an XML format and conversion is very difficult. How can I publish to an FTP site in CSV format

Steven Shull's profile image
Steven Shull

Are you using publish channels to generate the file? If so, make sure you set the handler to MXFLATFILE (or something with FLATFILE as the handler) and make sure that on the object structure you have enabled "Support Flat Structure" and fixed any alias conflicts using the Add/Modify Alias action. 

Then I would migrate the files to your FTP/SFTP site. 

Greg Tsarev's profile image
Greg Tsarev

In MAS there is a new handler for SFTP which allows you to upload files to an FTP/SFTP location. However, publishing data in a csv format using the FLATFILE handler as Steven suggested, only allows it to be saved to a local or network folder. Publishing in CSV and sending the result to an SFTP location will require automation scripting, I believe, in order to "intercept" the csv file and feed it to an SFTP end point.

Stephen Santoro's profile image
Stephen Santoro

Thanks for the answers. My teammate sent a request to IBM and they responded indicating if the system is NO-Prem you will need to create storage area to receive the file using a flat file endpoint. Any suggestions on a script that could convert XML to Flat file or intercept the flat file save and forward to FTP site via handler?

Steven Shull's profile image
Steven Shull

If you wanted to create your own endpoint handler, you can: IBM Maximo Autoscripting Guide – Endpoint script

I do everything I can to avoid flat files (using webservices whenever possible) but if avoiding flat files wasn't possible, I would write to a UNC share (in 7.6) or a PVC (in MAS) and then write a process to send the files via SFTP/FTP in the background. As Greg mentions, there is a handler for SFTP in newer versions which you could utilize if you want to keep all the logic in Maximo. Or you could utilize a lot of other tooling to read & process the directory on a scheduled basis.