Sanity Checks (Admin)
Voraussetzungen
Das Modul-Lizenz EVI-BASIS liegt im System vor und ist aktiv
Update
Bei einem Update ist zu prüfen, ob die genannten Prozeduren eingespielt wurden. Falls nicht, sind sie einzuspielen
Technische Dokumentation
Komponentenübersicht
Prozesse
C12SanityCheck
Beim Einspielen des Moduls werden die Prozesse automatisch veröffentlicht, dennoch ist eine Prüfung des Veröffentlichungsstatus empfehlenswert. Entsprechende Hinweise werden auch beim Import des Moduls ausgegeben.
Skriptbibliothek
SC12EVIBaseUtils
SC0InterfaceUtils
SC12SystemTestUtils
Globale Variablen
Speicherplatz prüfen - sanityCheckDiskSpace
C12DiskSpaceWarning
C12DiskSpaceError
Timer
Der mit dem EVI-Basis-Modul ausgelieferte Timer C12SanityCheck ist bei Inbetriebnahme der SanityChecks zu aktivieren und zu konfigurieren.
Administrationsmöglichkeiten
Administration über globale Variablen
Globale Variable | Beschreibung |
---|---|
C12DiskSpaceWarning | Gibt die Grenze an, ab der eine Warnung für den freien Speicherplatz angezeigt wird. Default: 6000 MB |
C12DiskSpaceError | Gibt die Grenze an, ab der eine Fehlermeldung für den freien Speicherplatz angezeigt wird. Default: 2000 MB |
Übersteuerungsmöglichkeiten
Grundsätzlich können die mit dem Modul bereitgestellten Komponenten wie BPM-Prozesse, -teilprozesse, Suchen und Skriptbibliotheksmethoden übersteuert werden, um diese an individuelle Anforderungen und Bedürfnisse anzupassen.
Nach dem Einspielen eines Moduls sollte geprüft werden, ob Methoden im Projekt übersteuert wurden und die Methodenänderung im Standard im Projekt übernommen werden sollte.
Jeder sanityCheck kann übersteuert werden
Skriptklasse | Methodenname | Funktionalität |
---|---|---|
SC12SystemTestUtils | getSanityChecks | Liefert eine Liste der Klassen- und Methodennamen der einzelnen SanityChecks. Dabei sucht die Methode alle Methode, die mit "sanityCheck" beginnen. Sollte in Kundenprojekten ein anderes Prefix gelten, kann dies hier angepasst werden. |
Verfügbare Sanity Checks
Folgende SanityChecks stehen im Standard zur Verfügung
Methodenname | Funktionalität |
---|---|
SC12SystemTestUtils | |
sanityCheckDiskSpace | Diese Methode prüft für das Verzeichnis, in dem die Java-VM ausgeführt wird, wie viel freier Festplattenspeicher zur Verfügung steht. Es gibt zwei Grenzwerte zur Klassifizierung des freien Speichers, die in den folgenden globalen Variablen definiert werden:
Trifft keine der beiden Klassifizierungen zu, wird die Prüfung als erfolgreich gewertet und dementsprechend markiert im Systemmonitor angezeigt. Werden die Variablen nicht oder negativ initialisiert, werden Standardwerte genutzt. Für die Warnung sind das 6000MB und für den Fehler 2000MB. |
sanityCheckCopyActPerf1 | Aktivität kopieren
|
sanityCheckDeprecatedMethods | Sucht nach Methoden, die auf "deprecated" gesetzt sind, aber weiterhin verwendet werden. |
sanityCheckEmptyKeys | Diese Methode durchläuft für alle Entitäten (MetadataUtils.getAllEntityNames()) je Entität eine Schleife, die alle Schlüssel- (numerisch und alphanumerisch) und Picklistenfelder der Entität betrachtet. Für jedes dieser Felder wird geprüft, ob das Setzen des Leerschlüssels nicht erlaubt ist (!MetaDataUtils.isEmptyKeyAllowed()). Für jedes dieser Felder wird nun eine Suche erzeugt, die als Parameter für das Feld den Leerschlüssel verwendet. So werden alle Datensätze ermittelt, für die entgegen der Feldeigenschaften der Leerschlüssel gesetzt wurde. Die Anzahl der Datensätze im Suchergebnis wird gezählt und wenn größer 0 in die LogMap geschrieben und im Systemmonitor mit Feldnamen angezeigt. |
sanityCheckEmptyMandatoryFields | Diese Methode arbeitet ähnlich der oben beschriebenen Methode. Hier wird statt des gesetzten Leerschlüssels geprüft, ob ein Pflichtfeld (MetaDataUtils.isRequired()) leer ist. Auch hier werden die Anzahl und der Feldname für den Systemmonitor aufbereitet. |
sanityCheckIndexCosts | Prüft, ob das Skript "Check index costs" läuft. |
sanityCheckModifyActListPerf1 | Aktivität modifizieren
|
sanityCheckOldIOMethods | Prüft, ob die alten Methoden zum Schreiben der InterfaceOver und -detail in Verwendung sind. |
sanityCheckRenewStats | Prüft, ob das Skript "Check renew statistics" läuft. |
sanityCheckSaveActivityPerf1 | Neue Aktivität anlegen mit einer Person und einem Angebot
|
sanityCheckSaveBlankoLetterActNewPerf1 | Neue Aktivität anlegen und Einzelbrief Blanko anlegen
|
sanityCheckSaveContactPersonNew | Neuen Ansprechpartner anlegen
|
sanityCheckSaveCustomerNewPerf1 | Neuen Geschäftspartner anlegen
|
sanityCheckSearchContactPersonPerf1 | Ansprechpartner suchen
|
sanityCheckSearchCustomerPerf1 | Geschäftspartner suchen
|
sanityCheckUnchangedKeys | Prüft auf Schlüssel, deren Schlüsselwert "BITTE AENDERN" enthält und gibt diesen inklusive des betroffenen Schlüsselbereichs im Systemmonitor aus. |
sanityCheckUnindexedEntities | Anzahl der Einträge in UnindexedEntity |
sanityCheckOnlyOneERPAddressPerCustomer | Prüft, ob für einen Geschäftspartner mehr als ein Kommunikationseintrag mit NameKey == ERP existiert. |
sanityCheckC1Indexes | Prüft das Vorhandensein eines Index auf bestimmten C1-Entitäten Bisher werden folgende Entitäten abgeprüft
|
SC12RegionalStructureUtils | |
sanityCheck | Der SanityCheck für diesen fachlichen Bereich prüft, ob es Postleitzahlen-Datensätze gibt, bei denen das Bundesland nicht gefüllt ist. |
SC12TimeSliceUtils | |
sanityCheck | Prüft für alle Entitäten die globalen Variablen für die Zeitscheibenkonfiguration. |
SC12RightUtils | |
sanityCheck | Führt diverse Prüfungen durch bzgl. der konfigurierten Entitäten. Wenn keine einzige Entität konfiguriert ist, wird eine Warnung ausgegeben. |
SC12I18nUtils | |
sanityCheck | Prüft auf fehlende Internationalisierungen in Entscheidungsdialogen, Meldungsdialogen, Auswahldialogen in der Anwendung (inkl. BPM) Zur Ausführung ist eine Datenbankprozedur einzurichten |
Interner Ablauf
Zur Systemüberwachung liefert CURSOR den Prozess „SanityCheck” aus.
Dieser Prozess führt timergesteuerte Systemtests durch und speichert die Ergebnisse als Schnittstellendetails-Datensatz. In diesen Prozess können weitere Prüfungen aufgenommen werden. Diese sollten als Skriptbibliotheksmethoden implementiert und in diesem Prozess aufgerufen werden. Die durch den Prozess erzeugten Schnittstellen-Datensätze sollten über Ihren Primärschlüssel in den Systemmonitor eingebunden werden.
Zu einer Skript-Bibliotheksklasse kann eine Methode, deren Name mit "sanityCheck" beginnt, angelegt werden. Diese kann beispielsweise die Voraussetzungen zur korrekten Funktion der Skript-Bibliotheksklasse prüfen. Diese Skriptmethoden werden vom Prozess C12SanityCheck gesammelt und ausgeführt. Dieser verarbeitet die Ergebnisse zu Schnittstellen-Datensätzen. Liegt kein Datensatz mit der übergebenen ID vor, wird er angelegt.
Die dynamischen Suchen zur Ermittlung der zu prüfenden Datensätze berücksichtigten das Feld Active.<Entitätsname> = true. Dadurch werden inaktive/gelöschte Datensätze nicht mehr geprüft.