- Import data with Maximo Integration Framework (MIF)
- Import/Export data with MxLoader by Bruno Portaluri
- Import labor codes with Maximo Integration Framework
- Import users security groups with MIF
- Import Inventory Records using Maximo Integration Framework (MIF)
- Exporting data to XML with MIF event listener for any changes on an object automatically
- Import asset classification hierarchies and classification attributes with MIF
- Import PM’s and PM sequences with Maximo Integration Framework (MIF)
- Import locations with Maximo Integration Framework
- How to import failure codes with the Maximo Integration Framework (MIF)
- Create a Person Group object structure and web services with MIF
- Screencast: Import data with XML flat files
- Export data to XML files with MIF
- Screencast: Import users and passwords with Maximo Integration Framework
- Import assets and asset specifications with MIF
In this tutorial, I will show you how to setup object structures and enterprise services to import PM’s that use PM sequencing. PM sequencing or job plan sequencing is when you want to use a different job plan on one PM when the it is generated into a workorder. The topic of job plan sequencing is complicated and won’t be covered in this post but you can view this YouTube video of an explanation of job plan sequencing.
So lets get started. This post also comes with a sample excel document to download.
So the first thing we want to do is to create a new object structure. There is no existing object structure for PM’s so we will create a new one. Click Go To -> Integration -> Object Structure. Create a new one called MXPM. Set the “Consumed By” to INTEGRATION and check the “Support Flat Structure?” option if you are going to use interface tables. In our case, we will use interface tables so go ahead and check it.
Next, click new row and add the PM object. This is the object that we will use to import just the PM data such as PMNUM, DESCRIPTION, ASSETNUM, etc. Click new row again and add the PMSEQUENCE object. This is the object we will use to import the job plan sequence numbers. Make sure you also set the relationship to PMSEQUENCE as well. Once you have these two objects, save the record. The “Alias Conflict?” check box should now be checked. This means that we have to change the alias names of some columns so, click Select Action -> Add/Modify Alias. Click on the PMSEQUENCE row and you should see 4 rows and 2 of them are duplicates. Change the JPNUM field alias to be “PMS_JPNUM” and the ORGID field alias to be “PMS_ORGID”. Click OK and save.
Next, we need to create a new Enterprise Service. Go To -> Integration -> Enterprise Services and create a new one and name it “MXPMInterface”. Set the operation to “Sync” and Object Structure to the one you created above, “MXPM”. Set the interface table field to “IFACEPM”. You can enable message tracking on this if you want as well.
Next, we have to add this to an external system. I have a system called EXTIMPORT so I just add the enterprise service to this and enabled it. Then you go to Select Action -> Create Interface Tables to create the IFACEPM table we set above.
Now that we have our setup complete, we need to have the data to import. There are two phases to this import. The first phase is to import data into the PM object only and then the second phase is to associate the job plan sequencing to the PM. We could probably do all this in one pass, but it gets more complicated than it needs to be and much easier to do it in phases. So to import PM data is pretty straight forward. All you need is to supply the necessary data for the PM. These are the columns I used to import data:
PMNUM, Description, Assetnum, ChangeBy, ChangeDate, DownTime, Frequency, FreqUnit, GLAccount, HasChildren, Interruptible, JPNUM, JPSEQINUSE, Location, ORGID, SITEID, Parent, PMCounter, Priority, Status, UseFrequency, UseTargetDate, WorkType, WOStatus, and of course the TRANSID and TRANSSEQ columns.
The most important field in this set is the JPSEQINUSE field. If your PM is gonna use the job plan sequencing, which we will import in the second phase, then you need to make sure this field is set to 1 in order for use to import the job plan sequences or else the import will fail.
Once you have your data in the interface table for the PM’s, you can go ahead and import them. If you don’t know how to import from interface tables, you can look at this post. Once you have completed the import for PM’s, you can now go into the second phase of the import process.
To import the job plan sequences, it’s also as simple as the PM’s, but these are the fields that you will need to populate in the interface table in order for the import to work.
PMNUM, ORGID, SITEID, Interval, PMS_JPNUM, PMS_ORGID, and TRANSID and TRANSEQ
These are the only fields you need to import the job plan sequences on the PM record. I have supplied an example excel document with two tabs, one for PM’s and one fore PM sequencing for the job plans.
[wp_eStore_free_download_ajax:product_id:6:end]
Love
the website.. You mention above that you will not do the load as one phase
(file) as “We could probably do all this in one pass, but it gets more
complicated than it needs to be and much easier to do it in phases. ” Any
chance you can do a posting to talk to this topic? Better yet can you add some
discussions to the topic of doing a single load when letting Maximo Autonumber
values and how I am able to make the link in children rows of a single dataset
that Maximo is Autonumbering? For example JOBPLAN & JOBTASK & JOBLABOR
in one object structure that Maximo Auto Numbers the JPNUM and how I make the
JT & JL link in the same file to an auto jpnum? I find nothing on the
internet talking to this topic and it has to be doable with Inbound
Restrictions and Advanced Configuration settings but I cannot figure it out.
Figure I ask it you can?
Hi Chon, I have purchased this post still I am unable to see this post in full.
Please take appropriate action as its been 5 days I have been waiting.
Thanks.
Can I use PMSEASONS instead PMSEQUENCE? Or PMSEQUENCE is necessary to keep in object structure?
When configuring Object Structure, is it necessary to fill Outbound Definition Class and Inbound Processing Class fields? If yes, which values shall shall I insert?
Just a quick note, with Maximo 7.5, if you have versioning on for Job Plans, you may also need to add the PLUSCJPREVNUM_NP non-persistent field to include the appropriate revision number for the Job Plan. I believe you’re OK if your job plan is rev 0, but after that, I think you need to include it.
Thanks CHON for this tutorial, it was so helpful for me but after uploading pm and pmsequence when i try to generate workorders it did nothing at all
after tracing this issue i found out that you should add pm ancestor for the uploaded records.
it can be done by adding pmancestor to pm object structure and then upload it in separate excel sheet after uploading pms , or from back end by creating pmancestor for all pms with hierarchylevel equal to zero.