QlikTip #6: Null-Values in Listboxen ausblenden

Ich habe vor einigen Tagen die Frage erhalten, wie man eigentlich Null-Values in QlikView ausblenden kann.

Von folgenden Demo-Daten bin ich gestartet:

Demo-Daten

Demo-Daten

Ziel ist es also eine Listbox mit Feld „b“ zu erstellen, wo die Inhalte von Feld „a“ in Zeile 2 und 9 nicht angezeigt werden.

Hmm, ja: es gibt keine Option in QlikView bei den Eigenschaften der Listbox, wie man Null-Values ausblenden kann, die Lösung war dennoch relativ schnell gefunden:

Nachdem sich in einer Listbox auch eine Formel für die Anzeige der Werte eingeben läßt, könnte man ja mit IsNull die Werte rausfiltern, mein erster Ansatz war daher folgende Formel für die Listbox:

if(not IsNull(b), b)

Dies funktioniert jedoch leider nicht; offensichtlich werden die Werte in meinem Beispiel von QlikView nicht als Null-Values sondern nur als Empty-Strings interpretiert, daher habe ich die Formel etwas erweitert und schon funktioniert es:

if(not Isnull(b) and b <> '', b)

Achtung:
Ich wurde in einem Kommentar zu diesem Artikel richtig darauf aufmerksam gemacht, dass 64bit-Rechner so Ihre liebe Mühe und Probleme mit IsNull() haben, daher ist die beste Variante dies abzufangen wie folgt (dies funktioniert dann auf 32bit und auf 64bit Maschinen):

 
if(LEN(TRIM(b)) > 0, b)

Fazit:

Die Überprüfung auf Null-Values UND Empty-Strings scheint daher eine recht gute und zuverlässige Methode zu sein.
Die Überprüfung auf die Länge des getrimmten Strings scheint daher eine zuverlässige Methode zu sein.

P.S.: Sollte es eine einfachere Methode, die ich übersehen habe, dann freue ich mich über jeden Hinweis … 😉

Bookmark and Share

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

6 Comments

  1. Peter
    Posted September 30, 2009 at 22:19 | Permalink

    LEN(TRIM(b)) = 0 sollte dasselbe bewirken und funzt auch auf 64-bit-Rechnern (die haben sonst Probleme mit IsNull().
    Peter

  2. Posted October 1, 2009 at 07:43 | Permalink

    Hallo Peter,

    vielen Dank für den Hinweis; hatte diese Problematik auf den 64bit-Rechnern ganz übersehen, obwohl ich selber schon darüber gestolpert bin … werde das dementsprechend im Artikel ausbessern …

    Ja, es wird Zeit, dass ich endlich auch meinen Laptop auf 64bit umstelle :))

    Schöne Grüsse

    Stefan

  3. Guido
    Posted October 16, 2009 at 11:43 | Permalink

    Habt ihr vielleicht ein paar technische Erklärung, was die Null()-Problematik auf 64bit angeht? Ich lese davon heute zum ersten Mal; ich würde gerne abschätzen, ob es hier Handlungsbedarf gibt…

    Gruß aus dem Norden
    Gudio

  4. Mohammed
    Posted December 14, 2009 at 13:45 | Permalink

    bei mir hat keine von den Formeln funktioniert, könnte daran vielleicht liegen dass ich kein Listbox habe sindern Tabellediagramm. gibt es vielleicht eine andere Lösung dass ich Zeilen ich die T-Diag nicht anzeigen lasse.
    Danke und Viele Grüße
    Mo

  5. Martin
    Posted September 28, 2011 at 08:38 | Permalink

    Hallo

    ich hätte auch Interesse an einer Lösung für ein Diagramm (Pivottabelle).
    Es soll ein Wert der im Umsatz 0 ist nicht angezeigt werden und somit die dahinter stehende Stückzahl mitgezählt werden.

    Danke und viele Grüße
    MW