Syntax von IEdge

Das Werkzeug InterfEdge stellt eine Schnittstelle zwischen dem Workplace-Shell (wie Rochade Autopilot) und sonstigen Werkzeugen dar. Vorangestellt an den Befehlen können Optionen angegeben werden.

Iedge kennt folgende allgemeinen Optionen:

  • -lo: Logfile
  • -a: Anwendung
  • -g: Auftrag
  • -s: Stufe
  • -ex : Befehls-Datei: anstelle eines einzelnen Befehls kann eine Datei mit einer Liste von Befehlen übergeben werden.
  • -e: Schalter für EDB-Anmeldung. Default wird dies gemacht und wird dann ggf. auch der TAA-Logon gestartet. Mit -e0 wird keine EDB-Anmeldung gemacht und wird auch kein TAA-Logon gestartet

Außerdem 1):

  • -lr: Ergebnis-Log
  • -opts: Optionen

Nicht alle Optionen werden für jeden Befehl verarbeitet.

InterfEdge kennt folgende Befehle 2):

Auskunftsfunktionen

INFO

 INFO <Dateiname> <Category> <Item>

Das Ergebnis der verlangten Auskunft wird in der Datei Dateiname gespeichert. Wenn nur Category und Item angegeben sind, aber kein Dateiname, wird die Info auf stdOut geschrieben 3).

Folgende Angaben für Category und Item sind zur Zeit unterstützt:

Category Item Auskunft
LOGON ACTIVE Ist der TAA Logon Server aktiv?
LOGON MODEL Ist die Einstellung beim Logon-Server auf das technische oder fachliche Modell vorgenommen worden?
LOGON APPL An welchem Anwendungssystem ist der TAA-Entwickler angemeldet?
LOGON USER Unter welcher Kennung ist der TAA-Entwickler angemeldet?
LOGON ROLEMit welcher Rolle ist der TAA-Entwickler angemeldet?
LOGON STATUS Zu welchem Status ist der TAA-Entwickler angemeldet?
LOGON AUFTRAGZu welchem Auftrag ist der TAA-Entwickler angemeldet?
LOGON VERSION Welche Version der Tools wird benutzt oder ist installiert?
LOGON ALL Liefere alle bekannnten Informationen zur Category LOGON.
EDB ROSERVER Welcher Rochadeserver wird von der EDB-Zugriffsschicht benutzt?
EDB ROLANGUAGE Welche Sprache?
EDB RODBNAME Welche Datenbank?
EDB ROINIFILE Welche INI-Datei?
EDB ROSECTION Welche Section?
EDB ALL Liefere alle bekannten Informationen in der Category EDB.
WORD SHORTPATH Was ist der 8.3 Kurzname für die Pfadangabe von MS-Word?
WORD VERSION Welche Version von Word ist installiert?
WORD START Startet Word. Wenn nach START ein weiteres Argument übergeben wird, wird versucht, dieses als Datei in Word zu öffnen. Wenn es ein zweites Argument gibt, wird dieses beim Starten von Word als Makro aufgerufen.
EXCEL SHORTPATH Was ist der 8.3 Kurzname für die Pfadangabe von MS-Excel?
POWERPOINT SHORTPATH Was ist der 8.3 Kurzname für die Pfadangabe von MS-Powerpoint?
PROJECT SHORTPATH Was ist der 8.3 Kurzname für die Pfadangabe von MS-Project?
DSTR ALIASCATEGORIES Namen und IDs der bekannten Kategorien für Aliasnamen

XFERFN

 XFERFN <Dateiname> <name> <typ> <ergebnistyp> <anwendung> <status> <variant>

Liefert in <Dateiname> den Namen der Datei, der benutzt werden soll, wenn ein Baustein <name> vom Typ <typ> in einen Typ <ergebnistyp> umgewandelt werden soll, innerhalb der Anwendung <anwendung> mit dem Status <status> und der Variante <variant>.

Kommentarbearbeitung

Zur interaktiven Bearbeitung der Kommentare zu Schnittstelle oder der Implementierung bitte die entsprechenden Werkzeuge benutzen (TeamWiSE.InterfEdge, TEamWiSE.KnowlEdge, TeamWiSE.DataStrEdge, ControlEdge usw.).

 VIEW <Filename>

Zeigt den in der angegebenen Datei gespeicherte Kommentar an. Änderungen können nicht vorgenommen werden.

 EDIT <Filename> [<Editortyp> [<Templatefile>]]

Bietet die Möglichkeit, den in der angegebenen Datei gespeicherten Kommentar zu bearbeiten, oder einen neuen Kommentar anzulegen. Im Falle einer Neuanlage wird ein Kommentar vom Typ der Umgebungseinstellungen (im TAA Logon-Server vorgenommen) angelegt, oder von dem Typ, der als Argument Editortyp angegeben wurde. Dabei bedeutet Editortyp=1 Mini-Word (TER), und Editortyp=2 MS-Word. Zusätzlich kann eine Dokumentvorlage Templatefile angegeben werden, die als Ausgangslage bei der Neuanlage eines Kommentars benutzt wird.

Bausteinbearbeitung

Zur interaktiven Bearbeitung der Schnittstelle oder der Implementierung von Bausteinen bitte die entsprechenden Werkzeuge benutzen(TeamWiSE.InterfEdge, TEamWiSE.KnowlEdge, ControlEdge usw.).

 INTF <Modulename> <Moduletyp> <Application> [RONLY]
 IMPL <BstnName> <BstnType> [<BstnAppl>] [RONLY]

Konsistenzüberprüfung

EDBCHECK

 EDBCHECK <Dateiname> <Modulename> <Moduletyp> <Application> [NODLG]  

Um über edbCheck festgestellte Abweichungen von edbCheck auch korrigieren zu lassen, starten Sie edbCheck bitte über das Tool TaaDo.

DOMCHECK

Nur für Aufruf über Rochade.

 DOMCHECK __ <Dom-Datei> <Err-Datei>

Generatoranbindung

Baustein

 GEN <BstnName> <BstnType> <BstnAppl> <Variante> [<Optionen für Steuerungsgenerator>]

Z.Zt. nur für Steuerungsmodule mit COBOL-Implementierung. Dieser Aufruf startet die Erzeugung eines Cobol-Moduls für den Baustein.

Die <Optionen für Steuerungsgenerator> enhalten die Optionen ANSI, OEM, MINIDOC, CONTINUE und COMPANY=<Company> in beliebiger Reihenfolge, durch Semikolon getrennt, und ohne Leerzeichen. Für <Company> sind zur Zeit die Werte „AL“ oder „HN“ bzw. „HKV“ bekannt. Wenn die Option nicht angegeben ist, wird das Company-Setting aus der Registry genutzt. Beispiel:

   IEdge -lo iedge.log gen pg-gevo-test2 gstr twonly batch continue;company:al;minidoc

Für die Cobol-Compilierung des erzeugten Codes wird der TAA-Cobol-Preprozessor benötigt.

Datenstruktur

 GENALL <DokTyp> <DS-Name> <DS-KurzName> [<Application> [<Status> [<Auftrag>]]]
 GENSPEC <DokTyp> <DS-Name> <DS-KurzName> <Variante> [<Application> [<Status> [<Auftrag>]]]

Argumente:

  • DokTyp: z.B. FM_DATENSTRUKTUR, DM_D-RELATION.
  • DS-Name: Name der Datenstruktur in Rochade.
  • DS-Kurzname: Kurzname der Datenstruktur (i.d.R. <Appl><Kurzname lt. Rochade>, für die Ermittlung des Namens der Ausgabedatei
  • Variante: Generierungsvariante lt. EDB, z.B. „EDB-CSV“.

GenAll und GenSpec generieren die Ausgabedateien für Datenstrukturen (Copy-Strecken, generierte Datenstruktur usw.), entweder für alle (GenAll) oder für eine bestimmte Variante (GenSpec).

Schlüsseltabellen

allgemeine Syntax:

 REFTAB <command> [-opts <options>] <DokTyp> <DokName> <Ent-Kurzname> <...>

Mit -opts übergebene Optionen werden an das aufgerufene Tool (hier: TablEdge) weitergegeben.

Argumente:

  • DokTyp: DM_DOMAENE oder DM_D-RELATION
  • DokName: Name der Tabelle oder Domäne in Rochade
  • Ent-Kurzname: Kurzname der Tabelle oder Domäne (i.d.R. 3-stellig)
  • Ref-Name: Zusammengesetzter Kurzname der Tabelle in der Datenbank (Default: T<appl><shortname>)
  • Ref-Name-Alias: Alias-Name der Tabelle in der Datenbank (Default: Ref-Name)
  • DBTablename: Name, unter dem die Tabelle in die Datenbank exportiert werden soll, bzw. aus der die Daten importiert werden sollen (Default: Ref-Name)
  • DBName: Name der Datenbank, aus der importiert bzw. in die exportiert werden soll (Default: konfigurierte RefDb)

Optionen:

  • -k: interne Felder (z.B. „88er-Name“) mit exportieren (nur bei EXPORT)

Commands:

REFTAB BATCHUPDATE <DokTyp> <DokName> <Ent-Kurzname> [<Ref-Name> [<Ref-Name-Alias>]]:
Exportiert die Tabelle von Rochade in eine Access-Datenbank, mit neuer Struktur; Anpassungen an die neue Struktur erfolgen soweit möglich automatisch.

REFTAB EXPORT [-opts <-k>] <DokTyp> <DokName> <Ent-Kurzname> <Ref-Name> [<Ref-Name-Alias>]:
Exportiert die Tabelle von Rochade in eine Access-Datenbank.

REFTAB IMPORT <DokTyp> <DokName> <Ent-Kurzname> <Ref-Name> [<DBTablename> [<DB-Name>]]:
Importiert die Tabelle aus einer Access-Datenbank nach Rochade

REFTAB EXPORTFROMTABLE <DokTyp> <DokName> <Ent-Kurzname> <Ref-Name> [<DBTablename> [<DB-Name>]]:
Exortiert die Tabelle aus einer Access-Datenbank in eine csv-Datei (Pfad gem. Xfer-Tabelle in der edb)

Diverse

Registry

 REG <Dateiname> <Operation> <Type> <Category> <Item> [<Value>]

Das Ergebnis der ausgeführten Operation wird in der Datei Dateiname gespeichert. Folgende Operationen werden unterstützt:

Operation Umschreibung
GET Liefert den Wert des spezifizierten Eintrages in der TAA-Registry. Falls ein Argument Value angegeben ist, wird dieser Wert geliefert falls der Eintrag in die Registry nicht existiert. Der gefundene Wert wird in der Ergebnisdatei zurück geliefert. Falls der Eintrag nicht existiert und kein Argument Value als Default angegeben wurde, wird keine Ergebnisdatei angelegt.
SET Setzt einen neuen Wert für den spezifizierten Eintrag in der TAA-Registry. Ein Argument Value muss angegeben werden. Der effektive Wert für den Eintrag wird in die Ergebnisdatei zurück geliefert. Dieser Wert kann abweichend vom übergeben Wert Value sein, wenn die Organisation der TAA-Registry einen nicht-schreibbaren Eintrag vor dem änderbaren Eintrag definiert hat. Falls das Ändern des Wertes fehlschlägt, oder anschließend der Eintrag nicht existiert, wird keine Ergebnisdatei angelegt.
EXISTS Prüft die Existenz des spezifizierten Eintrags in der TAA-Registry. In die Ergebnisdatei wird dementsprechend true oder false zurück geliefert.
DELETE Löscht den spezifizierten Eintrag aus der TAA-Registry. In die Ergebnisdatei wird gemäß Erfolg der Operation true oder false zurück geliefert. Die Operation versucht den Eintrag an allen gefundenen Stellen in der TAA-Registry zu löschen. Das Ergebnis ist erfolgreich, falls der Eintrag nirgendswo existierte, oder falls der Eintrag an mindestens eine Stelle gelöscht werden konnte.

Es können nur Einträge in definierten Kategorien benutzt werden. Folgende Angaben für Category sind derzeit unterstützt:

Category Umschreibung
Config Allgemeine Konfigurationseinstellungen.
DbConfig Datenbankkonfiguration.
Company Unternehmensweite Einstellungen.
Appl Anwendungsspezifische Einstellungen.
Tools Werkzeugspezifische Einstellungen.

Die Angabe Item zum jeweiligen Eintrag kann eine komplette Pfadangabe mit Schrägstrichen sein, bspw.

 REG c:\t\result.txt GET DWORD Tools "TAA Monitor/InfoLevel"

Man beachte, dass ein Argument mit Anführungszeichen angegeben sein muss, falls das Argument Leerzeichen enthält. Die Angabe Type für den Datentyp legt fest, wie der Wert des Eintrages zu behandeln ist. Unabhängig von der konkreten Speicherung des Wertes, wird dieser in dem verlangten Wert konvertiert. Folgende Typen werden unterstützt:

Type Umschreibung
STRING Der Wert wird als Zeichenfolge behandelt.
DWORD Der Wert wird als eine numerische Angabe ohne Vorzeichen behandelt.
BOOL Der Wert wird als boolsche Angabe behandelt. Erkannt werden als Eingabe y, Y, 1, J, j, true und True für Wahr. Alle anderen Eingaben werden als Unwahr betrachtet. Als Ergebniswert wird immer true oder false geliefert.

Alle Angaben (bis auf Value beim Setzen eines Wertes) sind unabhängig von der Groß- und Kleinschreibung. Das Ergebnis wird immer in Großbuchstaben auf OEM konvertiert geliefert, wie alle von iedge gelieferten Ergebnisse.

Encrypt

 iedge encrypt <reg-key> <reg-name> <password>

Erstellt unter dem angegebenen Registry-Key und -Namen ein verschlüsseltes Password.

Beispiel:

 iedge encrypt DbConfig\PkEdge Password 23$$hssb!DDf

AUREIMP

 AUREIMP <Aure-Datei> <Err-Datei>

Übernimmt die Angaben zu Konfigurationen wie in der CSV-strukturierte <Aure-Datei> angegeben.

RMAPIMP

  RMAPIMP <Err-Datei>

Übernimmt die Namensmappings aus dem Dokument VB_SYS_VARIABLEN-INIT-ATTR in die RMAP-Tabelle der TAA Metadaten.

MAPSIMP

 MAPSIMP  <Map-Name> <Err-Datei>

Übernimmt das angegebene Mapping in eine Mapping-Tabelle der TAA Metadaten.

GCELOCAL

 GCELOCAL  <Dateiname> <Modulename> <Moduletyp> <Application>

Erstellt eine CSV-Datei in <Dateiname> mit Informationen zu den lokalen Objekten des angegebenen Bausteins.

Nur für Module vom Typ STRG und CTVK.

DSTRIMP

 DSTRIMP <DokTyp> <DokName> <Kurzname> <EDB-Typ>

Die Angabe <EDB-Typ> kann eine Datenstruktur (OSTR) oder Schlüsseltabellendefinition (STAB) bezeichnen. Das Rochadedokument und der Dokumenttyp müssen dazu passen. Das Dokument wird gemäß EDB-Definitionen importiert. Man beachte, daß diese Übernahme für Datenstrukturen auch mit den Befehlen GEN, GENALL oder GENSPEC möglich ist, und die Schlüsseltabellendefinition auch als Nebeneffekt von REFTAB EDITUPDATE oder REFTAB EXPORT in die EDB übernommen wird. Beim DSTRIMP auf eine Schlüsseltabellendefinition (STAB) wird als Nebeneffekt der Inhalt der Tabelle in csv-Format abgelegt.

Es ist wichtig, beim DSTRIMP die Anwendung (Option -a) anzugeben, zu der die Datenstruktur bzw. Schlüsseltabellendefinition gehört, um korrekte Ergebnisse zu erhalten.

TXTBEXP

 TXTBEXP <Verzeichnis> <Modulename> <Moduletyp>  <Application> [OMS]

Exportiert die Textkonserven zu einem Textbaustein. Für jede Textkonserve wird eine Datei in dem angegebenen Verzeichnis angelegt, mit dem Namen der Textkonserve und dER Endung .rtf, und dem Namen des Textbausteins mit einem Bindestrich vorangestellt (z.B. BS-GRUSS-VERSION1.rtf). Die Standardtextkonserve hat den Namen -Standard.rtf (z.B. BS-GRUSS-Standard.rtf).

Das angegebene Verzeichnis muss existieren und änderbar sein.

Ab TAA 9.08 gibt es einen zusätzlichen Parameter „OMS“, um anzugeben, dass es ein Export für OMS ist. Bisher wurde nach dem Export eine zweite Anwendung (RTF2TXT) verwendet, um die RTF-Dateien zu analysieren und anzupassen. Wenn dieser „OMS“ Parameter angegeben ist, werden einige dieser Anpassungen direkt beim Export gemacht. So werden neben den RTF-Dateien jetzt auch die OpenXML-Dateien (.docx) im Verzeichnis geschrieben. Namensgebung ist für OpenXML-Dateien so wie bei RTF-Dateien. Beim Export von RTF-Dateien werden die Format- und Längenangaben bei Platzhaltern nicht mit ausgegeben. Platzhalter haben also nur den Platzhalternamen mit vorne und hinten ein &-Zeichen. Das Ausgabeformat der RTF-Dateien ist damit so wie beim RTF2TXT. Außerdem wird eine zusätzliche Datei namens „placeholdersAnalysis.txt“ erstellt mit allen Platzhaltern mit ggf. Format- und Längenangaben. Jede Zeile enthält einen Platzhalter. Als Trennzeichen für die Format- und Längenangabe wird das ^-Zeichen verwendet. Dieses Format ist also auch so wie beim RTF2TXT.

KTBCODEEXPORT

 ktbcodeexport [-recursive] <Ausgabedatei> <Modulname> <Modultyp> <Anwendung>
 

Um die Historisierung von Änderungen am Pseudocode zu ermöglichen, kann mit dem Iedge-Befehl „KtbCodeExport“4) ein Export von CTV-Komponenten erstellt werden. Dieser Befehl exportiert den Pseudocode einer CTV-Komponente als XML. Die Anpassungen am Pseudocode sind teilweise abhängig von der Schnittstelle der CTV-Komponenten, deshalb werden zusätzlich die Parameter-Objekte, globalen Objekte, Operationen, lokalen Objekte, Zustände und die CTV-Attribute im XML mit exportiert.

Durch die Option „-recursive“ besteht die Möglichkeit, die enthaltenen Modulaufrufe der Komponente ebenfalls in dieselbe Datei zu exportieren.

RDP

 RDP <Dateiname>

Konvertiert die Rochade-Doku-Postprozessor Befehle in der RTF-Datei. Das Ergebnis wird in der gleiche Datei gespeichert.

INTFBATCH

 INTFBATCH <Dateiname> {<Dateiname>}

Aktualisiert die Schnittstelle eines oder mehrerer Bausteine auf Basis einer XML-Datei.

COMPRESSFILE

 COMPRESSFILE [<Optionen>] <Dateiname> <Ergebnisdatei>

Komprimiert die angegebene Datei <Dateiname> und erzeugt daraus die angegebene Datei <Ergebnisdatei> mit der Dateierweiterung „.cab“ (Cabinet-Format), falls die Datei kleiner als 2147450880 Bytes (ca. 2 GB) groß ist. Sehr große Dateien (größer als 2 GB) werden in CABX Dateien (Cabinet Extended) komprimiert und erhalten die Dateierweiterung „.cabx“. Wenn die Ergebnisdatei keine Dateierweiterung enthält wird „.cab“ (bzw „.cabx“) angehängt; wenn eine andere als „.cab“ angegeben wurde, wird diese durch „.cab“ (bzw. „.cabx“) ersetzt.

Bitte beachten Sie, dass das CABX (Cabinet Extended) Dateien nicht wie Cabinet Dateien entpackt werden können. Die Dateien müssen explizit mit IEdge entpackt werden. Hierzu nutzen Sie bitte den IEdge DECOMPRESSFILE Befehl.

Optionen:

  • -lo <Logfile> nur bei den Befehlen GENSPEC und GENALL
  • -lr <ResultLogfile> Protokolliert Ergebnisse in ein CVS Format
  • -a Anwendung Standardwert: Kontexteinstellung
  • -g Auftrag Standardwert: Kontexteinstellung
  • -s Stufe Standardwert: Kontexteinstellung
  • -ex <Befehlsdatei>: Datei, welche beliebig viele COMPRESSFILE-Befehle enthalten kann.

DECOMPRESSFILE

 DECOMPRESSFILE <Dateiname> <Ordner/Ergebnisdatei>

Entpackt die angegebene Eingabedatei <Dateiname> in den angegebenen Ordner bzw. die angegebene Ausgabedatei <Ordner/Ergebnisdatei>.

EDITRUNTIMEFUNCTIONS

Dieser Iedge-Aufruf startet einen Dialog, in dem die in PkEdge verwendeten Laufzeitfunktionen angesehen und - je nach Benutzerberechtigungen - bearbeitet werden können.

GenCsvForMldg

Iedge <options> GenCsvForMldg <name: *> <appl: *> <file: MLDG>
Beispiele:
Iedge -lo iedge.log GenCsvForMldg ZZTAAOM1  -- erzeugt Meldungsgruppe ZZTAAOM1 in Datei ZZTAAOM1.csv
Iedge -lo iedge.log GenCsvForMldg * TAA TAA -- erzeugt alle Meldungsgruppen aus TAA in Datei TAA.csv
Iedge -lo iedge.log GenCsvForMldg ZZ* * zz -- erzeugt alle Meldungsgruppen namens ZZ* in Datei zz.csv
Iedge -lo iedge.log * -- erzeugt alle Meldungsgruppen in eine Datei namens MLDG.csv

Erstellt5) für die angegebenen Meldungsgruppen eine csv-Datei, die z.B. für die Überführung in eine DB2-Datenbank zur Verwendung unterhalb von Ossy verwendet werden kann.

Für die Ermittlung des Dateipfades wird die Angabe in edbXfer von MLDG nach GMLD verwendet.

INVOKEEXTENSION

 INVOKEEXTENSION <tool> <extension> [<cmd>] 

Argumente:

  • tool: Name des Tools, für das die Extension erstellt wurde
  • extension: Name des Eintrags in der Registry für die Extension (unterhalb von Tools/<tool>/Extensions)
  • <cmd>: optionaler Befehl, der der Methode InvokeConsoleCommand an der Extension übergeben wird

Bietet die Möglichkeit, Batch-Erweiterungen für Tools zu implementieren.

Beispiel:

sample.cs
namespace PkEdgeTest
{
   public class Extension : TeamWiSE.dacApi.ddbToolExtension
   {
      // ....
      public override void InvokeConsoleCommand(string Cmd)
      {
         System.Console.WriteLine("In PkEdgeTest.Extension.InvokeConsoleCommand() with >" + Cmd + "<");
      }
   }
}

Die Ausgabe über System.Console wird umgeleitet auf die beim dem IEDGE-Aufruf angegebene Logdatei. Wenn z.B. diese Extension als „PkEdgeTest“ unterhalb von „Tools/pkeTool/Extensions“ in der TAA-Registry eigetragen wird, führt ein Aufruf von

IEDGE -lo <logfile> INVOKEEXTENSION pkeTool PkEdgeTest "Dummy mit Parameter und Option -lo"

zu folgendem Ergebnis in dem <logfile>:

00:00:09.633510: Iedge registered
Command: INVOKEEXTENSION pkeTool PkEdgeTest "Dummy mit Parameter und Option -lo"
Start processing command: INVOKEEXTENSION pkeTool PkEdgeTest "Dummy mit Parameter und Option -lo"
In PkEdgeTest.Extension.InvokeConsoleCommand() with >Dummy mit Parameter und Option -lo<
Finished processing command: INVOKEEXTENSION pkeTool PkEdgeTest "Dummy mit Parameter und Option -lo"

SAVECFG

 SAVECFG <name>

Erstellt einen Eintrag für eine Config-Unit in der Registry.

OBSOLETETRANEXP

 OBSOLETETRANEXP <Ergebnisdatei>

Erstellt eine Datei im CSV Format, die eine Liste mit allen „obsolete“ Transformationen beinhaltet.

LOADSAVE

 LOADSAVE <BstnName> <BstnTyp> [<BstnAnwendung>]

Gedacht für das erstellen von die OpenXML-Darstellung von Textkonserven in CTV-Bausteinen die nur eine RTF-Darstellung beinhalten. Lädt und speichert ein TAA-Baustein. Bei CTV-Bausteinen wird dann implizit das OpenXML generiert. Hierdurch wird es beim speichern mit erstellt und braucht diese OpenXML-Darstellung von der Textkonserven das nächste Mal nicht erstellt zu werden. Dies hat vor allem Vorteil beim generieren von Resourcen.

SERVER

 SERVER START|STOP

Startet (START) bzw. beendet (STOP) den TAA Server. Wenn nur der TAA-Server gestartet/beendet werden soll dann sollte man die Option -e0 auf der Befehlszeile mit übergeben. Sonst meldet der iedge.exe sich bei der EDB an und wird auch der TAA-Logon gestartet.

DB Import, Export, Delete, Undelete und ListUsages

Folgende IEdge Befehle sind Webservice-spezifisch:

 DBIMPORT <Dateiname> <Name> <Typ> [<Datenbankname>]
 DBEXPORT <Dateiname> <Name> <Typ> [<Datenbankname>]
 DBDELETE -permanent[0|1] <Name> <Typ> [<Datenbankname>]
 DBUNDELETE <Name> <Typ> [<Datenbankname>]
 DBLISTUSAGES <Dateiname> <Name> <Typ> [<Datenbankname>]
 

Datenbankname ist optional. Wenn nicht angegeben, wird die aktuelle PublEdge-Datenbank aus der Registry genutzt.

Folgendes Beispiel migriert einen einfachen Typ (SimpleType) „USERNAME“ von einer Datenbank „DB_A“ in die andere „DB_B“. Hierbei ist „DB_A“ die aktuelle PublEdge-Datenbank:

 DBEXPORT "C:\TMP\Export.sql" USERNAME WGTS
 DBIMPORT "C:\TMP\Export.sql" USERNAME WGTS DB_B
 

Beispiel für ein logisches Löschen eines komplexen Typs:

 DBDELETE -permanent0 AS-WGTC-DOKUMENT WGTC

Das logische Löschen eines komplexen Typs kann man mit folgendem DBUNDELETE Befehl rückgängig machen:

 DBUNDELETE AS-WGTC-DOKUMENT WGTC
Permanent gelöschte Webkomponenten können nicht mit DBUNDELETE wiederhergestellt werden!

Bei dem permanenten Löschen eines Webdatentyps wird in Rochade auf Verwendungen überprüft. Falls der zu löschende Webdatentyp noch in anderen Webkomponenten verwendet wird, wird der Löschvorgang unterbunden.

Mit dem IEdge Befehl DBLISTUSAGES ist es möglich, die Verwendungen eines Webdatentyps in einer CSV-Tabelle aufzulisten. Damit soll das Auffinden der Verwendungen erleichtert werden.

 DBLISTUSAGES "C:\TMP\UsernameUsages.csv" USERNAME WGTS
 
 

XMLImport und XMLExport

Folgende IEdge Befehle sind Webservice-spezifisch:

 XMLIMPORT <Dateiname> <Name> <Typ> [<Datenbankname>]
 XMLEXPORT <Dateiname> <Name> <Typ> [<Datenbankname>]
 
Die Befehle XMLIMPORT und XMLEXPORT sind ausschließlich für die Rochade-Historisierung vorgesehen. Bitte verwenden Sie für das „Schieben“ zwischen den Stufen die Befehle DBEXPORT und DBIMPORT .

WEBGEN

 WEBGEN <Dateiname> <Name> <Typ>
 

Mit diesem Befehl veranlassen Sie, dass IEDGE generische Webservices (WGSR) und Webdatentypen (WGTS, WGTC und WGTL) in eine WSDL/XSD Datei generiert.

Die Webservices werden vollständig mitsamt allen notwendigen Webdatentypen (sofern vorhanden) in eine einzelne WSDL Datei generiert. Die Webdatentypen werden dagegen ohne Einbeziehung weiterer Webdatentypen (z.B. wenn ein Webdatentyp ein Verweis auf einen anderen Webdatentyp beinhaltet) einzeln in eine XSD Datei generiert.

Cache von Rochadedaten bereinigen: RefreshEdbCache

Es besteht die Möglichkeit, Daten, die aus Rochade gelesen werden, in Cache-Dateien abzulegen, um die Anzahl der Rochadezugriffe und die damit verbundene Dauer zu minimieren. I.d.R. werden die Cache-Dateien angelegt, wenn sie benötigt werden, und neu erstellt, wenn die angegebene Ablaufzeit erreicht ist.

Es kann jedoch sein, dass bekannt ist, dass Daten sich geändert haben, und deshalb die Cache-Dateien zwingend bereinigt werden sollten. Dafür stellt Iedge die Funktion RefreshEdbCache zur Verfügung. 6)

REFRESHEDBCACHE <Typ> [Name] [-updatenow] [-create] [-force]
  • Typ: Vierstellige Bezeichnung des Typs gemäß Bausteintabelle. Muss angegeben werden.
    Hier sind zwei spezielle Angaben möglich:
    TABLES bedeutet, dass der Cache für alle in Rochade gespeicherten Bausteine, die als Tabelle verwaltet werden (mdb: Tablemode 1), aktualisiert werden soll.
    ALL bedeutet, dass alle existierenden Cache-Dateien aktualisiert werden sollen.

  • Name: Name des Objekts. Optional (Default: *), bzw. für Tabellen irrelevant.
  • -updatenow: Normalerweise werden die Cache-Dateien mit dieser Prozedur lediglich gelöscht, wodurch erreicht wrid, dass sie neu angelegt werden, sobald sie tatsächlich wieder gebraucht werden. Mit dieser Option kann erzwungen werden, dass bestehende Cache-Dateien nicht nur gelöscht, sondern sofort neu erstellt werden.
  • -create: Mit dieser Option kann erzwungen werden, dass Cache-Dateien auch für Objekte bzw. Tabellen erstellt werden, für die bisher kein Cache vorhanden war. Die Option ist nicht zulässig für Typen, die nicht als Tabelle verwaltet werden, wenn als Name nichts oder „*“ angegeben ist.
  • -force: Nur relevant für die Aktualisierung von Cache-Dateien für einzelne Objekte mit der Option -updatenow oder -create. Normalerweise wird vor dem Update der Cache-Datei das Änderungsdatum des Objekts geprüft, und ein Update nur vorgenommen, wenn das Änderungsdatum neuer ist als das Datum der Cache-Datei. Mit der Option -force kann erzwungen werden, das Änderungsdatum zu igorieren und die Cache-Datei auf jeden Fall neu zu erstellen.

Besonderheiten beim Update einzelner Objekte:

Das Caching für einzelne Objekte ist nicht für alle Objekttypen unterstützt.

  • Bei der Angabe des Namens werden * unterstützt, z.B. „SNA*“.
  • Bei der Beschaffung der Liste von Objekten (bei „*“ im Namen) wird je nach Pfad-Angabe in der mdb die Anwendung berücksichtigt. Deshalb bitte ggf. Iedge mit der Option -a aufrufen.
  • Wenn nicht die Option -force angegeben ist, wird bei der Prüfung, ob ein Update des Caches notwendig ist, ermittelt, ob das Datum der aktuell in Rochade gespeicherten Version aktueller ist als der Datum der Cache-Datei. Wenn dies der Fall ist, wird der Update auch dann ausgeführt, wenn der Cache-Zeitraum noch nicht abgelaufen ist.
  • Wenn der Cache-Zeitraum abgelaufen ist, die in Rochade gespeicherte Version aber nicht neuer ist, wird das Objekt nicht neu geladen, sondern lediglich das Änderungsdatum der Cache-Datei(en) angepasst. Dies natürlich nur, wenn nicht die Option -force angegeben ist.

Beispiel

Beispiel für einen Iedge-Aufruf:

Iedge -lo iedge.log RefreshEdbCache TABLES -updatenow
Iedge -lo iedge.log -ex iedgecmd.rsp 

Beispiel für eine Script-Datei: (Vor der Ausführung sind die existierenden Caches abgelaufen; für TWPGCACH gibte es eine neuere Version in Rochade.)

Aufruf:

IEdge -lo iedge.log -lr iedge.res -a TAA -ex iedgecmd.rsp

Script:

#  neu wenn nicht existiert oder obsolet:
RefreshEdbCache mldg twpgcach -updatenow -create
#  immer neu:
RefreshEdbCache mldg twpgleer -updatenow -force -create
#  neu wenn existiert und obsolet:
RefreshEdbCache mldg snpraemie -updatenow 
#  angelegen wenn nicht existiert:
RefreshEdbCache mldg snprodukt -create
#  löschen wenn obsolet:
RefreshEdbCache mldg snpraemie1
RefreshEdbCache mldg snrisiko 

RefreshEdbCache mldg zz* 

RefreshEdbCache modl pg-efun-formate -create

Erstelltes Logfile:

USER
00:00:04.580802: Iedge registered 00:00:04.580922: Start processing command: RefreshEdbCache mldg twpgcach -updatenow -create 00:00:33.894800: Finished processing command: RefreshEdbCache mldg twpgcach -updatenow -create 00:00:33.894947: Start processing command: RefreshEdbCache mldg twpgleer -updatenow -force -create 00:00:36.081160: Finished processing command: RefreshEdbCache mldg twpgleer -updatenow -force -create 00:00:36.081306: Start processing command: RefreshEdbCache mldg snpraemie -updatenow 00:00:36.147883: Finished processing command: RefreshEdbCache mldg snpraemie -updatenow 00:00:36.148022: Start processing command: RefreshEdbCache mldg snprodukt -create 00:00:36.231876: Finished processing command: RefreshEdbCache mldg snprodukt -create 00:00:36.232008: Start processing command: RefreshEdbCache mldg snpraemie1 00:00:36.305726: Finished processing command: RefreshEdbCache mldg snpraemie1 00:00:36.305867: Start processing command: RefreshEdbCache mldg snrisiko 00:00:36.369576: Finished processing command: RefreshEdbCache mldg snrisiko 00:00:36.369711: Start processing command: RefreshEdbCache mldg zz* 00:00:38.950711: Finished processing command: RefreshEdbCache mldg zz* 00:00:38.950937: Start processing command: RefreshEdbCache modl pg-efun-formate -create 00:00:38.996353: iedObjectsCache: No caching support for Type MODL 00:00:38.996577: Finished processing command: RefreshEdbCache modl pg-efun-formate -create

Erstellte Ergebnisdatei:

USER
# ResultReport Start D:\work\test>type iedge.res # ResultReport Start # 0;TWPGCACH;MLDG;TAA;;RefreshEdbCache: Update;Succeeded; # 0;TWPGLEER;MLDG;TAA;;RefreshEdbCache: Update;Succeeded; # 0;SNPRAEMIE;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;SNPRODUKT;MLDG;TAA;;RefreshEdbCache: SetFileTime;Succeeded; # 0;SNPRAEMIE1;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;SNRISIKO;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZDOMAENE;MLDG;TAA;;RefreshEdbCache: SetFileTime;Succeeded; # 0;ZZGEV;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZINET001;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZSTAB;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZTAACTV;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZTAAGEN;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZTAAHLP;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZTAAIM1;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZTAAIM2;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZTAAOM1;MLDG;TAA;;RefreshEdbCache: SetFileTime;Succeeded; # 0;ZZTAASTAT;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZTAAVAL;MLDG;TAA;;RefreshEdbCache: Skipped;; # 0;ZZXML001;MLDG;TAA;;RefreshEdbCache: Skipped;; # ResultReport End # ResultReport End

  • Skipped bedeutet, dass weder eine Cachedatei angelegt wurde noch eine Datei inhaltlich oder vom Datum hier verändert wurde, weil dies aufgrund der Optionen nicht notwendig war.
  • Update bedeutet, der Inhalt der Cache-Datei wurde neu beschafft, …
  • Create, dass die Datei neu angelegt wurde.
  • Clear bedeutet, die Cachedatei wurde entfernt da obsolet; eine neue Cachedatei wird erst beim nächsten Zugriff auf das Objekt erstellt.
  • SetFileTime besagt, dass nur das Änderungsdatum angepasst wurde.

Ergebnis jedes Auftrags außer Skipped ist entweder Succeeded oder Failed.

Unbekannte Befehle

Wenn bei einem InterfEdge-Aufruf der Befehl nicht erkannt wird, wird versucht, eine Rochadeprozedur mit dem Namen „<roprocpref><befehl>“ auszuführen. Die Angabe <roprocpref> ist ein Companysetting und könnte bspw. den Wert „VB_TAA_“ haben. Die Angabe <befehl> ist dann der nicht erkannte Befehl, bspw. „EDB_GET-ROINFO“. Grundsätzlich wird zunächst ein Argument übergeben, und zwar <logfile>, das aus der Option -lo stammt. Anschließend werden bis zu acht weitere Argumente aus der Kommandozeile übernommen und übergeben. Wenn die Prozedur nicht ausgeführt werden kann, wird dies als unerkannter Befehl gemeldet. Wenn die Prozedur ausgeführt werden kann, wird jeder Rückkehrwert abweichend von „T“ als Fehler gemeldet.

1)
intern genutzte Optionen sind hier nicht dokumentiert
2)
intern genutzte Befehle sind u.U. nicht oder nicht vollständig beschrieben
3) , 6)
ab TAA 10.00
4)
10.01
5)
ab V9.05
faq:syntax:iedge · Zuletzt geändert: 22.02.2024 10:45

Copyright © 1992-2024 TeamWiSE Gesellschaft für Softwaretechnik mbH         Adressen |  Kontakt |  AGB |  Datenschutzerklärung |  Impressum