Maximo Tips & Tricks
Import data with Maximo Integration Framework (MIF)
The new Maximo Integration Framework, formerly known as Maximo Enterprise Adapter (MEA), makes it easy to import data. I will show you how you can import data into Maximo from an interface table.
First, if you would like email notifications on the status of your cron task running your import, you must set up that in your system properties. You can do that within Maximo. Go to System Configuration -> Platform Configuration -> System Properties and find and set the values for these properties:
mxe.int.admintoemail mxe.int.adminfromemail mail.smtp.host
Next, verify that the queues and cron tasks are enabled. Go to System Configuration -> Platform Configuration -> Cron Task Setup and click on JMSQSEQCONSUMER. Under Cron Task Instances, enable both SEQQIN and SEQQOUT instances by checking the Active checkbox. Save. Click on the List tab and click on IFACETABLECONSUMER. Under Cron Task Instances, it should be empty, click on New Row. Name it ‘IFACETABCR’, set the schedule to run every 30 seconds. You can make it run at whatever interval you want, but for testing purposes we will set it to run every 30 seconds. Don’t forget to activate it and save it.
We will be importing Assets in this tutorial so go to Integration -> Object Structures and search for the structure name MXASSET. Click on it and verify that the Support Flat Structure is enabled. Also verify that no conflicts exist because of duplicate by selecting ‘Add/Modify Alias’ from Select Action dropdown. Save.
The next step is to define an interface table. This is the table that will hold all of our import data that will eventually end up in Maximo. Go to Integration -> Enterprise Services, search for MXASSETInterface and specify the Interface table name. It can be anything you want. This table will be created in the database. Let’s name it IFACEASSET. Save.
Now we need to create and define a new external system. Go to Integration -> External Systems and create a new system. You could use the existing EXTSYS1 but that end point is set up to be used with XML files. Since we will be using an interface table, we should create a new one. Name the system EXTIMPORT. Set the end point to MXIFACETABLE. Set the queues as follows:
Don’t forget to enable it. Now we need to associate the enterprise service, which we chose in the previous step, to this system. Click on the Enterprise Services tab and click on Select Service. Check the box next to MXASSETInterface and hit OK. A new row will be added and make sure that it is Enabled. Save it. After associating the Enterprise Service to the External System, you need to create the interface table in the database. To do that, click on Select Action -> Create Interface Tables. Select the interface and click on Create.
Now the setup is complete.
The next step is to insert data into the interface table which will be imported into Maximo using all of Maximo’s business rules. Use a database query tool and run this sql statement:
INSERT INTO IFACEASSET (assetnum,as_description,as_location,as_itemsetid, serialnum,as_orgid,as_siteid,transid,transseq, purchaseprice,as_status,as_description_ld,failurecode, priority,vendor,as_manufacturer,parent) VALUES('1001','AHU - Air Handling Unit 1','Alumni Hall',NULL, NULL,'MAIN','AUSTIN','1','1','0','OPERATING',NULL,NULL,NULL, NULL,NULL,NULL);
Next run this next insert statement into the MXIN_INTER_TRANS table:
INSERT INTO MXIN_INTER_TRANS (TRANSID,EXTSYSNAME,IFACENAME) VALUES (1,'EXTIMPORT','MXASSETInterface');
Now, your cron task is set to run every 30 seconds and when it does, it should pick up this entry and run the import. You can verify the successful import in the Assets module. In this insert statement, the first value you inserted is a TRANSID. This ID is the same TRANSID found in the interface table. You can have multiple records in the interface table with different TRANSID and a sequential TRANSSEQ value. So the 1 represents the record set that will be imported into Maximo.
Tags: Maximo 7, Integration Framework, MIF







I have uncommented the MEA MDB comments in the ejb-jar.xml.
Now I get the error:
SRVE0255E: A WebGroup/Virtual Host to handle /maximo has not been defined.
Are there any other settings I should change to get the continuous queue working?
Thanks,
Radhika.
Hi,
Could you tell me if I need a cron task setup for continuous queue?
What are the parameters?
Thanks,
Radhika.
This line to insert into IFACEASSET should be
NULL,’MAIN’,'AUSTIN’,1,1,0,’OPERATING’,NULL,NULL,NULL,
Instead of
NULL,’MAIN’,'AUSTIN’,'1′,’1′,’0′,’OPERATING’,NULL,NULL,NULL,
These are type mismatches
Hi,
I have to made integration using interface table but their is somthing missing
- i hav to make integration for company master table with MS ACCESS
- I have created adatbase .mdb
- i have added an ODBC DSN for MS ACCESS for the database i have created
- the create the object structure that support flat file
- the create the end point with the following configuration
handler IFACTABLE
Driver sun.jdbc.odbc.jdbcodbcdriver
URL jdbc:odbc:
- then create publish channel
- then the external system and create the interface table from it
- the activate the cron task and put to it the required parameters
*** every thing is running well that when i add record in company master it transferred to the interface table thet i have created, but i want data that have been transferred to the interface table to be transferred to the MS ACCESS database that i have created that doesn’t happen till now ***
if any one can support me i apprciate his effort
thanks and best regards
how we can import data through xml file. please provide sample xml file if possible
i saw screencast for xml file import
thank you
Hi,
I followed the procedure for the loading asset. I was not able to insert records in Asset table. Can you please interpret this log?
24 Feb 2010 21:03:10:615 [DEBUG] schemauseinclude==true
24 Feb 2010 21:03:10:615 [DEBUG] schemauseinclude==true
24 Feb 2010 21:03:10:616 [DEBUG] 1 openTagsList size 0
24 Feb 2010 21:03:10:616 [DEBUG] 1 openTagsList size 0
24 Feb 2010 21:03:10:616 [DEBUG] ASSET closing open tags for parent count===0
24 Feb 2010 21:03:10:616 [DEBUG] ASSET closing open tags for parent count===0
24 Feb 2010 21:03:10:616 [DEBUG] ASSETMETER level doesnt exist 1
24 Feb 2010 21:03:10:616 [DEBUG] ASSETMETER level doesnt exist 1
24 Feb 2010 21:03:10:616 [DEBUG] ASSETUSERCUST level doesnt exist 1
24 Feb 2010 21:03:10:616 [DEBUG] ASSETUSERCUST level doesnt exist 1
24 Feb 2010 21:03:10:617 [DEBUG] ASSETSPEC level doesnt exist 1
24 Feb 2010 21:03:10:617 [DEBUG] ASSETSPEC level doesnt exist 1
Thanks
It is saying the the object structure is missing an ASSETSPEC object
Is this means that I am missing values to the required columns of ASSETMETER,ASSETUSERCUST and ASSETSPEC?
Is Maximo 7 produces too MXINTSQINFILE000000.DAT in the jmsstore, so I can delete this file to clear the queue again?
Thanks very much
Yes and yes.
Thanks for the reply.
I tried to search the MXINTSQINFILE000000.DAT file in /opt/IBM/WebSphere/AppServer in Linux. Where I can find this file? Or it has a different filename. In Maximo6/BEA for example, I can see the DAT file in C:\bea\jmsstore
how can i import our lockout/tagout information in planning module and what is the exact procedure to get the information in these two subfield 1.Outbound Definition Class and 2.Inbound Processing Class in object strucure.
help me out to collect that info.
10q in adv
You can create your own object structure to do that and just leave the outbound and inbound processing class fields empty.
I followed your instructions and loaded the assets I had in my queue, but the status remained ‘NOT READY’ and not ‘OPERATING’ as I indicated like you said in the MXASSET_IFACE. Any ideas?
Thanks,
If the assets are already imported into the database, you can try this