Tuesday 29 May 2018

Workflow Migration From Source to Target Environment Using Migration Manager | IBM Maximo

Migration Manager migrates configuration content from one product environment to another. You typically migrate configuration content from a development environment to a test environment and then to a production environment.
After you develop and configure your applications, you can migrate the configurations to a test environment. After testing the configurations, you can migrate them to a production environment. By using Migration Manager, you can migrate iterative configuration changes in a planned and controlled manner.
To migrate the configuration content, you organize it into packages. The packages go through a series of steps that make up the migration process. Some steps occur in the originating environment, called the source environment, and some steps occur in the destination environment, called the target environment.

We will take the example of simple workflow migration for basic understanding of migration manager.

Workflow Migration:

Source Server Steps:

  • Goto > System Configuration > Migration > Migration Groups




















  • Create New Migration Group and enter Name, Description
  • Select desired Object Structures to migrate, in this case we are going to migrate a workflow, for that object structure selected here is DMWFPROCESS.

Thursday 24 May 2018

Reprocessing Interface Table Errors MEA (Maximo Enterprise Adapter for Oracle Applications) | IBM Maximo

When an error occurs in an Maximo outbound transaction, the adapter stops processing the transaction and updates the interface table status columns with information about the error. There is no user interface for correcting errors in the Maximo Asset Management interface tables, so you must update the record directly with a SQL tool.

Interface Table Status:
Every outbound interface table contains the following columns, which contain information about the status of the transaction:
OA_IFACESTATUS: The status of the transaction. It has three types:

1. DONE: The transaction was successful.
2. WARNING: The data was transferred but a problem was encountered.
3. ERROR: Due to a system or data error, the data transfer did not occur. Check OA_IFACEMESSAGE for error messages.

OA_IFACETIMESTAMP: The date and time the transaction completed or failed.

OA_IFACEMESSAGE: A general message about errors.

The triggers, which reside on the outbound interface tables, are of trigger type before insert or update. Therefore, directly updating the interface table transactions ensures that the transaction is processed.
Triggers do not exist for the inbound enterprise services. These processes are asynchronous and the integration framework retrieves the records.
The following steps describe how to update an outbound transaction with an error in the interface table, then send the transaction to the Oracle open interface tables again.

Friday 4 May 2018

Attached Docs Edit Restriction When Record Is Not In Workflow Assignment Using Automation Script | IBM Maximo

Its a continuation from my last post in which a record is not in certain user's assignment, then it cannot be edited. Only assigned user can edit that record.
But there is one problem, the users cannot edit PR record but they can edit attached docs associated with corresponding record and it doesn't apply on attached documents. Because technically, the attach docs object is different.
We have implemented this requirement with different object event condition (using doclinks, pr and wfassignment objects) using automation script on Purchase Requisitions Application.

Object Launch Point :  DOCLINKS

Script : Jython

Object Event Condition: 

(select count(ownerid) from wfassignment where ownertable='PR' and assignstatus='ACTIVE'
AND ownerid in (select prid from pr where prid =:ownerid) )>0
and
(select count(ownerid) from wfassignment where ownertable='PR' and assignstatus='ACTIVE'
and assigncode IN (:&USERNAME&) AND ownerid in (select prid from pr where prid =:ownerid) )=0

Events: Save, Add, Update, Delete, Before Save

Thursday 3 May 2018

Deny Users From Editing Application Record if It's Not In Their Workflow Assignment Using Automation Script | IBM Maximo

One of the requirements we get that in a active workflow process, if a record is not in certain user's assignment, then it cannot be edited. Only assigned user can edit that record. We have implemented this requirement using automation script on Purchase Requisitions Application.

Object Launch Point :  PR

Script : Jython

Object Event Condition: 
(select count (ownerid) from wfassignment where ownertable='PR' and assignstatus='ACTIVE'
AND ownerid in (select prid from pr  where prnum=:prnum))>0
and
(select count(ownerid) from wfassignment where ownertable='PR' and assignstatus='ACTIVE'
and assigncode in (:&USERNAME&) and ownerid in (select prid from pr  where prnum=:prnum))=0

Events: Save, Add, Update, Before Save

Wednesday 2 May 2018

Alternative way of generating reports in IBM Maximo using JavaScript | Maximo

Today I found a nice article in which the we can generate simple reports directly from Maximo using JS in you own provided excel template.

No doubt JavaScript is in the top of the list these days. After Google's framework v8; now people use the old JavaScript as back-end called Node.js instead of just front-end 'JavaScript'.

Alternative way of generating reports in IBM Maximo using JavaScript