+1 800 256 3608 (toll-free in North America) or +49 7531 90 60 10| service@combit.com

Null-Werte nicht andrucken


(Daniel Hoffmann) #1

Hallo Zusammen,

wir stellen derzeit auf LL um und daher bin ich momentan dabei, mich in die ganze Sache einzuarbeiten. Viele Fragen stellen sich mir nun, welche ich hoffentlich nach und nach beantwortet bekomme.

Zunächst möchte ich wissen, wie ich in einer Rechnung oder Angebot Null-Werte ausblenden lassen kann. Zum Beispiel haben wir Kunden, die generell einen Rabatt gewährt bekommen, jedoch auch Kunden , die keinen Rabbatt erhalten. Bei Kunden, die keinen Rabatt erhalten, soll auf der Rechnung die Spalte “Rabat” komplett ausgeblendet werden (Überschrift und die Zelle Rabatt aus der SQL Datenbank). Mit der Funktion IfNullOrEmpty komme ich leider nicht weiter. Wer kann mir dabei helfen.

Vielen Dank im Voraus

Daniel Hoffmann


(Daniel Hoffmann) #2

Hat keiner eine Lösung???


(Daniel Hoffmann) #3

Schade, dass mir keiner Helfen konnte/wollte. Ich habe mich jetzt damit beholfen, dass ich “Nullen” in weiß "drucke. Das ist zwar nicht die feinste Art, jedoch muss ich auch voran kommen.


(Günther Schwarze) #4

Hoppla, nicht so schnell, wir sind alle am Arbeiten ;-).

Das Problem könnte sein, dass die Frage nicht 100%ig verständlich formuliert war. Wenn Du mit Null eine “0” meinst, nicht das Datenbank-NULL, könnte sowas wie

Cond(Value<>0, Value)

helfen. Wenn Du die Spalte ganz ausblenden willst, kannst Du eine Formel für die Spaltenbreite verwenden a la

Cond(Value<>0, …, 0)

Wenn Dir das nicht hilft beschreib doch mal genauer, was Du brauchst.

G.


(Daniel Hoffmann) #5

Hallo Günther,

erstmal danke für die Antwort.

Wenn ich in Feld die Zahl “0” habe, ist es kein Problem. Wenn ich jedoch in der Datenbank “NULL” im Feld stehen habe, wird dies zwar auch als “0” an LL weitergegeben, jedoch kann ich hierbei nicht so verfahren, wie bei der Zahl “0” selbst.

Bei uns steht definitiv der Wert “NULL” im Datenbankfeld und dieses muss ich irgendwie ausblenden, wenn kein Wert in dem Feld ist, bzw. in der Spalte.

Ich hoffe die Infos helfen weiter.

Daniel


(Günther Schwarze) #6

Hm, 0 und NULL sind bei LL zwei Paar Schuhe (wenn Deine Anwendung das unterstützt). Per IsNull(…) kannst Du auf NULL checken, per =0 auf 0. Insofern sollte eine Kombination aus den beiden helfen. Da musst Du etwas mehr Kontext spendieren, wenn es nicht klappen will :).


(Daniel Hoffmann) #7

Hallo Günther,

gut, dann erkläre ich Dir das ins genauste Detail:

Datenbank: db_info
Tabelle: Kosten
Spaltenname: Nebenkosten
Datentyp money
NULL-Wert zugelassen: JA

Jetzt habe ich eine Zeile, in der KEINE Nebenkosten eingetragen sind. Demnach ist in dem Feld Nebenkosten das Wort “NULL”. Wenn ich in LL die Variable dieses Feldes, also “Nebenkosten” als Textfeld hinzufüge, steht da nicht “NULL”, sondern “0”. Ich weiß aber, dass ich nicht mit “0”, sondern mit “NULL” arbeiten muss. Und genau da liegt ja das Problem. Mit “Cond(Nebenkosten<>0,Nebenkosten)” war ich schon, bringt aber nix, da die “0” weiterhin angezeigt wird.

Daniel


(Günther Schwarze) #8

Wenn der Datenbankinhalt NULL ist muss Deine Zugriffsschicht “(NULL)” übergeben, was dann in LL als NULL-Wert identifiziert wird. Wenn da als Text “NULL” steht macht die Datenübergabe was falsch.


(Daniel Hoffmann) #9

Also wie ich bereits gesagt habe, wird der “NULL”-Wert als “0” an List&Label übergeben. Aber ich kann damit dennoch nicht arbeiten. Mit cond(Variable<>0,Variable) bringt er mir weiterhin die 0. Und da liegt ja das Problem.