Toolshell

1                     Themenübersicht

Für gewisse Aufgaben bei der Entwicklung und Administration von Comarch ERP Enterprise besteht die Notwendigkeit, Java-Programme von einer Befehlzeile aus im Kontext eines ERP-System-Application-Servers (SAS) auszuführen. Zu diesem Zweck verfügt jeder SAS über eine integrierte Toolshell. In dieser Shell können, ähnlich wie in den Shells der verschiedenen Betriebssysteme, interaktiv Befehle eingegeben werden sowie Befehle zu Skripten zusammengefasst und ausgeführt werden. Ähnlich wie Hintergrund-Anwendungen dienen die Befehle der Toolshell oft dazu, potenziell lang laufende Aktionen durchzuführen. Darüber hinaus ist die Toolshell auch dann verfügbar, wenn der Web-Server eines SAS nicht oder noch nicht gestartet ist oder gestartet werden kann. Das ist vor allem bei der Installation sowie bei der Korrektur von Fehlerzuständen hilfreich.

2                     Zielgruppe

  • Anwendungsentwickler
  • System-Administratoren
  • Technische Berater

3                     Begriffsbestimmung

<begin com.cisag.app.terminus.001042 34 38 2 de>Toolshell<end com.cisag.app.terminus.001042 34 38 2 de>

<begin com.cisag.app.terminus.001042 34 40 2 de>MS-DOS ähnliche Shell-basierte Umgebung, die jeder ERP-System-Application-Server zur Verfügung stellt, um elementare, lang laufende und systemkritische Funktionen auszuführen. Insbesondere dann, wenn beispielsweise der Webserver nicht zur Verfügung steht. Beispiele: Änderungen an Datenbanktabellen, Importieren von Softwareaktualisierungen.<end com.cisag.app.terminus.001042 34 40 2 de>

<begin com.cisag.app.terminus.001041 34 38 2 de>Tool<end com.cisag.app.terminus.001041 34 38 2 de>

<begin com.cisag.app.terminus.001041 34 40 2 de>Ein Tool ist eine spezielle Form einer Anwendung, welche von der Toolshell aus gestartet werden kann.<end com.cisag.app.terminus.001041 34 40 2 de>

4                     Voraussetzungen

Eine fehlerfreie Installation von Comarch ERP Enterprise wird vorausgesetzt.

5                     Beschreibung

Nach dem Start eines SAS wird standardmäßig eine Toolshell gestartet. Die Ein- und Ausgabe erfolgt auf der Konsole der Java Virtual Machine. In der integrierten Shell können beliebig viele Befehle nacheinander ausgeführt werden, ohne dass jedes Mal der SAS neu gestartet werden muss. Änderungen an Business Objects und Klassen werden für die Toolshell erst nach einem Neustart sichtbar.

5.1               Start mit einem Benutzer

Die Toolshell führt die Befehle in einer Comarch-ERP-Enterprise-Session aus. Innerhalb einer Session wird der aktive Comarch-ERP-Enterprise-Benutzer standardmäßig dem angemeldeten Betriebssystem-Benutzer unterstellt, unter dem der SAS gestartet wurde. Hierzu muss für den Benutzer in der Systemkonfiguration eine entsprechende Identifikation vom Typ „Windows-Benutzername“ hinterlegt werden. Alternativ ist die explizite Angabe des zu verwendenden Comarch-ERP-Enterprise-Benutzers beim Start des Application-Servers über den Parameter „-toolUser:<Benutzer>“ möglich. Wenn kein Benutzer aus dem Betriebssystem-Benutzer bestimmt werden kann, oder wenn ein ungültiger Benutzer mit dem Parameter „-toolUser“ angegeben wurde, dann wird die Toolshell nicht gestartet. Sie kann in diesem Fall nur durch einen Neustart wieder gestartet werden.

5.2               Start ohne Web-Server

Wenn beim Start des SAS der Parameter „-tool“ angegeben wird, dann wird der integrierte Web-Server nicht gestartet. Hierdurch verkürzt sich die Zeit beim Start des ERP-System-Application-Servers. In diesem Fall können auf der Toolshell Befehle ausgeführt werden, eine Anmeldung mit Hilfe des Web-Browsers ist jedoch nicht möglich. Der Web-Server kann in diesem Fall auch nachträglich durch die Befehle „strsws“ oder „wrksws“ gestartet werden.

5.3               Start mit aktiver OLTP-Datenbank

Für einige Demo-Anwendungen (Entwicklungs-Einführung) ist für die Session der Toolshell eine aktive OLTP-Datenbank zu setzen, um die Dummy-Transaktion zu öffnen. Das ist über die Option „-toolDatabase:<Database>“ möglich. Diese Einstellung hat nichts mit den Parametern für die Tools zum Erstellen/Kopieren/­Generieren von Datenbanken zu tun.

5.4               Skript beim Start ausführen

Wenn beim Start eines Application-Servers im servers-Verzeichnis dieses SAS eine Datei mit dem Namen „autoexec.scl“ liegt, dann wird diese Datei mit dem Befehl „call“ ausgeführt. Mit dem Tool „Mit autoexec.scl arbeiten“ (wrkautexc) können Sie die Datei „autoexec.scl“ erzeugen, bearbeiten und löschen.

Die Datei „autoexec.scl“ wird nicht ausgeführt, wenn beim Start des Application-Servers ein Befehl mitgegeben wird.

Sie können in der Datei „autoexec.scl“ mehrere Neustarts durch die folgenden Befehle ausdrücken:

  • -restart

Normaler Neustart des Application-Servers, die Startparameter bleiben unverändert

  • -restartUpgradeMode

Neustart des Application-Servers im Upgrade-Mode

  • -restartNoUpgradeMode

Neustart des Application-Servers ohne Upgrade-Mode

  • -exit

Beendet die Ausführung des Skripts; häufig werden Skripts, die Neustarts enthalten, mit -exit abgeschlossen

Wenn Sie die Datei „autoexec.scl“ ohne das Tool wrkautexc erzeugen, dann entsteht eine Datei „autoexec.scl.tmp“ mit dem originalen Inhalt. Die Datei „autoexec.scl“ wird hingegen verändert, wenn sie –restart-Befehle oder –exit enthält. Mit –exit oder mit wrkautexc –delete werden beide Dateien gelöscht. Wenn die Ausführung der Datei „autoexec.scl“ abbricht, dann können Sie die Dateien auch manuell löschen.

5.5               Befehle

Die Toolshell verfügt über eingebaute Befehle, Tools und externe Befehle. Neben den eigentlichen Befehlen können zur Vereinfachung auch Aliasse für Befehle inklusive Parametern definiert werden. Eine Liste mit allen verfügbaren Befehlen erhalten Sie durch die Eingabe von „help“. Während des Upgrade des Application Servers steht aus Sicherheitsgründen nur eine begrenzte Menge dieser Befehle zur Verfügung.

Die Menge der in der Toolshell zur Verfügung stehenden Befehle heißt ERP-System-Command-Language (SCL). Eine Folge von Befehlen kann in einer Skript-Datei mit der Erweiterung „.scl“ zusammengefasst und durch den Befehl „call“ nacheinander ausgeführt werden. Diese Möglichkeit, Skripte zu definieren, ist vor allem für wiederkehrende administrative Tätigkeiten hilfreich. Um die Inhalte der Skript-Dateien zu kommentieren, können Kommentarzeilen eingefügt werden. Diese beginnen entweder mit „#“ oder mit „//“ und werden beim Ausführen der Skript-Datei ignoriert.

Beispiel:

# Delete message log entries.

wrkmle -delete -all

Zusätzlich zur interaktiven Eingabe in der Toolshell kann beim Start des ERP-System-Application-Servers auch direkt ein beliebiger Befehl ausgeführt werden. In diesem Fall wird nach der Ausführung des Befehls der ERP-System-Application-Server wieder beendet. Ausgenommen hiervon sind die eingebauten Befehle „load“ und „call“, mit deren Hilfe direkt beim Start eigene Befehlsdefinitionen geladen oder ein Skript ausgeführt werden kann. Nach ihrer Ausführung wird der Application-Server nicht automatisch beendet.

5.6               Parameter

Bis auf die eingebauten Befehle haben alle Befehle mindestens einen Parameter. Parameter werden in der Form „-parameterName:Wert“ angegeben. Die Groß- und Kleinschreibung wird bei der Eingabe der Namen von Parametern ignoriert. Die angegebenen Werte für die Parameter müssen in doppelte Hochkommata gesetzt werden, wenn sie Leerzeichen enthalten, z. B.:

chgsas –sas:LOCALHOST –description:”Local Server”

Wenn für einen Parameter ein Wert angegeben werden soll, der selbst doppelte Hochkommata enthält, so müssen diese durch das Voranstellen des Zeichens „\“ gekennzeichnet werden, z. B.:

chgsas –sas:LOCALHOST –description:”Local Server \”Demo\””

Der Aufruf eines Befehls ohne Parameter zeigt immer die kurze Hilfe zum Befehl an (Aliasse verhalten sich hier evtl. anders, siehe Abschnitt Aliasse). Jeder Parameter hat einen Typ und ist ein Pflicht-Parameter oder ein optionaler Parameter. Optionale Parameter haben meist auch einen Standardwert. Manche Parameter können mehrfach angegeben werden, das Zeichen „*“ als Wildcard enthalten oder beides zusammen, z. B.:

dspusr –user:ABC –user:DEF –user:D*

Bei allen Befehlen, die den Namen eines Verzeichnisses oder den Namen einer Datei erfordern, müssen Pfade im Dateisystem des lokalen Application Servers angegeben werden.

Im Allgemeinen gibt es folgende Typen von Parametern:

Typ Erläuterung
<boolean> Boolscher Wert, der optional sein kann, mögliche Werte sind „true“ und „false“.
<bool> Boolscher Wert. Die Angabe des Parameters entspricht „true“, das Weglassen des Parameters entspricht „false“. Bei Parametern vom Typ <bool>, deren Standardwert „true“ ist, ändert sich der Name des Parameter auf „-no<Parameter“.
<vs> Valueset. Die möglichen Werte und ihre Bedeutung werden in der Hilfe zum Parameter angezeigt. Die Auswahl erfolgt über die Eingabe der Zahl.
<short> Ganze Zahl. Ganze Zahlen werden als Folge von Ziffern ohne Gruppierungszeichen angegeben.
<int> Ganze Zahl. Ganze Zahlen werden als Folge von Ziffern ohne Gruppierungszeichen angegeben.
<long> Ganze Zahl. Ganze Zahlen werden als Folge von Ziffern ohne Gruppierungszeichen angegeben.
<string> Text mit beschränkter Länge, z. B. eine Bezeichnung. Enthält der Text Leerzeichen, müssen doppelte Hochkommata gesetzt werden.
<id> Text mit beschränkter Länge, der die Identifikation eines Business Entitys darstellt, z. B. der Name eines ERP-System-Application-Servers oder einer Datenbank. Enthält der Text Leerzeichen, müssen doppelte Hochkommata gesetzt werden. Identifikationen werden bei der Ausführung des Befehls immer automatisch in Großbuchstaben umgewandelt. Dies entspricht dem Verhalten der GUI-Felder für Identifikationen, die unabhängig von der Eingabe des Benutzers alle Buchstaben immer in Großbuchstaben umwandeln. Dies erleichtert die Bedienung und vermeidet Fehleingaben, die z. B. durch Vergessen der „UMSCHALT“-Taste entstehen würden.
<text> Text mit unbeschränkter Länge, z. B. ein Dateipfad. Enthält der Text Leerzeichen, müssen doppelte Hochkommata gesetzt werden.
<guid> GUID in hexadezimaler oder in Microsoft-Schreibweise.
<d> Pfad zu einem existierenden Verzeichnis im Dateisystem des lokalen Application-Servers.
<duration> Dauer (Zeit). Die Angabe erfolgt in der Form „1 h 30 m“ oder „1 Stunde 30 Minuten“. Der angezeigte Standardwert ist jeweils in Millisekunden angegeben.
<date> Datum in lokalisierter Form gemäß den Benutzereinstellungen, z. B. „1.1.2006“. Es sind auch relative Angaben zulässig wie z. B. „+1“, „heute“ oder „morgen“.

Details zu den Eingabemöglichkeiten finden Sie in der Dokumentation Bedienungsleitfaden im Abschnitt „Datumsfelder“.

Die Zeitzone, auf die sich die Eingabe bezieht, hängt vom konkreten Befehl ab. Sie kann beispielsweise durch den Systemkalender oder den Kalender einer Organisation bestimmt sein.

<dateUntil> Wie „<date>“, jedoch handelt es sich hierbei um ein lokalisiertes Bis-Datum.
<time> Datum mit Urzeit in lokalisierter Form gemäß den Benutzereinstellungen, z. B. „1.1.2006 12:00“. Die Zeitzone, auf die sich die Eingabe bezieht, hängt vom konkreten Befehl ab. Sie kann beispielsweise durch den Systemkalender oder den Kalender einer Organisation bestimmt sein.
<timeStamp> Zeitstempel in lokalisierter Form gemäß den Benutzereinstellungen, z. B. „1.1.2006 12:00“. Die Zeitzone, auf die sich die Eingabe bezieht, ist die Zeitzone des in der Session aktiven Kalenders. Dies ist in der Toolshell im Allgemeinen der Systemkalender.

Hinweis:
Ab Release 4.2 sind alle Parameter aller Befehle, die Identifikationen darstellen, auf den Typ „<id>“ umgestellt worden und unterstützen somit das verbesserte Eingabeverhalten. In der Online-Dokumentation werden die Typen dieser Parameter unter Umständen jedoch noch mit „<str>“ angegeben.

5.7               Eingebaute Befehle

Eingebaute Befehle sind Teil der Toolshell und unabhängig von Berechtigungen immer verfügbar. Die eingebauten Befehle haben im Allgemeinen keinen oder nur einen Parameter. Der Aufruf ohne Parameter zeigt eine Liste an und der Aufruf mit Parametern führt eine Aktion aus, z. B.:

  • „help“
  • „help endsas“
  • „call C:\semiramis\autostart.scl“
  • „call /opt/cisag/semiramis/autostart.scl“

5.7.1          Befehl „alias“

Der Befehl dient zum Auflisten oder Definieren eines Alias. Aliasse können verwendet werden, um Abkürzungen für oft benötige Befehle zusammen mit ihren Parametern zu definieren.

Parameter Erläuterung
(ohne) Listet alle definierten Aliasse auf.
<name> <command> <option 1>…<option n> Definiert einen neuen Alias mit dem Namen „<name>“. Wird er aufgerufen, wird er zu „<command> <option 1>…<option n>” expandiert und ausgeführt.

Beispiele:

alias example1 endsas –restart

alias example2 type “C:/boot.ini”

alias example3 type “C:/Dokumente und Einstellungen/\”Test.txt\””

5.7.2          Befehl „call“

Der Befehl führt alle in einer Datei gespeicherten Befehle aus. Mit „echo on“ und „echo off“ können Sie steuern, ob die ausgeführten Befehle ausgegeben werden.

Parameter Erläuterung
<filename> Die Datei, deren Befehle ausgeführt werden soll.
<parameter 1>

<parameter n>

Parameter für den Aufruf der Datei.

Wenn Sie Parameter angeben, dann wird die Zeichenkette {0} mit dem ersten Parameter ersetzt, {1} mit dem zweiten und so weiter.

Beispiele:

call C:\skripts\doit.scl XYZ ABC

Hinweis:

In der aufzurufenden Datei können bekannte Befehle zur Ablaufsteuerung verwendet werden, wie z. B. „iferror else endif“ oder „onerror“.

5.7.2.1      Befehl „exit“

Der Befehl „exit“ bricht die Ausführung aller weiteren Befehle ab.

5.7.2.2      Befehle „iferror“, „else“ und „endif“

Der Befehl „iferror“ prüft, ob beim letzten ausgeführten Befehl ein Fehler aufgetreten ist. Wenn ein Fehler aufgetreten ist, dann wird die Ausführung fortgesetzt. Wenn kein Fehler aufgetreten ist, dann werden alle Zeilen bis zum „iferror“ passenden „else“ oder „endif“ übersprungen.

Beispiel:

chkimp –codeClass:APP

iferror

echo “No APP code refreshes “

else

imprfr –codeClass:APP -all

endif

5.7.2.3      Befehle „onerror“

Der Befehl „onerror stop“ beendet die Ausführung aller weiteren Befehle der Datei sobald ein Fehler beim Ausführen eines Befehls aufgetreten ist.

Der Befehl „onerror continue“ führt auch dann die weiteren Befehle der Datei aus, wenn ein Fehler aufgetreten ist.

Hinweis:
Beachten Sie, dass der Zustand von „onerror“ nach einem Neustart immer „continue“ ist. Dies betrifft insbesondere die Verwendung im Skript autoexec.scl.

5.7.2.4      Konstanten für Ausdrücke

Für Ausdrücke mit „if“ oder „{@“ stehen die folgenden Konstanten bereit:

Name Datentyp Beschreibung
errors Boolean true, wenn bei der Ausführung des letzten Befehls ein Fehler aufgetreten ist.
runtime Number Dauer der Ausführung des letzten Befehls in Millisekunden.
server String Name des Application-Servers
system String Name des Systems
fileServerDirectory String Das Arbeitsverzeichnis des Application-Servers
systemUsage String Verwendungszweck des Systems
versioningLevel Number Versionierungsstufe des Systems
args String[] Liste der Parameter, die mit dem Befehl „call“ übergeben wurden.

5.7.2.5      Befehle „if“, „else“ und „endif“

Der Befehl „if“ prüft eine beliebige Bedingung in der Workflow-Skript-Sprache. Wenn die Bedingung erfüllt ist, so wird die Ausführung fortgesetzt. Wenn die Bedingung nicht erfüllt ist, so werden alle Zeilen bis zum „if“ passenden „else“ oder „endif“ übersprungen.

Beispiel:

imprfr –codeClass:APP

if runtime<1000

echo “Fast“

else

echo “Slow“

endif

 

if size(args)<>2

echo “Parameters <A> <B> expected“

endif

5.7.2.6      Ausdrücke {@ }

Sie können beliebige Ausdrücke der Workflow-Skript-Sprache im Befehl „call“ verwenden. Die Ausdrücke werden mit „{@“ eingeleitet und mit „}“ abgeschlossen. Das Ergebnis des Ausdrucks wird in eine Zeichenkette umgewandelt und ersetzt den gesamten Ausdruck.

Beispiel:

echo {@ now()}

echo {@ 1+1}

{@ “dspdir –f:”+ args[0]}

5.7.3          Befehl „help“

Der Befehl dient der Auflistung aller verfügbaren Befehle oder der Anzeige der Hilfe zu einem Befehl. Der Aufruf eines Befehls ohne Parameter oder mit dem einzigen Parameter „-help“ zeigt immer die kurze Hilfe zum Befehl an (Aliasse verhalten sich evtl. anders, siehe Abschnitt Aliasse). Dies beinhaltet die Liste der Parameter, deren Typ und Kardinalität sowie ihre Kurzbeschreibung und, sofern vorhanden, den Wertebereich, den Vorschlagswert und ein Beispiel für die Eingabesyntax. Die kurze Hilfe wird auch angezeigt, wenn syntaktische Fehler in den Parameterwerten vorliegen oder in der Beschreibung als Pflichtparameter gekennzeichnete Parameter nicht angegeben wurden.

Mit dem eingebauten Befehl „help“ können Sie die erweiterte Hilfe zu einem Befehl aufrufen. Diese beinhaltet neben einer anderen Darstellung der Parameter zusätzlich zu den Informationen der kurzen Hilfe:

  • den Namen des Befehls
  • die Bezeichnung des Befehls
  • den Befehlstyp, z. B. Alias
  • das Framework, dem der Befehl zugeordnet ist
  • die Anzeige- und Wartungseinstellung des Befehls
  • den Rumpf des Befehls
  • die Direkthilfe des Befehls
  • die Direkthilfe aller Parameter

Um gezielt die Direkthilfe zu einem oder mehreren Parametern eines Befehls anzuzeigen, geben Sie bei dem eigentlichen Befehl die gewünschten Parameter und den Parameter „-help“ an.

Parameter Erläuterung
(ohne) Listet Ihnen alle verfügbaren Befehle auf.
body Der Rumpf des Befehls wird angezeigt. Die angezeigten Inhalte sind abhängig vom Befehltyp:

·         Bei Tools wird die Anwendung bzw. die Java-Klasse angezeigt.

·         Bei einem Alias wird die Definition des Alias angezeigt.

all Listet Ihnen alle verfügbaren Befehle auf. Auch Befehle, die nicht angezeigt oder nicht verwendet werden sollen, werden aufgelistet. Die Verwendung dieser Befehle erfolgt auf eigenes Risiko, außer sie erfolgt aufgrund expliziter Anweisung durch den Comarch-ERP-Enterprise-Support.
<command> Liefert Ihnen die Hilfe für einen Befehl. Dasselbe Ergebnis erhalten Sie, wenn Sie das Befehl mit dem Parameter „-?“ eingeben. Sie können im Namen des Befehls auch das Zeichen „*“ als Platzhalter verwenden. In diesem Fall werden alle Befehle aufgelistet, die zu diesem Suchmuster passen, z. B. „crt*“ oder „*obj“.

Beispiele: Unter Verwendung des Befehls „help“

help

help crt*

help –body –all rgz*

help crtbo

Beispiele: Unter Verwendung der eigentlichen Befehls, z. B. „crtusr“

crtusr

crtusr –help

crtusr –email -type -help

5.7.4          Befehl „echo“

Der Befehl „echo“ kann eine Zeichenkette auf der Konsole ausgeben und die Ausgabe der Befehlszeile bei „call“ steuern.

Mit dem Befehl „echo on“ können Sie beim Aufruf eines Skripts jeden bei „call“ ausgeführten Befehl auf der Konsole ausgeben. Mit dem Befehl „echo off“ werden die bei „call“ ausgeführten Befehle nicht auf der Konsole ausgegeben.

Alle anderen Parameter des Befehls „echo“ werden wie angegeben in einer neuen Zeile auf der Konsole ausgegeben.

Hinweis:
Beachten Sie, dass der Zustand von „echo“ nach einem Neustart immer „off“ ist

Beispiel:

echo “Hello world“

5.7.5          Befehl „hist“

Die Toolshell zeichnet den Verlauf der 30 zuletzt ausgeführten Befehle auf. Die Nummern der aufgezeichneten Befehle liegen im Bereich von 1 bis 30. Wenn mehr als 30 Befehle ausgeführt wurden, so wird der jeweils älteste Befehl aus dem Verlauf gelöscht und die Nummern aller anderen Befehle werden um den Wert 1 heruntergezählt.

Der Befehl „hist“ dient zur Anzeige bzw. zum Aufruf eines Befehls aus dem Verlauf. Die Angabe „hist 0“ wiederholt dabei den zuletzt ausgeführten Befehl. Dies ist hilfreich, wenn die Konsole der Java Virtual Machine keine eigene History-Funktion besitzt, wie beispielsweise die Konsole des Borland JBuilder.

Parameter Erläuterung
(ohne) Anzeige der zuletzt eingegeben Befehle. Für jeden Befehl wird eine Nummer angezeigt.
0 Aufruf des zuletzt ausgeführten Befehls.
<number> Aufruf des zuvor ausgeführten Befehls mit der Nummer <number>.

Beispiele:

hist

hist 0

hist 30

5.7.6          Befehl „load“

Der Befehl lädt eine Liste von zusätzlichen Befehlen aus einer Datei oder einem Entwicklungsobjekt vom Typ „Datei“. Beginnt der angegebene Dateiname mit „com.“, wird versucht das entsprechende Entwicklungsobjekt vom Typ „Datei“ zu laden. Die Struktur des Inhaltes der Datei ist im Abschnitt Externe Befehle beschrieben.

Hinweis:
Bisher bestehende Definitionen für externe Befehle oder Aliasse werden überschrieben. Eine Ausnahme bilden die eingebauten Befehle. Diese können nicht umdefiniert werden.

Parameter Erläuterung
<filename> Die Datei, aus der die Definitionen für externe Befehle geladen werden sollen

5.7.7          Befehl „set“

Der Befehl dient der Anzeige oder dem Setzen der Java-Properties des Application-Servers.

Parameter Erläuterung
(ohne) Listet alle Java-Properties auf, für die ein Wert definiert ist.
<name>=<value> Setzt die Java-Property mit dem Namen
„<name>“ auf den Wert „<value>“.
-filter:<Muster mit „*“> Listet die Java-Properties, die zu dem Suchmuster passen und für die ein Wert definiert ist, auf.
-runtime:on Aktiviert die Laufzeitmessung für die Ausführung von Toolshell-Befehlen. Nach jedem Befehl wird die für seine Ausführung benötigte Zeit ausgegeben.
-runtime:off Deaktiviert die Laufzeitmessung für die Ausführung von Toolshell-Befehlen.

Beispiele:

set

set –filter:com.cisag.*

set –runtime:on

5.7.8           Befehl „type“

Ausgabe des absoluten Pfades einer Datei und seitenweise Ausgabe ihres Inhaltes auf der Konsole. Die Ausgabe kann nach jeweils einer Seite unterbrochen oder fortgesetzt werden.

Parameter Erläuterung
<filename> Die Datei, die ausgegeben werden soll. Die Datei wird zunächst im Dateisystem gesucht. Ist sie dort nicht vorhanden, so wird versucht, die Datei im aktuellen Klassenpfad zu finden. Dies ist hilfreich, um beispielsweise Property-Dateien auszugeben.

Beispiele:

type c:/temp/example.txt

type system.properties

5.8               Tools

Ein Tool ist eine Anwendung vom Typ „Tool“. Tools werden als Entwicklungsobjekt definiert und unterliegen den normalen Berechtigungen für Anwendungen. Eine Übersicht über alle bestehenden Tools sowie ihre Beschreibung und ihre Parameter finden Sie in dem Abschnitt „Tool-Befehlsreferenz“ in der Hilfe der jeweiligen Frameworks sowie in der Direkthilfe zur Anwendung. Die Systematik der Namen von Tools ist an die Nomenklatur der IBM i5 angelehnt:

Tool Bedeutung Erläuterung
crt<obj> create <obj> „<obj> anlegen“, „<obj> erzeugen“
chg<obj> change <obj> „<obj> ändern“
chk<obj> check <obj> „<obj> prüfen“
dsp<obj> display <obj> „<obj> anzeigen“
dlt<obj> delete <obj> „<obj> löschen“
add<obj1><obj2> add <obj1> <obj2> „<obj1> <obj2> hinzufügen“
rmv<obj1><obj2> remove <obj1> <obj2> „<obj1> <obj2> entfernen“
rgz<obj> reorganize <obj> „<obj> reorganisieren“
wrk<obj> work <obj> „Mit <obj> arbeiten“
exp<obj> export <obj> „<obj> exportieren“
imp<obj> import <obj> „<obj> importieren“
str<obj> start <obj> „<obj> starten“
end<obj> end <obj> „<obj> beenden“

5.9               Externe Befehle

Externe Befehle werden durch das Laden einer Property-Datei definiert. Standardmäßig wird beim Start der Toolshell aus dem Klassenpfad das Dateiobjekt „com.cisag.sys.kernel.tools.CisToolshell.properties“ geladen. In der Datei sind die externen Befehle in der folgenden Form definiert:

command=com.cisag.xyz.ABC/Framework/­Beschreibung

Bei der Definition können zusätzlich zum Klassennamen auch Parameter angegeben werden. Die Klasse muss eine statische „main(String[])“ Methode besitzen. Diese wird beim Ausführen des externen Befehls aufgerufen. Neben den eigentlichen Befehlsdefinitionen können die Dateien auch Kommentarzeilen beinhalten. Diese beginnen entweder mit „#“ oder mit „//“ und werden beim Ausführen der Befehle ignoriert. Durch den Befehl „load“ können Sie eigene Befehlsdefinitionen für externe Befehle aus einer Datei laden.

Hinweis:
Befehlsdefinitionen für externe Befehle enthalten das Zeichen „/“ als Trennzeichen zwischen den Bestandteilen „Klasse“, „Framework“ und „Beschreibung“. Aus diesem Grund ist es nicht möglich, dieses Zeichen selbst in der Definition zu verwenden um beispielsweise einen Parameter mit einer URL der Form https://xyz.com zu übergeben.

Wenn Sie dies benötigen, sollten Sie entweder:

  • Den Befehl inklusive seiner Parameter in eine eigene Skript-Datei schreiben und diese mit Hilfe des eingebauten Befehls „call“ aufrufen, oder
  • Mit Hilfe des eingebauten Befehls „alias“ ein Alias definieren. Hierbei können Sie das Zeichen „/“ als normales Zeichen verwenden.

5.10          Aliasse

Durch „alias newalias xyz –option1 –option2“ wird ein neuer Alias definiert. Mit Comarch ERP Enterprise werden einige vordefinierte Aliasse ausgeliefert.

Hinweis:
Im Gegensatz zu einfachen Befehlen führt der Aufruf eines Alias ohne weitere Parameter nicht zur Anzeige der Hilfe, sondern zur Ausführung des Befehls. Beachten Sie das, wenn Sie  nur die Hilfe anzeigen möchten.

5.10.1       Alias „ci“

„ci“ ist ein Alias für das Tool „chkin“ (Dokumentation: Java-Klassen kompilieren und einchecken).

5.10.2       Alias „co“

„co“ ist ein Alias für „chkout“ (Dokumentation: Dateibasierte Entwicklungsobjekte auschecken).

5.10.3       Alias „dbgmsg“

„dbgmsg“ ist ein Alias für das Tool „dbgmsgmgr“ (Dokumentation: Message Manager debuggen) mit den Parametern „-logLevel:2 -traceLevel:2“. Mit seiner Hilfe kann für eine Fehleranalyse sehr einfach und schnell die Protokollierung aller Meldungen auf der Konsole, inklusive des Stacktrace der Programmstelle, welche die Meldung gesendet hat, aktiviert werden. Das Deaktivieren kann dann mit dem Aufruf „dbgmsgmgr -logLevel:35 -traceLevel:35“ erfolgen.

5.10.4       Alias „restart“

„restart“ ist ein Alias für das Tool „endsvr“ (Dokumentation: Application-Server beenden) mit dem Parameter „-restart“.

5.10.5       Alias „stop“

„stop“ ist ein Alias für das Tool „endsvr“ (Dokumentation: Application-Server beenden) mit dem Parameter „-stop“.

5.10.6       Alias „strsws“

„strsws“ ist ein Alias für das Tool „wrksws“ (Dokumentation: Mit dem Web-Server arbeiten) mit dem Parameter „-start“.

5.11    Freischaltbare Tools

Bestimmte Tools sollten nur in Abstimmung mit dem Comarch-ERP-Enterprise-Supportcenter verwendet werden, um unerwartete Konsequenzen wie z. B. Datenverlust, zu vermeiden. Zu diesem Zweck ist für den Aufruf bestimmter Tools die Angabe eines zeitlich begrenzt gültigen Freischaltcodes erforderlich. Eventuell sind nur einzelne Parameter eines Tools auf diese Weise geschützt, sodass das Tool mit anderen Parametern ohne Angabe des Freischaltcodes genutzt werden kann.

Wenn Sie ein solches Tool aufrufen, werden Sie aufgefordert, einen Freischaltcode anzugeben. Übergeben Sie den Freischaltcode mit dem Parameter „-unlockCode:<string>“. Den Freischaltcode erhalten Sie vom Comarch-ERP-Enterprise-Supportcenter.

 

Czy ten artykuł był pomocny?