Benutzerspezifische Anpassungen von ROSI-SQL
Inhaltsübersicht
Die in ROSI-SQL Programmen enthaltenen Dialogmeldungen (Hilfetexte, Kommentartexte, Fehlertexte, etc.) sind in separater Form zusammengefaßt. Sie werden in der Datei "rsmain.cmg" zentral und einheitlich verwaltet.
Das Konzept von ROSI-SQL ermöglicht es dem Benutzer selbst Eingriffe in die Konfiguration von ROSI-SQL vorzunehmen, um Anwendungen benutzerspezifisch zu gestalten.
Diese Anleitung soll dem ROSI-SQL Programmierer anhand eines Beispiels die Möglichkeit geben, ROSI-SQL Standardmeldungen und ROSI-SQL Standardformate (Datum, Wochentage, Monatsnamen) zu ändern.
Weitere Informationen zum Meldetextkonzept von ROSI-SQL und zur Syntax der Meldetextverarbeitung kann man dem Kapitel "Meldetextverarbeitung" im ROSI-SQL Referenzhandbuch entnehmen.
2. Konzept zur Änderung der Datei rsmain.cmg
Dieses Kapitel soll den ROSI-SQL Benutzer auf die Möglichkeiten hinweisen, sinnvoll benutzerspezifische Änderungen in der Konfiguration von ROSI-SQL Programmen vorzunehmen.
Dazu erstmals eine kurze Erläuterung zum Meldetextkonzept. Die zentrale Meldetextdatei "rsmain.msg" enthält alle ROSI-SQL Standardtexte und -formate, die über INCLUDE-Anweisungen aus verschiedenen Meldetextdateien (rsrun.msg, rslink.msg, rssdb.msg, etc.) eingebunden werden. Der Benutzer kann Runtime-Parameter der Section "RSRUNRESIDENT" ändern (nur Meldetexte und Standardformate).
In dem nun folgenden Ausschnitt aus der Datei "rsrun.msg" finden Sie eine Reihe von Meldetexten und Formaten, die Sie für Ihre Anwendungen anpassen können:
.SECTION "RSRUNRESIDENT"
# ######################################################
.0;Es ist kein Fehlertext verfuegbar!
.92;Fehler($(0)): Kein Fehlertext verfuegbar.
.94;Keine Hilfsinformation verfuegbar.
.102:\R Hilfsinformation (nur bei ROSI-SQL/Unix)
.103:\R Fehlerinformation (nur bei ROSI-SQL/Unix)
.104:Dieses Feld erfordert eine Eingabe!
.105:Ungueltiger Eingabewert!
.106:dd.mm.yy
.107:So.Mo.Di.Mi.Do.Fr.Sa.
.108:JanFebMarAprMaiJunJulAugSepOktNovDez
.133:Hilfe-Information (nur bei ROSI-SQL/Windows)
.134:Fehler-Information (nur bei ROSI-SQL/Windows)
# ######################################################
Dieser Ausschnitt beinhaltet ROSI-SQL Standardtexte, sowie ROSI-SQL Standardformate, die nach Wunsch geändert werden können.
Die Meldungen 0, 92 oder 94 liefert das ROSI-SQL Runtime, wenn ein Fehlertext, bzw. Hilfetext im Programm aufgerufen wurde, jedoch in der Meldetextdatei nicht vorhanden ist.
Die Meldetexte 102 und 103 stellen die Titel der Hilfe- bzw. Fehlerfenster dar, die vom ROSI-SQL Runtime automatisch erzeugt werden.
Die Meldung 104 erscheint dann, wenn in einem REQUIRED-Eingabefeld kein Wert eingetragen wurde.
Die Fehlermeldung 105 zeigt, daß der Eingabewert nicht im RANGE-Bereich liegt, oder vom falschen Datentyp ist.
In den Meldetextzeilen 106, 107 und 108 wird das Datums-, das Wochentags-, bzw. das Monatsformat von ROSI-SQL Variablen bestimmt.
3. Änderung der Standardtexte und -formate
In der ROSI-SQL Version 2.1 war es möglich über die RSPROFILE-Standardparameter die entsprechenden Standardtexte und Formattexte zu ändern. So konnte man z.B. mit den Parametern HLPTITLE "text", ERRTITLE "text", DATE "datum-picture" die Titel der Hilfs-/Fehlerfenster bzw. das Datumsformat ändern. Ab der Version 3.0/3.1 sind diese Standardparameter entfallen. Die entsprechenden Texte werden über die Meldetextverarbeitung verwaltet. Sie sind jetzt in der Meldetextdatei "rsmain", in der Section "RSRUNRESIDENT", unter den Identifikationsnummern 102 bis 105, bzw. 106 bis 108 zu finden (siehe Ausschnitt).
Da die Meldetextdatei "rsmain" nur in compilierter Form ausgeliefert wird und somit die Originaltexte nicht geändert werden können, ist für den Fall der Änderung der oben genannten Standardtexte/-formate folgendermaßen zu verfahren:
1. Umbenennen der Datei "rsmain.cmg", z.B. in "rsold.cmg". Dabei ist zu beachten, daß die Originaldatei nicht gelöscht werden darf. Die neue Datei muß ebenfalls die Extension ".cmg" haben.
2. Anlegen einer neuen Datei "rsmain.msg", in der nun die gewünschten Texte/Formate in einer Section "RSRUNRESIDENT" unter den entsprechenden Identifikationsnummern als residente Meldetexte/-formate eingetragen werden.
3. Text-/Formatangaben müssen dabei unmittelbar hinter dem Semikolon oder - bei residenten Meldetexten - hinter dem Doppelpunkt angegeben werden.
Wochentags- bzw. Monatsnamen müssen mit einer Länge von drei Zeichen definiert werden. Außerdem ist unbedingt die logische Reihenfolge einzuhalten, d.h. bei den Wochentagen von "So."nntag bis "Sa."mstag und bei den Monatsnamen von "Jan"uar bis "Dez"ember.
4. Die übrigen Meldetexte der umbenannten alten Datei "rsold.cmg" sind per NEXT-Anweisung einzubinden.
Näheres zur Handhabung und Erstellung von Meldetext-Dateien, zur Syntax der Meldetext-Anweisungen und des Zugriffs auf Meldetexte, können Sie im Referenzhandbuch, im Kapitel "Meldetextverarbeitung" nachschlagen.
5. Die somit neuerstellte Datei "rsmain.msg" ist mit dem Messagecompiler zu übersetzen und in das Messageverzeichnis zu kopieren.
Beispiel
In einer ROSI-SQL Applikation sollen folgende Änderungen vorgenommen werden:
- der Titel "Fehlerinformation" eines automatisch erzeugten Fehlerfensters soll mit "Fehlermeldung" ersetzt und reverse dargestellt werden;
- der Titel "Hilfsinformation" eines Hilfefensters soll mit "Hilfe" ersetzt und reverse dargestellt werden;
- das Datumsformat soll mit vierstelliger Jahreszahl dargestellt werden.
Gemäß den oben genannten Verfahrensschritten ist demnach folgendes zu tun:
- Die Datei "rsmain.cmg" umbenennen:
- Eine neue Datei namens "rsmain.msg" erzeugen und ihren Inhalt folgendermaßen gestalten (dabei die Verfahrensschritte 3 und 4 beachten):
.SECTION "RSRUNRESIDENT"
.102:\RHilfe
.103:\RFehlermeldung
.106:dd.mm.yyyy
- Die erzeugte Datei "rsmain.msg" mit dem Messagecompiler übersetzen:
Dabei wird eine Datei "rsmain.cmg" erzeugt. Diese ist anschließend ins Messageverzeichnis zu kopieren.
Beim erneutem Aufruf Ihrer Applikation werden die Konfigurationsänderungen aktiv.
4. Unterschiedliche Konfiguration von verschiedenen Applikationen
Um verschiedene Applikationen mit unterschiedlicher Konfiguration laufen zu lassen, kann konzeptionell folgendermaßen verfahren werden:
- Die ROSI-SQL Dateien sowie die einzelnen Applikationen werden jeweils in separate Verzeichnisse kopiert;
- In jedem Applikationsverzeichnis befindet sich eine selbsterstellte, benutzerspezifische "rsmain"-Datei in compilierter Form. Diese Dateien sollten die spezifischen Anpassungen für die entsprechende Applikation beinhalten. Das Erstellen dieser Dateien ist in Kapitel 3 dieser Anleitung ausführlich beschrieben;
- Da nun für jede Applikation eine separate Meldetextdatei existiert, muß bei dem Aufruf einer Applikation die Environmentvariable RSMSGPATH auf die entsprechende Meldetextdatei zeigen.
Erfolgt der Aufruf der Applikationen über Shellskripts, bzw. über Batch-Dateien auf MS-DOS, so kann in den Skripts vor dem eigentlichen Aufruf des ROSI-SQL Anwendungsprogramms, die Environmentvariable RSMSGPATH entsprechend gesetzt werden.
Beispiel:
Batch-Datei für Applikation 1:
Batch-Datei für Applikation 2: