Maximo Open Forum

 View Only

 ICMOBILE - Field Editability in Maximo Data Sources

  • Inventory
Kasey Dixon's profile image
Kasey Dixon posted 01-08-2026 15:49

Hello,

I've searched the forums, as well as the internet, but I haven't been able to find an answer to the problem I'm currently facing.

On the Reconciliation page, inside the "ICMOBILE" app, it appears as though none of the fields are editable. All actions are limited to checking the box, and selecting "reconcile". A request from the business side of things came through; they would like to be able to edit the physical count from within the reconciliation screen. Questions about that design decision aside, I've been digging through the documents trying to see if this is something that is possible or not.

Reading through the graphite documents on data sources, it appears to be focused on json datasources. However, unfortunately for me, the data source powering the reconciliation page is a maximo datasource. To be specific, it works off of the mxapiinvbal object. I scoured the web, and from what I found it would seem as though the editability of fields from a Maximo datasource is controlled by two things:

1) The permissioning / security groups that are relevant to that object structure

2) The "controller" of the page. In this case, the ReconcilePageController

I've investigated option 1, but it was a short investigation. I set myself up with the MAXADMIN role, which (unless I've missed something in our environment) should provide me with the necessarry permissions to modify any of the relevant fields.
However, option 2 has lead to a dead end rather quickly. I'm not sure where, or if it's even possible, for me to inspect the RconcilePageController. Based on what I've managed to gather from the web, it is likely a class file native to the Maximo service? Not sure if I can inspect those... let alone modify if that's where the change should be made!

I'd appreciate any information that'll fill in some of the blanks that I've got. Happy to do more digging if necessary, just need a bit of guidance on where to look!

Thank you!
Steven Shull's profile image
Steven Shull

It seems like you have found the MAF configuration (either docker container for 9.0 and earlier or in the MAS UI for 9.1+) which is where you need to be. If you're on 9.0 or earlier, when you run the docker container you are supposed to mount a local directory where all the files are extracted. For example, when I run it, I have this as one of my parameters:

-v /mnt/c/Users/StevenShull/Downloads/mobilews/9018:/graphite/.workspace

I use WSL (Windows Subsystem for Linux) to run the docker container. When you authenticate to a URL, inside the folder specified here (/Downloads/mobilews/9018) a new folder will get created in the format USERNAME-DNS. EX: MAXADMIN-maximo.mydomain.com

Once you open an app in the configuration utility, it will create an additional folder for that app in this directory. This will extract all the files to your local computer. For example, if you open ICMOBILE you would have a folder structure like:

 /Downloads/mobilews/9018/MAXADMIN-maximo.mydomain.com/ICMOBILE/src

Inside this folder is where all the app specific logic resides including your custom code and anything shipped out of box. 


If you are on 9.1, because the files reside inside OpenShift, there was a new menu option added to download the source. When you open an application, click the menu in the top right and choose "Download app src". This will download that zip for you to see.





Regarding the configuration change, I would try to add a button that takes you to the adHoc page with the item you're looking to adjust pre-filtered. If you do this cleanly, your configuration changes on the reconciliation page are small (a button on the screen that navigates you to a different page & applies a QBE to the datasource) and you are able to re-use all the existing logic for handling the physical count. That way you're not providing two separate flows for executing a physical count that you need to test, maintain, etc. independently of each other. I think of it like following the Go To in classic Maximo. It's OK to have the user navigate from WOTRACK->ASSET to see or change some information. But you want it to be frictionless, so they aren't being forced to navigate to the alternate page and filter the datasource themselves.