IBM Support

How create the Object Structure of Job Plan

Technical Blog Post


How create the Object Structure of Job Plan


Maximo Integration Framework (MIF) provides many Object Structures which have been tested.  Many have processing classes, especially inbound processing classes  which are required to make sure the Object Structure functions similarly to the Maximo User Interface (UI).


Currently, there is no Object Structure created for Job Plans.  You can create one, but some of the functionality of the UI Job Plans will not work without a processing class or automation script.  One known issue is that for inbound transactions updates will not work the same was as the User Interface. Using this Object Structure you will be able to update a Job Plan with the status ACTIVE. This is incorrect. The framework should block this action or create a revision for the Job plan. To do this requires this new object structure need an custom class or automation script to handle with this scenario.


Many people will create this object as the example below:




This will work for most operations. Like add new Job Plan, update, revise, etc. But there is an important scenario where this Object will not work, the operation of change status.


If you want to change the status of a revised Job Plan, for example, using this Object you will have this result:




As you can see both Job Plans are on the status ACTIVE, this is not right. The revision 0 should have the status REVISED.


Now I am going to show you what is wrong on that Object Structure.

The first step you need to set the Inbound Processing Class: psdi.iface.mic.StatefulMicSetIn

This class is responsible to process the operation of change status.




The second step you need to include the non-persistent field STATUSIFACE.

Click on Select Action=> Exclude/Include Fields. Click on the tab Non-Persistent Fields, now check the field STATUSIFACE.





Do not forget to send the field STATUSIFACE with the value 1 when you are going to change the status of Job Plan.

Well done, you have an Object Structure for all scenarios now. Look the result:





This is the correct result.

Stay tuned for more.



[{"Business Unit":{"code":"BU055","label":"Cognitive Applications"},"Product":{"code":"SSLKT6","label":"Maximo Asset Management"},"Component":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"","Edition":""}]