NOTE: This techniques requires Java programming. A similar article describes how to achieve the same results with scripting. One of the customer that I’m working with is heavily relying on work logs. Unfortunately, the work logs are displayed in a standard table so there is no way of quickly displaying all the logs entered by […]
How to implement stateful MBOs
This entry is part of the Maximo Java Development series. Many objects in Maximo has a STATUS attribute that can be changed using the status icon or the change status menu option. The STATUS attribute is always associated with a synonym domain that has the valid statuses for the object. Examples of these domains are: […]
MBOs attribute current, previous, initial values
When implementing business logic in Java code it may be useful to compare the value of an attribute to it’s previous or initial value.This is particularly useful when overriding MboValueAdapter.action() method to validate the new value of an attribute as soon as it changes. Look at how the three values are retrieved in the following […]
Reading and updating Mbo’s attributes
This entry is part of the Maximo Java Development series. In this post I have explained how to query and fetch MBOs from the database. In this small article I will show how to get and set the attributes of an Mbo. How to read attributes To read the attributes of an Mbo you can […]
Quering and fetching MBOs
This entry is part of the Maximo Java Development series. To query a Maximo table using Java you need to perform the following steps: Get a reference to the MboSet. Specify a where clause. Loop through the MboSet and fetch Mbos. The following example shows how to retrieve all the assets located in BEDFORD site. […]
How to check for null values
This entry is part of the Maximo Java Development series. A very common doubt when extending MBOs is what value returns the Mbo.getString() method when the target field has a null value. The answer is: It returns an empty string “”.Thus to check if the DESCRIPTION of an Mbo is empty or null you can […]
Navigating object relationship in MBO code
This entry is part of the Maximo Java Development series. When you are in an Mbo class or you already have a reference to an Mbo object is it possible to retrieve the related records using Maximo object relationships as defined in the Database Configuration application.For example the ASSET object has a relationship called ACTIVEASSETMETER to the […]
What Mbo/MboSet/MboValueAdapter method should I override?
This entry is part of the Maximo Java Development series. One of the biggest issues when implementing Java customizations in the Maximo Business Objects layer is to know what is the best method to override to achieve a specific goal.Here I have listed the most common usages of the the main methods in Mbo, MboSet and […]
MBO Performance Tip N.8 – If there is no other way… use JDBC
This entry is part of the Java MBO performance optimization golden rules series. Sometimes you have to perform some complex logic or you have to join several tables to retrieve a piece of data. In other cases there is a piece of code where performance is critical. In such cases it may be hard to […]
MBO Performance Tip N.6 – Free resources as soon as possible
This entry is part of the Java MBO performance optimization golden rules series. It is important to know the difference between close(), cleanup(), and clear() methods and use them to free up resources as soon as possible. close(): Close the cursor, release the database resources (result set), SQL statement, and connection key. Does not release […]