Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Hier finden Sie diverse nützliche IF-Abfragen für Container und Bänder


Inhalt


Objekte ausblenden, abhängig von einem anderen Feld

, ausblenden

Wir wollen ein Textfeld ausblenden wenn ein bestimmes Feld leer ist.

In unserem Beispiel den Titel
Ihre Referenznr.

Wählen Sie im Editor das gewünschte Objekt.

In der Style-Lasche fügen eine Expression für die Eigenschaft visible hinzu.

Im Textblock Formula (roter Kasten) fügen wir nun folgende IF-Expression hinzu

=IF(ISBLANK([eq_ref_number]);FALSE();TRUE())

Der Feldname eq_ref_number (gelb markiert im Bild) muss natürlich durch Ihren benutzten Feldnamen ersetzt werden.



Text anzeigen, abhängig vom Status des Dokumentes

Image Added

Wir wollen einen Text anzeigen, der passend zum aktuellen Status des Dokumentes ist,
wie z.B: Entwurf, Angebot, Auftrag, Erledigt, Abgebrochen ...
oder in unserem Fall, zuerst eine Packliste, woraus dann der Lieferschein wird.




Image Added

Wir wählen das gewünschte Textfeld aus.
Der Inhalt im Attribut value ist hierbei irrelevant, denn dieser wird später dynamisch ersetzt.

Image Added

Wir fügen eine Expression für den Attribut value hinzu.






Image Added

Der Titel des Lieferscheins, bezogen auf den Status, wird also wie folgt als Formel verwendet:

=IF([state]="done");"Lieferschein " & [name];"Packliste " & [name])

Erklärung: =WENN(Logik);DANN "Text " & [ Feldname ]; ANSONTEN "Text " &  [ Feldname ])

Je nach Dokumententyp sind noch weitere States verfügbar, wie z.B. anhand des Lieferscheins:

  • [ draft ] - Entwurf
  • [ cancel ] - Abgebrochen
  • [ waiting ] - Wartet auf anderen Vorgang
  • [ confirmed ] - Warten auf Verfügbarkeit
  • [ partially_available ] - Teilweise verfügbar
  • [ assigned ] - Bereit zur Lieferung
  • [ done ] - Geliefert

Es besteht auch die Möglichkeit mehrere States in eine Abfrage zu packen. Dies würde wie folgt aussehen

=IF(OR ([state]="draft";[state]="sent");"Angebot " & [name];"Auftrag " & [name])

Dies ist die Definition für den Titel der Angebots-Reports. Somit wird "Angebot " betitelt, wenn der Status auf Entwurf ODER Status Angebot gesendet steht, einfach nur als "Angebot" gedruckt. Alle anderen Fälle werden als "Auftrag" gedruckt. Der Ausdruck OR definiert in der Formel, das eines der beiden logischen States vorhanden sein muss.

??? funktioniert nicht ???

  • Prüfen Sie ob das Feld state für den Report verfügbar ist.
    Ggf. müssen Sie den Namen für das state zu Ihrem Fieldname umbenennen.
  • Prüfen Sie ob die Klammern & Semikolons an den richtigen Stellen stehen und die Klammern auch korrekt alle wieder geschlossen wurden.




Text anzeigen, abhängig vom Adress-Typ

Diese Abfrage wird demnächst hier näher erläutert...



Wenn Wert größer 0 ist

Image Added

Folgende IF-Abfrage verwenden wir um nur dann (z.B. Rabatte) anzuzeigen wenn der Wert größer 0 ist.

Image Added

Bei dem Rabattwert auf Zeilenebene müssen wir wieder für das Attribut value eine Expression hinzufügen

Image Added

Die Formel für die IF-Abfrage ist hierbei folgende:

=IF([discount]>0;TRUE();FALSE())

Der Wert discount ist hierbei der Feldname und muss natürlich angepasst werden.