QlikTip #3: Überprüfen, ob ein Feld existiert

Wenn man in Lade-Skripten automatisch alle Felder einer Tabelle oder einer QVD-Datei laden will (also typische SELECT * FROM … Szenarien), ist es für weitere Skripts oft notwendig zu wissen, ob ein Feld in einer Tabelle existiert oder nicht.

Folgender Beispielcode demonstriert, wie dies einfach zu machen ist:

Customers:
LOAD * INLINE [
    CustomerId, PostalCode, City
    1, 1010, Vienna
    2, 8020, Graz
    3, 6020, Innsbruck
    4, 9020, Klagenfurt
];

// Nun wollen wir wissen, ob das Feld 'Country' in der Tabelle 'Customers' existiert
LET X = FieldNumber('Country','Customers');

if $(X) = 0 then
    // field does not exist
    TRACE field 'country' does not exist;
        /*
        add your code here ...
        */
else
    // field exists
    TRACE field 'country' exists;
         /*
        add your code here ...
        */
end if

Erläuterung:
Die Funktion FieldNumber gibt 0 retour, wenn ein Feld in einer Tabelle nicht funktioniert, so lässt sich leicht abfragen, ob ein Feld existiert oder nicht.

Bookmark and Share

and tagged , , , . Bookmark the permalink. Both comments and trackbacks are currently closed.

2 Comments