I have a textbox in a Maximo application I am developing, and it uses a custom lookup to select a person from the PERSON table. When the user selects a person, it returns their PERSONID value in the textbox.
I need the PERSONID value to be saved to the database, but I don't want to display it after the user selects the person... I want to display the person's DISPLAYNAME instead. The PERSONID value is not user-friendly at all.
Is there a way in Maximo to configure a lookup such that it allows the user to select a value, but the value that's actually displayed to the user afterward (in the textbox) is another related value from the same selected object - instead of the ID?
I have looked into multi-part textboxes, but this isn't the requirement... this still shows the underlying ID. I just want to display the related user-friendly value, and force the user to use the lookup control to change values.
Thanks!
It's been a couple of years since I've dealt with Maximo so this information is high level and rusty. I'm sorry if it's not as directly helpful as it should be (and would be, in the past), or maybe even partially incorrect.
The value or values returned by Maximo are governed by a set of implicit rules that you might be able to manipulate by changing some fields or metadata on your destination object. However, if those don't work out (and they probably won't for this situation), you can set some explicit rules via the MAXLOOKUPMAP table. (Read about it at https://www.ibm.com/support/pages/node/392257)
You are still going to want to store the personid somewhere in your destination object. It's a much more reliable data point to store and join data on than the display name. But that field doesn't have to be displayed on the screen, or the one tied to the field with the lookup button. As long as it is on your object somewhere, you can use a MAXLOOKUPMAP entry to return the personid to that field. You can then use a second MAXLOOKUPMAP entry to also return the display name to a second field on your object, and that field can be the one you display on the screen and tie the lookup button to. You could also make that field non-persistent. You could maybe even make the non-persistent display name field have an autoscript that sets its value to the display name belonging to the personid that was put in the other field. Then you wouldn't need to return the display name from the lookup (though I think Maximo doesn't like it if the lookup return values don't include the field the lookup itself was on).