Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

Replace

Der Zusatz Replace kann zu jedem LOAD- oder SELECT-Befehl im Skript hinzugefügt werden, um anzugeben, dass die geladene Tabelle eine andere Tabelle ersetzen soll. Er gibt auch an, dass dieser Befehl in einem partiellen Ladevorgang ausgeführt werden soll. Der Zusatz Replace kann auch in einem Map-Befehl verwendet werden.

Syntax:  

Replace[only][Concatenate[(tablename)]] (loadstatement | selectstatement)


Replace[only]mapstatement

 

Während einer normalen (nicht teilweisen) Skriptausführung funktioniert die Konstruktion ReplaceLOAD wie ein normaler LOAD-Befehl, es wird aber DropTable vorangestellt. Zuerst wird die alte Tabelle gelöscht, dann werden Datensätze generiert und als neue Tabelle gespeichert.

Wenn das Präfix Concatenate verwendet wird oder wenn eine Tabelle mit dem gleichen Feldersatz vorhanden ist, ist dies die zu löschende Tabelle. Andernfalls ist keine zu löschende Tabelle vorhanden, und die Konstruktion ReplaceLOAD ist mit einem normalen LOAD identisch.

Ein teilweises Laden hat das gleiche Ergebnis. Der einzige Unterschied besteht darin, dass immer eine Tabelle aus der vorherigen Skriptausführung zum Löschen vorhanden ist. Mit der Konstruktion ReplaceLOAD wird immer zuerst die alte Tabelle gelöscht und dann eine neue erstellt.

Durch den Replace Map...Using-Befehl wird auch bei der partiellen Ausführung des Skripts ein Mapping durchgeführt.

Argumente:  

Replace-Argumente
Argument Beschreibung
only Ein optionaler Zusatz, der bewirkt, dass der Befehl nur bei der partiellen, nicht aber bei der normalen (nicht partiellen) Ausführung des Skripts berücksichtigt wird.

Beispiele und Ergebnisse:  

Beispiele und Ergebnisse
Beispiel Ergebnis

Tab1:

Replace LOAD * from File1.csv;

Bei der normalen wie bei der partiellen Ausführung des Skripts wird die QlikView-Tabelle Tab1 gelöscht. Danach werden neue Daten aus File1.csv geladen und in Tab1 gespeichert.

Tab1:

Replace only LOAD * from File1.csv;

Bei der normalen Ausführung des Skripts wird dieser Befehl nicht berücksichtigt.

Bei der partiellen Ausführung des Skripts wird jede QlikView-Tabelle mit der Bezeichnung Tab1 gelöscht. Danach werden neue Daten aus File1.csv geladen und in Tab1 gespeichert.

Tab1:

LOAD a,b,c from File1.csv;

Replace LOAD a,b,c from File2.csv;

Bei der normalen Ausführung des Skripts werden die Daten aus der Datei File1.csv zunächst in die QlikView-Tabelle Tab1 eingelesen, aber sofort wieder gelöscht und durch die Daten aus File2.csv ersetzt. Sämtliche Daten aus File1.csv gehen verloren.

Bei der partiellen Ausführung des Skripts wird die gesamte QlikView-Tabelle Tab1 gelöscht. Danach werden die Daten durch die neuen aus File2.csv ersetzt.

Tab1:

LOAD a,b,c from File1.csv;

Replace only LOAD a,b,c from File2.csv;

Bei der normalen Ausführung des Skripts werden die Daten aus File1.csv geladen und in der QlikView-Tabelle Tab1 gespeichert. File2.csv wird nicht berücksichtigt.

Bei der partiellen Ausführung des Skripts wird die gesamte QlikView-Tabelle Tab1 gelöscht. Danach werden die Daten durch die neuen aus File2.csv ersetzt. Sämtliche Daten aus File1.csv gehen verloren.

Weitere Informationen

 

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!

Nehmen Sie am Analyse-Modernisierungsprogramm teil

Remove banner from view

Modernisieren Sie mit dem Analyse-Modernisierungsprogramm, ohne Ihre wertvollen QlikView-Apps zu gefährden. Klicken Sie hier für weitere Informationen oder kontaktieren Sie uns: ampquestions@qlik.com