Aggregates
Bedingte Hervorhebung
Es besteht die Möglichkeit, das Erscheinungsbild des "Text"-Objekts je nach den gegebenen Bedingungen zu ändern. Zum Beispiel kann ein Objekt rot hervorgehoben werden, wenn es einen negativen Wert hat. Diese Funktion wird "bedingte Hervorhebung" genannt. Um sie einzurichten, wählen Sie das "Text"-Objekt aus und klicken Sie auf die
Schaltfläche in der "Text"-Symbolleiste. Sie sehen das folgende Dialogfenster:

Es ist möglich, eine oder mehrere Bedingungen zu definieren und den Stil für jede Bedingung festzulegen. Der Stil kann eine oder mehrere Einstellungen enthalten:
- Rahmen
- Füllung
- Schriftart
- Sichtbarkeit des Objekts
Um eine neue Bedingung zu erstellen, klicken Sie auf die Schaltfläche "Hinzufügen". Sie sehen einen Ausdrucks-Editor. Hier ist es möglich, jeden Ausdruck zu schreiben, der ein boolesches Ergebnis zurückgibt. In vielen Fällen verwenden Sie die Variable "Wert", die den aktuell druckenden Wert enthält.
Sie können angeben, welche Einstellungen geändert werden müssen, wenn die Bedingung erfüllt ist. Dazu aktivieren Sie die benötigte Einstellung mit dem Kontrollkästchen.
Betrachten wir das folgende Beispiel: Wir haben ein "Text"-Objekt, in dem wir die Anzahl der Produkte auf Lager drucken:
[Produkte."EinheitenImLager"]
Wir möchten das Objekt rot färben, wenn die Anzahl der Produkte = 0 ist. Dazu erstellen wir die folgende Bedingung:
Wert = 0
In diesem Fall haben wir die Variable "Wert" verwendet, die einen gedruckten Wert hat. Wenn es mehrere Ausdrücke in einem Objekt gibt, hat diese Variable den Wert des letzten Ausdrucks. Anstelle von "Wert" können Sie eine Daten-Spalte verwenden:
<Produkte."EinheitenImLager"> = 0
Konfigurieren Sie den Stil für die gegebene Bedingung so, dass nur die Füllung verwendet werden kann, und wählen Sie die rote Farbe:

Beim Drucken eines Objekts, das einen Nullwert hat, wird es rot sein. Lassen Sie uns unser Beispiel komplexer gestalten, wir fügen eine weitere Bedingung hinzu. Wenn die Einheiten im Lager weniger als 10 sind, muss es gelb gedruckt werden. Dazu öffnen Sie den Bedingungs-Editor und klicken auf die Schaltfläche "Hinzufügen". Die zweite Bedingung wird wie folgt aussehen:
Wert < 10
In Fällen, in denen mehrere Bedingungen angegeben sind, überprüft FastReport alle Bedingungen, beginnend mit der ersten. Wenn eine bestimmte Bedingung erfüllt ist, wendet FastReport die Stil-Einstellungen auf das Objekt an, und der Prozess stoppt. Es ist wichtig, die Bedingungen in der richtigen Reihenfolge anzuordnen. Die Reihenfolge, die wir in diesem Beispiel gesehen haben, ist korrekt:
1. Wert = 0
2. Wert < 10
Wenn wir die Bedingungen vertauschen, wird die Hervorhebung falsch funktionieren.
1. Wert < 10
2. Wert = 0
In diesem Fall wird "Wert = 0" nicht ausgeführt, da die erste Bedingung erfüllt ist, wenn der Wert null ist. Um die Reihenfolge der Bedingungen zu ändern, verwenden Sie die
und
Schaltflächen.
Färbung alternierender Datenzeilen
Mit der bedingten Hervorhebung ist es einfach, Berichte mit einem "gestreiften" Aussehen zu erstellen, bei denen die Datenzeilen abwechselnd gefärbt sind. Um etwas Aufwand zu sparen, verwenden wir das Beispiel "Kundenliste", das wir zuvor entworfen haben.
Entfernen Sie alle "Text"-Objekte aus dem "MasterData"-Band. Platzieren Sie ein "Text"-Objekt im Datenband und strecken Sie es, um fast den gesamten Platz des Bands abzudecken:

Dieses Objekt wird seine Farbe abhängig von der Zeilennummer der Daten ändern. Wählen Sie das Objekt aus und setzen Sie den folgenden bedingten Ausdruck im Hervorhebungs-Tab des Objekt-Editors:
<Zeile> mod 2 = 1
Wählen Sie ein Grau als Farbe für die Hervorhebung, nicht zu gesättigt, sondern näher an Weiß. Jetzt können die anderen Objekte über dem ersten leeren "Text"-Objekt im Datenband hinzugefügt werden:

In der Vorschau erzeugt der Bericht diese Ausgabe:
