Attachments types can be defined setting the system property mxe.doclink.doctypes.allowedFileExtensions but Maximo just checks the file extension. Implement a more strict file type scanning when you upload an attached document.
JavaDocs for Maximo 7.6
For whatever reason IBM recently decided to remove the online version of Maximo JavaDocs from their website. At the moment they are only available as zip files for Maximo 7.6 and Maximo 7.6.1.2. I think this is not really useful because it is really hard to search what you are looking for so I have […]
Sending SMS from Maximo calling an external Web service
In my last project I had to implement a customization to send SMS messages using Skebby. The service APIs are obviously based on REST and JSON so I ended up writing an automation script to integrate Maximo with the Skebby service.In the process of writing the code I have faced (and solved) some interesting issues […]
Avoiding Java classes conflicts using a_customer.xml file
Consider this scenario (which I came across). You have extended psdi.app.workorder.WO out of the box MBO class with your own cust.app.workorder.WO class to implement you own business logic for work orders. After a while you install the Maximo Scheduler extension and you soon discover that all your custom logic has gone because the WORKORDER object […]
Maximo applets and Java security
Java 6 and 7 have introduced new security features that may create some problems in Maximo/SCCD/TPAE applications that make use of Java applets. Some examples of such applications are Configuration Items, Workflow Designer and Scheduler. First of all Start Menu > Java> Configure Java > Security > Add the server host to the trusted sites […]
Read system property in a Java class
This entry is part of the Maximo Java Development series. Here is a small piece of Java code that can be used to retrieve a Maximo system property in Java using MxServer.getConfig() method. Properties configData = MXServer.getMXServer().getConfig();String prop = configData.getProperty(“mxe.adminEmail”); Replace mxe.adminEmail with your property.
How to launch Workflow
Today I want to show you all the possible ways (as far as I know) of starting a workflow in Maximo. Interactive initiate This is the most basic way of automatically start a workflow when an object is created through the user interface. This technique will not work for objects created by MIF, workflows or […]
Implementing a Smart Search feature
Using Maximo search functionality can be sometimes complex or even frustrating. Several customers have asked me if there is a simple Google-like functionality to search for all the objects that contains a specific set of words. This article describes how to implement such feature in the Work Order Tracking application. The solution described in this […]
Display a summary of an object
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: […]