Being Maximo consultants, we often come into a scene where the client gives us MAXADMIN access to the system but access to the database is an absolute No-No. This is usually the case with companies that have a clear separation of the App Admin and DB Admin roles. This is also one of the key restrictions with Maximo as a Service.
If you have been doing a bit of admin and config activities, you will surely understand the limitation of having no database access. It’s like having to work with tied hands. Luckily, we can use MXLoader to query/update almost any data tables in Maximo. Below is an example on how to do it.
Let’s say we’re working with a Maximo SaaS and IBM only gives us front-end admin access, but no access to the back-end. Sometimes, Maximo is stuck while applying DB config, and we cannot turn off Admin Mode. This is usually not a big problem when we have full DB access. To fix this, we simply have to update the CONFIGURING flag in MAXVARS table to 0. However, with Maximo on the cloud, under standard procedure, we’ll need to raise a support ticket asking for IBM to update the flag. This could take a few days to resolve. It’s a horrible situation since we cannot do anything while Maximo is in Admin Mode.
Without DB access, we can update the MAXVARS table using MXLoader using the steps below:
1 – Create an Object Structure for the MAXVARS table:
OS Name: DBMAXVARS
Consume By: Integration
Add a new row, set Object Name: MAXVARS
2 – Use MXLoader, add a new ‘PEOPLE’ sheet:
With the new ‘People’ sheet added, replace ‘MXPERSON’ object structure with ‘DBMAXVARS’ and ‘PERSON’ object with ‘MAXVARS’ object. To identify what columns are available MAXVARS table we can open the ‘DBMAXVARS’ object structure, and open the ‘Exclude/Include fields’ dialog from the Select Action menu. In this case, I only need two fields: VARNAME and VARVALUE
3 – Set operation method to ‘Query’ and where clause to VARNAME = ‘CONFIGURING’, then execute the query by clicking on the ‘Run’ button to retrieve the record.
4 – After we get the record for ‘CONFIGURING’ variable, set VARVALUE to 0, then change the operation method to ‘Sync-Change’ then execute the operation. We will now be able to turn off Admin Mode.
Some other examples of using MXLoader to update the system tables include:
MAXMENU – To move/add an app to a different module menu
APPFIELDDEFAULTS – To set a default value when inserting new record
MAXSESSION – To release user sessions that got stuck in Admin mode and the user cannot log in
MAXDOMAIN – To create a new Synonym Domain
In case we do not have permission to use the Object Structure application, another method is to create a new single-page application using Application Designer to expose data of the object on GUI. It would enable us to achieve the same result and only take a few minutes to do. However, I like MXLoader a lot more as we can use it to bulk insert/update normal app data, and it doesn’t leave a bunch of junk apps in the system which is quite difficult to remove.
The policy to restrict DB access is usually there for a good reason. And MXLoader is an extremely powerful tool. I find it a lot easier to make mistakes updating the wrong data or to the wrong environment. So please be very careful when using it and you should always have a backup of the before and after versions of the data set that you work on.
I had to look at RFID/Barcode options for Maximo mobility solution recently. Although these technologies have been around for decades and have become a commodity, when integrating with other systems like Maximo Anywhere or Everyplace, there are certain problems that we have to deal with. In this post, I’ll discuss a few concerns related to this topic, hopefully it helps Maximo consultants to save some time when considering the solution. These are just a brain dump of different things related to the topic that I have in mind. Thus, you can read them at any order or only look that the part that you are most interested in.
Barcode vs QR code: When it comes to barcode reading, many people think that they can simply use the built-in camera of the phone or tablet to read barcode, as seen in many product comparing apps. However, in industrial setting, one should consider various extreme conditions that field workers have to work in. For example, in construction or in oil & gas, working at night is common. In such case, the camera doesn’t do well in reading barcode. In some of our tests, under pretty good ambient light, reading barcode takes up to 3-5 seconds while QR code reads almost instantly. In poorer conditions though, the camera simply couldn’t focus and can’t read anything. Thus, if the requirement is to work in environment where lighting condition is always ideal, Barcode or QR codes doesn’t matter, I’m a bit lean toward QR code as it read faster and enable higher workflow efficiency. Otherwise, we should consider other options such as RFID or using laser barcode reader.
Barcode vs RFID: When it comes to barcode (QR code is included in this category) versus RFID, they have very different attributes that one should really think carefully before deciding on which one suits their requirements the most. Many of the better features of RFID do not apply in certain asset management application. For example, RFID tags don’t need line of sight to be read or RFID can be read in bulk simultaneously. However, in asset identification, these are usually not required. However, one feature of RFID that is a clear advantage when compare to Barcode is that RFID tags can be a lot more durable under extreme conditions such as in processing plants where conditions usually involve high temperature, high moisture, and can be tampered with chemical/oil, even the some of best weather-resistant barcode label brands can wear out/fade out pretty quick (in few months). In this case, RFID tag is a clear winner. On the other hand, if working under extreme conditions is not a requirement, I would generally suggest using barcode as it is much cheaper and simpler to use. For example, we can encode Asset Number or Inventory Item Number directly to print out barcode labels, and on Maximo apps, we will just scan and lookup barcode using the standard “assetnum” and “itemnum” fields. If RFID is to be used, we generally need a separate custom field to store the tag’s ID string. Then we have to customize the app to lookup asset/item using this field instead of the standard asset/item number. We also need an extra step of reading and updating the tag’s ID string into the record in Maximo before it can be used.
Built-in camera/NFC reader vs specialized reader: Here I’m discussing about the pros and cons of using built-in camera or NFC reader (NFC is one form of RFID) versus using a specialized, external Barcode/RFID device. Built-in reader is obviously simple and more compact, thus it is suitable for occasional use. However, if your application requires frequent reading of barcode/RFID, you should go for a specialized laser barcode reader or RFID reader. These tools are designed specifically for the job, as such, it is a lot more efficient and easier to use. As mentioned above, using the camera to read barcode under poor ambient light can be problematic, but if a laser reader is utilized, poor ambient light is not a problem as the device has its own laser light source, and thus can read under any lighting condition. When it comes to industrial use, invest in specialized tool can be a bit more costly but almost always give a much better return in term of improved productivity and user acceptance. One thing to consider with external reader is that, field workers usually has to wear/carry many accessories such as PPE equipment, walkie-talkie, safety-belt, and other work-related tools. The idea of having to carry an extra phone/tablet and an external reader doesn’t sound convenient. As such, one should consider higher level of resistance from field workers if external reader is introduced. Another drawback if you consider external bluetooth scanner is that the pairing-up process between bluetooth devices and smart phones sometimes aren’t straightforward, these kind of glitches can sometimes create additional reasons for the workers who resisted to change to pushback and refuse to use the solution. As such, if possible, choose devices with built-in or connected laser barcode/RFID reader over wireless devices
iOS vs Android: Almost everyone prefers using an iPhone or iPad over Android devices. However, iPhone and iPad is designed for consumer market. When it comes to industrial use, iOS devices have many shortcomings such as they are not designed to work under extreme conditions such as under rain, hash sunlight, or sensible to touches when worker wearing thick gloves. Apple is also more restrictive in term of providing API for 3rd party developers, as such, there are less options provided by 3rd party vendor when it comes to industrial application. In the Energy and Mining industries, the use of intrinsically-safe/non-explosive (EX) electronic equipment is mandatory. This make Android platform the only option as currently, there is no iOS device on the market that can meet this safety requirement. Over the last few years, many companies introduce various computing devices such as smart phones, tablet, and even laptop meeting this standard. Some of those companies includes ECOM, Honeywell, Motorola etc. Therefore, if you design a solution for use in Hazardous areas that requires intrinsically-safe equipment, forget about iOS.
Online only vs Offline support: Here I’m only talking about Maximo Everyplace versus Maximo Anywhere. From Maximo version 7.6, Everyplace become a built-in feature. As such, it doesn’t cost anything to use. The process to produce a simplified app by duplicating an existing Maximo application then modify it to fit into small mobile screen and to do a specific task generally takes only a few hours to a few days maximum. The users who are already familiar with Maximo will virtually don’t need any training at all. As such, if working environment has available wireless LAN or 3G/4G internet connection (which is pervasive and very cheap now), you should go for this solution, it’s a no-brainer. However, in certain conditions, stable connection is not always available, such as inside deep tunnel for infrastructure company or inside confined-space/basement of a large building. In this case, we need to use Anywhere to support offline/online working mode. However, let’s be realistic here. Do your field workers really need to use Maximo app when going in a confined space? In a client who I had chance to work with recently, they said they need offline solution because Everyplace won’t work inside underground tunnels. I went around to check and found out that in most areas inside underground tunnels, 4G network is fast and stable. Some areas may have poor signal. But with standard work order process, we generally only need access to the app to check-in when starting the work, and to check-out after the work is done. In this case, identify and designate several safe areas where network connection is available to check-in and check-out would do the job. With the widespread of 3G/4G repeaters installed by network companies,
you might not realize that 3G/4G network is now available in many areas
where it was not possible before like inside tunnels, underground train
stations, or parking basements of big buildings.
For other applications such as asset audit/inspection, where users need to use the app to scan the equipment or check-point, if network connection is unstable, offline solution will be required.
Maximo Anywhere is a great offline solution because it provides very smooth experience when transition between online/offline working mode. However, it comes with a price. It is very expensive in term of license fee. It is also a complex platform that requires MobileFirst development skills to configure/customize. Keep in mind that this is still a relatively new solution and not widely proven in the industry, especially when it comes to integration with other 3rd party hardware/software. However, IBM team have been moving really fast with the development of this solution. In the past few year, the solution has seen considerable improvement and level of adoption by the asset management community. So kudos for IBM R&D team for this progress.
Considering the significant cost of Anywhere product, we should carefully survey the work environment and take these aspects into account when considering the two solutions.
IBM Mobility vs 3rd Party Solutions: When it comes to mobility solutions for Maximo, most people immediately think of IBM’s mobility solutions which includes Maximo Mobile Suites (gone), Maximo Everyplace, and Maximo Anywhere. However, to make objective evaluation, one must go further than that to evaluate 3rd party mobility solutions such as EzMaxMobile, Datasplice, Syclo Work Manager (now SAP), and many other lesser known custom-built systems. (eLogBook mobile is one of such solutions which I and my team built when working for Avenue Business Solutions). The advantage of IBM mobile solutions is that they are open platform. Therefore, any Maximo consultant with the right skill can customize the apps without IBM’s restriction as long as the users have the right license (which can be very expensive). The problem with IBM solutions is that they don’t always work in practice (e.g. the notorious Maximo Mobile Suites), too complex (Anywhere/MobileFirst solutions), having limited support from IBM (tickets generally take months to resolve or not resolved at all), or having limited material available for developers to customize/integrate. Gartner over the last several years have been putting IBM mobility solution under the “Cautions” section. Only in the recent 2017 report they say something a bit more positive about it which reflects recent development in IBM Mobile First strategy and the Anywhere solution . Third-party vendors on the other hand usually have consultants available to come in and guide clients to design process and implement their product properly and with much lower cost. They are usually smaller companies with dedicated people working in mobility space, as such they can provide a much better integrated solution with proven integration modules, software, hardware options and best practice recommendation for processes. Mobile apps provided by 3rd party companies can be less customizable than IBM’s product, and client usually have to rely directly to the vendor to provide 3rd level support, but they are usually very well designed to achieve high efficiency and smooth user experience. Overall, implementing these solutions are usually much more cost effective, provide better ROI, and client usually see much higher success rate.
Maximo EAM is a comprehensive software for Oil & Gas operators to manage and control all types of their assets including equipment, infrastructure, facility and inventory. The system however does not include the accounting and finance functionalities. The O&G operators that successfully implemented Maximo system often find themselves having two software systems that do not talk to each other. The accountants at these companies have to manually process and post invoices and other financial transactions manually. This process is time consuming, error prone and often lack of transparency.
MaxConnect is a software package developed as an extension module to Maximo that enables seamless data transferring between Maximo and SunSystems – the accounting and finance management software used by many Oil & Gas operators in Vietnam. Using standard Maximo’s and SunSystems’s integration platforms, the module allows two-way information sharing between the two systems in real time. For example, once an invoice has been created, verified again PO and Receipt, and approved in Maximo, a Posting Journal is created automatically in MaxConnect’s Journals application. The journal can be routed through several reviewer/approver steps using Maximo workflow engine and automatically posted into SunSystems once approved. Financial analysts can run report in SunSystems and immediately see the lastest data.
This add-on module is designed and developed by me. If you like to see how it works, please leave a message on LinkedIn. I’ll contact you back to setup a demo.
I am a freelance Maximo consultant based in Melbourne. If you enjoy reading my blog, please connect with me on LinkedIn to get updates on new posts. If you or your company need any professional assistance, please leave me a message, I'll call you back.