Flat CSV file export with Maximo Integration Framework

This entry is part of the Maximo Integration Framework series.

In this tutorial I will show how to configure the Maximo Integration Framework in order to export data from Maximo into a Comma Separated Values (CSV) text file.

To achieve such goal we must configure the following chain:

  1. Object Structure
  2. Publish Service
  3. External System

For more details about how the MIF works look at the Maximo Integration Framework overview.

If this is the first time you are using the Maximo Integration Framework, you should check that your MIF is properly set up before going ahead.

Object Structure

Open Integration > Object Structure application and create a new entry.

  • Object Structure: D-PERSON
  • Description: Demo Person Object Structure
  • Consumed By: INTEGRATION
  • Support Flat Structure: True
  • Source Objects: PERSON

    Remove unwanted attributes from the Object Structure. This will simplify the structure of the output file and will greatly improve performances of the import/export process.
    Select the Include/Exclude Fields menu and check all the Exclude check-boxes except the following:


    Publish Channel

    Go to Integration > Publish Channels application and create the following entry.

    • Publish Channel: D-PERSON
    • Description:Demo Publish Channel for Person data
    • Operation: Publish
    • Object Structure: D-PERSON

    External System

    Go to Integration > External Systems application and create the following entry.

    • System: D-EXTSYS
    • Description: Demo External System
    • End Point: MXFLATFILE
    • Enabled: True
    • Outbound Sequential Queue: jms/maximo/int/queues/sqout
    • Inbound Sequential Queue: jms/maximo/int/queues/sqin
    • Inbound Continuous Queue: jms/maximo/int/queues/cqin

    Go in the Publish Channel tab and insert the D-PERSON channel created previously.

    Don’t forget to enable the Publish Channel and to save the External System.

    Export data

    To export the data stored in the Maximo PERSON table just click on the Data Export button. A dialog box will be displayed allowing you to enter an SQL where clause to filter to exported rows.
    For simplicity just put a small number in the Export Count field to limit the number of exported rows.

    Click on the OK button and your CSV file will be exported in a directory named flatfiles under the path specified in mxe.int.globaldir system property. In my environment the directory is D:\MIF\flatfiles. Here is how the output file should look like.

    Tom Revis,Tom,Revis,REVIS
    Fred Stanley,Frederick,Stanley,STANLEY
    Keith Mills,Keith,Mills,MILLS
    Mark Jacoby,Mark,Jacoby,JACOBY
    Bob Pillance,Bob,Pilla,BPILLA

    If the file does not appear in one or two minutes please verify your Maximo Integration Framework configuration.

    Final considerations

    Now you can include more attributes to your objects using the Include/Exclude Fields action of the Object Structure application or you can create your own object structure.
    You may also try to import data in Maximo database or look at other articles about Maximo Integration Framework.

    This is just the beginning of your journey in the MIF. Keep in mind that MIF is a powerful tool that allows to do many things.
    Just to play a little bit let’s do one last trick.
    Go to Publish Channels application, open the D-PERSON object and select Enable Event Listener.
    Now go in Administration > Resources > People and create a new person record. If you look in your MIF directory on the Maximo server and you should see that a new CSV file has been automatically created with the new person data.

    Flat CSV file export with Maximo Integration Framework

    14 thoughts on “Flat CSV file export with Maximo Integration Framework

    1. Bruno, is there any way to control the file name convention output from MIF? I noticed it outputs the publish channel name, with a unique ID and a .dat extension, but I don't see a really obvious way to do this.

    2. Hi Bruno, When I followed the above steps I do get a file in global directory, but a xml file and when I see in message tracking I saw the message in received status . What might be the reason for this?
      I have tried changing the endpoint to my custom flat file but still no help.
      Please help :/

    3. Hi Bruno, first of all I appreciate all your useful Maximo articles they are very helpful.
      I have an inquiry, when I create an Object Structure and set the include/exclude fields everything is working well. However, if I later added attributes to this Object they are automatically included in the Object Structure Include/Exclude fields. Can I control this behavior so that any new fields added are not automatically included in the Object? (set the default to be excluded)?

    4. Hi Bruno,thank you for informative tutorials! I am now facing a problem.After I output data from publish channels,there is nothing been created in the root directory.

      I pretty sure I have configured the system properties as guide,is there any part I might done wrong? Thanks!

    5. hi Bruno

      i would like to create interface table in Maximo and client wants to call stored procedures and views in interface of oracle

      and how to create interface table for object purchase orders

    6. Hi Bruno,

      I'm getting a nullBMXAA4157E error when exporting from PO table. Where should I start searching for the error?

      In the data, the object structure, the publish channel, the end point or the external system?

      Kind regards,


    7. Hi Bruno,
      I have followed all the steps and clicked on Data Export but I didn't find any flatfile in the mxe.int.globaldir path. I was wondering if you could help me in solving this issue.

    8. It depend on on which host you have MIF configured . IF you have multiple server environment check it WAS console of what ever use for application server.

    9. Hi Bruno,

      I have a requirement where i have to export flat file in an external server and not Maximo directory. Suppose i have to export it to sharepoint. Is it possible? Could you give me pointers how it can be achieved.

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    Scroll to top