Prüfen ob Tabelle existiert

Wann immer man mit QlikView arbeitet, kann es notwendig sein, dass man Daten aus einer Tabelle abfragen muss. Vielleicht ist es notwendig, Daten aus einen bestimmten Feld zu holen, oder aber eine ganze Tabelle zu verwenden. Was kann man also tun, um im Load Script zu überprüfen, ob eine bestimmte Tabelle existiert oder nicht? 

 

Die zuverlässigste und einfachste Möglichkeit, um zu prüfen ob eine Tabelle existiert, lässt sich mit der folgenden LET Anweisung realisieren: 

//Die Variable bekommt den Wert true (=-1) oder false (0) 

LET a = IsNum(NoOfRows('TABLE_NAME')); 

Diese Anweisung liefert ein true (= -1), wenn die Tabelle existiert. Existiert die Tabelle nicht, wird stattdessen ein false (= 0)zurückgegeben. Diese Anweisung kann man nun problemlos mit einer IF-Abfrage verwenden. Das könnte z.B. wie folgt aussehen:

if (IsNum(NoOfRows('Dummy0'))) then  

// führe diese Aufgabe aus wenn die Tabelle nicht existiert

end if 

if (not IsNum(NoOfRows('Dummy0'))) then 

// erledige diese Aufgabe wenn die Tabelle existiert

end if 


Mit dieser IF Anweisung werden in QlikView bestimmte Aufgaben ausgeführt, je nachdem ob die Tabelle existiert oder nicht. Die IF Abfrage kann mit beliebigen weiteren Kriterien oder Aufgaben versehen werden, die ausgeführt werden, je nachdem ob ein Feld existiert oder nicht. Ansonsten lässt sich die LET Anweisung aber auch alleine bzw. in Kombination mit anderen Anweisungen im Load Script verwenden, je nachdem was man mit der Abfrage erledigen möchte.