[gelöst] UND/Oder Funktion beim Typ BOOL

11. August 2009 10:21

Wie bekommt man eine Und- und eine Oderfunktion beim Typ BOOL hin.

Z.B. möchte ich 2 gl. Variablen des Typ BOOL miteinander verknüpfen, zum einen als UND und zum anderen als ODER Funktion.
Zuletzt geändert von misterelektro1981 am 11. August 2009 14:48, insgesamt 3-mal geändert.

Re: UND/Oder Funktion beim Typ BOOL

11. August 2009 10:23

a and b, a or b?¿

Re: UND/Oder Funktion beim Typ BOOL

11. August 2009 10:50

Das dachte ich ja auch, aber es funktioniert nicht.

Mein Code:
IF Inventory or UnitPrice then
CurrReport.SHOWOUTPUT(false);

Darauf kommt die Fehlermeldung, eine Typenkonvertierung .... Decimal OR Boolean

Re: UND/Oder Funktion beim Typ BOOL

11. August 2009 10:55

Das liegt dann daran, dass Inventory kein bool ist :wink:
Du bist grad nicht zufällig auf der Artikeltabelle? Da ist Inventory ein Feld, und das hat Vorrang ...

Re: UND/Oder Funktion beim Typ BOOL

11. August 2009 10:57

Du hast Recht, das darf so nicht sein. Ich bin aber auch selber Schuld, da meine gl. Variable Inventory2 heißt.

Danke!!!

Re: [gelöst] UND/Oder Funktion beim Typ BOOL

11. August 2009 11:01

Vielleicht gibst Du der glob. Variablen einen sprechenderen Namen, z. B. IsInventory (wenn das zu Deinem Kontext passt)?
Dann ist der Code lesbarer und auch jemand anderes kann es leichter verstehen, was Du an dieser Stelle prüfen willst.

Re: UND/Oder Funktion beim Typ BOOL

11. August 2009 11:19

Ich hab glaub ich einen Denkfehler.

In einem Testreport habe ich 4 Header und 4 Body, die ich über Checkboxen ausdrucken möchte.

Den ersten Header und Body möchte ich nur dann ausgeben, falls keine Checkbox aktiv ist, dies funktioniert auch über eine Oder Funktion.

Den Header2 und BOdy2 möchte ich nur dann ausgeben, falls Checkbox1 gesetzt und Checkbox2 nicht gesetzt ist.
Mein Code:
If UnitPrice = TRUE and Inventory2 = false then
CurrReport.SHOWOUTPUT;

Leider tauchen diese Sections immer auf.

Beim Header4 und Body4 möchte ich, das dieser nur auftaucht, falls beide Checkboxen gesetzt sind.
Mein Code:
If Inventory2 = TRUE and UnitPrice = TRUE then
CurrReport.SHOWOUTPUT;

Hier tauchen die Sections auch immer auf.

Re: UND/Oder Funktion beim Typ BOOL

11. August 2009 11:23

Du hast die Bedingung hinter ShowOutput vergessen. Einfacher geht´s so:
CurrReport.ShowOutput(UnitPrice and(not Inventory2))

Re: UND/Oder Funktion beim Typ BOOL

11. August 2009 14:48

Ja so klappt alles was ich vorhatte.