Implémenter le contrôle conditionnel dans le menu d'action de sélection dans la vue en liste


Lorsque vous ajoutez une action dans le menu Sélectionner une action dans Suite d'applications Maximo, il se peut que l'action ne soit visible que par certaines personnes d'un groupe de personnes. Jetons un coup d'œil à la mise en œuvre pratique du contrôle conditionnel dans l'onglet MAIN et dans la vue Liste.
Pour de tels contrôles d'interface utilisateur conditionnels, nous pouvons créer une option de signature pour l'action et accorder l'accès aux utilisateurs avec une condition qui vérifie si la personne actuelle fait partie du groupe de personnes requis/spécifique.



Notez que l'approche ci-dessus ne fonctionne que dans l'onglet PRINCIPAL (onglets de détail de l'enregistrement) pour un seul enregistrement. Si nous voulons que l'action soit invoquée depuis l'onglet LISTE de l'application (affichage en liste), où plusieurs enregistrements peuvent être sélectionnés et traités en même temps, vous constaterez que le nouveau menu Action est toujours visible pour tous les utilisateurs du groupe de sécurité, sans se limiter à certaines personnes du groupe de personnes, même si la condition est appliquée.

Il ne s'agit cependant pas d'un bogue de Maximo et il fonctionne comme prévu, car :
Alors, comment créer un contrôle conditionnel dans le menu Sélectionner une action dans la vue Liste ? Vous trouverez ci-dessous une approche alternative.





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.