Conditionele controle implementeren in het menu Select Action in de lijstweergave


Bij het toevoegen van een actie in het menu Actie selecteren in Maximo Applicatiesuite, willen we misschien dat de actie alleen zichtbaar is voor bepaalde mensen in een persoonsgroep. Laten we eens kijken naar de praktische implementatie van voorwaardelijke controle op het tabblad MAIN en in de lijstweergave.
Voor dergelijke voorwaardelijke UI-controles kunnen we een ondertekeningsoptie voor de actie maken en de gebruikers toegang verlenen met een voorwaarde die controleert of de huidige persoon zich in de vereiste of specifieke persoonsgroep bevindt.



Merk op dat de bovenstaande aanpak alleen werkt op het tabblad MAIN (Tabbladen met recorddetails) voor één record. Als we willen dat de actie wordt aangeroepen via het tabblad LIST van de toepassing (lijstweergave), waar meerdere records tegelijk kunnen worden geselecteerd en uitgevoerd, dan zult u zien dat het nieuwe actiemenu nog steeds zichtbaar is voor alle gebruikers in de beveiligingsgroep, niet beperkt tot bepaalde personen in de persoonsgroep, zelfs de voorwaarde wordt toegepast.

Dit is echter geen Maximo-bug en het werkt zoals ontworpen, omdat:
Dus, hoe maak je een voorwaardelijk besturingselement in het menu Actie selecteren in de lijstweergave? Hieronder volgt een alternatieve aanpak.





from psdi.server import MXServer
from psdi.security import UserInfo
# Get the current user's PERSONID
current_personid = mbo.getUserInfo().getPersonId()
pgtSet = MXServer.getMXServer().getMboSet("PERSONGROUPTEAM", mbo.getUserInfo())
pgtSet.setWhere("persongroup = 'PG_SCDR' and RESPPARTYGROUP = '" + current_personid + "'")
pgtSet.reset()
# Error out if the current person not in Person Group PG_SCDR
if pgtSet.isEmpty():
service.yncerror("wo", "woCdrAccess")
pgtSet.cleanup()
pgtSet.close()


Discover everything you need to know to modernize your asset management strategy.
Inside, you’ll learn:

ActiveG, BPD Zenith, EAM Swiss, InterPro Solutions, Lexco, Peacock Engineering, Projetech, Sharptree, and ZNAPZ have united under one brand: Naviam.
You’ll be redirected to the most relevant page at Naviam.io in a few seconds — or you can
go now.