CrystalReports: Formeln: Unterschied zwischen den Versionen

Aus GEVITAS
Wechseln zu: Navigation, Suche
(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, 23:35 Uhr

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.
  • Der Apostroph ist auch möglich, aber nicht empfehlenswert.


Mit einem Text kann man nicht rechnen, dazu müsste man ihn erst in eine Zahl umwandeln.

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...

CrystalReport Formel Neu.jpg

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.