Referenzhandbuch: Reorganisation

Während des Betriebs eines Semiramis Systems fallen permanent Daten an, die die Größen der Datenbanken wachsen lassen. Die meisten dieser Daten veralten mit der Zeit und können um Platz zu sparen und die Performance von Zugriffen zu verbessern wieder aus der Datenbank entfernt werden.
In Semiramis werden Reorganisations-Anwendungen verwendet, um die Daten durch Exportieren zu archivieren und zu löschen.

Dieses Dokument beschreibt, wie eine Reorganisations-Anwendung erstellt wird, damit diese in der Anwendung „Reorganisationsaufträge“ verwendet werden kann.

1                     Zielgruppe

  • Entwickler
  • Technische Berater

2                     Begriffsbestimmung

Reorganisations-Anwendungen

Reorganisations-Anwendungen sind Hintergrund-Anwendungen mit der besonderen Verwendung „Reorganisation“. Reorganisations-Anwendungen dienen der Reorganisation von Stamm- und Bewegungsdaten nach bestimmten Kriterien.

Reorganisationsauftrag

Ein Reorganisationsauftrag ist ein Verarbeitungsauftrag, durch den ausschließlich eine oder mehrere Reorganisations-Anwendungen aufgerufen werden. Der Aufruf der Reorganisations-Anwendungen erfolgt in einer individuell festgelegten Reihenfolge, wodurch Reihenfolgeabhängigkeiten berücksichtigt werden.

3                     Voraussetzungen

Es muss ein BIS-Export-Controller vorhanden sein, wenn die Daten vor dem Löschen durch Exportieren archiviert werden sollen.

Hinweis:
Ein BIS-Export-Controller ist vorhanden, wenn in der Anwendung „Daten exportieren“ ein Export-Filter für das Business-Entity definiert werden kann.

4                     Entwicklung

Dieses Kapitel beschreibt die Entwicklung und Einbindung von neuen Reorganisations-Anwendungen für die Anwendung „Reorganisationsaufträge“. Eine Reorganisations-Anwendung ist eine spezielle Hintergrund-Anwendung. Die Reorganisations-Anwendung wird in fünf Schritten erstellt:

  • Entwicklungsobjekt Java-Klasse erfassen
  • Entwicklungsobjekt Anwendung erfassen
  • Erstellen einer Reorganisations-Anwendung
  • Reorganisations-Anwendung testen
  • Reorganisations-Anwendung dokumentieren

4.1               Entwicklungsobjekt Java-Klasse erfassen

Für die Reorganisations-Anwendung wird eine Java-Klasse benötigt. Die Java-Klasse muss in einen Namensraum liegen, der mit „log“ endet. Sie sollte denselben Namen haben, wie die Anwendung. Aus dem Namen soll das Business-Entity erkennbar sein.

4.2               Entwicklungsobjekt Anwendung erfassen

Damit die Reorganisations-Anwendung in einen Reorganisationsauftrag integriert werden kann, muss einen Entwicklungsobjekt vom Typ Anwendung erstellt werden. Durch die Einstellung des Typs auf „Hintergrund“ und der „besonderen Verwendung“ „Reorganisation“ kann die Hintergrund-Anwendung in einen Reorganisationsauftrag aufgenommen werden. Diese Einstellung bewirkt auch, dass die Reorganisations-Anwendung nicht von der Anwendung „Verarbeitungsaufträge“ aus geöffnet werden kann.

Die Hintergrund-Anwendungen mit der besonderen Verwendung „Reorganisation“ haben den Namen „<Object>Reorganization“ und die Bezeichnung „<Objekte> reorganisieren“ (Mehrzahl). Beispiel:

  • Name: cisag.app.sales.pricing.log.PriceReorganization
  • Bezeichnung: „Vertriebspreise reorganisieren“

Die „Anzeige- und Wartungseinstellung“ muss auf „Anzeige, Wartung“ gestellt sein, damit die Reorganisations-Anwendung in der Anwendung „Reorganisationsaufträge“ sichtbar ist. Der „Berechtigungsmodus“ sollte auf „Prüfung durchführen“ eingestellt werden, da die Logiken der Reorganisations-Anwendungen zumeist selbst keine Berechtigungsprüfungen durchführen. In der Anwendung „Reorganisationsaufträge“ wird auch die Datenbank der Reorganisations-Anwendung überprüft. Dazu muss die „benötigte aktive Datenbank“ korrekt eingestellt werden.

Hinweis:
Für die Verwendung der Standard-Implementierung muss das „primäre Business-Entity“ angegeben werden.

4.3               Erstellen einer Reorganisations-Anwendung

Die Schnittstelle, die für eine Reorganisations-Anwendung zur Verfügung steht, liegt im Namensraum „com.cisag.pgm.base.reorg“. Die wichtigste Klasse ist „CisReorganizationApplication“. Alle Reorganisations-Anwendungen müssen Unterklassen von „CisReorganizationApplication“ sein. Die Java-Klassen des Namensraumes sind:

  • Java-Klasse CisReorganizationApplication
    Basis für alle Reorganisations-Anwendungen.
  • Java-Klasse „CisReorganizationApplicationEditor

Standardparametereditor, alternative kann eine Ableitung der Java-Klasse „CisBatchApplicationEditor für die Parametereingabe verwendet werden.

  • Java-Klasse „CisReorganizationData

Datencontainer mit den Laufzeitdaten.

  • Java-Klasse „CisReorganizationInfo

Metadaten der Reorganisations-Anwendung.

  • Java-Klasse „ReorganizationAction“

Valueset, das beim Zählen der verarbeiteten Instanzen verwendet wird.

  • Java-Klasse „ReorganizationActionResult“
    Valueset, das die Rückgabewerte der Methoden definiert.
  • Java-Klasse „ReorganizationExportControllerMode“
    Valueset, um die Metadaten für den Export zur Archivierung zu steuern.
  • Java-Klasse „ReorganizationFilterMode“
    Valueset zur Steuerung des Exports zur Archivierung zur Laufzeit.

4.3.1          Java-Klasse „CisReorganizationInfo“

Die Klasse „CisReorganizationInfo“ enthält Metadaten für die Reorganisations-Anwendung. Nach dem Erzeugen einer Instanz der Klasse „CisReorganizationInfo“ kann das Exportverhalten und die Transaktionsgröße beeinflusst werden.

Methode „createForBusinessEntity(Class businessEntityClass)“

Eine Instanz der Klasse „CisReorganizationInfo“ kann nur mit der Methode „createForBusinessEntity(Class“) erzeugt werden. Der Parameter bestimmt für welches Business-Entity die Reorganisation erstellt ist.

Methode „setTransactionBlockSize(int size)“

Im Standardverhalten löscht Reorganisations-Anwendung maximal 1000 Instanzen in einer Transaktion. Durch Aufruf von „setTransactionBlockSize()“ kann dieses Verhalten angepasst werden.

Methode „setExportControllerMode(short mode)“

Das Exportverhalten einer Reorganisations-Anwendung kann über den Aufruf der Methode „setExportControllerMode(short mode)“ gesteuert werden. Der Parameter „mode“ bestimmt, ob die Reorganisations-Anwendung das Exportieren unterstützt. Wenn das Exportieren unterstützt wird, kann unterschieden werden, ob der Standard-Export-Controller des BIS verwendet wird, oder ob ein spezieller Export-Controller für die Reorganisations-Anwendung verwendet wird. Wenn ein spezieller Export-Controller verwendet wird, muss der Name der Java-Klasse für den Export-Controller angegeben werden.

Hinweis:
Der Standardwert für den das Exportverhalten  ist „Kein Controller“, d.h. es wird nicht exportiert.

4.3.2          Java-Klasse „CisReorganizationData“

Datencontainer für die Laufzeit, der die Konfigurationsdaten enthält.

Methode getDatabaseGuid

Die Methode „getDatabaseGuid()“ liefert die Guid der Datenbank, auf der die Reorganisations-Anwendung ausgeführt wird.

Methode getDatabaseName

Die Methode „getDatabaseName()“ liefert den Namen der Datenbank, auf der die Reorganisations-Anwendung ausgeführt wird.

Methode getMaximumRuntime

Die Methode „getMaximumRuntime()“ liefert die Laufzeitvorgabe die vom Benutzer im Editor eingestellt wurde.

Methode getParameterList

Die Methode „getParameterList()“ liefert die Instanz der Klasse „CisParameterList“, die die Benutzereingaben zu Konfiguration der Reorganisations-Anwendung enthält.

Methode getReorganizationInfo

Die Methode „getReorganizationInfo()“ liefert Metadaten der Reorganisations-Anwendung. Siehe Kapitel Java-Klasse „CisReorganizationInfo.

4.3.3          Java-Klasse „CisReorganizationApplicationEditor“

Die Klasse „CisReorganizationApplicationEditor“ ist eine Implementierung der Java-Klasse „CisBatchApplicationEditor“, siehe Kapitel Java-Klasse „CisBatchApplicationEditor. Der Editor stellt bis zu vier Eingabefelder zur Verfügung. Die Konfiguration der Klasse „CisReorganizationApplicationEditor“ erfolgt durch die Metadaten in der Java-lasse „CisReorganizationInfo“, siehe Kapitel Java-Klasse „CisReorganizationInfo. Die Felder sind:

  • Maximale Laufzeit
    Steht immer zur Verfügung
  • Ziel-Ordner
    Das Feld für den Ziel-Ordner steht nur zur Verfügung, wenn das Exportieren unterstützt wird und die Reorganisations-Anwendung direkt geöffnet In der Anwendung „Reorganisationsaufträge“ wird ein leeres Element in der rechten Spalte hinterlegt.
  • Export
    In dem Feld Export kann der Benutzer bestimmen, ob und wie die Daten exportiert werden.
  • Export-Filter
    In dem Feld Export-Filter kann der Benutzer einen Export-Filter angeben, wenn im Feld Export der Wert „Exportieren mit Filter“ ausgewählt wurde.

Um die Klasse „CisReorganizationApplicationEditor“ zu erweitern müssen folgende Methoden überschrieben werden:

  • Methode „init(int visualizationType)
  • Methode dataFromUi
  • Methode dataToUi
  • Methode validate

4.3.4          Java-Klasse „CisBatchApplicationEditor“

Die Java-Klasse „CisBatchApplicationEditor“ stellt eine Schnittstelle zur Verfügung, mit der die Parametereingabe von Hintergrund-Anwendungen erstellt werden kann. Im Konstruktor und den Deklarationen des Editors dürfen keine Initialisierungen stattfinden. Um einen eigene Unterklasse „CisBatchApplicationEditor“ zu erstellen, müssen sieben Methoden implementiert werden:

  • Methode „init(int visualizationType)
  • Methode „getActionId()“
  • Methode „getVisualElement()“
  • Methode „applyDefaults()“
  • Methode „dataFromUi()“
  • Methode „dataToUi()“
  • Methode „validate()

Die Schnittstelle enthält weiter Methoden zur Unterstützung der Implementierung und der Ausführung:

  • Methode „areOutputOptionsEnabled()“
  • Methode „isOnlineSubmitEnabled()“
  • Methode „isBatchSubmitEnabled()“
  • Methode „getParameterList()
  • Methode „isEditable()“
  • Methode „isEnabled()
  • Methode „setVisualElementProperties()“

4.3.5          Überschreibbare Methoden

Methode „init(int visualizationType)“

Eine Instanz der Klasse „CisBatchApplicationEditor“ wird erst durch den Aufruf der Methode „init(int)“ initialisiert. Die Visualisierung erfolgt immer in einem „StandardLayout“. Die Spalten werden außerhalb des Editors definiert. Der Parameter „visualizationType“ bezieht sich auf Konstanten der Klasse „CisBatchApplicationEditor“ und bestimmt die Anzahl der Spalten für das Layout:

  • VISUALIZATION_TYPE_DIALOG
    Der Editor wird in einem Dialog angezeigt und alle Felder müssen zu Spalte „0“ hinzugefügt werden.
  • VISUALIZATION_TYPE_APPLICATION
    Der Editor wird in einer Anwendung angezeigt und die Felder müssen abwechselnd zu Spalte „0“ und zu Spalte „1“ hinzugefügt werden.
Methode „getActionId()“

Die Methode „getActionId()“ liefert die actionId für den Aufruf der Hintergrundanwendung.

Methode „getVisualElement()“

Die Methode „getVisualElement()“ liefert das Element zurück, dass in den Container des Aufrufers hinzugefügt werden kann.

Methode „applyDefaults()“

Der Editor kann in der Methode „applyDefaults()“ Standardwerte für die Parameter in die Parameterliste setzen (siehe Kapitel Methode getParameterList). Die Standardwerte sollen ohne Benutzerinteraktion zu einer erfolgreichen Prüfung führen (siehe Kapitel Methode „validate()“).

Methode „dataFromUi()“

In der Methode „dataFromUi()“ müssen die Werte aus den Feldern in die Parameterliste kopiert werden (siehe Kapitel Methode getParameterList).

Methode „dataToUi()“

Die Methode „dataToUi()“ wird aufgerufen, wenn die Daten aus der Parameterliste in die Felder gesetzt werden sollen (siehe Kapitel Methode getParameterList). Für jedes Feld muss die Editierbarkeit (siehe Kapitel Methode „isEditable()“) und das Aktivkennzeichen (sihe Kapitel Methode „isEnabled()“) gesetzt werden. Diese Feldeigenschaften können auch durch den Aufruf der Methode „setVisualElementProperties()“ gesetzt werden (siehe Kapitel Methode „setVisualElementProperties()“).

Methode „validate()“

In der Methode „validate()“ sind die Parametereingaben des Benutzers zu überprüfen.

4.3.6          Weitere Methoden der Schnittstelle

Methode „areOutputOptionsEnabled()“

Der Rückgabewert der Methode steuert die Sichtbarkeit des Karteireiters „Ausgabeeinstellungen“.

Methode „isOnlineSubmitEnabled()“

Der Rückgabewert der Methode steuert die Sichtbarkeit der Buttons „Sofort“ bzw. „Anzeigen“.

Methode „isBatchSubmitEnabled()“

Der Rückgabewert der Methode steuert die Sichtbarkeit der Buttons „Im Hintergrund“ bzw. „Ausgeben“.

Methode „getParameterList()“

Zugriffsmethode zu der Parameterlist, die die Konfigurationsdaten aufnimmt.

Methode „isEditable()“

Abfrage der gewünschten Änderbarkeit der Daten.

Methode „isEnabled()“

Abfrage der gewünschten Aktivierung der Felder.

Methode „setVisualElementProperties()“

Setzt die Änderbarkeit und das Aktivkennzeichen an allen übergebenen Elementen.

4.3.7          Java-Klasse „CisReorganizationApplication“

Die Java-Klasse „CisReorganizationApplication“ ist die Basis für alle Reorganisations-Anwendungen. Die wichtigste Methode ist die Methode „reorganize()“ (siehe Kapitel Methode „reorganize()“), sie enthält die gesamte Ablaufsteuerung. Durch überschreiben dieser Methode kann das Verhalten der Reorganisations-Anwendung komplett verändert werden. Ziel der Entwicklung sollte es jedoch sein, soviel Standardfunktionalität wie möglich zu verwenden. Das Objekt, das an alle Methoden weitergeben wird, ist aus diesem Grund vom Typ „java.lang.Object“.

4.3.8          Minimalimplementierung

Die Basis ist so ausgelegt, dass mit wenig Aufwand eine Reorganisations-Anwendung erstellt werden kann. Das verarbeitete Business-Entity muss dafür den Part „UpdateInformation“ enthalten und das Löschkennzeichen muss über das Attribut „deleteTime“ dieses Parts realisiert sein. Eine Reorganisations-Anwendung für ein solches Business-Entity kann durch Implementierung der Methode „createReorganizationInfo()“und der Methode „validateObject()“ erstellt werden. Sie arbeitet automatisch blockorientiert.

Methode „createReorganizationInfo()“

Diese Methode erzeugt die Metadaten für die Reorganisations-Anwendung. Dazu wird die Methode „createForBusinessEntity(Class businessEntityClass)“ an der Java-Klasse „CisReorganizationInfo“ aufgerufen. Anschließend sollte immer noch der Modus für den Export-Controller  (sihe Kapitel Methode „setExportControllerMode(short mode)“) gesetzt werden.

Methode „validateObject()“

In der Methode „validateObject()“ ist zu überprüfen, ob die übergebene Instanz nicht mehr verwendet wird und somit gelöscht werden kann.

4.3.9          Komplexere Erweiterung

Hinweis:
Das Beispiel bedeutet nicht, dass eine blockweise Verarbeitung explizit programmiert werden muss. Die Schnittsteller „CisObjectIterator()“ liest die Daten blockweise. Das blockweise Löschen kann durch Setzen der Transaktionsgröße gesteuert werden.

Für komplexere Aufgaben können fast alle Methoden selbst implementiert werden. Um beispielsweise die blockweise Verarbeitung der Objekte selbst zu realisieren, muss die Transaktionsgröße auf 1 gesetzt werden (siehe Kapitel Methode „setTransactionBlockSize(int size)“). Zusätzlich müssen folgende Methoden überschrieben werden:

  • Methode „createIterator()“
    Ein eigene Instanz mit der Schnittstelle „Iterator muss erstellt werden, der als Beispiel eine Instanz mit der Schnittstelle „util.List“ liefert. Diese Liste enthält die zu verarbeitenden Objekte.
  • Methode „validateObject()“
    Muss nun die Liste als Parameter akzeptieren. Alle Instanzen, die nicht reorganisiert werden können, müssen aus der Liste entfernt werden und sollten durch Aufruf der Methode „increaseCount()“ als übersprungene Instanzen gezählt werden.
  • Methode „archiveObject()“
    Muss nun die Liste durchlaufen und kann mit jeder Instanz die Methode „archiveObject()“ an der Basisklasse aufrufen.
  • Methode „deleteObject()“
    Muss nun die Liste durchlaufen und kann mit jeder Instanz die Methode „deleteObject()“ an der Basisklasse aufrufen.
  • Methode releaseObject()
    Kann die Liste leeren.
  • Methode „getCount()“
    Muss die Anzahl der Instanzen in der Liste liefern.
Methode „createIterator()“

Die Methode liefert eine Instanz mit der Schnittstelle „Iterator()“, der die zu verarbeitenden Instanzen liefert. Die Standardimplementierung ist:

CisObjectIterator result = om.getObjectIterator( “select from ” + businessEntityClass + ” be where be:updateInfo.deleteTime<>?” );

result.setTimestamp( 1, CisTimeStampUtility.UNDEFINED_TIME_STAMP );

return result;

Methode „archiveObject()“

Die Methode wird aufgerufen, um die Daten durch Exportieren zu archivieren. Die Standardimplementierung öffnet eine Ziel-Datei, exportiert die Daten und schließt die Datei wieder:

short     result;

if (openExportFile( getObjectIdentifier( cisObject ) )) {

result = exportObject( cisObject );

closeExportFile();

}

else {

result = ReorganizationActionResult.ERROR;

}

return result;

Methode „deleteObject()“

In der Methode „deleteObject()“ wird das Objekt gelöscht. Die Standardimplementierung ruft „om.deleteObject()“ direkt auf.

Methode releaseObject()

In der Methode „releaseObject()“ können objektbezogene Ressourcen, z.B. Sperren, freigegeben werden.

Methode „getCount()“

Die Methode „getCount()“ liefert die Anzahl der Instanzen, die durch das Trägerobjekt repräsentiert werden.

4.3.10       Überschreibbare Methoden

Methode „exit()“

In der Methode „exit()“ können alle Ressourcen freigegeben werden. Es sollten die Ressourcen freigegeben werden, die in Methode „init()“ belegt wurden.

Methode „exitDatabase()“

Die Methode „exitDatabase()“ wird aufgerufen, damit die datenbankspezifischen Ressourcen freigegeben werden können, die in der Methode „initDatabase()“ belegt wurden.

Methode „getDatabaseGuids()“

An dieser Methode werden die GUIDs der Datenbanken abgefragt, für die die Reorganisations-Anwendung ausgeführt werden soll. Die Standardimplementierung liefert die GUIDs der Datenbanken zurück, die in der aktuellen Session zur Verfügung stehen und in denen das Business-Entity vorhanden ist.

Methode „getObjectDescriptionDisplayName()“

Liefert den Anzeigenamen des Business-Entites. Dieser wird für die Abschlussmeldungen (siehe Kapitel Methode „sendProcessMessage()“) benötigt.

Methode „getObjectIdentifier()“

Liefert die Bezeichnung der Instanz. Die Standardimplementierung verwendet denselben Algorithmus, den auch der BIS verwendet.

Methode „init()“

Dient der Initialisierung der Reorganisations-Anwendung. Die Freigabe der Ressourcen sollte in der Methode „exit() erfolgen.

Methode „initDatabase()“

Kann von der Reorganisations-Anwendung zur datenbankspezifischen Initialisierung verwendet werden. Die Freigabe der Ressourcen sollte in der Methode „exitDatabase()“ erfolgen.

Methode „reorganize()“

Die Methode „reorganize()“ enthält die Ablaufsteuerung für die Reorganisations-Anwendung für alle Datenbanken, deren GUIDs bei der Methode getDatabaseGuids() festgelegt wurden.

foreach ( databaseGuid ) {

reorganize(byte[] databaseGuid)

 

}

exit();

 

Methode „reorganize(byte[] databaseGuid)“

Die Methode „reorganize((byte[] databaseGuid)“ enthält die Ablaufsteuerung für die Reorganisations-Anwendung für eine Datenbank.

initDatabase()

beginReadTransation {

beginWriteTransationIfNeeded {

createIterator();

while( iterator.hasNext() && noError ) {

Object object = iterator.next();

increaseCount( READ, SUCCESSFULL, object );

 

if ( validateObject( object ) == SUCCESS ) {

increaseCount( VALIDATE, state, object );

 

if ( archiveObject( object ) == SUCCESS ) {

increaseCount( EXPORT, state, object );

 

deleteObject( object );

increaseCount( DELETE, state, object );

writeTransactionCount++;

}

}

releaseObject( object );

 

if ( writeTransaction && writeTransactionCount > transactionSize ) {

commit( writeTransaction )

beginWriteTransationWhenNeeded

}

 

if ( isMaximumRuntimeExceeded() ) {

setTimeout();

}

}

}

 

rollback( readTransaction )

}

exitDatabase();

4.3.11       Weitere Methoden der Schnittstelle

Die folgenden Methoden sind fester Bestandteil der Schnittstelle und können nicht überschrieben werden.

Methode „closeExportFile()“

Durch Aufruf von „closeExportFile()“ wird die Ziel-Datei, in die exportiert wurde geschlossen.

Methode „exportObject()“

Bei „exportObject()“ wird das übergebene Object dem Export-Controller in der Methode „process()“ übergeben.

Methode „getData()“

Die Parameter der Reorganisations-Anwendung können mit der Methode „getData()“ abgefragt werden.

Methode „increaseCount()“

Beim Aufruf der Methode „increaseCount()“ werden die Zähler für die Anzahl der Objekte, die bei einer Aktion erfolgreich, mit Fehlern oder gar nicht verarbeitet wurden, erhöht.

Methode „isMaximumRuntimeExceeded()“

Mit der Methode „isMaximumRuntimeExceeded()“ kann festgestellt werden, ob die von Benutzer vorgegebene Zeit überschritten ist oder nicht.

Methode „openExportFile()“

Erstellt und Öffnet die Ziel-Datei, in die exportiert wird. Die Datei ist anschließend durch Aufruf der Methode „closeExportFile()“ zu schließen

Methode „run()“

Die Methode „run()“ ist die Standardmethode für den Aufruf von Anwendungen. Der Datencontainer wird initialisiert und danach werden die Methode „init()“, die Methode „reorganize() und die Methode „exit() aufgerufen.

Methode „sendProcessMessage()“

Sendet die Meldung, in der der Status der Reorganisations-Anwendung und die verschiedenen Zähler ausgegeben werden.

Methode „resetCount()“

Setzt die Zähler für die Anzahl der Objekte, die bei einer Aktion erfolgreich, mit Fehlern oder gar nicht verarbeitet wurden, zurück auf 0.

4.4               Reorganisations-Anwendung testen

Um die Reorganisations-Anwendung zu testen, sollte die Methode „deleteObject() überschrieben werden um das Löschen zu verhindern. Somit bleiben die Daten konstant. Die Java-Klasse „CisReorganizationApplication“ unterstützt das Protokollieren über die Schnittstelle „com.cisag.pgm.util.Debug“. Die Ausgaben können mit dem Toolshell Kommando „dbgclass –class:com.cisag.pgm.base.reorg.CisReorganizationApplication“ aktiviert werden.

Reorganisations-Anwendung direkt öffnen

Die Reorganisations-Anwendung kann aus der Anwendung „Entwicklungsobjekte“ heraus geöffnet werden, wenn die „Anzeige- und Wartungseinstellung“ auf „Anzeige, Wartung“ steht. Rechts neben den Feld „Typ“ befindet sich der Button „Anwendung öffnen“. Durch das Drücken dieses Buttons wird das Hintergrund-Dialog-Fenster geöffnet. Für die Parametereingabe wird der Editor der Reorganisationsanwendung verwendet. Das Layout der Parametereingabe ist einspaltig. Das Hintergrund-Dialog-Fenster erscheint auch, wenn die Reorganisations-Anwendung über die Favoriten geöffnet wird.

Reorganisations-Anwendung im Reorganisationsauftrag

Die Reorganisations-Anwendung kann selbstverständlich auch in einem Reorganisationsauftrag getestet werden. Diese kann über die Anwendung „Reorganisationsaufträge“ erfasst werden. In diesem Fall ist das Layout für die Parametereingabe zweispaltig.

4.5               Reorganisations-Anwendung dokumentieren

Um die Reorganisations-Anwendung zu dokumentieren, muss ein Entwicklungsobjekt von Typ Hilfe-Objekt erstellt werden. Das Hilfe-Objekt sollte denselben Namen haben, wie die Reorganisations-Anwendung. Die Reorganisations-Anwendung muss dem Hilfe-Objekt auf dem Karteireiter „Entwicklungsobjekte“ mit der Gewichtung „Standard“ zugeordnet werden.

Czy ten artykuł był pomocny?