CrystalReports: Formeln: Unterschied zwischen den Versionen
(→Allgemeines) |
|||
Zeile 10: | Zeile 10: | ||
In einer Formel kann man fast beliebige Berechnungen vornehmen. Ausgegeben wird das '''Ergebnis''' der Berechnung (der Formel). | In einer Formel kann man fast beliebige Berechnungen vornehmen. Ausgegeben wird das '''Ergebnis''' der Berechnung (der Formel). | ||
+ | |||
+ | === Ergebnis === | ||
+ | |||
+ | Ein Formel hat immer '''ein''' Ergebnis (die CrystalReports-Hilfe spricht von "Wert")! Dieses ist abhängig von der Berechnung innerhalb der Formel. | ||
+ | |||
+ | Das Ergebnis ist immer von einem bestimmten '''Datentyp'''! Im Wesentlichen gibt es diese Datentypen: | ||
+ | |||
+ | {| class="wikitable" style="text-align: left;" | ||
+ | !Datentyp | ||
+ | !Interne Bezeichnung | ||
+ | !Beschreibung | ||
+ | |- valign="top" | ||
+ | |Text, Zeichenfolge | ||
+ | |String | ||
+ | |Ein Text ist eine Folge von Buchstaben und oder Zahlen. Der Test wird in Formeln in '''doppelte Anführungszeichen''' '''<nowiki>"</nowiki>''' gesetzt.<br> | ||
+ | * Der Apostroph ist auch möglich, aber nicht empfehlenswert.<br> | ||
+ | <br>Mit einem Text kann man nicht rechnen, dazu müsste man ihn erst in eine Zahl umwandeln. | ||
+ | |- valign="top" | ||
+ | |Zahl | ||
+ | |Number | ||
+ | | | ||
+ | |- valign="top" | ||
+ | |Währung | ||
+ | |Currency | ||
+ | | | ||
+ | |- valign="top" | ||
+ | |Datum | ||
+ | |Date | ||
+ | | | ||
+ | |- valign="top" | ||
+ | |Uhrzeit | ||
+ | |Time | ||
+ | | | ||
+ | |- valign="top" | ||
+ | |Datum+Uhrzeit | ||
+ | |DateTime | ||
+ | | | ||
+ | |- valign="top" | ||
+ | |Boolesch | ||
+ | |Boolean | ||
+ | | | ||
+ | |} | ||
+ | |||
=== Formatierung === | === Formatierung === | ||
− | Abhängig vom Ergebnis der Formel entscheidet CrystalReports, welche Formatierungsoptionen angeboten werden. | + | Abhängig vom '''Ergebnis''' der Formel entscheidet CrystalReports, welche Formatierungsoptionen angeboten werden. |
==== Beispiel 1 ==== | ==== Beispiel 1 ==== |
Version vom 9. Februar 2013, 22:35 Uhr
Inhaltsverzeichnis
1 Allgemeines
Formeln sind eine sehr mächtige Möglichkeit...
- Inhalte von Berechnungen auszugeben
- Inhalte von Datenbankfelder abhängig von bestimmten Gegebenheiten auszugeben.
- Datenbankfelder oder Bereiche unter bestimmten Umständen zu unterdrücken.
1.1 Berechnungen
In einer Formel kann man fast beliebige Berechnungen vornehmen. Ausgegeben wird das Ergebnis der Berechnung (der Formel).
1.2 Ergebnis
Ein Formel hat immer ein Ergebnis (die CrystalReports-Hilfe spricht von "Wert")! Dieses ist abhängig von der Berechnung innerhalb der Formel.
Das Ergebnis ist immer von einem bestimmten Datentyp! Im Wesentlichen gibt es diese Datentypen:
Datentyp | Interne Bezeichnung | Beschreibung |
---|---|---|
Text, Zeichenfolge | String | Ein Text ist eine Folge von Buchstaben und oder Zahlen. Der Test wird in Formeln in doppelte Anführungszeichen " gesetzt.
|
Zahl | Number | |
Währung | Currency | |
Datum | Date | |
Uhrzeit | Time | |
Datum+Uhrzeit | DateTime | |
Boolesch | Boolean |
1.3 Formatierung
Abhängig vom Ergebnis der Formel entscheidet CrystalReports, welche Formatierungsoptionen angeboten werden.
1.3.1 Beispiel 1
In einer Ladeliste soll das Gesamtgewicht einer Auftragsposition ausgegeben werden. Also erstellt man eine neue Formel...
und gibt diese Formel ein:
{maufpo.AUFTRMENGE} * {mart.BRUTTOGEWICHT}
Hier wird die Auftragsmenge mit dem Bruttogewicht des Artikels multipliziert. Das Ergebnis der Berechnung wird ausgegeben.
Da das Ergebnis ein Zahlenfeld ist, kann man die Formel als Zahl formatieren.
1.3.2 Beispiel 2
Eine Formel wird dazu benutzt, die Statusnummer eines Auftrags (1=Aktiv, 2=Angebot, 3=Auftrag usw.) in einen Klartext umzusetzen: Wenn MAufKo.StatusNr=1 dann drucke “AKTIV”, wenn MAufKo.StatusNr=2 dann drucke “ANG” usw.
1.3.3 Beispiel 3
Eine Formel berechnet den Lagerwert eines Artikel anhand des Einkaufspreises multipliziert mit der Soll-Menge:
{Mart.EK} * {MArt.BestandSoll} .
1.3.4 Beispiel 4
In einem Angebot werden die konstanten Texte nicht mit Textfeldern angegeben sondern in Formeln, die die gewünschte Sprache berücksichtigen:
if {MaufKo.Sprache}=”D” then “Angebot” else if {MaufKo.Sprache}=”E” then “Offer” else if {MaufKo.Sprache}=”F” then “Offerte”
In diesem Beispiel sehen Sie, dass Datenbank-Felder in Formeln immer in geschweiften Klammern stehen!
1.4 Unterdrücken
Ein weiteres wichtiges Einsatzgebiet von Formeln ist es, dass man Objekte unter bestimmten Voraussetzungen unterdrücken kann. Man kann z.B. bestimmen, dass das Wort “Rabatt” in einem Angebot nicht gedruckt wird, wenn es gar keinen Rabatt im Angebot gibt.
Einzelheiten zu den vielfältigen Möglichkeiten von Formeln entnehmen Sie ggf. der Crystal-Reports Dokumentation.
2 Fazit
Formeln geben Ihnen die Möglichkeit
- Berechnungen innerhalb des Reports vorzunehmen, z.B. den Durchschnitt aller aufgelisteten Aufträge, das Gesamtgewicht einer Auftragsposition aus Menge x Einzelgewicht usw.
- Vergleiche zwischen Feldern oder Werten vorzunehmen, um damit das Erscheinen bzw. das Unterdrücken von einzelnen Feldern oder ganzen Report-Bereichen zu steuern.