Nutzen Sie das Automatisierungsskript, um einen temporären Audit-Trail in Maximo zu protokollieren

Phil Runion

October 24, 2023

Herausforderungen bei Datensatzaktualisierungen und Benutzerfehlern

Ein ausgereiftes Maximo-System besteht in der Regel aus mehreren Konfigurationsebenen, Anpassungen, Integrationen und beweglichen Teilen. Oft können mehrere Prozesse mit einem einzelnen Datensatz interagieren. Vor Kurzem habe ich in einer Umgebung gearbeitet, in der Arbeitsaufträge durch eine Integration erstellt wurden. Sobald der Arbeitsauftrag die neuen Arbeitswarteschlangen erreichte, begannen die Planer, den Datensatz zu aktualisieren. Während der Aktualisierungen wurden ausgehende Integrationen ausgelöst, was zu einer weiteren eingehenden Integration führte, bei der die Datensätze aktualisiert wurden. Es gab auch Eskalationen bei der Durchführung von Aktualisierungen einiger Arbeitsaufträge. Insgesamt erhielten Benutzer und automatisierte Aufgaben regelmäßig die Fehlermeldung „BMXAA4200E — Datensatz wurde von einem anderen Benutzer aktualisiert“, was zu einiger Frustration bei den Benutzern führte.

Behebung der Fehler „Datensatz wurde von einem anderen Benutzer aktualisiert“

Wenn es um den Fehler „Datensatz wurde von einem anderen Benutzer aktualisiert“ geht, gibt es so viele Möglichkeiten, sie zu beheben, wie es Gründe dafür gibt. In den unten verlinkten Artikeln werden zwei Ansätze beschrieben, die sehr nützlich sein können. Diese Ansätze geben Aufschluss über den Fehler zum Zeitpunkt des Auftretens, und diese Ansätze sollten in Ihrem Instrumentarium enthalten sein.

https://www.sharptree.io/blog/2023/2023-07-25-updated-by-another-user/

https://www.linkedin.com/pulse/troubleshooting-mxrowupdateexception-error-ibm-maximo-cheremisenov

Das Potenzial von Automatisierungsskripten für Audit-Trails

Was den meisten Ansätzen fehlt, ist die Fähigkeit, den gesamten Lebenszyklus eines Datensatzes zu verfolgen. Traditionell werden Audittabellen verwendet, um den Lebenszyklus eines Datensatzes abzubilden, um jede Änderung aufzuzeichnen. Die Konfiguration von Audit-Tabellen erfüllt einen Zweck, kann jedoch mit erheblichem Aufwand verbunden sein, und es kann schwierig sein, sie zu entfernen, wenn sie nicht mehr benötigt werden. In meinem Beispielszenario habe ich mir in den ersten Tagen nach ihrer Erstellung bestimmte Datensätze angesehen. Mir ging es nicht darum, Auditdaten langfristig aufzubewahren, und ich wollte etwas, das sich leicht aktivieren und deaktivieren lässt.

Mithilfe eines Automatisierungsskripts konnte ich alle meine Ziele erreichen. Ich konnte es ohne Ausfall zum System hinzufügen und es einfach deaktivieren, sobald ich fertig war. Seit der Implementierung bin ich zum Skript zurückgekehrt und habe es aktiviert, um bei mehreren Gelegenheiten bei der Fehlerbehebung zu helfen. Mit einem Startpunkt beim Speichern von WORKLODER und WOACTIVITY konnte ich jedes Mal, wenn ein Speichervorgang durchgeführt wurde, grundlegende Informationen protokollieren.

# Einen Logger einrichten

aus psdi.util.logging importiere MxLoggerFactory

projetechLogger=mxloggerFactory.getLogger („maximal“)

# Alle Daten abrufen, die ich protokollieren möchte

mboParent = mbo.getOwner ()

strParentName = „“

wenn MboParent und MboParent.getName ():

strParentName = mboParent.getName ()

# Einen Logeintrag schreiben

Projetechlogger.info („Auto Script" + scriptName + ") hat einen WO-Speichervorgang erkannt. Seiten-ID: "+mbo.getString („SITEID“) +“ WONUM: "+mbo.getString („WONUM“) +“ Ändern von: "+mbo.getString („CHANGEBY“) +“ Dieses Mbo: "+mbo.getName () +“ Übergeordnetes MBO: "+strParentName+“ Interaktiv:“ + str (interaktiv))

Mit der zusätzlichen Protokollierung konnte ich die benötigten Daten erfassen. Anhand der protokollierten Daten in Verbindung mit den Korrelationskennungen in der Protokollnachricht konnte ich mir schnell ein vollständiges Bild vom Lebenszyklus der Auftragserstellung machen. Anhand der Protokolldaten konnte ich einige Prozessverbesserungen identifizieren, die einen Großteil der Frustration der Benutzer beseitigten. Wir waren auch in der Lage, einen unnötigen Altprozess zu identifizieren.

Wie können Sie das nutzen? Dieser Ansatz ist nicht nur auf Arbeitsaufträge beschränkt. Er kann auf jedes Szenario angewendet werden, in dem ein Startpunkt für ein Automatisierungsskript ausgelöst werden kann und zusätzliche Protokollierung erforderlich ist. Bei der Verwendung dieses Ansatzes oder eines anderen Ansatzes, der zusätzliche Protokollierung hinzufügt, ist es wichtig, die Auswirkungen auf die Leistung zu berücksichtigen. Jeder verwendete Startpunkt für Protokolleinträge und Automatisierungsskripts verursacht Ressourcen- und Leistungseinbußen.

Sorgen Sie dafür, dass Ihre Umgebung stets auf dem neuesten Stand ist, aktivieren Sie die Protokollierung während der Problembehandlung und deaktivieren Sie sie so schnell wie möglich.

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