Tracking Changes in Automation Scripts Using Audit Tables in Maximo

Phil Runion
March 14, 2025

In IBM Maximo, audit tables can be incredibly useful for tracking changes to records in the system, such as when data is created, modified, or deleted. These audit tables are typically used for tracking changes for security, compliance, or troubleshooting purposes. One application that audit tables have been a life saver is against automation scripts. By using audit tables against automation scripts, administrators can easily see recent changes and revert code when necessary.

Enable Audit Tables in Maximo

Before you can track changes, auditing must be enabled in Maximo. This can be done through the Database Configuration application. Note that this does required a database configuration.

  • Go to System Configuration > Platform Configuration > Database Configuration
  • Select the Object that you want to enable audit tables for
  • On the Object tab, at the bottom of the screen, enable audit table for the object
  • Adjust the audit table name if required, but the default values tend to work well
  • On the Attribute tab, enable auditing on any attributes that you want to track
  • Perform a database configuration

Viewing the Audit Data

To view the audit changes, there are a few approaches that can be used. In general, you pull and display audit data just like any other Object in Maximo. The easiest way to view the data is via the database. This works great for occasional use by an administrator and is our best bet for automation script data. For other objects, a report, customs tab in a related application, or even a dedicated application would make viewing the data with Maximo easier.

When looking at the data, most columns on the source object will not be audited and therefore will be null in the audit table. There will also be some audit table specific attributes. These attributes record the user, type of update, and timestamp of the change. In the example below, we can see the insert (I) of an automation script, updates (U) over time, and the deletion (D) of the script. The source column was audited in this example so we can also extract the code from each of the changes for further analysis.

select autoscript

              ,active

              ,source

              ,eauditusername

              ,eaudittype

              ,eaudittimestamp

from a_autoscript

where autoscript='LABTRANS.APPVALIDATE'

order by eaudittimestamp desc

Adding a Custom Tab with a History View

You can add a custom tab in an existing Maximo application to display the audit history for a particular record. For example, you might want to show a "History" tab for automation script to show the same data that the previous example showed via the database.

  • In Database Configuration, create a relationship from the source object to the audit table Example: autoscript to a_autoscript with a where clause of autoscript=:autoscript
  • In Application Designer, navigate to the application where you want to add the audit history
  • Create a new Tab or Related Records section.
  • Create a new Table View that fetches data from the audit table via the relationship created earlier
  • Configure the fields you want to show, such as the source, change timestamp, user, and action type like in the SQL query
  • Ensure that the new view/table is added to the UI with proper sorting and filtering options for the user

Performance Considerations

Enabling audit tables in Maximo results in additional records being written to the audit tables, which can slightly slow down operations on the audited objects. This is because both the main object and the corresponding audit table must be updated simultaneously. As a result, you may notice delays in the user interface, and over time, the database size will increase. Based on my experience working with numerous Maximo databases, it's common to find that audit tables often have the highest record counts of any tables in the system. Displaying audit data within the UI can further impact performance, particularly when querying large datasets. While this may not be a concern in scenarios like automation scripts, enabling auditing on high-volume objects like work orders could present challenges. To address these performance concerns, I recommend only auditing high-value columns, such as the automation script source column. If you need to audit larger objects or make audit data readily accessible in Maximo, it’s also important to consider adding indexes to support the performance of those interfaces.

Share this post
Phil Runion
March 14, 2025
IBM Maximo Tips & Tricks

More Blogs

Maximo 7.6 Support: Your Top Questions Answered

Maximo 7.6 Support: Your Top Questions Answered

The hottest topic the Maven and Projetech teams continue to be asked about is Maximo 7.6 Support. To help keep everyone up to date, we’ve compiled our most frequently asked questions and answers on this topic below.
Read post
Tracking Changes in Automation Scripts Using Audit Tables in Maximo

Tracking Changes in Automation Scripts Using Audit Tables in Maximo

In IBM Maximo, audit tables can be incredibly useful for tracking changes to records in the system, such as when data is created, modified, or deleted. These audit tables are typically used for tracking changes for security, compliance, or troubleshooting purposes. One application that audit tables have been a life saver is against automation scripts. By using audit tables against automation scripts, administrators can easily see recent changes and revert code when necessary.
Read post
The Value of Engaging in Maximo User Groups and Online Knowledge Sharing Communities

The Value of Engaging in Maximo User Groups and Online Knowledge Sharing Communities

Staying informed about industry trends and best practices is essential, and participating in user groups and online technology-sharing communities gives you a strategic advantage. Whether you are new to Maximo or a seasoned expert in all things EAM, these forums offer the opportunity not only to learn but to network, troubleshoot, and optimize your organization's asset management strategy moving forward.
Read post

Become a part of our thriving community with over 4,500 Maximo users.

MORE offers users a platform to discover valuable resources and engage in insightful discussions surrounding the intricacies of Maximo software. Connect with peers and experts to explore the depths of possibilities and enhance your expertise.