November 12, 2014

Maximo Tranining presentations

Here are some nice presentations that I use during basic education sessions for new Maximo users.

I tried to use a pretty template and a common style across all of them.

Feedback is welcome!

November 6, 2014

Maximo is the leader Enterprise Asset Management Software

Gartner has recently published its Magic Quadrant for Energy and Utilities Enterprise Asset Management Software and guess what?
IBM Maximo Asset Management is positioned it the 'Magic' corner!

Read the full report here.

October 30, 2014

Preventive Maintenance (PM) automatic work order generation

You probably know that Preventive Maintenance module in Maximo allows to schedule periodical maintenance activities in order to keep your assets running efficiently.
In other words you can use the  Preventive Maintenance to schedule the automatic generation of work orders.

Work orders can be generated manually using the 'Generate Work Orders' action in the Preventive Maintenance application. A dialog will be displayed allowing to set the number of days in the future for which the work orders must be created.

The work order generation can be easily automated using the PMWoGenCronTask cron task.
Once the cron task schedule is set you can specify the PM generation rules for each site. Open the Organization application, pick your organization and select the 'PM Options' action from the menu.
The following dialog will be displayed allowing to set the generation option for each site.

Processing all the PM records each day to generate few work orders is not the best option. Almost all the processed records will generate a warning like this:
BMXAA3191E - PM XXXXX is not due yet, or it does not fall within the active season.

A good practice is to restrict as much as possible the PM records processed using the where clause. For example the following where clause selects only the active PM records that will generate a work order in the next month.

status='ACTIVE' and
nextdate - NVL(leadtime,0) - 30 <= SYSDATE

This is important to lower PM generation workload and to avoid a long list of warning messages in the logs.


Using Preventive Maintenance (PM) Records to Create Work Orders
Executing PM Wogen Crontask by Site

October 29, 2014

How to display a domain description in an application

Some fields in Maximo are linked to a domain that allows to set its value from a predefined set of values. In some cases however, when the value does not provide enough information, you may wish to also display the description of the domain value that you have chosen.

For example lets consider the STATUS field of the WORKORDER object.
By default Maximo will not show the description associated to the work order status.

Here is how to display the work order status description in the Work Order Tracking application.

Create a relationship to the domain table

Identify the domain name. Open Database Configuration application and look at what domain is set for the specific attribute you are looking for.
For the WORKORDER.STATUS attribute the domain is WOSTATUS.
Now open the WOSTATUS domain and take note of where the description is stored (press Alt+F1).

Now you must define a relationship from the WORKORDER table to the WOSTATUS domain. In our example it is located in SYNONYMDOMAIN table. In other situation the domain table can be ALNDOMAIN or NUMERICDOMAIN.
Open Database Configuration application and define the following relationship for the WORKORDER object:
  • Relationship: WOSTATUSDESC
  • Child Object: SYNONYMDOMAIN 
  • Where Clause: value=:STATUS and domainid='WOSTATUS'

Save and apply configuration changes if needed.

Display the description in the application

Now you must use Application Designer to add a new multipart textbox to your screen to display the domain description close to the field value.

In our example, open the WOTRACK application add a new 'Multipart Textbox' close to the 'Status' field. Set the following properties:
  • Attribute: STATUS
  • Attribute for Part 2: WOSTATUSDESC.DESCRIPTION
  • Input Mode for Part 2: Readonly
  • Copy other properties from the old field if needed

Test the modified application and delete the old field when the the new one is working fine.