DiffLouAndWF

Top  Previous  Next

 

Differenz vom Workfile und LOU-Dateien erzeugen.

Mit dieser Funktion kann festgestellt werden, ob alle Objekte im Workfile noch den Inhalten der LOU-Dateien entsprechen. Dazu werden standardmäßig alle LOU-Dateien (mit der Endung .DAT) aus dem Verzeichnis geladen, das durch die Umgebungsvariable GDS$DATA angegeben ist. Alle Objekte aus den LOU-Dateien werden in einem Sonderplan (mit den Namen „Spezialplan“) neu angelegt, und dann auf Entsprechungen im Workfile untersucht. Haben alle Objekte Entsprechungen im Workfile, ist der Sonderplan danach leer. Sind einige Objekte ohne Entsprechung, bleiben sie im Sonderplan bestehen. Die Objekte im Workfile bekommen einen Schlüssel zugewiesen (Standardwert: 40.000), wenn sie eine Entsprechung im Sonderplan haben. Die Objekte, die im Sonderplan verbleiben, bekommen den Schlüsselwert 40.001 zugewiesen.

Die Schlüsselwerte können auch selbst definiert werden. Um einen neuen Schlüssel zu verwenden, muß mit dem Parameter KEY/nnn ein Schlüsselwert angegeben werden, der den Objekten im Workfile zugewiesen wird. Die Objekte im Sonderplan bekommen dann automatisch einen neuen Schlüssel, der um Eins höher ist als der Schlüsselwert für die Objekte im Workfile.

Anstatt automatisch alle Dateien aus dem Verzeichnis GDS$DATA zu laden, kann mit dem Parameter FILE/sss auch eine einzelne Datei angegeben werden.

Voraussetzung

Datenbank muß geöffnet sein.

Alle Pläne müssen selektiert sein.

Der Schalter /CHECK muß mit angegeben werden.

Parameter

/CHECK

Hiermit wird der Test eingeschaltet, ansonsten erscheint nur die Kurzhilfe.

File/sss

Mit diesem Parameter kann auch eine einzelne Datei angegeben werden. Die Datei braucht keine Pfadangaben, weil sie aus dem Verzeichnis GDS$DATA gelesen wird. Wird die Endung .DAT nicht dazugeschrieben, wird sie automatisch hinten angehangen. Es dürfen keine Platzhalter (* oder ?) benutzt werden.

Key/nnn

Schlüssel für die Objekte im Workfile. Die Objekte im Sonderplan bekommen dann automatisch den  Schlüssel nnn+1.

/OBJ

Es wird nur das geöffnete Objekt mit dem Workfile verglichen.

/ALL

Es werden alle Objekte mit dem Workfile verglichen.

Alle nachfolgende Schalter gelten nur in Verbindung mit den Schaltern /OBJ und /ALL:

/DEL

Alle mehrfach vorkommenden Objekte werden gelöscht.

/FORCE    

Es wird ohne Rueckfrage gelöscht.

/SEL        

Es wird eine neue Selektionsmenge mit allen mehrfach vorkommenden eingerichtet.

/PTR        

Die Funktion liefert alle mehrfach vorkommenden mit Pointer darauf zurueck.

/BOTH      

Beide Instanzen eines doppelten Objekts werden bearbeitet. Geht nicht zusammen mit BETTER/ oder /GETBETTER.

BETTER/<name>

Liefert bei ansonsten identischen Objekten dasjenige, bei dem der Wert des Attributs <name> lexikographisch kleiner ist als das des anderen.

/GETBETTER

Liefert bei ansonsten identischen Objekten das ohne zusätzliche Attribute.

IGNORE/<name>

Attribut <name> ignorieren. Das gilt auch dann, wenn nur eines der Objekte das Attribut besitzt.

/NOQTX      

Attribute beim Vergleich ignorieren.

/NOANGLE    

Winkel beim Vergleich von Symbolen ignorieren.

/H

Kurzhilfe

Rückgabewert

Wert

Beschreibung

Zahl

Gibt die Anzahl der gelesenen Dateien aus dem Verzeichnis GDS$DATA an.

Dialog

Wird ein Plan geladen, dessen Namen nicht im Workfile vorkommt, erscheint diese Warnung.

Blattname '...' existiert nicht im Workfile

Es werden trotzdem die Objekte auf Entsprechungen hin untersucht.

Ist das Verzeichnis, das in der Umgebungsvariablen GDS$DATA angeben ist, nicht vorhanden, erscheint folgende Meldung

Verzeichnis existiert nicht.

Die Funktion wird hiernach beendet.

Diese Meldung gibt an, wieviel LOU-Dateien bearbeitet wurden.

Anzahl der bearbeiteten Dateien <Zahl>.

Die Zahl sollte auch mit der Anzahl der LOU-Dateien im entsprechenden Verzeichnis übereinstimmen. Die Funktion DiffLouAndWF liefert diese Zahl auch als Rückgabewert.

Beispiel

Befehl eingeben: DiffLouAndWF key/9000 file/sample.dat

Die Datei SAMPLE.DAT wird mit dem Workfile auf Entsprechungen hin untersucht. Die Schlüssel werden auf 9000 und 9001 gesetzt.

Befehl eingeben: DiffLouAndWF

Es werden alle LOU-Dateien eingelesen und mit dem Workfile untersucht.

Bemerkung

Siehe auch

OpenDatabase [OPE]

SelectAllPlans [SGS]

Select [SEL]