Beim Hinzufügen einer Aktion im Menü „Aktion auswählen“ in Maximo Anwendungssuite, wir möchten vielleicht, dass die Aktion nur für bestimmte Personen in einer Personengruppe sichtbar ist. Schauen wir uns die praktische Implementierung der bedingten Steuerung auf der Registerkarte MAIN und in der Listenansicht an.

Bedingte Steuerung im Menü „Aktion auswählen“ auf der Registerkarte MAIN

Für solche bedingten Benutzeroberflächensteuerungen können wir eine Signaturoption für die Aktion erstellen und den Benutzern Zugriff mit einer Bedingung gewähren, die überprüft, ob sich die aktuelle Person in der erforderlichen/spezifischen Personengruppe befindet.

  1. Erstellen Sie eine Signaturoption für die Aktion und wählen Sie in den erweiterten Signaturoptionen „Dies ist eine Aktion, die vom Benutzer in der Benutzeroberfläche aufgerufen werden muss“.

A screenshot of a computerAI-generated content may be incorrect.

  1. Erstellen Sie eine Bedingung, um zu überprüfen, ob sich die aktuelle Person in der erforderlichen/spezifischen Personengruppe befindet.

A screenshot of a computerAI-generated content may be incorrect.

  1. Gewähren Sie Benutzern mit der neuen Bedingung den Zugriff auf die Signaturoption in Sicherheitsgruppen.



Beachten Sie, dass der obige Ansatz nur auf der Registerkarte MAIN (Registerkarten mit Datensatzdetails) für einen einzelnen Datensatz funktioniert. Wenn wir möchten, dass die Aktion von der Registerkarte LIST der Anwendung (Listenansicht) aus aufgerufen wird, wo mehrere Datensätze ausgewählt und gleichzeitig bearbeitet werden können, dann werden Sie feststellen, dass das neue Aktionsmenü weiterhin für alle Benutzer in der Sicherheitsgruppe sichtbar ist und nicht auf bestimmte Personen in der Personengruppe beschränkt ist, auch wenn die Bedingung angewendet wird.


Dies ist jedoch kein Maximo-Bug und er funktioniert wie vorgesehen, weil:

  • Bedingte Benutzeroberflächen können nur im Kontext eines Datensatzes verwendet werden. Auf der Registerkarte MAIN (Registerkarten mit Datensatzdetails) haben Sie einen Datensatz in der Datenbank.
  • Wenn Sie sich auf der Registerkarte LIST (Listenansicht) befinden Sie sich nur in der Resultsetbean, sodass die Bedingungsberechnungen nicht identisch sind. Daher wird sie nicht auf der Registerkarte LIST ausgewertet, sondern nur auf den Registerkarten mit den Datensatzdetails.

Bedingte Steuerung im Menü „Aktion auswählen“ in der Listenansicht

Wie erstellen Sie also ein bedingtes Steuerelement im Menü „Aktion auswählen“ in der Listenansicht? Im Folgenden finden Sie einen alternativen Ansatz.

  1. Wir erstellen immer noch eine Signaturoption für die Aktion und wählen in den erweiterten Signaturoptionen „Dies ist eine Aktion, die vom Benutzer in der Benutzeroberfläche aufgerufen werden muss“ aus.

A screenshot of a computerAI-generated content may be incorrect.

  1. Fügen Sie die Signaturoption hinzu, um das Aktionsmenü auszuwählen, und geben Sie Tabs als LIST an.

A screenshot of a computerAI-generated content may be incorrect.

  1. Erstellen Sie eine Fehlermeldung in der Datenbankkonfiguration.

A screenshot of a computerAI-generated content may be incorrect.

  1. Erstellen Sie ein Automatisierungsskript mit Action Launch Point, das eine Aktion mit demselben Namen wie die Signaturoption erstellt.

A screenshot of a computerAI-generated content may be incorrect.
A screenshot of a computerAI-generated content may be incorrect.

  1. Fügen Sie in das Automatisierungsskript die folgenden Skripte ein, um eine Fehlermeldung anzuzeigen, wenn sich die aktuelle Person nicht in den erforderlichen Personengruppen befindet.


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() 

  1. Testen Sie mit einem Benutzer, der nicht der erforderlichen Personengruppe angehört. Die Aktion ist weiterhin in der Listenansicht unter Aktion auswählen sichtbar, aber es wird eine Fehlermeldung angezeigt, wenn der Benutzer versucht, die Aktion auszuführen.

A screenshot of a computerAI-generated content may be incorrect.
A screenshot of a computerAI-generated content may be incorrect.

Entdecken Sie den ultimativen Leitfaden zur IBM Maximo Application Suite (MAS)

Erfahren Sie alles, was Sie wissen müssen, um Ihre Vermögensverwaltungsstrategie zu modernisieren.

Darin erfährst du:

  • Was ist neu in IBM Maximo Application Suite 9.0
  • Hauptunterschiede zwischen Maximo 7.6 und MAS
  • Wie AppPoints und OpenShift das Spiel verändern
  • Branchenanwendungsfälle in den Bereichen Energie, Fertigung und Transport
  • Schrittweise Anleitung für das Upgrade und die Bereitschaft zur Migration
Cover of 'The Ultimate Guide to MAS Maximo Application Suite' by Naviam featuring a man in a yellow construction helmet and safety vest holding a tablet.
×

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.

Read Press Release