Crystal Report Explorer- Anwenderhandbuch

Transcrição

Crystal Report Explorer- Anwenderhandbuch
Crystal Report ExplorerAnwenderhandbuch
Crystal Reports Explorer XI Release 2
Patente
Business Objects hält die folgenden US-Patente, die von Business Objects angebotene und
vertriebene Produkte betreffen können: 5.555.403, 6.247.008 B1, 6.578.027 B2, 6.490.593
und 6.289.352.
Marken
Business Objects, das Business Objects-Logo, Crystal Reports und Crystal Enterprise sind
in den Vereinigten Staaten und anderen Ländern Marken oder eingetragene Marken von
Business Objects SA oder angegliederten Unternehmen. Alle weiteren in diesem Dokument
erwähnten Namen können Marken ihrer jeweiligen Inhaber sein.
Copyright
Copyright © 2005 Business Objects. Alle Rechte vorbehalten.
Drittbeteiligte
Die in dieser Version enthaltenen Business Objects-Produkte können für den Weitervertrieb
genehmigte Software enthalten, die von Drittbeteiligten lizenziert wurde. Einige dieser
Einzelkomponenten können anderen Lizenzbestimmungen unterliegen. Eine auszugsweise
Liste der Drittbeteiligten, die eine Genehmigung erteilt bzw. darum ersucht haben, mit
entsprechenden Rechtshinweisen finden Sie unter:
http://www.businessobjects.com/thirdparty
Inhaltsverzeichnis
Kapitel 1
Willkommen bei Crystal Reports Explorer
23
Informationen zu diesem Handbuch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Was ist Crystal Reports Explorer? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
An welchen Anwenderkreis richtet sich dieses Handbuch? . . . . . . . . . 24
Onlinehilfe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Business Objects-Informationsressourcen . . . . . . . . . . . . . . . . . . . . . 24
Kapitel 2
Verwenden von Crystal Reports Explorer
25
Übersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Anmelden bei BusinessObjects Enterprise . . . . . . . . . . . . . . . . . . . . . . . . 26
Erstellen und Ändern von Berichten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Arbeiten auf der Seite "Bericht erstellen" . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Kapitel 3
Arbeiten mit Berichtdaten
31
Verwenden von Business Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Verwenden von Berichtsdatenquellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Auswählen der Datenquelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Arbeiten mit Berichtparametern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Auswählen und Umbenennen von Feldern . . . . . . . . . . . . . . . . . . . . . . . . 34
Gruppieren von Datensätzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Filtern von Datensätzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Erstellen mehrerer Filterbedingungen . . . . . . . . . . . . . . . . . . . . . . . . . 42
Bilden von Gruppenergebnissen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Sortieren von Datensätzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Sortierfeld . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Sortierreihenfolge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Sortieren von Datensätzen im Detailbereich . . . . . . . . . . . . . . . . . . . . 47
Sortieren von Datensatzgruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Crystal Report Explorer-Anwenderhandbuch
3
Inhaltsverzeichnis
Sortieren und Auswählen von Gruppen basierend auf
Gruppenergebniswerten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Entfernen der Sortierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Anzeigen des Berichts auf der Registerkarte "Daten" . . . . . . . . . . . . . . . . . 51
Veröffentlichen und Exportieren des Berichts . . . . . . . . . . . . . . . . . . . . . . . 53
Kapitel 4
Hinzufügen von Berechnungen mithilfe von Formeln
55
Formeln im Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Typische Anwendungsbeispiele für Formeln . . . . . . . . . . . . . . . . . . . . 56
Komponenten und Syntax von Formeln . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Formelkomponenten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Formelsyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Crystal-Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Erstellen und Ändern von Formeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Erstellen und Einfügen von Formeln in einem Bericht . . . . . . . . . . . . . 59
Bearbeiten von Formeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Löschen von Formeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Entfernen der Arbeitsformel aus Ihrem Bericht . . . . . . . . . . . . . . . . . . . 61
Löschen der Formelspezifikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Fehlermeldungen und Formel-Compiler-Warnungen . . . . . . . . . . . . . . . . . 62
Kapitel 5
Formatieren von Berichten
75
Überblick über das Formatieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Hinzufügen und Entfernen von Diagrammen . . . . . . . . . . . . . . . . . . . . . . . 76
Formatieren mit Vorlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Übernehmen der Vorlage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Überlegungen zu Vorlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Formatieren von Objekten und Bereichen . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Verschieben und Ändern der Größe von Objekten und Bereichen . . . . 79
Hinzufügen und Bearbeiten von Textobjekten . . . . . . . . . . . . . . . . . . . 80
Formatieren von Feld- und Textobjekten . . . . . . . . . . . . . . . . . . . . . . . 80
Hinzufügen von Spezialfeldern zum Bericht . . . . . . . . . . . . . . . . . . . . . 81
Formatieren von Bereichen des Berichts . . . . . . . . . . . . . . . . . . . . . . . 84
Formatierungsoptionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4
Crystal Report Explorer-Anwenderhandbuch
Inhaltsverzeichnis
Registerkarte "Allgemein" (Dialogfeld "Format-Editor") . . . . . . . . 85
Registerkarte "Rahmen" (Dialogfeld "Format-Editor") . . . . . . . . . . 86
Registerkarte „Schriftart“ (Dialogfeld „Format-Editor“) . . . . . . . . . 87
Registerkarte "Nummer" (Dialogfeld "Format-Editor") . . . . . . . . . 87
Registerkarte "Datum" (Dialogfeld "Format-Editor") . . . . . . . . . . . 88
Registerkarte "Allgemein" (Bereichs-Assistent) . . . . . . . . . . . . . . 88
Registerkarte "Farbe" (Bereichs-Assistent) . . . . . . . . . . . . . . . . . . 90
Arbeiten auf der Registerkarte "Bericht" . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Hinzufügen und Bearbeiten von Textobjekten . . . . . . . . . . . . . . . . . . . 90
Formatieren von Bereichen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Formatieren von Feldern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Durchsuchen von Felddaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Sortieren von Felddaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Entfernen eines Feldes aus dem Bericht . . . . . . . . . . . . . . . . . . . . . . . 92
Kapitel 6
Festlegen von Anwendereinstellungen
93
Übersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Ändern der Hintergrundfarbe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Festlegen der standardmäßig angezeigten Registerkarte . . . . . . . . . . . . . 96
Anpassen der Symbolleiste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Anzeigen erweiterter Dialogfelder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Anzeigen von Feldnamen und -beschreibungen . . . . . . . . . . . . . . . . . . . . 97
Festlegen der Zeilenanzahl im Datenraster . . . . . . . . . . . . . . . . . . . . . . . . 98
Ändern des Aussehens der Registerkarte "Entwurf" . . . . . . . . . . . . . . . . . 98
Kapitel 7
Referenz zur Crystal-Syntax
101
Crystal-Syntax im Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Grundlagen der Crystal-Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Ergebnis einer Formel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Bei der Crystal-Syntax wird nicht zwischen Groß- und
Kleinschreibung unterschieden . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Übung anhand der Musterdatenbank Xtreme . . . . . . . . . . . . . . . 103
Kommentare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Crystal Report Explorer-Anwenderhandbuch
5
Inhaltsverzeichnis
Felder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Aussehen von Feldern in Formeln . . . . . . . . . . . . . . . . . . . . . . . . 104
Beispielformeln mit Feldern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Ausdrücke
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Mehrfachausdrücke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
So wirken sich frühere Ausdrücke auf spätere Ausdrücke aus . . 106
Verwenden des If-Ausdrucks
. . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Zuweisung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Einfache Datentypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Zahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Währung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Zeichenfolge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Boolesch
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Datum, Uhrzeit und DatumUhrzeit . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Bereichs-Datentypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Verwenden von Bereichen in Formeln . . . . . . . . . . . . . . . . . . . . . . . . 112
Array-Datentypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Variablen
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Variablen im Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Variablendeklarationen
Variablenbereiche
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Lokale Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Globale Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Freigegebene Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Deklarieren von Array-Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Arbeiten mit Array-Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Verwenden von Arrays mit For-Schleifen . . . . . . . . . . . . . . . . . . . 120
Standardwerte für die einfachen Typen . . . . . . . . . . . . . . . . . . . . . . . 120
Standardwerte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Automatische Typkonvertierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Nicht für die Berichterstellung spezifische Funktionen . . . . . . . . . . . . 123
Gruppenergebnisfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6
Crystal Report Explorer-Anwenderhandbuch
Inhaltsverzeichnis
Datumsbereiche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Array-Funktionen
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Auswertungszeitpunktfunktionen
Druckstatusfunktionen
. . . . . . . . . . . . . . . . . . . . . . . . . . . 125
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Funktionen für Dokumenteigenschaften . . . . . . . . . . . . . . . . . . . . . . 126
Zusätzliche Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Funktionen für die bedingte Formatierung . . . . . . . . . . . . . . . . . . . . 126
Vielseitig verwendbare bedingte Formatierungsfunktionen
. . . . . . . 127
Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Arithmetische Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Verarbeitungsreihenfolge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Liste der arithmetischen Operatoren, von höchster
bis zu niedrigster Präzedenz . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Vergleichsoperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Boolesche Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
NULL-Felder und Verwendungsweise von IsNull . . . . . . . . . . . . . . . 130
Steuerelementstrukturen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
If-Ausdrücke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
If-Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Weitere Einzelheiten über If-Ausdrücke . . . . . . . . . . . . . . . . . . . 134
Select-Ausdrücke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
For-Schleifen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Die Syntax der For-Schleife in Beispielen . . . . . . . . . . . . . . . . . . 138
Beispiel für eine For-Schleife . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Exit For verwenden
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
While-Schleifen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Die zwei unterschiedlichen Typen der While-Schleifen . . . . . . . 141
While ... Do-Schleife . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Sicherheitsmechanismen für Schleifen . . . . . . . . . . . . . . . . . . . . . . . 143
Option Loop (Crystal-Syntax) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Syntax von Option Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Einschränkungen
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Crystal Report Explorer-Anwenderhandbuch
7
Inhaltsverzeichnis
Kapitel 8
Funktionen
147
Informationen über Zahlenformatierungen in Beispielen . . . . . . . . . . . . . . 148
Mathematik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Abs (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Sgn (Zahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Int (Zahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Round . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
RoundUp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Truncate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
MRound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Ceiling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Floor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Fix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Remainder (Zähler, Nenner) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Sin (Zahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Cos (Zahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Tan (Zahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Atn (Zahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Pi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Sqr (Zahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Exp (Zahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Log (Zahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Rnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Gruppenergebnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Bedingungen für Gruppenergebnisfunktionen . . . . . . . . . . . . . . . . . . 170
Sum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
StdDev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
PopulationStdDev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Variance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
PopulationVariance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Maximum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Minimum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
8
Crystal Report Explorer-Anwenderhandbuch
Inhaltsverzeichnis
Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
DistinctCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Correlation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Covariance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
WeightedAverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Median . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
PthPercentile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
NthLargest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
NthSmallest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
NthMostFrequent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
PercentOfSum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
PercentOfAverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
PercentOfMaximum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
PercentOfMinimum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
PercentOfCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
PercentOfDistinctCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Finanzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
ACCRINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
ACCRINTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
AmorDEGRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
AmorLINC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
CoupDayBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
CoupDays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
CoupDaysNC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
CoupNCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit) . . . . . . . . 229
CoupNum (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit) . . . . . . . . . 230
CoupPCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit) . . . . . . . . . 231
CumIPMT (Satz, nZeiträume, aktuellerWert, Startzeitraum,
Endzeitraum, Typ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
CumPrinc (Satz, nZeiträume, aktuellerWert, Startzeitraum,
Endzeitraum, Typ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
DB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
Crystal Report Explorer-Anwenderhandbuch
9
Inhaltsverzeichnis
DDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Days360 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
DISC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
DollarDE (Bruchzahl, Basis) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
DollarFR (Dezimalzahl, Basis) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
Duration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Effect (Satz, nVergleichbareZeiträume) . . . . . . . . . . . . . . . . . . . . . . . 244
FV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
FVSchedule (Wert, Sätze) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
IntRate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
IPmt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
IRR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
ISPMT (Satz, Zeitraum, nZeiträume, aktuellerWert) . . . . . . . . . . . . . . 252
MDuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
MIRR (Werte, Finanzsatz, Wiederanlagesatz) . . . . . . . . . . . . . . . . . . 255
Nominal (Satz, nVergleichbareZeiträume) . . . . . . . . . . . . . . . . . . . . . 256
NPer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
NPV (Satz, Werte) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
OddFPrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
OddFYield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
OddLPrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
OddLYield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Pmt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
PPmt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
Price . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
PriceDisc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
PriceMat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
PV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
Received . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
SLN (Kosten, Restwert, Lebensdauer) . . . . . . . . . . . . . . . . . . . . . . . . 280
SYD (Kosten, Restwert, Lebensdauer, Zeitraum) . . . . . . . . . . . . . . . . 281
TBillEq (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz) . . . . . . . . . . 282
10 Crystal Report Explorer-Anwenderhandbuch
Inhaltsverzeichnis
TBillPrice (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz) . . . . . . . . 283
TBillYield (Zahlungsdatum, Fälligkeitsdatum, Preis) . . . . . . . . . . . . . 285
VDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
XIRR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
XNPV (Satz, Werte, Tage) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
YearFrac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Yield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
YieldDisc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
YieldMat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
Zeichenfolgen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
Len (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Length (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Trim (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
LTrim (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
TrimLeft (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
RTrim (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
TrimRight (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
UCase (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
UpperCase (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
LCase (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
LowerCase (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
ProperCase(Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
StrReverse (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
IsNumeric (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
NumericText (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
ToNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
ToText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Formatzeichenfolgen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
Formatzeichenfolgen für Date-, Time- und DateTime-Werte . . . 326
Konvertieren boolescher Werte . . . . . . . . . . . . . . . . . . . . . . . . . . 328
Konvertieren von rationalen Zahlen und Currency-Werten . . . . . 328
Konvertieren von Date-, Time- und DateTime-Werten . . . . . . . . 328
Übergeben optionaler Argumente . . . . . . . . . . . . . . . . . . . . . . . . 328
Crystal Report Explorer-Anwenderhandbuch 11
Inhaltsverzeichnis
ToWords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
ReplicateString (Zchnflge, AnzKopien) . . . . . . . . . . . . . . . . . . . . . . . . 332
Space (Ganzzahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
InStr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
InStrRev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
StrCmp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
Mid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
Left (Zchnflge, Länge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Right (Zchnflge, Länge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
Val (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
ChrW (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
AscW (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
Replace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Join . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Split . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Roman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
URLEncode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
URLDecode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
Datum/Uhrzeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
CurrentDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Current Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
CurrentDateTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
DateTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
DateValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
TimeValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
DateTimeValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
DateSerial (Jahr, Monat, Tag) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
TimeSerial (Stunden, Minuten, Sekunden) . . . . . . . . . . . . . . . . . . . . . 374
IsTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
IsDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
12 Crystal Report Explorer-Anwenderhandbuch
Inhaltsverzeichnis
IsDateTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Year (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Month (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
Day (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
WeekDay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
DayOfWeek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Hour (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Minute (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Second (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
MonthName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
WeekdayName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
DateAdd (Intervalltyp, nIntervalle, StartDatumUhrzeit) . . . . . . . . . . . 389
DateDiff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
DatePart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Konstanten für den ersten Wochen-/Jahrestag . . . . . . . . . . . . . . . . . 397
ShiftDateTime (inputDateTime, inputTimeZone, newTimeZone) . . . . 397
Datumsbereiche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
WeekToDateFromSun . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
MonthToDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
YearToDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Last7Days . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
Last4WeeksToSun . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
LastFullWeek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
LastFullMonth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
AllDatesToToday . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
AllDatesToYesterday . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
AllDatesFromToday . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
AllDatesFromTomorrow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
Aged0To30Days, Aged31To60Days, Aged61To90Days . . . . . . . . . . 410
Over90Days . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
Next30Days, Next31To60Days, Next61To90Days,
Next91To365Days . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
Crystal Report Explorer-Anwenderhandbuch 13
Inhaltsverzeichnis
Calendar1stQtr, Calendar2ndQtr, Calendar3rdQtr, Calendar4thQtr . . 415
Calendar1stHalf, Calendar2ndHalf . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
LastYearMTD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
LastYearYTD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
Array (x,…) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
MakeArray (x, ...) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
UBound (Array) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Array-Gruppenergebnisfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
Bereiche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
HasLowerBound (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
HasUpperBound (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
IncludesLowerBound (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
IncludesUpperBound (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
Typkonvertierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
CBool (Zahl oder Währung) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
CCur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
CDbl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
CStr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
CDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
CTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
CDateTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
Programmierbefehle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
Choose (Index, Auswahl1, Auswahl2, ...)
. . . . . . . . . . . . . . . . . . . . . 442
IIF (Ausdruck, True-Teil, False-Teil) . . . . . . . . . . . . . . . . . . . . . . . . . . 444
Switch (Ausdr1, Wert1, Ausdr2, Wert2, …) . . . . . . . . . . . . . . . . . . . . . 445
Auswertungszeitpunkt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
BeforeReadingRecords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
WhileReadingRecords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
WhilePrintingRecords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
EvaluateAfter (x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
Druckstatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
Previous (Feld) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
14 Crystal Report Explorer-Anwenderhandbuch
Inhaltsverzeichnis
PreviousValue (Feld) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
Next (Feld) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
NextValue (Feld) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
IsNull (Feld) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
PreviousIsNull (Feld) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
NextIsNull (Feld) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
PageNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
TotalPageCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
PageNofM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
Datensatznummer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
GroupNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
RecordSelection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
GroupSelection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
InRepeatedGroupHeader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
OnFirstRecord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
OnLastRecord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
DrillDownGroupLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
HierarchyLevel (GroupingLevel) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
Dokumenteigenschaften . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
PrintDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
PrintTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
PrintTimeZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
ModificationDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
ModificationTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
DataDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
DataTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
DataTimeZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
ReportTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
ReportComments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
Filename . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
FileAuthor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
FileCreationDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
CurrentCEUserName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
Crystal Report Explorer-Anwenderhandbuch 15
Inhaltsverzeichnis
CurrentCEUserID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
GroupingLevel (Feld) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
CurrentCEUserTimeZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
ContentLocale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
SelectionLocale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
Warnungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
IsAlertEnabled(Name der Warnung) . . . . . . . . . . . . . . . . . . . . . . . . . . 481
IsAlertTriggered(Name der Warnung) . . . . . . . . . . . . . . . . . . . . . . . . . 482
AlertMessage(Name der Warnung) . . . . . . . . . . . . . . . . . . . . . . . . . . 483
Zusätzliche Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484
DateTo2000 (Datum, Zahl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
DTSTo2000 (DatumUhrzeitFolge, Zahl) . . . . . . . . . . . . . . . . . . . . . . . 487
DTSToDate (DatumUhrzeitFolge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
DTSToSeconds (DatumUhrzeitFolge) . . . . . . . . . . . . . . . . . . . . . . . . 490
DTSToTimeString (DatumUhrzeitFolge) . . . . . . . . . . . . . . . . . . . . . . . 491
ExchGetId (Adresse) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
ExchGetOrganization (Adresse) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
ExchGetSite (Adresse) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
ExtractString (Ursprung, Anfangszeichenfolge, Endzeichenfolge) . . . 494
EventNumber (Ereignisnummer im Nachrichten-Trackingprotokoll) . . 495
ExchGetPath (Pfad) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
ByteToText (Byte) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
FRCurrentRatio (Umlaufvermögen, KurzfristigeVerbindlichkeiten) . . . 497
FRQuickRatio (Umlaufvermögen, Bestand,
KurzfristigeVerbindlichkeiten) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
FRDebtEquityRatio (GesObligo, GesEigenkapital) . . . . . . . . . . . . . . . 501
FREquityVsTotalAssets (GesEigenkapital, GesVermögen) . . . . . . . . 502
FRNetProfitMargin (NettoGewinn, Verkauf) . . . . . . . . . . . . . . . . . . . . 503
FRGrossProfitMargin (BruttoGewinn, Verkauf) . . . . . . . . . . . . . . . . . . 505
FROperatingProfitMargin (Gewinn, Verkauf) . . . . . . . . . . . . . . . . . . . 506
FRInterestCoverage (Barmittelfluss, Zinsausgaben) . . . . . . . . . . . . . 507
FRCashFlowVsTotalDebt (Barmittelfluss, GesSchulden) . . . . . . . . . . 509
FRReturnOnEquity (NettoGewinn, GesEigenkapital) . . . . . . . . . . . . . 510
16 Crystal Report Explorer-Anwenderhandbuch
Inhaltsverzeichnis
FRReturnOnNetFixedAssets (NettoGewinn, Reinvermögen) . . . . . . 512
FRReturnOnTotalAssets (NettoGewinn, GesVermögen) . . . . . . . . . 513
FRReturnOnInvestedCapital (NettoGewinn, GesBankschulden,
GesEigenkapital) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
FRReturnOnCommonEquity (NettoGewinn, Vorzugsdividende,
Stammaktienkapital) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
FREarningsPerCommonShare (NettoGewinn, Vorzugsdividende,
AnzStammaktien) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
FRAccRecTurnover (Forderungen, Verkauf, AnzTage) . . . . . . . . . . . 519
FRInventoryTurnover (Bestand, Verkauf, AnzTage) . . . . . . . . . . . . . 521
FRPriceEarningsRatio (Marktpreis, GewinnProAktie) . . . . . . . . . . . . 522
FRDividendYield (Dividende, Marktpreis) . . . . . . . . . . . . . . . . . . . . . 523
Now . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524
Picture (Zchnflge, Bild) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525
LooksLike (Zchnflge, Maske) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
Soundex (Zchnflge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
DateTimeTo2000 (DatumUhrzeit, Zahl) . . . . . . . . . . . . . . . . . . . . . . . 529
DTSToDateTime (DatumUhrzeitFolge) . . . . . . . . . . . . . . . . . . . . . . . 531
DTSToTimeField (DatumUhrzeitFolge) . . . . . . . . . . . . . . . . . . . . . . . 532
DateTimeToDate (dateTime) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532
DateTimeToTime (DatumUhrzeit) . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
DateTimeToSeconds (DatumUhrzeit) . . . . . . . . . . . . . . . . . . . . . . . . 533
Funktionen zum Duplizieren von Gruppenfeldern . . . . . . . . . . . . . . . . . . 534
Nach Feld sortieren und gruppieren = Zeichen,
Zahl oder Currency-Wert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
Nach Feld sortieren und gruppieren = Datums- oder
boolesche Bedingung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
Gesamtergebnis-Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
Konditionale Formatierungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
GridRowColumnValue (Name) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
CurrentFieldValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
DefaultAttribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
RGB (Rot, Grün, Blau) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
Color (Rot, Grün, Blau) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542
Crystal Report Explorer-Anwenderhandbuch 17
Inhaltsverzeichnis
Zusätzliche Funktionen des SQL-Ausdrucks-Editors . . . . . . . . . . . . . . . . 543
Attributfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
CASE-Ausdrücke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
Datum-/Uhrzeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
Hash-bezogene Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
Numerische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
Logische Prädikate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
Zeichenfolgefunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
Integrierte Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546
Kapitel 9
Operatoren
547
Arithmetische Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548
Additionsoperator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548
Subtraktionsoperator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
Multiplikationsoperator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
Divisionsoperator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550
Prozent-Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550
Ganzzahldivision (x \ y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
Modul (x Mod y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
Negationsoperator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552
Potenzieren (x ^ y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
Konvertierungsoperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
In-Währung-Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
Vergleichsoperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554
Gleichheitsoperator (x=y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555
Not (Ungleichheit) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556
Kleiner-als-Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
Größer-als-Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
Kleiner-als-oder-gleich-Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
Größer-oder-gleich-Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559
Zeichenfolgeoperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560
Verkettungsoperator (x +y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560
Verketten (x & y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
18 Crystal Report Explorer-Anwenderhandbuch
Inhaltsverzeichnis
Index in Arrays und Zeichenfolgen . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Index (x(y)) Basic-Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Index (x[y]) Crystal-Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
In-Zeichenfolge-Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564
Leere Zeichenfolge einfügen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
Bereichsoperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
In-Bereich-Operator (x in y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
To (x To y) – Bereicherstellungs-Operator . . . . . . . . . . . . . . . . . . . . . 567
_To (x _To y) Bereich mit Ausschluss des Startpunkts . . . . . . . . . . . 568
To_ (x To_ y) Bereich mit Ausschluss des Endpunkts . . . . . . . . . . . . 568
_To_ (x _To_ y) – Bereich mit Ausschluss von Start- und Endpunkt . 569
Is > x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570
Is < x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
Ist >= x
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
Ist <= x
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
upFrom (upFrom x) – Ab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
upFrom_ (upFrom_ x) – Ab aber nicht einschließlich . . . . . . . . . . . . 573
Bis (upTo x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574
upTo_ (upTo_ x) – Bis aber nicht einschließlich . . . . . . . . . . . . . . . . 574
Boolesche Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575
Not (Ungleich-Operator) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576
And (Und) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576
Or (Oder) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577
Xor (logischer Ausschluss) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578
Eqv (logische Äquivalenz) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
Imp (logische Implikation) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
Arrayoperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
Arrayerstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
Index (x[y]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
In Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
Redim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582
Basic-Syntax x(n) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582
Crystal-Syntax x[n] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582
Crystal Report Explorer-Anwenderhandbuch 19
Inhaltsverzeichnis
Redim Preserve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583
Basic-Syntax x(n) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583
Crystal-Syntax x[n] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583
Musteroperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584
Beginnt-mit-Operator (x startsWith y) . . . . . . . . . . . . . . . . . . . . . . . . . 584
like (Wie Muster) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585
Operatoren für Kontrollstrukturen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586
Basic-Syntax – Operatoren für Kontrollstrukturen . . . . . . . . . . . . . . . . 586
Crystal-Syntax – Operatoren für Kontrollstrukturen . . . . . . . . . . . . . . 586
Andere Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586
Klammeroperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587
Zuweisungsoperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
Basic syntax (x = y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
Crystal-Syntax (x := y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589
Kommentare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590
Basic-Syntax (Rem) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590
Basic-Syntax (') . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
Crystal-Syntax (//) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592
Datum-Uhrzeit-Literal (#…#) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592
Variablendeklarationsoperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593
Variablendeklaratoren für Basic-Syntax . . . . . . . . . . . . . . . . . . . . . . . 593
Variablendeklaratoren für Crystal-Syntax . . . . . . . . . . . . . . . . . . . . . . 595
Bereichsoperatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596
Variablenbereiche für Basic-Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . 596
Variablenbereiche für Crystal-Syntax . . . . . . . . . . . . . . . . . . . . . . . . . 596
Anweisungstrennzeichen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598
Konstanten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599
Konstanten für das Datum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599
Konstanten für Wochentage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599
Konstanten für die erste Jahreswoche . . . . . . . . . . . . . . . . . . . . . 600
Konstanten für die Wochentageinrahmung . . . . . . . . . . . . . . . . . 600
Datum-/Uhrzeitkonstanten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
Konstanten zur Formatierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
20 Crystal Report Explorer-Anwenderhandbuch
Inhaltsverzeichnis
Konstanten für den Schriftschnitt . . . . . . . . . . . . . . . . . . . . . . . . 601
Konstanten für die Textinterpretation . . . . . . . . . . . . . . . . . . . . . 602
Konstanten für die Farbe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602
Konstanten für die Ausrichtung . . . . . . . . . . . . . . . . . . . . . . . . . . 603
Konstanten für die Linienart . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603
Mathematische Konstanten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603
Anhang A
Business Objects-Informationsressourcen
605
Dokumentations- und Informationsdienste . . . . . . . . . . . . . . . . . . . . . . . . 606
Dokumentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606
Was ist im Dokumentationsset enthalten? . . . . . . . . . . . . . . . . . . . . . 606
Wo finden Sie die Dokumentation? . . . . . . . . . . . . . . . . . . . . . . . . . . 606
Dokumentation innerhalb der Produkte . . . . . . . . . . . . . . . . . . . . 606
Dokumentation im Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
Dokumentation auf der Produkt-CD . . . . . . . . . . . . . . . . . . . . . . 607
Senden Sie uns Ihr Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
Kunden-Support, Beratung und Schulung . . . . . . . . . . . . . . . . . . . . . . . . 607
Wie erhalten Sie Unterstützung? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
Online Customer Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
Suchen Sie nach der optimalen Implementierungslösung für Ihr
Unternehmen? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
Suchen Sie Schulungsmöglichkeiten? . . . . . . . . . . . . . . . . . . . . . . . . 608
Nützliche Adressen auf einen Blick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
Index
611
Crystal Report Explorer-Anwenderhandbuch 21
Inhaltsverzeichnis
22 Crystal Report Explorer-Anwenderhandbuch
Crystal Report Explorer-Anwenderhandbuch
Kapitel
Willkommen bei Crystal
Reports Explorer
1
Willkommen bei Crystal Reports Explorer
Informationen zu diesem Handbuch
Informationen zu diesem Handbuch
Dieses Handbuch enthält Informationen und Anleitungen zu den
unterschiedlichsten Aufgaben bei der Berichterstellung. Gängige Abläufe
werden in schrittweisen Anleitungen beschrieben. Für erweiterte Themen
werden Begriffsinformationen und technische Details angegeben (falls
erforderlich).
Was ist Crystal Reports Explorer?
Crystal Reports Explorer ermöglicht Anwendern das Erstellen und Bearbeiten
von Berichten, das Entwerfen von Layouts sowie das Durchführen von
Datenanalysen unter Verwendung einer Zero-Client-Schnittstelle. Diese
Funktionalität reduziert Arbeitsüberhänge bei der Erstellung von IT-Berichten,
da Anwender persönlich angepasste Berichtsansichten in BusinessObjects
Enterprise erstellen, speichern und neu verteilen können.
An welchen Anwenderkreis richtet sich dieses Handbuch?
Dieses Handbuch richtet sich an BusinessObjects Enterprise-Anwender, die
Crystal Reports Explorer zum Erstellen und Ändern von Berichten
verwenden. Vorkenntnisse im Umgang mit BusinessObjects Enterprise,
Business Views, Crystal Reports und der allgemeinen Berichtumgebung sind
von Vorteil, aber nicht Voraussetzung.
Onlinehilfe
Greifen Sie auf die Online-Hilfe in Crystal Reports Explorer zu, indem Sie auf
Hilfe klicken. Die Onlinehilfe umfasst alle in diesem Handbuch enthaltenen
Informationen.
Business Objects-Informationsressourcen
Nähere Informationen und Unterstützung finden Sie unter Anhang A:
Business Objects-Informationsressourcen. In diesem Anhang werden die
Business Objects-Dokumentation, der Kunden-Support sowie Schulungsund Beratungsdienste beschrieben und Hyperlinks zu Onlineressourcen
bereitgestellt.
24
Crystal Report Explorer-Anwenderhandbuch
Kapitel
Verwenden von Crystal
Reports Explorer
2
Verwenden von Crystal Reports Explorer
Übersicht
Übersicht
Crystal Reports Explorer vereint die wichtigsten Technologien zur
Informationsbereitstellung aus der Desktop Intelligence-Softwarefamilie in
einem Produkt:
•
Das aus Serverkomponenten bestehende BusinessObjects EnterpriseSystem dient zur Authentifizierung und Autorisierung von Anwendern und
ermöglicht ihnen die Arbeit mit Berichtobjekten in einer verwalteten
Umgebung.
•
Crystal Reports Explorer unterstützt Anwender beim webbasierten
Entwerfen, Ändern und Verarbeiten von Crystal Reports-Berichten sowie
Business Views auf Abruf innerhalb der BusinessObjects EnterpriseUmgebung.
Anmelden bei BusinessObjects Enterprise
Um über InfoView auf Crystal Reports Explorer zuzugreifen, geben Sie die
URL für InfoView im Webbrowser ein. Unter Windows können Sie auch im
Windows-Startmenü aus der Programmgruppe die Option "InfoView"
auswählen.
1.
So greifen Sie auf InfoView zu:
Wechseln Sie zum BusinessObjects Enterprise Verwaltungslaunchpad,
und klicken Sie auf die Verknüpfung InfoView.
Alternativ können Sie folgende URL aufrufen:
http://webserver/businessobjects/enterprise115/InfoView
Ersetzen Sie webserver mit dem Namen des Webservers, der für
BusinessObjects Enterprise eingerichtet wurde. Möglicherweise müssen
Sie Ihren Administrator nach dem einzugebenden Webservernamen oder
der genauen URL fragen.
Tipp: Falls Sie BusinessObjects Enterprise-Clienttools installiert haben,
können Sie auch auf Start > Programme > Desktop Intelligence XI >
BusinessObjects Enterprise > BusinessObjects Enterprise .NET InfoView
(oder Java InfoView) klicken.
Die Seite "Anmelden" wird angezeigt.
2.
26
Geben Sie Anwendernamen, Kennwort, Authentifizierungstyp und
Systemnamen ein, und klicken Sie dann auf Anmelden.
Crystal Report Explorer-Anwenderhandbuch
Verwenden von Crystal Reports Explorer
Erstellen und Ändern von Berichten
Vergewissern Sie sich vor der Verwendung von Crystal Reports Explorer,
dass Sie über einen Anwendernamen und ein Kennwort verfügen, der
bzw. das von BusinessObjects Enterprise erkannt wird. Wenn Sie Ihre
Anmeldeinformationen nicht genau kennen oder Ihr Konto vom System
nicht erkannt wird, wenden Sie sich an den Administrator.
Tipp: Alternativ können Sie auf Crystal Reports Explorer zugreifen, ohne
InfoView aufzurufen:
•
Geben Sie die URL für Crystal Reports Explorer ein. Wenn Sie sich
bei der CSP-Version unter Windows anmelden, lautet die
standardmäßige URL
http://webserver/businessobjects/enterprise115/adhoc
wobei webserver für den Namen des BusinessObjects EnterpriseWebservers steht.
Wenn Sie sich bei der JSP-Version anmelden, lautet die
standardmäßige URL
http://webserver:anschluss/businessobjects/
enterprise115/adhoc
Falls Sie diesbezüglich weitere Informationen benötigen, wenden
Sie sich an Ihren Administrator.
•
Geben Sie auf der Seite "Anmeldeinformationen" Anwendernamen,
Kennwort, Authentifizierungstyp und Systemnamen ein, und klicken
Sie dann auf "Anmelden".
•
Klicken Sie auf "Bericht erstellen".
Nach der Anmeldung bei InfoView können Sie Berichte erstellen und ändern.
Erstellen und Ändern von Berichten
Erkundigen Sie sich bei Ihrem BusinessObjects Enterprise-Administrator, ob
Sie über die notwendigen Rechte sowie über Zugriff auf die Crystal ReportsBerichte und Business Views verfügen, die Sie verwenden möchten.
1.
2.
So ändern Sie einen Bericht
Melden Sie sich bei BusinessObjects Enterprise an, und navigieren Sie
zu InfoView.
Suchen Sie den Crystal Reports-Bericht, den Sie ändern möchten, und
wählen Sie dann die darunter befindliche Verknüpfung Ändern.
Dadurch wird die Seite "Bericht ändern" geöffnet (die auch als
Änderungsviewer bezeichnet wird). Weitere Informationen zum Ändern
von Berichten finden Sie unter „Arbeiten mit Berichtdaten“ auf Seite 31.
Crystal Report Explorer-Anwenderhandbuch
27
2
2
Verwenden von Crystal Reports Explorer
Arbeiten auf der Seite "Bericht erstellen"
1.
2.
So erstellen Sie einen Bericht
Melden Sie sich bei BusinessObjects Enterprise an, und navigieren Sie
zu InfoView.
Wählen Sie auf der Symbolleiste in der Liste Neu Crystal ReportsBericht.
Der Seite "Bericht erstellen" wird angezeigt.
Standardmäßig können Sie einen Bericht auf der Grundlage einer
Business View erstellen. Ihr Administrator kann Ihnen jedoch auch Zugriff
auf Berichtdatenquellen einräumen.
Anweisungen zum Erstellen eines Berichts finden Sie unter „Arbeiten mit
Berichtdaten“ auf Seite 31.
Arbeiten auf der Seite "Bericht erstellen"
Diese Seite bietet Zugriff auf alle verfügbaren Berichterstellungstools. Der
Zugriff auf diese Tools erfolgt über verschiedene Symbolleistenoptionen,
Steuerschaltflächen und Registerkarten. Die Seite "Bericht erstellen" und die
Seite "Bericht ändern" verfügen über identische Funktionen.
Hinweis: Die in Crystal Reports Explorer verfügbaren Funktionen sind von
dem Recht abhängig, das Ihnen vom Administrator zugewiesen wurde. Falls
Sie diesbezüglich weitere Informationen benötigen, wenden Sie sich an Ihren
BusinessObjects Enterprise-Administrator.
28
Crystal Report Explorer-Anwenderhandbuch
Verwenden von Crystal Reports Explorer
Arbeiten auf der Seite "Bericht erstellen"
•
Steuerschaltflächen
Verwenden Sie die Steuerschaltflächen in der oberen rechten
Bildschirmecke zum Navigieren:
Name
Beschreibung
Neu starten
Über diese Schaltfläche wird der Entwurf bzw. die
Änderung von Berichten aus der ausgewählten
Datenquelle neu gestartet.
Schließen
Über diese Schaltfläche wechseln Sie zur Hauptseite.
Ansicht
Über diese Schaltfläche wird ein Bericht-Viewer in einem
neuen Fenster geöffnet.
Einstellungen Über diese Schaltfläche werden die
Anwendereinstellungen festgelegt.
Info zu
Hier finden Sie Informationen zu dieser Version.
Hilfe
Über diese Schaltfläche öffnen Sie diese Informationen.
•
Symbolleistenoptionen
Die Optionen auf der Symbolleiste ermöglichen das Auswählen einer
Datenquelle für den Bericht, das Hinzufügen von Feldern zum Bericht,
das Gruppieren und Sortieren von Daten auf verschiedene Weisen, das
Hinzufügen von Gruppenergebnisfeldern und Formelberechnungen usw.
Die Optionen, mit denen Sie arbeiten können, hängen davon ab, wie der
Administrator Ihr Anwenderkonto eingerichtet hat. In den restlichen
Abschnitten werden diese Optionen ausführlich vorgestellt.
Tipp: Ziehen Sie den Titel der Symbolleiste, um sie von der linken
Bildschirmseite zu entfernen. Positionieren Sie anschließend die
bewegliche Symbolleiste an der gewünschten Stelle. Doppelklicken Sie
auf die Titelleiste, um die Symbolleistenoptionen zu erweitern. Durch
Klicken auf X wird die Symbolleiste wieder an ihrer ursprünglichen
Position angezeigt.
•
Registerkarte "Quelle"
Verwenden Sie beim Durchlaufen der Optionen auf der Symbolleiste die
Felder auf der Registerkarte "Quelle", um die Objekte im Blick zu
behalten, mit denen Sie arbeiten. Wenn Sie beispielsweise eine
Datenquelle auswählen, werden im Feld "Beschreibung" gegebenenfalls
weitere Informationen angezeigt. Außerdem wird im Feld "Verfügbare
Felder" die Liste der Felder in der Datenquelle angezeigt. Beim
Auswählen von Feldern und Hinzufügen weiterer Objekte werden deren
Einträge in den entsprechenden Feldern auf der Registerkarte "Quelle"
angezeigt.
Crystal Report Explorer-Anwenderhandbuch
29
2
2
Verwenden von Crystal Reports Explorer
Arbeiten auf der Seite "Bericht erstellen"
Nähere Informationen hierzu finden Sie unter „Arbeiten mit Berichtdaten“
auf Seite 31.
•
Registerkarte „Daten“
Klicken Sie auf die Registerkarte "Daten", um die Daten in einem
einfachen Raster ohne Formatierung anzuzeigen. Dieses Raster bietet
die einfachste Möglichkeit, um die unbearbeiteten Daten in der Vorschau
anzuzeigen, während Sie Ihren Bericht durch Hinzufügen von Gruppen,
Filtern, Gruppenergebnissen, Berechnungen usw. ändern und
optimieren. Beim Abrufen der gewünschten Daten können Sie zwischen
den Registerkarten "Quelle" und "Daten" wechseln.
Nähere Informationen hierzu finden Sie unter „Anzeigen des Berichts auf
der Registerkarte "Daten"“ auf Seite 51.
•
Registerkarte „Entwurf“
Klicken Sie auf die Registerkarte "Entwurf", um Layout und Formatierung
des Berichts anzuzeigen und zu ändern. Hier können Sie Feldobjekte
verschieben und formatieren, Textobjekte hinzufügen, Berichtbereiche
neu anordnen und formatieren usw.
Nähere Informationen hierzu finden Sie unter „Überblick über das
Formatieren“ auf Seite 76.
•
Registerkarte „Bericht “
Klicken Sie auf die Registerkarte "Bericht", um den Crystal ReportsBericht anzuzeigen. Diese Registerkarte ermöglicht es Ihnen, beim
Positionieren und Formatieren von Objekten wie Feldern und
Diagrammen, eine Vorschau auf das Layout und die Formatierung des
Berichts anzuzeigen und diese zu ändern. Beim Formatieren des
endgültigen Berichts können Sie zwischen den Registerkarten "Entwurf"
und "Bericht" wechseln.
Nähere Informationen hierzu finden Sie unter „Überblick über das
Formatieren“ auf Seite 76.
•
Klicken Sie rechts oben auf dem Bildschirm auf die Schaltfläche
Anzeigen.
Über diese Option wird ein Berichtviewer in einem neuen Fenster
geöffnet.
30
Crystal Report Explorer-Anwenderhandbuch
Kapitel
Arbeiten mit Berichtdaten
3
Arbeiten mit Berichtdaten
Verwenden von Business Views
Verwenden von Business Views
Eine Business View ist eine Menge von Business Elements, die
Endbenutzern die höchste Stufe einer Datenabstraktion zur Verfügung stellt.
Der Anwender sieht Business Views als abstrakte Datenbankverbindung und
die enthaltenen Business Elements als virtuelle Tabellen, die Business-Felder
enthalten. Business Views werden über einen Thick-Client-Designer, den
Business View-Manager, in BusinessObjects Enterprise erstellt. Endbenutzer
greifen über Anwendungen wie Crystal Reports oder OLAP Intelligence und
beim Erstellen von Berichten mit dem Crystal Reports Explorer auf Business
Views zu. Weitere Informationen zu Business Views finden Sie im Business
Views-Administratorhandbuch.
Business Elements
Ein Business Element entspricht in etwa einer OLAP-Dimension oder einer
logischen Ansicht. Es besteht aus einer logisch verknüpften Menge von
Datenfeldern auf der Basis einer Datengrundlage. Die Felder können in einer
hierarchischen Struktur organisiert werden, so dass innerhalb eines Business
Elements verschiedene Stufen entstehen. Ein gebräuchliches Beispiel für ein
Business Element ist eine hierarchische Struktur mit den nachfolgend
aufgeführten Feldern: Staat, Bundesland oder Region und Stadt. Wenn Sie
Felder für den Bericht auswählen, treffen Sie Ihre Auswahl tatsächlich in einer
Hierarchie von Business-Feldern, aus denen ein Business Element besteht.
Weitere Informationen zum Auswählen von Feldern für den Bericht finden Sie
unter „Auswählen und Umbenennen von Feldern“ auf Seite 34.
Business-Felder
Ein Business-Feld kann ein Datenfeld, eine Formel oder ein SQL-Ausdruck
sein. Ein Business Element besteht aus einer Anzahl von Business-Feldern.
Diese Business-Felder sind für einen Bericht-Designer über die eine oder
mehrere Business Elements verfügbar, die in einer Business View enthalten
sind.
Verwenden von Berichtsdatenquellen
Eine Berichtdatenquelle ist ein vom Administrator oder Bericht-Designer
bereitgestellter Crystal Reports-Bericht, der normalerweise Berichtfelder,
Parameter, Filter und Formeln enthält. Berichtdatenquellen werden auf der
Seite "Datenquelle für den Bericht festlegen" erstellt. Berichtdatenquellen
werden in BusinessObjects Enterprise im angegebenen Datenquellenordner
gespeichert.
32
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Auswählen der Datenquelle
Der Administrator legt fest, ob Sie Zugriff auf Berichtsdatenquellen, Business
Views oder beides haben. Genaueres hierzu finden Sie im Crystal Reports
Explorer Administratorhandbuch.
Auswählen der Datenquelle
Sie können Berichte auf der Grundlage von Business Views oder
Berichtdatenquellen erstellen.
1.
2.
So wählen Sie eine Datenquelle für einen Bericht aus
Melden Sie sich bei BusinessObjects Enterprise an, und navigieren Sie
zu InfoView.
Wählen Sie auf der Symbolleiste in der Liste Neu Crystal ReportsBericht.
Die Fenster Seite "Bericht erstellen" und "Datenquelle auswählen"
werden angezeigt.
Tipp: Klicken Sie auf der Symbolleiste auf "Datenquelle auswählen", um
eine Datenquelle in Crystal Reports Explorer auszuwählen.
3.
4.
Wählen Sie im Dialogfeld "Datenquelle auswählen" den gewünschten
Datenquellentyp aus:
•
Erweitern Sie den Ordner Business View auswählen, um eine
Business View auszuwählen.
•
Erweitern Sie den Ordner Berichtdatenquelle auswählen, um eine
Berichtdatenquelle auszuwählen.
Klicken Sie auf OK.
Arbeiten mit Berichtparametern
Nachdem Sie die Datenquelle ausgewählt haben, können Sie mit der
Berichterstellung beginnen.
Wenn der als Datenquelle gewählte Bericht oder die Business View
Parameter enthält, wird das Dialogfeld "Parameter" angezeigt. Ein
Berichtparameter ist ein Feld, mit dessen Hilfe ein Bericht-Designer die
Berichtbenutzer zur Eingabe von Informationen auffordert, mit denen
anschließend die Daten in dem Bericht gefiltert werden. Ein weltweiter
Umsatzbericht kann beispielweise einen Parameter enthalten, der Sie
auffordert, eine Auswahl in einer Liste verfügbarer Länder zu treffen, um die
Berichtdaten auf ein Land zu beschränken.
Crystal Report Explorer-Anwenderhandbuch
33
3
3
Arbeiten mit Berichtdaten
Auswählen und Umbenennen von Feldern
Alternativ kann ein Debitorenkontobericht einen Parameter enthalten, durch
den Sie aufgefordert werden, den Namen eines oder mehrerer Debitoren
einzugeben, deren Kontodaten im Bericht angezeigt werden sollen.
Hinweis: Je nach Anzahl und Typ der Parameter im ursprünglichen Bericht
können die Optionen im Dialogfeld "Parameter" variieren. Es gibt optionale
und obligatorische Parameter. Einige Parameter bieten eine Liste mit
Standardwerten. Bei anderen ist es erforderlich, die Informationen manuell
einzugeben. Wenn Sie nicht genau wissen, wie Sie einen bestimmten
Berichtparameterwert festlegen sollen, wenden Sie sich an den Designer des
ursprünglichen Berichts.
Tipp: Sie können Parameterwerte ändern, indem Sie auf der Symbolleiste
auf "Berichtparameter" klicken, um das Dialogfeld "Parameter" zu öffnen.
Auswählen und Umbenennen von Feldern
Sie haben zwei Möglichkeiten, Felder für einen Bericht auszuwählen. Klicken
Sie in der Symbolleiste auf "Felder", und treffen Sie Ihre Auswahl direkt in der
Liste der verfügbaren Felder. Alternativ können Sie auch auf "Weitere"
klicken, um auf das Dialogfeld zur Feldauswahl zuzugreifen. In diesem
Dialogfeld können Sie Felder ebenfalls umbenennen.
Die verfügbaren Felder werden im Dialogfeld "Weitere" in einer Hierarchie
angezeigt. Falls Sie eine Business View als Datenquelle ausgewählt haben,
wird im Fensterbereich "Verfügbare Felder" eine Liste der Business Elements
angezeigt. Klicken Sie auf ein Business Element, um die darin enthaltene
Liste von Business-Feldern zu erweitern, und wählen Sie unter diesen
Feldern aus.
Falls Sie eine Berichtsdatenquelle ausgewählt haben, wird im Bereich
"Verfügbare Felder" eine Liste von Tabellen angezeigt. Klicken Sie auf eine
Tabelle, um die darin enthaltene Feldliste zu erweitern, und wählen Sie unter
diesen Feldern aus.
1.
So wählen Sie Felder aus
Klicken Sie in der Symbolleiste auf Felder.
2.
Folgende Optionen stehen Ihnen zur Verfügung:
•
Klicken Sie auf ein beliebiges Feld in der Liste, um es dem Bericht
hinzuzufügen.
Felder werden im Bericht von links nach rechts in der Reihenfolge
des Hinzufügens angezeigt. In der Liste wird jedes Feld, das Sie
hinzufügen, mit einem Sternchen (*) versehen.
34
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Auswählen und Umbenennen von Feldern
•
Sie können ein bereits mit einem Sternchen markiertes Feld aus dem
Bericht entfernen, indem Sie darauf klicken.
•
Klicken Sie auf Weitere, um das Dialogfeld zur Feldauswahl zu
öffnen.
Unter "Verfügbare Felder" finden Sie alle Felder, die in der
Datenquelle verfügbar sind. Unter "Anzuzeigende Felder" finden Sie
die Felder, die dem Bericht bereits hinzugefügt wurden. Markieren
Sie ein beliebiges Feld, und klicken Sie auf den entsprechenden
Pfeil, um es dem Bericht hinzuzufügen bzw. aus diesem zu
entfernen. Halten Sie die UMSCHALTTASTE beim Klicken gedrückt,
um mehrere Felder auszuwählen. Sie können Felder auch von einer
Liste in eine andere ziehen.
Um den Namen zu ändern, den ein bestimmtes Feld in einem
Bericht hat, markieren Sie das Feld im Bereich "Anzuzeigende
Felder" und klicken auf "Umbenennen".
Um Felder im Datenraster neu anzuordnen, markieren Sie ein Feld
im Bereich "Anzuzeigende Felder" und klicken anschließend auf den
Nach-oben- bzw. den Nach-unten-Pfeil, um die Reihenfolge zu
ändern.
Verwenden Sie die Schaltfläche "Entwurf", um die Felder im Bericht
neu anzuordnen.
3.
Klicken Sie auf OK.
Crystal Report Explorer-Anwenderhandbuch
35
3
3
Arbeiten mit Berichtdaten
Gruppieren von Datensätzen
1.
So durchsuchen Sie die Daten in einem Feld
Klicken Sie in der Symbolleiste auf Felder und anschließend auf
Weitere.
2.
Erweitern Sie das Business Element oder die Tabelle, um die
verfügbaren Felder anzuzeigen, und klicken Sie dann auf das
gewünschte Feld.
3.
Klicken Sie auf Daten durchsuchen.
Die Daten in diesem Feld werden im Dialogfenster "Feldbrowser"
angezeigt.
1.
So suchen Sie ein Feld
Klicken Sie in der Symbolleiste auf Felder und anschließend auf
Weitere.
2.
Das Dialogfeld "Felder" zeigt die in einer Hierarchie verfügbaren Felder
an.
3.
Klicken Sie auf Feld suchen.
4.
Geben Sie im Dialogfeld "Feld suchen" den Namen des gewünschten
Feldes ein.
5.
Klicken Sie auf OK.
Das Feld wird innerhalb der Hierarchie angezeigt.
Gruppieren von Datensätzen
Gruppierte Daten sind Daten, die sortiert und in sinnvolle Gruppen
zusammengefasst wurden. Bei einer Kundenliste könnte eine Gruppe
beispielsweise aus allen Kunden bestehen, die im selben Postleitzahlbereich
oder in derselben Region wohnen. In einem Umsatzbericht könnte eine
Gruppe alle Aufträge umfassen, die vom selben Kunden stammen, oder alle
Aufträge, die von einem bestimmten Vertreter eingebracht wurden.
Die verfügbaren Felder werden im Dialogfeld "Weitere" in einer Hierarchie
angezeigt. Falls Sie eine Business View als Datenquelle ausgewählt haben,
wird im Fensterbereich "Verfügbare Felder" eine Liste der Business Elements
angezeigt. Klicken Sie auf ein Business Element, um die darin enthaltene
Liste von Business-Feldern zu erweitern, und wählen Sie unter diesen
Feldern aus.
36
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Gruppieren von Datensätzen
Falls Sie eine Berichtsdatenquelle ausgewählt haben, wird im Bereich
"Verfügbare Felder" eine Liste von Tabellen angezeigt. Klicken Sie auf eine
Tabelle, um die darin enthaltene Feldliste zu erweitern, und wählen Sie unter
diesen Feldern aus.
Hinweis: Beim Sortieren und Gruppieren auf dem Datenbankserver kann die
Sortierreihenfolge Unterschiede aufweisen, wenn Unicode- oder UTF-8Daten verwendet werden. Die jeweilige Reihenfolge hängt von den für die
Datenquelle geltenden Regeln ab. In einigen Fällen werden Unicode-Daten
nach ihrem Binärwert sortiert. Sie können aber auch entsprechend einer
besonderen Ländereinstellung sortiert werden. Weitere Informationen zur
Sortierweise bei Unicode-Datenfeldern finden Sie in der Dokumentation zu
Ihrer Datenquelle.
1.
So gruppieren Sie Datensätze
Klicken Sie in der Symbolleiste auf Gruppen.
2.
Folgende Optionen stehen Ihnen zur Verfügung:
•
Klicken Sie in der Liste auf das gewünschte Feld, um die
gewünschte Gruppierung festzulegen.
Wenn Sie für die Gruppierung mehrere Felder angeben, werden
Datensätze entsprechend der Reihenfolge, in der Sie Felder
auswählen, auf jeder Ebene gruppiert. In der Liste wird der Namen
des jeweiligen Feldes, das bereits als Gruppe verwendet wird, mit
einem Sternchen (*) versehen.
•
Um eine Gruppe aus dem Bericht zu entfernen, klicken Sie auf ein
bereits mit einem Sternchen markiertes Feld.
•
Klicken Sie auf Erweitert.
Crystal Report Explorer-Anwenderhandbuch
37
3
3
Arbeiten mit Berichtdaten
Gruppieren von Datensätzen
Unter "Verfügbare Felder" finden Sie alle Felder oder Business
Elements, die in der Datenquelle verfügbar sind. Unter
"Gruppenerstellung auf" finden Sie die Felder, die bereits im Bericht
gruppiert wurden. Markieren Sie ein beliebiges Feld, und klicken Sie
auf den entsprechenden Pfeil, um dessen Gruppe dem Bericht
hinzuzufügen bzw. aus diesem zu entfernen. Halten Sie die
UMSCHALTTASTE beim Klicken gedrückt, um mehrere Felder
auszuwählen. Sie können Felder auch mittels Drag & Drop von einer
Liste in eine andere verschieben.
Um Gruppen im Bericht neu anzuordnen, markieren Sie im Bereich
"Gruppenerstellung auf" das Feld und klicken anschließend auf den
Nach-oben- bzw. den Nach-unten-Pfeil, um die Reihenfolge zu
ändern.
3.
Klicken Sie auf OK.
1.
So durchsuchen Sie die Daten in einem Feld
Klicken Sie in der Symbolleiste auf Felder und anschließend auf
Weitere.
2.
Erweitern Sie das Business Element oder die Tabelle, um die
verfügbaren Felder anzuzeigen, und klicken Sie dann auf das
gewünschte Feld.
3.
Klicken Sie auf Daten durchsuchen.
Die Daten in diesem Feld werden im Dialogfenster "Feldbrowser"
angezeigt.
1.
38
So suchen Sie ein Feld
Klicken Sie in der Symbolleiste auf Felder und anschließend auf
Weitere.
2.
Das Dialogfeld "Felder" zeigt die in einer Hierarchie verfügbaren Felder
an.
3.
Klicken Sie auf Feld suchen.
4.
Geben Sie im Dialogfeld "Feld suchen" das Feld ein, das Sie suchen
möchten.
5.
Klicken Sie auf OK.
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Filtern von Datensätzen
Filtern von Datensätzen
Mit Hilfe von Filtern können Sie die Anzahl der Datensätze beschränken, die
aus der Datenbank abgerufen werden. Durch Filter werden nicht nur
unerwünschte oder unnötige Daten aus einem Bericht entfernt, sondern auch
die Verarbeitung von Berichten beschleunigt. Ein Filter besteht aus zwei
Hauptkomponenten: dem Filterfeld und der Filterbedingung.
Das Filterfeld ist das Datenbankfeld, auf dessen Werte zugegriffen wird, um
zu bestimmen, ob jeder verfügbare Datensatz zum Resultset gehört. Sie
können beispielsweise einen monatlichen Produktvertriebsbericht filtern, um
nur die Produkte anzuzeigen, deren Feld „Verkaufte Einheiten“ einen Wert
größer als 5000 enthält. In diesem Fall ist "Verkaufte Einheiten" das Filterfeld.
Die Filterbedingung stellt die Regel bereit, mit deren Hilfe BusinessObjects
Enterprise bestimmt, ob ein bestimmter Datensatz zum Resultset gehört. Die
Filterbedingung besteht aus dem Filtertyp (einem Vergleichs- oder
Musteroperator) und dem Filterwert. Der Filtertyp legt den gewünschten
Vergleich fest. Der Filterwert bestimmt den Wert, mit dem die tatsächlichen
Datenbank-Feldwerte vergleicht werden. Das Resultset enthält nur die
Datensätze, deren Wert im Filterfeld der Filterbedingung entspricht. Im
vorherigen Beispiel lautet die Filterbedingung „Größer als 5000“, der Filtertyp
„Größer als“ und der Filterwert „5000“.
Je nach Datentyp des Filterfelds können gültige Filteroperatoren
unterschiedlich sein.
•
Mit den standardmäßigen Vergleichsoperatoren können numerische
Feldwerte (wie Währungs-, Datums-, Uhrzeit- und Datums-/UhrzeitWerte) mit einem numerischen Filterwert verglichen werden. Weitere
Informationen finden Sie unter “Vergleichsoperatoren” in der Online-Hilfe.
•
Mit dem Vergleichsoperatoren Gleich und Ungleich zusammen mit
den Musteroperatoren können Sie Zeichenfolgen-Feldwerte mit einem
Zeichenfolgen-Filterwert vergleichen. Weitere Informationen finden Sie
unter “Musteroperatoren” in der Online-Hilfe.
•
Verwenden Sie die Operatoren AND und OR zum Einrichten eines
Filters, der auf zwei oder mehr Bedingungen basiert. Nähere
Informationen hierzu finden Sie unter „Erstellen mehrerer
Filterbedingungen“ auf Seite 42.
Crystal Report Explorer-Anwenderhandbuch
39
3
3
Arbeiten mit Berichtdaten
Filtern von Datensätzen
Wenn Sie als Datenquelle beispielsweise einen länderspezifischen
Vertriebsbericht nutzen, können Sie die Daten so filtern, dass ausschließlich
Vertriebsdaten der Region "West" abgerufen werden. Wählen Sie dazu als
Filterfeld „Bereich“, als Filtertyp den Operator Gleich und als Filtertyp
„West“.
1.
So fügen Sie einen Filter hinzu
Klicken Sie in der Symbolleiste auf Filter.
2.
Klicken Sie auf die erste Liste, um das Filterfeld anzugeben.
3.
Klicken Sie auf die zweite Liste, um den Filtertyp anzugeben.
4.
Geben Sie den gewünschten Filterwert in das Textfeld ein, oder klicken
Sie auf die Schaltfläche neben dem Feld, um die gewünschten Felddaten
zu durchsuchen und auszuwählen.
Wenn Sie nach einem Datumsfeld filtern, klicken Sie auf die Schaltfläche
neben dem Feld, um den Popupkalender zu öffnen.
Wenn der Filterwert aus Text besteht, aktivieren Sie das Kontrollkästchen
"Groß-/Kleinschreibung beachten", damit der Filter zwischen Groß-/
Kleinschreibung unterscheidet.
5.
Klicken Sie auf Hinzufügen, um den neuen Filter zu übernehmen.
Auf der Registerkarte "Quelle" wird dem Bereich "Filter" eine
Beschreibung des Filters hinzugefügt.
Hinweis: Die Reihenfolge der Listen zum Erstellen von Filtern weicht in
der japanischen Version der Crystal Reports Explorer ab.
Weitere Informationen zu mehreren Filtern finden Sie unter „Erstellen
mehrerer Filterbedingungen“ auf Seite 42.
40
1.
So entfernen Sie einen Filter
Klicken Sie in der Symbolleiste auf Filter.
2.
Klicken Sie auf Erweitert.
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Filtern von Datensätzen
Das Dialogfeld „Filter“ wird angezeigt.
3.
Wählen Sie den Filter aus, den Sie entfernen möchten.
4.
Klicken Sie auf Entfernen und anschließend auf OK.
Tipp: Sie können auch im Dialogfeld "Filter" neue Filter hinzufügen. Die
Symbolleistenoptionen bieten jedoch eine identische Funktionalität.
1.
So ändern Sie einen Filter
Klicken Sie in der Symbolleiste auf Filter.
2.
Klicken Sie auf Erweitert.
3.
Wählen Sie den Filter aus, den Sie ändern möchten.
4.
Ändern Sie die Filterbedingungen wie erforderlich ab.
5.
Klicken Sie auf OK.
Das Dialogfeld „Filter“ wird angezeigt.
Crystal Report Explorer-Anwenderhandbuch
41
3
3
Arbeiten mit Berichtdaten
Bilden von Gruppenergebnissen
Erstellen mehrerer Filterbedingungen
Sie können Filterbedingungen mit Hilfe der Operatoren AND und OR sowie
Klammern miteinander kombinieren.
1.
So erstellen Sie mehrere Filter
Klicken Sie in der Symbolleiste auf Filter.
2.
Klicken Sie auf Erweitert.
3.
Klicken Sie auf die erste Liste, um das Filterfeld anzugeben.
4.
Klicken Sie auf die zweite Liste, um den Filtertyp anzugeben.
5.
Geben Sie den gewünschten Filterwert in das Textfeld ein, oder klicken
Sie auf die Schaltfläche neben dem Feld, um die gewünschten Felddaten
zu durchsuchen und auszuwählen.
Das Dialogfeld „Filter“ wird angezeigt.
Wenn Sie nach einem Datumsfeld filtern, klicken Sie auf die Schaltfläche
neben dem Feld, um den Popupkalender zu öffnen.
Wenn der Filterwert aus Text besteht, aktivieren Sie das Kontrollkästchen
"Groß-/Kleinschreibung beachten", damit der Filter zwischen Groß-/
Kleinschreibung unterscheidet.
6.
Klicken Sie auf Hinzufügen, um den Filter zu übernehmen.
7.
Doppelklicken Sie auf die Operatorschaltflächen (AND, OR und
Klammern), um den zweiten Teil der Filterbedingung zu erstellen.
8.
Klicken Sie auf Hinzufügen, um den Filter zu übernehmen.
9.
Wiederholen Sie die vorangehenden Schritte so lange, bis Sie alle Filter
erstellt haben.
10. Klicken Sie auf OK, um das Dialogfeld "Filter" zu schließen.
Weitere Informationen zu Filterprioritäten finden Sie unter „Operatoren“ in der
Onlinehilfe.
Bilden von Gruppenergebnissen
Ein wichtiger Grund, Datensätze in Gruppen aufzuteilen, besteht darin, dass
Sie Berechnungen gruppenweise anstatt für alle Datensätze des Berichts
vornehmen können.
42
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Bilden von Gruppenergebnissen
Wenn Crystal Reports Daten zusammenfasst, werden diese zunächst sortiert
und in Gruppen unterteilt; erst danach werden die Werte gruppenweise
zusammengefasst.
Crystal Reports bietet eine Reihe von Optionen zum Bilden von
Gruppenergebnissen. Abhängig vom Datentyp des Feldes, das
zusammengefasst werden soll, können Sie:
•
•
•
Summieren der Werte in jeder Gruppe.
Zählen aller Werte oder nur der voneinander verschiedenen Werte.
Ermitteln des Höchst-, Mindest- oder Durchschnittswertes oder des N.höchsten Wertes.
Hier ein Beispiel:
•
Kundenlistenberichte: Zeigen die Anzahl der Kunden in den einzelnen
Bundesländern auf. Im Gruppenergebnis werden die einzelnen Kunden
in den einzelnen Bundeslandgruppen gezählt.
•
Auftragsberichte: Zeigen den durchschnittlichen Auftragswert pro Monat
auf. Im Gruppenergebnis wird die Größe des Durchschnittsauftrags jeder
Monatsgruppe berechnet.
•
Umsatzberichte: Zeigen den Gesamtumsatz pro Vertreter auf. Im
Gruppenergebnis wird die Summe oder das Teilergebnis des
Auftragssummes der einzelnen Vertretergruppen ermittelt.
1.
So bilden Sie Gruppenergebnisse für gruppierte Daten
Klicken Sie in der Symbolleiste auf Gruppenergebnisse.
2.
Klicken Sie auf die Liste Gruppenergebnis von, und wählen Sie das
Feld, dessen Werte Sie summieren möchten.
3.
Klicken Sie auf die nächste Liste, um treffen Sie in den verfügbaren
Gruppenergebnisfunktionen eine Auswahl.
4.
Klicken Sie auf Hinzufügen.
Hinweis: Wenn Sie ein Gruppenergebnis hinzufügen, wird das
Gruppenergebnisfeld auf sein Standardfeld ausgerichtet.
1.
So entfernen Sie ein Gruppenergebnisfeld
Klicken Sie in der Symbolleiste auf Gruppenergebnisse.
2.
Klicken Sie auf Erweitert.
Crystal Report Explorer-Anwenderhandbuch
43
3
3
Arbeiten mit Berichtdaten
Bilden von Gruppenergebnissen
Das Dialogfeld "Gruppenergebnisse" wird angezeigt.
3.
Wählen Sie unter "Gruppenergebnisfelder" das Gruppenergebnisfeld,
das Sie entfernen möchten.
4.
Klicken Sie auf Entfernen und anschließend auf OK.
Tipp: Sie können auch im Dialogfeld "Gruppenergebnisse" neue
Gruppenergebnisse hinzufügen. Die Symbolleistenoptionen bieten
jedoch eine identische Funktionalität.
1.
So ändern Sie ein Gruppenergebnisfeld
Klicken Sie in der Symbolleiste auf Gruppenergebnisse.
2.
Klicken Sie auf Erweitert.
Das Dialogfeld "Gruppenergebnisse" wird angezeigt.
3.
Wählen Sie unter "Gruppenergebnisfelder" das Gruppenergebnisfeld,
das Sie ändern möchten.
4.
Ändern Sie die Gruppenergebniskategorien wie erforderlich ab.
5.
Klicken Sie auf Ändern.
Das geänderte Gruppenergebnisfeld wird im Bereich
"Gruppenergebnisfelder" angezeigt.
6.
44
Klicken Sie auf OK.
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Sortieren von Datensätzen
Sortieren von Datensätzen
Unter Sortieren versteht man den Prozess, Daten in einer bestimmten
Reihenfolge anzuordnen, um Daten leichter finden und auswerten zu können.
Wenn Sie ein Datenbankfeld in Ihren Bericht einfügen, werden die Daten
dieses Feldes zu Beginn in der Reihenfolge angezeigt, in der sie ursprünglich
in die Datenbank eingegeben wurden. In einem Bericht dieser Art bestimmte
Daten zu finden, ist recht schwierig. Daten lassen sich wesentlich leichter
durchsehen und finden, wenn sie nach logischen Gesichtspunkten sortiert
sind. Beispielsweise könnten Sie eine Kundenliste in alphabetischer
Reihenfolge nach Namen oder Land sortieren.
Wenn Sie in Crystal Reports sortieren, fordert Sie das Programm zu zwei
Angaben auf:
•
•
Sortierfeld.
Sortierreihenfolge.
Hinweis: Beim Sortieren und Gruppieren auf dem Datenbankserver kann die
Sortierreihenfolge Unterschiede aufweisen, wenn Unicode- oder UTF-8Daten verwendet werden. Die jeweilige Reihenfolge hängt von den für die
Datenquelle geltenden Regeln ab. In einigen Fällen werden Unicode-Daten
nach ihrem Binärwert sortiert. Sie können aber auch entsprechend einer
besonderen Ländereinstellung sortiert werden. Weitere Informationen zur
Sortierweise bei Unicode-Datenfeldern finden Sie in der Dokumentation zu
Ihrer Datenquelle.
Sortierfeld
Ein Sortierfeld ist ein Feld, das die Reihenfolge festlegt, in der die Daten im
Bericht erscheinen. Sie können fast jedes Feld, einschließlich Formelfelder,
als Sortierfeld verwenden. Der Datentyp des Feldes bestimmt das Verfahren,
nach dem die Daten dieses Feldes sortiert werden.
Crystal Report Explorer-Anwenderhandbuch
45
3
3
Arbeiten mit Berichtdaten
Sortieren von Datensätzen
Hinweis: Sie können auch auf Memo- oder Blob-Felder sortieren.
Feldtyp
Sortierreihenfolge
Einzelne-Zeichen Zeichenfolge
Leerzeichen
Satzzeichen
Zahlen
Großbuchstaben
Kleinbuchstaben
Zeichenfolgenfelder (mehrere
Zeichen)
zwei Buchstaben
drei Buchstaben
vier Buchstaben usw.
Hier ein Beispiel:
• "BOB" kommt vor "bob"
•
•
•
„123“ steht vor „124“
„ “ (Leerzeichen) steht vor „a“
„aa“ steht vor „aaa“
Währungsfelder
numerische Reihenfolge
Zahlenfelder
numerische Reihenfolge
Datumsfelder
chronologische Reihenfolge
DatumZeit-Felder
chronologische Reihenfolge
gleiches Datum anschließend nach der
Uhrzeit
Zeitfelder
chronologische Reihenfolge
Felder für boolesche Werte
FALSE-Werte (0)
TRUE-Werte (1)
Leere Werte
leere Werte
nicht-leere Werte
Sortierreihenfolge
Unter Reihenfolge versteht man die Anordnung, in der Werte nach dem
Sortieren angezeigt werden.
•
46
Aufsteigend
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Sortieren von Datensätzen
Bei aufsteigender Sortierrichtung wird vom kleinsten zum größten Wert
(1 bis 9, A bis Z, FALSE bis TRUE) sortiert. Dabei werden die Datensätze
vom Programm nach den Werten des von Ihnen gewählten Sortierfelds in
aufsteigender Reihenfolge sortiert.
•
Absteigend
Bei absteigender Sortierrichtung wird vom größten zum kleinsten Wert (9
bis 1, Z bis A, TRUE bis FALSE) sortiert. Dabei werden die Datensätze
vom Programm nach den Werten des von Ihnen gewählten Sortierfelder
in absteigender Reihenfolge sortiert.
Sortieren von Datensätzen im Detailbereich
Wenn Sie Datenzeilen sortieren, die im Detailbereich eines Berichts
angezeigt werden, werden diese gemäß den Werten in einem einzelnen oder
mehreren Feldern in auf- oder absteigender Reihenfolge sortiert.
Beim Sortieren nach einem einzelnen Feld werden alle Datensätze, die im
Bericht verwendet werden, nach den Werten eines einzigen Feldes sortiert.
Das Sortieren eines Inventarberichts nach der Lagernummer oder das
Sortieren einer Kundenliste nach der Kundennummer sind Beispiele für
Einzelfeldsortierungen.
Beim Sortieren nach mehreren Feldern sortiert das Programm die
Datensätze zuerst nach den Werten des ersten ausgewählten Feldes in
aufsteigender oder absteigender Reihenfolge, wie angegeben. Falls mehrere
Datensätze im ersten Sortierfeld den gleichen Feldwert haben, werden diese
Datensätze (und nur diese) dann nach dem Wert im zweiten Sortierfeld
sortiert.
Wenn Sie beispielsweise in erster Linie nach dem Feld {Kunde.LAND} und
anschließend in zweiter Linie nach dem Feld {Kunde.REGION} in
aufsteigender Reihenfolge sortieren lassen, werden im Bericht die Länder in
alphabetischer Reihenfolge aufgeführt und für jedes Land die Regionen
ebenfalls in alphabetischer Reihenfolge angeordnet. Alle anderen Felder,
beispielsweise die Postleitzahlbereiche innerhalb einer Region, bleiben
jedoch unsortiert.
Hinweis: Wenn die Datensätze auch gruppiert sind, werden die Datensätze
im Detailbereich der einzelnen Gruppen gemäß dem Sortierfeld und der
Sortierrichtung sortiert.
1.
So sortieren Sie Datensätze im Detailbereich
Klicken Sie in der Symbolleiste auf Berichtsortierung.
2.
Klicken Sie auf die erste Liste, und wählen Sie das erste Sortierfeld.
Crystal Report Explorer-Anwenderhandbuch
47
3
3
Arbeiten mit Berichtdaten
Sortieren von Datensätzen
3.
Klicken Sie auf die zweite Liste, um die Sortierrichtung anzugeben.
4.
Klicken Sie auf Hinzufügen.
5.
Wiederholen Sie diesen Vorgang, um weitere Datensätze nach einem
anderen Feld zu sortieren.
1.
So zeigen Sie sortierte Datensätze an und ändern sie
Klicken Sie in der Symbolleiste auf Berichtsortierung.
2.
Klicken Sie auf Erweitert.
Das Dialogfeld „Sortierung“ wird angezeigt. Die Liste aller sortierten
Datensätze (einschließlich der Datensätze für Gruppen und
Gruppenergebnisse) wird unterhalb der Registerkarte Details angezeigt.
3.
Wählen Sie unter der Registerkarte Details den sortierten Datensatz,
den Sie ändern möchten.
4.
Stellen Sie sicher, dass in der ersten Liste das korrekte Sortierfeld
angezeigt wird.
5.
Klicken Sie auf die zweite Liste, um die Sortierrichtung anzugeben.
6.
Klicken Sie auf Ändern und anschließend auf OK.
Sortieren von Datensatzgruppen
Durch Sortieren nach einem gruppierten Feld werden vollständige
Datensatzgruppen in auf- oder absteigender Reihenfolge sortiert. Bei der
Sortierung des gruppierten Felds "Land" in absteigender Reihenfolge wird die
Gruppe "Zypern" oben im Bericht und die Gruppe "Argentinien" am Ende
platziert.
Wenn Sie ein Feld gruppieren, wird die Gruppe automatisch in absteigender
Reihenfolge sortiert. Sie können die Sortierreihenfolge mit Hilfe des
Dialogfeldes "Erweitert" unter "Berichtsortierungen" ändern.
Hinweis: Informationen zum Sortieren von Datensätzen innerhalb einer
Gruppe finden Sie unter „Sortieren von Datensätzen im Detailbereich“ auf
Seite 47.
48
1.
So sortieren Sie Datensatzgruppen
Klicken Sie in der Symbolleiste auf Berichtsortierung.
2.
Klicken Sie auf Erweitert.
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Sortieren von Datensätzen
Das Dialogfeld „Sortierung“ wird angezeigt.
3.
Wählen Sie auf der Registerkarte Gruppen oder Gruppenergebnisse
die Option Gruppen.
Eine Liste der verfügbaren Gruppen wird angezeigt, zusammen mit der
Sortierrichtung, die den Gruppen zugewiesen wurde.
4.
Klicken Sie auf die erste Liste, um die gruppierten Felder auszuwählen,
deren Gruppen Sie sortieren möchten.
5.
Klicken Sie auf die zweite Liste, um die Sortierrichtung anzugeben.
Sie können entweder Aufsteigend oder Absteigend auswählen.
Wenn Sie in der ersten Liste ein Datums- oder Uhrzeitfeld auswählen,
können Sie die Granularität der Sortierung festlegen, z.B. „täglich“ oder
„wöchentlich“.
6.
Klicken Sie auf Ändern und anschließend auf OK.
Crystal Report Explorer-Anwenderhandbuch
49
3
3
Arbeiten mit Berichtdaten
Sortieren von Datensätzen
Sortieren und Auswählen von Gruppen basierend auf
Gruppenergebniswerten
Sie können Gruppenergebnisse in aufsteigender oder absteigender
Reihenfolge sortieren. Wenn Sie beispielsweise in einem Auftragsbericht die
Auftragssumme nach Bundesland gruppieren und entsprechende
Teilergebnisse bilden, können Sie die Gruppen wie folgt anordnen:
•
•
Vom niedrigsten bis zum höchsten Auftragsbetrag (aufsteigend).
Vom höchsten bis zum niedrigsten Auftragsbetrag (absteigend).
Darüber hinaus können Sie die oberen oder unteren Gruppen („Erste/Letzte
N“ basierend auf einem Gruppenergebniswert) auswählen, um den Bericht
weiter zu strukturieren.
Hinweis: Vergewissern Sie sich, bevor Sie diese Schritte ausführen, dass
Sie dem Bericht die entsprechenden Gruppen und Gruppenergebnisse
hinzugefügt haben.
1.
So sortieren Sie gruppierte Daten basierend auf Gruppenergebnissen
Klicken Sie in der Symbolleiste auf Berichtsortierung.
2.
Klicken Sie auf Erweitert.
Das Dialogfeld „Sortierung“ wird angezeigt.
3.
Wählen Sie auf der Registerkarte Gruppen oder Gruppenergebnisse
die Option Ergebnisse.
4.
Wählen Sie in der ersten Liste das Gruppenergebnis aus, nach dem Sie
Ihre Datensatzgruppen sortieren möchten.
5.
Wählen Sie in der zweiten Liste die Sortierreihenfolge aus. Sie haben
folgende Optionen:
•
•
•
•
•
•
•
•
50
Aufsteigend
Absteigend
Erste N
Oberste 5
Oberste 10
Letzte N
Unterste 5
Unterste 10
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Anzeigen des Berichts auf der Registerkarte "Daten"
6.
Für eine auf einem N-Wert basierende Sortierreihenfolge geben Sie den
Wert in das Feld N-Wert ein.
Hinweis: Wenn Sie nach einem spezifischen Wert, beispielsweise nach
„Oberste 5“, oder nach einem N-Wert sortieren, können Sie die
Datensätze aller verbleibenden Gruppen in einer neuen Gruppe namens
„Andere“ kombinieren, indem sie die Option Gruppe 'Andere'
einbeziehen wählen.
7.
Klicken Sie auf Hinzufügen und anschließend auf OK.
Entfernen der Sortierung
1.
Klicken Sie in der Symbolleiste auf Berichtsortierung.
2.
Klicken Sie auf Erweitert.
Das Dialogfeld „Sortierung“ wird angezeigt.
3.
Wählen Sie auf der Registerkarte Details die Sortierung, die Sie
entfernen möchten, und klicken Sie auf Entfernen.
4.
Klicken Sie auf OK.
Anzeigen des Berichts auf der Registerkarte
"Daten"
Auf der Registerkarte "Daten" werden die Berichtdaten in einem Raster
angezeigt. Die im Raster enthaltenen Daten werden bei jeder Optimierung
des Berichts anhand der Datenbank aktualisiert. Es wird empfohlen, den
Bericht auf der Registerkarte "Quelle" zu erstellen und für die Vorschau zur
Registerkarte "Daten" zu wechseln, um die Auslastung der Datenbankserver
gering zu halten und die Berichterstellung zu beschleunigen.
Auf der Registerkarte "Daten" werden Daten sowohl in der Gruppenansicht
als auch in der flachen Ansicht angezeigt. In der Gruppenansicht können Sie
auf eine Gruppe in der Gruppenstruktur klicken, um nur die Datensätze in
dieser spezifischen Gruppe anzuzeigen. In der flachen Ansicht werden alle im
Datenraster enthaltenen Datensätze angezeigt. Klicken Sie auf eine Gruppe
in der Gruppenstruktur, um zu dem Berichtbereich zu springen, in dem die
Datensätze für diese Gruppe enthalten sind.
Crystal Report Explorer-Anwenderhandbuch
51
3
3
Arbeiten mit Berichtdaten
Anzeigen des Berichts auf der Registerkarte "Daten"
Zum Ein- oder Ausblenden der Gruppenstruktur können Sie auf
"Gruppenstruktur ein/ausblenden" klicken.
Hinweis: Die Registerkarte "Daten" und die Registerkarte "Quelle" sind nur
verfügbar, wenn Sie BusinessObjects Enterprise Premium installiert haben.
Falls Sie diesbezüglich weitere Informationen benötigen, wenden Sie sich an
Ihren BusinessObjects Enterprise-Administrator.
1.
So durchsuchen Sie gruppierte Daten
Wählen Sie eine Datenquelle für Ihren Bericht aus.
2.
Klicken Sie auf der Symbolleiste auf Felder, und legen Sie die
gewünschten Felder fest.
3.
Klicken Sie auf der Symbolleiste auf Gruppen, und legen Sie die
gewünschten Gruppen fest.
4.
Klicken Sie auf die Registerkarte Daten.
Die Gruppenstruktur wird links vom Datenraster angezeigt. Im
Datenraster werden die gruppierten Daten in der flachen Ansicht
angezeigt.
5.
Klicken Sie auf eine Gruppe, um zu dem Berichtbereich zu springen, in
dem die Datensätze für diese Gruppe enthalten sind.
Tipp: Klicken Sie auf Zur flachen Ansicht wechseln/Zur Gruppenansicht
wechseln, um zwischen flacher Ansicht und Gruppenansicht umzuschalten.
Die einzelnen Zeilen im Datenraster sind nummeriert. Im Rasterviewer wird
angezeigt, wie viele Zeilen im Gesamtbericht enthalten sind und welche
derzeit angezeigt werden.
•
So springen Sie zu einer bestimmten Berichtzeile
Geben Sie im Texteingabefeld "Zeile suchen" die gewünschte
Zeilennummer ein, und klicken Sie dann auf Zeile suchen.
Im Datenraster wird der Bericht ab der angegebenen Zeile angezeigt.
52
Crystal Report Explorer-Anwenderhandbuch
Arbeiten mit Berichtdaten
Veröffentlichen und Exportieren des Berichts
Veröffentlichen und Exportieren des Berichts
Nachdem Sie einen Bericht erstellt haben, können Sie ihn in einem Ihrer
BusinessObjects Enterprise-Ordner veröffentlichen oder eine Kopie in einem
von mehreren Dateiformaten auf das lokale Laufwerk exportieren.
1.
So veröffentlichen Sie einen Bericht
Klicken Sie in der Symbolleiste auf Bericht speichern.
2.
Geben Sie im Dialogfeld „Speichern“ in dem Feld Speichern unter den
Namen für den Bericht ein.
3.
Geben Sie die zusätzlichen Informationen zu Ihrem Bericht im Feld
Beschreibung ein.
Diese Beschreibung wird anderen BusinessObjects EnterpriseAnwendern angezeigt, die auf den Bericht zugreifen können.
4.
Durchlaufen Sie die verfügbaren Ordner, um den neuen Bericht am
gewünschten Speicherort abzulegen.
5.
Klicken Sie auf OK.
1.
So exportieren Sie einen Bericht auf ein lokales Laufwerk
Klicken Sie auf die Registerkarte Bericht (oder klicken Sie auf die
Schaltfläche Anzeigen), um den formatierten Crystal Reports-Bericht in
einem Bericht-Viewer anzuzeigen.
2.
Klicken Sie auf der Viewer-Symbolleiste auf die Schaltfläche
Exportieren.
3.
Treffen Sie nach Aufforderung eine Auswahl in den verfügbaren
Dateiformaten, und geben Sie weitere Informationen ein, die der
Berichtviewer anfordert (Seitenbereich, Dateiname, Festplattenpfad
usw.).
Crystal Report Explorer-Anwenderhandbuch
53
3
3
Arbeiten mit Berichtdaten
Veröffentlichen und Exportieren des Berichts
54
Crystal Report Explorer-Anwenderhandbuch
Kapitel
Hinzufügen von
Berechnungen mithilfe von
Formeln
4
Hinzufügen von Berechnungen mithilfe von Formeln
Formeln im Überblick
Formeln im Überblick
In vielen Fällen sind die für einen Bericht benötigten Daten bereits in den
Feldern einer Datenbanktabelle enthalten. So würden Sie beispielsweise zur
Vorbereitung einer Bestellungsliste die für diesen Zweck geeigneten Felder in
den Bericht aufnehmen.
Gelegentlich müssen Sie aber auch Daten in den Bericht aufnehmen, die in
keinem der Datenfelder enthalten sind. In solchen Fällen müssen Sie eine
Formel erstellen. Wenn Sie beispielsweise die Anzahl der Tage berechnen
möchten, die zur Verarbeitung der einzelnen Bestellungen erforderlich sind,
benötigen Sie eine Formel, um die Anzahl der Tage zwischen dem
Bestelldatum und dem Versanddatum zu ermitteln. Mit Hilfe von Crystal
Reports Explorer können Sie eine solche Formel problemlos erstellen.
Hinweis:
•
Mit Crystal Reports Explorer können Sie Berichtsformeln nur in der
Crystal-Syntax erstellen oder ändern. Berichtsformeln sind Formeln, die
unabhängig in einem Bericht erstellt werden und mit denen einer der
sieben einfachen unterstützten Datentypen [Zahl (Number), Währung
(Currency), Zeichenfolge (String), Boolesch (Boolean), Datum (Date),
Uhrzeit (Time) und DatumUhrzeit (DateTime)] berechnet und
zurückgegeben werden. Ein Beispiel für eine Berichtsformel ist eine
Formel, mit der die Anzahl der Tage zwischen dem Bestelldatum und
dem Versanddatum berechnet wird.
•
Das Erstellen bedingter Formatierungen, der Datensatzauswahl und
Suchformeln, die Sie in Crystal Reports erstellen können, IST NICHT
MÖGLICH.
Typische Anwendungsbeispiele für Formeln
Es gibt viele Verwendungsmöglichkeiten für Formeln. Wenn Sie Daten auf
eine ganz bestimmte Weise bearbeiten müssen, können Sie dazu eine
Formel benutzen.
Erstellen berechneter Felder zur Aufnahme in Ihren Bericht
So berechnen Sie den Preis abzüglich eines Rabatts von 15 %:
Beispiel in der Crystal-Syntax:
{Auftragsdetail.Einzelpreis}*.85
Formatieren von Text in einem Bericht
So ändern Sie alle Inhalte des Feldes Kundenname zu Großbuchstaben:
56
Crystal Report Explorer-Anwenderhandbuch
Hinzufügen von Berechnungen mithilfe von Formeln
Komponenten und Syntax von Formeln
Beispiel in der Crystal-Syntax:
UpperCase ({Kunde.Kundenname})
Extrahieren von Teilen einer Textzeichenfolge
So extrahieren Sie den Anfangsbuchstaben des Kundennamens:
Beispiel in der Crystal-Syntax:
{Kunde.Kundenname} [1]
Extrahieren von Teilen eines Datums
So ermitteln Sie, in welchem Monat eine Bestellung aufgegeben wurde:
Beispiel in der Crystal-Syntax:
Month ({Aufträge.Auftragsdatum})
Komponenten und Syntax von Formeln
Formeln bestehen aus zwei wesentlichen Teilen: den Komponenten und der
Syntax. Die Komponenten sind die Bestandteile, die Sie zum Erstellen einer
Formel hinzufügen, während die Syntax die Regel darstellt, die beim
Zusammensetzen der Komponenten zu beachten ist.
Formelkomponenten
Die Erstellung einer Formel mit Hilfe der Crystal Reports Explorer funktioniert
ähnlich wie die Erstellung einer Formel in einer Tabellenkalkulation. Sie
können für Ihre Formel folgende Komponenten verwenden:
Felder
Beispiel: {Kunde.NACHNAME}, {Kunde.VORJAHRESUMSATZ}
Zahlen
Beispiel: 1, 2, 3.1416
Text
Beispiel: "Menge", ":", "Ihr Text"
Operatoren
Beispiel: + (Addieren), * (Multiplizieren), / (Dividieren), -x
(Vorzeichenwechsel)
Operatoren sind Aktionen, die Sie in Ihren Formeln verwenden können.
Crystal Report Explorer-Anwenderhandbuch
57
4
4
Hinzufügen von Berechnungen mithilfe von Formeln
Komponenten und Syntax von Formeln
Funktionen
Beispiel: Round (x), Trim (x)
Mit Funktionen werden Rechenvorgänge wie beispielsweise
Mittelwertbildung, Summenbildung und Zählung durchgeführt. Alle
verfügbaren Funktionen sind zusammen mit ihren Argumenten nach
Verwendung geordnet aufgeführt.
Strukturen kontrollieren
Beispiel: „If“ und „Select“, „For“-Schleifen
Werte von Gruppenfeldern
Beispiel: Average (Feld, BedFeld), Sum (Feld, BedFeld,
"Bedingung")
In Gruppenfeldwerten wird eine Gruppe zusammengefasst. Sie können
Gruppenfeldwerte beispielsweise dazu verwenden, den prozentualen
Anteil jeder Gruppe am Gesamtergebnis zu ermitteln.
Weitere Formeln
Beispiel: {@BruttoGewinn}, {@SOLL}
Formelsyntax
Die Syntax ist die Regel, die Sie beim Erstellen einer korrekten Formel
beachten müssen. Hier einige Grundregeln:
•
Textzeichenfolgen müssen in Anführungszeichen eingeschlossen
werden.
•
Argumente müssen in Klammern eingeschlossen werden (falls
zutreffend).
•
Formeln, auf die verwiesen wird, sind durch ein vorangestelltes @ zu
kennzeichnen.
Crystal-Syntax
Crystal Reports bietet Unterstützung für Formeln, die sowohl in der Crystalals auch in der Basic-Syntax erstellt wurden. Wenn Sie unter Verwendung
von Crystal Reports Explorer Berechnungen hinzufügen oder ändern,
müssen Sie jedoch Crystal-Syntax verwenden. Weitere Informationen finden
Sie unter „Crystal-Syntax im Überblick“ auf Seite 102.
58
Crystal Report Explorer-Anwenderhandbuch
Hinzufügen von Berechnungen mithilfe von Formeln
Erstellen und Ändern von Formeln
Erstellen und Ändern von Formeln
Erstellen und Einfügen von Formeln in einem Bericht
1.
Klicken Sie in der Symbolleiste auf Formeln.
Das Dialogfeld "Formeln" wird angezeigt.
2.
Klicken Sie auf Neu.
3.
Geben Sie im Feld Formelname den Formelnamen ein.
4.
Definieren Sie im Feld Formeltext die Berechnung in der Crystal-Syntax.
•
Doppelklicken Sie in der Liste "Felder" auf ein beliebiges Feld, um es
der Formel hinzuzufügen.
•
Verwenden Sie für Berechnungen zwischen Feldern die
arithmetischen Standardoperatoren. Weitere Informationen finden
Sie unter “Arithmetische Operatoren” in der Online-Hife.
•
Weitere Informationen über zusätzliche Funktionen und Operatoren,
mit denen Sie andere erweiterte Formeln erstellen können, finden
Sie unter Funktionsreferenz und Operatorenreferenz in der
Onlinehilfe.
Crystal Report Explorer-Anwenderhandbuch
59
4
4
Hinzufügen von Berechnungen mithilfe von Formeln
Erstellen und Ändern von Formeln
5.
Klicken Sie auf Überprüfen.
Enthält die Formel einen Fehler, zeigt BusinessObjects Enterprise die
vom Formelcompiler zurückgegebene Fehlermeldung an. Sie müssen
dem Problem abhelfen, um die Formel dem Bericht hinzuzufügen.
Weitere Informationen über jede mögliche Fehlermeldungen finden Sie in
„Fehlermeldungen und Formel-Compiler-Warnungen“ auf Seite 62.
6.
Klicken Sie auf OK, um die Formel der Liste Formeln hinzuzufügen.
Die neue Berechnung wird dem Feldbereich auf der Registerkarte
"Quelle" und der Liste der Felder im Dialogfeld "Felder" hinzugefügt.
Bearbeiten von Formeln
1.
Klicken Sie in der Symbolleiste auf Formeln.
Das Dialogfeld "Formeln" wird angezeigt.
60
2.
Klicken Sie in der Liste Formel auf die Formel, die Sie bearbeiten
möchten.
3.
Geben Sie im Feld Formelname den geänderten Formelnamen ein.
4.
Ändern Sie im Feld Formeltext die Berechnung den Anforderungen
entsprechend.
5.
Klicken Sie auf Überprüfen.
Crystal Report Explorer-Anwenderhandbuch
Hinzufügen von Berechnungen mithilfe von Formeln
Löschen von Formeln
Enthält die Formel einen Fehler, zeigt BusinessObjects Enterprise die
vom Formelcompiler zurückgegebene Fehlermeldung an. Sie müssen
dem Problem abhelfen, um die Formel dem Bericht hinzuzufügen.
Weitere Informationen über jede mögliche Fehlermeldungen finden Sie in
„Fehlermeldungen und Formel-Compiler-Warnungen“ auf Seite 62.
6.
Klicken Sie auf OK.
Die neue Berechnung wird dem Feldbereich auf der Registerkarte
"Quelle" und der Liste der Felder im Dialogfeld "Felder" hinzugefügt.
Löschen von Formeln
Beim Erstellen einer Formel führt BusinessObjects Enterprise Folgendes
durch:
•
Er speichert die Spezifikation zur Erstellung der Formel unter dem
Namen, den Sie der Formel zugewiesen haben.
•
Eine Arbeitskopie dieser Formel wird auf der Registerkarte "Quelle" im
Bereich "Felder" abgelegt.
Sie können eine Arbeitskopie einer Formel aus einem Bericht entfernen, ohne
die Formelspezifikation vollständig löschen zu müssen. Beim Löschen der
Formelspezifikation werden alle Instanzen der Formel vollständig gelöscht.
Entfernen der Arbeitsformel aus Ihrem Bericht
1.
Klicken Sie in der Symbolleiste auf Felder; klicken Sie anschließend auf
Weitere, um das Dialogfeld "Felder" zu öffnen.
2.
Klicken Sie in der Liste "Anzuzeigende Felder" auf die Formel, die Sie
aus dem Bericht entfernen möchten.
3.
Verwenden Sie die Pfeiltasten, um die Formel in die Liste "Verfügbare
Felder" zu verschieben.
Die Formel wird aus dem Bereich "Felder" der Registerkarte "Quelle"
entfernt.
Hinweis: Auch wenn Sie alle Arbeitskopien einer Formel aus dem Bericht
gelöscht haben, ist die Formelspezifikation noch unverändert vorhanden.
Löschen der Formelspezifikation
1.
Klicken Sie in der Symbolleiste auf Formeln.
2.
Klicken Sie unter "Formel" auf die Formel, die Sie löschen möchten.
Crystal Report Explorer-Anwenderhandbuch
61
4
4
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
3.
Klicken Sie auf Entfernen.
4.
Klicken Sie auf OK.
Alle Arbeitskopien der Formel werden gelöscht. Die Formelspezifikation
wird aus der Liste der verfügbaren Felder entfernt.
Fehlermeldungen und Formel-CompilerWarnungen
Wenn Sie eine Berechnung hinzufügen, deren Formel einen Fehler enthält,
zeigt BusinessObjects Enterprise die vom Formel-Compiler zurückgegebene
Fehlermeldung an. Sie müssen dem Problem abhelfen, um die Formel dem
Bericht hinzuzufügen. Dieser Abschnitt enthält weitere Einzelheiten zu den
möglichen Fehlermeldungen.
Eine schließende Klammer ) fehlt.
Eckige Klammern können nur paarweise verwendet werden; jeder öffnenden
Klammer muss eine schließende Klammer zugeordnet sein. Sie haben einer
öffnenden runden Klammer keine schließende Klammer zugeordnet. Fügen
Sie die fehlende Klammer ein, und überprüfen Sie die Formel erneut.
Eine ] fehlt.
Eckige Klammern können nur paarweise verwendet werden; jeder öffnenden
Klammer muss eine schließende Klammer zugeordnet sein. Sie haben einer
öffnenden eckigen Klammer keine schließende Klammer zugeordnet. Fügen
Sie die fehlende Klammer ein, und überprüfen Sie die Formel erneut.
Eine boolesche Bereichsvariable ist unzulässig.
Sie haben eine boolesche Bereichsvariable eingegeben. Bereichsvariablen
sind in allen Datentypen außer dem booleschen Datentyp zulässig. Sie
können entweder den Datentyp ändern oder eine boolesche Elementvariable
eingeben, welche die boolesche Bereichsvariable ersetzt.
Eine Tageszahl muss zwischen 1 und der Anzahl der Tage des
Monats liegen.
Sie haben eine Tageszahl eingegeben, die nicht mit dem Monat
übereinstimmt. Die Formelprüffunktion zeigt diese Warnung an, wenn Sie
z.B. für Januar die Tageszahl Null (0) bzw. 32 oder größer eingeben. Ändern
Sie die Tageszahl so, dass Sie dem Monat entspricht, und überprüfen Sie die
Formel erneut.
62
Crystal Report Explorer-Anwenderhandbuch
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
Hier ist ein Feld erforderlich.
Sie haben in Ihre Formel ein Element eingegeben, das kein Feld ist, obwohl
an dieser Position ein Feld erwartet wird. Beheben Sie das Problem, und
überprüfen Sie die Formel erneut.
Eine Formel darf weder direkt noch indirekt auf sich selbst
verweisen.
Sie können keine Formel eingeben, die auf sich selbst verweist. Wenn Sie z.
B. die Formel @Profit erstellen, können Sie @Profit nicht als Argument einer
Funktion verwenden. Entfernen Sie den Verweis, und überprüfen Sie die
Formel erneut.
Hier ist eine Funktion erforderlich.
Das Dialogfeld "Formeln" erwartet eine Funktion. Diese wurde nicht
eingegeben. Überprüfen Sie Ihre Formel, und geben Sie die erforderliche
Funktion ein, oder korrigieren Sie die Formel, falls ein Fehler vorliegt.
Eine Monatszahl muss zwischen 1 und 12 liegen.
Sie haben eine Monatszahl eingegeben, die außerhalb des zulässigen
Bereichs liegt. Geben Sie eine Monatszahl zwischen 1 und 12 ein, und
überprüfen Sie die Formel erneut.
Eine Zeichenfolge darf höchstens 65.534 Zeichen lang sein.
Das Programm unterstützt in Formeln Zeichenfolgen mit bis zu 65.534
Zeichen. Sie haben eine Zeichenfolge eingegeben, die diese Grenze
überschreitet. Verkürzen Sie die Zeichenfolge, und überprüfen Sie die Formel
erneut.
Die Länge eines Indexes muss zwischen 1 und der Länge der
Zeichenfolge liegen.
Sie haben eine Indexnummer eingegeben, die sich auf ein Zeichen bezieht,
das nicht vorhanden ist. Sie erhalten diese Warnung, wenn Sie z. B. einen
Index eingeben, der auf das 6. oder 8. Zeichen einer fünf Zeichen langen
Zeichenfolge verweist. Ändern Sie den Index in einen vorhandenen Wert, und
überprüfen Sie die Formel erneut.
Die Länge eines Indexes muss zwischen 1 und der Länge des
Arrays liegen.
Sie haben einen Index eingegeben, der sich auf ein Array bezieht, das nicht
vorhanden ist. Sie erhalten diese Warnung, wenn Sie z. B. einen Index
eingeben, der auf das 6. oder 8. Element eines Arrays mit fünf Elementen
verweist. Ändern Sie den Index in einen vorhandenen Wert, und überprüfen
Sie die Formel erneut.
Crystal Report Explorer-Anwenderhandbuch
63
4
4
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
Eine Teilergebnisbedingung ist nicht zulässig.
Sie haben eine Bedingung für ein Teilergebnis eingegeben, die als Feld zum
Sortieren und Gruppieren etwas anderes als ein Datums- oder boolesches
Feld verwendet. Ihr Teilergebnis benötigt keine Bedingung. Löschen Sie die
Bedingung, und fahren Sie dann fort.
Eine Teilergebnisbedingung muss eine Zeichenfolge sein.
Sie haben eine Bedingung für ein Teilergebnis eingegeben, die sich nicht im
Format einer Zeichenfolge befindet. Sie müssen die Bedingung beim
Eingeben in die Formel in einfache oder doppelte Anführungszeichen setzen.
Eine Variable kann nicht mit einem anderen Typ neu deklariert
werden.
Sie haben eine Variable deklariert, die den gleichen Namen, jedoch einen
anderen Datentyp wie eine bereits deklarierte Variable besitzt. Dies ist nicht
zulässig. Ändern Sie entweder den Namen der Variablen oder den Datentyp,
damit dieser mit dem ursprünglichen Datentyp übereinstimmt.
Hier ist eine Variable erforderlich.
Sie haben den Zuweisungsoperator (=:) in einer Formel verwendet, ohne ihm
eine Variable voranzustellen. Das Programm erwartet eine Variable
unmittelbar vor dem (links vom) Zuweisungsoperator. Geben Sie eine
Variable ein, und testen Sie dann erneut.
Hier wird ein Variablenname erwartet.
Sie haben einen Datentyp für eine Variable deklariert, ohne den
entsprechenden Variablennamen anzugeben. Sie müssen einen
Variablennamen eingeben, um die Deklaration zu vervollständigen. Geben
Sie den Variablennamen ein, und fahren Sie dann fort.
Datumsangaben müssen zwischen den Jahren 1 und 9999 liegen.
Sie haben ein Datum eingegeben, das außerhalb des zulässigen Bereichs
liegt. Geben Sie ein Datum ein, das innerhalb des Jahresbereichs von 1 bis
9999 (jeweils einschließlich) liegt, und überprüfen Sie dann die Formel
erneut.
Division durch Null.
Sie haben eine Formel eingegeben, die versucht, eine Division durch Null
durchzuführen. Crystal Reports lässt solche Divisionen nicht zu. Bearbeiten
Sie die Formel so, dass es nicht mehr zu einer Division durch Null kommt,
und überprüfen Sie dann die Formel erneut.
64
Crystal Report Explorer-Anwenderhandbuch
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
Sie können diese Art von Problem umgehen, indem Sie den folgenden Test
durchführen:
If {Datei.PROGNOSE} = 0 Then
0
Else
{Datei.UMSATZ} / {Datei.PROGNOSE}
Fehler im Formelcode. Bitte setzen Sie sich mit Business Objects
in Verbindung.
Die Formel enthält nicht vorgesehene Elemente. Speichern Sie bitte den Text
der Formel, durch die diese Warnung hervorgerufen wurde, und setzen Sie
sich mit Crystal Decisions in Verbindung.
Fehler in Parserhierarchie. Bitte setzen Sie sich mit Business
Objects in Verbindung.
Bei der Analyse der Formel ist eine Bedingung aufgetreten, die von der
Parserhierarchie nicht verarbeitet werden konnte. Speichern Sie bitte den
Text der Formel, durch die diese Warnung hervorgerufen wurde, und setzen
Sie sich mit Crystal Decisions in Verbindung.
Feld wird noch verwendet.
Das von Ihnen angeforderte Feld wird bereits verwendet. Wiederholen Sie
den Vorgang, wenn das Feld wieder verfügbar ist.
Dateiname bereits in Gebrauch. Schließen Sie das Fenster für xxx,
bevor Sie die Datei unter diesem Namen speichern.
Der Name der zu speichernden Datei wurde bereits einer Datei zugewiesen,
die gerade in einem geöffneten Bericht verwendet wird. Schließen Sie
zunächst diesen Bericht, und versuchen Sie es dann erneut.
Kein eindeutiger Tabellenverweis: Tabellenname.
Dieses Problem tritt meistens dann auf, wenn ein Tabellenname einen
Unterstrich enthält, länger als 15 Zeichen ist oder mit einer Zahl beginnt.
Für diese Funktion wurden nicht genügend Argumente
angegeben.
Für die Funktion sind mehr Argumente erforderlich, als Sie eingegeben
haben. Geben Sie das/die fehlende(n) Argument(e) ein, und testen Sie
erneut.
Numerischer Überlauf.
Ein Zwischen- oder Endergebnis kann nicht angezeigt werden, da es zu groß
ist. Strukturieren Sie die Formel neu, oder unterteilen Sie die Formel, um
kleinere Ergebnisse zu erzielen, und überprüfen Sie dann die Formel erneut.
Crystal Report Explorer-Anwenderhandbuch
65
4
4
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
Physische Datenbank nicht gefunden.
Das Programm kann weder eine DLL noch die Datenbank finden. Überprüfen
Sie, ob die Verzeichnisse, in denen sich diese Dateien befinden, in der PATHAnweisung aufgeführt sind.
Diese Funktion ist noch nicht implementiert. Warten Sie auf eine
neuere Version.
Sie haben versucht, eine Funktion von Crystal Reports aufzurufen, die in der
aktuellen Version noch nicht implementiert ist. Warten Sie auf ein Upgrade,
mit dem diese Funktion implementiert wird, und versuchen Sie es dann
erneut.
Die Formel kann zur angegebenen Zeit nicht ausgewertet werden.
Sie versuchen, die Auswertung eines Feldes, einer Formel oder einer
Funktion früher zu erzwingen als dies möglich ist.
Auswertungszeitpunktfunktionen können nur einen späteren
Auswertungszeitpunkt erzwingen, niemals einen früheren. Ändern Sie die
Formel so, dass der geeignete Auswertungszeitpunkt eingehalten wird.
Dieses Feld kann nicht verwendet werden, da es später
ausgewertet werden muss.
Sie versuchen, die Auswertung eines Feldes, einer Formel oder einer
Funktion früher zu erzwingen als dies möglich ist.
Auswertungszeitpunktfunktionen können nur einen späteren
Auswertungszeitpunkt erzwingen, niemals einen früheren. Ändern Sie die
Formel so, dass der geeignete Auswertungszeitpunkt eingehalten wird.
Diese Formel kann nicht verwendet werden, da sie später
ausgewertet werden muss.
Sie versuchen, die Auswertung eines Feldes, einer Formel oder einer
Funktion früher zu erzwingen als dies möglich ist.
Auswertungszeitpunktfunktionen können nur einen späteren
Auswertungszeitpunkt erzwingen, niemals einen früheren. Ändern Sie die
Formel so, dass der geeignete Auswertungszeitpunkt eingehalten wird.
Diese Funktion kann nicht verwendet werden, da sie später
ausgewertet werden muss.
Sie versuchen, die Auswertung eines Feldes, einer Formel oder einer
Funktion früher zu erzwingen als dies möglich ist.
Auswertungszeitpunktfunktionen können nur einen späteren
Auswertungszeitpunkt erzwingen, niemals einen früheren. Ändern Sie die
Formel so, dass der geeignete Auswertungszeitpunkt eingehalten wird.
66
Crystal Report Explorer-Anwenderhandbuch
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
Die Formel ist zu komplex. Versuchen Sie, sie zu vereinfachen.
Die Formel konnte nicht ausgewertet werden, da sie das Limit von 50
ausstehenden Operationen überschreitet. Ausstehende Operationen sind
Operationen, die entsprechend der Auswertungsregeln auf ihre Ausführung
warten; sie werden ausgeführt, sobald die Ausführung der Operationen, die in
der Reihenfolge vor ihnen stehen, beendet ist.
Manchmal ist es möglich, die Formel so umzuändern, dass der gleiche Wert
berechnet wird, ohne viele ausstehende Operationen zu erzeugen. In der
stark vereinfachten Formel 2+3*4 beispielsweise kann die Addition erst
ausgeführt werden, wenn die Multiplikation beendet ist. Die Addition wird also
zu einer ausstehenden Operation, die warten muss, bis die Multiplikation
ausgeführt ist. Wenn Sie die Formel in 3*4+2 ändern, können die
Operationen mit gleichem Ergebnis von links nach rechts ausgeführt werden,
ohne eine ausstehende Operation zu erzeugen.
Korrigieren Sie die Formel, und überprüfen Sie sie erneut.
Zugehörige } für diesen Feldnamen fehlt.
Feldnamen müssen in geschweiften Klammern { } stehen. Sie haben aber nur
eine der erforderlichen zwei geschweiften Klammern eingegeben. Fügen Sie
die fehlende Klammer ein, und überprüfen Sie die Formel erneut.
Zugehöriges ' für diese Zeichenfolge fehlt.
Eine Zeichenfolge, die mit einem ' beginnt, muss vor dem Ende der Zeile mit
einem ' enden. Sie haben das ' an einer dieser Positionen verwendet, nicht
jedoch an der anderen. Fügen Sie das fehlende Satzzeichen ein, und
überprüfen Sie die Formel erneut.
Zugehöriges " für diese Zeichenfolge fehlt.
Eine Zeichenfolge, die mit einem " beginnt, muss vor dem Ende der Zeile mit
einem " enden. Sie haben das Anführungszeichen (") an einer dieser
Positionen verwendet, nicht jedoch an der anderen. Fügen Sie das fehlende
Satzzeichen ein, und überprüfen Sie die Formel erneut.
Die Anzahl der Kopien der Zeichenfolge ist zu groß oder keine
ganze Zahl.
Beim Verwenden der Funktion ReplicateString haben Sie zu viele Kopien
angefordert oder die Anzahl der Kopien nicht als Ganzzahl angegeben.
Verringern Sie die Anzahl der anzufordernden Kopien, oder geben Sie eine
Ganzzahl als Anzahl der Kopien an, und versuchen Sie es erneut.
Crystal Report Explorer-Anwenderhandbuch
67
4
4
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
Die Anzahl der Tage ist zu groß oder keine ganze Zahl.
Wenn Sie zu Datumsangaben Tage hinzuaddieren bzw. Tage von
Datumsangaben subtrahieren, können Sie die Anzahl der Tage nur als ganze
Zahl angeben; Sie können keine Dezimalzahlen (1/2 Tag, 3,6 Tage usw.)
verwenden. Darüber hinaus muss eine Datumsangabe, zu der Sie Tage
hinzuaddieren bzw. von der Sie Tage subtrahieren, in den zulässigen
Datumsbereich (der Jahre 0000 bis 9999) fallen. Wenn Sie die Anzahl der
Tage nicht als ganze Zahl eingeben oder das Ergebnis außerhalb des
zulässigen Bereichs liegt, wird diese Warnung im Dialogfeld "Formeln"
ausgegeben. Beheben Sie das Problem, und überprüfen Sie die Formel
erneut.
Die Anzahl der Dezimalstellen ist zu groß oder keine ganze Zahl.
Das zweite Argument der Funktionen Round(x, DezStellen) und ToText(x,
DezStellen) muss eine kleine Ganzzahl sein. Sie haben als zweites Argument
(DezStellen) eine Zahl eingegeben, die zu viele Dezimalstellen festlegt oder
keine ganze Zahl ist. Ändern Sie die Zahl in eine kleine Ganzzahl, und
überprüfen Sie die Formel erneut.
Die Datensatzauswahlformel darf nicht 'Seitenzahl',
'Datensatznummer', 'GruppenNummer', 'Previous' oder 'Next'
beinhalten.
Sie können in Datensatzauswahlformeln nicht die Felder Seitenzahl,
Datensatznummer, GruppenNummer, Previous und Next einfügen. Entfernen
Sie diese Felder, und überprüfen Sie die Formel erneut.
Die Datensatzauswahlformel darf kein Gruppenergebnisfeld
beinhalten.
Sie haben einer Datensatzauswahlformel ein Gruppenergebnisfeld
hinzugefügt. Crystal Reports lässt dies nicht zu. Entfernen Sie das
Gruppenergebnisfeld, und überprüfen Sie die Formel erneut.
Der übrige Text scheint nicht zur Formel zu gehören.
Sie haben einen Formeloperanden angegeben (das Element, auf das sich
eine Formeloperation bezieht), wo keiner erwartet wird. Möglicherweise
haben Sie vergessen, einen Operator, den ersten Teil einer Funktion oder
andere erforderliche Syntaxelemente anzugeben. Beheben Sie den Fehler,
und überprüfen Sie die Formel erneut.
Ein Bereich kann nicht das Ergebnis einer Formel sein.
Sie haben eine Formel erstellt, deren Ergebnis ein Bereich ist. Eine Formel
kann jedoch nur einen einzigen Wert als Ergebnis haben. Korrigieren Sie die
Formel, und überprüfen Sie sie erneut.
68
Crystal Report Explorer-Anwenderhandbuch
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
Ein Array kann nicht das Ergebnis einer Formel sein.
Sie haben eine Formel erstellt, deren Ergebnis ein Array ist. Eine Formel
kann jedoch nur einen einzigen Wert als Ergebnis haben. Korrigieren Sie die
Formel, und überprüfen Sie sie erneut.
Das Ergebnis der Auswahlformel muss ein boolescher Wert sein.
Sie haben eine Auswahlformel erstellt, die anstelle eines booleschen Wertes
einen anderen Wert zurückgibt. Erstellen Sie die Formel neu, indem Sie
Vergleichsoperatoren (= usw.) verwenden.
Zeichenfolge ist nicht numerisch.
Das Argument der Funktion "ToNumber" muss eine Zahl sein, die als
Zeichenfolge gespeichert ist (z.B. eine Kundennummer, eine ID-Nummer
usw.). Die Zeichenfolge kann ein vorangestelltes Minuszeichen oder führende
bzw. nachgestellte Leerzeichen enthalten. Sie haben ein Argument
verwendet, das nicht numerisch ist, und daher nicht in eine Zahl ungewandelt
werden kann. Geben Sie als Argument eine numerische Zahl an, und
überprüfen Sie die Formel erneut.
Die Variable konnte nicht erstellt werden.
Die von Ihnen deklarierte Variable konnte nicht erstellt werden. Überprüfen
Sie Schreibweise und Syntax Ihrer Deklarationsanweisung, und versuchen
Sie es dann erneut.
Das Wort "else" fehlt.
Sie haben in einem If-Then-Else-Ausdruck die Else-Komponente
weggelassen (oder an einer falschen Stelle eingefügt), so dass die Formel
nicht korrekt ausgeführt werden kann. Fügen Sie die Else-Komponente ein
(bzw. verschieben Sie sie an die richtige Position), und überprüfen Sie die
Formel erneut.
Das Wort "then" fehlt.
Sie haben in einem If-Then-Else-Ausdruck die Then-Komponente
weggelassen (oder an einer falschen Stelle eingefügt), so dass die Formel
nicht korrekt ausgeführt werden kann. Fügen Sie die Then-Komponente ein
(bzw. verschieben Sie sie an die richtige Position), und überprüfen Sie die
Formel erneut.
Zu viele Zeichen in diesem Feldnamen.
Ein Feldname kann aus maximal 254 Zeichen bestehen. Sie haben einen
Feldnamen eingegeben, der die zulässige Anzahl von Zeichen überschreitet.
Geben Sie einen Feldnamen mit der zulässigen Anzahl von Zeichen ein, und
versuchen Sie es erneut.
Crystal Report Explorer-Anwenderhandbuch
69
4
4
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
Zu viele Zeichen in dieser Zeichenfolge.
Zeichenfolgen in Formeln dürfen maximal 65.534 Zeichen umfassen. Sie
haben eine Zeichenfolge eingegeben, die diese Grenze überschreitet.
Verkürzen Sie die Zeichenfolge (oder teilen Sie sie in mehrere verkettete
Zeichenfolgen auf), und überprüfen Sie dann die Formel erneut.
Zu viele Ziffern in dieser Zeichenfolge.
Crystal Reports lässt in Formeln nur Zahlen mit maximal 25 Stellen vor dem
Dezimalzeichen zu. Sie haben eine Zahl eingegeben, die diese Grenze
überschreitet. Geben Sie eine kleinere Zahl ein (oder teilen Sie die
ursprüngliche Zahl in mehrere kleinere Zahlen auf), und überprüfen Sie dann
die Formel erneut.
Zu viele Buchstaben und Ziffern in diesem Namen.
Ein Variablenname darf maximal 254 Zeichen umfassen. Sie haben einen
Namen eingegeben, der die zulässige Anzahl von Zeichen überschreitet.
Verkürzen Sie den Namen entsprechend der Vorgabe, und fahren Sie dann
fort.
Die Formel ist fehlerhaft. Bearbeiten Sie sie im Hinblick auf
genauere Angaben.
Sie haben versucht, eine Formel zu akzeptieren, die einen nicht korrigierten
Fehler enthält. Korrigieren Sie den angegebenen Fehler, und versuchen Sie
es dann erneut.
Es muss ein Teilergebnisbereich vorhanden sein, der diesem Feld
entspricht.
Sie haben ein Teilergebnis in eine Formel eingegeben, ohne dass im Bericht
selbst ein entsprechendes Teilergebnis vorhanden ist. Jedes Teilergebnis,
das Sie in eine Formel eingeben, muss mit einem bereits in Ihrem Bericht
vorhandenen Teilergebnis übereinstimmen. Tragen Sie zuerst das
erforderliche Teilergebnis in den Bericht und dann erneut in die Formel ein,
und überprüfen Sie die Formel dann noch einmal, oder löschen Sie die
Formel ganz.
Das Spezialvariablenfeld konnte nicht erstellt werden.
Diese Meldung weist normalerweise darauf hin, dass die Speicherkapazität
nicht ausreicht. Schließen Sie alle nicht mehr benötigten Berichte und
Programme. Versuchen Sie es dann erneut.
70
Crystal Report Explorer-Anwenderhandbuch
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
Das Gruppenergebnisfeld konnte nicht erstellt werden.
Diese Meldung weist normalerweise darauf hin, dass die Speicherkapazität
nicht ausreicht. Schließen Sie alle nicht mehr benötigten Berichte und
Programme. Versuchen Sie es dann erneut.
Dieses Feld kann nicht zusammengefasst werden.
Sie haben ein Gruppenergebnisfeld eingegeben, das noch nicht in Ihrem
Bericht existiert. Jedes Gruppenergebnisfeld, das Sie in eine Formel
eingeben, muss mit einem bereits in Ihrem Bericht vorhandenen
Gruppenergebnisfeld übereinstimmen. Fügen Sie das Gruppenergebnisfeld
zunächst in Ihren Bericht und dann erneut in die Formel ein, oder lassen Sie
es ganz weg.
Dieses Feld kann nicht als Bedingungsfeld für ein Teilergebnis
verwendet werden.
Das Feld, das Sie als Bedingungsfeld eingeben, ist die Ursache dafür, dass
das Teilergebnis in der Formel mit keinem der Teilergebnisse des Berichts
übereinstimmt. Jedes Teilergebnis, das Sie in eine Formel eingeben, muss
mit einem bereits in Ihrem Bericht vorhandenen Teilergebnis übereinstimmen.
Fügen Sie das Teilergebnis zunächst in Ihren Bericht und dann erneut in die
Formel ein, oder lassen Sie sie ganz weg.
Dieses Feld besitzt keinen vorhergehenden oder nachfolgenden
Wert.
Sie haben ein Feld verwendet, für das es keinen „vorherigen“ Wert als
Argument der Funktionen „Previous“ oder „PreviousIsNull“ gibt, oder Sie
haben ein Feld verwendet, für das es keinen „nachfolgenden“ Wert als
Argument der Funktionen „Next“ oder „NextIsNull“ gibt. Wenn Sie eine dieser
Funktionen einsetzen möchten, müssen Sie das Argument durch ein Feld
ersetzen, das die entsprechenden Werte enthält.
Dieses Feld muss sich im selben Bereich befinden wie die aktuelle
Formel.
Nachdem das Feld der Formel als Operand hinzugefügt wurde, wurde es in
einen Bereich verschoben, in dem es keinen gültigen Operanden mehr
darstellt.
Dieser Feldname ist unbekannt.
Sie haben einen Feldnamen eingegeben, der in keiner der aktiven
Datenbanken existiert. Korrigieren Sie den Feldnamen und/oder seinen Alias,
und überprüfen Sie dann die Formel erneut. Wenn Sie einen Feldnamen aus
einer Datenbank eingeben möchten, die momentan nicht aktiv ist, aktivieren
Sie zuerst diese Datenbank, und geben Sie dann den Feldnamen erneut ein.
Crystal Report Explorer-Anwenderhandbuch
71
4
4
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
Dieser Gruppenbereich kann nicht gedruckt werden, weil sein
Bedingungsfeld nicht vorhanden oder ungültig ist.
Ihr Bericht enthält einen Gruppenbereich, der auf einem Bedingungsfeld
basiert, das entweder nicht mehr im Bericht enthalten ist oder geändert
wurde, so dass es für den Gruppenbereich ungültig ist. Überprüfen Sie die
Gruppierkriterien, um die Ursache des Problems festzustellen und zu
beheben.
Dieses Array muss indiziert sein. Hier ein Beispiel: Array [i].
Sie haben ein Array eingegeben, ohne es in eckige Klammern zu setzen.
Schließen Sie das Datenfeld in Klammern ein, und überprüfen Sie die Formel
erneut.
Diese Teilergebnisbedingung ist unbekannt.
Sie haben eine Teilergebnisbedingung eingegeben, die nirgends in Ihrem
Bericht angezeigt wird. Jedes Teilergebnis, das Sie in eine Formel eingeben,
muss mit einem bereits in Ihrem Bericht vorhandenen Teilergebnis
übereinstimmen. Ändern Sie die Bedingung, und überprüfen Sie dann Ihre
Formel erneut.
Für diese Funktion wurden zu viele Argumente angegeben.
Sie haben ein Array als Argument für eine Funktion eingegeben, die kein
Array verwendet. Dieses Problem kann z. B. auftreten, wenn Sie ein Array
nicht in Klammern setzen (die erforderlichen Syntaxelemente für ein Array).
Die Formelprüffunktion betrachtet die Arrayfeldwerte als Argumente einer
Funktion, die kein Array verwendet, und zeigt daher die Fehlermeldung an.
Für diesen Array wurden zu viele Elemente angegeben.
Crystal Reports lässt maximal 50 Werte in einem Array zu. Sie haben diese
Grenze überschritten. Reduzieren Sie die Anzahl der Werte im Array, und
überprüfen Sie dann die Formel erneut.
Warnungen über fehlende oder unkorrekte Operanden.
Die folgenden Warnungen werden angezeigt, wenn die Formelprüffunktion
einen bestimmten Operanden erwartet (das Element, auf dem die
Formeloperation ausgeführt werden soll) und etwas anderes vorfindet. Die
Formel 5>a vergleicht z.B. eine Zahl mit Text (der bekannte Vergleich von
Äpfeln und Birnen). Wenn die Formelprüffunktion feststellt, dass ein Vergleich
mit der Zahl fünf durchgeführt werden soll, so erwartet sie eine weitere Zahl.
Wenn aber irgendetwas anderes als eine Zahl eingegeben wird, wird
folgende Warnung angezeigt: Hier ist eine Zahl erforderlich.
•
•
72
Hier ist ein boolesches Array erforderlich.
Hier wird ein boolescher Wert benötigt.
Crystal Report Explorer-Anwenderhandbuch
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
•
•
•
•
•
•
•
•
•
Hier ist ein Währungsbetrag erforderlich.
•
Hier ist eine Zahl, ein Währungsbetrag, ein boolescher Wert, ein Datum
oder eine Zeichenfolge erforderlich.
•
Hier ist eine Zahl, ein Währungsbetrag, ein Datum oder eine
Zeichenfolge erforderlich.
•
•
•
•
•
•
•
•
•
Hier ist eine Zahl, ein Währungsbetrag oder ein Datum erforderlich.
Hier wird ein Währungsarray benötigt.
Hier ist ein Währungsbereich erforderlich.
Hier ist ein Datumsarray erforderlich.
Hier ist ein Datum erforderlich.
Hier ist ein Zeitraum erforderlich.
Hier ist ein Zahlenarray erforderlich.
Hier ist ein Zahlenarray oder ein Währungsarray erforderlich.
Hier wird eine Zahl, ein Währungsbetrag, ein boolescher Wert oder eine
Zeichenfolge erwartet.
Hier ist ein Zahlenfeld oder ein Währungsbetragfeld erforderlich.
Hier ist eine Zahl erforderlich.
Hier ist eine Zahl oder ein Währungsbetrag erforderlich.
Hier ist ein Zahlenbereich erforderlich.
Hier ist ein Zeichenfolgearray erforderlich.
Hier ist eine Zeichenfolge erforderlich.
Hier ist eine Zeichenfolge oder ein Array von Werten erforderlich.
Hier ist eine Zeichenfolge oder ein Array von Werten erforderlich.
Crystal Report Explorer-Anwenderhandbuch
73
4
4
Hinzufügen von Berechnungen mithilfe von Formeln
Fehlermeldungen und Formel-Compiler-Warnungen
74
Crystal Report Explorer-Anwenderhandbuch
.
Kapitel
Formatieren von Berichten
5
Formatieren von Berichten
Überblick über das Formatieren
Überblick über das Formatieren
Sobald der Bericht die gewünschten Daten in sinnvoller Anordnung enthält,
können Sie ein Diagramm hinzufügen oder eine Berichtvorlage zuweisen. Sie
können einzelne Objekte oder Abschnitte auch formatieren, um das
Erscheinungsbild des endgültigen Berichts zu verbessern. Wechseln Sie
beim Formatieren des endgültigen Berichts zwischen den Registerkarten
"Entwurf" und "Bericht" hin und her.
Hinzufügen und Entfernen von
Diagrammen
Sie können Gruppenergebniswerte für Datengruppen in Diagrammen
darstellen. Bevor Sie ein Diagramm einfügen, vergewissern Sie sich, dass
sich im Bericht mindestens eine Gruppe befindet und dass Sie ein
Gruppenergebnisfeld erstellt haben, dessen Werte im Diagramm für jede
Gruppe angezeigt werden sollen.
Hinweis: Wenn der Bericht mehrere Gruppen enthält, stellen Sie sicher,
dass sich die Gruppe für das Diagramm auf oberster Ebene befindet. Um
Gruppen neu anzuordnen, klicken Sie auf der Symbolleiste auf "Gruppen"
und dann auf "Weitere".
1.
So fügen Sie ein Diagramm hinzu
Klicken Sie in der Symbolleiste auf Diagramm.
Das Dialogfeld „Diagramm“ wird angezeigt.
2.
76
Klicken Sie auf Balken, Linie oder Kreis, um den Diagrammtyp
festzulegen.
Crystal Report Explorer-Anwenderhandbuch
Formatieren von Berichten
Formatieren mit Vorlagen
3.
Geben Sie im Feld Diagrammtitel den Titel ein, der für das Diagramm
angezeigt werden soll.
4.
Klicken Sie auf die Liste Positionierung, und wählen Sie einen Bereich
für das Diagramm aus. (Sie können es im Kopf- oder Fußbereich des
Berichts platzieren.)
5.
Klicken Sie auf die Liste Wert für Gruppenergebnis anzeigen, und
wählen Sie das Gruppenergebnisfeld aus, dessen Werte im Diagramm
für jede Gruppe angezeigt werden sollen.
6.
Klicken Sie auf OK.
1.
So entfernen Sie ein Diagramm
Klicken Sie in der Symbolleiste auf Diagramm.
2.
Klicken Sie im Dialogfeld „Diagramm“ auf Entfernen.
Formatieren mit Vorlagen
Eine Vorlage ist eine vorhandene Berichtdatei, deren Formatierung für einen
neuen Bericht übernommen werden kann. Gleichzeitig wird die Formatierung
der Felder und Berichtobjekte der Berichtvorlage für den neuen Bericht
übernommen. Mit Hilfe von Vorlagen können Sie beliebig viele Berichte
einheitlich gestalten, ohne sie einzeln zu formatieren. Weitere Informationen
zum Erstellen von Vorlagen und zum Hinzufügen von benutzerdefinierten
Vorlagenfeldobjekten finden Sie im Crystal Reports-Anwenderhandbuch.
Übernehmen der Vorlage
Beim Erstellen eines Berichts können Sie optional eine Vorlage zuweisen.
Von Ihrem Administrator können Sie eine Reihe von Standardvorlagen für
verschieden Berichttypen erhalten.
1.
So benutzen Sie einen anderen Bericht als Vorlage
Klicken Sie in der Symbolleiste auf Vorlage.
2.
Durchsuchen Sie die BusinessObjects Enterprise-Ordner.
Das Dialogfenster "Vorlage" wird angezeigt.
Hinweis: Der vom Administrator als Standardvorlagenordner definierte
Ordner ist standardmäßig ausgewählt.
3.
Wählen Sie den Bericht aus, den Sie als Vorlage verwenden möchten,
und klicken Sie auf OK.
Crystal Report Explorer-Anwenderhandbuch
77
5
5
Formatieren von Berichten
Formatieren mit Vorlagen
4.
Klicken Sie auf die Registerkarte Bericht, um zu sehen, wie die Vorlage
den Bericht formatiert.
Hinweis: Falls der ausgewählte Bericht nicht die nötigen Voraussetzungen
für eine Vorlage erfüllt, werden keine Formatierungen angewendet. Nähere
Informationen hierzu finden Sie unter Überlegungen zu Vorlagen.
Überlegungen zu Vorlagen
Wenn ein vorhandener Bericht als Vorlage verwendet wird, werden folgende
Berichtobjekte für den neuen Bericht übernommen:
•
•
•
•
•
•
•
•
Felder
Gruppen
Gruppendiagramme
Gruppenergebnisfelder
Hyperlinks
Bitmap
Linien, Rechtecke, Rahmen
Statische OLE-Objekte
Wenn ein vorhandener Bericht als Vorlage verwendet wird, werden folgende
Berichtobjekte nicht für den neuen Bericht übernommen:
•
•
•
•
•
•
•
•
•
Detaildiagramme
Unterberichte
OLAP-Raster
Kreuztabellen
Karten
Eingebettete OLE-Objekte
BLOB-Felder
Gruppierungen mit spezieller Reihenfolge
Erweiterte Gruppenergebnisse (z.B. Erste N-Ergebnisse, Prozentsätze
und laufende Summen)
Bei der Berichterstellung ausgewählte Optionen können durch die
Formatierungen und Objekte eines als Vorlage verwendeten Berichts
überschrieben werden. Wenn Sie beispielsweise kein Diagramm auswählen
aber einen Vorlagenbericht mit einem Diagramm übernehmen, wird die
Auswahl durch den Vorlagenbericht überschrieben, und der neue Bericht
enthält ein Diagramm.
78
Crystal Report Explorer-Anwenderhandbuch
Formatieren von Berichten
Formatieren von Objekten und Bereichen
Außerdem überschreibt ein Diagramm in einem Vorlagenbericht den in einem
vorhandenen Diagramm ausgewählten Gruppenergebniswert. Sobald die
Vorlage übernommen wurde, wird das erste Gruppenergebnisfeld im Bericht
zum Gruppenergebniswert für das Diagramm.
Formatieren von Objekten und Bereichen
Klicken Sie auf die Registerkarte "Entwurf", um Layout und Formatierung des
Berichts anzuzeigen und zu ändern. Hier können Sie Feldobjekte
verschieben und formatieren, Textobjekte hinzufügen, Berichtbereiche neu
anordnen und formatieren usw. Verwenden Sie die verfügbaren
Formatierungsoptionen, um die Präsentation des Berichts noch zu
verbessern.
Darüber hinaus können Sie Formatierungen auf der Registerkarte "Bericht"
zuweisen. Weitere Informationen finden Sie unter „Arbeiten auf der
Registerkarte "Bericht"“ auf Seite 90
Verschieben und Ändern der Größe von Objekten und
Bereichen
•
So verschieben Sie ein Objekt
Ziehen Sie ein beliebiges Objekt, um seine Position innerhalb seines
Berichtbereichs zu ändern.
1.
So ändern Sie die Größe eines Objekts
Wählen Sie auf der Registerkarte Entwurf das Feld oder Textobjekt aus,
dessen Größe Sie ändern möchten.
Die Ziehpunkte des Objekts werden eingeblendet.
2.
1.
2.
Ändern Sie die Größe des Objekts, indem Sie einen der Ziehpunkte
ziehen.
So ändern Sie die Größe eines Bereichs
Bewegen Sie auf der Registerkarte Entwurf den Zeiger über die Grenze
des Bereichs, dessen Größe Sie ändern möchten.
Wenn der Zeiger die Form des Größenänderungs-Cursors annimmt,
ziehen Sie die Begrenzung nach oben/unten, um den Bereich zu
vergrößern oder zu verkleinern.
Crystal Report Explorer-Anwenderhandbuch
79
5
5
Formatieren von Berichten
Formatieren von Objekten und Bereichen
Hinzufügen und Bearbeiten von Textobjekten
1.
So fügen Sie ein Textobjekt hinzu
Klicken Sie auf der Registerkarte Entwurf mit der rechten Maustaste in
den weißen Bereich, in dem Sie ein Textobjekt hinzufügen möchten.
2.
Klicken Sie im Kontextmenü auf Textobjekt hinzufügen.
Zum Bericht wird ein Textobjekt hinzugefügt. Ersetzen Sie den
vorhandenen Text durch eigenen, und drücken Sie dann die
EINGABETASTE. Sie können den Text erneut bearbeiten, indem Sie die
folgenden Schritte ausführen.
1.
So bearbeiten Sie ein Textobjekt
Klicken Sie mit der rechten Maustaste auf das Objekt, dessen Text Sie
bearbeiten möchten.
2.
Klicken Sie im Kontextmenü auf Text bearbeiten.
Im Textobjekt wird die Einfügemarke angezeigt.
3.
Ersetzen Sie den vorhandenen Text durch eigenen, und drücken Sie
dann die EINGABETASTE.
1.
So entfernen Sie ein Textobjekt
Klicken Sie mit der rechten Maustaste auf den zu entfernenden Text.
2.
Klicken Sie im Kontextmenü auf Feld entfernen.
Formatieren von Feld- und Textobjekten
1.
Klicken Sie auf der Registerkarte Entwurf oder Bericht mit der rechten
Maustaste auf das zu formatierende Objekt.
2.
Klicken Sie im Kontextmenü auf Feld formatieren.
Der Format-Editor wird angezeigt.
3.
Verwenden Sie die verfügbaren Optionen auf den Registerkarten
"Allgemein", "Rahmen", "Datum", "Zahl" und "Schriftart", um das Objekt
wie gewünscht zu formatieren.
•
80
Auf der Registerkarte "Allgemein" können Sie Eigenschaften wie
"Unterdrücken", "Horizontale Ausrichtung" und "Objekt
zusammenhalten" für ein gewünschtes Feld einrichten. Siehe
„Registerkarte "Allgemein" (Dialogfeld "Format-Editor")“ auf Seite 85.
Crystal Report Explorer-Anwenderhandbuch
Formatieren von Berichten
Formatieren von Objekten und Bereichen
4.
•
Auf der Registerkarte "Rahmen" können Sie für im Bericht markierte
Felder Rahmen, Hintergrundfüllung und Schatten formatieren.
Mithilfe der Optionen auf dieser Registerkarte können Sie
verschiedene Effekte erstellen, die sowohl das Aussehen des
Berichts verbessern als auch wichtige Daten hervorheben. Siehe
„Registerkarte "Rahmen" (Dialogfeld "Format-Editor")“ auf Seite 86.
•
Auf der Registerkarte "Schriftart" können Sie die Schriftarten, den
Schriftgrad und den Schriftschnitt für Text und Datenfelder in den
Berichten ändern. Siehe „Registerkarte „Schriftart“ (Dialogfeld
„Format-Editor“)“ auf Seite 87.
•
Verwenden Sie die Registerkarte "Zahl", um Zahlen im Bericht zu
formatieren, beispielsweise um Dezimalstellen und
Währungssymbole festzulegen. Siehe „Registerkarte "Nummer"
(Dialogfeld "Format-Editor")“ auf Seite 87.
•
Verwenden Sie die Registerkarte "Datum", um die Darstellung von
Datum und Uhrzeit im Bericht zu formatieren. Siehe „Registerkarte
"Datum" (Dialogfeld "Format-Editor")“ auf Seite 88.
Klicken Sie auf Anwenden und anschließend auf OK.
Hinweis: Darüber hinaus können Sie Felder auf der Registerkarte "Bericht"
formatieren.
Hinzufügen von Spezialfeldern zum Bericht
Spezialfelder sind vordefinierte Felder, die dem Bericht auf der Registerkarte
"Entwurf" hinzugefügt werden können. Die Spezialfelder werden beim
Ausführen des Berichts ausgewertet. Weitere Informationen zum Festlegen
von Spezialfeldern in Crystal Reports finden Sie in der Crystal ReportsDokumentation.
1.
2.
So fügen Sie ein Spezialfeld in den Bericht ein
Klicken Sie auf der Registerkarte Entwurf mit der rechten Maustaste in
einen weißen Bereich des Berichtsbereichs, dem Sie ein Spezialfeld
hinzufügen möchten.
Klicken Sie im Kontextmenü auf das Spezialfeld, das Sie einfügen
möchten.
Crystal Report Explorer-Anwenderhandbuch
81
5
5
Formatieren von Berichten
Formatieren von Objekten und Bereichen
In der folgenden Liste sind die verfügbaren Spezialfelder beschrieben:
Datendatum
Verwenden Sie das Feld "Datendatum", um ein Feld mit dem Datum
einzufügen, zu dem die Daten zuletzt abgerufen (aktualisiert) wurden. Dieses
Feld kann abhängig davon, wie häufig es gedruckt werden soll, in einem
beliebigen Bereich des Berichts positioniert werden.
Datenuhrzeit
Verwenden Sie das Feld "Datenuhrzeit", um ein Feld mit der Uhrzeit
einzufügen, zu der die Daten zuletzt abgerufen (aktualisiert) wurden. Dieses
Feld kann abhängig davon, wie häufig es gedruckt werden soll, in einem
beliebigen Bereich des Berichts positioniert werden.
Dateiautor
Verwenden Sie das Feld "Dateiautor" zum Einfügen eines Feldes, in dem der
Name des Berichtautors angezeigt wird.
Dateipfad und -name
Verwenden Sie das Feld "Dateipfad und -name" zum Einfügen eines Feldes,
in dem Dateipfad und Dateiname für den Bericht angezeigt werden.
Gruppennummer
Verwenden Sie das Feld "Gruppennummer", um alle Gruppen im Bericht zu
nummerieren. Dieses Feld kann entweder im Gruppenkopf- oder im
Gruppenfußbereich des Berichts positioniert werden.
Gruppenauswahlformel
Verwenden Sie das Feld "Gruppenauswahlformel", um ein
Gruppenauswahlformelfeld in den Bericht einzufügen.
Änderungsdatum
Verwenden Sie das Feld "Änderungsdatum", um ein Feld mit dem Datum
einzufügen, zu dem der Bericht zuletzt geändert wurde. "Geändert" bezieht
sich auf jede Art von Änderung (auch auf so einfache Aktionen wie das
Verschieben eines Feldes). Wenn Sie den Bericht ändern und ausdrucken,
wird das Änderungsdatum auch dann vom Programm ausgedruckt, wenn der
Bericht vor dem Drucken nicht gespeichert wurde. Dieses Feld kann
abhängig davon, wie häufig es gedruckt werden soll, in einem beliebigen
Bereich des Berichts positioniert werden.
82
Crystal Report Explorer-Anwenderhandbuch
Formatieren von Berichten
Formatieren von Objekten und Bereichen
Änderungszeit
Verwenden Sie das Feld "Änderungszeit", um ein Feld mit der Uhrzeit
einzufügen, zu der der Bericht zuletzt geändert wurde. Dieses Feld
funktioniert analog Änderungsdatum. Dieses Feld kann abhängig davon, wie
häufig es gedruckt werden soll, in einem beliebigen Bereich des Berichts
positioniert werden.
Seite N von M
Verwenden Sie das Feld "Seite N von M" zum Einfügen eines Feldes, in dem
Seitenzahl und die Gesamtzahl der im Bericht enthaltenen Seiten angegeben
ist. Der Feldwert "Seite 1 von 8" deutet beispielsweise darauf hin, dass es
sich um die erste Seite in einem achtseitigen Bericht handelt.
Seitenzahl
Verwenden Sie das Feld "Seitenzahl" zum Einfügen eines Feldes, in dem die
aktuelle Seitenzahl ausgedruckt wird. Diese Felder werden meist im Kopfoder Fußbereich positioniert.
Druckdatum
Verwenden Sie das Feld "Druckdatum", um den Bericht mit dem aktuellen
Datum auszudrucken. Dieses Feld kann abhängig davon, wie häufig es
gedruckt werden soll, in einem beliebigen Bereich des Berichts positioniert
werden.
Druckzeit
Verwenden Sie das Feld "Druckzeit", um ein Feld mit der Uhrzeit einzufügen,
zu der der Bericht gedruckt wurde. Dieses Feld kann abhängig davon, wie
häufig es gedruckt werden soll, in einem beliebigen Bereich des Berichts
positioniert werden.
Datensatznummer
Verwenden Sie das Feld "Datensatznummer", um jeden im Bereich "Details"
des Berichts gedruckten Datensatz zu nummerieren.
Datensatzauswahlformel
Verwenden Sie das Feld "Datensatzauswahlformel", um ein
Datensatzauswahlformelfeld in den Bericht einzufügen.
Berichtkommentare
Verwenden Sie das Feld "Berichtkommentare" zum Einfügen eines Feldes,
das die im Crystal Reports-Bericht angegebenen Kommentare enthält.
Dieses Feld kann abhängig davon, wie häufig es gedruckt werden soll, in
einem beliebigen Bereich des Berichts positioniert werden.
Crystal Report Explorer-Anwenderhandbuch
83
5
5
Formatieren von Berichten
Formatieren von Objekten und Bereichen
Berichttitel
Verwenden Sie das Feld "Berichtstitel" zum Einfügen eines Feldes, das den
im Crystal Reports-Bericht angegebenen Titel enthält. Dieses Feld kann
abhängig davon, wie häufig es gedruckt werden soll, in einem beliebigen
Bereich des Berichts positioniert werden.
Gesamtseitenzahl
Verwenden Sie das Feld "Gesamtseitenzahl", um die Gesamtzahl der im
Bericht enthaltenen Seiten auszudrucken. Dieses Feld kann auf
verschiedene Weise verwendet werden. Sie können es z.B. in Kombination
mit dem Feld „Seitenzahl“ verwenden, um ein Textobjekt mit dem Wortlaut
„Seite x von y“ zu erstellen. „x“ entspricht dabei dem Feld „Seitenzahl“ und „y“
dem Feld „Gesamtseitenzahl“. Diese Felder können abhängig davon, wie
häufig sie gedruckt werden sollen, in einem beliebigen Bereich des Berichts
positioniert werden.
Formatieren von Bereichen des Berichts
1.
Klicken Sie auf der Registerkarte Entwurf oder Bericht mit der rechten
Maustaste in den weißen Bereich des Berichtsbereichs, den Sie
formatieren möchten.
2.
Klicken Sie im Kontextmenü auf Bereichs-Assistent.
Der Bereichs-Assistent wird angezeigt.
84
Crystal Report Explorer-Anwenderhandbuch
Formatieren von Berichten
Formatieren von Objekten und Bereichen
In der Liste "Bereiche" ist der zu formatierende Bereich standardmäßig
ausgewählt. Wählen Sie einen anderen Bereich aus, um dessen
Formatierung zu ändern.
3.
4.
Verwenden Sie die verfügbaren Optionen auf den Registerkarten
Allgemein und Farbe, um jeden Bereich wie gewünscht zu formatieren:
•
Auf der Registerkarte Allgemein stellen Sie Eigenschaften ein, z. B.:
"Sichtbar", "Davor neue Seite", "Zusammenhalten" usw. (für den
gewünschten Bereich). Siehe „Registerkarte "Allgemein" (BereichsAssistent)“ auf Seite 88.
•
Auf der Registerkarte Farbe stellen Sie die Hintergrundfarbe für den
gewünschten Bereich ein. Siehe „Registerkarte "Farbe" (BereichsAssistent)“ auf Seite 90.
Klicken Sie auf Anwenden und anschließend auf OK.
Formatierungsoptionen
In diesem Abschnitt werden die Formatierungsoptionen in den Dialogfeldern
"Format-Editor" und "Bereichs-Assistent" beschrieben.
Registerkarte "Allgemein" (Dialogfeld "Format-Editor")
Horizontale Ausrichtung
Diese Liste enthält die Typen der horizontalen Ausrichtung für das Feld (z. B.
Links, Zentriert und Rechts)
Zusammenhalten
Aktivieren Sie dieses Kontrollkästchen, um ein Objekt auf einer Seite
zusammenzuhalten. Falls genügend Platz zur Verfügung steht, wird das
Objekt vom Programm auf der aktuellen Seite ausgegeben. Andernfalls wird
das Objekt vom Programm auf der nächsten Seite ausgegeben.
Hinweis: Wenn Objekte größer als eine Seite sind, funktioniert diese
Eigenschaft nicht. Solche Objekte werden immer über mehrere Seiten
verteilt.
Rahmen vor Seitenwechsel schließen
Wenn ein Objekt über einen Rahmen verfügt und über zwei Seiten verteilt ist,
gibt es zwei Optionen: Fügen Sie einen Rahmen um jeden Teil des geteilten
Objekts ein, oder zeigen Sie jeden Teil des Objekts mit einem Teilrahmen an.
Aktivieren Sie dieses Kontrollkästchen, um einen vollständigen Rahmen
anzuzeigen.
Crystal Report Explorer-Anwenderhandbuch
85
5
5
Formatieren von Berichten
Formatieren von Objekten und Bereichen
Kann größer werden
Dieses Kontrollkästchen ist für Objekte nützlich, die Zeichenfolgen mit
variabler Länge enthalten, z. B. Memofelder.
•
Aktivieren Sie dieses Kontrollkästchen, falls der Objektrahmen vertikal
erweitert werden soll, wenn der Text im Objekt größer als der Rahmen ist.
•
Deaktivieren Sie das Kontrollkästchen, um die Daten abzuschneiden,
wenn der Wert größer als der Rahmen ist.
Unterdrücken (kein Drilldown)
Aktivieren Sie dieses Kontrollkästchen, wenn Sie das markierte Feld
unterdrücken möchten. Die Feldwerte werden weder auf den Registerkarten
"Daten" oder "Bericht" angezeigt noch ausgedruckt.
QuickInfo-Text
QuickInfo-Text erscheint, wenn Sie den Mauszeiger einige Sekunden über
einem Feld ruhen lassen.
Registerkarte "Rahmen" (Dialogfeld "Format-Editor")
Linienart
Dieses Gruppenfeld enthält eine Reihe von Symbolen zur Darstellung der
Feldrahmen. Sie können die Rahmenstile mit Hilfe der neben dem jeweiligen
Rahmensymbol angezeigten Liste anwenden. Wählen Sie zunächst den
Rahmentyp, und klicken Sie zum Anwenden auf das entsprechende Symbol.
Wählen Sie beispielsweise den gepunkteten Rahmen, und klicken Sie auf
das Symbol "Linker und rechter Rahmen". Wenn Sie auf "Anwenden" klicken,
erscheinen der linke und rechte Rahmen Ihres Feldes als gepunktete Linie.
Eng Horizontal
Aktivieren Sie dieses Kontrollkästchen, um den Rahmen an die Feldgröße
anzupassen.
•
Wenn dieses Kontrollkästchen nicht aktiviert ist, hat der Rahmen für
jeden Datensatz die gleiche Größe.
•
Wenn das Kontrollkästchen aktiviert ist, wird die Größe des Rahmens an
jeden einzelnen Datensatz angepasst.
Mit Schatten
Aktivieren Sie dieses Kontrollkästchen, wenn Sie auf der unteren und der
rechten Seite des Feldes einen Schatten drucken möchten.
86
Crystal Report Explorer-Anwenderhandbuch
Formatieren von Berichten
Formatieren von Objekten und Bereichen
Hintergrund
Wählen Sie Optionen aus dieser Liste aus, um gerahmte Objekte mit einer
Hintergrundfarbe zu füllen.
Rahmen
Diese Liste enthält die für Rahmen verfügbaren Farben.
Registerkarte „Schriftart“ (Dialogfeld „Format-Editor“)
Schriftart
Diese Liste enthält alle verfügbaren Schriftarten.
Schriftschnitt
Diese Liste enthält zusätzliche Attribute, die Sie der markierten Schriftart
zuweisen können.
Schriftgrad
Diese Liste enthält alle verfügbaren Schriftgrade.
Farbe
Wählen Sie die gewünschte Farbe aus der Liste aus, wenn Sie die Farbe der
Schriftart ändern möchten.
Durchgestrichen
Wenn Sie dieses Kontrollkästchen aktivieren, wird das Zeichen, das das
Durchstreichen symbolisiert, über die Schriftart gedruckt.
Unterstrichen
Wenn Sie dieses Kontrollkästchen aktivieren, werden die in der ausgewählten
Schriftart eingegebenen Zeichen unterstrichen.
Registerkarte "Nummer" (Dialogfeld "Format-Editor")
Nullwerte anzeigen als
Diese Liste enthält Optionen, mit denen Sie die Darstellung von Nullwerten
festlegen können.
Negative Werte
Diese Liste enthält Optionen, mit denen Sie die Darstellung negativer Werte
festlegen können.
Dezimalstelle festlegen
Diese Liste enthält Optionen, mit denen Sie die Dezimalstelle innerhalb von
Zahlen festlegen können.
Crystal Report Explorer-Anwenderhandbuch
87
5
5
Formatieren von Berichten
Formatieren von Objekten und Bereichen
Dezimalzeichen
Geben Sie das als Dezimalzeichen zu verwendende Zeichen ein.
Tausendertrennzeichen verwenden
Aktivieren Sie dieses Kontrollkästchen, um ein Tausendertrennzeichen zu
verwenden. Geben Sie das gewünschte Zeichen ein.
Währungssymbol verwenden
Aktivieren Sie dieses Kontrollkästchen, um ein Währungssymbol zu
verwenden.
Währungsstelle
Wählen Sie die Position des Währungssymbols aus der Liste aus.
Registerkarte "Datum" (Dialogfeld "Format-Editor")
Datumsreihenfolge
Wählen Sie aus den verfügbaren Optionen aus, in welcher Reihenfolge Tag,
Monat und Jahr angezeigt werden sollen.
Format
Wählen Sie aus den verfügbaren Listen aus, wie Datum und Uhrzeit
angezeigt werden sollen.
Registerkarte "Allgemein" (Bereichs-Assistent)
Ausblenden (Drilldown OK)
Aktivieren Sie dieses Kontrollkästchen, wenn der betreffende Bereich eines
Berichts nicht angezeigt werden soll aber zum Drilldown zur Verfügung
stehen soll.
Unterdrücken (kein Drilldown)
Aktivieren Sie dieses Kontrollkästchen, wenn der betreffende Bereich nicht
gedruckt werden soll und auch nicht zum Drilldown zur Verfügung stehen soll.
Am Ende der Seite drucken
Wenn dieses Kontrollkästchen aktiviert ist, wird jeder Gruppenwert nur unten
auf der Seite gedruckt. (Details werden weiterhin an ihren normalen
Positionen gedruckt.) Dieser Befehl ist hilfreich, wenn Sie Rechnungen oder
andere Berichte drucken, bei denen eine einzelne Gruppe (beispielsweise
nach Auftrags-ID gruppierte Posten) auf einer Seite und der Wert für diese
Gruppe (Teilergebnis, Gruppenergebnisfeld usw.) nur im unteren Bereich der
Seite ausgegeben werden soll.
88
Crystal Report Explorer-Anwenderhandbuch
Formatieren von Berichten
Formatieren von Objekten und Bereichen
Davor neue Seite
Davor neue Seite ist als Formateigenschaft für Gruppenbereiche
(Gruppenkopf und Gruppenfuß) und Detailbereiche verfügbar. Wenn Sie
diese Option aktivieren, fügt das Programm einen Seitenumbruch ein, bevor
dieser Bereich gedruckt wird. Der Seitenumbruch wird an folgenden Stellen
eingefügt:
•
vor der Gruppe (wenn die Option mit einem Gruppenfußbereich
verwendet wird) oder
•
vor jedem Berichtdatensatz (wenn die Option mit einem Detailbereich
verwendet wird)
Seitenkopf und -fuß erscheinen auf jeder Seite. Wenn Sie ein Teilergebnisoder Gruppenergebnisfeld im Gruppenfuß haben, können Sie mit der Option
"Davor neue Seite" diese Werte auf Seiten einfügen, die auf den
zusammengefassten Wert folgen.
Danach neue Seite
Wenn Sie diese Option aktivieren, fügt das Programm nach diesem Bereich
einen Seitenumbruch ein.
•
•
Seitenkopf und -fuß erscheinen auf jeder Seite.
Aktivieren Sie Danach neue Seite für einen Gruppenfußbereich, um jede
Gruppe auf einer eigenen Seite zu drucken.
Seitenzahl zurücksetzen nach
Setzt die Seitenzahl für die folgende Seite auf eins (1) zurück, nachdem die
Gruppengesamtsumme gedruckt wurde. Wenn diese Option zusammen mit
"Am Ende der Seite drucken" verwendet wird, druckt das Programm eine
einzelne Gruppe auf eine Seite sowie den Gruppenwert am unteren
Seitenrand und setzt dann die Seitennummer der nächsten Seite auf 1
zurück. Diese Option ist hilfreich, wenn Sie mehrere Berichte aus einer
einzigen Datei drucken möchten (z.B. Rechnungen) und jeder Bericht
nummeriert werden und mit Seite 1 beginnen soll.
Zusammenhalten
Wenn dieses Kontrollkästchen aktiviert ist, hält das Programm alle Zeilen
eines Bereichs zusammen, entweder auf der aktuellen Seite (wenn der Platz
ausreicht) oder auf der nächsten Seite.
In einer Kundenliste z. B. können sich die Daten für einen bestimmten
Kunden (von einem einzelnen Datensatz oder verknüpften Datensätzen) über
mehrere Zeilen erstrecken. Wenn der Standardseitenumbruch mitten in die
Daten für einen Kunden fällt, würden die Daten geteilt und teils auf der einen,
teils auf der nächsten Seite angezeigt.
Crystal Report Explorer-Anwenderhandbuch
89
5
5
Formatieren von Berichten
Arbeiten auf der Registerkarte "Bericht"
Mit Zusammenhalten verschiebt das Programm den Seitenumbruch
hingegen vor den Datensatz, so dass alle Daten zusammen auf der
folgenden Seite gedruckt werden.
Hinweis: Diese Option funktioniert nicht mit mehrzeiligen Zeichenfolgen
oder Memofeldern. Ein Seitenumbruch kann in der Mitte eines mehrzeiligen
Feldes liegen.
Leeren Bereich unterdrücken
Wenn Sie dieses Kontrollkästchen aktivieren, blendet das Programm einen
Berichtsbereich aus, wenn er leer ist, und druckt ihn, wenn er Daten enthält.
Folgende Bereiche unterlegen
Aktivieren Sie dieses Kontrollkästchen, wenn das ausgewählte Objekt beim
Drucken unter den folgenden Bereichen liegen soll. Verwenden Sie diese
Option, wenn beispielsweise ein Diagramm im Kopfbereich unter den
folgenden Berichtbereichen liegen soll.
Registerkarte "Farbe" (Bereichs-Assistent)
Hintergrund
Wählen Sie eine Option aus dieser Liste aus, um dem ausgewählten Bereich
eine Hintergrundfarbe hinzuzufügen.
Arbeiten auf der Registerkarte "Bericht"
Klicken Sie auf die Registerkarte "Bericht", um eine Vorschau des Crystal
Reports-Berichts anzuzeigen und weitere Änderungen bezüglich
Sortierreihenfolge, Layout und Format vorzunehmen.
Hinzufügen und Bearbeiten von Textobjekten
Textobjekte können auf der Registerkarte "Bericht" genauso wie auf der
Registerkarte "Entwurf" hinzugefügt und bearbeitet werden.
Tipp: Um ein Textobjekt nach der Erstellung zu positionieren, ziehen Sie das
Textobjekt auf die gewünschte Position.
90
1.
So fügen Sie ein Textobjekt hinzu
Klicken Sie auf der Registerkarte Bericht mit der rechten Maustaste in
den weißen Bereich des Berichtsbereichs, dem Sie ein Textobjekt
hinzufügen möchten.
2.
Klicken Sie im Kontextmenü auf Textobjekt hinzufügen.
Crystal Report Explorer-Anwenderhandbuch
Formatieren von Berichten
Arbeiten auf der Registerkarte "Bericht"
Zum Bericht wird ein Textobjekt hinzugefügt. Ersetzen Sie den
vorhandenen Text durch eigenen, und drücken Sie dann die
EINGABETASTE. Sie können den Text erneut bearbeiten, indem Sie die
folgenden Schritte ausführen.
1.
So bearbeiten Sie ein Textobjekt
Klicken Sie mit der rechten Maustaste auf das Objekt, dessen Text Sie
bearbeiten möchten.
2.
Klicken Sie im Kontextmenü auf Text bearbeiten.
Im Textobjekt wird die Einfügemarke angezeigt.
3.
Ersetzen Sie den vorhandenen Text durch eigenen, und drücken Sie
dann die EINGABETASTE.
1.
So entfernen Sie ein Textobjekt
Klicken Sie mit der rechten Maustaste auf den zu entfernenden Text.
2.
Klicken Sie im Kontextmenü auf Feld entfernen.
Formatieren von Bereichen
1.
Klicken Sie auf der Registerkarte Bericht mit der rechten Maustaste in
den weißen Bereich des Berichtbereichs, den Sie formatieren möchten.
2.
Klicken Sie im Kontextmenü auf Bereichs-Assistent.
Der Bereichs-Assistent wird angezeigt. Weitere Informationen zu den im
Bereichs-Assistenten verfügbaren Optionen finden Sie unter
„Formatierungsoptionen“ auf Seite 85.
Formatieren von Feldern
1.
Klicken Sie auf der Registerkarte Bericht mit der rechten Maustaste auf
das zu formatierende Feld.
2.
Klicken Sie im Kontextmenü auf Feld formatieren.
Der Format-Editor wird angezeigt. Weitere Informationen zu den im
Format-Editor verfügbaren Optionen finden Sie unter
„Formatierungsoptionen“ auf Seite 85.
Durchsuchen von Felddaten
1.
Klicken Sie auf der Registerkarte Bericht mit der rechten Maustaste auf
das zu durchsuchende Feld.
2.
Klicken Sie im Kontextmenü auf Felddaten durchsuchen.
Crystal Report Explorer-Anwenderhandbuch
91
5
5
Formatieren von Berichten
Arbeiten auf der Registerkarte "Bericht"
Die Daten in diesem Feld werden im Dialogfenster "Feldbrowser"
angezeigt.
Diese Option ist außerdem im Dialogfeld "Weitere" für Felder und
Gruppen verfügbar, das über die Symbolleiste aufgerufen wird.
Sortieren von Felddaten
Sie können eine Sortierreihenfolge für die Felder im Bericht festlegen. Dabei
können Sie auswählen, ob die Felder in aufsteigender oder absteigender
Reihenfolge angezeigt werden sollen, oder Sie können die Sortierung eines
Feldes entfernen.
1.
2.
So sortieren Sie Felddaten
Klicken Sie auf der Registerkarte Bericht mit der rechten Maustaste auf
das zu sortierende Feld.
Wählen Sie im Kontextmenü Sortieren aus, und klicken Sie dann auf die
Sortieroption, die Sie dem Feld zuweisen möchten.
Entfernen eines Feldes aus dem Bericht
1.
Klicken Sie auf der Registerkarte Bericht mit der rechten Maustaste auf
das zu entfernende Feld.
2.
Klicken Sie im Kontextmenü auf Feld entfernen.
Das Feld wird aus dem Bericht entfernt.
92
Crystal Report Explorer-Anwenderhandbuch
Kapitel
Festlegen von
Anwendereinstellungen
6
Festlegen von Anwendereinstellungen
Übersicht
Übersicht
Mit Hilfe der Optionen im Dialogfeld "Einstellungen" von Crystal Reports
Explorer können Sie eigene Standardeinstellungen wählen und das
Aussehen anpassen.
Auf der Registerkarte "Anwendung" können Sie Farbeinstellungen,
Standardoptionen für Registerkarten, Symbolleistenoptionen, erweiterte
Dialogfeldoptionen und Einstellungen für Feldnamen ändern:
94
Crystal Report Explorer-Anwenderhandbuch
Festlegen von Anwendereinstellungen
Ändern der Hintergrundfarbe
Auf der Registerkarte "Andere" können Sie die Einstellungen für das
Datenraster sowie Optionen für die Registerkarte "Entwurf" ändern:
Hinweis: Zum Wiederherstellen der ursprünglichen Standardeinstellungen
öffnen Sie das Dialogfeld "Einstellungen" und klicken Sie auf Zurücksetzen.
Ändern der Hintergrundfarbe
1.
So ändern Sie die Hintergrundfarbe
Klicken Sie auf die Schaltfläche Einstellungen.
Das Dialogfeld "Einstellungen" wird angezeigt.
2.
Klicken Sie auf der Registerkarte Anwendung auf die Farbe, die Sie als
Hintergrundfarbe festlegen möchten.
3.
Klicken Sie auf Anwenden und anschließend auf OK, um das Dialogfeld
zu schließen.
Crystal Report Explorer-Anwenderhandbuch
95
6
6
Festlegen von Anwendereinstellungen
Festlegen der standardmäßig angezeigten Registerkarte
Festlegen der standardmäßig angezeigten
Registerkarte
Sie können die Registerkarte wählen, die angezeigt wird, wenn Sie die Seite
"Datenquelle für den Bericht festlegen" oder die Seite Seite "Bericht erstellen"
öffnen. Es sind folgende Registerkarten verfügbar:
•
•
•
•
1.
Quelle
Daten
Entwurf
Bericht
So legen Sie die standardmäßig angezeigte Registerkarte fest
Klicken Sie auf die Schaltfläche Einstellungen.
Das Dialogfeld "Einstellungen" wird angezeigt.
2.
Klicken Sie auf der Registerkarte Anwendung auf die Registerkarte, die
Sie als Standard festlegen möchten.
3.
Klicken Sie auf Anwenden und anschließend auf OK, um das Dialogfeld
zu schließen.
Anpassen der Symbolleiste
Per Voreinstellung wird die Symbolleiste auf der linken Bildschirmseite
angezeigt. Sie können eine feste Symbolleiste wählen, Sie können die
Symbolleiste ausblenden, oder Sie konfigurieren eine bewegliche
Symbolleiste.
1.
So legen Sie die Symbolleistenoptionen fest
Klicken Sie auf die Schaltfläche Einstellungen.
Das Dialogfeld "Einstellungen" wird angezeigt.
96
2.
Klicken Sie auf der Registerkarte Anwendung auf die
Symbolleistenoption, den Sie als Standard festlegen möchten.
3.
Klicken Sie auf Anwenden und anschließend auf OK, um das Dialogfeld
zu schließen.
Crystal Report Explorer-Anwenderhandbuch
Festlegen von Anwendereinstellungen
Anzeigen erweiterter Dialogfelder
Anzeigen erweiterter Dialogfelder
Die Symbolleiste enthält eine Reihe von Optionen zum Definieren und
Erstellen von Berichten, beispielsweise zur Auswahl von Feldern und
Gruppen. Verschiedene dieser Optionen verfügen über erweiterte
Dialogfelder. Wenn Sie beispielsweise auf "Felder" klicken, wird eine Liste der
verfügbaren Felder angezeigt. Durch Klicken auf die Schaltfläche "Weitere"
wird das Dialogfeld "Felder" geöffnet. Sie können die Einstellungen so
wählen, dass die erweiterten Dialogfelder standardmäßig geöffnet werden,
wenn Sie auf eine der Optionen, z. B. "Felder", klicken.
1.
So öffnen Sie die erweiterten Dialogfelder per Voreinstellung
Klicken Sie auf die Schaltfläche Einstellungen.
Das Dialogfeld "Einstellungen" wird angezeigt.
2.
Wählen Sie auf der Registerkarte Anwendung die Option Erweitertes
Dialogfeld immer anzeigen.
3.
Klicken Sie auf Anwenden und anschließend auf OK, um das Dialogfeld
zu schließen.
Anzeigen von Feldnamen und beschreibungen
Je nach Art des bearbeiteten Berichts ziehen Sie es möglicherweise vor, die
Namen der Berichtfelder, die Feldbeschreibungen oder beides anzuzeigen. In
der Standardeinstellung werden nur die Feldnamen angezeigt. Sie können
diese Einstellung ändern, so dass nur die Feldbeschreibungen oder aber
zusätzlich die Namen angezeigt werden.
1.
So legen Sie die Anzeige von Feldern fest
Klicken Sie auf die Schaltfläche Einstellungen.
Das Dialogfeld "Einstellungen" wird angezeigt.
2.
Klicken Sie auf der Registerkarte Anwendung ggf. auf die folgenden
Optionen:
•
•
•
3.
Feldnamen anzeigen.
Feldbeschreibungen anzeigen.
Feldnamen und -beschreibungen anzeigen.
Klicken Sie auf Anwenden und anschließend auf OK, um das Dialogfeld
zu schließen.
Crystal Report Explorer-Anwenderhandbuch
97
6
6
Festlegen von Anwendereinstellungen
Festlegen der Zeilenanzahl im Datenraster
Festlegen der Zeilenanzahl im Datenraster
Sie können festlegen, wie viele Datenzeilen auf der Registerkarte "Daten"
angezeigt werden.
1.
So legen Sie die Zeilenanzahl im Datenraster fest
Klicken Sie auf die Schaltfläche Einstellungen.
Das Dialogfeld "Einstellungen" wird geöffnet.
2.
Geben Sie auf der Registerkarte "Andere" im Feld Zeilen pro Stapel die
Anzahl der Zeilen ein, die angezeigt werden sollen.
3.
Klicken Sie auf OK.
Ändern des Aussehens der Registerkarte
"Entwurf"
Sie können das Aussehen der Registerkarte "Entwurf" verändern. Die
Registerkarte "Entwurf" enthält die Abschnitte, aus denen sich Ihr Bericht
zusammensetzt. Es handelt sich hierbei um folgende Abschnitte:
•
•
•
•
•
Kopfbereich des Berichts
Seitenkopf
Details
Seitenfuß
Fußbereich des Berichts
Sie können auswählen, wie diese Abschnitte angezeigt werden, wenn Sie auf
die Registerkarte "Entwurf" klicken. Es stehen folgende Optionen zur
Auswahl:
98
Alle geöffnet
Jeder Abschnitt ist per Voreinstellung
geöffnet.
Details geöffnet
Nur der Abschnitt "Details" ist
geöffnet.
Alle geschlossen
Jeder Abschnitt ist per Voreinstellung
geschlossen.
Crystal Report Explorer-Anwenderhandbuch
Festlegen von Anwendereinstellungen
Ändern des Aussehens der Registerkarte "Entwurf"
1.
So ändern Sie das Aussehen der Registerkarte "Entwurf"
Klicken Sie auf die Schaltfläche Einstellungen.
Das Dialogfeld "Einstellungen" wird angezeigt.
2.
Klicken Sie auf der Registerkarte Andere auf die gewünschte
Einstellung.
3.
Klicken Sie auf OK.
Um den Entwurf des Berichtlayouts zu vereinfachen, können Sie auf der
Registerkarte "Entwurf" ein Gitternetz einblenden. Auf diese Weise ist es
einfacher, Berichtobjekte aneinander auszurichten. Außerdem können Sie die
Berichtobjekte im Bereich "Entwurf" am Gitternetz ausrichten, um das
Ausrichten von Objekten zu vereinfachen. Das Gitternetz wird nur auf der
Registerkarte "Entwurf" angezeigt. Im endgültigen Bericht ist es nicht
sichtbar.
1.
So blenden Sie das Gitternetz auf der Registerkarte "Entwurf" ein
Klicken Sie auf die Schaltfläche Einstellungen.
Das Dialogfeld "Einstellungen" wird angezeigt.
2.
Klicken Sie dann auf der Registerkarte Andere auf Gitternetz auf der
Registerkarte "Entwurf" anzeigen.
3.
Klicken Sie auf OK.
1.
So richten Sie Berichtobjekte am Gitternetz aus
Klicken Sie auf die Schaltfläche Einstellungen.
Das Dialogfeld "Einstellungen" wird angezeigt.
2.
Klicken Sie dann auf der Registerkarte Andere auf Am Raster
ausrichten im Entwurfsmodus.
3.
Klicken Sie auf OK.
Crystal Report Explorer-Anwenderhandbuch
99
6
6
Festlegen von Anwendereinstellungen
Ändern des Aussehens der Registerkarte "Entwurf"
100
Crystal Report Explorer-Anwenderhandbuch
Kapitel
Referenz zur Crystal-Syntax
7
Referenz zur Crystal-Syntax
Crystal-Syntax im Überblick
Crystal-Syntax im Überblick
Crystal Reports bietet Unterstützung für Formeln, die sowohl in der Crystalals auch in der Basic-Syntax erstellt wurden. Wenn Sie unter Verwendung
von Crystal Reports Explorer Berechnungen hinzufügen oder ändern,
müssen Sie jedoch Crystal-Syntax verwenden.
Grundlagen der Crystal-Syntax
Ergebnis einer Formel
Das Ergebnis einer Formel bzw. der Wert, der ausgegeben oder ausgedruckt
wird, wenn die Formel in einen Bericht eingefügt wird, wird als der von der
Formel zurückgegebene Wert bezeichnet. Jede Formel in Crystal Reports
muss einen Wert zurückgeben. Die folgende Beispielformel in einfacher
Crystal-Syntax gibt den Wert 10 zurück:
10
Der Wert, der von einer Formel zurückgegeben wird, kann einer der sieben
unterstützten einfachen Datentypen sein. Bei diesen einfachen Datentypen
handelt es sich um Zahl (Number), Währung (Currency), Zeichenfolge
(String), Boolesch (Boolean), Datum (Date), Uhrzeit (Time) und DatumUhrzeit
(DateTime).
Hinweis: Darüber hinaus unterstützt Crystal Reports Bereichstypen und
Array-Typen, die jedoch nicht von Formeln zurückgegeben werden können.
Nehmen wir beispielsweise an, eine Firma schließt beim Versand von
Bestellungen mit einem Wert von über 1.000 € grundsätzlich eine
Transportversicherung ab, für Aufträge mit niedrigerem Bestellwert dagegen
nicht:
//Eine Formel, die einen Zeichenfolge-Wert zurückgibt
If {Aufträge.Auftragssumme} >= 1000 Then
"Versicherter Versand"
Else
"Normaler Versand"
Tipp: Der Text nach den zwei Schrägstrichen ist ein Kommentar für jeden,
der diese Formel liest, und wird als solcher vom Crystal-Syntax-Compiler
ignoriert.
Die oben angegebene Formel gibt die Zeichenfolge „Versicherter Versand“
zurück, falls der Wert des Datenbankfeldes {Aufträge.Auftragssumme} größer
oder gleich 1.000 ist, und bei allen niedrigeren Werten wird die Zeichenfolge
„Normaler Versand“ zurückgegeben.
102
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Kommentare
Bei der Crystal-Syntax wird nicht zwischen Groß- und Kleinschreibung
unterschieden
Das Schlüsselwort Then könnte beispielsweise auch then oder THEN
geschrieben werden. Das gilt für alle Variablennamen, Funktionen und
Schlüsselwörter, die in einer in Crystal-Syntax geschriebenen Formel
verwendet werden.
Hinweis: Die einzige Ausnahme zu dieser Regel bilden die
Zeichenfolgewerte. Die Zeichenfolge „Hallo“ ist keineswegs identisch mit der
Zeichenfolge „hallo“.
Übung anhand der Musterdatenbank Xtreme
Viele der Beispiele dieses Kapitels beziehen sich auf die Musterdatenbank
Xtreme. Diese Datenbank ist in der Anwendung Crystal Reports enthalten.
Suchen Sie im Verzeichnis"Samples\De" nach dem Datenbankordner mit der
Datenbank Xtreme.
Kommentare
Formelkommentare sind Anmerkungen, die in die Formel geschrieben
werden, um Aufbau und Funktionsweise der Formel zu erklären.
Kommentare werden nicht ausgegeben oder gedruckt und haben keine
Auswirkung auf die Formel, sie werden jedoch im Formula Workshop
angezeigt. Mit Hilfe von Kommentaren können Sie den Zweck und die
Einzelschritte einer Formel erklären.
Kommentare fangen mit zwei Schrägstrichen (//) an, denen der Text des
Kommentars folgt. Alles, was nach den Schrägstrichen auf derselben Zeile
steht, wird als Teil des Kommentars behandelt:
//Die Formel gibt die Zeichenfolge "Hallo" zurück
//Dies ist ein weiterer Kommentar
"Hallo" //Kommentare können am Ende einer Zeile hinzugefügt
werden
//Kommentare können hinter dem Formeltext stehen
Felder
Auf viele Felder, die Sie beim Erstellen Ihres Berichts verwenden, können Sie
auch in Ihren Formeln verweisen. So können Sie in einer Formel
beispielsweise Datenbank-, Parameter-, Laufende Summen-, SQLAusdrucks-, Gruppenergebnis- und Gruppennamenfelder verwenden. Sie
können außerdem auch auf andere Formelfelder verweisen.
Crystal Report Explorer-Anwenderhandbuch 103
7
7
Referenz zur Crystal-Syntax
Felder
Das einfachste Verfahren, ein Feld in einen Bericht einzufügen, besteht darin,
in der Struktur "Berichtfelder" auf einen Feldnamen doppelzuklicken. Dadurch
wird sichergestellt, dass die richtige Syntax für das Feld verwendet wird.
Aussehen von Feldern in Formeln
Die Namen von Datenbank-, Parameter-, Formel-, Laufende Summe- und
SQL-Ausdrucksfeldern werden in geschweifte Klammern gefasst. Die Namen
von Datenbankfeldern werden der Datenbank entnommen. Hier ein Beispiel:
Datenbankfeld: {Angestellter.Nachname}
Die Namen der Parameter-, Formel-, Laufende Summe- und SQLAusdrucksfelder werden angegeben, wenn die Felder erstellt werden.
•
Die Namen von Parameterfeldern enthalten außerdem ein Fragezeichen:
{?mein Parameterfeld}.
•
Die Namen von Formelfeldern enthalten ein @-Zeichen: {@eine
weitere Formel}.
•
Die Namen von Laufende Summe-Feldern enthalten ein
Nummernzeichen: {#meine laufende Summe}.
•
Die Namen von SQL-Ausdrucksfeldern enthalten ein Prozentzeichen:
{%mein SQL-Ausdruck}.
Die Namen von Gruppenergebnis- und Gruppennamenfeldern sehen wie
Funktionsaufrufe aus. Tatsächlich sind sie jedoch Kurzschreibweisen für
Berichtsfelder.
•
Gruppenergebnisfeld "Sum": Sum({Aufträge.Auftragssumme},
{Aufträge.Versand durch}).
•
Gruppennamenfeld: Gruppenname({Aufträge.Versand durch}).
Beispielformeln mit Feldern
Die Formel in diesem Beispiel verwendet die Xtreme-Datenbank. Ermitteln
Sie, wie viele Tage zwischen Bestellungsaufgabe und Versandzeitpunkt
liegen, indem Sie einfach den Inhalt des Datenbankfeldes Versanddatum
vom Inhalt des Datenbankfeldes Auftragsdatum abziehen:
//Eine Formel mit Datenbankfeldern
{Aufträge.Versanddatum} - {Aufträge.Auftragsdatum}
Um den Gesamtwert eines angegebenen Produkts, das bestellt wurde, zu
ermitteln, multiplizieren Sie dessen Einzelpreis mit der Bestellmenge:
{Bestelldetail.Einzelpreis} * {Bestelldetail.Menge}
So errechnen Sie einen Verkaufspreis in Höhe von 80 Prozent des
ursprünglichen Einzelpreises:
{Bestelldetail.Einzelpreis} * 0.80
104
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Ausdrücke
Ausdrücke
Ein Ausdruck ist eine Kombination von Schlüsselwörtern, Operatoren,
Funktionen und Konstantenwerten, die einen Wert eines gegebenen Typs
ergeben. Hier ein Beispiel:
//Ein Ausdruck, der den Zahlenwert 25 ausgibt
10 + 20 - 5
//Ein Ausdruck, der den folgenden Zeichenfolgenwert ausgibt:
//"Dies ist eine Zeichenfolge."
"Dies ist eine Zeichenfolge."
Eine in Crystal-Syntax geschriebene Formel besteht aus einer Folge von
Anweisungen. Der Wert des endgültigen Ausdrucks ist der Wert, der von der
Formel zurückgegeben wird, sowie das, was gedruckt wird. Jeder Ausdruck
muss vom vorhergehenden Ausdruck durch ein Semikolon (;) abgetrennt
sein.
Mehrfachausdrücke
In der Regel belegt jeder Ausdruck eine Zeile. Sie können mit dem Ausdruck
jedoch auch in der nächsten Zeile fortfahren, wenn Sie mehr Platz benötigen.
Die obenstehende Formel besteht aus 5 Ausdrücken. Sie gibt den
Zahlenwert 25 zurück, da dies der Wert des letzten Ausdrucks in der Formel
ist.
Beispiel
//Beispiel für Ausdrücke
//Erster Ausdruck. Sein Wert ist der
//Zahlenwert 30
10 + 20;
//Zweiter Ausdruck. Sein Wert ist die Zeichenfolge
//"Hallo Welt". Er erstreckt sich über zwei Zeilen.
"Hallo " +
"Welt";
//Dritter Ausdruck. Sein Wert ist der Zahlentyp
{Bestelldetail.Menge} * 2 - 5;
//Vierter Ausdruck. Sein Wert ist der Zeichenfolgentyp
If {Bestelldetail.Menge} > 1 Then
"mehrere Einheiten"
Else
"eine Einheit";
//Fünfter und letzter Ausdruck. Sein Wert ist der
//Zahlenwert 25
20 + 5
Nach dem letzten Ausdruck in der Formel kann ebenfalls ein Semikolon
gesetzt werden, dies ist jedoch optional. Die obenstehende Formel hätte
beispielsweise folgendermaßen enden können:
20 + 5;
Crystal Report Explorer-Anwenderhandbuch 105
7
7
Referenz zur Crystal-Syntax
Ausdrücke
Einige der Beispielformeln im Abschnitt „Ausdrücke“ auf Seite 105 enthalten
keine Semikolons. Nach dem letzten Ausdruck aber ist ein Semikolon
optional. Viele Formeln in Crystal-Syntax können als ein einziger Ausdruck
geschrieben werden.
Nach der Zeichenfolge „mehrere Einheiten“ steht kein Semikolon. Tatsächlich
meldet das Programm einen Fehler, wenn Sie hier ein Semikolon setzen. Ein
Semikolon trennt zwei Ausdrücke voneinander; das
Else
"eine Einheit";
ist jedoch kein separater Ausdruck. Es kann nicht getrennt vom "If" stehen.
Es ist vielmehr ein integraler Bestandteil des If-Ausdrucks, da es den Wert
beschreibt, den der If-Ausdruck unter bestimmten Umständen zurückgibt.
Hinweis: Das hier angegebene Beispiel ist kein praktisches Beispiel, da die
vier ersten Ausdrücke in der Formel keine Auswirkung auf den letzten
Ausdruck hatten.
So wirken sich frühere Ausdrücke auf spätere Ausdrücke aus
Die Tatsache, dass es sich bei einer Formel in Crystal-Syntax um eine Folge
von Ausdrücken handelt, deren Ergebnis der Wert des letzten Ausdrucks
sind, stellt das wichtigste Konzept dar, das für ein Verständnis der CrystalSyntax begriffen werden muss. Aufgrund dieser auf Ausdrücken basierenden
Syntax können Sie in sehr kurzen Formeln viel Funktionalität unterbringen.
Beispiel
//Erster Ausdruck. Er deklariert die Zahlvariable x
//und gibt dann den Wert einer nicht initialisierten
//Zahlvariable zurück, bei der es sich um 0 handelt.
NumberVar(x);
//Zweiter Ausdruck. Er weist x den Wert 30 zu
//und gibt 30 zurück.
x := 30
Bei dieser Formel würde ein Fehler ausgegeben, wenn der obere Ausdruck
ausgelassen würde, weil sich der zweite Ausdruck auf die Zahlenvariable x
bezieht. In diesem Fall verweist der zweite Ausdruck auf die Zahlenvariable x.
Dem Programm gegenüber muss allerdings x deklariert sein, bevor ein
Ausdruck, in dem x verwendet wird, korrekt verarbeitet werden kann.
Im Allgemeinen werden Variablen dazu eingesetzt, dass frühere Ausdrücke in
einer Formel sich auf den letzten Ausdruck auswirken. Weitere Informationen
finden Sie unter „Variablen“ auf Seite 113.
106
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Zuweisung
Verwenden des If-Ausdrucks
Der Ausdruck If ist eine der am häufigsten verwendeten Funktionen der
Crystal-Syntax. An seinem Beispiel ist auch ein Einblick in die Natur der
Ausdrücke besonders gut möglich. Betrachten Sie den vorherigen Ausdruck
als eine separate Formel. Diese Formel enthält nur einen einzigen Ausdruck
und benötigt daher kein Semikolon:
If {Bestelldetail.Menge} > 1 Then
"mehrere Einheiten"
Else
"eine Einheit"
Sie können diese Formel nun so ändern, dass entweder „mehrere Einheiten“
oder die Zahl 1 gedruckt wird.
//Eine fehlerhafte Formel
If {Bestelldetail.Menge} > 1 Then
"mehrere Einheiten"
Else
1
Bei dieser Formel erhalten Sie eine Fehlermeldung, weil der Wert des
Ausdrucks manchmal der Zeichenfolgewert "mehrere Einheiten" und
manchmal der Zahlwert 1 ist. Es handelt sich also um verschiedene
Werttypen. „mehrere Einheiten“ ist ein Zeichenfolgewert und 1 ein
Zahlenwert. In Crystal Reports darf der Wert eines Ausdrucks immer nur
einen Typ aufweisen.
Hinweis: Sie können in diesem Beispiel den Fehler mit Hilfe der Funktion
CStr korrigieren, die den Zahlenwert 1 in einen Zeichenfolgewert konvertiert.
Die Zahl 1 wird beispielsweise in die Zeichenfolge „1“ umgewandelt, indem
CStr (1, 0) aufgerufen wird.
//Eine richtige Formel
If {Bestelldetail.Menge} > 1 Then
"mehrere Einheiten"
Else
CStr (1, 0) //0 Dezimalstellen verwenden
Weitere Informationen über den If-Ausdruck finden Sie unter
„Steuerelementstrukturen“ auf Seite 131.
Zuweisung
Der Zuweisungsoperator ist ein Doppelpunkt, gefolgt von einem
Gleichheitszeichen (:=).
Crystal Report Explorer-Anwenderhandbuch 107
7
7
Referenz zur Crystal-Syntax
Einfache Datentypen
Beispiel
//Zuweisung des Zahlenwertes 10 zu der Variablen x
x := 10;
//Zuweisung des Zeichenfolgewertes "hallo" zu
//der Variablen mit dem Namen Gruß
Gruß := "hallo";
Mit dem Gleichheitsoperator (=) wird überprüft, wann die beiden Werte gleich
sind. Es ist ein häufiger Fehler, dass der Gleichheitsoperator verwendet wird,
wenn eigentlich der Zuweisungsoperator erforderlich ist. Dadurch kann eine
unverständliche Fehlermeldung oder auch gar keine Fehlermeldung
ausgegeben werden, da die Verwendung des Gleichheitsoperators oft
syntaktisch korrekt ist. Hier ein Beispiel:
Gruß = "hallo";
In dieser Formel wird überprüft, ob der Wert der Variablen Gruß gleich dem
Wert „hallo“ ist. Ist dies der Fall, so ist der Wert des Ausdrucks TRUE, wenn
nicht, so ist der Wert des Ausdrucks FALSE. In jedem Fall ist dies ein
durchaus korrekter Ausdruck in Crystal-Syntax (ausgehend von der
Annahme, dass es sich bei "Gruß" um eine Zeichenfolgevariable handelt).
Einfache Datentypen
Die einfachen Datentypen von Crystal Reports heißen Zahl (Number),
Währung (Currency), Zeichenfolge (String), Boolesch (Boolean), Datum
(Date), Uhrzeit (Time) und DatumUhrzeit (DateTime).
Zahl
Geben Sie Zahlen ohne Tausendertrennzeichen oder Währungssymbole ein
(generell sollten formatierte Zahlen zwar evtl. als Ergebnis einer Formel
ausgegeben werden, aber nicht in der Formel enthalten sein).
Beispiel
10000
-20
1.23
Währung
Mit dem Dollar ($) erstellen Sie einen Währungswert.
108
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Einfache Datentypen
Beispiel
$10000
-$20
$1.23
Sie können stattdessen auch die Funktion CCur verwenden. Das erste C in
CCur steht für Convert (Konvertieren), da diese Funktion ohne Weiteres dazu
verwendet werden kann, Zahlenwerte in Währungswerte umzuwandeln.
CCur (10000)
CCur (-20)
CCur (1.23)
Zeichenfolge
Zeichenfolgen dienen zum Aufnehmen von Text. Text muss in doppelte
Anführungszeichen (") oder in Apostrophe (') gesetzt werden und kann nicht
auf mehrere Zeilen verteilt werden. Wenn Sie innerhalb einer Zeichenfolge
doppelte Anführungszeichen verwenden möchten, müssen Sie jedes
doppelte Anführungszeichen zweimal schreiben. Ebenso können Sie einen
Apostroph in einer Zeichenfolge, die mit Apostrophen eingefasst ist,
verwenden, indem Sie zwei Apostrophe hintereinander eingeben.
Beispiel
"Dies ist eine Zeichenfolge."
"123"
"Das Wort ""Hallo"" steht in Anführungszeichen."
'Dies ist auch eine Zeichenfolge.'
'123'
'Vorjahresumsatz'
Wenn Sie links in der Zeichenfolge doppelte Anführungszeichen verwenden,
müssen Sie dies auch rechts tun. Das Gleiche gilt für Apostrophe. Das
folgende Beispiel ist also falsch:
'Keine gültige Zeichenfolge."
Sie können einzelne Elemente oder Zeichenfolgenteile aus einer
Zeichenfolge extrahieren, indem Sie die Position des Zeichens oder einen
Bereich von Zeichenpositionen angeben. Dabei sind auch negative Werte
zulässig; durch sie wird die Position ab dem Ende der Zeichenfolge
angegeben.
"Hallo" [2] //Gleich "a"
"Hallo" [-5] //Gleich "h"
"604-555-1234" [1 to 3] //Gleich "604"
"abcdef" [-3 to -1] //Gleich "def"
Sie können Teile von Zeichenfolgen auch mit den Funktionen Left, Right und
Mid aus Zeichenfolgen extrahieren.
Crystal Report Explorer-Anwenderhandbuch 109
7
7
Referenz zur Crystal-Syntax
Einfache Datentypen
Boolesch
Die gültigen booleschen Werte heißen:
True
False
Hinweis: Ja kann an Stelle von TRUE verwendet werden, und Nein an Stelle
von FALSE.
Datum, Uhrzeit und DatumUhrzeit
Der Typ DateTime (DatumUhrzeit) kann Datum und Uhrzeit, nur das Datum
oder auch nur die Uhrzeit enthalten. Er ist also ziemlich vielseitig. Der DateTyp (Datum) kann nur Datumsangaben aufnehmen, und der Time-Typ (Zeit)
eignet sich nur für Zeitangaben. Date- und Time-Typ sind effizienter als der
DateTime-Typ und eignen sich daher für Fälle, in denen der erweiterte
Funktionsumfang und die größere Flexibilität des DateTime-Typs nicht
benötigt wird.
Durch Eingabe der für Datums- und Zeitangaben erforderlichen Literale
selbst können DateTime-Werte direkt erstellt werden. Bei diesem Verfahren
müssen die DateTime-Literale zwischen zwei #-Zeichen eingegeben werden.
Es wird eine Vielzahl von Formaten unterstützt.
Hinweis: Diese Datum-Uhrzeit-Literale können nicht auf mehrere Zeilen
verteilt werden.
Beispiele
#8/6/1976 1:20 am#
#August 6, 1976#
#6 Aug 1976 13:20:19#
#6 Aug 1976 1:30:15 pm#
#8/6/1976#
#10:20 am#
Obwohl #10:20 am# wie ein Time-Typ und #8/6/1976# wie ein Date-Typ
aussieht, gehören sie nicht zu diesen Typen. Beide gehören zum DateTimeTyp, was für alle Datum-Uhrzeit-Literale gilt. Beispielsweise ist #10:20 am# im
Grunde nichts anderes als ein DateTime-Wert mit fehlendem
Datumsbestandteil. Mit Hilfe von CTime (#10:20 am#) kann dieser Wert in
einen Time-Typ umgewandelt werden.
An Stelle von Datum-Uhrzeit-Literalen können Sie auch die Funktion
CDateTime dazu verwenden, eine Zeichenfolge in einen DateTime-Wert zu
konvertieren. Hier ein Beispiel:
CDateTime ("8/6/1976 1:20 am")
CDateTime ("10:20 am")
110
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Bereichs-Datentypen
Allerdings besteht zwischen der Verwendung von Datum-Uhrzeit-Literalen
und der oben genannten Funktion CDateTime ein wesentlicher Unterschied.
Datum-Uhrzeit-Literale verwenden immer die Datumsformate der USA statt
der Datumsformate des Gebietsschemas des Computers, auf dem Crystal
Reports ausgeführt wird. Daher funktionieren die oben genannten Beispiele
Datum-Uhrzeit-Literale auf jedem Computer. Andererseits können Sie
beispielsweise auf einem französischen System auch Konstruktionen der
folgenden Art verwenden:
CDateTime ("22. August 1997") //Identisch mit: #Aug 22,
1997#
Datum-Werte können mit CDate und Uhrzeit-Werte mit CTime gebildet
werden:
CDate ("Aug 6, 1969")
CDate (1969, 8, 6) //Geben Sie das Jahr, den Monat und den
Tag an
//Konvertiert das DateTime-Argument in einen Date-Wert
CDate (#Aug 6, 1969#)
CTime ("10:30 am")
CTime (10, 30, 0) //Geben Sie die Stunden, Minuten und
Sekunden an
CTime (#10:30 am#)
Bereichs-Datentypen
Bereiche dienen dazu, eine ganze Palette unterschiedlicher Werte zu
verarbeiten. Bereichstypen sind für alle einfachen Typen außer für boolesche
Werte (Boolean) verfügbar. Daher gibt es folgende Arten: Zahlenbereiche,
Währungsbereiche, Zeichenfolgebereiche, Datumsbereiche, Zeitbereiche
und DatumUhrzeit-Bereiche. Bereiche können Sie mit den Schlüsselwörtern
To, _To, To_, _To_, UpTo, UpTo_, UpFrom und UpFrom_ erstellen. Im
Allgemeinen wird To für Bereiche mit zwei Endpunkten und UpTo und
UpFrom für Bereiche mit offenem Ende (mit nur einem Endpunkt) verwendet.
Durch die Unterstriche wird angegeben, ob die Endpunkte innerhalb des
Bereichs liegen oder nicht.
Beispiele für Zahlenbereichswerte
Der Zahlenbereich 2 bis 5 einschließlich 2 und 5
2 To 5
Der Zahlenbereich 2 bis 5 ohne 2, aber einschließlich 5
2 _To 5
Alle Zahlen kleiner als oder gleich 5
UpTo 5
Crystal Report Explorer-Anwenderhandbuch 111
7
7
Referenz zur Crystal-Syntax
Bereichs-Datentypen
Alle Zahlen kleiner als 5
UpTo_ 5
Beispiele für DateTime-Bereichswerte
#Jan 5, 1999# To #Dec 12, 2000#
UpFrom #Jan 1, 2000#
Verwenden von Bereichen in Formeln
In Crystal Reports gibt es 27 Funktionen zur Angabe von Datumsbereichen.
Die Funktion LastFullMonth beispielsweise legt einen Datumswertebereich
fest, der alle Datumsangaben vom Ersten bis zum Letzten des Vormonats
umfasst. Wenn also das heutige Datum der 15. September 1999 ist, dann
entspricht LastFullMonth dem Bereichswert CDate (#Aug 1, 1999#) To CDate
(#Aug 31, 1999#).
Bereiche werden häufig in If- und Select-Anweisungen verwendet. Im
folgenden Beispiel werden die Noten "A" bis "F" von Schülern anhand ihrer
Testergebnisse errechnet. Testergebnisse größer als oder gleich 90 erhalten
die Note „A“, Ergebnisse von 80 bis 90 (ausschließlich 90) erhalten die Note
„B“ usw.
//Berechnen von Schülernoten
Select {Schüler.Punktzahl}
Case UpFrom 90 :
"A"
Case 80 To_ 90:
"B"
Case 70 To_ 80 :
"C"
Case 60 To_ 70 :
"D"
Standard:
"F";
In diesem Beispiel wird der Select-Ausdruck verwendet, der im Abschnitt über
die Steuerelementstrukturen noch detaillierter beschrieben wird. Mit Hilfe des
Operators In können Sie prüfen, ob ein Wert innerhalb eines Bereichs liegt.
Hier ein Beispiel:
5 In 2 To 10; //True
5 In 2 To_ 5; //False
5 In 2 To 5; //True
Die Funktionen Maximum und Minimum können dazu verwendet werden, die
Endpunkte eines Wertebereichs zu ermitteln:
Maximum (2 To 10) //Gibt 10 zurück
112
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Array-Datentypen
Array-Datentypen
In Crystal Reports sind Arrays geordnete Listen von Werten desselben Typs.
Diese Werte werden als Elemente des Arrays bezeichnet. Die Elemente
eines Arrays können Werte eines einfachen Typs oder eines Bereichstyps
sein. Arrays werden mit eckigen Klammern ([ ]) erstellt.
Beispiele
Ein Array mit drei Zahlenwerten: Das erste Element ist 10, das zweite 5 und
das dritte 20.
[10, 5, 20]
Ein Array mit sieben Zeichenfolgenwerten:
["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"]
Ein Array aus zwei DateTime-Bereichswerten:
[#Jan 1, 1998# To #Jan 31, 1998#,
#Feb 1, 1999# To #Feb 28, 1999#]
Mit Hilfe von eckigen Klammern, in denen die Indexzahl des gewünschten
Elements enthalten ist, können Sie einzelne Elemente aus einem Array
extrahieren. Dieser Vorgang wird als Indizieren des Arrays bezeichnet:
[10, 5, 20] [2] //Gleich 5
Zahlenbereiche können ebenfalls zum Indizieren von Arrays verwendet
werden. Als Ergebnis erhalten Sie ein weiteres Array. Hier ein Beispiel:
[10, 5, 20] [2 To 3] //Gleich [5, 20]
Arrays sind besonders in Kombination mit Variablen nützlich. Diese
Verwendung wird im Abschnitt „Variablen“ auf Seite 113 näher beschrieben.
Mit Hilfe von Variablen können Sie die einzelnen Elemente eines Arrays
ändern und seine Größe so umdeklarieren, dass es mehr Elemente
aufnehmen kann. Sie können beispielsweise mit Hilfe einer auf Detailebene
zugreifenden Formel Datenbankfeldwerte in eine globale Array-Variable
einlesen und danach eine Formel in einem Gruppenfuß verwenden, um
anhand dieser Werte eine Berechnung durchzuführen. Dadurch ist es
möglich, viele verschiedene Gruppenergebnisoperationen durchzuführen, die
den jeweiligen Anforderungen angepasst sind.
Variablen
In diesem Abschnitt werden die wichtigsten Komponenten von Variablen
beschrieben. Sie erfahren außerdem, wie Sie Variablen erstellen und ihnen
Werte zuweisen können.
Crystal Report Explorer-Anwenderhandbuch 113
7
7
Referenz zur Crystal-Syntax
Variablen
Variablen im Überblick
Eine Variable repräsentiert ein bestimmtes Datenelement (einen Wert) und
fungiert als Platzhalter für diesen Wert. Wenn das Programm bei der
Auswertung einer Formel auf eine Variable stößt, ermittelt es den Wert dieser
Variablen und verwendet diesen Wert bei der Auswertung der Formel. Im
Gegensatz zu einer Konstanten, die einen feststehenden, unveränderlichen
Wert enthält, können einer Variablen mehrmals unterschiedliche Werte
zugewiesen werden. Einer Variablen wird ein Wert zugewiesen, den sie
beibehält, bis ihr zu einem späteren Zeitpunkt ein neuer Wert zugewiesen
wird. Aufgrund dieser Flexibilität müssen Variablen zuerst deklariert werden,
bevor sie verwendet werden können, damit Crystal Reports weiß, dass sie
vorhanden sind und wofür sie vorgesehen sind.
Beispiel
Wenn Sie einen Bericht über Kunden nach Telefonvorwahl strukturieren
möchten, könnten Sie dazu eine Variable erstellen, mit der aus den
Faxnummern der Kunden die Vorwahlnummern extrahiert werden. Im
folgenden Beispiel wird eine solche Variable namens Vorwahl verwendet:
Local StringVar Vorwahl;
areaCode := {Kunde.Fax} [1 To 3];
In der ersten Zeile dieses Beispiels wird die Variable deklariert, indem ihr ein
Name und ein Typ zugewiesen wird. Das Datenbankfeld {Kunde.Fax} ist ein
Zeichenfolgefeld, und durch [1 To 3] werden aus dem aktuellen Wert dieses
Feldes die ersten drei Zeichen extrahiert. Anschließend wird dieser Wert der
Variablen Vorwahl zugewiesen.
Variablendeklarationen
Bevor eine Variable in einer Formel verwendet werden kann, muss sie
deklariert werden.
Eine Variable kann Werte eines festgelegten Typs aufnehmen. Zugelassene
Typen sind die sieben einfachen Typen (Zahl, Währung, Zeichenfolge,
Boolesch, Datum, Uhrzeit und DatumUhrzeit), die sechs Bereichstypen
(Zahlenbereich, Währungsbereich, Zeichenfolgebereich, Datumsbereich,
Uhrzeitbereich und DatumUhrzeit-Bereich) und Variablen, die Arrays der
genannten Typen aufnehmen können. Dies ergibt eine Gesamtzahl von 26
verschiedenen Typen, die einer Variablen zugewiesen werden können.
Wenn Sie eine Variable deklarieren, legen Sie auch ihren Namen fest. Eine
Variable kann nicht den Namen einer Funktion, eines Operators oder eines
anderen Schlüsselworts erhalten, das in der Crystal-Syntax verwendet wird.
114
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Variablen
Daher können Sie einer Variablen beispielsweise nicht den Namen Sin, Mod
oder If geben, da Sin eine integrierte Funktion, Mod ein integrierter Operator
und "If" ein integriertes Schlüsselwort ist. Wenn Sie Formeln im Formula
Workshop eingeben, werden die Namen der integrierten Funktionen und
Operatoren sowie alle weiteren Schlüsselwörter in einer anderen Farbe
hervorgehoben, damit Sie leicht erkennen können, ob der eingegebene
Variablenname einen Konflikt verursacht.
Sobald eine Variable deklariert wurde, kann sie in einer Formel verwendet
werden. Sie können ihr jetzt beispielsweise einen Initialisierungswert
zuweisen:
Local NumberVar x; //Deklariert x als Zahlenvariable
x = 10; //Zuweisung des Wertes 10 zu x
Hinweis: Das Schlüsselwort zur Deklarierung der Zahlenvariable hat ein Var
am Ende stehen. Diese Endung haben alle Variablentypen in der CrystalSyntax.
Eine Variable kann nur Werte eines einzigen Typs aufnehmen. Wenn eine
Variable z. B. einen Zahlenwert enthält, kann sie später nicht dazu verwendet
werden, eine Zeichenfolge aufzunehmen.
Beispiel
Local StringVar y;
y := "Hallo";
//OK - die Funktion Length erfordert ein
Zeichenfolgenargument
Length (y);
//Fehler - y kann nur Zeichenfolge-Werte aufnehmen
y := #Jan 5, 1993#;
//Fehler - y kann nur Zeichenfolge-Werte aufnehmen
y := ["a", "bb", "ccc"];
//'Fehler - die Sin-Funktion erwartet als Argument eine Zahl
Sin (y);
Sie können die Deklaration einer Variablen und die Zuweisung eines Wertes
in einem einzigen Ausdruck kombinieren. Hier ein Beispiel:
Local
Local
Local
Local
NumberVar
StringVar
DateVar z
NumberVar
x := 10 + 20;
y := "Hallo" + " " + "Welt";
:= CDate (#Sept 20, 1999#);
Range gradeA := 90 To 100;
Dies ist sehr nützlich, denn es ist effizienter und hilft, den häufigen Fehler der
falschen Initialisierung von Variablen zu vermeiden.
Hier sind noch einige Beispiele für das Deklarieren und Initialisieren von
Bereichsvariablen:
Local NumberVar Range note1;
Local DateVar Range quartal;
gradeA := 90 To 100;
quarter := CDate (1999, 10, 1) To CDate (1999, 12, 31);
Crystal Report Explorer-Anwenderhandbuch 115
7
7
Referenz zur Crystal-Syntax
Variablen
Variablenbereiche
Durch Gültigkeitsbereiche wird festgelegt, in welchem Maß die in einer
Formel verwendeten Variablen auch von anderen Formeln genutzt werden
können. In Crystal Reports gibt es drei Gültigkeitsbereiche: lokal, global und
freigegeben. Jede Variable besitzt einen Gültigkeitsbereich, der beim
Deklarieren der Variablen festgelegt wird.
Lokale Variablen
Variablen mit lokalem Geltungsbereich, die auch lokale Variablen genannt
werden, werden mit dem Schlüsselwort Local deklariert, dem der Typenname
(mit dem Suffix Var) und dann der Name der Variablen folgt, wie bereits in den
obenstehenden Beispielen verdeutlicht.
Lokale Variablen sind auf eine einzige Formel und eine einzige Auswertung
dieser Formel beschränkt. Dies bedeutet, dass auf den Wert einer lokalen
Variablen in einer Formel nicht über eine andere Formel zugegriffen werden
kann.
Beispiel
//Formel A
Local NumberVar x;
x := 10;
//Formel B
EvaluateAfter ({@Formel A})
Local NumberVar x;
x := x + 1;
Durch den Funktionsaufruf EvaluateAfter ({@Formel A}) wird sichergestellt,
dass Formel B erst nach Auswertung von Formel A ausgewertet wird. Formel
A gibt den Wert 10 und Formel B den Wert 1 zurück. Von Formel B kann nicht
auf x von Formel A zugegriffen werden. Deshalb kann der Wert 10 nicht
verwendet und auch keine 1 hinzugefügt werden. Stattdessen wird der
Standardwert für die nicht initialisierte lokale Variable x in Formel B (ist gleich
0) verwendet und der Wert 1 hinzugefügt, um 1 zu erhalten.
Es ist auch zulässig, in verschiedenen Formeln lokale Variablen mit
demselben Namen und unterschiedlichen Typenzuordnungen zu erstellen.
Daher stehen beispielsweise die Typendeklarationen in den Formeln A und B
nicht im Konflikt mit folgender Typenzuordnung:
//Formel C
Local StringVar x := "hallo";
Lokale Variablen stellen den effizientesten der drei Gültigkeitsbereiche dar.
Sie führen auch nicht zu Konflikten mit den lokalen Variablen anderer
Formeln. Aus diesen Gründen empfiehlt es sich, Variablen grundsätzlich als
lokale Variablen zu deklarieren, sofern dies möglich ist.
116
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Variablen
Globale Variablen
Globale Variablen verwenden zum Speichern eines Wertes im gesamten
Hauptbericht denselben Speicherblock. Dadurch steht dieser Wert allen
Formeln zur Verfügung, in denen diese Variable deklariert wird, außer in den
Formeln, die in Unterberichten enthalten sind. Eine globale Variable wird wie
in folgendem Beispiel deklariert:
Global StringVar y;
Sie können das Schlüsselwort Global auch auslassen, da standardmäßig
eine globale Variable erstellt wird:
StringVar y; //Dasselbe wie: Global StringVar y;
Wenn globale Variablen auch einfach zu deklarieren sind, ist es dennoch
empfehlenswert, dass Sie sie nur dann deklarieren, wenn eine lokale Variable
nicht ausreicht.
Da die Werte globaler Variablen im gesamten Hauptbericht freigegeben sind,
ist es nicht möglich, in einer Formel eine globale Variable eines bestimmten
Typs und danach in einer anderen Formel eine gleichnamige globale Variable
eines anderen Typs zu deklarieren.
Beispiel
//Formel A
Global DateVar z;
z := CDate (1999, 9, 18)
//Formel B
NumberVar z;
z := 20
In diesem Fall gibt Crystal Reports beim Prüfen von Formel B oder beim
Versuch, Formel B zu speichern, eine Fehlermeldung aus, falls Sie Formel A
zuerst eingeben und speichern. Dies liegt daran, dass die Deklaration der
globalen Variablen "z" als Zahlentyp mit ihrer vorherigen Deklaration in
Formel A als Datumstyp in Konflikt steht.
Arbeiten mit globalen Variablen
Globale Variablen werden häufig für komplexe Berechnungen verwendet, bei
denen die Ergebnisse einer Formel von der Gruppierung und dem
Seitenlayout des ausgedruckten Berichts selbst abhängen. Dies wird erreicht,
indem mehrere Formeln erstellt und in verschiedenen Bereichen des Berichts
eingefügt und globale Variablen als Mittel eingesetzt werden, über das die
verschiedenen Formeln Werte miteinander austauschen können.
Beispiel
//Formel C
Global NumberVar x;
x := 10;
//Formel D
Crystal Report Explorer-Anwenderhandbuch 117
7
7
Referenz zur Crystal-Syntax
Variablen
//Aufruf der Funktion WhileReadingRecords
WhileReadingRecords;
Global NumberVar x;
x := x + 1
Wenn Formel C im Kopfbereich des Berichts und anschließend Formel D in
einem Detailbereich eingefügt wird, wird Formel C vor Formel D ausgewertet.
Formel C wird einmal ausgewertet, und danach wird Formel D für jeden im
Detailbereich erscheinenden Datensatz ausgewertet. Formel C gibt 10
zurück. Für den ersten Detaildatensatz gibt Formel D den Wert 11 zurück.
Dies liegt daran, dass der Wert 10 von x beibehalten wurde, so wie er von
Formel C festgelegt wurde. Durch Formel D wird zu diesem Wert der Wert 1
addiert. Dadurch ergibt sich für x der Wert 11, der auch zurückgegeben wird.
Für den zweiten Detaildatensatz gibt Formel D den Wert 12 zurück, wobei zu
dem ursprünglich beibehaltenen Wert von x (ist gleich 11) der Wert 1 addiert
wird. Dieser Prozess wird für die verbleibenden Detaildatensätze fortgesetzt.
Durch den Aufruf der Funktion WhileReadingRecords wird Crystal Reports
angewiesen, beim Einlesen der Datensätze des Berichts für jeden Datensatz
die Formel D neu auszuwerten. Andernfalls würde das Programm vor dem
Einlesen der Datensätze aus der Datenbank die Formel automatisch nur ein
einziges Mal auswerten, da in der Formel keine Datenbankfelder enthalten
sind. Danach würde die Formel jedes Mal den Wert 11 zurückgeben, anstatt
11, 12, 13 usw., wenn die nächsten Datensätze verarbeitet werden.
Wenn die Anweisung x := x + 1 durch x := x + {Bestelldetail.Menge} ersetzt
wird, entsteht der Effekt einer laufenden Summe, die auf
{Bestelldetail.Menge} beruht, jedoch aufgrund von Formel C nicht bei 0,
sondern bei 10 beginnt. In diesem Fall können Sie den Aufruf von
WhileReadingRecords übergehen. Er findet automatisch statt, da die Formel
ein Datenbankfeld enthält.
Freigegebene Variablen
Freigegebene Variablen verwenden denselben Speicherblock, um den Wert
einer Variablen im gesamten Hauptbericht und in allen zugehörigen
Unterberichten zu speichern. Dadurch sind freigegebene Variablen noch
allgemeingültiger als globale Variablen. Wenn eine freigegebene Variable
verwendet werden soll, muss sie wie im folgenden Beispiel in einer Formel im
Hauptbericht deklariert werden:
Shared NumberVar x := 1000;
Anschließend muss sie wie im nächsten Beispiel auch in einer Formel im
Unterbericht deklariert werden:
Shared NumberVar x;
118
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Variablen
Damit eine freigegebene Variable verwendet werden kann, muss die Variable
deklariert werden und einen Wert erhalten, bevor sie zwischen Hauptbericht
und Unterbericht übergeben werden kann.
Deklarieren von Array-Variablen
Sie können Array-Variablen deklarieren, indem Sie nach dem Typnamen das
Schlüsselwort Array eingeben.
Beispiel
//Deklarieren von x als globale Variable des
//Zahlen-Arraytyps
Global NumberVar Array x := [10 , 20, 30];
//Kosten ist eine globale Variable des Währungsarraytyps
//Sie ist automatisch global, da der Geltungsbereich
//(Lokal, Global oder Freigegeben) nicht festgelegt wurde.
CurrencyVar Array cost := [$19.95, $79.50, $110.00,
$44.79, $223.99];
//ZahlTage ist eine globale Variable des Datumsarraytyps
Global DateVar Array payDays := [CDate(1999, 5, 15),
CDate(1999, 5, 31)];
//y ist eine freigegebene Variable des ZeichenfolgebereichsArraytyps
Shared StringVar Range Array y := ["A" To "C",
"H" To "J"];
//Tage ist eine lokale Variable des Zeichenfolge-Arraytyps
Local StringVar Array Tage;
Tage := ["So", "Mo", "Di", "Mi", "Do",
"Fr", "Sa"];
Arbeiten mit Array-Variablen
Sie können den Elementen eines Arrays Werte zuweisen und die Werte der
Elemente auch für andere Berechnungen verwenden:
Beispiel
StringVar Array x := ["hallo", "und", "tschüs"];
x [2] := "once"; //Jetzt ist x ["hallo", "nicht", "tschüss"]
//Wenn sie kein Kommentar wäre, würde der untenstehende
//Ausdruck eine Fehlermeldung auslösen, da das Array die
Größe 3 hat
//x [4] := "zap";
//Die Formel gibt die Zeichenfolge "Hallo" zurück
UpperCase (x [1])
Mit Hilfe der Schlüsselwörter "Redim" und "Redim Preserve" kann die Größe
eines Arrays geändert werden, wenn zusätzliche Informationen hinzugefügt
werden sollen. Durch Redim wird zuerst der vorherige Inhalt des Arrays
gelöscht, bevor seine Größe geändert wird, während durch Redim Preserve
der vorherige Inhalt beibehalten wird.
Crystal Report Explorer-Anwenderhandbuch 119
7
7
Referenz zur Crystal-Syntax
Variablen
Local NumberVar Array x;
Redim x [2]; //x ist jetzt [0, 0]
x [2] := 20; //x ist jetzt [0, 20]
Redim x [3]; //x ist jetzt [0, 0, 0]
x [3] := 30; //x ist jetzt [0, 0, 30]
Redim Preserve x [4] //x ist jetzt [0, 0, 30, 0]
"fertig"
Local StringVar Array a;
Redim a [2];
//Zuweisen eines Wertes zum ersten Element von Array a
a[1] := "Auf"
a[2] := "Wiedersehen";
//Der Operator & kann zum Verketten von Zeichenfolgen
verwendet werden
a[1] & a[2] //Die Formel gibt die Zeichenfolge "Auf
Wiedersehen" zurück
Verwenden von Arrays mit For-Schleifen
Arrays werden häufig in For-Schleifen verwendet. Im folgenden Beispiel wird
das Array [10, 20, 30, ..., 100] erstellt und anschließend in einer For-Schleife
verwendet. Weitere Einzelheiten finden Sie unter „For-Schleifen“ auf
Seite 138.
Local NumberVar Array b;
Redim b[10];
Local NumberVar i;
For i := 1 To 10 Do
(
b[i] := 10 * i
);
b [2] //Die Formel gibt die Zahl 20 zurück
Standardwerte für die einfachen Typen
Eine nicht initialisierte Variable erhält den für ihren Typ vorgesehenen
Standardwert. Grundsätzlich gilt es als schlechter Programmierstil, sich auf
die Zuweisung von Standardwerten für den jeweiligen Datentyp zu verlassen.
Beispielsweise sollten Sie in Ihren Formeln alle lokalen Variablen
initialisieren, in Formeln, die sich im Kopfbereich des Berichts befinden, alle
globalen Variablen initialisieren, und in Formeln, die sich im Kopfbereich des
Hauptberichts befinden, alle freigegebenen Variablen initialisieren.
Wenn mit Hilfe des Schlüsselworts Redim die Größe eines Arrays geändert
wird, werden die Elemente des Arrays mit Standardwerten für den jeweiligen
Typ gefüllt. Ein Wissen über Standardwerte ist bei der Verwendung von Ifund Select-Ausdrücken überaus nützlich.
120
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Variablen
Standardwerte
Zahl
0
Währung
$0
Zeichenfolge
"" //Leere Zeichenfolge
Datum
Date (0, 0, 0) //Date-Nullwert
Zeit
Der Null-Uhrzeitwert. Wert einer nicht initialisierten Uhrzeitvariablen.
DateTime
Der Null-DateTime-Wert. Wert einer nicht initialisierten DateTime-Variablen.
Hinweis: Es ist davon abzuraten, sich beim Erstellen von Formeln auf die
automatische Zuweisung von Standardwerten zu nicht initialisierten Bereichsoder Array-Variablen zu verlassen.
Automatische Typkonvertierung
Grundsätzlich ist es in Crystal Reports nicht möglich, ohne expliziten
Gebrauch einer Typkonvertierungsfunktion Werte eines bestimmten Typs zu
verwenden, wenn Werte eines anderen Typs erwartet werden. Hier ein
Beispiel:
Local StringVar PostleitZahl;
//Fehler - Zuweisung eines Zahlenwertes zu einer
Zeichenfolgevariablen
postalCode := 10025;
//OK - Verwenden der Typkonvertierungsfunktion CStr,
//um "10025" zu erstellen
postalCode := CStr (10025, 0);
Es gibt jedoch einige Konvertierungen, die automatisch durchgeführt werden:
•
•
•
Zahl zu Währung
Datum zu DatumUhrzeit
Konvertierung eines einfachen Typs in einen Bereichswert desselben
einfachen Typs
Crystal Report Explorer-Anwenderhandbuch 121
7
7
Referenz zur Crystal-Syntax
Funktionen
Die folgenden Beispielanweisungen sind korrekt:
Local CurrencyVar Kosten;
//Identisch mit: cost := $10
cost := 10;
Local DateTimeVar Auftragsdatum;
//Identisch mit: orderDate := CDateTime (1999, 9, 23, 0, 0,
0)
orderDate := CDate (1999, 9, 23);
Local NumberVar Range einBereich;
//Identisch mit: aRange := 20 To 20
aRange := 20;
Local NumberVar Range Array einBereichsArray;
//Identisch mit: aRangeArray := [10 To 10, 20 To 25, 2 To 2]
aRangeArray := [10, 20 To 25, 2];
Hinweis: In umgekehrter Richtung ist diese Konvertierung jedoch nicht
möglich. Hier ein Beispiel:
Local NumberVar num;
num := 5 + $10; //Fehler
//OK - Konvertierung zum Zahlentyp durch die CDbl-Funktion
num := CDbl (5 + $10) //ToNumber könnte ebenfalls verwendet
werden
5 wird in 5 $ konvertiert und zu 10 $ addiert, was 15 $ ergibt. Dieser
Währungswert kann jedoch nicht automatisch der Zahlenvariablen Zahl
zugewiesen werden, da automatische Konvertierungen von Währung zu Zahl
nicht zulässig sind. In ähnlicher Weise ist es möglich, einer Funktion, die ein
Währungsargument erwartet, stattdessen ein Zahlenargument zu übergeben,
da dieses Zahlenargument dabei automatisch in einen Währungswert
umgewandelt wird. Umgekehrt ist es jedoch nicht möglich, einer Funktion, die
ein Zahlenargument erwartet, ein Währungsargument zu übergeben, ohne
dieses zuerst mit Hilfe der Funktion CDbl explizit zu einem Zahlenwert zu
konvertieren.
Funktionen
Wenn Sie in einer Formel eine Funktion verwenden, geben Sie den Namen
der Funktion ein und übergeben die erforderlichen Argumente. Die Funktion
Length beispielsweise benötigt ein Zeichenfolgenargument und berechnet
anschließend die Länge der übergebenen Zeichenfolge.
Local StringVar x := "hallo";
Length (x) //Die Formel gibt die Zahl 5 zurück
Wenn einer Funktion Argumente des falschen Typs übergeben werden, wird
eine Fehlermeldung ausgegeben. Der Funktionsaufruf Length (3) führt
beispielsweise zu einer Fehlermeldung, da Length keine Zahlenargumente
akzeptiert. Einige Funktionen können mehrere Argumente oder Argumente
unterschiedlichen Typs akzeptieren. So akzeptiert beispielsweise die
122
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Funktionen
Funktion CDate zum Erstellen eines Date-Wertes ein einzelnes
Zeichenfolgeelement oder auch drei Zahlenwerte mit der Jahres-, Monatsund Tagesangabe und kann diese Zahlenwerte in einen Date-Wert
umwandeln. Siehe „Datum, Uhrzeit und DatumUhrzeit“ auf Seite 110.
Beispiel mit der Funktion Mid
Local StringVar x := "hallo";
Local StringVar y;
//Beginnen Sie beim zweiten Zeichen, und gehen Sie zum Ende
der Zeichenfolge
y := Mid (x, 2); //y enthält jetzt "allo"
//Beginnen Sie beim zweiten Zeichen, und extrahieren Sie ein
Zeichen
y := Mid (x, 2, 1); //y enthält jetzt "a"
Die Funktionsklassen sind in folgende Gruppen eingeteilt: Mathematik,
Gruppenergebnisse, Finanzen, Zeichenfolgen, Datum/Uhrzeit,
Datumsbereiche, Arrays, Typkonvertierung, Programmierbefehle,
Auswertungszeitpunkte, Druckstatus, Dokumenteigenschaften und
Zusätzliche Funktionen. Es gibt auch einige Funktionen für Formeln für
bedingte Formatierung.
Nicht für die Berichterstellung spezifische Funktionen
Die Gruppen Mathematik, Finanzen, Zeichenfolge, Datum/Uhrzeit,
Typkonvertierung und Programmierbefehle bestehen hauptsächlich aus
Funktionen, die nicht für die Berichterstellung spezifisch sind, sondern in
jeder voll funktionsfähigen Programmierumgebung gefunden werden können.
Die Funktionalität vieler dieser Funktionen ähnelt der gleichnamiger
Funktionen oder Funktionen mit ähnlichen Namen in Visual Basic.
Hinweis: Einige der Funktionen, die in der Crystal-Syntax verwendet werden
können, sind in der Struktur Funktionen der Crystal-Syntax nicht aufgeführt.
In diesem Fall handelt es sich um Entsprechungen anderer Crystal-SyntaxFunktionen, die in der Struktur bereits enthalten sind.
Die Funktion Length ist beispielsweise die tradionelle Crystal-Syntaxfunktion
zum Errechnen der Länge einer Zeichenfolge. Crystal-Syntax bietet aber
auch Unterstützung für das Synonym Len. Len ist die Funktion der Visual
Basic- und Basic-Syntax für diese Operation. Sie wurde aufgenommen, um
Anwendern der Visual Basic- und Basic-Syntax das Schreiben oder Ändern
von Formeln in der Crystal-Syntax zu erleichtern.
Crystal Report Explorer-Anwenderhandbuch 123
7
7
Referenz zur Crystal-Syntax
Funktionen
Gruppenergebnisfunktionen
In der Funktionenkategorie Gruppenergebnisse sind Funktionen zum
Erstellen von Gruppenergebnisfeldern, z. B. folgende Funktionen enthalten:
Sum({Aufträge.Auftragssumme}, {Aufträge.Versand durch})
Gruppenergebnisfelder werden normalerweise mit Hilfe der Dialogfelder
Gruppenergebnis einfügen oder Gesamtergebnis einfügen erstellt. Sobald sie
erstellt sind, werden sie in der Struktur Verfügbare Felder angezeigt und
können in einer Formel verwendet werden, indem Sie in dieser Struktur auf
sie doppelklicken. Sie können aber auch auf andere Weise erstellt werden.
Sie können ein Gruppenergebnisfeld, das ausschließlich für Ihre Formel
verwendet werden soll, auch erstellen, indem Sie die gewünschten
Argumente einer geeigneten Gruppenergebnisfunktion übergeben. Allerdings
müssen dabei alle Gruppen, auf die im Gruppenergebnisfeld verwiesen wird,
bereits im Bericht enthalten sein.
Datumsbereiche
Diese Funktionskategorie wird im Abschnitt „Bereichs-Datentypen“ auf
Seite 111 behandelt. Zu den in diesem Abschnitt beschriebenen Funktionen
muss gesagt werden, dass die durch diese Funktionen generierten
Datumsbereiche vom aktuellen Datum abhängig sind. Daher erhalten Sie,
angenommen, das heutige Datum wäre der 18. September 1999, durch die
Funktion LastFullMonth folgenden Datumsbereichswert:
CDate(#Aug 1, 1999#) To CDate(#Aug 31, 1999#)
Diese Funktionsweise ist oft vorteilhaft, aber was machen Sie, wenn Sie
einen Datumsbereich anhand eines Datenbankfeldes wie
{Aufträge.Auftragsdatum} ermitteln möchten? In diesem Fall können Sie
stattdessen die Datum/Uhrzeit-Funktionen verwenden.
Hier ein Beispiel:
Local DateVar d := CDate ({Aufträge.Auftragsdatum});
Local DateVar Range db;
dr := DateSerial (Year(d), Month(d) - 1, 1) To
DateSerial (Year(d), Month(d), 1 - 1);
//An diesem Punkt enthält db den Datumsbereichswert für
//den letzten vollen Monat vor {Aufträge.Auftragsdatum}
Dies ist mit der Funktion DateSerial einfach zu erreichen, da Sie sich dabei
nicht um Sonderfälle zu kümmern brauchen. Mit dieser Funktion ist es
grundsätzlich nicht möglich, ein ungültiges Datum zu erstellen.
Beispielsweise ergibt DateSerial (1999, 1 - 1, 1) das Datum 1. Dezember
1998.
Hinweis: Beachten Sie, dass in dem obenstehenden Beispiel
{Aufträge.Auftragsdatum} in Wirklichkeit ein DateTime-Feld ist und daher die
Funktion CDate verwendet wird, um den Feldwert durch Abschneiden des
Uhrzeitbestandteils in ein Datum umzuwandeln.
124
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Funktionen
Array-Funktionen
Mit Array-Funktionen werden Gruppenergebnisse der Elemente eines Arrays
berechnet. So gibt beispielsweise die Funktion Sum, die auf ein Array
angewendet wird, die Summe der Elemente dieses Arrays zurück. Die
folgende Formel gibt beispielsweise 100 zurück:
Sum ([10, 20, 30, 40])
Auswertungszeitpunktfunktionen
Zu diesen Funktionen gehören die berichtsspezifischen Funktionen
BeforeReadingRecords, WhileReadingRecords, WhilePrintingRecords und
EvaluateAfter. Mit diesen Funktionen können Sie in Crystal Reports festlegen,
zu welchem Zeitpunkt Ihre Formel ausgewertet werden soll.
Soll die Formel vor dem Einlesen der Datensätze aus der Datenbank
ausgewertet werden oder beim Einlesen der Datensätze, aber noch vor dem
Gruppieren, Sortieren und Zusammenfassen, oder soll sie erst beim Drucken
des Berichts ausgewertet werden, wenn die Datensätze bereits gruppiert,
sortiert und zusammengefasst sind? Generell wird auf Grundlage der
Informationen, die in Ihrer Formel benötigt werden, von Crystal Reports
automatisch ein geeigneter Auswertungszeitpunkt für die Formel festgelegt.
Wenn eine Formel beispielsweise ein Datenbankfeld verwendet, kann die
Formel erst nach dem Einlesen der Datensätze aus der Datenbank sinnvoll
ausgewertet werden. Manchmal ist es jedoch erforderlich, eine Auswertung
zu einem späteren Zeitpunkt als dem automatisch zugeteilten Zeitpunkt zu
erzwingen, um die gewünschten Ergebnisse zu erhalten. Ein Beispiel dazu
finden Sie unter „Globale Variablen“ auf Seite 117.
Druckstatusfunktionen
Diese Funktionen sind ebenfalls spezifisch für die Berichterstellung.
Beispielsweise verweist die Angabe {Aufträge.Auftragsdatum} auf den Wert
des Feldes im aktuellen Datensatz, während PreviousValue
({Aufträge.Auftragsdatum}) auf den Wert dieses Feldes im unmittelbar
vorhergehenden Datensatz und NextValue ({Aufträge.Auftragsdatum}) auf
den Feldwert im nächsten Datensatz verweist. Durch IsNull
({Aufträge.Auftragsdatum}) wird geprüft, ob das Feld einen Nullwert enthält.
Weitere Beispiele sind die Funktionen Seitenzahl und GesamtSeitenZahl, mit
denen Sie auf Seitenzahlenangaben Ihres Berichts zugreifen können.
Crystal Report Explorer-Anwenderhandbuch 125
7
7
Referenz zur Crystal-Syntax
Funktionen
Funktionen für Dokumenteigenschaften
Dies sind berichtsspezifische Funktionen, die das Berichtsdokument als
Ganzes betreffen. Beispiele für solche Funktionen sind PrintDate und
ReportTitle.
Zusätzliche Funktionen
Diese Funktionen befinden sich in UFLs (User Function Libraries). Eine UFL
ist eine separate Dynamic Link Library oder ein Automations-Server, die bzw.
den Sie selbst erstellen und die bzw. der von Crystal Reports dazu verwendet
werden kann, Ihre selbsterstellten Funktionen zur Formelsprache
hinzuzufügen. Zum Schreiben einer UFL sind weit mehr Kenntnisse
erforderlich als zum Schreiben einer Formel in Basic- oder Crystal-Syntax.
Ausführliche Informationen dazu finden Sie in der Hilfe von Crystal Reports
für Entwickler.
Hinweis: Wenn Sie UFLs verwenden, können Ihre Berichte nicht mehr so
einfach wie bisher übertragen werden, da dann zusammen mit einem Bericht
auch UFLs übertragen werden müssen.
Funktionen für die bedingte Formatierung
Wenn Sie eine Formel für bedingte Formatierung schreiben, werden oben in
der Struktur Funktionen bestimmte zusätzliche Funktionen angezeigt, die
Ihnen diese Aufgabe erleichtern sollen. Sie möchten das Feld
{Kunde.Vorjahresumsatz} beispielsweise so formatieren, dass alle Umsätze
über 100.000 € grün, alle Umsätze unter 15.000 € rot und alle übrigen
Umsätze schwarz ausgedruckt werden.
Beispiel
// Erstes Beispiel für bedingte Formatierung
If {Kunde.Vorjahresumsatz} > 100000 Then
crGreen
ElseIf {Kunde.Vorjahresumsatz} < 15000 Then
crRed
Else
crBlack
Da dies eine Funktion zum Formatieren der Schriftfarbe ist, wird in der
Struktur Funktionen die Liste der Farbkonstanten angezeigt. In diesem
Beispiel werden drei dieser Farbkonstanten verwendet: crGreen, crRed und
crBlack. Sie könnten stattdessen auch die eigentlichen numerischen Werte
der Farbkonstanten verwenden. Beispiel: crRed entspricht 255, und crGreen
entspricht 32768.
126
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Funktionen
Die Formel ist jedoch leichter zu verstehen, wenn Sie die Farbkonstanten
verwenden. In der Crystal-Syntax haben alle Konstantenfunktionen das Präfix
„cr“.
Die Crystal-Syntax bietet aber noch immer Unterstützung für
Konstantenfunktionen aus früheren Versionen ohne das Präfix „cr“. Statt
„crRed“ können Sie also beispielsweise „Red“ verwenden. Durch die
Verwendung des Präfixes „cr“ werden die Konstantenfunktionen jedoch
organisiert, so dass die Verwendung empfehlenswert ist.
Hinweis: Einige Formatierungsattribute verwenden keine
Konstantenfunktionen. Wenn beispielsweise die Umsatzwerte des Feldes
{Kunde.Vorjahresumsatz}, die unter 50.000 € liegen, nicht ausgedruckt
werden sollen, könnten Sie für das Unterdrückungsattribut folgende Formel
für bedingte Formatierung verwenden:
//Zweites Beispiel für bedingte Formatierung
If {Kunde.Vorjahresumsatz} < 50000 Then
TRUE //Unterdrücken des Wertes
Else
FALSE //Keine Unterdrückung des Wertes
Oder einfacher:
//Drittes Beispiel für bedingte Formatierung //entspricht dem zweiten Beispiel
{Kunde.Vorjahresumsatz} < 50000
Wenn der Vorjahresumsatz kleiner als 50.000 € ist, dann lautet der Ausdruck
{Kunde.Vorjahresumsatz} < 50000
TRUE und gibt daher die Formel TRUE zurück. Wenn der Vorjahresumsatz
jedoch größer als oder gleich 50.000 € ist, dann lautet der Ausdruck
{Kunde.Vorjahresumsatz} < 50000
FALSE und gibt daher die Formel FALSE zurück.
Vielseitig verwendbare bedingte
Formatierungsfunktionen
Es gibt drei vielseitig verwendbare konditionale Formatierungsfunktionen:
• CurrentFieldValue
• DefaultAttribute
• GridRowColumnValue
Diese Funktionen werden im oberen Bereich des Baums Funktionen
angezeigt, sobald sie sinnvoll verwendet werden könnten. DefaultAttribute
kann in jeder Formatierungsformel verwendet werden, CurrentFieldValue
eignet sich für jede Formatierungsformel, in der ein Feldwert formatiert wird,
und GridRowColumnValue kann in jeder Formatierungsformel verwendet
werden, in der ein Feldwert in einer Kreuztabelle oder einem OLAP-Raster
formatiert wird.
Crystal Report Explorer-Anwenderhandbuch 127
7
7
Referenz zur Crystal-Syntax
Operatoren
Mit CurrentFieldValue ist es möglich, die Zellen einer Kreuztabelle oder eines
OLAP-Rasters auf Grundlage ihres Wertes konditional zu formatieren,
während Sie mit GridRowColumnValue die Zellen einer Kreuztabelle oder
eines OLAP-Rasters auf Grundlage ihrer Diese beiden Funktionen sind in
diesem Zusammenhang sehr wichtig, da es in der Formelsprache keine
andere Möglichkeit gibt, auf die Werte dieser Felder zu verweisen. Wenn
Kreuztabellenzellen mit Werten unter 50.000 unterdrückt werden sollen,
können Sie wie in folgendem Beispiel vorgehen:
//Viertes Beispiel für bedingte Formatierung
CurrentFieldValue < 50000
Operatoren
Arithmetische Operatoren
Die arithmetischen Operatoren sind Addition (+), Subtraktion (-),
Multiplikation (*), Division (/), Ganzzahlendivision (\), Prozent (%), Modulus
(Mod), Negation (-) und Potenzierung (^). Arithmetische Operatoren werden
dazu verwendet, Zahlen, numerische Variablen, numerische Felder und
numerische Funktionen zu kombinieren, um als Ergebnis eine weitere Zahl zu
erhalten.
Beispiele
//Ausstehende Vorzugswaren als prozentualer Anteil
//am Gesamtwarenbestand
{Finanzen.Vorzugswaren} %
{Finanzen.Warenbestand};
//Die Quadratwurzel von 9, Sqr(9) ist 3.
//Die Formel gibt 17 zurück
7 + 2 * 3 - 2 + Sqr(6 + 3) * Length("up");
Verarbeitungsreihenfolge
Wenn Sie arithmetische Ausdrücke erstellen, in denen mehrere verschiedene
Operatoren enthalten sind, spielt die Reihenfolge, in der die verschiedenen
Elemente des Ausdrucks ausgewertet werden, eine wichtige Rolle. In der
Regel wertet das Programm Ausdrücke von links nach rechts aus. Es befolgt
jedoch auch die Präzedenzregeln der einfachen Mathematik.
128
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Operatoren
Beispiel
Multiplikationen und Divisionen werden zuerst, und zwar von links nach
rechts, abgearbeitet; danach folgen Additionen und Subtraktionen.
Beispiel: 5 + 10 * 3 = 5 + 30 = 35. Sie können diese Verarbeitungsreihenfolge
durch Klammern ändern. Beispiel: (5 + 10) * 3 = 15 * 3 = 45. Falls Unklarheit
über die Verarbeitungsreihenfolge besteht, sollten Sie die
zusammengehörigen Elemente durch Klammern kennzeichnen.
Liste der arithmetischen Operatoren, von höchster bis zu niedrigster
Präzedenz
•
•
•
•
•
•
Potenzierung (^)
Negation (-)
Multiplikation, Division und Prozent (*, /, %)
Ganzzahlendivision (\)
Modulus (Mod)
Addition und Subtraktion (+, -)
Vergleichsoperatoren
Die Vergleichsoperatoren sind: Gleich (=), Ungleich (<>), Kleiner als (<),
Kleiner als oder gleich (<=), Größer als (>) sowie Größer als oder gleich (>=).
Vergleichsoperatoren werden in der Regel dazu verwendet, in einer
Programmstruktur wie beispielsweise einer If-Anweisung Operanden mit
einer Bedingung zu vergleichen. Vergleichsoperatoren haben als Gruppe
eine niedrigere Priorität als arithmetische Operatoren. Daher sind Ausdrücke
wie 2 + 3 < 2 * 9 identisch mit der Schreibweise (2 + 3) < (2*9).
Boolesche Operatoren
Für die booleschen Operatoren gilt, angefangen bei der höchsten Priorität,
folgende Verarbeitungsreihenfolge: Not, And, Or, Xor, Eqv und Imp.
Boolesche Operatoren werden in der Regel dazu verwendet, in Verbindung
mit Vergleichsoperatoren Bedingungen für Steuerelementstrukturen zu
erstellen. Boolesche Operatoren haben eine niedrigere Priorität als
Vergleichsoperatoren. Daher ist der Ausdruck 2 < 3 And 4 >= -1
beispielsweise identisch mit (2 < 3) And (4 >= -1).
Crystal Report Explorer-Anwenderhandbuch 129
7
7
Referenz zur Crystal-Syntax
Operatoren
NULL-Felder und Verwendungsweise von IsNull
Grundsätzlich wird in Crystal Reports die Auswertung einer Formel sofort
abgebrochen und kein Wert zurückgegeben, wenn das Programm beim
Auswerten einer Formel auf ein Feld mit einem Nullwert stößt. Wenn Sie in
Ihrer Formel mit Nullwert-Feldern arbeiten möchten, müssen Sie dazu eine
der folgenden Spezialfunktionen verwenden, die für den Umgang mit
Nullwerten vorgesehen sind: IsNull, PreviousIsNull oder NextIsNull.
Beispiel
Das Feld {Produkt.Farbe} enthält sowohl Namen von Grundfarben wie „Rot“
und „Schwarz“ als auch ausgefallene Farbbezeichnungen wie „Stahlgrau“
und „Juwelengrün“. Angenommen, Sie möchten eine Formel schreiben, in
der für Grundfarben die Bezeichnung „Grundfarbe“ und für alle anderen
Farben die Bezeichnung „Farbton“ ausgegeben wird.
If InStr({Produkt.Farbe}, " ") = 0 Then
formula = "Grundfarbe"
Else
formula = "Farbton"
Mit dem Funktionsaufruf InStr wird in der Zeichenfolge {Produkt.Farbe} nach
einem Leerzeichen gesucht. Falls ein Leerzeichen gefunden wird, gibt dieser
Aufruf die Position des Leerzeichens zurück, andernfalls gibt er 0 zurück. Da
die Grundfarben Wörter ohne Leerzeichen darstellen, gibt InStr den Wert 0
zurück.
Bei einigen Produkten wie beispielsweise dem Guardian Kettenschloß wurde
keine Farbangabe in den Datensatz aufgenommen, weshalb in solchen
Fällen im Feld {Produkt.Farbe} dieses Datensatzes in der Datenbank ein
Nullwert enthalten ist. Daher wird neben dem Datensatz mit dem
Kettenschloß keine Farbkategorie ausgedruckt.
Im folgenden Beispiel wird gezeigt, wie Sie das obenstehende Beispiel durch
Verwendung von IsNull korrigieren können:
If IsNull({Produkt.Farbe}) Or
InStr({Produkt.Farbe}, " ") = 0 Then
"Grundfarbe"
Else
"Farbton"
In Bezug auf die Operatoren geschieht bei der Auswertung der Bedingung in
Crystal Reports Folgendes:
IsNull({Produkt.Farbe}) Or
InStr({Produkt.Farbe}, " ") = 0
Zuerst wird IsNull ({Produkt.Farbe)) ausgewertet; wenn das Programm
feststellt, dass diese Teilbedingung TRUE ist, weiß es, dass die gesamte
Bedingung TRUE ist, und muss daher nicht mehr prüfen, ob die nächste
Teilbedingung TRUE ist.
130
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Steuerelementstrukturen
InStr({Produkt.Farbe}, " ") = 0
Mit anderen Worten, die Auswertung eines booleschen Ausdrucks von
Crystal Reports wird abgebrochen, sobald das Programm die Ergebnisse des
gesamten Ausdrucks ableiten kann. Im folgenden Beispiel wird die Formel
davon abgehalten, eine Teilung durch Null durchzuführen, falls der Nenner zu
0 wird:
Local NumberVar num;
Local NumberVar denom;
...
If denom <> 0 And num / denom > 5 Then
...
Hinweis: In Visual Basic wird dieses Verfahren nicht unterstützt, da dort alle
Teile eines booleschen Ausdrucks ausgewertet werden, auch diejenigen, die
nicht ausgewertet werden müssten.
Steuerelementstrukturen
Bei Formeln ohne Steuerelementstrukturen wird beim Auswerten der Formel
jede Anweisung genau einmal abgearbeitet. Die Anweisungen werden von
der ersten Anweisung der Formel bis zur letzten in sequentieller Reihenfolge
abgearbeitet. Mit Hilfe von Steuerelementstrukturen können Sie diese
feststehende Abfolge ändern. Je nachdem, welche Steuerelementstruktur Sie
wählen, können Sie abhängig davon, ob bestimmte Bedingungen erfüllt
werden, eine Folge von Anweisungen überspringen oder mehrmals
auswerten lassen. Steuerelementstrukturen sind das wichtigste Hilfsmittel,
um betriebswirtschaftliche Abläufe auszudrücken, und werden in
Standardberichtsformeln häufig dafür eingesetzt.
If-Ausdrücke
Die If-Anweisung ist eine der leistungsfähigsten Steuerelementstrukturen. Mit
ihr können Sie einen Ausdruck auswerten, wenn eine Bedingung TRUE ist,
und andernfalls einen anderen Ausdruck auswerten.
Hinweis:
•
Die richtige Crystal-Syntax für If-Anweisungen lautet if <condition>
then <then> else <else>, wobei <condition>, <then> und <else>
als einziger Ausdruck angesehen werden. Wenn auf <then> oder
<else> mehrere Ausdrücke folgen, konvertieren Sie sie in einen
einzigen Ausdruck, indem Sie sie in Klammern einschließen. Hier ein
Beispiel:
Global stringVar lastValue;
if {Branch_View.Branch_ID} = lastValue
Crystal Report Explorer-Anwenderhandbuch 131
7
7
Referenz zur Crystal-Syntax
Steuerelementstrukturen
then
(lastValue := {Branch_View.Branch_ID};
crRed;)
Else
(lastValue := {Branch_View.Branch_ID};
crBlack;)
•
Beim Formatieren mit Bedingungsformeln sollte stets das Schlüsselwort
"Else" verwendet werden, da Werte, die die If-Bedingung nicht erfüllen,
andernfalls möglicherweise nicht ihr ursprüngliches Format behalten.
Dies können Sie verhindern, indem Sie die Funktion DefaultAttribute
verwenden (If...Else DefaultAttribute).
•
Beim Erstellen von Datensatzauswahlformeln, die If-Ausdrücke
enthalten, sollte stets das Schlüsselwort "Else" verwendet werden, da
andernfalls möglicherweise unerwartete oder überhaupt keine
Datensätze zurückgegeben werden. Eine Datensatzauswahl wie If
{Parameterfeld} = "kleiner als 100" then {Feld} < 100"
ergibt False und gibt keine Datensätze zurück. Um dieses Problem zu
beheben, vervollständigen Sie die Formel mit Else True.
Beispiel
Eine Firma will allen Angestellten einen Bonus von 4 Prozent zuerkennen,
nur die Angestellten der Verkaufsabteilung sollen einen Bonus von 6 Prozent
erhalten. Diese Aufgabe können Sie durch folgende Formel lösen, in der eine
If-Anweisung verwendet wird:
//Erstes Beispiel für eine If-Anweisung
If {Angestellter.Abteilung} = "Vertrieb" Then
{Angestellter.Gehalt} * 0.06
Else
{Angestellter.Gehalt} * 0.04
In diesem Beispiel wird nur dann, wenn die Bedingung
{Angestellter.Abteilung} = "Vertrieb" TRUE ist, die Anweisung
{Angestellter.Gehalt} * 0.06
verarbeitet. Andernfalls wird die Anweisung nach dem Schlüsselwort Else,
nämlich
{Angestellter.Gehalt} * 0.04
verarbeitet.
Angenommen, ein anderes Unternehmen möchte Mitarbeitern einen Bonus
von 4 % zuerkennen, der aber mindestens 1.000 € betragen soll. Die
Vorgehensweise wird im folgenden Beispiel erläutert. Das folgende Beispiel
zeigt, wie diese Aufgabe gelöst werden kann. Beachten Sie, dass in diesem
Beispiel keine Else-Klausel enthalten ist, da sie keine Pflichtklausel ist und
hier auch nicht benötigt wird.
//Zweites Beispiel für eine If-Anweisung
Local CurrencyVar bonus := {Angestellter.Gehalt} * 0.04;
132
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Steuerelementstrukturen
If bonus < 1000 Then
bonus := 1000;
//Der letzte Ausdruck besteht einfach aus der Variablen
'bonus'.
//Dadurch wird der Wert der Variablen zurückgegeben, der
//das Ergebnis der Formel ist
bonus
Das zweite Beispiel kann aber auch mit einer Else-Klausel gestaltet werden:
//Drittes Beispiel für eine If-Anweisung
Local CurrencyVar bonus := {Angestellter.Gehalt} * 0.04;
If bonus < 1000 Then
1000
Else
bonus
Angenommen, das Unternehmen aus dem vorherigen Beispiel möchte den
Bonus auf 5.000 € begrenzen. In diesem Fall muss eine Else If-Klausel
verwendet werden. Im folgenden Beispiel ist nur eine einzige ElseIf-Klausel
enthalten, Sie können jedoch so viele wie nötig verwenden. Beachten Sie
dabei aber, dass pro If-Ausdruck nur ein Else stehen kann. Die Else-Klausel
wird nur dann abgearbeitet, wenn keine der If- oder ElseIf-Bedingungen erfüllt
wird.
//Viertes Beispiel für eine If-Anweisung
Local CurrencyVar bonus := {Angestellter.Gehalt} * 0.04;
If bonus < 1000 Then
1000
Else If bonus > 5000 Then
5000
Else
bonus
If-Beispiel
Eine Firma möchte den Steuerbetrag schätzen, den ein Angestellter leisten
muss, und eine entsprechende Mitteilung schreiben. Einkommen unter
8.000 € werden nicht besteuert, Einkommen von 8.000 bis 20.000 € werden
mit 20 % besteuert, Einkommen von 20.000 bis 35.000 € werden mit 29 %
besteuert, und Einkommen über 35.000 € werden mit 40 % besteuert.
//Fünftes Beispiel für eine If-Anweisung
Local CurrencyVar tax := 0;
Local CurrencyVar Einkommen := {Angestellter.Gehalt};
Local StringVar Nachricht := "";
If Einkommen < 8000 Then
(
Nachricht:= "zu keiner";
tax := 0
)
Else If Einkommen >= 8000 And Einkommen < 20000 Then
(
Mitteilung := "zur niedrigsten";
tax := (income - 8000)*0.20
Crystal Report Explorer-Anwenderhandbuch 133
7
7
Referenz zur Crystal-Syntax
Steuerelementstrukturen
)
Else If Einkommen >= 20 000 And Einkommen < 35 000 Then
(
Mitteilung := "zur mittleren";
tax := (20000 - 8000)*0.20 + (income - 20000)*0.29
)
Else
(
Mitteilung := "zur höchsten";
tax := (20000 - 8000)*0.20 + (35000 - 20000)*0.29 +
(income - 35000)*0.40
);
//Verwenden Sie zwei Dezimalstellen und einen Punkt als
//Tausendertrennzeichen
Local StringVar taxStr := CStr (tax, 2, ".");
"Sie gehören " & Mitteilung & " Einkommensklasse. " &
"Ihr Steuerbetrag wird auf " & taxStr & " geschätzt."
Hinweis: Beachten Sie, wie die Verarbeitungslogik durch den Einsatz von
Variablen vereinfacht wird. Achten Sie auch darauf, dass hier zwei Ausdrücke
ausgeführt werden, falls eine der Bedingungen erfüllt wird. Durch einen
Ausdruck wird die Variable tax und durch den zweiten die Variable message
zugewiesen. Es ist häufig sinnvoll, bei Erfüllung einer Bedingung mehrere
Anweisungen ausführen zu lassen.
Weitere Einzelheiten über If-Ausdrücke
Der If-Ausdruck ist ein Ausdruck. Das heißt, er liefert als Ergebnis einen Wert
eines gegebenen Typs. Wenn es keinen Else-Satz gibt und die Bedingung
nicht wahr ist, wird der Standardwert des gegebenen Typs zurückgegeben.
Hier ein Beispiel:
If Length ({Mitarbeiter.Vorname}) < 5 Then
kurz
Dieser If-Ausdruck gibt einen Zeichenfolgewert zurück. Dieser
Zeichenfolgewert ist „kurz“, wenn der Vorname des Mitarbeiters weniger als 5
Buchstaben hat. Andernfalls wird eine leere Zeichenfolge „“ zurückgegeben.
Hier noch ein anderes Beispiel für eine Formel:
If Jahr({Aufträge.Auftragsdatum}) >= 1995 Then
{Aufträge.Auftragsdatum}
Bei Auftragsdaten vor dem Jahr 1995 gibt dieser If-Ausdruck den DateTimeNullwert zurück. Hier handelt es sich um einen DateTime-Wert und nicht um
einen Date-Wert, da {Aufträge.Auftragsdatum} ein DateTime-Datenbankfeld
ist. Der DateTime-Nullwert wird von Crystal Reports nicht ausgegeben. Falls
die vorangehende Formel daher in einen Bericht eingefügt wird, bleibt das
Formelfeld für Bestelldaten vor 1995 leer. Time- und Date-Nullwerte weisen
ein ähnliches Verhalten auf.
134
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Steuerelementstrukturen
Uhrzeit-Nullwerte und Datum-Nullwerte verhalten sich ähnlich. Hier ist ein
Beispiel, das die Verwendung von Klammern verdeutlicht, damit mehr als ein
Ausdruck als Ergebnis einer If-Bedingung ausgeführt wird. Ein Unternehmen
erhebt eine Gebühr von 5 Prozent, wenn Bestellungen innerhalb von drei
Tagen versandt werden, andernfalls eine Gebühr von 2 Prozent. Es sollen
nach Bedarf Mitteilungen wie beispielsweise „Eilversand kostet 100,00 €“
oder „Regulärer Versand kostet 20,00 €“ gedruckt werden.
Local StringVar Mitteilung;
Local CurrencyVar Versand;
If {Aufträge.Versanddatum} - {Aufträge.Auftragsdatum} <= 3
Then
(
Mitteilung:= "Eilversand";
//Ein Semikolon am Ende der nächsten Zeile
//ist optional
ship := {Aufträge.Auftragssumme} * 0.05
) //Hier darf kein Semikolon gesetzt werden
Else
(
Mitteilung:= "Normaler Versand";
ship := {Aufträge.Auftragssumme} * 0.02;
);
//Das vorangestellte Semikolon ist erforderlich, um den
//If-Ausdruck von dem letzten Ausdruck unten zu trennen
Mitteilung & " kostet " & CStr (Versand)
Wenn Ausdrücke mit Klammern zusammen gruppiert werden, wird die
gesamte Gruppe als ein einziger Ausdruck angesehen. Seinen Wert und Typ
erhält er vom Wert und Typ des letzten Ausdrucks in den Klammern.
//Die Gruppe in Klammern als Ganzes hat den
//Typ Währung
(
//Der erste Ausdruck in den Klammern hat den
//Typ Zeichenfolge
Mitteilung:= "Eilversand";
//Der zweite und letzte Ausdruck in Klammern
//hat den Typ Währung
ship := {Aufträge.Auftragssumme} * 0.05;
)
So gibt die folgende Formel beispielsweise einen Fehler aus, weil der ThenTeil des If-Ausdrucks einen Währungswert zurückgibt, während der Else-Teil
einen Zeichenfolgenwert zurückgibt. Dies ist nicht zugelassen, da es sich bei
dem If-Ausduck um einen Ausdruck handelt und er daher einen Wert von nur
einem Typ zurückgeben muss.
//Eine fehlerhafte Formel
Local StringVar Mitteilung;
Local CurrencyVar Versand;
If {Aufträge.Versanddatum} - {Aufträge.Auftragsdatum} <= 3
Then
Crystal Report Explorer-Anwenderhandbuch 135
7
7
Referenz zur Crystal-Syntax
Steuerelementstrukturen
(
Mitteilung:= "Eilversand";
ship := {Aufträge.Auftragssumme} * 0.05
)
Else
(
//Die folgenden zwei Zeilen wurden miteinander vertauscht
ship := {Aufträge.Auftragssumme} * 0.02;
Mitteilung:= "Normaler Versand";
);
Mitteilung & " kostet " & CStr (Versand)
Eine Möglichkeit, wie die fehlerhafte Formel korrigiert werden kann, ohne der
Reihenfolge der Ausdrücke große Beachtung schenken zu müssen, besteht
darin, den If-Ausdruck in jedem Zweig einen konstanten Wert desselben Typs
zurückgeben zu lassen. Jetzt gibt der If-Ausdruck beispielsweise den
Zahlenwert 0 zurück:
//Korrigierte fehlerhafte Formel
Local StringVar Mitteilung;
Local CurrencyVar Versand;
If {Aufträge.Versanddatum} - {Aufträge.Auftragsdatum} <= 3
Then
(
Mitteilung:= "Eilversand";
ship := {Aufträge.Auftragssumme} * 0.05;
0
)
Else
(
ship := {Aufträge.Auftragssumme} * 0.02;
Mitteilung:= "Normaler Versand";
0
);
Mitteilung & " kostet " & CStr (Versand)
Select-Ausdrücke
Die Select-Anweisung funktioniert ähnlich wie eine If-Anweisung. In einigen
Fällen können jedoch mit Hilfe der Select-Anweisung übersichtlichere
Formeln mit weniger Wiederholungen geschrieben werden. Im folgenden
Beispiel für eine Select-Anweisung soll das Feld {Kunde.Fax} ausgewertet
werden, um zu ermitteln, ob die Vorwahl für den amerikanischen Bundesstaat
Washington (206, 360, 509) oder die Vorwahl für British Columbia in Kanada
(604, 250) verwendet werden muss:
//Erstes Beispiel für eine Select-Anweisung
Select {Kunde.Fax}[1 To 3]
Case "604", "250" :
"BC"
Case "206", "509", "360" :
"WA"
Standard:
"";
136
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Steuerelementstrukturen
Der Ausdruck rechts neben dem Schlüsselwort Select wird als
Auswahlbedingung bezeichnet. Im oben stehenden Beispiel lautet sie
{Kunde.Fax}[1 To 3]. Der Select-Ausdruck versucht, den ersten Case zu
finden, der mit der Select-Bedingung übereinstimmt, und führt dann den
Ausdruck aus, der dem Doppelpunkt für diesen Case folgt. Der Standardfall
wird zugewiesen, wenn keiner der vorhergehenden Fälle mit der SelectBedingung übereinstimmt. Beachten Sie bitte, dass auch hinter "Standard"
ein Doppelpunkt steht.
//Hat denselben Effekt wie das erste Beispiel für eine
Select-Anweisung
Local StringVar areaCode := {Kunde.Fax}[1 To 3];
If areaCode In ["604", "250"] Then
"BC"
Else If areaCode In ["206", "509", "360"] Then
"WA"
Else
"";
Beispiel
In dieser Formel wird die Anzahl von Oscar-Nominierungen, die ein Film
erhalten hat, in die Kategorien "wenige", "etliche", "viele" oder "sehr viele"
eingeteilt und Ihnen dabei ein kleine Andeutung von den Möglichkeiten
vermittelt, die Ihnen bei den auf das Schlüsselwort Case folgenden
Ausdruckslisten zur Verfügung stehen.
//Zweites Beispiel für eine Select-Anweisung
Select {Film.NOM}
Case 1,2,3, Is < 1 :
(
//Kann durch Verwendung von Klammern Ausdrucklisten
//haben
10 + 20;
"wenige"
)
Case 4 To 6, 7, 8, 9 :
"etliche"
Case 10 :
"viele"
Standard:
"sehr viele"
Der Standard-Satz des Select-Ausdrucks ist optional. Wenn der StandardSatz fehlt und keiner der Fälle passt, gibt der Select-Ausdruck den
Standardwert für seinen Ausdruckstyp zurück. Wenn in der oben stehenden
Formel beispielsweise die Standardklausel ausgelassen und {Film.NOM} = 11
lauten würde, würde die leere Zeichenfolge "" zurückgegeben. Der SelectAusdruck ist ein Ausdruck, für den ähnliche Kommentare gelten, wie im
Abschnitt Weitere Einzelheiten über If-Ausdrücke beschrieben.
Crystal Report Explorer-Anwenderhandbuch 137
7
7
Referenz zur Crystal-Syntax
Steuerelementstrukturen
For-Schleifen
Mit Hilfe von For-Schleifen können Sie eine Abfolge von Anweisungen
mehrere Male auswerten lassen. Durch diese Funktionsweise unterscheiden
sich For-Schleifen von If- und Select-Ausdrücken, bei denen während der
Auswertung der Formel jeder Ausdruck vom Programm höchstens einmal
durchlaufen wird. For-Schleifen sind am einfachsten zu verwenden, wenn Sie
im Voraus genau wissen, wie oft die Anweisungen ausgewertet werden
müssen.
Die Syntax der For-Schleife in Beispielen
Beispiel 1
Sie möchten die Zeichenfolge im Feld {Kunde.Kundenname} umkehren.
Dadurch würde beispielsweise der Firmenname „City Cyclists“ zu „stsilcyC
ytiC“ umgewandelt werden.
//Erstes Beispiel für das Umkehren einer Zeichenfolge
Local StringVar str := "";
Local NumberVar strLen :=
Length ({Kunde.Kundenname});
Local NumberVar i;
For i = 1 To strLen Do
(
Local NumberVar charPos := strLen - i + 1;
str := str + {Kunde.Kundenname}[charPos]
);
str
Jetzt werden wir untersuchen, wie diese Formel arbeitet, indem wir davon
ausgehen, dass im Feld {Kunde.Kundenname} zur Zeit der Firmenname
„Clean Air“ enthalten ist. Der Variablen strLen wurde die Länge des
Firmennamens „Clean Air“ zugewiesen, also 9 Zeichen. Die Variable i wird
auch als For-Zähler bezeichnet, da sich ihr Wert mit jedem Durchlaufen der
For-Schleife ändert. Sie dient also dazu, mitzuzählen, wie oft die Schleife
durchlaufen wird. Die For-Schleife wird neunmal wiederholt, beim ersten Mal
entspricht i dem Wert 1, beim zweiten Mal dem Wert 2, beim dritten Mal dem
Wert 3 usw., bis i gleich 9 ist. Während der ersten Wiederholung wird das
neunte Zeichen von {Kunde.Kundenname} an die leere Zeichenfolgevariable
str angehängt. Nach dem ersten Durchlauf enthält diese also den Buchstaben
„r“. Beim zweiten Durchlauf wird das achte Zeichen von
{Kunde.Kundenname} an angefügt, wonach die Variable die Zeichenfolge „ri“
enthält. Dies wird fortgesetzt, bis nach dem neunten Durchlauf in der
Variablen die Zeichenfolge „riA naelC“, also die umgekehrte Zeichenfolge,
enthalten ist.
138
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Steuerelementstrukturen
Beispiel
Im Folgenden sehen Sie eine einfachere Variante der vorangehenden
Formel, bei der eine Step-Klausel mit dem negativen Step-Wert -1 verwendet
wird. Beim Beispiel „Clean Air“ entspricht „i“ bei der ersten Wiederholung 9,
bei der zweiten 8, bei der dritten 7 usw. bis zum Wert 1 bei der letzten
Wiederholung.
//Zweites Beispiel für das Umkehren einer Zeichenfolge
Local StringVar str := "";
Local NumberVar strLen :=
Length ({Kunde.Kundenname});
Local NumberVar i;
For i := strLen To 1 Step -1 Do
(
str := str + {Kunde.Kundenname}[i]
);
str
Beispiel
In der einfachsten Version wird die integrierte Funktion StrReverse
verwendet:
//Drittes Beispiel für das Umkehren einer Zeichenfolge
StrReverse ({Kunde.Kundenname})
Mit den integrierten Zeichenfolgefunktionen von Crystal Reports können viele
der Aufgaben zum Verarbeiten von Zeichenfolgen durchgeführt werden, die
bisher mit Hilfe einer For-Schleife oder eines anderen Schleifentyps gelöst
wurden. Allerdings sind For-Schleifen beim Verarbeiten von Zeichenfolgen
am vielseitigsten verwendbar und auch beim Verarbeiten von Arrays am
leistungsfähigsten, was ausschlaggebend sein kann, wenn die geplante
Verarbeitungsweise von den integrierten Funktionen nicht geleistet werden
kann.
Beispiel für eine For-Schleife
Es folgt ein umfangreicheres Beispiel für die Möglichkeiten, die Crystal
Reports für die Verarbeitung von Zeichenfolgen bietet. Die Cäsar-Chiffre ist
ein einfacher Geheimcode, der Julius Cäsar zugeschrieben wird. In diesem
Code wird jeder Buchstabe eines Wortes durch einen Buchstaben ersetzt, der
im Alphabet fünf Stellen weiter hinten folgt. Dadurch wird zum Beispiel das
Wort „Satz“ zu „Xfye“. Beachten Sie, dass der Buchstabe „z“ durch „e“ ersetzt
wird. Da es nach „z“ keine weiteren 5 Buchstaben im Alphabet gibt, wird
wieder am Anfang begonnen. In der folgenden Formel wird die Cäsar-Chiffre
auf das Feld {Kunde.Kundenname} in der Datenbank Xtreme angewendet:
//Die
//Die
Local
Local
Cäsar-Chiffre
zu verschlüsselnde Zeichenfolge
StringVar inString := {Kunde.Kundenname};
NumberVar shift := 5;
Crystal Report Explorer-Anwenderhandbuch 139
7
7
Referenz zur Crystal-Syntax
Steuerelementstrukturen
Local StringVar outString := "";
Local NumberVar i;
For i := 1 To Length(inString) Do
(
Local StringVar inC := inString [i];
Local StringVar outC;
Local BooleanVar isChar :=
LowerCase(inC) In "a" To "z";
Local BooleanVar isUCaseChar :=
isChar And (UpperCase (inC) = inC);
inC := LCase(inC);
If istBuchst Then
(
Local NumberVar offset :=
(Asc(inC) + shift - Asc("a")) Mod
(Asc("z") - Asc("a") + 1);
outC := Chr(offset + Asc("a"));
If isUCaseChar Then outC := UpperCase(outC)
)
Else
outC := inC;
outString := outString + outC
);
outString
In diesem Beispiel ist ein If-Ausdruck im Ausdrucksblock der For-Schleife
eingebettet. Diese If-Anweisung hat die Aufgabe, dafür zu sorgen, dass die
einzelnen Zeichen korrekt versetzt werden. Dabei müssen beispielsweise
Buchstaben anders verarbeitet werden als Satzzeichen oder Leerzeichen. Im
Einzelnen muss dabei sichergestellt werden, dass Satzzeichen und
Leerzeichen nicht verschlüsselt werden. Im Allgemeinen geht es hier darum,
dass Steuerelementstrukturen in andere Steuerelementstrukturen eingebettet
werden können und dass mehrere Ausdrücke in den mit Klammern
eingefassten Ausdrucksblöcken anderer Steuerelementstrukturen
aufgenommen werden können.
Exit For verwenden
Sie können eine For-Schleife mit Exit For verlassen. Im folgenden Beispiel
wird das globale Array Namen nach dem Namen „Fritz“ durchsucht. Sobald
der Name gefunden wird, wird der Index des Namens im Array
zurückgegeben. Andernfalls wird -1 zurückgegeben.
Ist das Namen-Array beispielsweise
["Franz", "Helene", "Fritz", "Linda"]
140
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Steuerelementstrukturen
Dann wird durch die Formel 3 zurückgegeben.
Global StringVar Array namen;
//Der Namen-Array wurde bereits in anderen Formeln
//in anderen Formeln
Local NumberVar i;
Local NumberVar result := -1;
//Die UBound-Funktion gibt die Größe ihres
//Array-Arguments zurück
For i := 1 to UBound (names) Do
(
If Namen [i] = "Fritz" Then
(
result := i;
Exit For
)
);
result
Wenn sie als ein Ausdruck angesehen wird, gibt die For-Schleife immer den
booleschen Wert TRUE zurück. Daher ist eine For-Schleife als letzter
Ausdruck in einer Formel fast immer ungünstig, denn dann zeigt die Formel
einfach den Wert TRUE an anstatt Ihres gewünschten Ergebnisses.
While-Schleifen
Ein weiterer Schleifentyp ist die While-Schleife. Eine While-Schleife kann
dazu verwendet werden, eine feststehende Folge von Anweisungen
unbegrenzt oft auszuführen.
Die zwei unterschiedlichen Typen der While-Schleifen
WhileSchleifentyp
Erklärung
Beispiel
While ... Do
Beim Schleifentyp While ... Do wird zuerst die While Bedingung Do
Ausdruck
Bedingung ausgewertet, und nur wenn diese
Bedingung erfüllt wird, werden die
Anweisungen ausgewertet, die auf die
Bedingung folgen.
Sobald die Schleife vollständig durchlaufen
ist, wird die Bedingung erneut ausgewertet,
und wenn die Bedingung erfüllt wird, werden
die Anweisungen erneut ausgewertet. Dieser
Vorgang wird so lange wiederholt, bis die
Bedingung nicht mehr erfüllt wird.
Crystal Report Explorer-Anwenderhandbuch 141
7
7
Referenz zur Crystal-Syntax
Steuerelementstrukturen
WhileSchleifentyp
Erklärung
Beispiel
Do ... While
Beim Schleifentyp Do ... In werden die
Anweisungen in jedem Fall mindestens
einmal ausgewertet.
Do
Ausdruck
While Bedingung
Nach der ersten Auswertung der
Anweisungen wird die Bedingung geprüft, und
nur wenn die Bedingung erfüllt wird, werden
die Anweisungen erneut ausgewertet. Dieser
Vorgang wird so lange fortgesetzt, bis die
Bedingung nicht mehr erfüllt wird.
Hinweis:
•
While-Schleifen können mit Hilfe der Anweisung Exit While sofort
verlassen werden. Sie wird analog zu Exit For in For-Schleifen
verwendet.
•
Wie die For-Schleife gibt auch die While-Schleife immer den booleschen
Wert TRUE zurück, wenn sie als Ausdruck angesehen wird.
While ... Do-Schleife
Im folgenden Beispiel wird in einer eingegebenen Zeichenfolge nach der
ersten Ziffer gesucht. Falls eine Ziffer gefunden wird, wird deren Position und
andernfalls -1 zurückgegeben. In diesem Fall wird der Eingabetext explizit auf
eine Zeichenfolgekonstante gesetzt. Stattdessen könnte er jedoch auch
einem Datenbankfeld des Typs String zugewiesen werden. Für unseren
Beispieltext „Die 7 Zwerge“ wird von der Formel die Zahl 5 zurückgegeben,
da sich an der fünften Stelle des Eingabetexts die Ziffer 7 befindet.
Local StringVar inString := "Die 7 Zwerge";
Local NumberVar strLen := Length (inString);
Local NumberVar result := -1;
Local NumberVar i := 1;
While i <= strLen And result = -1 Do
(
Local StringVar c := inString [i];
If NumericText (c) Then
result := i;
i := i + 1;
);
result
142
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Steuerelementstrukturen
Sicherheitsmechanismen für Schleifen
Durch einen Sicherheitsmechanismus wird verhindert, dass die
Berichtsverarbeitung aufgrund einer Endlosschleife hängenbleibt. Für jede
Auswertung einer Formel werden pro Ausführung maximal 100.000
Auswertungen von Schleifenbedingungen zugelassen. Im folgenden Beispiel
wird das verdeutlicht.
Hier ein Beispiel:
Local NumberVar i := 1;
While i <= 200000 Do
(
If i > {Film.STARS} Then
Exit While;
i := i + 1
);
20
Wenn {Film.STARS} größer als 100.000 ist, dann wird die
Schleifenbedingung i <= 200000 häufiger ausgewertet als maximal zulässig
und daher eine Fehlermeldung ausgegeben. Andernfalls ist die Schleife
zulässig.
Hinweis: Der Sicherheitsmechanismus wird auf die gesamte Formel und
nicht nur auf einzelne Schleifen angewendet. Hier ein Beispiel:
Local NumberVar i := 1;
For i := 1 To 40000 Do
(
Sin (i);
);
i := 1;
While i <= 70000 Do
(
i := i + 1;
)
In der oben stehenden Formel wird der Sicherheitsmechanismus ebenfalls
ausgelöst, da die Zahl 100.000 für die Gesamtanzahl der Auswertungen von
Schleifenbedingungen in der Formel gilt und in dieser Formel 40.001 +70.001
Auswertungen dieser Art stattfinden.
Crystal Report Explorer-Anwenderhandbuch 143
7
7
Referenz zur Crystal-Syntax
Einschränkungen
Option Loop (Crystal-Syntax)
Mit Hilfe der Option Loop-Anweisung kann angegeben werden, wie häufig
eine Schleifenbedingung pro Formelauswertung maximal ausgewertet wird.
Diese Anweisung sollte nur verwendet werden, wenn der Standardwert mit
einer maximalen Schleifenanzahl von 100.000 für die jeweilige Formel nicht
ausreicht.
Hinweis: Die Option "Loop-Anweisung" muss vor allen anderen
Anweisungen stehen.
Syntax von Option Loop
Die Syntax von Option Loop lautet:
Option Loop maxIterations
maxIterations entspricht dabei der maximalen Anzahl von Auswertungen, die
pro Formelauswertung für die Bedingung ausgeführt werden sollen. Hier ist
eine positive ganze Zahl erforderlich.
Hier ein Beispiel:
//Option Loop-Beispiel
option loop 256;
//Namen in Großbuchstaben umwandeln
Local StringVar outString;
Local StringVar inString := {Kunde.Kundenname};
Local NumberVar i;
For i:=1 to Length(inString) do
outString := outString + upperCase(inString[i]);
outString
Falls "Kunde.Kundenname" den Wert 255 übersteigt, wird eine
Fehlermeldung angezeigt: „Eine Schleife wurde öfter als zulässig
ausgewertet.“
Einschränkungen
Als Orientierungshilfe folgen nun die Größenbeschränkungen der
Formelsprache:
144
•
Die maximale Länge einer Zeichenfolgekonstante, eines in einer
Zeichenfolgevariablen enthaltenen Zeichenfolgenwertes, eines von einer
Funktion zurückgegebenen Zeichenfolgenwertes oder eines
Zeichenfolgeelements eines Zeichenfolgearrays beträgt 65.534 Zeichen.
•
Ein Array kann maximal aus 1.000 Elementen bestehen.
Crystal Report Explorer-Anwenderhandbuch
Referenz zur Crystal-Syntax
Einschränkungen
•
Die maximale Anzahl von Argumenten für eine Funktion beträgt 1.000.
(Dies bezieht sich auf Funktionen, die über eine unendliche Anzahl von
Argumenten verfügen können, z.B. Choose).
•
Die Maximalanzahl für Auswertungen von Schleifenbedingungen pro
Auswertung einer Formel liegt bei 100.000. (Weitere Informationen über
die genaue Bedeutung finden Sie unter Sicherheitsmechanismen für
Schleifen). Beachten Sie, dass Sie diesen Maximalwert mit der
Anweisung Option Loop (Crystal-Syntax) ändern können.
•
In Visual Basic modellierte Datum-Uhrzeit-Funktionen akzeptieren
Jahresangaben von 100 bis 9999. Herkömmliche Crystal ReportsFunktionen akzeptieren Jahresangaben von 1 bis 9999.
•
Die Größe einer Funktion ist unbegrenzt.
Crystal Report Explorer-Anwenderhandbuch 145
7
7
Referenz zur Crystal-Syntax
Einschränkungen
146
Crystal Report Explorer-Anwenderhandbuch
Kapitel
Funktionen
8
Funktionen
Informationen über Zahlenformatierungen in Beispielen
Informationen über Zahlenformatierungen
in Beispielen
Die Funktionsbeschreibungen in diesem Abschnitt enthalten zahlreiche
Beispiele für Werte, die bei Verwendung einer bestimmten Funktion vom
Programm zurückgegeben werden. Bedenken Sie, dass die Feldformatierung
Einfluss auf die Anzeige von Formelergebnissen im Bericht hat. Dies ist
insbesondere dann von Bedeutung, wenn die Funktion einen numerischen
Wert zurückgibt. Wenn Sie beispielsweise die Funktion Truncate für den Wert
1,599 verwenden, gibt die Formel zwar 1 zurück, es hängt jedoch von der
Feldformatierung ab, wie der Wert in Crystal Reports angezeigt wird. Wenn
das Formelfeld in Ihrem Bericht für die Anzeige von zwei Dezimalstellen
formatiert ist, wird in Crystal Reports der Wert 1,00 angezeigt. Daher kann
sich der im Bericht angezeigte Wert von dem im Funktionsbeispiel
dargestellten Wert unterscheiden.
Mathematik
Mathematische Funktionen werden für eine Vielzahl mathematischer
Berechnungen und Operationen verwendet.
Abs (x)
Sgn (Zahl)
Int (Zahl)
Round
RoundUp
Truncate
MRound
Ceiling
Floor
Fix
Remainder (Zähler, Nenner)
Sin (Zahl)
Cos (Zahl)
Tan (Zahl)
Atn (Zahl)
148
Crystal Reports-Anwenderhandbuch
Funktionen
Mathematik
Pi
Sqr (Zahl)
Exp (Zahl)
Log (Zahl)
Rnd
Abs (x)
Basic- und Crystal-Syntax.
Argumente
•
x ist die Zahl oder Währung, für die der absolute Wert zurückgegeben
werden soll.
Rückgabewert
Zahlenwert
Aktion
Abs (x) gibt den absoluten Wert von x zurück.
Beispiele
Abs(1.50)
Gibt 1,50 zurück.
Abs(-1.50)
Gibt 1,50 zurück.
Abs(10 - 7)
Gibt 3 zurück.
Abs(7 - 10)
Gibt 3 zurück.
Rem Basic-Syntax
If Abs(37 - {Datei.FELD}) > 1 Then
formula = "Wartung, Temperatur prüfen"
End If
//Crystal-Syntax
If Abs(37 - {Datei.FELD}) > 1 Then
"Wartung, Temperatur prüfen"
Else
"" ;
Damit werden Instanzen markiert, bei denen die Temperaturabweichung
eines Laborheizelements höher als 1 Grad über oder unter Null ist.
Crystal Reports-Anwenderhandbuch 149
8
8
Funktionen
Mathematik
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Sgn (Zahl)
Basic- und Crystal-Syntax.
Argument
•
Zahl entspricht dem Wert, dessen Vorzeichen Sie wissen möchten.
Rückgabewert
Gibt 1, 0 oder -1 zurück
Aktion
Sgn gibt das Vorzeichen einer angegebenen Zahl zurück: Bei Zahlen > 0 wird
1 zurückgegeben, wenn die Zahl 0 ist, wird 0 zurückgegeben, und bei Zahlen
< 0 wird -1 zurückgegeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Sgn (-10)
Gibt -1 zurück.
Sgn (0)
Gibt 0 zurück.
Sgn (10)
Gibt 1 zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Int (Zahl)
Basic- und Crystal-Syntax.
Argument
•
150
Zahl entspricht dem Wert, den Sie auf die nächstkleinere Ganzzahl
runden möchten.
Crystal Reports-Anwenderhandbuch
Funktionen
Mathematik
Rückgabewert
Ganzzahliger Wert
Aktion
Int gibt den ganzzahligen Teil einer angegebenen Zahl zurück; dieser wird
durch Abrunden auf die nächstkleinere Ganzzahl ermittelt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Int (123.678)
Gibt 123 zurück.
Int (-123.678)
Gibt -124 zurück.
Int (-123.1)
Gibt -124 zurück.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Fix (n) (oder Truncate (n)) und Int (n) arbeiten auf dieselbe Weise, außer
wenn n negativ ist; in diesem Fall geben Fix und Truncate die erste
ganze Zahl größer als oder gleich n zurück, während Int die erste ganze
Zahl kleiner als oder gleich n zurückgibt. Zum Beispiel,
Fix (-10.2)
Truncate ((-10.2)
Beide geben -10 zurück.
Int (-10.2)
Gibt -11 zurück.
Siehe auch
•
•
Fix
Truncate
Round
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
Round (x)
Round (x, DezStellen)
Crystal Reports-Anwenderhandbuch 151
8
8
Funktionen
Mathematik
Argumente
•
•
x ist eine Zahl oder Währung, die gerundet werden soll.
DezStellen ist eine ganze Zahl, die angibt, auf wie viele Dezimalstellen x
gerundet werden soll.
Hinweis: Der Wert für „DezStellen“ kann von -20 bis 10 (einschließlich)
reichen.
Rückgabewert
Zahl
Aktion
Round rundet auf die nächste ganze Zahl, wenn das Argument DezStellen
fehlt. Wenn der Wert rechts vom Dezimaltrennzeichen kleiner als oder gleich
,499 ist, rundet das Programm auf die nächstkleinere ganze Zahl ab. Wenn
der Wert rechts vom Dezimaltrennzeichen größer als oder gleich ,5 ist, rundet
das Programm auf die nächsthöhere ganze Zahl auf.
Wenn das Argument DezStellen verwendet wird, wird der Wert von x an der
Dezimalstelle gerundet, die durch DezStellen angegeben ist. Wenn Sie den
Wert für DezStellen auf 0 setzen, hat dies den gleichen Effekt, wie wenn Sie
das Argument DezStellen auslassen. Wenn DezStellen negativ ist, wird die
Zahl auf die nächste Zehnerstelle, Hunderterstelle usw. gerundet.
Hinweis: Der Wert für „DezStellen“ kann von -20 bis 10 (einschließlich)
reichen.
Typische Verwendungen
Round können Sie immer dann zum Runden eines Wertes auf eine
bestimmte Dezimalstelle verwenden, wenn der gerundete Wert geeigneter ist
als der ursprüngliche Wert.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Round(1.23456)
Gibt 1 zurück.
Round(1.499)
Gibt 1 zurück.
Round(1.5000)
Gibt 2 zurück.
Round(2345.23456,4)
Gibt 2345,2346 zurück.
152
Crystal Reports-Anwenderhandbuch
Funktionen
Mathematik
Round(2345.23456,3)
Gibt 2345,235 zurück.
Round(2345.23456,2)
Gibt 2345,23 zurück.
Round(2345.23456,0)
Gibt 2345 zurück.
Round(2345.23456,-1)
Gibt 2350 zurück.
Round(2345.23456,-2)
Gibt 2300 zurück.
Round(2345.23456,-3)
Gibt 2000 zurück.
Round(1.234499,3)
Gibt 1,234 zurück.
Round(1.234500,3)
Gibt 1,235 zurück.
Round({Datei.MENGE},1)
Gibt 1854,5 zurück, wenn Menge = 1854.49
Round({Datei.MENGE})
Gibt 1854,00 zurück, wenn Menge = 1854.49.
Round({Datei.MENGE})
Gibt 1855,00 zurück, wenn Menge = 1854.51
Round({Datei.GEWICHT} / 100)
Gibt 4 zurück, wenn Gewicht = 424.
Round({Datei.GEWICHT} / 100)
Gibt 5 zurück, wenn Gewicht = 451.
Round((A * B) / C)
Gibt 11 zurück, wenn A = 25, B = 3 und C = 7.
Round(file.MENGE,1)
Gibt 1854,5 zurück, wenn Menge = 1854.51.
Round({Datei.GEHALT} * {Datei.ARBEITSSTUNDEN}, 2)
Gibt 146,63 € zurück, wenn Gehalt = 5.75 € und Arbeitsstunden = 25.5.
Anmerkungen
Runden steht auch als Formatierungsoption für numerische Werte in Feldern
zur Verfügung.
Beachten Sie, dass sich Feldformatierungsfunktionen darauf auswirken
können, wie Werte in Formeln verwendet werden. Siehe ToNumber und InWährung-Operator.
Crystal Reports-Anwenderhandbuch 153
8
8
Funktionen
Mathematik
Siehe auch
•
•
•
Truncate
Fix
Int (Zahl)
RoundUp
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
RoundUp (x)
RoundUp (x, DezStellen)
Argumente
•
•
x entspricht der reellen Zahl, die gerundet werden soll.
DezStellen ist eine ganze Zahl, die angibt, auf wie viele Dezimalstellen x
gerundet werden soll.
Rückgabewert
Zahl
Aktion
RoundUp gibt eine aufgerundete Zahl zurück. Mit dieser Funktion wird (von 0
weg) aufgerundet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
RoundUp(4.1,0)
Gibt 5 zurück.
RoundUp(5.34)
Gibt 6 zurück.
RoundUp(6.36521,3)
Gibt 6,366 zurück.
RoundUp(-6.36521,3)
Gibt -6,366 zurück.
RoundUp(50.43,-1)
Gibt 60 zurück.
154
Crystal Reports-Anwenderhandbuch
Funktionen
Mathematik
Anmerkungen
•
Wenn DezStellen größer als 0 (Null) ist, wird Ihre Zahl auf die
angegebene Anzahl von Dezimalstellen aufgerundet.
•
Wenn DezStellen 0 bzw. nicht angegeben ist, wird Ihre Zahl auf die
nächste ganze Zahl aufgerundet.
•
Wenn DezStellen kleiner als 0 ist, wird Ihre Zahl auf die Stelle links vom
Dezimaltrennzeichen aufgerundet.
Siehe auch
•
Round
Truncate
Truncate und Fix sind gleichwertige Funktionen. Truncate wird in der CrystalSyntax bevorzugt, Fix dagegen in der Basic-Syntax.
Syntax der Argumente
•
•
Truncate (x)
Truncate (x, DezStellen)
Argumente
•
•
x ist eine Zahl oder Währung, die gekürzt werden soll.
DezStellen ist eine ganze Zahl, die angibt, wie viele Dezimalstellen übrig
bleiben sollen, nachdem der Wert gekürzt wurde. (Dieses Argument ist
optional.)
Rückgabewert
Zahl
Aktion
Truncate(x) gibt entweder eine Bruch- oder ganze Zahl zurück, wenn die
jeweilige Zahl am Dezimaltrennzeichen gekürzt wird. Ist das Argument
DezStellen angegeben, wird die Zahl an der entsprechenden Dezimalstelle
gekürzt, und die Funktion gibt eine Bruchzahl zurück. Ist DezStellen negativ,
wird entsprechend die Einerstelle, die Zehnerstelle, die Hunderterstelle usw.
durch eine 0 ersetzt.
Typische Verwendungen
Diese Funktion können Sie immer dann verwenden, wenn einige Ziffern, die
rechts vom Dezimaltrennzeichen stehen, für einen Bericht oder eine
Kalkulation nicht benötigt werden.
Crystal Reports-Anwenderhandbuch 155
8
8
Funktionen
Mathematik
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Truncate(1.23456)
Gibt 1 zurück.
Truncate (1.599)
Gibt 1 zurück.
Truncate (1.599)
Gibt 1 zurück.
Truncate (1.999)
Gibt 1 zurück.
Truncate(1.599, 1)
Gibt 12346.3 zurück.
Truncate(12345.33, -2)
Gibt 12300,00 zurück.
Wenn Sie 147 Golfbälle auf Lager haben und wissen möchten, wie viele
Dutzend verkauft werden können, rechnen Sie 147/12 = 12,25 und dann
Truncate(12.25) = 12, d. h., es können 12 Dutzend Golfbälle verkauft werden.
Wenn Sie die Bälle nur im Dutzend verkaufen, spielt das 0,25 Dutzend, das
Sie gekürzt haben, keine Rolle.
Truncate({Tabelle.BALLBESTAND} / 12)
Gibt 12 zurück, wenn BALLBESTAND = 147 ist (147 / 12 = 12,25,
Truncate(12.25) = 12).
Truncate({Tabelle.BALLBESTAND} / 12)
Gibt 12 zurück, wenn BALLBESTAND = 155 ist (155 / 12 = 12,92,
Truncate(12.92) = 12).
Truncate({Tabelle.BALLBESTAND} / 12)
Gibt 13 zurück, wenn BALLBESTAND = 157 ist (157 / 12 = 13,08,
Truncate(13.08) = 13).
Anmerkungen
•
Die Funktion Truncate nimmt keine Rundung vor, sondern löscht einfach
die angegebene Anzahl Ziffern rechts vom Dezimaltrennzeichen.
Erläuterungen zum Runden finden Sie unter Round.
•
156
Truncate (n) und Int (Zahl) haben die gleiche Funktion, außer wenn n
(Zahl) negativ ist; in diesem Fall gibt Truncate die erste ganze Zahl
größer als oder gleich n zurück, während Int die erste ganze Zahl kleiner
als oder
Crystal Reports-Anwenderhandbuch
Funktionen
Mathematik
Truncate ((-10.2)
Gibt -10 zurück.
Int (-10.2)
Gibt -11 zurück.
•
Kürzen steht auch als Formatierungsoption für numerische Werte in
Feldern zur Verfügung. Beachten Sie, dass sich
Feldformatierungsfunktionen darauf auswirken können, wie Werte in
Formeln verwendet werden. Weitere Informationen, wie Zahlen und
Currency-Werte konvertiert werden können, finden Sie unter ToNumber
und In-Währung-Operator.
Siehe auch
•
Int (Zahl)
MRound
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
MRound (x)
MRound (x, mehrfach)
Argumente
•
•
x ist ein Wert, der gerundet werden soll.
"mehrfach" entspricht einem Mehrfachwert, auf den der Wert x gerundet
werden soll.
Rückgabewert
Zahl
Aktion
MRound gibt eine Zahl zurück, die auf den festgelegten Mehrfachwert
gerundet wurde. Durch diese Funktion wird (von 0 weg) gerundet, wenn der
Restbetrag der Division größer als oder gleich dem halben Mehrfachwert ist.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
MRound(10,3)
Gibt 9 zurück.
MRound(-10,-3)
Gibt -9 zurück.
Crystal Reports-Anwenderhandbuch 157
8
8
Funktionen
Mathematik
MRound(1.3,0.2)
Gibt 1,4 zurück.
MRound(5,-2)
Gibt 6 zurück.
MRound(-5,2)
Gibt -6 zurück.
Anmerkungen
•
Crystal Reports ignoriert das Vorzeichen des Mehrfachwertes, für das
Ergebnis der Funktion wird das Vorzeichen des ersten Parameters
übernommen.
Ceiling
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
Ceiling (x)
Ceiling (x, mehrfach)
Argumente
•
•
x ist ein Wert, der gerundet werden soll.
"mehrfach" entspricht einem Mehrfachwert, auf den der Wert x gerundet
werden soll.
Rückgabewert
Zahl
Aktion
Ceiling gibt eine Zahl zurück, die auf den festgelegten Mehrfachwert gerundet
wurde. Mit dieser Funktion wird (von 0 weg) aufgerundet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Ceiling(3.5,1)
Gibt 4 zurück.
Ceiling(-2.5,-2)
Gibt -4 zurück.
Ceiling(-2.5,2)
Gibt -4 zurück.
158
Crystal Reports-Anwenderhandbuch
Funktionen
Mathematik
Ceiling(5.43,.05)
Gibt 5,45 zurück.
Ceiling(.43,-1)
Gibt 1 zurück.
Anmerkungen
•
Crystal Reports ignoriert das Vorzeichen des Mehrfachwertes, für das
Ergebnis der Funktion wird das Vorzeichen des ersten Parameters
übernommen.
•
Werte werden immer aufgerundet, wenn sie von 0 weg angepasst
werden (und zwar unabhängig vom Vorzeichen des Wertes). Wenn
"Zahl" ein exakter Mehrfachwert von "mehrfach" ist, findet keine Rundung
statt.
Floor
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
Floor (x)
Floor (x, mehrfach)
Argumente
•
•
x ist ein Wert, der gerundet werden soll.
"mehrfach" entspricht einem Mehrfachwert, auf den der Wert x gerundet
werden soll.
Rückgabewert
Zahl
Aktion
Floor gibt eine Zahl zurück, die auf den festgelegten Mehrfachwert gerundet
wurde. Mit dieser Funktion wird (von 0 weg) abgerundet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Floor(3.5,1)
Gibt 3 zurück.
Floor(-2.5,-2)
Gibt -2 zurück.
Crystal Reports-Anwenderhandbuch 159
8
8
Funktionen
Mathematik
Floor(-2.5,2)
Gibt -2 zurück.
Floor(5.43,.05)
Gibt 5,40 zurück.
Floor(.43,-1)
Gibt 0 zurück.
Anmerkungen
•
Crystal Reports ignoriert das Vorzeichen des Mehrfachwertes, für das
Ergebnis der Funktion wird das Vorzeichen des ersten Parameters
übernommen.
•
Werte werden immer abgerundet, wenn sie von 0 weg angepasst werden
(und zwar unabhängig vom Vorzeichen des Wertes). Wenn "Zahl" ein
exakter Mehrfachwert von "mehrfach" ist, findet keine Rundung statt.
•
0 ist als Mehrfachargument nicht zulässig. Die Verwendung von 0 auf
diese Weise führt zu einem Fehler. Floor(0,0) ist jedoch zulässig und
gibt 0 zurück.
Fix
Fix und Truncate sind gleichwertige Funktionen. Fix wird in der Basic-Syntax
bevorzugt, Truncate dagegen in der Crystal-Syntax.
Syntax der Argumente
•
•
Fix (Zahl)
Fix (Zahl, DezStellen)
Argumente
•
Zahl ist der Zahlenwert, der abgeschnitten werden soll, und kann positiv,
0 oder negativ sein.
•
DezStellen ist eine optionale Zahl, die angibt, auf wie viele
Dezimalstellen der Wert abgeschnitten werden soll. Wenn diese Angabe
weggelassen wird, wird 0 verwendet.
Rückgabewert
Ganzzahliger Wert, der positiv, 0 oder negativ sein kann.
Aktion
Fix schneidet eine Zahl auf eine festgelegte Anzahl von Dezimalstellen ab
und gibt sie wieder zurück. Wenn DezStellen weggelassen wird, wird 0
verwendet.
160
Crystal Reports-Anwenderhandbuch
Funktionen
Mathematik
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Fix (123.678)
Gibt 123 zurück.
Fix (-123.678)
Gibt -123 zurück.
Fix (123.678,1)
Gibt 123,6 zurück.
Fix (123.678,2)
Gibt 123,67 zurück.
Anmerkungen
•
Diese Funktion arbeitet bei Verwendung eines einzigen Parameters, also
in der Form Fix (Zahl), genau wie die gleichnamige Funktion in Visual
Basic.
•
Fix (n) und Int (Zahl) haben die gleiche Funktion, außer wenn n (Zahl)
negativ ist; in diesem Fall gibt Fix die erste ganze Zahl größer als oder
gleich n zurück, während Int die erste ganze Zahl kleiner als oder gleich n
zurückgibt. Zum Beispiel,
Fix (-10.2)
Gibt -10 zurück.
Int (-10.2)
Gibt -11 zurück.
Remainder (Zähler, Nenner)
Basic- und Crystal-Syntax.
Argumente
•
•
Zähler ist eine rationale Zahl (Bruchzahl).
Nenner ist eine rationale Zahl (Bruchzahl).
Rückgabewert
Rationale Zahl (Bruchzahl)
Crystal Reports-Anwenderhandbuch 161
8
8
Funktionen
Mathematik
Aktion
Remainder gibt den Rest zurück (), der übrigbleibt, nachdem der Zähler
(Dividend) durch den Nenner (Divisor) dividiert wurde. Normalerweise
schreibt das Programm einen Quotienten als ganze Zahl mit bis zu sechs
Dezimalstellen. Wenn das Programm dagegen Remainder verwendet, führt
er die Division intern aus, ermittelt den ganzzahligen Anteil des Quotienten
sowie den Rest und gibt nur den Rest zurück.
Typische Verwendungen
Sie können diese Funktion für Umrechnungen (von Fuß in Meilen, Einheiten
in Gros usw.) verwenden. Darüber hinaus können Sie mit Hilfe dieser
Funktion jedes n-te Element aus einem Array auswählen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Remainder(12,5)
Gibt 2 zurück.
Remainder(16,5)
Gibt 1 zurück.
Rem Basic-Syntax
If Remainder({Datei.EXAM#}, 7) = 0 Then
formula = "*****"
End If
//Crystal-Syntax
If Remainder({Datei.EXAM#}, 7) = 0 Then
"*****"
Else
""
Dadurch wird jede siebte Arbeit zur zweiten Bewertung mit einer
Markierung versehen.
ToText(Truncate({Datei.TAGE}/7)) + " Woche(n), " +
ToText(Remainder({Datei.TAGE},7)) + " Tag(e)"
Gibt „9 Woche(n), 1 Tag(e)“ zurück. Wandelt Tage in Wochen und Tage
um. Wenn das Feld z.B. einen Wert von 64 Tagen hat, gibt die Formel die
Zeichenfolge „9 Woche(n), 1 Tag(e)“ zurück.
Siehe auch
•
162
Modul (x Mod y)
Crystal Reports-Anwenderhandbuch
Funktionen
Mathematik
Sin (Zahl)
Basic- und Crystal-Syntax.
Argumente
•
Zahlenwert mit einem im Bogenmaß (Radianten) angegebenen Winkel
Rückgabewert
Zahlenwert zwischen -1 und 1
Aktion
Sin gibt eine Zahl zurück, die den Sinus eines in Radianten angegebenen
Winkels angibt. Diese Funktion verarbeitet ein rechtwinkliges Dreieck und
gibt die Länge der Seite, die dem angegebenen Winkel gegenüberliegt,
geteilt durch die Länge der Hypotenuse aus.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Sin (1)
Gibt 0,8415 (auf 4 Dezimalstellen gerundet) zurück. Dies ist der Sinus
von 1 Radiant.
Sin (30 * crPi / 180)
Gibt 0,5 zurück. Dies ist der Sinus von 30 Grad. Bevor der Sinus
ausgerechnet wird, wird der Winkel durch Multiplizieren mit crPi / 180 in
Radianten konvertiert.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Sin gibt Werte im Bereich von -1 bis 1 zurück.
Cos (Zahl)
Basic- und Crystal-Syntax.
Argumente
•
Zahlenwert mit einem im Bogenmaß (Radianten) angegebenen Winkel.
Crystal Reports-Anwenderhandbuch 163
8
8
Funktionen
Mathematik
Rückgabewert
Zahlenwert zwischen -1 und 1
Aktion
"Cos" gibt eine Zahl zurück, die den Kosinus eines in Radianten
angegebenen Winkels angibt. Diese Funktion verarbeitet ein rechtwinkliges
Dreieck und gibt die Länge der Seite, die am Winkel anliegt, geteilt durch die
Länge der Hypotenuse aus.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Cos (1)
Gibt 0,5403 (auf 4 Dezimalstellen gerundet) zurück. Dies ist der Kosinus
von 1 Radiant.
Cos (60 * crPi / 180)
Gibt 0,5 zurück. Dies ist der Kosinus von 60 Grad. Bevor der Sinus
ausgerechnet wird, wird der Winkel durch Multiplizieren mit crPi / 180 in
Radianten konvertiert.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Cos gibt Werte im Bereich von -1 bis 1 zurück.
Tan (Zahl)
Basic- und Crystal-Syntax.
Argumente
•
Zahlenwert mit einem im Bogenmaß (Radianten) angegebenen Winkel
Rückgabewert
Zahlenwert
Aktion
Tan gibt eine Zahl zurück, die den Tangens eines in Radianten angegebenen
Winkels angibt. Diese Funktion verarbeitet ein rechtwinkliges Dreieck und
gibt die Länge der Seite, die dem angegebenen Winkel gegenüberliegt,
geteilt durch die Länge der am Winkel anliegenden Seite aus.
164
Crystal Reports-Anwenderhandbuch
Funktionen
Mathematik
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Tan (1)
Gibt 1,5574 (auf 4 Dezimalstellen gerundet) zurück. Dies ist der Tangens
von 1 Radiant.
Tan (45 * crPi / 180)
Gibt 1 zurück. Dies ist der Tangens von 45 Grad. Bevor der Tangens
ausgerechnet wird, wird der Winkel durch Multiplizieren mit crPi / 180 in
Radianten konvertiert.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Atn (Zahl)
Basic- und Crystal-Syntax.
Argumente
•
Zahlenwert
Rückgabewert
Zahlenwert mit einem im Bogenmaß (Radianten) angegebenen Winkel
Aktion
Atn gibt als Zahlenwert den Arkustangens des angegebenen Arguments Zahl
zurück. In anderen Worten: Atn gibt den Winkel zurück, dessen Tangens dem
angegebenen Argument Zahl entspricht.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Atn (1)
Gibt einen Winkel von 0,7854 Radianten (auf 4 Radianten gerundet)
zurück. Um diese Winkelangabe in Grad zu konvertieren, müssen Sie sie
mit 180 / crPi multiplizieren. Zum Beispiel Atn (1) * 180 / crPi entspricht
45 Grad.
Crystal Reports-Anwenderhandbuch 165
8
8
Funktionen
Mathematik
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Atn gibt Werte im Bereich von -pi/2 bis pi/2 Radian zurück.
Pi
Basic- und Crystal-Syntax.
Gibt die mathematische Konstante pi zurück, die den Wert 3,14 (auf 2
Dezimalstellen gerundet) hat.
Sqr (Zahl)
Basic- und Crystal-Syntax.
Argumente
•
Zahlenwert größer als oder gleich 0.
Rückgabewert
Zahlenwert
Aktion
Sqr gibt die Quadratwurzel einer angegebenen Zahl zurück.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Sqr (100)
Gibt 10 zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Exp (Zahl)
Basic- und Crystal-Syntax.
Argumente
•
166
Zahlenwert, der eine Potenz angibt.
Crystal Reports-Anwenderhandbuch
Funktionen
Mathematik
Rückgabewert
Zahlenwert
Aktion
Exp gibt eine Zahl zurück, die e (die Basis natürlicher Logarithmen) in der
Potenz angibt. Der Wert von e liegt bei ungefähr 2,718282.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Exp (1.5)
Gibt 1,5 in der Potenz zurück, also ungefähr 4,48169.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Wenn das angegebene Zahlenargument größer als ungefähr 705 ist, tritt
ein numerischer Überlauf ein.
Log (Zahl)
Basic- und Crystal-Syntax.
Argumente
•
Zahlenwert
Rückgabewert
Zahlenwert
Aktion
Log gibt als Zahlenwert den natürlichen Logarithmus einer angegebenen Zahl
zurück. Der natürliche Logarithmus ist der Logarithmus zur Basis e, wobei e
ungefähr gleich 2,718282 ist.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Log (1.5)
Gibt 0,4055 (auf 4 Dezimalstellen gerundet) zurück.
Crystal Reports-Anwenderhandbuch 167
8
8
Funktionen
Mathematik
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Mit dieser Funktion können Sie unter Verwendung folgender Logik einen
Logarithmus mit einer beliebigen Basis berechnen:
LogAnyBase (x,Basis) = log(x)/log(Basis)
(x entspricht der Zahl, für die der Logarithmus berechnet werden soll; Basis
stellt die zu verwendende Basis dar.)
Für einen Logarithmus mit der Basis 10 würden Sie beispielsweise folgenden
Formeltext eingeben:
log(x)/log(10)
Rnd
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
Rnd ()
Rnd (Ausgangszahl)
Argumente
•
seed ist ein optionales Argument für den Zahlenwerttyp.
Rückgabewert
Zahlenwert
Aktion
Rnd gibt eine Zufallszahl größer als oder gleich 0 und kleiner als 1 zurück.
Wenn die Ausgangszahl gleich 0 ist, gibt Rnd die Zufallszahl zurück, die vom
vorherigen Aufruf von Rnd zurückgegeben wurde. Wenn die Ausgangszahl
nicht angegeben wird oder größer als 0 ist, dann gibt Rnd die nächste
Zufallsliste in der intern generierten Folge von Zufallszahlen zurück. Wenn
die Ausgangszahl dagegen kleiner als 0 ist, dann verwendet Rnd den Wert
der Ausgangszahl, um eine neue Folge von Zufallszahlen zu generieren, und
gibt den ersten Wert dieser Folge zurück.
Typische Verwendungen
Wird verwendet, wenn in Ihrer Formel eine Zufallszahl benötigt wird,
beispielsweise für statistische Berechnungen oder für die Auswahl von
Datensätzen nach einem Zufallsverfahren, um die in einem Bericht
verwendeten Daten einzuschränken.
168
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Anmerkungen
•
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Visual
Basic.
•
Sie können Rnd aufrufen, ohne durch Angabe einer negativen
Ausgangszahl (seed) eine neue Folge von Zufallszahlen zu beginnen.
Wenn Sie dies tun, wird anhand der Systemzeit eine interne
Ausgangszahl (seed) generiert.
•
Der Grund dafür, eine neue Folge von Zufallszahlen zu beginnen, indem
Sie Rnd mit einem negativen Wert für seed aufrufen, und alle weiteren
Aufrufe von Rnd ohne Argument (oder mit einem positiven Argument)
vorzunehmen, liegt darin, dass dann der Bericht bei jeder Anzeige exakt
gleich aussieht. In anderen Worten: Sie können dadurch Zufallszahlen
verwenden und gleichzeitig nachvollziehbare Ergebnisse erhalten.
Gruppenergebnis
Mit den Gruppenergebnisfunktionen werden Felddaten auf verschiedene
Arten zusammengefasst. Diese Gruppenergebnisfunktionen erhielten ihre
Bezeichnung aufgrund Ihrer einzigartigen Summierungsfunktionen.
Gruppenergebnisfunktionen können für Operationen für Gruppendaten
ausgelegt werden.
Hinweis:
•
Nicht alle arithmetischen Gruppenfunktionen sind für alle Datentypen
verfügbar.
•
Um diese Funktion zum Einfügen eines Gruppenfeldes in eine Formel zu
verwenden, müssen Sie in Ihren Bericht bereits ein Gruppenfeld mit
identischen Parametern eingefügt haben: dasselbe Feld, dasselbe
Sortier- und Gruppierfeld und dieselbe Aktion (Mittelwert/Average,
Anzahl/Count usw.).
Sum
Average
StdDev
PopulationStdDev
Variance
PopulationVariance
Maximum
Minimum
Crystal Reports-Anwenderhandbuch 169
8
8
Funktionen
Gruppenergebnis
Count
DistinctCount
Correlation
Covariance
WeightedAverage
Median
PthPercentile
NthSmallest
Mode
NthMostFrequent
PercentOfSum
PercentOfAverage
PercentOfMaximum
PercentOfMinimum
PercentOfCount
PercentOfDistinctCount
Bedingungen für Gruppenergebnisfunktionen
Bedingungen für Gruppenergebnisfunktionen
Es folgt eine Liste der Bedingungen für die verschiedenen
Gruppenergebnisfunktionen:
Boolesche
Bedingungen
170
Crystal Reports-Anwenderhandbuch
•
•
•
•
•
•
•
bei jeder Änderung
bei Änderung in "Ja"
bei Änderung in "Nein"
immer wenn "Ja"
immer wenn "Nein"
wenn nächster Wert "Ja"
wenn nächster Wert "Nein"
Funktionen
Gruppenergebnis
Datumsbedingungen
Zeitbedingungen
•
•
•
•
•
•
•
•
•
•
•
•
für jeden Tag
für jede Woche
für alle zwei Wochen
für jeden halben Monat
für jeden Monat
für jedes Quartal
für jedes Halbjahr
für jedes Jahr
für jede Sekunde
für jede Minute
für jede Stunde
für a.m./p.m.
Sum
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
Sum (Feld)
Sum (Feld, BedFeld)
Sum (Feld, BedFeld, Bed)
Sum (x)
Argumente
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
•
x ist ein Array mit Zahlen- oder Währungswerten, die von der
verwendeten Funktion ausgewertet werden können.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Crystal Reports-Anwenderhandbuch 171
8
8
Funktionen
Gruppenergebnis
Rückgabewert
Zahl
Aktion
Das Programm ermöglicht es Ihnen, den Durchschnitt der Werte zu
berechnen, die in Ihrem Bericht vorhanden sind. Hier ein Beispiel:
•
Wenn ein Umsatzbericht ein Feld enthält, das den Betrag jedes Auftrags
angibt, können Sie die Summe aller in dem Bericht vorkommenden
Aufträge berechnen (Gesamtsumme).
•
Wenn Sie Aufträge in Gruppen unterteilen (z. B. Aufträge nach den
Bundesländern gruppieren, in denen sie erteilt wurden), können Sie die
Summe der Aufträge pro Gruppe berechnen (in diesem Fall pro
Bundesland).
•
Wenn Sie Aufträge in Datums- oder boolesche Gruppen unterteilen (z. B.
Aufträge nach den Monaten gruppieren, in denen sie erteilt wurden),
können Sie den niedrigsten Auftragsbetrag pro Gruppe, basierend auf
einer bestimmten Änderung in dem Datums- oder booleschen Feld,
ermitteln (in diesem Fall pro Monat).
•
Wenn Sie eine Gruppe einzelner Werte angeben, können Sie die Summe
der Werte dieser Gruppe berechnen. Weitere Informationen hierzu finden
Sie unter Array-Gruppenergebnisfunktionen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Sum({Datei.MENGE})
Berechnet die Summe aller Werte des Feldes MENGE.
Sum({Aufträge.BETRAG}, {Aufträge.KUNDENNR})
Addiert die Aufträge jeder Auftragsgruppe und gibt die Summe im Feld
Betrag an. Die Aufträge werden in Gruppen aufgeteilt, wenn sich der
Wert im Feld {Kunde.KUNDENNR} ändert.
Sum({Aufträge.BETRAG}, {Aufträge.DATUM}, "monthly") %
Sum({Aufträge.BETRAG })
Gruppiert die Werte des Feldes Betrag nach Monat und berechnet die
Summe der Werte für jede Monatsgruppe als Prozentsatz der Summe
der Werte des gesamten Berichts.
Sum([{Datei.BETRAG}, {Datei.PREIS}, {Datei.KOSTEN}])
Summe der Werte in den Feldern Betrag, Preis und Kosten.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
172
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Average
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
Average (Feld)
Average (Feld, BedFeld)
Average (Feld, BedFeld, Bed)
Average (x)
Argumente
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
•
x ist ein Array mit Zahlen- oder Währungswerten, die von der
verwendeten Funktion ausgewertet werden können.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Zahl
Aktion
Das Programm ermöglicht es Ihnen, den Durchschnitt der Werte zu
berechnen, die in Ihrem Bericht vorhanden sind. Hier ein Beispiel:
•
Wenn ein Umsatzbericht ein Feld enthält, das den Betrag jedes Auftrags
angibt, können Sie den Durchschnittswert aller in dem Bericht
vorkommenden Aufträge berechnen (einen Gesamtdurchschnitt).
•
Wenn Sie Aufträge in Gruppen unterteilen (indem Sie z. B. Aufträge nach
den Bundesländern gruppieren, aus denen sie kommen), können Sie den
durchschnittlichen Auftragswert pro Gruppe berechnen (in diesem Fall
pro Bundesland).
•
Wenn Sie die Aufträge in Datums- oder boolesche Gruppen unterteilen
(indem Sie z. B. Aufträge nach dem Monat gruppieren, in dem sie erteilt
wurden), können Sie den durchschnittlichen Auftragswert pro Gruppe
berechnen, wobei jeweils ein bestimmter Wechsel im Datums- oder
booleschen Feld berücksichtigt wird (in diesem Fall pro Monat).
Crystal Reports-Anwenderhandbuch 173
8
8
Funktionen
Gruppenergebnis
•
Wenn Sie einzelne Werte in Form eines Datenfeldes angeben, können
Sie den Durchschnittswert dieser Datenmenge berechnen. Weitere
Informationen hierzu finden Sie unter Array-Gruppenergebnisfunktionen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Average({Aufträge.Auftragssumme})
Berechnet den Mittelwert aller Werte des Feldes
{Aufträge.Auftragssumme}.
Average({Aufträge.Auftragssumme}, {Kunde.KUNDENNR})
Sucht den Durchschnittsbetrag eines Verkaufs für jeden Kunden.
Das folgende Beispiel gilt für die Crystal-Syntax:
Average ([10,12,32,48])
Ermittelt ein Gruppenergebnis aus den Feldwerten, die in dem Array
stehen.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
StdDev
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
StdDev (Feld)
StdDev (Feld, BedFeld)
StdDev (Feld, BedFeld, Bed)
StdDev (x)
Argumente
174
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
•
x ist ein Array mit Zahlen- oder Währungswerten, die von der
verwendeten Funktion ausgewertet werden können.
Rückgabewert
Zahl
Aktion
Das Programm ermöglicht es Ihnen, für eine Gruppe von Werten Ihres
Berichts die Standardabweichung zu berechnen. Hier ein Beispiel:
•
Sie können die Standardabweichung für alle Werte eines Feldes
berechnen.
•
Sie können die Standardabweichung für alle Werte einer Gruppe
berechnen (z. B. Aufträge nach den Bundesländern gruppieren, in denen
sie erteilt wurden).
•
Sie können die Standardabweichung für alle Werte einer Gruppe
berechnen, wobei die Gruppierung durch Änderungen in einem Datumsoder booleschen Feld gesteuert wird (z. B. Aufträge nach den Monaten
gruppieren, in denen sie erteilt wurden).
•
Wenn Sie eine Gruppe einzelner Werte angeben, können Sie die
Standardabweichung der Werte dieser Gruppe berechnen. Weitere
Informationen hierzu finden Sie unter Array-Gruppenergebnisfunktionen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
StdDev({Datei.ERGEBNISSE})
Berechnet die Standardabweichung aller Werte im Ergebnisfeld.
StdDev({Aufträge.BETRAG}, {Aufträge.KUNDENNR})
Berechnet die Populationsstandardabweichung für die Aufträge in jeder
Auftragsgruppe des Feldes {Aufträge.BETRAG}. Die Aufträge werden in
Gruppen aufgeteilt, wobei immer dann ein Gruppenwechsel erfolgt, wenn
sich der Wert im Feld {Kunde.KUNDENKENNUNG} ändert.
StdDev({Datei.ERGEBNISSE}, {Datei.DATUM},"daily"
Berechnet die Abweichung für jede Gruppe von Labortestergebnissen im
Feld {Datei.ERGEBNISSE}. Die Testergebnisse werden in Gruppen
aufgeteilt, wenn sich der Wert im Feld {Datei.DATUM} in ein neues
Datum ändert.
StdDev({Datei.ERGEBNIS}, {Datei.EINGEBÜRGERT}, "any change"
Gruppiert die Werte des Feldes {Datei.ERGEBNIS} danach, ob der
Getestete eingebürgert ist oder nicht, und berechnet die
Standardabweichung für jede Punktegruppe.
Crystal Reports-Anwenderhandbuch 175
8
8
Funktionen
Gruppenergebnis
Das folgende Beispiel gilt für die Crystal-Syntax:
StdDev([({Datei.MENGE1} * {Datei.PREIS1}),({Datei.MENGE2} *
{Datei.PREIS2}),({Datei.MENGE3} * {Datei.PREIS3}),
({Datei.MENGE4} * {Datei.PREIS4})])
Gibt 36,60 zurück, wobei Menge1 = 2, Preis1 = 10,00, Menge2 = 2,
Preis2 = 2,00, Menge3 = 10, Preis3 = 3,00 und Menge4 = 8, Preis4 =
11,00.
Anmerkungen
Die Funktion StdDev berechnet eine Standardabweichung wie folgt:
•
•
•
•
•
Sie berechnet den Durchschnitt (Mittelwert) der Elemente.
•
Sie berechnet die Standardabweichung als Quadratwurzel der Varianz.
Sie subtrahiert den Durchschnittswert vom Wert jedes Elements.
Sie quadriert die Differenz für jedes Element.
Sie addiert die quadrierten Differenzen aller Elemente.
Sie dividiert die Summe durch eins weniger als die Zahl der Elemente
des Beispiels (N - 1). Das Ergebnis ist die Varianz. Vergleichen Sie
diesen Schritt mit der Funktion PopulationStdDev.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
PopulationStdDev
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
PopulationStdDev (Feld)
PopulationStdDev (Feld, BedFeld)
PopulationStdDev (Feld, BedFeld, Bed)
PopulationStdDev (x)
Argumente
176
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist.
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Weitere Informationen hierzu finden Sie unter Bedingungen für
Gruppenergebnisfunktionen.
•
x ist ein Array mit Zahlen- oder Währungswerten, die von der
verwendeten Funktion ausgewertet werden können.
Rückgabewert
Zahl
Aktion
Das Programm ermöglicht es Ihnen, für eine Gruppe von Werten Ihres
Berichts die Populationsstandardabweichung zu berechnen. Hier ein Beispiel:
•
Sie können die Populationsstandardabweichung für alle Werte eines
Feldes berechnen.
•
Sie können die Populationsstandardabweichung für alle Werte einer
Gruppe berechnen (z. B. Aufträge nach den Bundesländern gruppieren,
in denen sie erteilt wurden).
•
Sie können die Populationsstandardabweichung für alle Werte einer
Gruppe berechnen, wobei die Gruppierung durch Änderungen in einem
Datums- oder booleschen Feld gesteuert wird (z. B. Aufträge nach den
Monaten gruppieren, in denen sie erteilt wurden).
•
Wenn Sie eine Gruppe einzelner Werte angeben, können Sie die
Populationsstandardabweichung der Werte dieser Gruppe berechnen.
Weitere Informationen hierzu finden Sie unter ArrayGruppenergebnisfunktionen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
PopulationStdDev({Datei.ERGEBNIS})
Berechnet die Populationsstandardabweichung aller Werte des Feldes
{Datei.ERGEBNIS} für den gesamten Bericht.
PopulationStdDev({Aufträge. BETRAG},
{Aufträge.KUNDENKENNUNG})
Berechnet die Populationsstandardabweichung für die Aufträge in jeder
Auftragsgruppe des Feldes {Aufträge.BETRAG}. Die Aufträge werden in
Gruppen aufgeteilt, wenn sich der Wert im Feld {Kunde.KUNDENNR}
ändert.
PopulationStdDev({Datei.ERGEBNISSE}, {Datei.DATUM}, "daily")
Berechnet die Abweichung für jede Gruppe von Labortestergebnissen im
Feld {Datei.ERGEBNISSE}. Die Testergebnisse werden in Gruppen
aufgeteilt, wenn sich der Wert im Feld {Datei.DATUM} in ein neues
Datum ändert.
Crystal Reports-Anwenderhandbuch 177
8
8
Funktionen
Gruppenergebnis
Das folgende Beispiel gilt für die Crystal-Syntax:
PopulationStdDev([{Datei.MENGE1}, {Datei.MENGE2},
{Datei.MENGE3}, {Datei.MENGE4}])
Gibt 3,57 zurück, wo Menge1 = 2, Menge2 = 2, Menge3 = 10, und
Menge4 = 8.
Anmerkungen
Die Funktion PopulationStdDev berechnet eine
Populationsstandardabweichung wie folgt:
•
•
•
•
•
Sie berechnet den Durchschnitt (Mittelwert) der Elemente der Population.
•
Sie berechnet die Populationsstandardabweichung als Quadratwurzel
der Populationsvarianz.
Sie subtrahiert den Durchschnittswert vom Wert jedes Elements.
Sie quadriert die Differenz für jedes Element.
Sie addiert die quadrierten Differenzen aller Elemente der Population.
Sie dividiert die Summe durch die Anzahl der Elemente der Population
(N). Das Ergebnis ist die Populationsvarianz. Vergleichen Sie diesen
Schritt mit der Funktion StdDev.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
Variance
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
Variance (Feld)
Variance (Feld, BedFeld)
Variance (Feld, BedFeld, Bed)
Variance (x)
Argumente
178
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
•
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
•
x ist ein Array mit Zahlen- oder Währungswerten, die von der
verwendeten Funktion ausgewertet werden können.
Rückgabewert
Zahl
Aktion
Das Programm ermöglicht es Ihnen, für eine Gruppe von Werten Ihres
Berichts die Varianz zu berechnen. Hier ein Beispiel:
•
Sie können die Gesamtergebnisvarianz für alle Werte eines Feldes
berechnen.
•
Sie können die Varianz für alle Werte einer Gruppe berechnen (z. B.
Aufträge nach den Bundesländern gruppieren, in denen sie erteilt
wurden).
•
Sie können die Standardvarianz für alle Werte einer Gruppe berechnen,
wobei der Gruppenwechsel durch Änderungen in einem Datums- oder
booleschen Feld gesteuert wird (z. B. Aufträge nach den Monaten
gruppieren, in denen sie erteilt wurden).
•
Wenn Sie eine Gruppe einzelner Werte angeben, können Sie die Varianz
der Werte dieser Gruppe berechnen. Weitere Informationen hierzu finden
Sie unter Array-Gruppenergebnisfunktionen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Variance({Datei.BETRAG})
Berechnet die Varianz aller Werte des Feldes {Datei.BETRAG}.
Variance({Datei.ERGEBNISSE}, {Datei.DATUM},"daily")
Berechnet die Abweichung für jede Gruppe von Labortestergebnissen im
Feld {Datei.ERGEBNISSE}. Die Testergebnisse werden in Gruppen
aufgeteilt, wenn sich der Wert im Feld {Datei.DATUM} in ein neues
Datum ändert.
Crystal Reports-Anwenderhandbuch 179
8
8
Funktionen
Gruppenergebnis
Die folgenden Beispiele gelten für die Crystal-Syntax:
Variance({Datei.ERGEBNIS}, {Datei.LEHRER}) %
Variance({Datei.ERGEBNIS})
Gruppiert die Werte des Feldes {Datei.ERGEBNIS} nach Lehrern und
berechnet die Varianz für jeden Lehrer als Prozentsatz der Varianz der
Werte im gesamten Bericht (für alle aufgelisteten Lehrer).
Variance([{Datei.MENGE1}, {Datei.MENGE2}, {Datei.MENGE3},
{Datei.MENGE4}])
Gibt 17,00 zurück, wo Menge1 = 2, Menge2 = 2, Menge3 = 10, und
Menge4 = 8.
Anmerkungen
Die Funktion Variance berechnet eine Varianz wie folgt:
•
•
•
•
•
Sie berechnet den Durchschnitt (Mittelwert) der Elemente.
Sie subtrahiert den Durchschnittswert vom Wert jedes Elements.
Sie quadriert die Differenz für jedes Element.
Sie addiert die quadrierten Differenzen aller Elemente.
Sie dividiert die Summe durch eins weniger als die Zahl der Elemente
des Beispiels (N - 1). Das Ergebnis ist die Varianz. Vergleichen Sie
diesen letzten Schritt mit der Funktion PopulationVariance.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
PopulationVariance
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
PopulationVariance (Feld)
PopulationVariance (Feld, BedFeld)
PopulationVariance (Feld, BedFeld, Bed)
PopulationVariance (x)
Argumente
180
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
•
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
•
x ist ein Array mit Zahlen- oder Währungswerten, die von der
verwendeten Funktion ausgewertet werden können.
Rückgabewert
Zahl
Aktion
Das Programm ermöglicht es Ihnen, für eine Gruppe von Werten Ihres
Berichts die Populationsvarianz zu berechnen. Hier ein Beispiel:
•
Sie können die Gesamtpopulationsvarianz für alle Werte eines Feldes
berechnen.
•
Sie können die Populationsvarianz für alle Werte einer Gruppe
berechnen (z. B. Aufträge nach den Bundesländern gruppieren, in denen
sie erteilt wurden).
•
Sie können die Populationsvarianz für alle Werte einer Gruppe
berechnen, wobei die Gruppierung durch Änderungen in einem Datumsoder booleschen Feld gesteuert wird (z. B. Aufträge nach den Monaten
gruppieren, in denen sie erteilt wurden).
•
Wenn Sie eine Gruppe einzelner Werte angeben, können Sie die
Populationsvarianz der Werte dieser Gruppe berechnen. Weitere
Informationen hierzu finden Sie unter Array-Gruppenergebnisfunktionen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Beispiele zu den Varianten der Funktion PopulationVariance finden Sie,
nachdem Sie auf die entsprechende Gruppenergebnisfunktion geklickt
haben.
PopulationVariance({Datei.VOLKSZÄHLUNG})
Berechnet die Varianz aller Werte des Feldes {Datei.VOLKSZÄHLUNG}.
PopulationVariance({Datei.ERGEBNISSE}, {Datei.VORGANG})
Berechnet anhand des Feldes {Datei.ERGEBNISSE} die
Populationsvarianz für jede Gruppe von Labortestergebnissen. Die
Testergebnisse werden in Gruppen aufgeteilt, wenn sich der Wert im Feld
{Datei.VORGANG} ändert.
Crystal Reports-Anwenderhandbuch 181
8
8
Funktionen
Gruppenergebnis
PopulationVariance({Datei.ERGEBNIS}, {Datei.EINGEBÜRGERT},
"any change")
Gruppiert die Werte des Feldes {Datei.ERGEBNIS} danach, ob der
Getestete eingebürgert ist oder nicht, und berechnet die
Populationsvarianz für jede Punktegruppe.
Die folgenden Beispiele gelten für die Crystal-Syntax:
PopulationVariance({Datei.ERGEBNIS}, {Datei.LEHRER}) %
PopulationVariance({Datei.ERGEBNIS})
Gruppiert die Werte des Feldes {Datei.ERGEBNIS} nach Lehrern und
berechnet die Populationsvarianz für jeden Lehrer als Prozentsatz der
Populationsvarianz der Werte im gesamten Bericht (für alle aufgelisteten
Lehrer).
PopulationVariance([2,4,6,8,10])
Gibt 8 zurück.
Anmerkungen
Die Funktion PopulationVariance berechnet eine Populationsvarianz wie folgt:
•
•
•
•
•
Sie berechnet den Durchschnitt (Mittelwert) der Elemente der Population.
Sie subtrahiert den Durchschnittswert vom Wert jedes Elements.
Sie quadriert die Differenz für jedes Element.
Sie addiert die quadrierten Differenzen aller Elemente der Population.
Sie dividiert die Summe durch die Anzahl der Elemente der Population
(N). Das Ergebnis ist die Populationsvarianz. Vergleichen Sie diesen
letzten Schritt mit der Funktion Variance.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
Maximum
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
182
Maximum (Feld)
Maximum (Feld, BedFeld)
Maximum (Feld, BedFeld, Bed)
Maximum (x)
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Argumente
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
•
x ist ein Array oder Bereich von Werten, die von der verwendeten
Funktion ausgewertet werden können.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Zahl
Aktion
Das Programm ermöglicht es Ihnen, aus einer Gruppe von Werten den
höchsten Wert zu ermitteln. Hier ein Beispiel:
•
Wenn ein Umsatzbericht ein Feld beinhaltet, das den Betrag jedes
Auftrags enthält, können Sie den höchsten Auftragsbetrag aller im
Bericht vorkommenden Aufträge ermitteln (der Höchstbetrag als
Gesamtergebnis).
•
Wenn Sie Aufträge in Gruppen unterteilen (z. B. die Aufträge nach den
Bundesländern gruppieren, in denen sie erteilt wurden), können Sie den
höchsten Auftragsbetrag pro Gruppe ermitteln (in diesem Fall pro
Bundesland).
•
Wenn Sie Aufträge in Datums- oder boolesche Gruppen aufteilen (z. B.
Aufträge nach den Monaten gruppieren, in denen sie erteilt wurden),
können Sie den höchsten Auftragsbetrag pro Gruppe, basierend auf
einer bestimmten Änderung im Datums- oder booleschen Feld, ermitteln
(in diesem Fall pro Monat).
•
Wenn Sie eine Gruppe einzelner Werte angeben, können Sie den
Höchstwert der Gruppe ermitteln. Informationen zu dieser Art von
Höchstbetrag finden Sie unter Array-Gruppenergebnisfunktionen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Maximum({Aufträge.Auftragssumme})
Gibt den höchsten Wert im Feld {Aufträge.Auftragssumme} zurück.
Crystal Reports-Anwenderhandbuch 183
8
8
Funktionen
Gruppenergebnis
Maximum({Aufträge.BETRAG}, {Aufträge.KUNDENNR})
Identifiziert den größten Auftrag in jeder Auftragsgruppe im Feld
{Aufträge.BETRAG} (d. h. den größten Auftrag für jeden Kunden). Die
Aufträge werden in Gruppen aufgeteilt, wenn sich der Wert im Feld
{Kunde.KUNDENNR} ändert.
Maximum({Aufträge.BETRAG}, {Aufträge.AUFTRAGSDATUM},
"monthly")
Identifiziert den größten Auftrag in jeder Auftragsgruppe im Feld
{Aufträge.BETRAG} (d. h. den größten Auftrag für jeden Monat). Die
Aufträge werden in Gruppen aufgeteilt, wenn sich der Wert im Feld
{Aufträge.AUFTRAGSDATUM} in einen neuen Monat ändert.
Das folgende Beispiel gilt für die Crystal-Syntax:
Die Funktion Maximum ermöglicht es Ihnen außerdem, einen
Mindestwert für die Berechnung festzulegen. Hier ein Beispiel: So wird
mit Maximum([{Datei.SALDO}, 500]) beispielsweise ein Mindestwert von
500 für die Berechnung festgelegt. Der Ausdruck gibt in diesem Beispiel
immer den Saldo zurück, es sei denn, er liegt unter 500. In diesem Fall
wird der Mindestwert von 500 zurückgegeben. Folglich:
Maximum([{Datei.GEWINNE}, 500]) = {Datei.GEWINNE}
Wo Gewinne > 500.
Hinweis:
•
Wenn Sie diese Funktion in einer Formel verwenden, wird die Formel
zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
•
Bei Verwendung dieser Funktion können Sie mit Hilfe der Funktion
HasUpperBound (x) testen, ob der Gültigkeitsbereich ein Maximum hat,
bevor Sie das Maximum ermitteln.
Minimum
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
184
Minimum (Feld)
Minimum (Feld, BedFeld)
Minimum (Feld, BedFeld, Bed)
Minimum (x)
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Argumente
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
•
x ist ein Array oder Bereich von Werten, die von der verwendeten
Funktion ausgewertet werden können.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Bruchzahl
Aktion
Das Programm ermöglicht es Ihnen, aus einer Gruppe von Werten den
niedrigsten Wert zu ermitteln. Hier ein Beispiel:
•
Wenn ein Umsatzbericht ein Feld beinhaltet, das den Betrag jedes
Auftrags enthält, können Sie den niedrigsten Auftragsbetrag aller im
Bericht vorkommenden Aufträge ermitteln (der niedrigste Betrag als
Gesamtergebnis).
•
Wenn Sie Aufträge in Gruppen unterteilen (z. B. Aufträge nach den
Bundesländern gruppieren, in denen sie erteilt wurden), können Sie den
niedrigsten Auftragsbetrag pro Gruppe ermitteln (in diesem Fall pro
Bundesland).
•
Wenn Sie Aufträge in Datums- oder boolesche Gruppen unterteilen (z. B.
Aufträge nach den Monaten gruppieren, in denen sie erteilt wurden),
können Sie den niedrigsten Auftragsbetrag pro Gruppe basierend auf
einer bestimmten Änderung in dem Datums- oder booleschen Feld
ermitteln (in diesem Fall pro Monat).
•
Wenn Sie eine Gruppe einzelner Werte angeben, können Sie den
niedrigsten Wert der Gruppe ermitteln. Informationen zu dieser Art von
niedrigstem Betrag finden Sie unter Array-Gruppenergebnisfunktionen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Minimum({Datei.MENGE})
Gibt den niedrigsten Wert im Feld {Datei.MENGE} zurück.
Crystal Reports-Anwenderhandbuch 185
8
8
Funktionen
Gruppenergebnis
Minimum({Aufträge.BETRAG}, {Aufträge.KUNDENNR})
Identifiziert den kleinsten Auftrag in jeder Auftragsgruppe im Feld
{Aufträge.BETRAG} (d. h. den kleinsten Auftrag für jeden Kunden). Die
Aufträge werden in Gruppen aufgeteilt, wenn sich der Wert im Feld
{Kunde.KUNDENNR} ändert.
Minimum({Aufträge.MENGE}, {Aufträge.AUFTRAGSDATUM},
"monthly")
Identifiziert den kleinsten Auftrag in jeder Auftragsgruppe im Feld
{Aufträge.BETRAG} (d. h. den kleinsten Auftrag für jeden Monat). Die
Aufträge werden in Gruppen aufgeteilt, wenn sich der Wert im Feld
{Aufträge.AUFTRAGSDATUM} in einen neuen Monat ändert.
Das folgende Beispiel gilt für die Crystal-Syntax:
Die Funktion Minimum ermöglicht es Ihnen außerdem, einen Höchstwert für
die Berechnung festzulegen. Hier ein Beispiel: So wird mit
Minimum([{Datei.PROVISION}, 2500]) die aufgelaufene Provision bis zu
einem Höchstwert von 2500 zurückgegeben. Wenn die aufgelaufene
Provision 2.500 € überschreitet, gibt der Ausdruck 2500 zurück. Folglich:
Minimum([{Datei.PROVISION}, 2500])
Gibt 1575 zurück, wo Provision = 1575.
Hinweis:
•
Wenn Sie diese Funktion in einer Formel verwenden, wird die Formel
zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
•
Bei Verwendung dieser Funktion können Sie mit Hilfe der Funktion
HasLowerBound (x) testen, ob der Gültigkeitsbereich ein Minimum hat,
bevor Sie das Minimum ermitteln.
Count
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
Count (Feld)
Count (Feld, BedFeld)
Count (Feld, BedFeld, Bed)
Count (x)
Argumente
•
186
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
•
x ist ein Datenfeld mit Werten, die von der verwendeten Funktion
ausgewertet werden können.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Zahl
Aktion
Das Programm ermöglicht es Ihnen, die Anzahl der Werte, die in Ihrem
Bericht vorhanden sind, für ein angegebenes Feld zu berechnen. Hier ein
Beispiel:
•
Wenn ein Umsatzbericht alle erteilten Aufträge und zu jedem Auftrag den
Betrag enthält, können Sie die Anzahl aller im Bericht erscheinenden
Aufträge berechnen (eine Gesamtanzahl).
•
Wenn Sie Aufträge in Gruppen unterteilen (z. B. Aufträge nach den
Bundesländern gruppieren, in denen sie erteilt wurden), können Sie die
Anzahl der Aufträge pro Gruppe berechnen (in diesem Fall pro
Bundesland).
•
Wenn Sie Aufträge in Datums- oder boolesche Gruppen unterteilen (z. B.
Aufträge nach den Monaten gruppieren, in denen sie erteilt wurden),
können Sie die Anzahl der Aufträge pro Gruppe berechnen, wobei jeweils
ein bestimmter Wechsel im Datums- oder booleschen Feld berücksichtigt
wird (in diesem Fall pro Monat).
•
Wenn Sie eine Gruppe einzelner Werte angeben, können Sie die Anzahl
der Werte innerhalb der Gruppe berechnen. Informationen zu dieser Art
von Zählung finden Sie unter Array-Gruppenergebnisfunktionen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Count({Aufträge.BETRAG}, {Aufträge.KUNDENNR})
Diese Formel zählt die Anzahl der Aufträge in jeder Auftragsgruppe im
Feld {Aufträge.Auftragssumme} (d. h. die Gesamtanzahl der Aufträge für
jeden Kunden). Die Aufträge werden in Gruppen aufgeteilt, wenn sich der
Wert im Feld {Kunde.KUNDENNR} ändert.
Crystal Reports-Anwenderhandbuch 187
8
8
Funktionen
Gruppenergebnis
Count({Aufträge.Auftragssumme}, {Aufträge.AUFTRAGSDATUM},
"monthly")
Diese Formel zählt die Anzahl der Aufträge in jeder Auftragsgruppe im
Mengenfeld (d. h. die Gesamtanzahl der Aufträge für jeden Monat). Die
Aufträge werden in Gruppen aufgeteilt, wenn sich der Wert im Feld
{Aufträge.AUFTRAGSDATUM} in einen neuen Monat ändert.
Die folgenden Beispiele gelten für die Crystal-Syntax:
If Count({Aufträge.AUFTRAGSKENNUNG}) >= 100 Then
"Glückwunsch: Sie haben Ihr Pensum erfüllt!"
Else
""
Druckt den Glückwunsch, wenn die Anzahl der Aufträge größer als oder
gleich 100 ist. Anderenfalls wird nichts gedruckt.
Count([1,2,3,4,5])
Gibt 5 zurück. Zählt, wie viele Werte der Array insgesamt enthält.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
DistinctCount
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
DistinctCount (Feld)
DistinctCount (Feld, BedFeld)
DistinctCount (Feld, BedFeld, Bed)
DistinctCount (x)
Argumente
188
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
•
x ist ein Datenfeld mit Werten, die von der verwendeten Funktion
ausgewertet werden können.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Rückgabewert
Zahl
Aktion
Das Programm ermöglicht es Ihnen, die Anzahl der eindeutigen Werte zu
ermitteln, die in Ihrem Bericht vorkommen. Hier ein Beispiel:
•
Wenn ein Umsatzbericht alle von den Kunden erteilten Aufträge enthält,
können Sie die Gesamtanzahl der im Bericht vorkommenden
unterschiedlichen Kunden berechnen (ein Gesamtergebnis der Anzahl
eindeutiger Werte), wobei doppelt vorkommende Datensätze
ausgeschlossen werden. Hat ein Kunde mehrere Aufträge erteilt, werden
die doppelten Datensätze dieses Kunden ignoriert.
•
Wenn Sie Aufträge in Gruppen unterteilen (z. B. Aufträge nach den
Bundesländern gruppieren, in denen sie erteilt wurden), können Sie die
Anzahl unterschiedlicher Kunden pro Gruppe berechnen (in diesem Fall
pro Bundesland). Alle Kunden, die mehr als einen Auftrag erteilt haben
und mehrmals in einer Gruppe vorkommen, werden nur einmal gezählt.
•
Wenn Sie Aufträge in Datums- oder boolesche Gruppen unterteilen (z. B.
Aufträge nach den Monaten gruppieren, in denen sie erteilt wurden),
können Sie für jede Gruppe die Anzahl unterschiedlicher Kunden
berechnen, wobei jeweils eine bestimmte Änderung im D Hat ein Kunde
mehr als einen Auftrag in einem Monat erteilt, werden doppelte Instanzen
dieses Kunden ignoriert.
•
Wenn Sie eine Gruppe einzelner Werte angeben, können Sie die Anzahl
unterschiedlicher Werte dieser Gruppe berechnen. Werte, die in der
Gruppe mehrfach vorkommen, werden nur einmal gezählt. Informationen
zur Zählung von eindeutigen Werten finden Sie unter ArrayGruppenergebnisfunktionen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DistinctCount({Kunde.Region})
Ermittelt die Anzahl unterschiedlicher Bundesländer, die im Feld
{Kunde.Region} angegeben sind. Alle Wiederholungen werden ignoriert.
DistinctCount({Kunde.ORT}, {Kunde.Region})
Ermittelt für jede Regionsgruppe die Anzahl unterschiedlicher Städte.
DistinctCount({Aufträge.KUNDENNR}, {Aufträge.AUFTRAGSDATUM},
"weekly")
Crystal Reports-Anwenderhandbuch 189
8
8
Funktionen
Gruppenergebnis
Ermittelt die Anzahl unterschiedlicher Kunden, mit denen Kontakt
aufgenommen wurde, wobei Nachfassbesuche nicht berücksichtigt
werden. Die Kunden werden in Gruppen unterteilt, wenn sich der Wert im
Feld {Aufträge.AUFTRAGSDATUM} ändert (neue Woche).
Das folgende Beispiel gilt für die Crystal-Syntax:
DistinctCount([1,3,5,3,2,5])
Gibt 4 zurück. Zählt, wie viele unterschiedliche Werte der Array enthält.
Doppelte Werte werden ignoriert.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
Anmerkungen
Die Funktion DistinctCount ermittelt die Anzahl unterschiedlicher Werte in
einem Feld. Doppelte Werte werden ignoriert.
Correlation
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
Correlation (Feld, Feld)
Correlation (Feld, Feld, BedFeld)
Correlation (Feld, Feld, BedFeld, Bed)
Argumente
•
•
•
Feld ist ein beliebiges numerisches Feld.
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Bruchzahl
190
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Aktion
Das Programm ermöglicht es Ihnen, die Korrelation der angegebenen Felder
zu berechnen (d. h. inwieweit die Felder auf gleiche Weise variieren). Hier ein
Beispiel:
•
Sie können die Korrelation zweier Felder für alle Datensätze im Bericht
berechnen.
•
Sie können die Korrelation zweier Felder für alle Werte in einer Gruppe
berechnen (z. B. Aufträge gruppiert nach den Bundesländern, in denen
sie erteilt wurden).
•
Sie können die Korrelation zweier Felder für alle Werte in einer Gruppe
berechnen, wobei der Gruppenwechsel durch Änderungen in einem
Datums- oder booleschen Feld gesteuert wird (z. B. Aufträge nach den
Monaten gruppieren, in denen sie erteilt wurden).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Correlation({Kunde.KUNDENNR}, {Kunde.KREDITKENNUNG})
Berechnet die Korrelation zwischen dem Feld {Kunde.KUNDENNR} und
dem Feld {Kunde.KREDITKENNUNG}.
Correlation({Aufträge.KUNDENNR}, {Aufträge.KREDITKENNUNG},
{Kunde.Region})
Berechnet die Korrelation zwischen dem Feld {Aufträge.KUNDENNR}
und dem Feld {Aufträge.KREDITKENNUNG} für jede Region.
Korrelation({Aufträge.KUNDENNR}, {Aufträge.KREDITKENNUNG},
{Kunde.Region}, "monthly")
Berechnet die Korrelation zwischen dem Feld {Aufträge.KUNDENNR}
und dem Feld {Aufträge.KREDITKENNUNG} für alle Werte in jeder
Regionsgruppe und für jeden Monat.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
Anmerkungen
Die Korrelation ist immer eine Zahl zwischen -1 und 1, es sei denn, sie ist
nicht definiert. In diesem Fall wird der Funktion ein Nullwert (0) zugewiesen.
Bei einem Nullwert (0) besteht keine Korrelation zwischen den Feldern.
Crystal Reports-Anwenderhandbuch 191
8
8
Funktionen
Gruppenergebnis
Covariance
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
Covariance (Feld, Feld)
Covariance (Feld, Feld, BedFeld)
Covariance (Feld, Feld, BedFeld, Bed)
Argumente
•
Feld ist ein beliebiges numerisches Feld, das von der Funktion
ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Bruchzahl
Aktion
Die Kovarianz ist der Grad der linearen Beziehung zwischen Variablenpaaren
(d.h. die Tendenz zweier Felder, zusammen zu variieren). Felder sind
kovariant, wenn sie nach einer bestimmten mathematischen Beziehung
variieren. Der Umfang eines Kreises und der Radius eines Kreises sind
kovariant.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Covariance({Tabelle.FELD1}, {Tabelle.FELD2})
Berechnet die Kovarianz der beiden Felder und gibt sie als Bruchzahl
zurück.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
192
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Anmerkungen
Die Funktion Covariance berechnet die Kovarianz wie folgt:
•
Sie berechnet den Durchschnittswert (Mittelwert) der Elemente in jeder
Stichprobe.
•
Sie subtrahiert den Durchschnittswert vom Wert jedes Elements in
beiden Stichproben.
•
•
Sie multipliziert die Differenz für jedes Elementenpaar.
Sie berechnet den Durchschnittswert (Mittelwert) für alle Produkte dieser
Multiplikation. Das Ergebnis ist die Kovarianz.
WeightedAverage
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
WeightedAverage (Feld, Feld)
WeightedAverage (Feld, Feld, BedFeld)
WeightedAverage (Feld, Feld, BedFeld, Bed)
Argumente
•
Feld ist ein gültiges numerisches Datenbank- oder Formelfeld, das von
dieser Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Bruchzahl
Aktion
Das Programm ermöglicht es Ihnen, den gewichteten Mittelwert für die
angegebenen Felder zu ermitteln. Beim Berechnen eines gewichteten
Mittelwertes wird der Durchschnittswert eines Feldes ermittelt und anhand
der Werte in einem anderen Feld der Beitrag jedes Wertes aus dem ersten
Feld zum Durchschnittswert „abgewogen“. Bei einem normalen
Durchschnittswert entsprechen alle gewichteten Werte 1.
Crystal Reports-Anwenderhandbuch 193
8
8
Funktionen
Gruppenergebnis
Hier ein Beispiel:
•
•
Sie können den gewichteten Mittelwert zweier Felder berechnen.
•
Sie können den gewichteten Mittelwert zweier Felder für alle Werte einer
Gruppe berechnen, wobei die Gruppierung durch Änderungen in einem
Datums- oder booleschen Feld gesteuert wird (z. B. Aufträge nach den
Monaten gruppieren, in denen sie erteilt wurden).
Sie können den gewichteten Mittelwert zweier Felder für alle Werte in
einer Gruppe berechnen (z. B. Aufträge nach den Bundesländern
gruppieren, in denen sie erteilt wurden).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
WeightedAverage({Tabelle.FELD1}, {Tabelle.FELD2})
Gibt 3,5 zurück, wobei die beiden Felder jeweils vier Werte enthalten.
Feld1 enthält die Werte 3, 2, 5 und 1. Feld2 enthält die Werte 0, 1, 1 und
0. Die Funktion WeightedAverage führt folgende Berechnung durch: (3*0
+ 2*1 + 5*1 + 1*0)/sum{Tabelle.FELD2}) = 3,5.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
Median
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
Median (Feld)
Median (Feld, BedFeld)
Median (Feld, BedFeld, Bed)
Argumente
194
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Rückgabewert
Bruchzahl
Aktion
Berechnet den Medianwert der gegebenen numerischen Felder. Dabei
handelt es sich um den Medianwert in einer numerischen Wertefolge (oder
den Durchschnittswert der beiden mittleren Werte in einer geradzahligen
Wertefolge).
Hier ein Beispiel:
•
•
Sie können den Medianwert aller Werte in einem Feld berechnen.
•
Sie können den Medianwert aller Werte innerhalb einer Gruppe
berechnen, wobei die Gruppierung durch Änderungen in einem Datumsoder booleschen Feld gesteuert wird (z. B. Aufträge nach den Monaten
gruppieren, in denen sie erteilt wurden).
Sie können den Medianwert aller Werte im Feld innerhalb einer Gruppe
berechnen (z. B. Aufträge nach den Bundesländern gruppieren, in denen
sie erteilt wurden).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Median({Kunde.Vorjahresumsatz})
Gibt 29.087 € zurück, wobei die Werte im Feld {Kunde.Vorjahresumsatz}
27.014 €, 28.000 €, 29.087 €, 34.500 € und 48.260 € entsprechen.
Median({Kunde.Vorjahresumsatz}, {Kunde.Region)
Gruppiert das Feld {Kunde.Vorjahresumsatz} nach Region und gibt den
Medianwert des Feldes pro Region zurück.
Median({Aufträge.Auftragssumme}, {Kunde.Region}, "monthly")
Gruppiert die Werte im Feld {Aufträge.Auftragssumme} nach Region und
gibt den Medianwert der Auftragsmenge für jede Region pro Monat
zurück.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
Crystal Reports-Anwenderhandbuch 195
8
8
Funktionen
Gruppenergebnis
PthPercentile
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
PthPercentile (P, Feld)
PthPercentile (P, Feld, BedFeld)
PthPercentile (P, Feld, BedFeld, Bed)
Argumente
•
•
P ist eine beliebige ganze Zahl zwischen 0 und 100.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Feld ist ein beliebiges Zahlenfeld oder Währungsfeld, das von der
Funktion ausgewertet werden kann.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist.
Weitere Informationen hierzu finden Sie unter Bedingungen für
Gruppenergebnisfunktionen.
Rückgabewert
Number- oder Currency-Wert
Aktion
Berechnet das Perzentil für einen angegebenen Wert (P) in einem Numberoder Währungsfeld.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
PthPercentile(20, {Kunde.Vorjahresumsatz})
Gibt 2.302 € zurück als Wert im 20sten Perzentil (wenn 20 % im Feld
{Kunde.Vorjahresumsatz} unter 2.302 € liegen.
PthPercentile(P, {Kunde.Vorjahresumsatz}, {Kunde.Region})
Gruppiert das Feld {Kunde.Vorjahresumsatz} nach Region und gibt das
Perzentil des Wertes für P im Feld {Kunde.Vorjahresumsatz} per Region
zurück.
196
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
PthPercentile(P,{Aufträge.Auftragssumme}, {Kunde.Region},
"monthly")
Gruppiert die Werte im Feld {Aufträge.Auftragssumme} nach Region und
gibt dann das Perzentil des Wertes für P im Feld
{Aufträge.Auftragssumme} für jede Region pro Monat zurück.
Anmerkungen
P = 50 (prozentual 50) entspricht dem von der Funktion Median (Medianwert)
zurückgegebenen Wert.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
NthLargest
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
NthLargest (N, Feld)
NthLargest (N, Feld, BedFeld)
NthLargest (N, Feld, BedFeld, Bed)
Argumente
•
•
N ist eine beliebige Ganzzahl von 1 bis (einschließlich) 100.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Bruchzahl
Aktion
Bestimmt den N.-größten Wert in einem gegebenen Feld, entweder für den
ganzen Bericht oder für jede Instanz der Gruppe (BedFeld).
Crystal Reports-Anwenderhandbuch 197
8
8
Funktionen
Gruppenergebnis
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
NthLargest(1, {Kunde.KUNDENNR}
Gibt 50 zurück, wobei das Feld {Kunde.KUNDENNR} numerische Werte
im Bereich von 12 bis 50 enthält.
NthLargest(5, {Kunde.Kundenname}, {Kunde.Region})
Gibt den fünftgrößten Wert pro Region im Feld {Kunde.Kundenname}
zurück.
NthLargest(1, {Aufträge.Auftragssumme}, {Kunde.Region},
"monthly")
Gruppiert die Werte im Feld {Aufträge.Auftragssumme} nach Region und
gibt dann den größten Wert im Feld {Aufträge.Auftragssumme} für jede
Region pro Monat zurück.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
NthSmallest
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
NthSmallest (N, Feld)
NthSmallest (N, Feld, BedFeld)
NthSmallest (N, Feld, BedFeld, Bed)
Argumente
•
•
N ist eine beliebige Ganzzahl von 1 bis (einschließlich) 100.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Bruchzahl
198
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Aktion
Bestimmt den N.-kleinsten Wert in einem gegebenen Feld, entweder für den
ganzen Bericht oder für jede Instanz der Gruppe (BedFeld).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
NthSmallest (1, {Kunde.KUNDENNR}
Gibt 12 zurück, wobei das Feld {Kunde.KUNDENNR} numerische Werte
im Bereich von 12 bis 50 enthält.
NthSmallest(1, {Kunde.Kundenname}, {Kunde.Region})
Gibt den kleinsten Wert pro Region im Feld {Kunde.Kundenname}
zurück.
NthSmallest({Aufträge.Auftragssumme}, {Kunde.Region},
"monthly")
Gruppiert die Werte im Feld {Aufträge.Auftragssumme} nach Region und
gibt dann den kleinsten Wert im Feld {Aufträge.Auftragssumme} für jede
Region pro Monat zurück.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
Mode
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
Mode (Feld)
Mode (Feld, BedFeld)
Mode (Feld, BedFeld, Bed)
Argumente
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Crystal Reports-Anwenderhandbuch 199
8
8
Funktionen
Gruppenergebnis
Rückgabewert
Bruchzahl
Aktion
Identifiziert den am meisten vorkommenden Wert.
Hier ein Beispiel:
•
•
Sie können den Modus aller Werte in einem Feld berechnen.
•
Sie können den Modus aller Werte innerhalb einer Gruppe berechnen,
wobei die Gruppierung durch Änderungen in einem Datums- oder
booleschen Feld gesteuert wird (z. B. Aufträge nach den Monaten
gruppieren, in denen sie erteilt wurden).
Sie können den Modus aller Werte in einem Feld innerhalb einer Gruppe
berechnen (z. B. Aufträge nach den Bundesländern gruppieren, in denen
sie erteilt wurden).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Modus({Kunde.Kundenname})
Gibt den Modus (den am meisten vorkommenden Wert) für das Feld
{Kunde.Kundenname} zurück.
Mode({Kunde.Kundenname}, {Kunde.Region})
Gruppiert die Werte im Feld {Kunde.Kundenname} nach Region und gibt
dann den Modus für dieses Feld pro Region zurück.
Mode({Kunde.Kundenname}, {Kunde.Region}, "monthly")
Gruppiert die Werte im Feld {Kunde.Kundenname} nach Region und gibt
dann den Modus für dieses Feld pro Region und Monat zurück.
Anmerkungen
Die Funktion Mode entspricht der Funktion NthMostFrequent, wenn
Folgendes zutrifft: N = 1.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
200
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
NthMostFrequent
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
NthMostFrequent (N, Feld)
NthMostFrequent (N, Feld, BedFeld)
NthMostFrequent (N, Feld, BedFeld, Bed)
Rückgabewert
Bruchzahl
Argumente
•
•
N ist eine beliebige Ganzzahl von 1 bis (einschließlich) 100.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld, das von der
Funktion ausgewertet werden kann.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Aktion
Bestimmt den N.-häufigsten Wert in einem gegebenen Feld, entweder für den
ganzen Bericht oder für jede Instanz der Gruppe (BedFeld). Wenn die Werte
im Feld nur einmal erscheinen, gibt die Funktion standardmäßig den
Mindestwert zurück.
Typische Verwendung
Sie können diese Funktion verwenden, um extrem hohe oder niedrige Werte
in einem bestimmten Feld hervorzuheben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
NthMostFrequent(1, {Kunde.Vorjahresumsatz})
Gibt 29.087 € zurück, wobei der Wert 29.087 € am häufigsten im Feld
{Kunde.Vorjahresumsatz} erscheint.
Crystal Reports-Anwenderhandbuch 201
8
8
Funktionen
Gruppenergebnis
NthMostFrequent(2, {Kunde.Vorjahresumsatz})
Gibt 34.700 € zurück, wobei 34.700 € der zweithäufigste Wert im Feld
Vorjahresumsatz ist.
NthMostFrequent(1, {Kunde.Vorjahresumsatz}, {Kunde.Region})
Gibt 48.000 € für eine Instanz der Gruppe Kunde.Region, wobei 48.000 €
der häufigste Wert in der Gruppe ist; gibt 34.000 € für eine andere
Gruppeninstanz zurück, wobei 34.000 € der häufigste Wert für jene
Instanz ist; gibt 9.000 € für eine dritte Gruppeninstanz, wobei keiner der
Werte für diese Instanz wiederholt wird, und 9.000 € der niedrigste Wert
ist.
Anmerkungen
Wenn mehrere Werte mit der gleichen Häufigkeit auftreten, wird der kleinste
Wert als Wert mit der größten Häufigkeit angesehen. Wenn beispielsweise:
NthMostFrequent(1, {Kunde.Vorjahresumsatz})
einen Wert von 29.087 € zurückgibt und ein anderer Wert, der größer ist als
29.087 € (z. B. 35.000 €), genauso oft erscheint, gibt NthMostFrequent mit N
= 1 trotzdem 29.087 € zurück, da dies der kleinere Wert ist.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
PercentOfSum
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
•
•
PercentOfSum (Feld, BedFeld)
PercentOfSum (Feld, BedFeld, Bed)
PercentOfSum (Feld, InneresBedFeld, ÄußeresBedFeld)
PercentOfSum (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld)
PercentOfSum (Feld, InneresBedFeld, ÄußeresBedFeld, ÄußereBed)
PercentOfSum (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld,
ÄußereBed)
Argumente
202
•
Feld ist ein beliebiges Zahlenfeld oder Währungsfeld, das von der
Funktion ausgewertet werden kann.
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
•
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist.
Weitere Informationen hierzu finden Sie unter Bedingungen für
Gruppenergebnisfunktionen.
•
Das Feld InneresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
InnereBed ist eine Zeichenfolge, die den Gruppierungstyp für
InneresBedFeld angibt. Sie können dieses Argument nur dann festlegen,
wenn InneresBedFeld ein Feld des Typs Date, Time, DateTime oder ein
boolesches Feld ist.
•
Das Feld ÄußeresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
ÄußereBed ist eine Zeichenfolge, die den Gruppierungstyp für
ÄußeresBedFeld angibt. Sie können dieses Argument nur dann
festlegen, wenn ÄußeresBedFeld ein Feld des Typs Date, Time,
DateTime oder ein boolesches Feld ist.
Weitere Informationen hierzu finden Sie unter Bedingungen für
Gruppenergebnisfunktionen.
Rückgabewert
Zahlenwert
Aktion
PercentOfSum (Feld, BedFeld) hat dieselbe Wirkung wie: 100 * Sum (Feld,
BedFeld) / Sum (Feld). Damit wird die Summe der Werte im Feld "Feld" für
die durch BedFeld festgelegte Gruppe als Prozentanteil des
Gesamtergebnisses ausgedrückt.
PercentOfSum (Feld, BedFeld, Bed) hat dieselbe Wirkung wie: 100 * Sum
(Feld, BedFeld) / Sum (Feld). Mit dem String-Argument Bed werden weitere
zusätzliche Informationen angegeben, um die Gruppierung genau
festzulegen. Wenn „BedFeld“ ein Datumsfeld ist, dann kann für die
Gruppierung „täglich“, „wöchentlich“ oder „monatlich“ usw. festgelegt werden.
PercentOfSum (Feld, InneresBedFeld, ÄußeresBedFeld) hat dieselbe
Wirkung wie: 100 * Sum (Feld, InneresBedFeld) / Sum (Feld,
ÄußeresBedFeld). Damit wird die Summe der Werte im Feld "Feld" für die
durch InneresBedFeld festgelegte Gruppe als Prozentanteil der Summe für
die durch ÄußeresBedFeld festgelegte Gruppe ausgedrückt.
Crystal Reports-Anwenderhandbuch 203
8
8
Funktionen
Gruppenergebnis
PercentOfSum (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld) hat
dieselbe Wirkung wie: 100 * Sum (Feld, InneresBedFeld, InnereBed) / Sum
(Feld, ÄußeresBedFeld).
PercentOfSum (Feld, InneresBedFeld, ÄußeresBedFeld, ÄußereBed) hat
dieselbe Wirkung wie: 100 * Sum (Feld, InneresBedFeld) / Sum (Feld,
ÄußeresBedFeld, ÄußereBed).
PercentOfSum (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld,
ÄußereBed) hat dieselbe Wirkung wie: 100 * Sum (Feld, InneresBedFeld,
InnereBed) / Sum (Feld, ÄußeresBedFeld, ÄußereBed).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
PercentOfSum ({Aufträge.Auftragssumme},
{Aufträge.Auftragsdatum}, "annually")
Gibt den Gesamtwert der in einem angegebenen Jahr bestellten Aufträge
als Prozentanteil am Gesamtwert aller Aufträge zurück.
PercentOfSum({Aufträge.Auftragssumme}, {Aufträge.Versand
durch})
Gibt den Gesamtwert der durch ein angegebenes Transportunternehmen
gelieferten Aufträge als Prozentanteil am Gesamtwert aller Aufträge
zurück.
PercentOfSum ({Produkt.Preis (SRP)}, {Produkt.Größe},
{Produkt.Produktklasse})
Gibt den Gesamtpreis der Produkte einer angegebenen Größe und
Klasse als Prozentanteil am Gesamtpreis der Produkte dieser Klasse
zurück.
Anmerkungen
Diese Funktion und weitere Prozentanteilfunktionen dienen dazu,
Prozentgruppenergebnisfelder zu unterstützen. Die in den Argumenten
angegebenen Gruppierungen müssen im Bericht tatsächlich vorhanden sein,
damit der Aufruf der Gruppenergebnisfunktion gelingen kann.
PercentOfAverage
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
204
PercentOfAverage (Feld, BedFeld)
PercentOfAverage (Feld, BedFeld, Bed)
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
•
•
•
PercentOfAverage (Feld, InneresBedFeld, äußeresBedFeld)
•
PercentOfAverage (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld,
ÄußereBed)
PercentOfAverage (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld)
PercentOfAverage (Feld, InneresBedFeld, ÄußeresBedFeld,
ÄußereBed)
Argumente
•
Feld ist ein beliebiges Zahlenfeld oder Währungsfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
•
Das Feld InneresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
InnereBed ist eine Zeichenfolge, die den Gruppierungstyp für
InneresBedFeld angibt. Sie können dieses Argument nur dann festlegen,
wenn InneresBedFeld ein Feld des Typs Date, Time, DateTime oder ein
boolesches Feld ist.
•
Das Feld ÄußeresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
ÄußereBed ist eine Zeichenfolge, die den Gruppierungstyp für
ÄußeresBedFeld angibt. Sie können dieses Argument nur dann
festlegen, wenn ÄußeresBedFeld ein Feld des Typs Date, Time,
DateTime oder ein boolesches Feld ist.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist.
Weitere Informationen über zulässige Zeichenfolgen für dieses Argument
finden Sie unter Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Zahlenwert
Aktion
PercentOfAverage (Feld, BedFeld) hat dieselbe Wirkung wie: 100 *
Average (Feld, BedFeld) / Average (Feld). Damit wird der Durchschnitt der
Werte im Feld "Feld" für die durch BedFeld festgelegte Gruppe als
Prozentanteil des Durchschnitts aller Werte von Feld ausgedrückt.
Crystal Reports-Anwenderhandbuch 205
8
8
Funktionen
Gruppenergebnis
PercentOfAverage (Feld, BedFeld, Bed) hat dieselbe Wirkung wie: 100 *
Average (Feld, BedFeld, Bed) / Average (Feld). Mit dem String-Argument Bed
werden weitere zusätzliche Informationen angegeben, um die Gruppierung
genau festzulegen. Wenn „BedFeld“ ein Datumsfeld ist, dann kann für die
Gruppierung „täglich“, „wöchentlich“ oder „monatlich“ usw. festgelegt werden.
PercentOfAverage (Feld, InneresBedFeld, ÄußeresBedFeld) hat dieselbe
Wirkung wie: 100 * Average (Feld, InneresBedFeld) / Average (Feld,
ÄußeresBedFeld). Damit wird der Durchschnitt der Werte im Feld "Feld" für
die durch InneresBedFeldfestgelegte Gruppe als Prozentanteil des
Durchschnitts der durch ÄußeresBedFeld festgelegten Gruppe ausgedrückt.
PercentOfAverage (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld)
hat dieselbe Wirkung wie: 100 * Average (Feld, InneresBedFeld, InnereBed) /
Sum (Feld, ÄußeresBedFeld).
PercentOfAverage (Feld, InneresBedFeld, ÄußeresBedFeld, ÄußereBed)
hat dieselbe Wirkung wie: 100 * Average (Feld, InneresBedFeld) / Sum (Feld,
ÄußeresBedFeld, ÄußereBed).
PercentOfAverage (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld,
ÄußereBed) hat dieselbe Wirkung wie: 100 * Average (Feld, InneresBedFeld,
InnereBed) / Sum (Feld, ÄußeresBedFeld, ÄußereBed).
Anmerkungen
Diese Funktion und weitere Prozentanteilfunktionen dienen dazu,
Prozentgruppenergebnisfelder zu unterstützen. Die in den Argumenten
angegebenen Gruppierungen müssen im Bericht tatsächlich vorhanden sein,
damit der Aufruf der Gruppenergebnisfunktion gelingen kann.
PercentOfMaximum
Basic- und Crystal-Syntax
Syntax der Argumente
206
•
•
•
•
PercentOfMaximum (Feld, BedFeld)
•
PercentOfMaximum (Feld, InneresBedFeld, ÄußeresBedFeld,
ÄußereBed)
•
PercentOfMaximum (Feld, InneresBedFeld, InnereBed,
ÄußeresBedFeld, ÄußereBed)
PercentOfMaximum (Feld, BedFeld, Bed)
PercentOfMaximum (Feld, InneresBedFeld, ÄußeresBedFeld)
PercentOfMaximum (Feld, InneresBedFeld, InnereBed,
ÄußeresBedFeld)
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Argumente
•
Feld ist ein beliebiges Zahlenfeld oder Währungsfeld, das von der
Funktion ausgewertet werden kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
•
Das Feld InneresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
InnereBed ist eine Zeichenfolge, die den Gruppierungstyp für
InneresBedFeld angibt. Sie können dieses Argument nur dann festlegen,
wenn InneresBedFeld ein Feld des Typs Date, Time, DateTime oder ein
boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
•
Das Feld ÄußeresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
ÄußereBed ist eine Zeichenfolge, die den Gruppierungstyp für
ÄußeresBedFeld angibt. Sie können dieses Argument nur dann
festlegen, wenn ÄußeresBedFeld ein Feld des Typs Date, Time,
DateTime oder ein boolesches Feld ist. Weitere Informationen hierzu
finden Sie unter Bedingungen für Gruppenergebnisfunktionen.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Zahlenwert
Aktion
PercentOfMaximum (Feld, BedFeld) hat dieselbe Wirkung wie: 100 *
Maximum (Feld, BedFeld) / Maximum (Feld). Damit wird das Maximum der
Werte im Feld "Feld" für die durch BedFeld festgelegte Gruppe als
Prozentanteil des Maximums aller Werte von Feld ausgedrückt.
PercentOfMaximum (Feld, BedFeld, Bed) hat dieselbe Wirkung wie: 100 *
Maximum (Feld, BedFeld, Bed) / Maximum (Feld). Mit dem String-Argument
Bed werden weitere zusätzliche Informationen angegeben, um die
Gruppierung genau festzulegen. Wenn „BedFeld“ ein Datumsfeld ist, dann
kann für die Gruppierung „täglich“, „wöchentlich“ oder „monatlich“ usw.
festgelegt werden.
Crystal Reports-Anwenderhandbuch 207
8
8
Funktionen
Gruppenergebnis
PercentOfMaximum (Feld, InneresBedFeld, ÄußeresBedFeld) hat
dieselbe Wirkung wie: 100 * Maximum (Feld, InneresBedFeld) / Maximum
(Feld, ÄußeresBedFeld). Damit wird das Maximum der Werte im Feld "Feld"
für die durch InneresBedFeld festgelegte Gruppe als Prozentanteil des
Maximums für die durch ÄußeresBedFeld festgelegte Gruppe ausgedrückt.
PercentOfMaximum (Feld, InneresBedFeld, InnereBed,
ÄußeresBedFeld) hat dieselbe Wirkung wie: 100 * Maximum (Feld,
InneresBedFeld, InnereBed) / Maximum (Feld, ÄußeresBedFeld).
PercentOfMaximum (Feld, InneresBedFeld, ÄußeresBedFeld,
ÄußereBed) hat dieselbe Wirkung wie: 100 * Maximum (Feld,
InneresBedFeld) / Maximum (Feld, ÄußeresBedFeld, ÄußereBed).
PercentOfMaximum (Feld, InneresBedFeld, InnereBed,
ÄußeresBedFeld, ÄußereBed) hat dieselbe Wirkung wie: 100 * Maximum
(Feld, InneresBedFeld, InnereBed) / Maximum (Feld, ÄußeresBedFeld,
ÄußereBed).
Anmerkungen
Diese Funktion und weitere Prozentanteilfunktionen dienen dazu,
Prozentgruppenergebnisfelder zu unterstützen. Die in den Argumenten
angegebenen Gruppierungen müssen im Bericht tatsächlich vorhanden sein,
damit der Aufruf der Gruppenergebnisfunktion gelingen kann.
PercentOfMinimum
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
•
PercentOfMinimum (Feld, BedFeld)
•
PercentOfMinimum (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld,
ÄußereBed)
PercentOfMinimum (Feld, BedFeld, Bed)
PercentOfMinimum (Feld, InneresBedFeld, ÄußeresBedFeld)
PercentOfMinimum (Feld, inneresBedFeld, innereBed, äußeresBedFeld)
PercentOfMinimum (Feld, InneresBedFeld, ÄußeresBedFeld,
ÄußereBed)
Argumente
208
•
Feld ist ein beliebiges Zahlenfeld oder Währungsfeld, das von der
Funktion ausgewertet werden kann.
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
•
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
•
Das Feld InneresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
InnereBed ist eine Zeichenfolge, die den Gruppierungstyp für
InneresBedFeld angibt. Sie können dieses Argument nur dann festlegen,
wenn InneresBedFeld ein Feld des Typs Date, Time, DateTime oder ein
boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
•
Das Feld ÄußeresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
ÄußereBed ist eine Zeichenfolge, die den Gruppierungstyp für
ÄußeresBedFeld angibt. Sie können dieses Argument nur dann
festlegen, wenn ÄußeresBedFeld ein Feld des Typs Date, Time,
DateTime oder ein boolesches Feld ist. Weitere Informationen hierzu
finden Sie unter Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Zahlenwert
Aktion
PercentOfMinimum (Feld, BedFeld) hat dieselbe Wirkung wie: 100 *
Minimum (Feld, BedFeld) / Minimum (Feld). Damit wird das Minimum der
Werte im Feld "Feld" für die durch BedFeld festgelegte Gruppe als
Prozentanteil des Minimums aller Werte von Feld ausgedrückt.
PercentOfMinimum (Feld, BedFeld, Bed) hat dieselbe Wirkung wie: 100 *
Minimum (Feld, BedFeld, Bed) / Minimum (Feld). Mit dem String-Argument
Bed werden weitere zusätzliche Informationen angegeben, um die
Gruppierung genau festzulegen. Wenn „BedFeld“ ein Datumsfeld ist, dann
kann für die Gruppierung „täglich“, „wöchentlich“ oder „monatlich“ usw.
festgelegt werden.
PercentOfMinimum (Feld, InneresBedFeld, ÄußeresBedFeld) hat
dieselbe Wirkung wie: 100 * Minimum (Feld, InneresBedFeld) / Minimum
(Feld, ÄußeresBedFeld). Damit wird das Minimum der Werte im Feld "Feld"
für die durch InneresBedFeld festgelegte Gruppe als Prozentanteil des
Minimums für die durch ÄußeresBedFeld festgelegte Gruppe ausgedrückt.
PercentOfMinimum (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld)
hat dieselbe Wirkung wie: 100 * Minimum (Feld, InneresBedFeld, InnereBed)
/ Minimum (Feld, ÄußeresBedFeld).
Crystal Reports-Anwenderhandbuch 209
8
8
Funktionen
Gruppenergebnis
PercentOfMinimum (Feld, InneresBedFeld, ÄußeresBedFeld,
ÄußereBed) hat dieselbe Wirkung wie: 100 * Minimum (Feld,
InneresBedFeld) / Minimum (Feld, ÄußeresBedFeld, ÄußereBed).
PercentOfMinimum (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld,
ÄußereBed) hat dieselbe Wirkung wie: 100 * Minimum (Feld,
InneresBedFeld, InnereBed) / Minimum (Feld, ÄußeresBedFeld, ÄußereBed).
Anmerkungen
Diese Funktion und weitere Prozentanteilfunktionen dienen dazu,
Prozentgruppenergebnisfelder zu unterstützen. Die in den Argumenten
angegebenen Gruppierungen müssen im Bericht tatsächlich vorhanden sein,
damit der Aufruf der Gruppenergebnisfunktion gelingen kann.
PercentOfCount
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
•
•
PercentOfCount (Feld, BedFeld)
PercentOfCount (Feld, BedFeld, Bed)
PercentOfCount (Feld, InneresBedFeld, ÄußeresBedFeld)
PercentOfCount (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld)
PercentOfCount (Feld, InneresBedFeld, ÄußeresBedFeld, ÄußereBed)
PercentOfCount (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld,
ÄußereBed)
Argumente
210
•
Feld ist ein Feld vom Typ Number (Zahl), Currency (Währung), String
(Zeichenfolge), Boolean (Boolesch), Date (Datum), Time (Uhrzeit) oder
DateTime (DatumUhrzeit), das von der Funktion ausgewertet werden
kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
•
Das Feld InneresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
•
InnereBed ist eine Zeichenfolge, die den Gruppierungstyp für
InneresBedFeld angibt. Sie können dieses Argument nur dann festlegen,
wenn InneresBedFeld ein Feld des Typs Date, Time, DateTime oder ein
boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
•
Das Feld ÄußeresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
ÄußereBed ist eine Zeichenfolge, die den Gruppierungstyp für
ÄußeresBedFeld angibt. Sie können dieses Argument nur dann
festlegen, wenn ÄußeresBedFeld ein Feld des Typs Date, Time,
DateTime oder ein boolesches Feld ist. Weitere Informationen hierzu
finden Sie unter Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Zahlenwert
Aktion
PercentOfCount (Feld, BedFeld) hat dieselbe Wirkung wie: 100 * Count
(Feld, BedFeld) / Count (Feld). Damit wird die Zählung der Werte im Feld
"Feld" für die durch BedFeld festgelegte Gruppe als Prozentanteil der
Zählung aller Werte von Feld ausgedrückt.
PercentOfCount (Feld, BedFeld, Bed) hat dieselbe Wirkung wie: 100 *
Count (Feld, BedFeld, Bed) / Count (Feld). Mit dem String-Argument Bed
werden weitere zusätzliche Informationen angegeben, um die Gruppierung
genau festzulegen. Wenn „BedFeld“ ein Datumsfeld ist, dann kann für die
Gruppierung „täglich“, „wöchentlich“ oder „monatlich“ usw. festgelegt werden.
PercentOfCount (Feld, InneresBedFeld, ÄußeresBedFeld) hat dieselbe
Wirkung wie: 100 * Count (Feld, InneresBedFeld) / Count (Feld,
ÄußeresBedFeld). Damit wird die Zählung der Werte im Feld "Feld" für die
durch InneresBedFeld festgelegte Gruppe als Prozentanteil der Zählung der
durch ÄußeresBedFeld festgelegten Gruppe ausgedrückt.
PercentOfCount (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld)
hat dieselbe Wirkung wie: 100 * Count (Feld, InneresBedFeld, InnereBed) /
Count (Feld, ÄußeresBedFeld).
PercentOfCount (Feld, InneresBedFeld, ÄußeresBedFeld, ÄußereBed)
hat dieselbe Wirkung wie: 100 * Count (Feld, InneresBedFeld) / Count (Feld,
ÄußeresBedFeld, ÄußereBed).
PercentOfCount (Feld, InneresBedFeld, InnereBed, ÄußeresBedFeld,
ÄußereBed) hat dieselbe Wirkung wie: 100 * Count (Feld, InneresBedFeld,
InnereBed) / Count (Feld, ÄußeresBedFeld, ÄußereBed).
Crystal Reports-Anwenderhandbuch 211
8
8
Funktionen
Gruppenergebnis
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
PercentOfCount ({Aufträge.Auftrags-ID},
{Aufträge.Auftragsdatum}, "annually")
Gibt die Gesamtanzahl der Aufträge in einem angegebenen Jahr als
Prozentanteil an der Gesamtanzahl aller Aufträge zurück.
PercentOfCount({Aufträge.Auftrags-ID}, {Aufträge.Versand
durch})
Gibt die Gesamtanzahl der durch ein angegebenes
Transportunternehmen gelieferten Aufträge als Prozentanteil an der
Gesamtanzahl aller Aufträge zurück.
PercentOfCount ({Produkt.Produktnummer}, {Produkt.Größe},
{Produkt.Produktklasse})
Gibt die Gesamtanzahl der Produkte einer angegebenen Größe und
Klasse als Prozentanteil an der Gesamtanzahl der Produkte derselben
Klasse zurück.
Anmerkungen
Diese Funktion und weitere Prozentanteilfunktionen dienen dazu,
Prozentgruppenergebnisfelder zu unterstützen. Die in den Argumenten
angegebenen Gruppierungen müssen im Bericht tatsächlich vorhanden sein,
damit der Aufruf der Gruppenergebnisfunktion gelingen kann.
PercentOfDistinctCount
Basic- und Crystal-Syntax.
Syntax der Argumente
212
•
•
•
•
PercentOfDistinctCount (Feld, BedFeld)
•
PercentOfDistinctCount (Feld, InneresBedFeld, ÄußeresBedFeld,
ÄußereBed)
•
PercentOfDistinctCount (Feld, InneresBedFeld, InnereBed,
ÄußeresBedFeld, ÄußereBed)
PercentOfDistinctCount (Feld, BedFeld, Bed)
PercentOfDistinctCount (Feld, InneresBedFeld, ÄußeresBedFeld)
PercentOfDistinctCount (Feld, InneresBedFeld, InnereBed,
ÄußeresBedFeld)
Crystal Reports-Anwenderhandbuch
Funktionen
Gruppenergebnis
Argumente
•
Feld ist ein Feld vom Typ Number (Zahl), Currency (Währung), String
(Zeichenfolge), Boolean (Boolesch), Date (Datum), Time (Uhrzeit) oder
DateTime (DatumUhrzeit), das von der Funktion ausgewertet werden
kann.
•
•
Das Feld BedFeld wird zum Gruppieren der Werte in Feld verwendet.
•
Das Feld InneresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
InnereBed ist eine Zeichenfolge, die den Gruppierungstyp für
InneresBedFeld angibt. Sie können dieses Argument nur dann festlegen,
wenn InneresBedFeld ein Feld des Typs Date, Time, DateTime oder ein
boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
•
Das Feld ÄußeresBedFeld wird zum Gruppieren der Werte in Feld
verwendet.
•
ÄußereBed ist eine Zeichenfolge, die den Gruppierungstyp für
ÄußeresBedFeld angibt. Sie können dieses Argument nur dann
festlegen, wenn ÄußeresBedFeld ein Feld des Typs Date, Time,
DateTime oder ein boolesches Feld ist. Weitere Informationen hierzu
finden Sie unter Bedingungen für Gruppenergebnisfunktionen.
Bed ist eine Zeichenfolge, die den Gruppierungstyp für BedFeld angibt.
Sie können dieses Argument nur dann festlegen, wenn BedFeld ein Feld
des Typs Date (Datum), Time (Uhrzeit), DateTime (Datum/Uhrzeit) oder
ein boolesches Feld ist. Weitere Informationen hierzu finden Sie unter
Bedingungen für Gruppenergebnisfunktionen.
Rückgabewert
Zahlenwert
Aktion
PercentOfDistinctCount (Feld, BedFeld) hat dieselbe Wirkung wie: 100 *
DistinctCount (Feld, BedFeld) / DistinctCount (Feld). Damit wird die Anzahl
der eindeutigen Werte im Feld "Feld" für die durch BedFeld festgelegte
Gruppe als Prozentanteil der Anzahl der eindeutigen Werte von Feld
ausgedrückt.
PercentOfDistinctCount (Feld, BedFeld, Bed) hat dieselbe Wirkung wie:
100 * DistinctCount (Feld, BedFeld, Bed) / DistinctCount (Feld). Mit dem
String-Argument Bed werden weitere zusätzliche Informationen angegeben,
um die Gruppierung genau festzulegen (Beispiel: Wenn BedFeld ein
Datumsfeld ist, dann kann für die Gruppierung „täglich“, „wöchentlich“ oder
„monatlich“ usw. festgelegt werden.)
Crystal Reports-Anwenderhandbuch 213
8
8
Funktionen
Finanzen
PercentOfDistinctCount (Feld, InneresBedFeld, ÄußeresBedFeld) hat
dieselbe Wirkung wie: 100 * DistinctCount (Feld, InneresBedFeld) /
DistinctCount (Feld, ÄußeresBedFeld). Damit wird die Anzahl der eindeutigen
Werte im Feld "Feld" für die durch InneresBedFeld festgelegte Gruppe als
Prozentanteil der Anzahl der eindeutigen Werte der durch ÄußeresBedFeld
festgelegten Gruppe ausgedrückt.
PercentOfDistinctCount (Feld, InneresBedFeld, InnereBed,
ÄußeresBedFeld) hat dieselbe Wirkung wie: 100 * DistinctCount (Feld,
InneresBedFeld, InnereBed) / DistinctCount (Feld, ÄußeresBedFeld).
PercentOfDistinctCount (Feld, InneresBedFeld, ÄußeresBedFeld,
ÄußereBed) hat dieselbe Wirkung wie: 100 * DistinctCount (Feld,
InneresBedFeld) / DistinctCount (Feld, ÄußeresBedFeld, ÄußereBed).
PercentOfDistinctCount (Feld, InneresBedFeld, InnereBed,
ÄußeresBedFeld, ÄußereBed) hat dieselbe Wirkung wie: 100 *
DistinctCount (Feld, InneresBedFeld, InnereBed) / DistinctCount (Feld,
ÄußeresBedFeld, ÄußereBed).
Anmerkungen
Diese Funktion und weitere Prozentanteilfunktionen dienen dazu,
Prozentgruppenergebnisfelder zu unterstützen. Die in den Argumenten
angegebenen Gruppierungen müssen im Bericht tatsächlich vorhanden sein,
damit der Aufruf der Gruppenergebnisfunktion gelingen kann.
Finanzen
Für weitere Informationen klicken Sie auf die Funktion, für die Sie sich
interessieren, aus der folgenden Liste:
ACCRINT
ACCRINTM
AmorDEGRC
AmorLINC
CoupDayBS
CoupDays
CoupDaysNC
CoupNCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupNum (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupPCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CumIPMT (Satz, nZeiträume, aktuellerWert, Startzeitraum, Endzeitraum, Typ)
214
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
CumPrinc (Satz, nZeiträume, aktuellerWert, Startzeitraum, Endzeitraum, Typ)
DB
DDB
Days360
DISC
DollarDE (Bruchzahl, Basis)
DollarFR (Dezimalzahl, Basis)
Duration
Effect (Satz, nVergleichbareZeiträume)
FV
FVSchedule (Wert, Sätze)
IntRate
IPmt
IRR
ISPMT (Satz, Zeitraum, nZeiträume, aktuellerWert)
MDuration
MIRR (Werte, Finanzsatz, Wiederanlagesatz)
Nominal (Satz, nVergleichbareZeiträume)
NPer
NPV (Satz, Werte)
OddFPrice
OddFYield
OddLPrice
OddLYield
Pmt
PPmt
Price
PriceDisc
PriceMat
PV
Rate
Received
Crystal Reports-Anwenderhandbuch 215
8
8
Funktionen
Finanzen
SLN (Kosten, Restwert, Lebensdauer)
SYD (Kosten, Restwert, Lebensdauer, Zeitraum)
TBillEq (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz)
TBillPrice (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz)
TBillYield (Zahlungsdatum, Fälligkeitsdatum, Preis)
VDB
XIRR
XNPV (Satz, Werte, Tage)
YearFrac
Yield
YieldDisc
YieldMat
ACCRINT
Basic- und Crystal-Syntax.
Syntax der Argumente
•
ACCRINT (Ausgabedatum, ersterZinstermin, Zahlungsdatum, Satz,
Nennwert, Häufigkeit)
•
ACCRINT (Ausgabedatum, ersterZinstermin, Zahlungsdatum, Satz,
Nennwert, Häufigkeit, Basis)
Argumente
216
•
Ausgabedatum entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier ausgegeben wurde.
•
ersterZinstermin entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier die ersten Zinserträge abwirft.
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
Satz ist eine positive Zahl, die den Jahreszinssatz für das Wertpapier
angibt.
•
Nennwert ist eine positive Zahl oder eine Währung, durch die der
Nennwert des Wertpapiers angegeben wird.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
Aktion
ACCRINT gibt für ein Wertpapier mit periodischen Zinszahlungen die
aufgelaufenen Gesamtzinsen zurück. Der zurückgegebene Wert entspricht
dem Nennwert, multipliziert mit dem Zinssatz, multipliziert mit der Anzahl der
Jahre oder Teiljahre zwischen dem Ausgabedatum und dem Fälligkeitsdatum.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine am 1. Juli 1990 ausgegebene Anleihe zu 10.000 DM
erzielt ab 1. September 1990 halbjährlich 9,5 % Zinsen. Diese Anleihe hat
einen kurzen abweichenden Zeitraum, da zwischen Juli und September
weniger als sechs Monate liegen. Die Anleihe wird dann am 15. Februar 1995
(Zahlungsdatum) erworben. Es wird eine 30/360-Basis zugrunde gelegt.
ACCRINT (DateValue(1990,7,1),
DateValue(1990,9,1),DateValue(1995,2,15), 0.095,
10000, 2, 0)
In diesem Beispiel werden 4.391,11 DM (auf die nächste ganze Zahl
gerundet) als aufgelaufene Gesamtzinsen zurückgegeben. Dieser Wert kann
überprüft werden, indem die Anzahl der vollständigen Zinszeiträume und der
Teilzeiträume addiert wird. Zwischen dem 1. September 1990 und dem 1.
September 1994 liegen acht 6-Monats-Zeiträume. Die Teilzeiträume
entsprechen (bei Zugrundelegung unserer Basis) den 60 Tagen im ersten
abweichenden Zeitraum und den 164 Tagen unmittelbar vor dem
Zahlungsdatum. Daraus folgt: 10.000 DM x (8+224/180) = 4.391,11 DM.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Crystal Reports-Anwenderhandbuch 217
8
8
Funktionen
Finanzen
Siehe auch
•
•
•
•
•
•
•
ACCRINTM
CoupDayBS
CoupDays
CoupDaysNC
CoupNCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupNum (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupPCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
ACCRINTM
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
ACCRINTM (Ausgabedatum, Fälligkeitsdatum, Satz, Nennwert)
ACCRINTM (Ausgabedatum, Fälligkeitsdatum, Satz, Nennwert, Basis)
Argumente
•
Ausgabedatum entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier ausgegeben wurde.
•
Fälligkeitsdatum entspricht entweder Date oder DateTime nach dem
Ausgabedatum und gibt die Fälligkeit des Wertpapiers an.
•
Satz ist eine positive Zahl, die den Jahreszinssatz für das Wertpapier
angibt.
•
Nennwert ist eine positive Zahl oder eine Währung, durch die der
Nennwert des Wertpapiers angegeben wird.
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
218
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Aktion
ACCRINTM gibt die aufgelaufenen Gesamtzinsen für ein Wertpapier zurück,
das zum Fälligkeitsdatum Zinserträge abwirft. Diese Funktion berechnet die
Zinsen, indem Nennwert, Zinssatz und die Anzahl der Jahre und Teiljahre, die
zwischen Ausgabe- und Fälligkeitsdatum liegen, multipliziert werden.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein kurzfristiger Wechsel in Höhe von 5.000 € mit einem
Jahreszinssatz von 10,5 % wird am 25. September 1999 mit dem
Fälligkeitsdatum 31. März 2000 ausgegeben. Es wird eine Echt/360-Basis
zugrunde gelegt.
ACCRINTM(DateValue(1999,9,25),DateValue(2000,3,31),0.105
, 5000, 2)
In diesem Beispiel werden 274,17 € als aufgelaufene Zinsen für dieses
Wertpapier zurückgegeben. Zwischen dem Ausgabe- und dem
Fälligkeitsdatum liegen 188 Tage. Daraus folgt: 5.000 € x 0,105 x (188/360) =
274,17 €.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
ACCRINT
AmorDEGRC
Basic- und Crystal-Syntax.
Syntax der Argumente
•
AmorDEGRC (Kosten, Kaufdatum, EnddatumErsterZeitraum, Restwert,
Zeitraum, Satz)
•
AmorDEGRC (Kosten, Kaufdatum, EnddatumErsterZeitraum, Restwert,
Zeitraum, Satz, Basis)
Argumente
•
cost ist eine positive Zahl oder eine Währung, mit der die Anfangskosten
der Anlage angegeben werden.
•
Kaufdatum entspricht entweder Date oder DateTime und gibt an, wann
die Anlage erworben wurde.
Crystal Reports-Anwenderhandbuch 219
8
8
Funktionen
Finanzen
•
EnddatumErsterZeitraum entspricht entweder Date oder DateTime und
gibt das Ende des ersten Zeitraums an. Dieses Datum muss nach dem
Kaufdatum liegen.
•
Restwert ist eine nicht negative Zahl oder Währung, die den Wert der
Anlage am Ende ihrer Lebensdauer angibt. Diese Zahl muss kleiner oder
gleich den Kosten der Anlage sein.
•
Zeitraum ist eine nicht negative Zahl, die den Zeitraum zur Berechnung
der Abschreibung angibt.
•
•
Satz gibt den Satz an, zu dem die Anlage abgeschrieben wird.
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
Aktion
AmorDEGRC gibt die Abschreibung einer Anlage im angegebenen
Rechnungsjahr zurück. Die Rechnungsjahre sind auf
EnddatumErsterZeitraum bezogen. Abhängig von der Lebensdauer (1/Satz)
der Anlage wird ein Abschreibungsfaktor auf den Satz angewendet. Der
zurückgegebene Wert wird auf die nächste ganze Zahl gerundet.
220
Lebensdauer (1/Satz)
Angewendeter
Abschreibungsfaktor
Kleiner als oder gleich 4
1.5
Größer als 4, aber kleiner als 6
2
Größer als oder gleich 6
2.5
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Computer wird am 15. April 2000 für 1.500 € erworben. Er
kann zum Restwert von 250 € verkauft werden und wird mit 10 % pro Jahr
abgeschrieben. Wenn der Abrechnungszeitraum jeweils zum 1. Januar eines
Jahres beginnt, dann beginnt der erste Zeitraum nach dem Kaufdatum zum 1.
Januar 2001. Es wird eine Echt/Echt-Basis zugrunde gelegt.
AmorDEGRC(1500,DateValue(2000,4,15),DateValue(2001,1,1),
2500,0,.1,1)
Gibt 267 € als Abschreibungsbetrag für den Zeitraum zwischen dem 15. April
2000 und dem 31. Dezember 2000 zurück. Da die Lebensdauer 10 Jahre
beträgt, errechnet sich der Abschreibungssatz wie folgt: 2,5 x 0,1 = 0,25.
AmorDEGRC(1500,DateValue(2000,4,15),DateValue(2001,1,1),
250,1,.1,1)
Gibt 308 € als Abschreibungsbetrag für das erste vollständige Jahr zurück.
AmorDEGRC(1500,DateValue(2000,4,15),DateValue(2001,1,1),
250,6,.1,1)
Gibt 43 € als Abschreibungsbetrag für das sechste vollständige Jahr zurück.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
•
AmorLINC
DB
DDB
VDB
AmorLINC
Basic- und Crystal-Syntax.
Syntax der Argumente
•
AmorLINC (Kosten, Kaufdatum, EnddatumErsterZeitraum, Restwert,
Zeitraum, Satz)
•
AmorLINC (Kosten, Kaufdatum, EnddatumErsterZeitraum, Restwert,
Zeitraum, Satz, Basis)
Crystal Reports-Anwenderhandbuch 221
8
8
Funktionen
Finanzen
Argumente
•
cost ist eine positive Zahl oder eine Währung, mit der die Anfangskosten
der Anlage angegeben werden.
•
Kaufdatum entspricht entweder Date oder DateTime und gibt an, wann
die Anlage erworben wurde.
•
EnddatumErsterZeitraum entspricht entweder Date oder DateTime und
gibt das Ende des ersten Zeitraums an. Dieses Datum muss nach dem
Kaufdatum liegen.
•
Restwert ist eine nicht negative Zahl oder Währung, die den Wert der
Anlage am Ende ihrer Lebensdauer angibt. Diese Zahl muss kleiner oder
gleich den Kosten der Anlage sein.
•
Zeitraum ist eine nicht negative Zahl, die den Zeitraum zur Berechnung
der Abschreibung angibt.
•
•
Satz gibt den Satz an, zu dem die Anlage abgeschrieben wird.
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
Aktion
AmorLINC gibt die lineare Abschreibung für ein bestimmtes Jahr zurück,
wobei die Abrechnungsjahre auf EnddatumErsterZeitraum bezogen sind. Die
Abschreibung innerhalb der einzelnen Jahre ist mit Ausnahme des nullten
und des letzten Zeitraums konstant. Bei ihnen richtet sich die Abschreibung
nach dem Kaufdatum. Die Summe aller Abschreibungsbeträge entspricht der
Differenz zwischen dem Kaufpreis und dem Restwert.
222
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Computer wird am 15. April 2000 für 1.500 € erworben. Er
kann zum Restwert von 250 € verkauft werden und wird mit 10 % pro Jahr
abgeschrieben. Wenn der Abrechnungszeitraum jeweils zum 1. Januar eines
Jahres beginnt, dann beginnt der erste Zeitraum nach dem Kaufdatum zum 1.
Januar 2001. Es wird eine Echt/Echt-Basis zugrunde gelegt.
AmorLINC(1500,DateValue(2000,4,15),DateValue(2001,1,1),2
50,0,.1,1)
Gibt 106,97 € (auf die nächste ganze Zahl gerundet) als
Abschreibungsbetrag für den Zeitraum vom 15. April 2000 bis zum 31.
Dezember 2000 zurück.
AmorLINC(1500,DateValue(2000,4,15),DateValue(2001,1,1),2
50,1,.1,1)
Gibt 150 € als Abschreibungsbetrag für das erste vollständige Jahr zurück.
Hierbei handelt es sich um 10 % des Anschaffungspreises von 1.500 €.
AmorLINC(1500,DateValue(2000,4,15),DateValue(2001,1,1),2
50,8,.1,1)
Gibt 93,03 € (auf die nächste ganze Zahl gerundet) als Abschreibungsbetrag
für das achte vollständige Jahr zurück. Beachten Sie, dass dieser Wert
zuzüglich der Abschreibung im ersten angebrochenen Jahr 150 € ergibt.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
•
AmorDEGRC
DB
DDB
VDB
Crystal Reports-Anwenderhandbuch 223
8
8
Funktionen
Finanzen
CoupDayBS
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
CoupDayBS (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupDayBS (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
Fälligkeitsdatum entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Zahlenwert
Aktion
CoupDayBS gibt die Anzahl der Tage zwischen dem letzten Zinstermin vor
der Zahlung und dem Zahlungsdatum zurück. Zinstermine haben
gleichmäßige Abstände und sind auf das Fälligkeitsdatum bezogen. Falls das
Zahlungsdatum auf einen Zinstermin fällt, gibt CoupDayBS den Wert 0
zurück.
224
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe mit einer Laufzeit von 30 Jahren wurde am 15.
März 1995 ausgegeben und verfügt über halbjährliche Zinstermine. Die
Anleihe wurde am 25. August 2000 (Zahlungsdatum) auf dem Sekundärmarkt
erworben. Das Fälligkeitsdatum ist auf den 15. März 2025, also 30 Jahre
nach dem Ausgabedatum, datiert. Diesem Beispiel wird die Echt/Echt-Basis
zugrunde gelegt.
CoupDayBS(DateValue(2000,8,25),DateValue(2025,3,15),2,1)
Gibt 163 zurück. Diese Anleihe hat die jährlichen Zinstermine 15. März und
15. September. 163 entspricht der Anzahl von Tagen zwischen dem 15. März
2000 und dem 25. August 2000.
Anmerkungen
•
•
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Bei der Echt/Echt-Basis gilt für alle gültigen Eingaben CoupDays =
CoupDayBS + CoupDaysNC. Bei Verwendung einer anderen Basis trifft
dies nicht zwingend zu, da CoupDays von der Anzahl der Tage im Jahr
abgeleitet wird, während CoupDayBS und CoupDaysNC direkt berechnet
werden.
Siehe auch
•
•
•
•
•
CoupDays
CoupDaysNC
CoupNCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupNum (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupPCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupDays
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
CoupDays (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupDays (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit, Basis)
Crystal Reports-Anwenderhandbuch 225
8
8
Funktionen
Finanzen
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
Fälligkeitsdatum entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Zahlenwert
Aktion
CoupDays gibt die Anzahl der Tage zwischen den Zinsterminen zurück, die
vor und nach dem Zahlungsdatum liegen. Zinstermine haben gleichmäßige
Abstände und sind auf das Fälligkeitsdatum bezogen. Falls das
Zahlungsdatum auf einen Zinstermin fällt, wird der Berechnung der folgende
Zeitraum zugrunde gelegt.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe mit einer Laufzeit von 30 Jahren wurde am 15.
März 1995 ausgegeben und verfügt über halbjährliche Zinstermine. Die
Anleihe wurde am 25. August 2000 (Zahlungsdatum) auf dem Sekundärmarkt
erworben. Das Fälligkeitsdatum ist auf den 15. März 2025, also 30 Jahre
nach dem Ausgabedatum, datiert. Diesem Beispiel wird die Echt/Echt-Basis
zugrunde gelegt.
CoupDays(DateValue(2000,8,25),DateValue(2025,3,15),2,1)
Gibt 184 zurück. Diese Anleihe hat die jährlichen Zinstermine 15. März und
15. September. 184 entspricht der Anzahl der Tage zwischen dem 15. März
2000 und dem 15. September 2000, also den ersten Zinsterminen vor und
nach dem Zahlungsdatum.
226
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Anmerkungen
•
•
•
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Bei einer anderen als der Echt/Echt-Basis gibt CoupDays für alle
Zahlungsdatumsangaben die gleiche Zahl zurück.
Bei der Echt/Echt-Basis gilt für alle gültigen Eingaben CoupDays =
CoupDayBS + CoupDaysNC. Bei Verwendung einer anderen Basis trifft
dies nicht zwingend zu, da CoupDays von der Anzahl der Tage im Jahr
abgeleitet wird, während CoupDayBS und CoupDaysNC direkt berechnet
werden.
Siehe auch
•
•
•
•
•
CoupDayBS
CoupDaysNC
CoupNCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupNum (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupPCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupDaysNC
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
CoupDaysNC (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupDaysNC (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
Fälligkeitsdatum entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
• 0 - Amerikanisch 30/360 (Standard)
•
•
•
•
•
•
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Crystal Reports-Anwenderhandbuch 227
8
8
Funktionen
Finanzen
Rückgabewert
Zahlenwert
Aktion
CoupDaysNC gibt die Anzahl der Tage zurück, die zwischen dem
Zahlungsdatum und dem nächsten, darauf folgenden Zinstermin liegen.
Zinstermine haben gleichmäßige Abstände und sind auf das Fälligkeitsdatum
bezogen. Falls das Zahlungsdatum auf einen Zinstermin fällt, gibt
CoupDaysNC die Anzahl der Tage bis zum nächsten Zinstermin zurück.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe mit einer Laufzeit von 30 Jahren wurde am 15.
März 1995 ausgegeben und verfügt über halbjährliche Zinstermine. Die
Anleihe wurde am 25. August 2000 (Zahlungsdatum) auf dem Sekundärmarkt
erworben. Das Fälligkeitsdatum ist auf den 15. März 2025, also 30 Jahre
nach dem Ausgabedatum, datiert. Diesem Beispiel wird die Echt/Echt-Basis
zugrunde gelegt.
CoupDaysNC(DateValue(2000,8,25),DateValue(2025,3,15),2,1
)
Gibt 21 zurück. Diese Anleihe hat die jährlichen Zinstermine 15. März und 15.
September. 21 entspricht der Anzahl von Tagen zwischen dem 15.09.00 und
dem 25. August 2000.
Anmerkungen
•
•
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Bei der Echt/Echt-Basis gilt für alle gültigen Eingaben CoupDays =
CoupDayBS + CoupDaysNC. Bei Verwendung einer anderen Basis trifft
dies nicht zwingend zu, da CoupDays von der Anzahl der Tage im Jahr
abgeleitet wird, während CoupDayBS und CoupDaysNC direkt berechnet
werden.
Siehe auch
•
•
•
•
•
228
CoupDayBS
CoupDays
CoupNCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupNum (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupPCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
CoupNCD (Zahlungsdatum, Fälligkeitsdatum,
Häufigkeit)
Basic- und Crystal-Syntax.
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
Fälligkeitsdatum entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
Rückgabewert
Date-Wert
Aktion
CoupNCD gibt den nächsten Zinstermin nach dem Zahlungsdatum zurück.
Zinstermine haben gleichmäßige Abstände. Sie sind auf das Fälligkeitsdatum
bezogen und finden einmal, zweimal oder viermal jährlich statt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe mit einer Laufzeit von 30 Jahren wurde am 15.
März 1995 ausgegeben und verfügt über halbjährliche Zinstermine. Die
Anleihe wurde am 25. August 2000 (Zahlungsdatum) auf dem Sekundärmarkt
erworben. Das Fälligkeitsdatum ist auf den 15. März 2025, also 30 Jahre
nach dem Ausgabedatum, datiert.
CoupNCD(DateValue(2000,8,25),DateValue(2025,3,15),2)
Gibt den 12. April 2002 zurück. Diese Anleihe hat die jährlichen Zinstermine
15. März und 15. September. Der erste Zinstermin nach dem Zahlungsdatum
fällt auf den 15. September 2000.
Anmerkungen
•
•
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Die Anzahl der Tage (gemäß Basis) zwischen dem von CoupNCD
zurückgegebenen Wert und dem Zahlungsdatum ist gleich dem von
CoupDaysNC zurückgegebenen Wert.
Crystal Reports-Anwenderhandbuch 229
8
8
Funktionen
Finanzen
Siehe auch
•
•
•
•
•
CoupDayBS
CoupDays
CoupDaysNC
CoupNum (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupPCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupNum (Zahlungsdatum, Fälligkeitsdatum,
Häufigkeit)
Basic- und Crystal-Syntax.
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
Fälligkeitsdatum entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
Rückgabewert
Zahlenwert
Aktion
CoupNum gibt die Anzahl der Zinszeiträume zwischen dem Zahlungs- und
dem Fälligkeitsdatum zurück. Der Teilzeitraum zwischen dem Zahlungsdatum
und dem ersten Zinstermin nach dem Zahlungsdatum wird als ein Zeitraum
gezählt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe mit einer Laufzeit von 30 Jahren wurde am 15.
März 1995 ausgegeben und verfügt über halbjährliche Zinstermine. Die
Anleihe wurde am 25. August 2000 (Zahlungsdatum) auf dem Sekundärmarkt
erworben. Das Fälligkeitsdatum ist auf den 15. März 2025, also 30 Jahre
nach dem Ausgabedatum, datiert.
CoupNum(DateValue(2000,8,25),DateValue(2025,3,15),2)
230
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Gibt 50 zurück. Entspricht der gerundeten Anzahl von 6-Monats-Zeiträumen
zwischen dem 25. August 2000 und dem 15. März 2025. Vom
Fälligkeitsdatum aus rückblickend betrachtet, liegen in den 24 Jahren
zwischen dem 15. März 2001 und dem 15. März 2025 48 Zeiträume und
zwischen dem 15. September 2000 und dem 15. März 2001 ein vollständiger
Zeitraum. Der Teilzeitraum (von nur 21 Tagen) zwischen dem Zahlungsdatum
(25. August 2000) und dem 15. September 2000 wird ebenfalls gezählt.
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
•
•
CoupDayBS
CoupDays
CoupDaysNC
CoupNCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupPCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupPCD (Zahlungsdatum, Fälligkeitsdatum,
Häufigkeit)
Basic- und Crystal-Syntax.
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
Fälligkeitsdatum entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
Rückgabewert
Date-Wert
Aktion
CoupPCD gibt das Datum des letzten, vor dem Zahlungsdatum liegenden
Zinstermins zurück. Zinstermine haben gleichmäßige Abstände und sind auf
das Fälligkeitsdatum bezogen. Falls das Zahlungsdatum auf einen Zinstermin
fällt, gibt CoupPCD das Zahlungsdatum zurück.
Crystal Reports-Anwenderhandbuch 231
8
8
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe mit einer Laufzeit von 30 Jahren wurde am 15.
März 1995 ausgegeben und verfügt über halbjährliche Zinstermine. Die
Anleihe wurde am 25. August 2000 (Zahlungsdatum) auf dem Sekundärmarkt
erworben. Das Fälligkeitsdatum ist auf den 15. März 2025, also 30 Jahre
nach dem Ausgabedatum, datiert.
CoupPCD(DateValue(2000,8,25),DateValue(2025,3,15),2)
Gibt den 12. April 2002 zurück. Diese Anleihe hat die jährlichen Zinstermine
15. März und 15. September. Der letzte Zinstermin vor dem Zahlungsdatum
fällt auf den 15. März 2000.
Anmerkungen
•
•
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Die Anzahl der Tage (gemäß Basis) zwischen dem von CoupPCD
zurückgegebenen Wert und dem Zahlungsdatum ist gleich dem von
CoupDayBS zurückgegebenen Wert.
Siehe auch
•
•
•
•
•
CoupDayBS
CoupDays
CoupDaysNC
CoupNCD (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CoupNum (Zahlungsdatum, Fälligkeitsdatum, Häufigkeit)
CumIPMT (Satz, nZeiträume, aktuellerWert,
Startzeitraum, Endzeitraum, Typ)
Basic- und Crystal-Syntax.
Argumente
232
•
Satz ist eine positive Zahl ungleich Null, die den Zinssatz pro Zeitraum
angibt.
•
nZeiträume ist eine positive Zahl, die die Gesamtanzahl der
Zahlungszeiträume angibt.
•
aktuellerWert ist eine positive Zahl oder Währung, die die gesamte
Tilgungssumme darstellt.
•
Startzeitraum ist eine positive Zahl, die den ersten Berechnungszeitraum
angibt.
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
•
Endzeitraum ist eine Zahl größer oder gleich Startzeitraum. Sie gibt den
letzten Berechnungszeitraum an. Der Endzeitraum darf die Summe der
Zeiträume nicht überschreiten.
•
Typ ist eine Zahl, die den Zeitpunkt der Zahlungen angibt. 0 = Ende des
Zahlungszeitraums, 1 = Beginn des Zahlungszeitraums.
Rückgabewert
Currency-Wert
Aktion
CumIPMT gibt die Gesamtsumme der Zinsen zurück, die zwischen den
angegebenen Start- und Endzeiträumen auf ein Darlehen gezahlt wurde.
Durch diese Funktion wird der von IPMT zurückgegebene Wert für die
angegebenen Zeiträume summiert. Der Wert ist negativ, da er eine Summe
von Zahlungen darstellt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie haben ein Darlehen über 5.000 € mit einer sechsjährigen
Laufzeit und einem Jahreszinssatz von 8,3 % aufgenommen, bei dem
halbjährliche Zahlungen zum Monatsende fällig werden.
CumIPMT(0.083/2,6*2,5000,3,4,0)
Gibt -344,25 € zurück, die den gezahlten Gesamtzinsen des zweiten Jahres
der Darlehenslaufzeit entsprechen. Beachten Sie, dass sowohl der Zinssatz
als auch die Laufzeit pro Zeitraum erfasst werden müssen.
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Siehe auch
•
CumPrinc (Satz, nZeiträume, aktuellerWert, Startzeitraum, Endzeitraum,
Typ)
CumPrinc (Satz, nZeiträume, aktuellerWert,
Startzeitraum, Endzeitraum, Typ)
Basic- und Crystal-Syntax.
Argumente
•
Satz ist eine positive Zahl ungleich Null, die den Zinssatz pro Zeitraum
angibt.
Crystal Reports-Anwenderhandbuch 233
8
8
Funktionen
Finanzen
•
nZeiträume ist eine positive Zahl, die die Gesamtanzahl der
Zahlungszeiträume angibt.
•
aktuellerWert ist eine positive Zahl oder Währung, die die gesamte
Tilgungssumme darstellt.
•
Startzeitraum ist eine positive Zahl, die den ersten Berechnungszeitraum
angibt.
•
Endzeitraum ist eine Zahl größer oder gleich Startzeitraum. Sie gibt den
letzten Berechnungszeitraum an. Der Endzeitraum darf die Summe der
Zeiträume nicht überschreiten.
•
Typ ist eine Zahl, die den Zeitpunkt der Zahlungen angibt. 0 = Ende des
Zahlungszeitraums, 1 = Beginn des Zahlungszeitraums.
Rückgabewert
Currency-Wert
Aktion
CumPRINC gibt die Gesamttilgung zurück, die zwischen den angegebenen
Start- und Endzeiträumen auf einen Darlehensbetrag geleistet wurden. Durch
diese Funktion wird der von PPMT zurückgegebene Wert für die
angegebenen Zeiträume summiert. Der Wert ist negativ, da er eine Summe
von Zahlungen darstellt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie haben ein Darlehen über 5.000 € mit einer sechsjährigen
Laufzeit und einem Jahreszinssatz von 8,3 % aufgenommen, bei dem
halbjährliche Zahlungen zum Monatsende fällig werden.
CumPRINC(0.083/2,6*2,5000,3,4,0)
Gibt -730,57 € als Gesamtbetrag zurück, der im zweiten Laufjahr des
Darlehens getilgt wurde. Beachten Sie, dass sowohl der Zinssatz als auch die
Laufzeit pro Zeitraum erfasst werden müssen.
CumPRINC(0.083/2,6*2,50000,10,12,0)
Gibt -5.000 € zurück, da während der Laufzeit des Darlehens der gesamte
Darlehensbetrag getilgt wurde. Beachten Sie, dass sowohl der Zinssatz als
auch die Laufzeit pro Zeitraum erfasst werden müssen.
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
234
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Siehe auch
•
CumIPMT (Satz, nZeiträume, aktuellerWert, Startzeitraum, Endzeitraum,
Typ)
DB
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
DB (Kosten, Restwert, Lebensdauer, Zeitraum)
DB (Kosten, Restwert, Lebensdauer, Zeitraum, Monat)
Argumente
•
"Kosten" ist eine Zahl oder eine Währung, mit der die Anfangskosten der
Anlage angegeben werden. Der Wert darf nicht negativ sein und ist
größer als oder gleich dem Restwert.
•
"Restwert" ist eine Zahl oder Währung, die den Wert der Anlage am Ende
ihrer Lebensdauer angibt. Der Wert ist nicht negativ.
•
"Lebensdauer" ist eine positive Zahl, mit der die Lebensdauer der Anlage
angegeben wird.
•
"Zeitraum" ist eine Zahl, die den Zeitraum angibt, für den die
Wertminderung einer Anlage berechnet wird. Dieser Wert muss positiv
und kleiner als oder gleich der Lebensdauer sein. Die Argumente
Lebensdauer und Zeitraum müssen in denselben Einheiten angegeben
werden.
•
"Monat" ist eine optionale, positive Zahl, die die Anzahl der Monate im
ersten Jahr angibt. Der Standardwert ist 12 Monate. Monat muss größer
als 0 und kleiner oder gleich 12 sein.
Rückgabewert
Zahlenwert
Aktion
DB gibt eine Zahl zurück, die die Wertminderung einer Anlage für einen
bestimmten Zeitraum unter Verwendung der geometrisch-degressiven
Abschreibung angibt.
Crystal Reports-Anwenderhandbuch 235
8
8
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Unternehmen erwirbt Anfang März ein Fahrzeug zum
Preis von 25.000 €. Das Fahrzeug wird geometrisch-degressiv
abgeschrieben und soll eine fünfjährige Lebensdauer haben, nach deren
Ablauf der Wiederverkaufswert 5.000 € betragen soll.
DB(25000,5000,5,1,10)
Gibt 5729,17 zurück. Der Abschreibungsbetrag des Fahrzeugs für die
verbleibenden 10 Monate des Jahres beträgt 5.729,17 €.
DB(25000,5000,5,5,10)
Gibt 2019,52 zurück. Der Abschreibungsbetrag im letzten vollständigen Jahr
beträgt 2.019,52 €.
DB(25000,5000,5,6,10)
Gibt 244.02 zurück. Der Abschreibungsbetrag in den letzten beiden Monaten
beträgt 244,02 €.
Angenommen, eine Datenbanktabelle enthält die folgenden Felder:
{Tabelle.Kosten}, {Tabelle.Restwert}, {Tabelle.Kaufdatum} und
{Tabelle.Lebensdauer}. Mit folgender Formel können Sie die Wertminderung
mittels geometrisch-degressiver Abschreibung pro Tabelleneintrag für den
Rest des ersten Jahres berechnen:
DB ({Tabelle.Kosten}, {Tabelle.Restwert},
{Tabelle.Lebensdauer},1,12Month({Tabelle.Kaufdatum}))
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
DDB
VDB
DDB
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
236
DDB (Kosten, Restwert, Lebensdauer, Zeitraum)
DDB (Kosten, Restwert, Lebensdauer, Zeitraum, Faktor)
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Argumente
•
"Kosten" ist eine Zahl oder eine Währung, mit der die Anfangskosten der
Anlage angegeben werden. Der Wert darf nicht negativ sein und ist
größer als oder gleich dem Restwert.
•
"Restwert" ist eine Zahl oder Währung, die den Wert der Anlage am Ende
ihrer Lebensdauer angibt. Der Wert ist nicht negativ.
•
"Lebensdauer" ist eine positive Zahl, mit der die Lebensdauer der Anlage
angegeben wird.
•
"Zeitraum" ist eine Zahl, die den Zeitraum angibt, für den die
Wertminderung einer Anlage berechnet wird. Dieser Wert muss positiv
und kleiner als oder gleich der Lebensdauer sein. Die Argumente
Lebensdauer und Zeitraum müssen in denselben Einheiten angegeben
werden.
•
"Faktor" ist eine optionale positive Zahl, die die Rate angibt, mit der die
Wertminderung erfolgt. Wenn diese Angabe weggelassen wird, wird 2
(progressive Abschreibung) verwendet.
Rückgabewert
Zahlenwert
Aktion
DDB gibt eine Zahl zurück, die die Wertminderung einer Anlage über eine
bestimmte Zeitperiode festlegt, wobei die Methode der progressiven
Abschreibung mit dem Faktor 2 oder eine andere Abschreibungsmethode
verwendet wird, die durch das Argument "Faktor" festgelegt wird.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Unternehmen legt einen Fuhrpark im Wert von 500.000 €
an. Die Fahrzeuge haben eine Lebensdauer von 10 Jahren und einen
Restwert von 60.000 €. Sie werden mit der Doppelraten-Methode
abgeschrieben.
DDB (500000, 60000, 10, 1)
Gibt 100000 zurück. Der Abschreibungsbetrag des letzten Jahres beträgt
100 000 €.
DDB (500000, 60000, 10, 4)
Gibt 51200 zurück. Der Abschreibungsbetrag des letzten Jahres beträgt
51.200 €.
Crystal Reports-Anwenderhandbuch 237
8
8
Funktionen
Finanzen
DDB (500000, 60000, 10, 10)
Gibt 7108,86 (auf die nächste ganze Zahl gerundet) zurück. Der
Abschreibungsbetrag des letzten Jahres beträgt 7.108,86 €.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Days360
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
Days360 (Startdatum, Enddatum)
Days360 (Startdatum, Enddatum, Methode)
Argumente
•
Startdatum ist ein Datums- oder DateTime-Wert für den Start eines
Zeitintervalls.
•
Enddatum ist ein Datums- oder DateTime-Wert für das Ende eines
Zeitintervalls.
•
Methode ist ein optionaler boolescher Wert, der den zu verwendenden
Basistyp angibt. Der Standard lautet FALSE und setzt die Verwendung
der amerikanischen 30/360-Tagesbasis voraus. TRUE setzt die
Verwendung der europäischen 30/360-Tagesbasis voraus.
Rückgabewert
Zahlenwert
Aktion
Days360 gibt auf der Grundlage eines Kalenders mit 30 Tagen pro Monat und
360 Tagen im Jahr die Anzahl der Tage zwischen zwei Datumsangaben
zurück. Diese Methode ist in der Finanzbuchhaltung weit verbreitet. Wenn
das Enddatum vor dem Startdatum liegt, wird ein negatives Ergebnis
zurückgegeben.
Die Formel lautet (J2-J1) x 360 + (M2-M1) x 30 + (T2-T1), wobei:
•
•
238
J1, M1 und T1 dem Jahr, Monat und Tag des Startdatums und
J2, M2 und T2 dem Jahr, Monat und Tag des Enddatums
entsprechen.
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Wenn T1 bei Zugrundelegung der amerikanischen 30/360-Basis 31 lautet,
wird der Tag in 30 geändert. Lautet T2 31, wird der Tag nur in 30 geändert,
wenn T1 30 oder 31 lautet. Im Fall des Monats Februar wird die 31 in der
vorangehenden Formel durch die Anzahl der Tage im Monat ersetzt.
Bei Zugrundelegung der europäischen 30/360-Basis wird T1 in 30 geändert,
falls T1 31 lautet. Entsprechend wird T2 in 30 geändert, falls T2 31 lautet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Days360(DateValue(2000,1,1),DateValue(2000,2,1),FALSE)
Gibt 30 zurück, da bei jedem Monat von 30 Tagen ausgegangen wird. Bei
Verwendung des europäischen Systems wird der gleiche Wert
zurückgegeben.
Days360(DateValue(2000,2,28),DateValue(2000,3,31),FALSE)
Days360(DateValue(2000,2,28),DateValue(2000,3,31),TRUE)
Days360(DateValue(2000,2,29),DateValue(2000,3,31),FALSE)
Days360(DateValue(2000,2,29),DateValue(2000,3,31),TRUE)
In der ersten Zeile wird 33, in der zweiten 32, in der dritten 30 und in der
vierten 31 zurückgegeben. Beachten Sie, dass der Februar im Jahr 2000 29
Tage hat.
Anmerkungen
•
•
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Um die Differenz zwischen zwei Datumsangaben unter Verwendung des
normalen Kalenders (Echt/Echt) zu berechnen, subtrahieren Sie das
frühere Datum vom späteren.
DateValue(2000,3,31) - DateValue(2000,2,29)
Gibt 31 zurück.
DISC
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
DISC (Zahlungsdatum, Fälligkeitsdatum, Preis, Rückzahlungskurs)
DISC (Zahlungsdatum, Fälligkeitsdatum, Preis, Rückzahlungskurs,
Basis)
Crystal Reports-Anwenderhandbuch 239
8
8
Funktionen
Finanzen
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
Preis ist eine positive Zahl oder Währung, die den Wert des Wertpapiers
zum Zeitpunkt seines Erwerbs angibt.
•
Rückzahlungskurs ist eine positive Zahl oder Währung, die den Wert des
Wertpapiers zum Fälligkeitsdatum angibt.
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Zahlenwert
Aktion
DISC gibt den Diskontsatz für ein Wertpapier unter Berücksichtigung von
Zahlungs- und Fälligkeitsdatum sowie dem jeweils gültigen Wert des
Wertpapiers zurück.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Wertpapier wurde am 15. April 2000 für 96,25 € erworben.
Das Wertpapier hat das Fälligkeitsdatum 1. November 2000 und einen
Rückzahlungswert von 100 €. Wie bei den meisten Wertpapieren üblich, wird
eine 30/360-Basis zugrunde gelegt.
DISC (DateValue(2000, 4,
15),DateValue(2000,11,1),96.25,100,0)
Gibt 0,0689 (auf vier Dezimalstellen gerundet) zurück, was einem Diskontsatz
von 6,89 % entspricht.
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
240
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
DollarDE (Bruchzahl, Basis)
Basic- und Crystal-Syntax.
Argumente
•
•
Bruchzahl ist eine Zahl, die den umzuwandelnden Bruch darstellt.
Basis ist eine positive abgeschnittene Zahl, die die Basis des zu
erstellenden Bruches angibt.
Rückgabewert
Zahlenwert der Bruchzahl.
Aktion
DollarDE wandelt eine Zahl, die einen Bruch darstellt, in eine normale
Dezimalzahl um. Den folgenden Beispielen können Sie entnehmen, wie
Brüche dargestellt werden.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DollarDE(1.1,8)
Gibt 1,125 zurück. Die Bruchzahl 1,1 wurde als 1 und 1/8 interpretiert, was
1,125 entspricht.
DollarDE(2.13,16)
Gibt 2,8125 zurück. Die Bruchzahl wurde als 2 und 13/16 interpretiert.
DollarDE(2.45,16)
Gibt 4,8125 zurück. Die Bruchzahl wurde als 2 und 45/16 interpretiert und auf
4 und 13/16 gekürzt.
DollarDE(1.16,8)
Gibt 1,2 zurück. Dieser Wert wurde als 1 und 1,6/8 interpretiert.
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Siehe auch
•
DollarFR (Dezimalzahl, Basis)
Crystal Reports-Anwenderhandbuch 241
8
8
Funktionen
Finanzen
DollarFR (Dezimalzahl, Basis)
Basic- und Crystal-Syntax.
Argumente
•
Dezimalzahl ist eine Zahl, die den umzuwandelnden tatsächlichen
Dezimalwert darstellt.
•
Basis ist eine positive abgeschnittene Zahl, die die Basis des zu
erstellenden Bruches angibt.
Rückgabewert
Zahlenwert, der eine Bruchzahl darstellt.
Aktion
DollarFR wandelt eine Dezimalzahl um und gibt sie als Bruch zurück. Dem
folgenden Beispiel können Sie entnehmen, wie Zahlen als Brüche dargestellt
werden.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DollarFR(1.125,8)
Gibt 1,1 zurück. Dieser Wert wird als 1 und 1/8 interpretiert. Der dezimale Teil
der Bruchzahl wird als der Numerator der Bruchzahl aufgefasst.
DollarFR(1.2,8)
Gibt 1,16 zurück. Dieser Wert wird als 1 und 1,6/8 interpretiert. Der
Dezimalteil wird zum Zähler. Beachten Sie, dass dieser Wert nicht als 16/8
interpretiert wird.
DollarFR(1.8125,16)
Gibt 1,13 zurück. Dieser Wert wird als 1 und 13/16 interpretiert.
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Siehe auch
•
242
DollarDE (Bruchzahl, Basis)
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Duration
Basic- und Crystal-Syntax.
Syntax der Argumente
•
Duration (Zahlungsdatum, Fälligkeitsdatum, Anleihezins, Ertrag,
Häufigkeit)
•
Duration (Zahlungsdatum, Fälligkeitsdatum, Anleihezins, Ertrag,
Häufigkeit, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Anleihezins" ist eine nicht negative Zahl, die den Zinssatz für das
Wertpapier angibt.
•
"Ertrag" ist eine nicht negative Zahl, die den Ertrag des Wertpapiers
angibt.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Zahlenwert
Aktion
Duration gibt eine Zahl zurück, die die Laufzeit einer Anleihe darstellt. Die
Laufzeit ist der gewichtete Durchschnitt der Zinszahlungs-Cashflows und gilt
als Maßstab für das Zinssatzrisiko der Anleihe.
Crystal Reports-Anwenderhandbuch 243
8
8
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe mit einer Laufzeit von 10 Jahren, einem
Anleihezins von 12 %, einem Ertrag von 13 % sowie halbjährlichen
Zahlungen wird am 25. Januar 2000 erworben und hat das Fälligkeitsdatum
1. Oktober 2003. Es wird die 30/360-Standardbasis zugrunde gelegt.
Duration(DateValue(2000,1,25),DateValue(2003,10,1),0.12,
0.13,2)
Gibt 2,961918 als Laufzeit der Anleihe zurück, was 2,96 Jahren entspricht.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
MDuration
Effect (Satz, nVergleichbareZeiträume)
Basic- und Crystal-Syntax.
Argumente
•
•
Satz ist eine Zahl, die den Jahreszinssatz angibt.
nVergleichbareZeiträume ist eine positive Zahl, die die Anzahl der
vergleichbaren Zeiträume pro Jahr angibt.
Rückgabewert
Zahlenwert
Aktion
Effect gibt den effektiven Jahreszinssatz auf der Grundlage des
angegebenen Zinssatzes sowie der angegebenen Anzahl von vergleichbaren
Zeiträumen zurück.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie verfügen über ein Sparkonto mit einem Jahreszinssatz
von 5 % und monatlichen Zinszahlungen.
Effect (0.05, 12)
244
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Gibt 0,0512 (auf vier Dezimalstellen gerundet) zurück, was einem effektiven
Zinssatz von 5,12 % entspricht.
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Siehe auch
•
Nominal (Satz, nVergleichbareZeiträume)
FV
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
FV (rate, nPeriods, payment)
FV (rate, nPeriods, payment, presentValue)
FV (rate, nPeriods, payment, presentValue, type)
Argumente
•
•
"Satz" ist eine Zahl, mit der der Zinssatz pro Zeitraum angegeben wird.
•
"Bezahlung" ist eine Zahl oder eine Währung, die Ihre in jedem Zeitraum
zu leistenden Zahlungen angibt.
•
AktuellerWert ist eine optionale Zahl oder Währung, die den
momentanen Wert einer Reihe zukünftiger Zahlungen angibt.
•
type ist eine optionale Zahl und gibt an, wann Zahlungen fällig sind.
Geben Sie 0 an, wenn die Zahlungen am Ende der Zahlungsperiode
fällig sind, und 1, wenn sie zu Beginn des Zeitraumes fällig sind. Wenn
diese Angabe weggelassen wird, wird 0 verwendet.
"nZeiträume" ist eine positive Zahl, mit der die Gesamtanzahl von
Zahlungsperioden in der Annuität angegeben wird. Für "Satz" und
"nZeiträume" müssen dieselben Einheiten verwendet werden. Wenn z. B.
in "nZeiträume" die Anzahl der Perioden in Monaten angegeben wird,
dann wird in "Satz" die monatliche Zinsrate angegeben.
Rückgabewert
Zahlenwert
Aktion
FV gibt eine Zahl zurück, die den zukünftigen Wert einer Annuität auf
Grundlage festgelegter periodischer Zahlungen und eines festgelegten
Zinssatzes angibt.
Crystal Reports-Anwenderhandbuch 245
8
8
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie zahlen jeden Monat 1.000 € in einen
Altersversorgungsplan ein, der 6 % Zinsen im Jahr abwirft, die monatlich
verrechnet werden. Wie viel wäre das Konto nach 20 Jahren wert?
FV (0.06 / 12, 20 * 12, -1000)
Gibt 462041 zurück (auf die nächste ganze Zahl gerundet). Damit beläuft
sich der Kontostand auf 462.041 €. Die Zahlung (-1000) ist negativ, da
Sie Einzahlungen in den Plan leisten.
Im oberen Beispiel wird davon ausgegangen, dass Sie die Einzahlungen in
den Plan am Monatsende leisten. Daher wären in Ihren Plan nach dem ersten
Monat erst insgesamt 1.000 € eingezahlt worden, da noch keine Zinszahlung
eingegangen ist. Angenommen, Sie möchten Ihre Zahlungen zu
Monatsbeginn leisten:
FV (0.06 / 12, 20 * 12, -1000, 0, 1)
Gibt 464351 zurück (auf die nächste ganze Zahl gerundet). Damit beläuft
sich der Kontostand auf 464.351 €. Sie sparen 2.310 € mehr, wenn Sie
die Rücklagenzahlung zu Monatsbeginn leisten.
Angenommen, Sie leisten nicht nur die Einzahlung zu Monatsbeginn,
sondern beginnen Ihren Plan mit einer Starteinlage von 20.000 €.
FV (0.06 / 12, 20 * 12, -1000, -20000, 1)
Gibt 530555 zurück (auf die nächste ganze Zahl gerundet). Nach 20
Jahren beläuft sich der Kontostand auf 530.555 €.
Sie können die Funktion FV auch dazu verwenden, den zukünftigen Wert
einer Pauschaleinlage zu berechnen. Hier ein Beispiel für eine Einlage von
20.000 € in einen Plan, der einen Jahreszins von 6 % abwirft, der monatlich
über einen Zeitraum von 20 Jahren eingezahlt wird:
FV (0.06 / 12, 20 * 12, 0, -20000)
Gibt 66204 zurück (auf die nächste ganze Zahl gerundet). Damit beläuft
sich Ihr Kontostand auf 66.204 €. Dies entspricht der Differenz aus den
vorigen 2 Beispielen (530.555 € - 464.351 €).
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
246
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
FVSchedule (Wert, Sätze)
Basic- und Crystal-Syntax.
Argumente
•
Wert ist eine Zahl oder Währung, die den derzeitigen Wert der Investition
angibt.
•
Sätze ist ein Zahlenarray, der den Zinssatz für gleich lange Zeiträume
angibt.
Rückgabewert
Currency-Wert
Aktion
FVSchedule gibt den zukünftigen Wert einer Investition unter
Berücksichtigung der Zinssätze für mehrere vergleichbare Zeiträume zurück.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Investition in Höhe von 50.000 € hat im ersten Jahr einen
garantierten Zinssatz von 5 %, im zweiten Jahr von 5,5 % und im dritten Jahr
von 6 %.
Rem Basic-Syntax
formula = FVSchedule(50000, Array(0.05,0.055,0.06))
//Crystal-Syntax
FVSchedule(50000,[0.05,0.055,0.06])
Gibt 58.710,75 € als Wert der Investition nach dem dritten Jahr zurück.
Angenommen, Sie verfügen über eine Datenbanktabelle mit Informationen
über mehrere Typen von 5-Jahres-Sparbriefen. Die Tabelle enthält die
folgenden Felder: {Tabelle.Stückelung}, {Tabelle.SatzJahr1},
{Tabelle.SatzJahr2}, {Tabelle.SatzJahr3}, {Tabelle.SatzJahr4},
{Tabelle.SatzJahr5}. Um die verschiedenen Anleihetypen zuverlässig zu
vergleichen, entscheiden Sie sich dafür, jeden Anleihetyp bezogen auf 100 €
des Endwertes zu berechnen. Die folgende Formel (in Crystal-Syntax) stellt
einen guten Ausgangspunkt dar, um die verschiedenen Anleihetypen zu
vergleichen:
FVSchedule (100,[{Tabelle.SatzJahr1},
{Tabelle.SatzJahr2}, {Tabelle.SatzJahr3},
{Tabelle.SatzJahr4}, {Tabelle.SatzJahr5}])
Crystal Reports-Anwenderhandbuch 247
8
8
Funktionen
Finanzen
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
IntRate
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
IntRate (Zahlungsdatum, Fälligkeitsdatum, Preis, Rückzahlungswert)
IntRate (Zahlungsdatum, Fälligkeitsdatum, Preis, Rückzahlungswert,
Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
Preis ist eine positive Zahl oder Währung, die den Wert des Wertpapiers
zum Zeitpunkt seines Erwerbs angibt.
•
Rückzahlungswert ist eine positive Zahl oder Währung, die den Betrag
angibt, der bei Fälligkeit für das Wertpapier erzielt wird.
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Zahlenwert
Aktion
IntRate gibt den Zinssatz für eine Wertpapierinvestition zurück. Die folgende
Formel wird verwendet:
= (Rückzahlungswert - aktuellerWert) / aktuellerWert *
(Teiljahr entsprechend der Basismethode)
248
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Wertpapier wird am 15. Januar 2000 für 1.000 € erworben
und hat das Fälligkeitsdatum 30. April 2000 sowie einen Rückzahlungswert
von 1.010 €. Bei Verwendung einer 30/360-Basis (einem für USStaatsanleihen üblichen Verfahren) kann der Zinssatz mit der folgenden
Formel berechnet werden:
IntRate(DateValue(2000,1,15),DateValue(2000,4,30),1000,1
010,0)
Gibt 0,0343 (auf vier Dezimalstellen gerundet) zurück, was einem Zinssatz
von 3,43 % entspricht.
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Siehe auch
•
Received
IPmt
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
IPmt (Satz, Zeitraum, nZeiträume, aktuellerWert)
IPmt (Satz, Zeitraum, nZeiträume, aktuellerWert, zukünftigerWert)
IPmt (Satz, Zeitraum, nZeiträume, aktuellerWert, zukünftigerWert, Typ)
Argumente
•
•
"Satz" ist eine Zahl, mit der der Zinssatz pro Zeitraum angegeben wird.
•
"nZeiträume" ist eine positive Zahl, mit der die Gesamtanzahl von
Zahlungsperioden in der Annuität angegeben wird. Für Satz, Zeitraum
und nZeiträume müssen dieselben Einheiten verwendet werden. Wenn z.
B. in nPeriods die Anzahl der Perioden in Monaten angegeben wird,
dann wird in rate der monatliche Zinssatz und in period ein Monat
angegeben.
Zeitraum ist eine Zahl, mit der die Zahlungsperiode im Bereich 1 bis
nZeiträume angegeben wird.
Crystal Reports-Anwenderhandbuch 249
8
8
Funktionen
Finanzen
•
"aktuellerWert" ist eine Zahl oder eine Währung, die den derzeitigen oder
heutigen Wert einer Reihe zukünftiger Zahlungen oder
Zahlungseingänge angibt.
•
"zukünftigerWert" ist eine optionale Zahl oder Währung, die den
zukünftigen Wert oder Saldo angibt, den Sie nach Leistung der letzten
Zahlung erreichen möchten. Wenn diese Angabe weggelassen wird, wird
0 verwendet.
•
"Typ" ist eine optionale Zahl, die angibt, wann Zahlungen fällig sind.
Geben Sie 0 an, wenn die Zahlungen am Ende der Zahlungsperiode
fällig sind, und 1, wenn sie zu Beginn des Zeitraumes fällig sind. Wenn
diese Angabe weggelassen wird, wird 0 verwendet.
Rückgabewert
Zahlenwert
Aktion
IPmt gibt eine Zahl zurück, die die Zinszahlung für einen festgelegten
Zeitraum einer Annuität auf Grundlage festgelegter periodischer Zahlungen
und eines festgelegten Zinssatzes angibt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie möchten einen Kredit in Höhe von 250.000 € aufnehmen,
zahlbar in Monatsraten über 15 Jahre bei einem Jahreszinssatz von 7 %. Die
folgende Formel gibt den Zinsbetrag zurück, der bei der ersten
Tilgungszahlung fällig wird. Beachten Sie, dass der Monatszinssatz 0,07 / 12
und die Anzahl der Monate des Darlehens 15 * 12 beträgt.
IPmt (0.07 / 12, 1, 15 * 12, 250000)
Gibt den Zahlenwert -1458.33 (auf 2 Dezimalstellen gerundet) zurück.
Dieser Wert ist negativ, da er eine Zahlung von Ihnen darstellt, während
der Darlehensbetrag in Höhe von 250.000 € positiv ist, da er einen
Zahlungseingang bildet.
Die folgende Formel gibt den Zinsbetrag zurück, den Sie bei Ihrer 121.
Zahlung (nach 10 Tilgungsjahren) zahlen:
IPmt (0.07 / 12, 10*12 + 1, 15 * 12, 250000)
Gibt -661.98 (auf 2 Dezimalstellen gerundet) zurück. Da Sie mit Ihrer
Rückzahlung vorangekommen sind, wird nicht mehr so viel von Ihrer
monatlichen Zahlung für die Zinsen verwendet.
250
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
IRR
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
IRR (Werte)
IRR (Werte, Schätzung)
Argumente
•
"Werte" ist ein Array des Number- oder Währungstyps, der die CashflowWerte angibt. Der Array muss mindestens einen negativen Wert
(Zahlung) und einen positiven Wert (Zahlungseingang) enthalten. Die
Cashflow-Zahlungen müssen in regelmäßigen Abständen geleistet
werden, beispielsweise monatlich oder jährlich.
•
"Schätzung" ist eine optionale Zahl, die den geschätzten Rückgabewert
von IRR enthält. Wenn diese Angabe weggelassen wird, wird für
"Schätzung" der Wert 0,1 (10 %) verwendet.
Rückgabewert
Zahlenwert
Aktion
IRR gibt eine Zahl zurück, die eine interne Gewinnrate für eine Folge
periodisch ein- und ausgehender Cashflow-Werte angibt.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie können zwischen zwei Angeboten wählen: Eine
Auszahlung von 20.000 € jetzt oder garantierte Zahlungen von 5.000 € nach
1 Jahr, 10.000 € nach 2 Jahren und 15.000 € nach 3 Jahren. Welches
Angebot ist besser? Ein Verfahren, dies rechnerisch zu ermitteln, besteht
darin, die interne Gewinnrate auszurechnen. Wenn Sie sich für das zweite
Angebot entscheiden, können Sie das erste nicht mehr annehmen. Es wäre
also so, als würden Sie eine Zahlung von 20.000 € leisten, auf die diese
Zahlungseingänge folgen:
Rem Basic-Syntax
formula = IRR (Array(-20000, 5000, 10000, 15000))
Crystal Reports-Anwenderhandbuch 251
8
8
Funktionen
Finanzen
//Crystal-Syntax
IRR ([-20000, 5000, 10000, 15000])
Gibt 0,194 (auf 3 Kommastellen gerundet) bzw. einen Zinssatz von 19,4
% zurück. Da alle anderen Faktoren dieselben sind, sollten Sie das
zweite Angebot vorziehen, falls Sie 19,4 % für eine zufriedenstellende
Gewinnrate halten.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Die Funktionen NPV und IRR stehen in folgender Beziehung: NPV (IRR
(Werte), Werte) = 0. Dies bedeutet, die interne Gewinnrate einer Folge
von Cashflow-Zahlungen bildet den Zinssatz, für den diese Folge von
Cashflow-Werten den jetzigen Nettowert 0 hat.
•
Für die Funktion IRR gibt es keine direkte Formel, und daher berechnet
Crystal Reports den Wert durch Iteration. Dieser Vorgang hängt von der
ursprünglichen Einschätzung der internen Gewinnrate ab. Wenn vom
Programm eine Fehlermeldung ausgegeben wird, versuchen Sie es mit
einem anderen Wert für das Argument guess, um einen Wert zu finden,
der der tatsächlichen internen Gewinnrate eher entsprechen könnte.
ISPMT (Satz, Zeitraum, nZeiträume, aktuellerWert)
Basic- und Crystal-Syntax.
Argumente
•
•
•
"Satz" ist eine Zahl, mit der der Zinssatz pro Zeitraum angegeben wird.
•
aktuellerWert ist der Wert einer Investition oder eines Darlehens.
"Zeitraum" ist eine Zahl, die den Zinszeitraum angibt.
"nZeiträume" ist eine positive Zahl, mit der die Gesamtanzahl von
Zahlungsperioden in der Annuität angegeben wird. Für "Satz" und
"nZeiträume" müssen dieselben Einheiten verwendet werden. Wenn z. B.
in "nZeiträume" die Anzahl der Perioden in Monaten angegeben wird,
dann wird in "Satz" die monatliche Zinsrate angegeben.
Rückgabewert
Currency-Wert
Aktion
ISPMT gibt die während eines bestimmten Zeitraums gezahlten Zinsen
zurück. Bei dieser Funktion wird vorausgesetzt, dass in jedem Zeitraum
gleich hohe Raten des Darlehensbetrags getilgt werden.
252
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, 1.000 € werden über 10 Jahre zu einem Zinssatz von 4 %
aufgenommen, und die 1.000 € müssen in jährlich gleichen Raten getilgt
werden.
ISPMT(0.04,0,10,1000)
Gibt –40 € zurück. Diese Zinsen sind für das erste Jahr (nullter Zeitraum)
fällig. Im ersten Jahr sind die gesamten 1.000 € zu einem Zinssatz von 4 %
ungetilgt. Daraus folgt: 1.000 € x 0,04 = 40 €. Der Wert ist negativ, da er eine
Zahlung von 40 € darstellt.
ISPMT(0.04,3,10,1000)
Gibt -28 € zurück. Diese Zinsen sind für das vierte Jahr (dritter Zeitraum)
fällig. Zu diesem Zeitpunkt wurden drei Raten à 100 € gezahlt, so dass
Zinsen in Höhe von (1.000 € - 3 x 100 €) x 0,04 = 28 € anfallen.
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
IPmt
PPmt
Pmt
MDuration
Basic- und Crystal-Syntax.
Syntax der Argumente
•
MDuration (Zahlungsdatum, Fälligkeitsdatum, Anleihezins, Ertrag,
Häufigkeit)
•
MDuration (Zahlungsdatum, Fälligkeitsdatum, Anleihezins, Ertrag,
Häufigkeit, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Anleihezins" ist eine nicht negative Zahl, die den Zinssatz für das
Wertpapier angibt.
Crystal Reports-Anwenderhandbuch 253
8
8
Funktionen
Finanzen
•
"Ertrag" ist eine nicht negative Zahl, die den Ertrag des Wertpapiers
angibt.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Zahlenwert
Aktion
MDuration gibt eine Zahl zurück, die die geänderte Laufzeit einer Anleihe
darstellt. Die Laufzeit ist der gewichtete Durchschnitt der ZinszahlungsCashflows und gilt als Maßstab für das Zinssatzrisiko der Anleihe. MDuration
dividiert die Laufzeit durch (1 + Ertrag/Häufigkeit).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe mit einer Laufzeit von 10 Jahren, einem
Anleihezins von 12 %, einem Ertrag von 13 % sowie halbjährlichen
Zahlungen wird am 25. Januar 2000 erworben und hat das Fälligkeitsdatum
1. Oktober 2003. Es wird die 30/360-Standardbasis zugrunde gelegt.
MDuration(DateValue(2000,1,25),DateValue(2003,10,1),0.12
,0.13,2)
Gibt 2,781144 als geänderte Laufzeit der Anleihe zurück.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
254
Duration
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
MIRR (Werte, Finanzsatz, Wiederanlagesatz)
Basic- und Crystal-Syntax.
Argumente
•
"Werte" ist ein Array des Number- oder Währungstyps, der die CashflowWerte angibt. Der Array muss mindestens einen negativen Wert
(Zahlung) und einen positiven Wert (Zahlungseingang) enthalten. Die
Cashflow-Zahlungen müssen in regelmäßigen Abständen geleistet
werden, beispielsweise monatlich oder jährlich.
•
"Finanzsatz" ist eine Zahl, die den Zinssatz angibt, der als Kosten der
Finanzierung gezahlt wird.
•
"Wiederanlagesatz" ist eine Zahl, die den Zinssatz angibt, der aus
Gewinnen aus Kapitalneuanlagen zufließt.
Rückgabewert
Zahlenwert
Aktion
MIRR gibt eine Zahl zurück, die eine interne Gewinnrate für eine Folge
periodisch geleisteter Cashflow-Zahlungen (Zahlungen und
Zahlungseingänge) angibt.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie leiten ein Geschäft, das in Anlagen investiert und dabei im
ersten und im vierten Jahr Verlust macht. Ihre erwarteten jährlichen
Gewinnraten betragen: -$50,000, $40,000, $65,000, -$60,000, $50,000,
$70,000. Ihre Verluste werden mit 10 % finanziert, während Sie Ihre Gewinne
bei 6 % in ein Konto rückinvestieren. Die geänderte interne Gewinnrate sieht
jetzt so aus:
Rem Basic-Syntax
formula = MIRR(Array(-50000, 40000, 65000, -60000, 50000,
70000), 0.10, 0.06)
//Crystal-Syntax
MIRR([-50000, 40000, 65000, -60000, 50000, 70000], 0.10,
0.06)
Gibt 0,214 (auf 3 Kommastellen gerundet) bzw. 21,4 % zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Crystal Reports-Anwenderhandbuch 255
8
8
Funktionen
Finanzen
Nominal (Satz, nVergleichbareZeiträume)
Basic- und Crystal-Syntax.
Argumente
•
•
Satz ist eine Zahl, die den Jahreszinssatz angibt.
nVergleichbareZeiträume ist eine positive Zahl, die die Anzahl der
vergleichbaren Zeiträume pro Jahr angibt.
Rückgabewert
Zahlenwert
Aktion
Nominal gibt den Nominaljahreszins unter Berücksichtigung des effektiven
Zinssatzes und der Anzahl der vergleichbaren Zeiträume zurück.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein neues Sparkonto verfügt über einen Zinseszinssatz (oder
effektiven Zinssatz) von 4,02 % bei halbjährlichen Zinszahlungen. Dieses
neue Konto soll mit einem vorhandenen Konto verglichen werden.
Nominal (0.0402, 2)
Gibt 0,0398 (auf vier Dezimalstellen gerundet) zurück, was einem
Jahreszinssatz von 3,98 % entspricht.
Anmerkungen
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Siehe auch
•
Effect (Satz, nVergleichbareZeiträume)
NPer
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
256
NPer (Satz, Bezahlung, aktuellerWert)
NPer (Satz, Bezahlung, aktuellerWert, zukünftigerWert)
NPer (Satz, Bezahlung, aktuellerWert, zukünftigerWert, Typ)
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Argumente
•
•
"Satz" ist eine Zahl, mit der der Zinssatz pro Zeitraum angegeben wird.
•
"aktuellerWert" ist eine Zahl oder eine Währung, die den derzeitigen oder
heutigen Wert einer Reihe zukünftiger Zahlungen oder
Zahlungseingänge angibt.
•
"zukünftigerWert" ist eine optionale Zahl oder Währung, die den
zukünftigen Wert oder Saldo angibt, den Sie nach Leistung der letzten
Zahlung erreichen möchten. Wenn diese Angabe weggelassen wird, wird
0 verwendet.
•
"Typ" ist eine optionale Zahl, die angibt, wann Zahlungen fällig sind.
Geben Sie 0 an, wenn die Zahlungen am Ende der Zahlungsperiode
fällig sind, und 1, wenn sie zu Beginn des Zeitraumes fällig sind. Wenn
diese Angabe weggelassen wird, wird 0 verwendet.
"Bezahlung" ist eine Zahl oder eine Währung, die Ihre in jedem Zeitraum
zu leistenden Zahlungen angibt. Zahlungen werden gewöhnlich für eine
Restschuld und einen Zinssatz geleistet, die bzw. der sich im Verlauf der
Annuität nicht ändert.
Rückgabewert
Zahlenwert
Aktion
NPer gibt eine Zahl zurück, die die Anzahl der Perioden für eine Annuität auf
Grundlage festgelegter periodischer Zahlungen und eines festgelegten
Zinssatzes angibt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie möchten ein Darlehen in Höhe von 200.000 € aufnehmen,
um ein Haus zu kaufen. Der Zinssatz liegt bei 7 %, und Sie können monatlich
ca. 2.500 € zurückzahlen. Was für eine Laufzeit muss das Darlehen haben?
NPer (0.07/12, -2500, 200000)
Gibt 108,08 (auf 2 Kommastellen gerundet) Monate zurück. Das
entspricht 108,08 / 12 = 9 Jahren.
Angenommen, Sie nehmen kein Darlehen auf, sondern sparen 200.000 € und
kaufen danach das Haus. Sie möchten monatlich 2.500 € sparen bei einem
Zinssatz von 7 %, die monatlich einfließen. Wie lange müssen Sie sparen, bis
Sie das Geld zusammen haben?
NPer (0.07/12, -2500, 0, 200000)
Crystal Reports-Anwenderhandbuch 257
8
8
Funktionen
Finanzen
Gibt 65.85 (auf 2 Dezimalstellen gerundet) Monate zurück. Das
entspricht ungefähr 5,5 Jahren.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
NPV (Satz, Werte)
Basic- und Crystal-Syntax.
Argumente
•
•
rate ist eine Zahl, die als Dezimalzahl den Diskont pro Zeitraum angibt.
"Werte" ist ein Array des Number- oder Währungstyps, der die CashflowWerte angibt. Negative Werte sind Zahlungen, positive Werte sind
Zahlungseingänge. Die Cashflow-Zahlungen müssen in regelmäßigen
Abständen geleistet werden, beispielsweise monatlich oder jährlich.
Rückgabewert
Zahlenwert
Aktion
NPV gibt eine Zahl zurück, die den Nettowert einer Investition angibt, die auf
einer Folge periodisch geleisteter Cashflow-Werte und einem Diskontsatz
beruht.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, jemand bietet Ihnen an, Ihnen nach 1 Jahr 1.000 € zu zahlen,
nach 2 Jahren 2.000 €, nach 3 Jahren 1.500 € und nach 4 Jahren 1.200 €.
Wenn der Diskontsatz (der Time-Wert von Geld) bei 5 Prozent liegt, dann hat
dieses Angebot heute folgenden Wert für Sie:
Rem Basic-Syntax
formula = NPV (0.05, Array (1000, 2000, 1500, 1200))
//Crystal-Syntax
NPV (0.05, [1000, 2000, 1500, 1200])
Die Formel gibt 5049,44 (auf 2 Kommastellen gerundet) zurück. Somit ist
dieser Plan für Sie heute 5.049,44 € wert. Dieser Wert ist niedriger als die
Summe der Zahlungen, die sich auf 5.700 € beläuft, da Sie ja auf das
Geld warten müssen.
258
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Die Funktionen NPV und IRR stehen in folgender Beziehung: NPV (IRR
(Werte), Werte) = 0. Dies bedeutet, die interne Gewinnrate einer Folge
von Cashflow-Zahlungen bildet den Diskontsatz, für den diese Folge von
Cashflow-Werten den jetzigen Nettowert 0 hat.
OddFPrice
Basic- und Crystal-Syntax.
Syntax der Argumente
•
OddFPrice (Zahlungsdatum, Fälligkeitsdatum, Ausgabedatum,
ersterZinstermin, Satz, Ertrag, Rückzahlungswert, Häufigkeit)
•
OddFPrice (Zahlungsdatum, Fälligkeitsdatum, Ausgabedatum,
ersterZinstermin, Satz, Ertrag, Rückzahlungswert, Häufigkeit, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
Ausgabedatum entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier ausgegeben wurde.
•
ersterZinstermin entspricht entweder Date oder DateTime und gibt an,
wann die erste Zinszahlung für das Wertpapier erfolgt. Dieses Datum
muss nach dem Zahlungsdatum und vor dem Fälligkeitsdatum liegen.
Wenn das Wertpapier über vierteljährliche Zahlungen verfügt, muss der
erste Zinstermin beispielsweise eine genaue Anzahl von Quartalen vor
dem Fälligkeitsdatum liegen.
•
"Satz" ist eine nicht negative Zahl, die den Zinssatz für alle Zinsen angibt,
die durch das Wertpapier erzielt werden.
•
"Ertrag" ist eine nicht negative Zahl, die den Ertrag des Wertpapiers
angibt.
•
"Rückzahlungswert" ist eine Zahl bzw. Währung, die den
Rückzahlungswert des Wertpapiers pro 100 € des Nennwertes angibt.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
Crystal Reports-Anwenderhandbuch 259
8
8
Funktionen
Finanzen
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
Aktion
OddFPrice gibt den Preis eines Wertpapiers zurück, das zwar über
regelmäßige Zinszahlungen, jedoch über einen abweichenden ersten
Zeitraum verfügt. Der erste Zeitraum kann kürzer oder länger als die übrigen
Zeiträume sein.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe wurde am 15. Oktober 1999 ausgegeben, hatte
den ersten Zinstermin am 1. September 2000 und das Fälligkeitsdatum 1.
September 2005. Der Zinssatz der Anleihe betrug 4,5 % und der Ertrag 5 %.
Die Anleihe verfügt (nach dem ersten abweichenden Zeitraum) über
halbjährliche Zinszahlungen und einen Rückzahlungskurs von 100 € (pro 100
€ des Nennwertes). Es wird die 30/360-Basis zugrunde gelegt. Wenn die
Anleihe am 22. Januar 2000 erworben wird, wird der Anleihepreis mit der
folgenden Formel berechnet:
OddFPrice (DateValue(2000,1,22), DateValue(2005,9,1),
DateValue(1999,10,15), DateValue (2000,9,1), 0.045,
0.05, 100, 2, 0)
Gibt 97,54 € zurück. Beachten Sie, dass diese Funktion den Preis unter
Berücksichtigung des Ertrags und die Funktion OddFYield den Ertrag unter
Berücksichtigung des Preises berechnet.
Anmerkungen
•
•
260
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Diese Funktion ist die Umkehrung der verwandten Funktion OddFYield.
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Siehe auch
•
•
•
•
•
OddFYield
OddLPrice
OddLYield
Price
Yield
OddFYield
Basic- und Crystal-Syntax.
Syntax der Argumente
•
OddFYield (Zahlungsdatum, Fälligkeitsdatum, Ausgabedatum,
ersterZinstermin, Satz, Preis, Rückzahlungswert, Häufigkeit)
•
OddFYield (Zahlungsdatum, Fälligkeitsdatum, Ausgabedatum,
ersterZinstermin, Satz, Preis, Rückzahlungswert, Häufigkeit, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
Ausgabedatum entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier ausgegeben wurde.
•
ersterZinstermin entspricht entweder Date oder DateTime und gibt an,
wann die erste Zinszahlung für das Wertpapier erfolgt. Dieses Datum
muss nach dem Zahlungsdatum und vor dem Fälligkeitsdatum liegen.
Wenn das Wertpapier über vierteljährliche Zahlungen verfügt, muss der
erste Zinstermin beispielsweise eine genaue Anzahl von Quartalen vor
dem Fälligkeitsdatum liegen.
•
"Satz" ist eine nicht negative Zahl, die den Zinssatz für alle Zinsen angibt,
die durch das Wertpapier erzielt werden.
•
"Preis" ist eine nicht negative Zahl bzw. Währung, die den Kaufpreis des
Wertpapiers pro 100 € des Nennwertes angibt.
•
"Rückzahlungswert" ist eine Zahl bzw. Währung, die den
Rückzahlungswert des Wertpapiers pro 100 € des Nennwertes angibt.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
Crystal Reports-Anwenderhandbuch 261
8
8
Funktionen
Finanzen
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
Aktion
OddFYield gibt den Ertrag eines Wertpapiers zurück, das zwar über
regelmäßige Zinszahlungen, aber einen abweichenden ersten Zeitraum
verfügt. Der erste Zeitraum kann kürzer oder länger als die übrigen Zeiträume
sein.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe wurde am 15. Oktober 1999 ausgegeben, hatte
den ersten Zinstermin am 1. September 2000 und das Fälligkeitsdatum 1.
September 2005. Der Zinssatz der Anleihe betrug 4,5 % und der Preis 97,54
€. Die Anleihe verfügt (nach dem ersten abweichenden Zeitraum) über
halbjährliche Zinszahlungen und einen Rückzahlungskurs von 100 € (pro 100
€ des Nennwertes). Es wird die 30/360-Basis zugrunde gelegt. Wenn die
Anleihe am 22. Januar 2000 erworben wird, wird der Ertrag der Anleihe mit
der folgenden Formel berechnet:
OddFYield(DateValue(2000,1,22), DateValue(2005,9,1),
DateValue(1999,10,15), DateValue (2000,9,1), 0.045,
97.54, 100, 2, 0)
Gibt 0,0500 (auf vier Dezimalstellen gerundet) zurück, was einem Ertrag von
5 % entspricht.
Anmerkungen
•
•
•
262
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Diese Funktion ist die Umkehrung der verwandten Funktion OddFPrice.
Da keine explizite Formel zur Ertragsberechnung verfügbar ist,
verwendet Crystal Reports eine iterative Technik mittels der Formel für
OddFPrice. Es wird ein Ertragswert geschätzt und der abweichende
erste Preis berechnet.
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Dieser berechnete Preis wird mit dem angegebenen Preis verglichen,
und es wird ein neuer Ertrag geschätzt. Dieser Vorgang wird so lange
wiederholt, bis berechneter und angegebener Preis übereinstimmen.
Siehe auch
•
•
•
•
•
OddFPrice
OddLPrice
OddLYield
Price
Yield
OddLPrice
Basic- und Crystal-Syntax.
Syntax der Argumente
•
OddLPrice (Zahlungsdatum, Fälligkeitsdatum, letzterZinstermin, Satz,
Ertrag, Rückzahlungswert, Häufigkeit)
•
OddLPrice (Zahlungsdatum, Fälligkeitsdatum, letzterZinstermin, Satz,
Ertrag, Rückzahlungswert, Häufigkeit, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
letzterZinstermin entspricht entweder Date oder DateTime und gibt an,
wann die letzte Zinszahlung für das Wertpapier erfolgt. Dieses Datum
muss vor dem Zahlungsdatum liegen.
•
"Satz" ist eine nicht negative Zahl, die den Zinssatz für alle Zinsen angibt,
die durch das Wertpapier erzielt werden.
•
"Ertrag" ist eine nicht negative Zahl, die den Ertrag des Wertpapiers
angibt.
•
"Rückzahlungswert" ist eine Zahl bzw. Währung, die den
Rückzahlungswert des Wertpapiers pro 100 € des Nennwertes angibt.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
Crystal Reports-Anwenderhandbuch 263
8
8
Funktionen
Finanzen
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
Aktion
OddLPrice gibt den Preis eines Wertpapiers zurück, das zwar über
regelmäßige Zinszahlungen, aber einen abweichenden letzten Zeitraum
verfügt. Der letzte Zeitraum kann kürzer oder länger als die übrigen
Zeiträume sein.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe mit einem Zinssatz von 4,5 % und einem Ertrag
von 4,15 % wird am 25. Juni 2000 fällig. Der letzte Zinstermin vor Fälligkeit
war der 30. September 1999, und die Anleihe wurde am 10. Januar 2000
erworben. Bei vierteljährlichen Zinszahlungen, einem Rückzahlungskurs von
100 € und Zugrundelegung einer 30/360-Basis kann der Kaufpreis mit der
folgenden Formel berechnet werden:
OddLPrice(DateValue(2000,1,10), DateValue(2000,6,25),
DateValue(1999,9,30), 0.045, 0.0415, 100, 4, 0)
Gibt 100,13 € (auf die nächste ganze Zahl gerundet) zurück.
Anmerkungen
•
•
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Diese Funktion ist die Umkehrung der verwandten Funktion OddLYield.
Siehe auch
•
•
•
•
•
264
OddFPrice
OddFYield
OddLYield
Price
Yield
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
OddLYield
Basic- und Crystal-Syntax.
Syntax der Argumente
•
OddLYield (Zahlungsdatum, Fälligkeitsdatum, letzterZinstermin, Satz,
Preis, Rückzahlungswert, Häufigkeit)
•
OddLYield (Zahlungsdatum, Fälligkeitsdatum, letzterZinstermin, Satz,
Preis, Rückzahlungswert, Häufigkeit, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
letzterZinstermin entspricht entweder Date oder DateTime und gibt an,
wann die letzte Zinszahlung für das Wertpapier erfolgt. Dieses Datum
muss vor dem Zahlungsdatum liegen.
•
"Satz" ist eine nicht negative Zahl, die den Zinssatz für alle Zinsen angibt,
die durch das Wertpapier erzielt werden.
•
"Preis" ist eine nicht negative Zahl bzw. Währung, die den Kaufpreis des
Wertpapiers pro 100 € des Nennwertes angibt.
•
"Rückzahlungswert" ist eine Zahl bzw. Währung, die den
Rückzahlungswert des Wertpapiers pro 100 € des Nennwertes angibt.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
Crystal Reports-Anwenderhandbuch 265
8
8
Funktionen
Finanzen
Aktion
OddLYield gibt den Ertrag eines Wertpapiers zurück, das zwar über
regelmäßige Zinszahlungen, aber einen abweichenden letzten Zeitraum
verfügt. Der letzte Zeitraum kann kürzer oder länger als die übrigen
Zeiträume sein.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, eine Anleihe mit einem Zinssatz von 4,5 % und einem Preis
von 100,13 € wurde am 25. Juni 2000 fällig. Der letzte Zinstermin vor
Fälligkeit war der 30. September 1999, und die Anleihe wurde am 10. Januar
2000 erworben. Bei vierteljährlichen Zinszahlungen, einem
Rückzahlungskurs von 100 € und Zugrundelegung einer 30/360-Basis kann
der Kaufpreis mit der folgenden Formel berechnet werden:
OddLYield(DateValue(2000,1,10), DateValue(2000,6,25),
DateValue(1999,9,30), 0.045, 100.13, 100, 4, 0)
Gibt 0,0416 (auf vier Dezimalstellen gerundet) zurück, was einem Ertrag von
4,16 % entspricht.
Anmerkungen
•
•
•
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Diese Funktion ist die Umkehrung der verwandten Funktion OddLPrice.
Da keine explizite Formel zur Ertragsberechnung verfügbar ist,
verwendet Crystal Reports eine iterative Technik mittels der Formel für
OddLPrice. Es wird ein Ertragswert geschätzt und der abweichende
letzte Preis berechnet. Dieser berechnete Preis wird mit dem
angegebenen Preis verglichen, und es wird ein neuer Ertrag geschätzt.
Dieser Vorgang wird so lange wiederholt, bis berechneter und
angegebener Preis übereinstimmen.
Siehe auch
•
•
•
•
•
266
OddFPrice
OddFYield
OddLPrice
Price
Yield
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Pmt
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
Pmt (Satz, nZeiträume, aktuellerWert)
Pmt (Satz, nZeiträume, aktuellerWert, zukünftigerWert)
Pmt (Satz, nZeiträume, aktuellerWert, zukünftigerWert, Typ)
Argumente
•
•
"Satz" ist eine Zahl, mit der der Zinssatz pro Zeitraum angegeben wird.
•
presentValue ist eine Zahl oder eine Währung, die den derzeitigen Wert
oder die Restschuld angibt. Dies ist der Betrag, den eine Reihe von
zukünftigen Zahlungen jetzt wert ist.
•
"zukünftigerWert" ist eine optionale Zahl oder Währung, die den
zukünftigen Wert oder Saldo angibt, den Sie nach Leistung der letzten
Zahlung erreichen möchten. Wenn diese Angabe weggelassen wird, wird
0 verwendet.
•
"Typ" ist eine optionale Zahl, die angibt, wann Zahlungen fällig sind.
Geben Sie 0 an, wenn die Zahlungen am Ende der Zahlungsperiode
fällig sind, und 1, wenn sie zu Beginn des Zeitraumes fällig sind. Wenn
diese Angabe weggelassen wird, wird 0 verwendet.
"nZeiträume" ist eine positive Zahl, mit der die Gesamtanzahl von
Zahlungsperioden in der Annuität angegeben wird. Für "Satz" und
"nZeiträume" müssen dieselben Einheiten verwendet werden. Wenn z. B.
in "nZeiträume" die Anzahl der Perioden in Monaten angegeben wird,
dann wird in "Satz" die monatliche Zinsrate angegeben.
Rückgabewert
Zahlenwert
Aktion
Pmt gibt eine Zahl zurück, die die Zahlung für eine Annuität auf Grundlage
festgelegter periodischer Zahlungen und eines festgelegten Zinssatzes
angibt.
Crystal Reports-Anwenderhandbuch 267
8
8
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie möchten einen Kredit in Höhe von 250.000 € aufnehmen,
zahlbar in Monatsraten über 15 Jahre bei einem Jahreszinssatz von 7 %. Die
folgende Formel gibt Ihre monatliche Tilgungszahlung zurück: Beachten Sie,
dass der Monatszinssatz 0,07 / 12 und die Anzahl der Monate des Darlehens
15 * 12 beträgt.
Pmt (0.07 / 12, 15 * 12, 250000)
Gibt den Zahlenwert -2247,07 (auf 2 Kommastellen gerundet) zurück.
Dieser Wert ist negativ, da er eine Zahlung von Ihnen darstellt, während
der Darlehensbetrag in Höhe von 250.000 € positiv ist, da er einen
Zahlungseingang bildet.
Angenommen, die Zahlungen werden zu Monatsbeginn statt am Monatsende
(Standardeinstellung) geleistet. Ihre monatliche Tilgungszahlung wird
folgendermaßen berechnet:
Pmt (0.07 / 12, 15 * 12, 250000, 0, 1)
Gibt –2234,04 (auf 2 Dezimalstellen gerundet) zurück. Beachten Sie,
dass Ihre monatliche Zahlung um ca. 13 € niedriger ist als im vorherigen
Beispiel, in dem die Zahlungen am Monatsende geleistet werden.
Nehmen wir jetzt einmal an, dass Sie mit Sicherheit wissen, dass Sie in 15
Jahren eine Summe von 100.000 € erhalten werden, und daher das Darlehen
nicht vollständig zurückbezahlt, sondern lediglich nach 15 Jahren auf 100.000
€ reduziert werden muss. Beachten Sie, dass der zukünftige Betrag negativ
ist, da Sie nach 15 Jahren den Betrag von 100.000 € bezahlen müssen, um
die Kreditschuld zu tilgen. Ihre monatliche Tilgungszahlung wird
folgendermaßen berechnet:
Pmt (0.07 / 12, 15 * 12, 250000, -100000)
Gibt -1931,58 (auf 2 Dezimalstellen gerundet) zurück.
Anmerkungen
268
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Um den Gesamtbetrag zu ermitteln, der während des ganzen
Tilgungszeitraums gezahlt wird, multiplizieren Sie die Zahlung pro
Zeitraum (den von Pmt zurückgegebenen Wert) mit der Gesamtzahl von
Perioden (nPeriods).
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
PPmt
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
PPmt (Satz, Zeitraum, nZeiträume, aktuellerWert)
PPmt (Satz, Zeitraum, nZeiträume, aktuellerWert, zukünftigerWert)
PPmt (Satz, Zeitraum, nZeiträume, aktuellerWert, zukünftigerWert, Typ)
Argumente
•
•
"Satz" ist eine Zahl, mit der der Zinssatz pro Zeitraum angegeben wird.
•
"nZeiträume" ist eine positive Zahl, mit der die Gesamtanzahl von
Zahlungsperioden in der Annuität angegeben wird. Für Satz, Zeitraum
und nZeiträume müssen dieselben Einheiten verwendet werden. Wenn z.
B. in nPeriods die Anzahl der Perioden in Monaten angegeben wird,
dann wird in rate der monatliche Zinssatz und in period ein Monat
angegeben.
•
"aktuellerWert" ist eine Zahl oder eine Währung, die den derzeitigen oder
heutigen Wert einer Reihe zukünftiger Zahlungen oder
Zahlungseingänge angibt.
•
"zukünftigerWert" ist eine optionale Zahl oder Währung, die den
zukünftigen Wert oder Saldo angibt, den Sie nach Leistung der letzten
Zahlung erreichen möchten. Wenn diese Angabe weggelassen wird, wird
0 verwendet.
•
"Typ" ist eine optionale Zahl, die angibt, wann Zahlungen fällig sind.
Geben Sie 0 an, wenn die Zahlungen am Ende der Zahlungsperiode
fällig sind, und 1, wenn sie zu Beginn des Zeitraumes fällig sind. Wenn
diese Angabe weggelassen wird, wird 0 verwendet.
Zeitraum ist eine Zahl, mit der die Zahlungsperiode im Bereich 1 bis
nZeiträume angegeben wird.
Rückgabewert
Zahlenwert
Aktion
PPmt gibt eine Zahl zurück, mit der die Tilgungszahlung für einen
festgelegten Zeitraum einer Annuität auf Grundlage festgelegter periodischer
Zahlungen und eines festgelegten Zinssatzes angegeben wird.
Crystal Reports-Anwenderhandbuch 269
8
8
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie möchten einen Kredit in Höhe von 250.000 € aufnehmen,
zahlbar in Monatsraten über 15 Jahre bei einem Jahreszinssatz von 7 %. Die
folgende Formel gibt die Höhe der Tilgungssumme zurück, die Sie bei Ihrer
ersten Rückzahlung leisten. Beachten Sie, dass der Monatszinssatz 0,07 / 12
und die Anzahl der Monate des Darlehens 15 * 12 beträgt.
PPmt (0.07 / 12, 1, 15 * 12, 250000)
Gibt den Zahlenwert –788,74 (auf 2 Dezimalstellen gerundet) zurück.
Dieser Wert ist negativ, da er eine Zahlung von Ihnen darstellt, während
der Darlehensbetrag in Höhe von 250.000 € positiv ist, da er einen
Zahlungseingang bildet.
Die folgende Formel gibt die Höhe der Tilgungssumme zurück, die Sie bei
Ihrer 121. Zahlung (nach 10 Zahlungsjahren) leisten:
PPmt (0.07 / 12, 10*12 + 1, 15 * 12, 250000)
Gibt -1585,09 (auf 2 Dezimalstellen gerundet) zurück. Da Sie mit Ihrer
Rückzahlung vorangekommen sind, wird jetzt ein größerer Teil Ihrer
monatlichen Zahlung für die Restschuld verwendet. Dies liegt daran,
dass weniger Zins pro Monat anfällt, weil ein größerer Teil des Darlehens
abbezahlt worden ist, wodurch ein größerer Teil Ihrer feststehenden
monatlichen Zahlungen für die Restschuld selbst verwendet wird.
Die folgende Formel in Basic-Syntax gibt den Darlehensbetrag an, der nach
10 Jahren durch Aufsummieren der ersten 120 monatlichen
Tilgungszahlungen getilgt wurde:
Rem Basic-Syntax
Dim gesamt, i
gesamt = 0
For i = 1 To 10 * 12
gesamt = gesamt + PPmt (0.07 / 12, i, 15 * 12, 250000)
Next i
formula = gesamt
Gibt -136518,45 (auf 2 Dezimalstellen gerundet) zurück. Nach der 120.
Zahlung haben Sie 136.518,45 € abbezahlt und schulden noch
113.481,55 €.
Die Höhe Ihrer Restschuld nach 10 Jahren können Sie auch mit Hilfe von 2
Finanzfunktionen errechnen:
Rem Basic-Syntax
Dim Zahlung
Zahlung = Pmt (0.07 / 12, 15 * 12, 250000)
formula = FV (0.07 / 12, 10 * 12, Zahlung, 250000)
270
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Gibt –113481,55 (auf 2 Dezimalstellen gerundet) zurück. Somit schulden
Sie nach 10 Zahlungsjahren noch 113.481,55 €.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Price
Basic- und Crystal-Syntax.
Syntax der Argumente
•
Price (Zahlungsdatum, Fälligkeitsdatum, Anleihezins, Ertrag,
Rückzahlungswert, Häufigkeit)
•
Price (Zahlungsdatum, Fälligkeitsdatum, Anleihezins, Ertrag,
Rückzahlungswert, Häufigkeit, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Anleihezins" ist eine nicht negative Zahl, die den Zinssatz für das
Wertpapier angibt.
•
"Ertrag" ist eine nicht negative Zahl, die den Ertrag des Wertpapiers
angibt.
•
"Rückzahlungswert" ist eine Zahl bzw. Währung, die den
Rückzahlungswert des Wertpapiers pro 100 € des Nennwertes angibt.
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Crystal Reports-Anwenderhandbuch 271
8
8
Funktionen
Finanzen
Rückgabewert
Currency-Wert
Aktion
"Preis" gibt den Preis eines Wertpapiers mit regelmäßigen Zinszahlungen
bezogen auf 100 € des Nennwertes zurück. Die Berechnung gliedert sich in
drei Teile. Der erste Term dient zur Berechnung des aktuellen Wertes des
Rückzahlungskurses, der zweite zur Verarbeitung des aktuellen Wertes der
Zinszahlungen und der letzte zur Subtraktion der aufgelaufenen
Zinszahlungen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, am 1. März 1999 wird eine Kommunalanleihe mit
Fälligkeitsdatum 1. Januar 2005 erworben. Der Zinssatz beträgt 6,7 % und
der Ertrag 6,5 %. Bei der Tilgung wird der Nennwert der Anleihe bezogen auf
100 € zurückgezahlt, und der Zins wird vierteljährlich ausgezahlt.
Price(DateValue(1999,3,1), DateValue(2005,1,1), 0. 067,
0.065, 100, 4, 0)
Gibt 100,96 € (auf die nächste ganze Zahl gerundet) als Preis der Anleihe
zurück.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
•
•
PriceDisc
PriceMat
Yield
YieldDisc
YieldMat
PriceDisc
Basic- und Crystal-Syntax.
Syntax der Argumente
•
272
PriceDisc (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz,
Rückzahlungswert)
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
•
PriceDisc (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz,
Rückzahlungswert, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
Diskontsatz ist eine positive Zahl, die den Diskontsatz des Wertpapiers
angibt.
•
"Rückzahlungswert" ist eine Zahl bzw. Währung, die den
Rückzahlungswert des Wertpapiers pro 100 € des Nennwertes angibt.
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
Aktion
PriceDisc gibt den Preis eines diskontierten Wertpapiers pro 100 € des
Nennwertes zurück. Die Formel subtrahiert den Diskontbetrag vom
Rückzahlungswert.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
US-Schatzwechsel werden auf Diskontbasis erworben und zum Nennwert
zurückgezahlt. Angenommen, ein Schatzwechsel mit Fälligkeitsdatum 1.
Oktober 1999 wird am 15. Juli 1999 erworben und hat einen Diskontsatz von
6,3 %. Unter Zugrundelegung einer Echt/360-Basis für dieses diskontierte
Wertpapier wird der Preis mit der folgenden Formel ermittelt:
PriceDisc(DateValue(1999,7,15), DateValue(1999,10,1),
0.063, 100, 2)
Crystal Reports-Anwenderhandbuch 273
8
8
Funktionen
Finanzen
Gibt 98,64 € (auf die nächste ganze Zahl gerundet) als Preis des
Schatzwechsels zurück. Da zwischen Zahlung und Fälligkeit 78 Tage liegen,
beläuft sich der Diskontbetrag auf 100 x 0,063 x (78/360) = 1,365. Um das
Ergebnis zu erhalten, wird dieser Wert vom Rückzahlungswert 100 €
subtrahiert.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
•
•
Price
PriceMat
Yield
YieldDisc
YieldMat
PriceMat
Basic- und Crystal-Syntax.
Syntax der Argumente
•
PriceMat (Zahlungsdatum, Fälligkeitsdatum, Ausgabedatum, Zinssatz,
Ertrag)
•
PriceMat (Zahlungsdatum, Fälligkeitsdatum, Ausgabedatum, Zinssatz,
Ertrag, Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
Ausgabedatum entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier ausgegeben wurde.
•
Zinssatz ist eine nicht negative Zahl, die den Zinssatz für das Wertpapier
angibt.
•
"Ertrag" ist eine nicht negative Zahl, die den Ertrag des Wertpapiers
angibt.
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
274
0 - Amerikanisch 30/360 (Standard)
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
•
•
•
•
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
Aktion
PriceMat gibt den Preis eines Wertpapiers zurück, dessen gesamte Zinsen
pro 100 € des Nennwertes bei Fälligkeit gezahlt werden. Die Formel
subtrahiert die beim Verkäufer aufgelaufenen Zinsen vom aktuellen Wert des
bei Fälligkeit erhaltenen Betrags, und zwar auf der Grundlage des Ertrags
und der Laufzeit des Wertpapiers.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Depositenzertifikat über 150.000 € erzielt bei Fälligkeit 4,3
% Zinsen und hat einen Ertrag von 4,0 %. Wenn das Zertifikat am 1. Januar
2000 ausgegeben, am 4. März 2000 gekauft und am 31. Juli 2000 fällig
wurde, kann der Preis unter Verwendung der 30/360-Basis mit der folgenden
Formel berechnet werden:
150000/100 * PriceMat(DateValue(2000,3,4),
DateValue(2000,7,31), DateValue(2000,1,1), 0.043,
0.04)
In diesem Beispiel werden 150.162,66 € (auf die nächste ganze Zahl
gerundet) als Preis des Zertifikats zurückgegeben. Der Nennwert des
Zertifikats muss durch 100 dividiert werden, da die Funktion den Preis pro
100 € zurückgibt.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
•
•
Price
PriceDisc
Yield
YieldDisc
YieldMat
Crystal Reports-Anwenderhandbuch 275
8
8
Funktionen
Finanzen
PV
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
PV (Satz, nZeiträume, Bezahlung)
PV (Satz, nZeiträume, Bezahlung, zukünftigerWert)
PV (Satz, nZeiträume, Bezahlung, zukünftigerWert, Typ)
Argumente
•
•
"Satz" ist eine Zahl, mit der der Zinssatz pro Zeitraum angegeben wird.
•
"Bezahlung" ist ein Number- oder Währungsfeld, das Ihre in jedem
Zeitraum zu leistenden Zahlungen angibt.
•
"zukünftigerWert" ist eine optionale Zahl oder Währung, die den
zukünftigen Wert oder Saldo angibt, den Sie nach Leistung der letzten
Zahlung erreichen möchten. Wenn diese Angabe weggelassen wird, wird
0 verwendet.
•
"Typ" ist eine optionale Zahl, die angibt, wann Zahlungen fällig sind.
Geben Sie 0 an, wenn die Zahlungen am Ende der Zahlungsperiode
fällig sind, und 1, wenn sie zu Beginn des Zeitraumes fällig sind. Wenn
diese Angabe weggelassen wird, wird 0 verwendet.
"nZeiträume" ist eine positive Zahl, mit der die Gesamtanzahl von
Zahlungsperioden in der Annuität angegeben wird. Für "Satz" und
"nZeiträume" müssen dieselben Einheiten verwendet werden. Wenn z. B.
in "nZeiträume" die Anzahl der Perioden in Monaten angegeben wird,
dann wird in "Satz" die monatliche Zinsrate angegeben.
Rückgabewert
Zahlenwert
Aktion
"PV" gibt eine Zahl zurück, die den momentanen Wert einer Jahreszahlung
auf Grundlage festgelegter periodischer Zahlungen, die in der Zukunft zu
leisten sind, und eines festgelegten Zinssatzes angibt.
276
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, Sie möchten eine Eigentumswohnung kaufen und können
zweimal pro Monat 1.100 € zahlen (24 Zahlungen im Jahr). Wenn der
Zinssatz des Darlehens 7 % beträgt und Sie die Eigentumswohnung in 10
Jahren abbezahlen möchten, wie hoch darf dann das Darlehen maximal
sein?
PV (0.07 / 24, 10 * 24, -1100)
Gibt 189668 (auf die nächste ganze Zahl gerundet) zurück. Also können
Sie sich die Aufnahme eines Kredits in Höhe von ungefähr 190.000 €
leisten. Beachten Sie, dass das Argument "Beazhlung" negativ ist, da Sie
den entsprechenden Betrag jeden Monat bezahlen.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Rate
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
Rate (nZeiträume, Bezahlung, aktuellerWert)
Rate (nZeiträume, Bezahlung, aktuellerWert, zukünftigerWert)
Rate (nZeiträume, Bezahlung, aktuellerWert, zukünftigerWert, Typ)
Rate (nZeiträume, Bezahlung, aktuellerWert, zukünftigerWert, Typ,
Schätzung)
Argumente
•
"nZeiträume" ist eine positive Zahl, mit der die Gesamtanzahl von
Zahlungsperioden in der Annuität angegeben wird.
•
"Bezahlung" ist ein Number- oder Währungsfeld, das Ihre in jedem
Zeitraum zu leistenden Zahlungen angibt.
•
"aktuellerWert" ist eine Zahl oder eine Währung, die den derzeitigen oder
heutigen Wert einer Reihe zukünftiger Zahlungen oder
Zahlungseingänge angibt.
Crystal Reports-Anwenderhandbuch 277
8
8
Funktionen
Finanzen
•
"zukünftigerWert" ist eine optionale Zahl oder Währung, die den
zukünftigen Wert oder Saldo angibt, den Sie nach Leistung der letzten
Zahlung erreichen möchten. Wenn diese Angabe weggelassen wird, wird
0 verwendet.
•
"Typ" ist eine optionale Zahl, die angibt, wann Zahlungen fällig sind.
Geben Sie 0 an, wenn die Zahlungen am Ende der Zahlungsperiode
fällig sind, und 1, wenn sie zu Beginn des Zeitraumes fällig sind. Wenn
diese Angabe weggelassen wird, wird 0 verwendet.
•
"Schätzung" ist eine optionale Zahl, die den geschätzten Rückgabewert
von Satz angibt. Wenn diese Angabe weggelassen wird, wird für
"Schätzung" der Wert 0,1 (10 %) verwendet.
Rückgabewert
Zahlenwert
Aktion
rate gibt eine Zahl zurück, die den Zinssatz pro Zeitraum einer Annuität
angibt. Die Einheiten des Rückgabewertes stimmen mit den Einheiten von
nPeriods überein. Wenn z. B. nZeiträume in Monaten angegeben ist, dann
wird in rate ein Monatszinssatz zurückgegeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Ein Elektrowarengeschäft bietet Ihnen an, ein Fernsehgerät im Wert von
1.500 € mit 70 € pro Monat über 2 Jahre zu finanzieren, ohne dass Sie eine
Anzahlung leisten müssen. Ist das ein gutes Angebot? Zunächst muss
ermittelt werden, welchen Zinssatz das Geschäft verlangt:
Rate (2 * 12, -70, 1500)
Gibt 0,00927 (auf 5 Kommastellen gerundet) zurück. Beachten Sie, dass
"nZeiträume" 24 Monate sind, "Bezahlung" (-70) negativ ist, da Sie ja die
monatlichen Zahlungen auszahlen, und der aktuelle Wert (1.500 €)
positiv ist, da Sie diesen Wert (den Wert des Fernsehgeräts) bei Beginn
der Finanzierung erhalten. Es wird ein Monatszinssatz zurückgegeben,
da nZeiträume in Monaten angegeben wurde.
Im nächsten Ausdruck wird der Zinssatz als Jahreszinssatz und in Prozent
ausgerechnet.
Rate (2 * 12, -70, 1500) * 12 * 100
Gibt 11,1 (auf 1 Dezimalstelle gerundet) zurück. Folglich verlangt das
Geschäft einen effektiven Jahreszinssatz von 11,1 %.
278
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Für die Funktion Rate gibt es keine direkte Formel, und daher berechnet
Crystal Reports den Wert durch Iteration. Dieser Vorgang hängt von der
ursprünglichen Einschätzung des Zinssatzes ab. Wenn vom Programm
eine Fehlermeldung ausgegeben wird, versuchen Sie es mit einem
anderen Wert für das Argument "Schätzung", um einen Wert zu finden,
der dem tatsächlichen Zinssatz eher entsprechen könnte.
Received
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
Received (Zahlungsdatum, Fälligkeitsdatum, Investition, Diskontsatz)
Received (Zahlungsdatum, Fälligkeitsdatum, Investition, Diskontsatz,
Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Investition" ist eine positive Zahl oder Währung, die den investierten
Betrag angibt.
•
"Diskontsatz" ist eine positive Zahl, die den Diskontsatz des Wertpapiers
angibt.
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Currency-Wert
Crystal Reports-Anwenderhandbuch 279
8
8
Funktionen
Finanzen
Aktion
Received gibt den für ein „voll investiertes“ Wertpapier bei Fälligkeit
erhaltenen Betrag zurück. Diskontierte Wertpapiere werden bei Fälligkeit
normalerweise zu einem glatten Nennwert veräußert. Daher wird der Wert
des Wertpapiers beim Kauf auf einen ungeraden Betrag diskontiert. Da
Investoren in der Regel „voll“ bzw. glatte Beträge (z. B. 100.000 €) investieren
möchten, sind spezielle Berechnungen erforderlich. Die Funktion Received
berechnet einen Nennwert, so dass der diskontierte Wert, wenn der
Diskontsatz für den festgelegten Zeitraum angewendet wird, mit dem
investierten Betrag übereinstimmt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, 10.000 € werden ab 15. März 2000 bis zum Fälligkeitsdatum
des Wertpapiers am 1. Juni 2000 zu einem Diskontsatz von 6,5 % investiert.
Es wird die amerikanische 30/360-Basis zugrunde gelegt.
Received
(DateValue(2000,3,15),DateValue(2000,6,1),10000,0.065
,0)
Gibt 10.139,13 € als Nennwert für dieses Wertpapier zurück.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
IntRate
SLN (Kosten, Restwert, Lebensdauer)
Basic- und Crystal-Syntax.
Argumente
•
"Kosten" ist eine Zahl oder eine Währung, mit der die Anfangskosten der
Anlage angegeben werden.
•
"Restwert" ist eine Zahl oder Währung, die den Wert der Anlage am Ende
ihrer Lebensdauer angibt.
•
Lebensdauer ist eine Zahl, mit der die Lebensdauer der Anlage
angegeben wird. Sie darf nicht 0 sein.
Rückgabewert
Zahlenwert
280
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Aktion
SLN gibt eine Zahl zurück, mit der die lineare Abschreibung einer Anlage für
einen einzelnen Zeitraum angegeben wird.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Unternehmen legt einen Fuhrpark im Wert von 500.000 €
an. Die Fahrzeuge haben eine Lebensdauer von 10 Jahren und einen
Restwert von 60.000 €. Der jährliche Abschreibungsbetrag beträgt:
SLN (500000, 60000, 10)
Gibt 44000 zurück. Der jährliche Abschreibungsbetrag beträgt 44.000 €.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
SYD (Kosten, Restwert, Lebensdauer, Zeitraum)
Basic- und Crystal-Syntax.
Argumente
•
"Kosten" ist eine Zahl oder eine Währung, mit der die Anfangskosten der
Anlage angegeben werden.
•
"Restwert" ist eine Zahl oder Währung, die den Wert der Anlage am Ende
ihrer Lebensdauer angibt.
•
"Lebensdauer" ist eine positive Zahl, mit der die Lebensdauer der Anlage
angegeben wird.
•
"Zeitraum" ist eine Zahl, die den Zeitraum angibt, für den die
Wertminderung einer Anlage berechnet wird. Dieser Wert muss positiv
und kleiner als oder gleich der Lebensdauer sein. Die Argumente
Lebensdauer und Zeitraum müssen in denselben Einheiten angegeben
werden.
Rückgabewert
Zahlenwert
Aktion
SYD gibt eine Zahl zurück, mit der die arithmetisch-degressive Abschreibung
einer Anlage für einen einzelnen Zeitraum angegeben wird.
Crystal Reports-Anwenderhandbuch 281
8
8
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Unternehmen legt einen Fuhrpark im Wert von 500.000 €
an. Die Fahrzeuge haben eine Lebensdauer von 10 Jahren und einen
Restwert von 60.000 €. Sie werden folgendermaßen abgeschrieben:
SYD (500000, 60000, 10, 1)
Gibt 80000 zurück. Der Abschreibungsbetrag des ersten Jahres beträgt
80.000 €.
SYD (500000, 60000, 10, 4)
Gibt 56000 zurück. Der Abschreibungsbetrag des vierten Jahres beträgt
56.000 €.
SYD (500000, 60000, 10, 10)
Gibt 8000 zurück. Der Abschreibungsbetrag des letzten Jahres beträgt
8.000 €.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
TBillEq (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz)
Basic- und Crystal-Syntax.
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann der Schatzwechsel erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Schatzwechsels an.
•
"Diskontsatz" ist eine positive Zahl, die den Diskontsatz des
Schatzwechsels angibt.
Rückgabewert
Zahlenwert
282
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Aktion
TBillEq gibt ein Äquivalent in Form der Anleiherendite zurück, das
gleichwertig mit dem Diskontsatz eines Schatzwechsels ist. Schatzwechsel
stellen quasi ein Versprechen dar, einen festen Betrag zu einem bestimmten
Datum zu zahlen. Die Wechsel werden zu einem Preis unter diesem Betrag
erworben, und der ROI (Return on Investment) ergibt sich aus der Differenz
zwischen Kaufpreis und Nennwert. Der Diskontsatz wird auf der Grundlage
des Nennwertes und 360 Tagen pro Jahr berechnet. Anleiherenditen werden
im Gegensatz dazu auf der Grundlage des Kaufpreises und eines vollen
Jahres berechnet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Wenn ein Schatzwechsel mit Fälligkeitsdatum 1. Juli 2000 am 15. Februar
2000 zu einem Diskontsatz von 8,5 % gekauft wurde, lässt sich der
äquivalente Ertrag mit folgender Formel ermitteln:
TBillEq(DateValue(2000,2,15),DateValue(2000,7,1),0.085)
Gibt 0,0891 (auf vier Dezimalstellen gerundet) zurück, was einem Zinssatz
von 8,91 % entspricht.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
TBillYield (Zahlungsdatum, Fälligkeitsdatum, Preis)
TBillPrice (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz)
DISC
TBillPrice (Zahlungsdatum, Fälligkeitsdatum,
Diskontsatz)
Basic- und Crystal-Syntax.
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann der Schatzwechsel erworben wurde.
Crystal Reports-Anwenderhandbuch 283
8
8
Funktionen
Finanzen
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Schatzwechsels an.
•
"Diskontsatz" ist eine positive Zahl, die den Diskontsatz des
Schatzwechsels angibt.
Rückgabewert
Currency-Wert
Aktion
TBillPrice gibt einen Currency-Wert zurück, der den aktuellen Preis pro 100 €
des Nennwertes eines Schatzwechsels unter Berücksichtigung des
Diskontsatzes darstellt. Der Diskontsatz entspricht einer Berechnung, die auf
der Rendite und der Zeitdauer zwischen Zahlung und Fälligkeit basiert. Diese
Funktion kehrt die Beziehung um, da die Rendite unter Berücksichtigung des
Diskontsatzes von 100 € subtrahiert wird. Für Schatzwechsel wird eine Echt/
360-Basis zugrunde gelegt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Wenn ein Schatzwechsel mit Fälligkeitsdatum 1. Juli 2000 am 15. Februar
2000 zu einem Diskontsatz von 8,5 % gekauft wurde, lässt sich der Kaufpreis
wie folgt ermitteln:
TBillPrice(DateValue(2000,2,15),DateValue(2000,7,1),0.08
5)
Gibt 96,77 € (auf die nächste ganze Zahl gerundet) zurück.
Anmerkungen
•
•
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Die Funktionen DISC und TBillPrice stehen in einem umgekehrten
Verhältnis zueinander. Der Diskontsatz DISC, der den von TBillPrice
zurückgegebenen Preis verwendet, ein Rückzahlungswert von 100 €
sowie die Verwendung einer Basis von 2 (Echt/360) entspricht exakt dem
Diskontsatz, der in der Funktion TBillPrice eingegeben wurde. Dies
bedeutet r=DISC(a,b,TBillPrice(a,b,r),100), wobei a und b
Datumsangaben und r den Diskontsatz darstellen.
Siehe auch
•
•
•
284
TBillEq (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz)
TBillYield (Zahlungsdatum, Fälligkeitsdatum, Preis)
DISC
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
TBillYield (Zahlungsdatum, Fälligkeitsdatum, Preis)
Basic- und Crystal-Syntax.
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann der Schatzwechsel erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Schatzwechsels an. Die
Laufzeiten von Schatzwechseln betragen in der Regel 90 Tage, 182 Tage
und 52 Wochen.
•
Preis ist eine positive Zahl oder Währung, die den Kaufpreis eines
Schatzwechsels pro 100 € des Nennwertes angibt.
Rückgabewert
Zahlenwert
Aktion
TBillYield gibt eine Zahl zurück, die die Rendite eines Schatzwechsels
darstellt. Dies ist der mit einem Schatzwechsel erwirtschaftete Betrag, und
zwar als Prozentsatz des Kaufpreises, der unter Zugrundelegung einer Echt/
360-Basis auf Jahresbasis umgerechnet wurde.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Wenn ein Schatzwechsel von 10.000 € mit Fälligkeitsdatum 1. Juli 2000 am
15. Februar 2000 zu einem Preis von 9.850,00 € erworben wurde, beläuft
sich die Rendite der Investition auf:
TBillYield(DateValue(2000,2,15),DateValue(2000,7,1),98.50)
Gibt 0,0400 (auf 4 Dezimalstellen gerundet) zurück. Der Kaufpreis von 9.850
€ musste durch (100/10000) dividiert werden, um den Preis pro 100 € zu
ermitteln. Die Rendite beträgt in diesem Fall 1,50 € pro 100 €, und die
Investition wird für 137 Tage des 360-Tage-Jahres gehalten. Der
zurückgegebene Wert lautet (1,5/98,50)/(137/360).
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
TBillEq (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz)
TBillPrice (Zahlungsdatum, Fälligkeitsdatum, Diskontsatz)
DISC
Crystal Reports-Anwenderhandbuch 285
8
8
Funktionen
Finanzen
VDB
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
VDB (Kosten, Restwert, Lebensdauer, Startzeitraum, Endzeitraum)
•
VDB (Kosten, Restwert, Lebensdauer, Startzeitraum, Endzeitraum,
KeineUmschichtung)
•
VDB (Kosten, Restwert, Lebensdauer, Startzeitraum, Endzeitraum,
Abschreibungsfaktor, KeineUmschichtung)
VDB (Kosten, Restwert, Lebensdauer, Startzeitraum, Endzeitraum,
Abschreibungsfaktor)
Argumente
•
cost ist eine Zahl oder eine Währung, mit der die Anfangskosten der
Anlage angegeben werden.
•
salvage ist eine Zahl oder Währung, die den Wert der Anlage am Ende
ihrer Lebensdauer angibt.
•
Lebensdauer ist eine positive Zahl, die die Zeiträume in der Lebensdauer
der Anlage angibt.
•
Startzeitraum ist eine positive Zahl, die den Startpunkt der Berechnung
für die Abschreibungssumme angibt. Der Startzeitraum wird in der
Berechnung nicht berücksichtigt.
•
Endzeitraum ist eine Zahl, die den letzten in der
Abschreibungsberechnung verwendeten Zeitraum angibt. Diese Zahl
muss größer oder gleich dem Startzeitraum sein und darf die
Lebensdauer der Anlage nicht überschreiten.
•
Abschreibungsfaktor ist eine nicht negative Zahl, die den Satz angibt, zu
dem die Anlage abgeschrieben wird. Der Standardwert ist 2 und basiert
auf der degressiven Doppelraten-Abschreibung.
•
KeineUmschichtung ist ein boolescher Wert, der festlegt, ob die Funktion
zu einer linearen Abschreibung wechselt, wenn die degressive
Abschreibung geringer als die lineare Methode ist. Durch den
Standardwert FALSE (Falsch) wechselt VDB zur linearen Methode,
während durch den Wert TRUE (Wahr) die Verwendung der degressiven
Abschreibung erzwungen wird.
Rückgabewert
Currency-Wert
286
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Aktion
VDB gibt die gesamte Abschreibung zwischen dem angegebenen Start- und
Endzeitraum zurück. Falls KeineUmschichtung FALSE (Falsch) ist, ergibt die
Summe der Abschreibungen über die Lebensdauer der Anlage die Differenz
zwischen Kosten und Restwert.
Die Umschichtung zwischen den Methoden erfolgt, wenn die restliche
Abschreibungsspanne, dividiert durch die Anzahl der in der Lebensdauer
verbleibenden Zeiträume, den mit der degressiven Abschreibung
berechneten Wert überschreitet. Die Abschreibungsspanne entspricht dem
Restwert und der kumulativen Abschreibung, die von den Anlagekosten
subtrahiert werden.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Computer wird zum Preis von 1.000 € erworben, hat einen
Restwert von 250 € und wird mit der degressiven Doppelraten-Methode
abgeschrieben. Die Lebensdauer beträgt 10 Zeiträume (Jahre).
VDB (1000,250,10,0,5,2,FALSE)
Gibt 672,32 € als Abschreibung für die ersten 5 Jahre der
Computerlebensdauer zurück. In dieser Situation ist der Wert identisch mit
dem für KeineUmschichtung=TRUE (Wahr).
VDB (1000,250,10,5,6,1,FALSE)
Gibt 67,68 € (auf die nächste ganze Zahl gerundet) als Abschreibung zurück.
Sie gilt ausschließlich für das sechste Jahr der Computerlebensdauer. Der
mit KeineUmschichtung=FALSE (Falsch) berechnete Wert beträgt 59,05 €
(gerundet). Dies veranschaulicht, dass VDB im ersten Fall zur linearen
Abschreibungsmethode gewechselt hat, was bedeutet, dass in allen
nachfolgenden Zeiträumen auch eine jährliche Abschreibung von 67,68 €
anfällt.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
•
DB
DDB
AmorLINC
AmorDEGRC
Crystal Reports-Anwenderhandbuch 287
8
8
Funktionen
Finanzen
XIRR
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
XIRR (Werte, Tage)
XIRR (Werte, Tage, SatzSchätzung)
Argumente
•
values ist ein Array des Number- oder Währungstyps, der die CashflowWerte angibt. Der Array muss mindestens einen negativen Wert
(Zahlung) und einen positiven Wert (Zahlungseingang) enthalten. Diese
Transaktionen erfolgen an dem durch das Argument Tage festgelegten
Datum.
•
"Tage" ist ein Array vom Typ Date oder DateTime, der das Datum der im
Argument Werte festgelegten Cashflow-Zahlungen angibt. Das erste
Datum entspricht dem Start der zeitgesteuerten Verarbeitung. Die
Datumsangaben können in beliebiger Reihenfolge auftreten, müssen
jedoch nach dem ersten Datum liegen. Der Wertearray muss dieselbe
Größe wie das Datumsarray aufweisen.
•
"rateGuess" ist eine optionale Zahl, die den geschätzten Rückgabewert
von IRR enthält. Wenn diese Angabe weggelassen wird, wird der Wert
0,1 (10 Prozent) verwendet.
Rückgabewert
Zahlenwert
Aktion
XIRR berechnet die interne Gewinnrate für eine Folge von Cashflow-Werten
(Zahlungen und Zahlungseingänge).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Wagniskapitalgeschäft wurde zu folgenden Konditionen
abgeschlossen. Für eine am 1. März 1999 getätigte Investition von 100.000 €
wurde am 31. August 1999 eine Rendite von 60.000 € erzielt, und am 1.
November 1999 stand eine Teilzahlung von 35.000 € an. Am 1. Januar 2000
erfolgte eine weitere Einlage von 50.000 € in das Wagniskapitalgeschäft.
288
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Der Abschluss erfolgte am 15. April 2000 mit einer Auszahlung von 75.000 €.
Im Folgenden eine Zusammenfassung der Cashflow-Zahlungen:
1 März 1999
-$100,000
31. August 1999
$60,000
1 November 1999
$35,000
1 Januar 2000
-$50,000
15 April 2000
$75,000
Rem Basic Syntax
formula = XIRR(Array(-100000,60000,35000,-50000,75000),
Array(DateValue(1999,3,1),DateValue(1999,8,31),DateVa
lue(1999,11,1),
DateValue(2000,1,1),DateValue(2000,4,15)))
//Crystal Syntax
XIRR([-100000,60000,35000,-50000,75000],
[DateValue(1999,3,1),DateValue(1999,8,31),DateValue(1
999,11,1), DateValue(2000,1,1),DateValue(2000,4,15)])
Gibt 0,2605 zurück, was einer internen Gewinnrate von 26,05 % entspricht.
Anmerkungen
•
•
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
•
Für die Funktion XIRR gibt es keine direkte Formel, und daher berechnet
Crystal Reports den Wert durch Iteration. Dieser Vorgang hängt von der
ursprünglichen Einschätzung der internen Gewinnrate ab. Wenn vom
Programm eine Fehlermeldung ausgegeben wird, versuchen Sie es mit
einem anderen Wert für das Argument guess, um einen Wert zu finden,
der der tatsächlichen internen Gewinnrate eher entsprechen könnte.
Die Funktionen XNPV und XIRR beziehen sich aufeinander, da die
Verwendung der durch XIRR berechneten Gewinnrate in der Funktion
XNPV zur Folge hat, dass von XNPV Null zurückgegeben wird. Dies
bedeutet, dass die interne Gewinnrate dem Zins entspricht, dessen NPV
(Net Present Value) Null ist.
Siehe auch
•
•
•
XNPV (Satz, Werte, Tage)
IRR
NPV (Satz, Werte)
Crystal Reports-Anwenderhandbuch 289
8
8
Funktionen
Finanzen
XNPV (Satz, Werte, Tage)
Basic- und Crystal-Syntax.
Argumente
•
•
Satz ist eine Zahl, die den Jahresdiskontsatz angibt.
•
"Tage" ist ein Array vom Typ Date oder DateTime, der das Datum der im
Argument Werte festgelegten Cashflow-Zahlungen angibt. Das erste
Datum entspricht dem Start der zeitgesteuerten Verarbeitung. Die
Datumsangaben können in beliebiger Reihenfolge auftreten, müssen
jedoch nach dem ersten Datum liegen.
values ist ein Array des Number- oder Währungstyps, der die CashflowWerte angibt. Der Array muss mindestens einen negativen Wert
(Zahlung) und einen positiven Wert (Zahlungseingang) enthalten. Diese
Transaktionen erfolgen zu dem unter Tage angegebenen Datum.
Rückgabewert
Currency-Wert
Aktion
XNPV gibt eine Zahl zurück, die den Nettowert einer Investition angibt, die auf
einer Folge periodisch geleisteter Cashflow-Werte (Zahlungen und
Zahlungseingänge) und einem Diskontsatz beruht.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, einer Person wurden zum 1. April 1999 sofort 1.000 €
angeboten, zum 1. Juli 1999 2.500 €, zum 1. Oktober 1999 2.500 € und zum
31. Dezember 1999 5.000 €. Wenn der Diskontsatz (der Zeitwert von Geld)
bei 4,5 Prozent liegt, dann hat dieses Angebot heute folgenden Wert für Sie:
Rem Basic Syntax
formula = XNPV(0.045,Array(1000,2500,2500,5000),
Array(DateValue(1999,4,1),DateValue(1999,7,31),DateVa
lue(1999,10,1), DateValue(1999,12,31)))
//Crystal Syntax
XNPV(0.045,[1000,2500,2500,5000],
[DateValue(1999,4,1),DateValue(1999,7,31),DateValue(1
999,10,1), DateValue(1999,12,31)])
Gibt 10.746,70 € zurück, was geringer als die Summe der Zahlungen ist, da
die Person auf das Geld warten muss.
290
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Anmerkungen
•
•
Diese Funktion arbeitet genauso wie die gleichnamige Funktion in Excel.
Die Funktionen XNPV und XIRR beziehen sich aufeinander, da die
Verwendung der durch XIRR berechneten Gewinnrate in der Funktion
XNPV zur Folge hat, dass von XNPV Null zurückgegeben wird. Dies
bedeutet, dass die interne Gewinnrate dem Zins entspricht, dessen NPV
(Net Present Value) Null ist.
Siehe auch
•
•
•
XIRR
IRR
NPV (Satz, Werte)
YearFrac
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
YearFrac (Startdatum, Enddatum)
YearFrac (Startdatum, Enddatum, Basis)
Argumente
•
Startdatum ist ein Datums- oder DateTime-Wert für den Start eines
Zeitintervalls.
•
Enddatum ist ein Datums- oder DateTime-Wert für das Ende eines
Zeitintervalls.
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Zahlenwert
Aktion
YearFrac gibt den Bruchteil eines Jahres an, der innerhalb der Zeitspanne
zwischen zwei Datumsangaben liegt.
Crystal Reports-Anwenderhandbuch 291
8
8
Funktionen
Finanzen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
YearFrac(DateValue(2000,1,1),DateValue(2000,4,1))
Gibt 0,25 zurück, da zwischen Anfang Januar und Anfang April drei Monate
liegen.
Angenommen, für sämtliche Mitarbeiter muss von ihrem ersten Arbeitstag bis
zum 1. Januar 2000 eine rückwirkende Lohnerhöhung berechnet werden.
Wenn in der Datenbanktabelle ein Feld namens "Startdatum" mit dem Datum
enthalten ist, zu dem der Mitarbeiter seine Arbeit aufgenommen hat, kann
folgende Formel verwendet werden. So wird festgestellt, wie viele Jahre und
Teiljahre jedem Mitarbeiter zustehen.
yearFrac({Startdatum},DateValue(2000,1,1));
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Yield
Basic- und Crystal-Syntax.
Syntax der Argumente
•
Yield (Zahlungsdatum, Fälligkeitsdatum, Anleihezins, Preis,
Rückzahlungswert, Häufigkeit)
•
Yield (Zahlungsdatum, Fälligkeitsdatum, Anleihezins, Preis,
Rückzahlungswert, Häufigkeit, Basis)
Argumente
292
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Anleihezins" ist eine nicht negative Zahl, die den Zinssatz für das
Wertpapier angibt.
•
"Preis" ist eine nicht negative Zahl bzw. Währung, die den Kaufpreis des
Wertpapiers pro 100 € des Nennwertes angibt.
•
"Rückzahlungswert" ist eine Zahl bzw. Währung, die den
Rückzahlungswert des Wertpapiers pro 100 € des Nennwertes angibt.
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
•
"Häufigkeit" ist eine Zahl, die die Anzahl der Zinsscheine pro Jahr angibt.
Die unterstützten Werte sind 1 (jährliche Zahlungen), 2 (halbjährliche
Zahlungen) und 4 (vierteljährliche Zahlungen).
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Zahlenwert
Aktion
Yield gibt den Ertrag für ein Wertpapier zurück, das periodisch Zinsen
erwirtschaftet. Liegt zwischen Zahlungsdatum und Fälligkeitsdatum nur noch
ein Zeitraum oder ein Teilzeitraum, laufen täglich Zinsen auf.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, am 1. März 1999 wird eine Kommunalanleihe mit
Fälligkeitsdatum 1. Januar 2005 erworben. Der Zinssatz beträgt 6,5 %, und
der Kaufpreis liegt bei 100,96 € pro 100 € des Nennwertes. Bei der Tilgung
wird der Nennwert der Anleihe bezogen auf einen Wert von 100 €
zurückgezahlt, und der Zins wird vierteljährlich auf der Grundlage einer 30/
360-Basis ausgezahlt.
Yield(DateValue(1999,3,1),DateValue(2005,1,1),0.067,100.
96,100,4,0)
Gibt 0,0650 (auf vier Dezimalstellen gerundet) als Anleiherendite zurück.
Beachten Sie, dass es sich hierbei um die Umkehroperation von Price
handelt.
Anmerkungen
•
•
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Wenn zwischen Zahlungs- und Fälligkeitsdatum mehrere Zinszeiträume
liegen, setzt Crystal Reports unter Verwendung der Formel für Price ein
Iterationsverfahren zur Preisberechnung ein. Es wird ein Ertragswert
geschätzt und der Preis berechnet.
Crystal Reports-Anwenderhandbuch 293
8
8
Funktionen
Finanzen
Der berechnete Preis wird mit dem angegebenen Preis verglichen und
daraufhin ein neuer Ertrag geschätzt. Dieser Vorgang wird so lange
wiederholt, bis berechneter und angegebener Preis übereinstimmen.
Siehe auch
•
•
•
•
•
Price
PriceDisc
PriceMat
YieldDisc
YieldMat
YieldDisc
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
YieldDisc (Zahlungsdatum, Fälligkeitsdatum, Preis, Rückzahlungswert)
YieldDisc (Zahlungsdatum, Fälligkeitsdatum, Preis, Rückzahlungswert,
Basis)
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
"Preis" ist eine nicht negative Zahl bzw. Währung, die den Kaufpreis des
Wertpapiers pro 100 € des Nennwertes angibt.
•
"Rückzahlungswert" ist eine Zahl bzw. Währung, die den
Rückzahlungswert des Wertpapiers pro 100 € des Nennwertes angibt.
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Zahlenwert
294
Crystal Reports-Anwenderhandbuch
Funktionen
Finanzen
Aktion
YieldDisc gibt den Ertrag eines diskontierten Wertpapiers zurück. Durch die
Formel wird die Differenz zwischen Kauf- und Rückzahlungskurs durch den
Kaufpreis dividiert. Dieser Quotient wird unter Verwendung der angegebenen
Basis in einen Jahresrate umgerechnet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
US-Schatzwechsel werden auf Diskontbasis erworben und zum Nennwert
zurückgezahlt. Angenommen, ein Schatzwechsel mit Fälligkeitsdatum 1.
Oktober 1999 wird am 15. Juli 1999 erworben und hat einen Diskontpreis von
98,64 €. Bei Zugrundelegung einer Echt/360-Basis für dieses diskontierte
Wertpapier wird der Ertrag mit Hilfe der folgenden Formel ermittelt:
YieldDisc
(DateValue(1999,7,15),DateValue(1999,10,1),98.64,100,
2)
Gibt 0,0636 (auf vier Dezimalstellen gerundet) als Ertrag des Schatzwechsels
zurück.
Anmerkungen
•
•
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Diese Funktion steht in enger Beziehung zur Funktion PriceDisc.
Siehe auch
•
•
•
•
•
Price
PriceDisc
PriceMat
Yield
YieldMat
YieldMat
Basic- und Crystal-Syntax.
Syntax der Argumente
•
YieldMat (Zahlungsdatum, Fälligkeitsdatum, Ausgabedatum, Zinssatz,
Preis)
•
YieldMat (Zahlungsdatum, Fälligkeitsdatum, Ausgabedatum, Zinssatz,
Preis, Basis)
Crystal Reports-Anwenderhandbuch 295
8
8
Funktionen
Finanzen
Argumente
•
"Zahlungsdatum" entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier erworben wurde.
•
"Fälligkeitsdatum" entspricht entweder Date oder DateTime nach dem
Zahlungsdatum und gibt die Fälligkeit des Wertpapiers an.
•
Ausgabedatum entspricht entweder Date oder DateTime und gibt an,
wann das Wertpapier ausgegeben wurde.
•
Zinssatz ist eine nicht negative Zahl, die den Zinssatz für das Wertpapier
angibt.
•
"Preis" ist eine nicht negative Zahl bzw. Währung, die den Kaufpreis des
Wertpapiers pro 100 € des Nennwertes angibt.
•
"Basis" ist eine optionale Zahl, die das zu verwendende
Tagesbasissystem angibt. Folgende Typen werden unterstützt:
•
•
•
•
•
0 - Amerikanisch 30/360 (Standard)
1 - Echt/Echt
2 - Echt/360
3 - Echt/365
4 - Europäisch 30/360
Rückgabewert
Zahlenwert
Aktion
YieldMat gibt den Ertrag für ein Wertpapier zurück, das Zinsen zum
Fälligkeitsdatum erwirtschaftet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Depositenzertifikat über 150.000 € mit einem Zinssatz von
4,3 % hat bei Fälligkeit einen Preis von 150.162,66 €. Wenn das Zertifikat am
1. Januar 2000 ausgegeben, am 4. März 2000 gekauft und am 31. Juli 2000
fällig wurde, kann der Ertrag unter Verwendung der 30/360-Basis mit der
folgenden Formel berechnet werden:
YieldMat (DateValue(2000,3,4), DateValue(2000,7,31),
DateValue(2000,1,1), 0.043, 150162.66/150000*100)
Gibt 0,0400 (auf vier Dezimalstellen gerundet) als Ertrag des Zertifikats
zurück. Der Preis muss pro 100 € des Nennwertes festgelegt werden.
Beachten Sie, dass es sich hierbei um die Umkehroperation von PriceMat
handelt.
296
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Excel.
Siehe auch
•
•
•
•
•
Price
PriceDisc
PriceMat
Yield
YieldDisc
Zeichenfolgen
Zeichenfolgefunktionen verwenden Sie für die Auswertung, Bearbeitung und
Konvertierung von Textzeichenfolgen.
Len (Zchnflge)
Length (Zchnflge)
Trim (Zchnflge)
LTrim (Zchnflge)
TrimLeft (Zchnflge)
RTrim (Zchnflge)
TrimRight (Zchnflge)
UCase (Zchnflge)
UpperCase (Zchnflge)
LCase (Zchnflge)
LowerCase (Zchnflge)
ProperCase(Zchnflge)
StrReverse (Zchnflge)
IsNumeric (Zchnflge)
NumericText (Zchnflge)
ToNumber
ToText
ToWords
ReplicateString (Zchnflge, AnzKopien)
Space (Ganzzahl)
Crystal Reports-Anwenderhandbuch 297
8
8
Funktionen
Zeichenfolgen
InStr
InStrRev
StrCmp
Mid
Left (Zchnflge, Länge)
Right (Zchnflge, Länge)
Val (Zchnflge)
ChrW (x)
AscW (Zchnflge)
Filter
Replace
Join
Split
Roman
URLEncode
URLDecode
Len (Zchnflge)
Len und Length (Zchnflge) sind gleichwertige Funktionen. Len wird in der
Basic-Syntax bevorzugt, Length dagegen in der Crystal-Syntax.
Argument
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
Ganze Zahl
Aktion
Len gibt als Zahlenwert die Länge der angegebenen Zeichenfolge zurück.
Hinweis: Textzeichenfolgen sind in Anführungszeichen zu fassen. Das
Programm berücksichtigt bei der Zählung alle Leerzeichen.
Typische Verwendung
Verwenden Sie diese Funktion, wenn Sie eine Aktion, einen Vergleich oder
eine Berechnung durchführen müssen, die von der Länge einer
Textzeichenfolge abhängt.
298
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Len("Beträge")
Gibt 7 zurück.
Len("bei Zeichen")
Gibt 11 zurück. Der Leerschritt zwischen „bei“ und „Zeichen“ wird als
Zeichen gewertet.
Len("
Center
")
Gibt 10 zurück. Auf jeder Seite des Wortes „Center“ stehen 2
Leerzeichen.
Len(ToText({Aufträge.Auftragssumme}))
Gibt 9 zurück, wenn {Aufträge.Auftragssumme} 14233,08 enthält, und
ToText ({Aufträge.Auftragssumme}) gibt die Zeichenfolge „14.233,08“
zurück. In diesem Beispiel wurden Punkt und Komma im Zahlenformat
für das Formelfeld als Tausendertrennzeichen bzw. Dezimalzeichen
festgelegt.
Len(ToText({Aufträge.Auftragssumme}, 2, "", "."))
Gibt 8 zurück, wenn {Aufträge.Auftragssumme} = 14233,08, und ToText
({Aufträge.Auftragssumme}, 2, "", ".") gibt die Zeichenfolge „14233,08“
zurück. In diesem Beispiel wurden NULL-Zeichen (kein Zeichen) und
Punkt im Zahlenformat für das Formelfeld als Tausendertrennzeichen
bzw. Dezimalzeichen festgelegt.
Len({Kunde.Kundenname})
Die Länge der Textzeichenfolge, die als Wert in {Kunde.Kundenname}
gespeichert ist.
Die folgenden Beispiele gelten für die Basic-Syntax:
{Kunde.Kundenname} (Len({Kunde.Kundenname})-2)
Gibt das drittletzte Zeichen des jeweiligen Kundennamens zurück. Damit
können Sie auch aus einer Zeichenfolge eine Teilzeichenfolge
extrahieren, die vom Ende der Zeichenfolge aus stets an derselben Stelle
beginnt.
Im folgenden Beispiel enthält eine Adresszeile das Bundesland und die
Postleitzahl. Die vollen Namen der Bundesländer haben unterschiedliche
Längen, Postleitzahlen haben jedoch eine feste Anzahl an Zeichen. Das erste
Zeichen der Postleitzahl ist, vom letzten Zeichen der Zeichenfolge aus
gezählt, immer das siebte Zeichen. Die Formel ermittelt die Länge der
Adresszeile, zieht davon 7 ab und findet anhand des Ergebnisses das erste
Zeichen der Postleitzahl in der Adresszeile.
Crystal Reports-Anwenderhandbuch 299
8
8
Funktionen
Zeichenfolgen
Dim AdressZeile As String
Dim AdressLänge As Number
AnschriftZeile = "British Columbia V6X 3W2"
AdressLänge = Len (AnschriftZeile)
formula = AdressZeile (AdressLänge-7+1 To AdressLänge)
Gibt die Zeichenfolge „V6X 3W2“ zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Length (Zchnflge)
Length und Len (Zchnflge) sind gleichwertige Funktionen. Length wird in der
Crystal-Syntax bevorzugt, Len dagegen in der Basic-Syntax.
Argumente
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
Ganze Zahl
Aktion
Length gibt die Anzahl der Zeichen einer Textzeichenfolge zurück, die Sie
entweder in die Formel eingegeben haben oder die als Wert in einem
Datenfeld gespeichert ist.
Hinweis: Textzeichenfolgen müssen in einfachen oder doppelten
Anführungszeichen (' ' oder " ") stehen. Das Programm berücksichtigt bei der
Zählung alle Leerzeichen.
Typische Verwendungen
Verwenden Sie diese Funktion, wenn Sie eine Aktion, einen Vergleich oder
eine Berechnung durchführen müssen, die von der Länge einer
Textzeichenfolge abhängt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Length("Beträge")
Gibt 7 zurück.
Length(“bei_Zeichen”)
Gibt 11 zurück.
300
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Length("__Center__")
Gibt 10 zurück.
Length(ToText({Aufträge.Auftragssumme}))
Gibt 9 zurück, wenn {Aufträge.Auftragssumme} 14233,08 enthält, und
ToText ({Aufträge.Auftragssumme}) gibt die Zeichenfolge „14.233,08“
zurück. In diesem Beispiel wurden Punkt und Komma im Zahlenformat
für das Formelfeld als Tausendertrennzeichen bzw. Dezimalzeichen
festgelegt.
Length(ToText({Aufträge.Auftragssumme}, 2, "", "."))
Gibt 8 zurück, wenn {Aufträge.Auftragssumme} = 14233,08, und ToText
({Aufträge.Auftragssumme}, 2, "", ".") gibt die Zeichenfolge „14233,08“
zurück. In diesem Beispiel wurden NULL-Zeichen (kein Zeichen) und
Punkt im Zahlenformat für das Formelfeld als Tausendertrennzeichen
bzw. Dezimalzeichen festgelegt.
Length("BOB")
Gibt 3 zurück.
Length("SMITH")
Gibt 5 zurück.
Length("BOB SMITH")
Gibt 9 zurück. (Das Leerzeichen zwischen BOB und SMITH wird als ein
Zeichen gezählt.)
Length({Kunde.Kundenname})
Die Länge der Textzeichenfolge, die als Wert in {Kunde.Kundenname}
gespeichert ist.
Die folgenden Beispiele gelten für die Crystal-Syntax:
{Kunde.Kundenname} [Length({Kunde.Kundenname})-2]
Gibt das drittletzte Zeichen des jeweiligen Kundennamens zurück. Damit
können Sie auch aus einer Zeichenfolge eine Teilzeichenfolge
extrahieren, die vom Ende der Zeichenfolge aus stets an derselben Stelle
beginnt.
Im folgenden Beispiel enthält eine Adresszeile das Bundesland und die
Postleitzahl. Die vollen Namen der Bundesländer haben unterschiedliche
Längen, das erste Zeichen der Postleitzahl ist jedoch, vom letzten Zeichen
aus gezählt, immer das siebte Zeichen. Die Formel ermittelt die Länge der
Adresszeile, zieht davon 7 ab und findet anhand des Ergebnisses das erste
Zeichen der Postleitzahl in der Adresszeile.
Local StringVar AnschriftZeile;
Local NumberVar AnschriftLänge;
AnschriftZeile = "British Columbia V6X 3W2"
AnschriftLänge := Length (AnschriftZeile);
AnschriftZeile [AnschriftLänge-7+1 to AnschriftLänge]
Crystal Reports-Anwenderhandbuch 301
8
8
Funktionen
Zeichenfolgen
Trim (Zchnflge)
Basic- und Crystal-Syntax.
Argumente
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
String-Wert
Aktion
Die Funktion Trim entfernt führende und nachfolgende Leerzeichen aus der
als Argument übergebenen Zeichenfolge.
Typische Verwendungen
Diese Funktion können Sie immer dann verwenden, wenn ein Textobjekt
führende und/oder nachfolgende Leerzeichen enthält, die bei der Ausrichtung
von Textzeichenfolgen, bei einer Zeichenzählung oder bei einer Berechnung
(wenn die Zeichenfolge z.B. in eine Zahl konvertiert werden soll) stören.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Trim("
abcde
")
Gibt „abcde“ zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
LTrim (Zchnflge)
LTrim und TrimLeft (Zchnflge) sind gleichwertige Funktionen. LTrim wird in der
Basic-Syntax bevorzugt, TrimLeft dagegen in der Crystal-Syntax.
Argument
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
String-Wert
302
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Aktion
LTrim entfernt alle Leerzeichen links neben der angegebenen Zeichenfolge
und gibt die Zeichenfolge zurück.
Typische Verwendungen
•
Diese Funktion können Sie immer dann verwenden, wenn ein Textobjekt
führende Leerzeichen enthält, die bei der Ausrichtung von
Textzeichenfolgen, bei einer Zeichenzählung oder bei einer Berechnung
(wenn die Zeichenfolge z. B. in eine Zahl konvertiert werden soll) stören.
•
Außerdem können Sie diese Funktion immer dann verwenden, wenn Sie
bündig ausgerichtete Textzeichenfolgen miteinander kombinieren
(verketten) und zwischen den Zeichenfolgen einen korrekten Abstand
beibehalten möchten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
LTrim("
Al/4520/B12")
Gibt "A1/4520/B12" zurück.
LTrim("
200")
Gibt „200“ zurück, wenn die Zeichenfolge „ 200“ durch führende
Leerzeichen rechtsbündig ausgerichtet ist.
Angenommen, Sie haben die beiden rechtsbündigen Datenbankfelder
{Tabelle.LEBENSMITTEL1} und {Tabelle.LEBENSMITTEL2}. Jedes Feld
kann bis zu 15 Zeichen enthalten. {Tabelle.LEBENSMITTEL1} enthält das
Wort Brot, und {Tabelle.LEBENSMITTEL2} enthält das Wort Butter. Wenn Sie
diese Wörter drucken würden, würden sie wie folgt angezeigt:
"
Brot"
"
Butter"
Für jedes Feld mit 15 Zeichen enthält die Datenbank das rechtsbündig
ausgerichteten Feld "Wert" sowie so viele Leerzeichen, dass das Feld
ausgefüllt ist. Wenn Sie diese Wörter ohne die führenden Leerzeichen
verwenden möchten (um z.B. den Ausdruck "Brot und Butter" zu erstellen),
können Sie die Funktion LTrim wie folgt verwenden:
LTrim({Tabelle.LEBENSMITTEL1}) + " und " +
LTrim({Tabelle.LEBENSMITTEL2})
Gibt „Brot und Butter“ zurück.
Die Leerzeichen, die zusammen mit dem Wort und vor bzw. nach diesem
in Anführungszeichen stehen, sorgen dafür, dass die drei Wörter des sich
ergebenden Satzes den richtigen Abstand voneinander haben.
Crystal Reports-Anwenderhandbuch 303
8
8
Funktionen
Zeichenfolgen
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Siehe auch
•
•
Trim (Zchnflge)
RTrim (Zchnflge)
TrimLeft (Zchnflge)
TrimLeft und LTrim (Zchnflge) sind gleichwertige Funktionen. TrimLeft wird in
der Crystal-Syntax bevorzugt, LTrim dagegen in der Basic-Syntax.
Argumente
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
String-Wert
Aktion
TrimLeft entfernt alle Leerzeichen, die sich vor einer Zeichenfolge oder einem
Datenfeld (links davon) befinden, dessen Werte als rechtsbündige
Zeichenfolgen in einer Datenbank gespeichert sind.
Typische Verwendungen
•
Diese Funktion können Sie immer dann verwenden, wenn ein Textobjekt
führende Leerzeichen enthält, die bei der Ausrichtung von
Textzeichenfolgen, bei einer Zeichenzählung oder bei einer Berechnung
(wenn die Zeichenfolge z. B. in eine Zahl konvertiert werden soll) stören.
•
Außerdem können Sie diese Funktion immer dann verwenden, wenn Sie
bündig ausgerichtete Textzeichenfolgen miteinander kombinieren
(verketten) und zwischen den Zeichenfolgen einen korrekten Abstand
beibehalten möchten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
TrimLeft("
Al/4520/B12")
Gibt "A1/4520/B12" zurück.
TrimLeft("
200")
Gibt „200“ zurück, wenn die Zeichenfolge „200“ durch führende
Leerzeichen rechtsbündig ausgerichtet ist.
304
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Angenommen, Sie haben die beiden rechtsbündigen Datenbankfelder
{Tabelle.LEBENSMITTEL1} und {Tabelle.LEBENSMITTEL2}. Jedes Feld
kann bis zu 15 Zeichen enthalten. {Tabelle.LEBENSMITTEL1} enthält das
Wort Brot, und {Tabelle.LEBENSMITTEL2} enthält das Wort Butter. Wenn Sie
diese Wörter drucken würden, würden sie wie folgt angezeigt:
"
Brot"
"
Butter"
Für jedes Feld mit 15 Zeichen enthält die Datenbank das rechtsbündig
ausgerichteten Feld "Wert" sowie so viele Leerzeichen, dass das Feld
ausgefüllt ist. Wenn Sie diese Wörter ohne die führenden Leerzeichen
verwenden möchten (um z.B. den Ausdruck "Brot und Butter" zu erstellen),
können Sie die Funktion TrimLeft wie folgt verwenden:
TrimLeft({Tabelle.LEBENSMITTEL1}) + " und " +
TrimLeft({Tabelle.LEBENSMITTEL2})
Gibt „Brot und Butter“ zurück.
Die Leerzeichen, die zusammen mit dem Wort und vor bzw. nach diesem in
Anführungszeichen stehen, sorgen dafür, dass die drei Wörter des sich
ergebenden Satzes den richtigen Abstand voneinander haben.
Siehe auch
•
•
Trim (Zchnflge)
TrimRight (Zchnflge)
RTrim (Zchnflge)
RTrim und TrimRight (Zchnflge) sind gleichwertige Funktionen. RTrim wird in
der Basic-Syntax bevorzugt, TrimRight dagegen in der Crystal-Syntax.
Argument
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
String-Wert
Aktion
RTrim entfernt alle Leerzeichen rechts neben der angegebenen Zeichenfolge
und gibt die Zeichenfolge zurück.
Crystal Reports-Anwenderhandbuch 305
8
8
Funktionen
Zeichenfolgen
Typische Verwendungen
•
Diese Funktion können Sie immer dann verwenden, wenn ein Textobjekt
nachfolgende Leerzeichen enthält, die bei der Ausrichtung von
Textzeichenfolgen, bei einer Zeichenzählung oder bei einer Berechnung
(wenn die Zeichenfolge z. B. in eine Zahl konvertiert werden soll) stören.
•
Außerdem können Sie diese Funktion immer dann verwenden, wenn Sie
bündig ausgerichtete Textzeichenfolgen miteinander kombinieren
(verketten) und zwischen den Zeichenfolgen einen korrekten Abstand
beibehalten möchten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
RTrim("Al/4520/B12
")
Gibt „A1/4520/B12“ zurück.
RTrim({Datei.VERWEIS})
Gibt „Bal Fwd.“ zurück, wenn {Datei.VERWEIS} die linksbündig
ausgerichtete Textzeichenfolge "Bal Fwd. " enthält.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Siehe auch
•
•
Trim (Zchnflge)
LTrim (Zchnflge)
TrimRight (Zchnflge)
TrimRight und RTrim (Zchnflge) sind gleichwertige Funktionen. TrimRight
wird in der Crystal-Syntax bevorzugt, RTrim dagegen in der Basic-Syntax.
Argumente
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
String-Wert
Aktion
TrimRight entfernt alle Leerzeichen, die sich hinter einer Zeichenfolge oder
einem Datenfeld (rechts davon) befinden, dessen Werte als linksbündige
Zeichenfolgen in einer Datenbank gespeichert sind.
306
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Typische Verwendungen
•
Diese Funktion können Sie immer dann verwenden, wenn ein Textobjekt
nachfolgende Leerzeichen enthält, die bei der Ausrichtung von
Textzeichenfolgen, bei einer Zeichenzählung oder bei einer Berechnung
(wenn die Zeichenfolge z. B. in eine Zahl konvertiert werden soll) stören.
•
Außerdem können Sie diese Funktion immer dann verwenden, wenn Sie
bündig ausgerichtete Textzeichenfolgen miteinander kombinieren
(verketten) und zwischen den Zeichenfolgen einen korrekten Abstand
beibehalten möchten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
TrimRight("Al/4520/B12
")
Gibt „A1/4520/B12“ zurück.
TrimRight({Datei.VERWEIS})
Gibt „Bal Fwd.“ zurück, wenn die Textzeichenfolge "Bal Fwd.
linksbündig in dem Feld steht.
"
Siehe auch
•
•
Trim (Zchnflge)
TrimLeft (Zchnflge)
UCase (Zchnflge)
UCase und UpperCase (Zchnflge) sind gleichwertige Funktionen. UCase wird
in der Basic-Syntax bevorzugt, UpperCase dagegen in der Crystal-Syntax.
Argument
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
String-Wert
Aktion
UCase wandelt die angegebene Zeichenfolge komplett in Großbuchstaben
um und gibt sie wieder zurück.
Typische Verwendung
Diese Funktion ist besonders nützlich, wenn ein Feld Groß- und
Kleinbuchstaben enthält, die zur Vereinheitlichung alle in Großbuchstaben
umgewandelt werden sollen.
Crystal Reports-Anwenderhandbuch 307
8
8
Funktionen
Zeichenfolgen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
UCase("Beschreibung")
Gibt "BESCHREIBUNG" zurück.
UCase({Kunde.VORNAME})
Gibt „WOLFRAM“ zurück, wenn in {Kunde.VORNAME} „Wolfram“
enthalten ist.
UCase("Wolfram Schwarz")
Gibt „WOLFRAM SCHWARZ“ zurück.
UCase("abc12345")
Gibt „ABC12345“ zurück.
UpperCase("BrOt "
+
"UND "
+
"bUtTeR")
Gibt „BROT UND BUTTER“ zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Siehe auch
•
LCase (Zchnflge)
UpperCase (Zchnflge)
UpperCase und UCase (Zchnflge) sind gleichwertige Funktionen. UpperCase
wird in der Crystal-Syntax bevorzugt, UCase dagegen in der Basic-Syntax.
Argumente
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
String-Wert
Aktion
UpperCase gibt die Textzeichenfolge oder den Textwert im Datenfeld in
Großbuchstaben zurück.
Typische Verwendungen
Diese Funktion ist besonders nützlich, wenn ein Feld Groß- und
Kleinbuchstaben enthält, die zur Vereinheitlichung alle in Großbuchstaben
umgewandelt werden sollen.
308
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
UpperCase("Beschreibung")
Gibt „BESCHREIBUNG“ zurück.
UpperCase({Kunde.VORNAME})
Gibt „WOLFRAM“ zurück, wenn in {Kunde.VORNAME} „Wolfram“
enthalten ist.
UpperCase("Wolfram Schwarz")
Gibt "WOLFRAM SCHWARZ" zurück.
UpperCase("abc12345")
Gibt „ABC12345“ zurück.
UpperCase("BrOt "
+
"UND "
+
"bUtTeR")
Gibt „BROT UND BUTTER“ zurück.
Siehe auch
•
LowerCase (Zchnflge)
LCase (Zchnflge)
LCase und LowerCase (Zchnflge) sind gleichwertige Funktionen. LCase wird
in der Basic-Syntax bevorzugt, LowerCase dagegen in der Crystal-Syntax.
Argument
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
String-Wert
Aktion
LCase wandelt die angegebene Zeichenfolge komplett in Kleinbuchstaben
um und gibt sie wieder zurück.
Typische Verwendung
Diese Funktion kann z.B. eingesetzt werden, wenn ein Feld Groß- und
Kleinbuchstaben enthält und Sie aus Konsistenzgründen alle Werte in
Kleinbuchstaben umwandeln möchten.
Crystal Reports-Anwenderhandbuch 309
8
8
Funktionen
Zeichenfolgen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
LCase ("Beschreibung")
Gibt „beschreibung“ zurück.
LCase ({Kunde.VORNAME})
Gibt „wolfram“ zurück, wenn in {Kunde.VORNAME} „Wolfram“ enthalten
ist.
LCase ("Wolfram Schwarz")
Gibt „wolfram schwarz“ zurück.
LCase ("ABC12345")
Gibt „abc12345“ zurück.
LCase("BrOt "
+
"UND "
+
"bUtTeR")
Gibt „Brot und Butter“ zurück.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Zahlen, die zum Text gehören, sind von der Funktion LCase nicht
betroffen.
Siehe auch
•
UCase (Zchnflge)
LowerCase (Zchnflge)
LowerCase und LCase (Zchnflge) sind gleichwertige Funktionen. LowerCase
wird in der Crystal-Syntax bevorzugt, LCase dagegen in der Basic-Syntax.
Argumente
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
String-Wert
Aktion
LowerCase gibt den angegebenen Textwert in Kleinbuchstaben zurück.
310
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Typische Verwendungen
Diese Funktion kann z.B. eingesetzt werden, wenn ein Feld Groß- und
Kleinbuchstaben enthält und Sie aus Konsistenzgründen alle Werte in
Kleinbuchstaben umwandeln möchten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
LowerCase("Beschreibung")
Gibt „beschreibung“ zurück.
LowerCase({Kunde.VORNAME})
Gibt „wolfram“ zurück, wenn in {Kunde.VORNAME} „Wolfram“ enthalten
ist.
LowerCase("Wolfram Schwarz")
Gibt „wolfram schwarz“ zurück.
LowerCase("ABC12345")
Gibt „abc12345“ zurück.
LowerCase("BrOt "
+
"UND "
+
"bUtTeR")
Gibt „Brot und Butter“ zurück.
Anmerkungen
Zahlen, die zum Text gehören, sind von der Funktion LowerCase nicht
betroffen.
Siehe auch
•
UpperCase (Zchnflge)
ProperCase(Zchnflge)
Basic- und Crystal-Syntax.
Argument
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
String-Wert
Crystal Reports-Anwenderhandbuch 311
8
8
Funktionen
Zeichenfolgen
Aktion
ProperCase wandelt den ersten Buchstaben jedes Wortes in der
Zeichenfolge in Großbuchstaben um und konvertiert alle übrigen Buchstaben
in Kleinbuchstaben. Außerdem wird jeder Buchstabe groß geschrieben, der
auf ein nicht alphanumerisches Zeichen folgt.
Tipp: Diese Funktion ist besonders hilfreich, um die Namen von Personen
mit der korrekten Groß-/Kleinschreibung zu versehen, wenn sie
beispielsweise ausschließlich in Großbuchstaben in einer Datenbank
gespeichert sind.
Beispiele
ProperCase ("LINDA FONG")
In diesem Beispiel wird „Linda Fong“ zurückgegeben.
ProperCase ("123Michael's")
In diesem Beispiel wird „123Michael'S“ zurückgegeben.
Anmerkungen
Diese Funktion ist vergleichbar mit der Excel-Funktion für Eigennamen.
StrReverse (Zchnflge)
Basic- und Crystal-Syntax.
Argument
Zchnflge ist eine Zeichenfolge, deren Zeichen umgekehrt werden sollen.
Rückgabewert
String-Wert
Aktion
StrReverse gibt eine Zeichenfolge zurück, in der die Reihenfolge der Zeichen
aus inputString umgedreht wurde. Wenn inputString eine Zeichenfolge mit der
Länge Null ("") ist, wird auch eine Zeichenfolge mit der Länge Null
zurückgegeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
StrReverse("abc")
Gibt „cba“ zurück.
312
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
IsNumeric (Zchnflge)
IsNumeric und NumericText (Zchnflge) sind gleichwertige Funktionen.
IsNumeric wird in der Basic-Syntax bevorzugt, NumericText dagegen in der
Crystal-Syntax.
Argument
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
Boolescher Wert (Wahr oder Falsch)
Aktion
IsNumeric gibt True zurück, wenn das angegebene String-Argument in eine
gültige Zahl umgewandelt werden kann, und gibt andernfalls False zurück.
Typische Verwendung
Wenn Sie Zahlen (z. B. Gewichte) in einem Textobjekt speichern, können Sie
mit IsNumeric den Wert jedes Datensatzes prüfen, um sicherzugehen, dass
Sie den Wert mit ToNumber oder CDbl umwandeln können.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
IsNumeric({Datei.VERWEIS})
Gibt FALSE zurück, wenn {Datei.VERWEIS} = „ABCDEFG“.
IsNumeric({Datei.KENNUNG})
Gibt TRUE zurück, wenn {Datei.KENNUNG} = „12345“.
IsNumeric({Datei.KENNUNG})
Gibt TRUE zurück, wenn {Datei.KENNUNG} = „12345443“.
IsNumeric({Datei.KENNUNG})
Gibt FALSE zurück, wenn {Datei.KENNUNG} = „12345-443“.
IsNumeric ({Datei.KENNUNG} [1 to 5])
Gibt TRUE zurück, wenn {Datei.KENNUNG} = „12345-443“.
IsNumeric ({Datei.KENNUNG} (6))
Gibt FALSE zurück, wenn {Datei.KENNUNG} = „12345-443“.
Crystal Reports-Anwenderhandbuch 313
8
8
Funktionen
Zeichenfolgen
IsNumeric ({Datei.KENNUNG} (7 to 9))
Gibt TRUE zurück, wenn {Datei.KENNUNG} = „12345-443“.
IsNumeric({Datei.KENNUNG})
Gibt FALSE zurück, wenn {Datei.KENNUNG} = „12345T“.
Hinweis: Sie können diese Funktion in Verbindung mit ToNumber oder CStr
verwenden, um zu prüfen, ob im Feld VERWEIS eine Zahl steht.
Anschließend geben Sie die Zeichenfolge als Zahl oder als 0 aus, wenn die
Textzeichenfolge keine Zahl ist.
Das folgende Beispiel gilt für die Basic-Syntax:
If IsNumeric({Datei.KENNUNG}) Then
formula = ToNumber({Datei.KENNUNG})
Else
formula = 0
End If
NumericText (Zchnflge)
NumericText und IsNumeric (Zchnflge) sind gleichwertige Funktionen.
NumericText wird in der Crystal-Syntax bevorzugt, IsNumeric dagegen in der
Basic-Syntax.
Argumente
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
Boolescher Wert
Aktion
NumericText prüft, ob der Inhalt eines Textobjekts eine Zahl ist.
•
Wenn der gesamte Inhalt des Feldes eine Zahl ist oder wenn die
Zeichen, die über den Operator Index Index in Arrays und Zeichenfolgen
gelesen wurden, als Ganzes eine Zahl ergeben, gibt der Ausdruck den
Wert TRUE zurück.
•
Wenn ein Teil des Feldinhalts oder der gelesenen Zeichen keine Zahl ist,
gibt die Funktion den Wert FALSE zurück.
Typische Verwendungen
Wenn Sie Zahlen (z. B. Gewichte) in einem Textobjekt speichern, können Sie
mit NumericText den Wert jedes Datensatzes prüfen, um sicherzugehen,
dass Sie den Wert mit ToNumber umwandeln können.
314
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
NumericText({Datei.VERWEIS})
Gibt FALSE zurück, wenn {Datei.VERWEIS} = „ABCDEFG“.
NumericText({Datei.KENNUNG})
Gibt TRUE zurück, wenn {Datei.KENNUNG} = „12345“.
NumericText({Datei.KENNUNG})
Gibt TRUE zurück, wenn {Datei.KENNUNG} = „12345443“.
NumericText({Datei.KENNUNG})
Gibt FALSE zurück, wenn {Datei.KENNUNG} = „12345-443“.
NumericText ({Datei.KENNUNG} [1 to 5])
Gibt TRUE zurück, wenn {Datei.KENNUNG} = „12345-443“.
NumericText ({Datei.KENNUNG} [6])
Gibt FALSE zurück, wenn {Datei.KENNUNG} = „12345-443“.
NumericText ({Datei.KENNUNG} [7 to 9])
Gibt TRUE zurück, wenn {Datei.KENNUNG} = „12345-443“.
NumericText({Datei.KENNUNG})
Gibt FALSE zurück, wenn {Datei.KENNUNG} = „12345T“.
Hinweis: Sie können diese Funktion in Verbindung mit ToNumber
verwenden, um zu prüfen, ob im Feld VERWEIS eine Zahl enthalten ist.
Anschließend geben Sie die Zeichenfolge als Zahl oder als 0 aus, wenn die
Textzeichenfolge keine Zahl ist.
Das folgende Beispiel gilt für die Crystal-Syntax:
If NumericText({Datei.VERWEIS}) Then
ToNumber({Datei.VERWEIS})
Else
0;
ToNumber
Basic- und Crystal-Syntax.
ToNumber und CDbl sind gleichwertige Funktionen.
Syntax der Argumente
•
•
•
ToNumber (numerisch)
ToNumber (Zeichenfolge)
ToNumber (boolesch)
Crystal Reports-Anwenderhandbuch 315
8
8
Funktionen
Zeichenfolgen
Argumente
•
•
•
numerisch ist eine Zahl oder der Wert einer Währung.
Zeichenfolge ist eine Textzeichenfolge, die numerischen Text enthält.
Boolesch ist ein logischer Wert, den Sie als Zahl behandeln sollten.
Rückgabewert
Bruchzahl
Aktion
Die Funktion ToNumber konvertiert Zahlen, Währungen, Zeichenfolgen und
boolesche Werte in Zahlen.
In einer Datenbank werden einige Zahlen in numerischen Feldern
gespeichert, während andere als Text in Zeichenfeldern gespeichert werden.
Die Festlegung, welche Felder numerische Felder und welche Felder
Textfelder sind, treffen Sie beim Einrichten der Datenbank. Zahlen, mit denen
Sie möglicherweise Berechnungen vornehmen (Bauteilkosten, Bestellmenge
usw.), werden normalerweise in numerischen Feldern gespeichert. Zahlen,
die Sie vermutlich nicht für Berechnungen benötigen (Kundennummern,
Telefonnummern usw.) werden normalerweise in Textobjekten gespeichert.
Mit ToNumber können Sie eine als Text gespeicherte Zahl in eine Zahl
umwandeln, die für Berechnungen verwendbar ist.
Mit dem booleschen Argument können Sie SQL_BIT-Datenwerte als Zahlen
behandeln.
Typische Verwendungen
Sie können diese Funktion beispielsweise verwenden, wenn Ihre
Artikelnummern codierte Produktinformationen enthalten, die Sie in
Berechnungen verwenden möchten. Eine typische Verwendung wäre die
Konvertierung von Currency- oder Zeichenfolgewerten, die numerische
Zeichen enthalten, in Zahlenwerte.
316
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ToNumber({Aufträge.Auftragssumme})
Gibt einen Zahlenwert zurück, der das Währungsfeld
{Aufträge.Auftragssumme} enthält.
ToNumber("123.45")
Gibt 123,45 zurück.
ToNumber({Datei.VERWEIS})
Gibt 200,00 zurück, wenn Folgendes zutrifft: Im Feld {Datei.VERWEIS}
steht die Textzeichenfolge „200“.
ToNumber({Datei.KONTONUMMER}/2)
Gibt 22144 zurück, wenn {Datei.KONTONUMMER} = 44288.
ToNumber({Kunde.PLZ}) < 33333
Gibt TRUE zurück, wenn Folgendes zutrifft: {Kunde.PLZ} = „21385“.
Anmerkungen
Bevor Sie die Funktion ToNumber verwenden, sollten Sie den jeweiligen Wert
erst mit der Funktion NumericText prüfen. NumericText gibt nur dann den
Wert TRUE zurück, wenn der Wert der Zeichenfolge fehlerfrei in eine Zahl
umgewandelt werden kann. Versuchen Sie dagegen, einen Wert in eine Zahl
umzuwandeln, der keine Zahl ist, verursacht die Formel in Ihrem Bericht
einen Fehler.
Das folgende Beispiel zeigt, wie die Funktionen NumericText und ToNumber
zusammen in der Crystal-Syntax verwendet werden können:
If NumericText ({Datei.FELD}) Then
ToNumber ({Datei.FELD})
Else
0
Crystal Reports-Anwenderhandbuch 317
8
8
Funktionen
Zeichenfolgen
ToText
Basic- und Crystal-Syntax.
ToText und CStr sind gleichwertige Funktionen.
Syntax der Argumente
•
•
•
•
•
ToText(x)
ToText (x, y)
ToText (x, y, z)
ToText (x, y, z, w)
ToText (x, y, z, w, q)
Argumente
318
Konvertieren. . .
Beschreibung
Boolesche Werte
•
Number- und
Currency-Werte
•
x ist ein boolescher Wert, der in eine Zeichenfolge
umgewandelt wird, entweder Wahr oder Falsch.
x ist ein Number- oder Currency-Wert, der in eine
Zeichenfolge umgewandelt werden soll. Der Wert
kann ganzzahlig oder eine Dezimalzahl sein.
•
y ist eine ganze Zahl, die die Anzahl der
Dezimalstellen angibt, die der Wert von x erhalten
soll. (Dieses Argument ist optional.)
•
z ist eine aus einem Zeichen bestehende
Textzeichenfolge, die das Zeichen angibt, mit dem
Tausenderwerte in x getrennt werden.
Standardzeichen ist das Zeichen, das in der
Windows-Systemsteuerung in
Ländereinstellungen angegeben ist. (Dieses
Argument ist optional.)
•
w ist eine aus einem Zeichen bestehende
Textzeichenfolge, die das Zeichen angibt, das als
Dezimaltrennzeichen in x verwendet wird.
Standardzeichen ist das Zeichen, das in der
Windows-Systemsteuerung in
Ländereinstellungen angegeben ist. (Dieses
Argument ist optional.)
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Konvertieren. . .
Beschreibung
Number- und
Currency-Werte
(Formatierung)
•
x ist ein Number- oder Currency-Wert, der in eine
Zeichenfolge umgewandelt werden soll. Der Wert
kann ganzzahlig oder eine Dezimalzahl sein.
•
y ist eine Textzeichenfolge, die das Anzeigeformat
für den Wert von x festlegt. Unter
Formatzeichenfolgen finden Sie weitere
Informationen über die Erstellung einer
Formatzeichenfolge.
•
z ist eine ganze Zahl, die die Anzahl der
Dezimalstellen angibt, die der Wert von x erhalten
soll. (Dieses Argument ist optional.)
•
w ist eine aus einem Zeichen bestehende
Textzeichenfolge, die das Zeichen angibt, mit dem
Tausenderwerte in x getrennt werden.
Standardzeichen ist das Zeichen, das in der
Windows-Systemsteuerung in
Ländereinstellungen angegeben ist. (Dieses
Argument ist optional.)
•
q ist eine aus einem Zeichen bestehende
Textzeichenfolge, die das Zeichen angibt, das als
Dezimaltrennzeichen in x benutzt wird.
Standardzeichen ist das Zeichen, das in der
Windows-Systemsteuerung in
Ländereinstellungen angegeben ist. (Dieses
Argument ist optional.)
x ist ein Date-Wert, der in eine Textzeichenfolge
umgewandelt wird.
Date-Werte
•
•
y ist eine Textzeichenfolge, die definiert, wie der
Wert von x formatiert werden soll. Unter
Formatzeichenfolgen für Date-, Time- und
DateTime-Werte erhalten Sie weitere
Informationen über die Erstellung dieser
Formatzeichenfolge. (Dieses Argument ist
optional.)
Crystal Reports-Anwenderhandbuch 319
8
8
Funktionen
Zeichenfolgen
Konvertieren. . .
Beschreibung
Time-Werte
•
x ist ein Time-Wert, der in eine Textzeichenfolge
umgewandelt wird.
•
y ist eine Textzeichenfolge, die definiert, wie der
Wert von x formatiert werden soll. Unter
Formatzeichenfolgen für Date-, Time- und
DateTime-Werte erhalten Sie weitere
Informationen über die Erstellung dieser
Formatzeichenfolge. (Dieses Argument ist
optional.)
•
z ist eine Textzeichenfolge, die als Bezeichnung
für AM (Morgenstunden, 0-12 Uhr Mittag)
verwendet werden soll. (Dieses Argument ist
optional.)
•
w ist eine Textzeichenfolge, die als Bezeichnung
für PM (Nachmittag, 12-24 Uhr) verwendet wird.
(Dieses Argument ist optional.)
x ist ein DateTime-Wert, der in eine
Textzeichenfolge umgewandelt wird.
DateTime-Werte
•
•
y ist eine Textzeichenfolge, die festlegt, wie die
resultierende Textzeichenfolge formatiert wird.
Siehe Formatzeichenfolgen für Date-, Time- und
DateTime-Werte Informationen über die Erstellung
einer Formatzeichenfolge. (Dieses Argument ist
optional.)
•
z ist eine Textzeichenfolge, die als Bezeichnung
für AM (Morgenstunden, 0-12 Uhr Mittag)
verwendet werden soll. (Dieses Argument ist
optional.)
•
w ist eine Textzeichenfolge, die als Bezeichnung
für PM (Nachmittag, 12-24 Uhr) verwendet wird.
(Dieses Argument ist optional.)
Rückgabewert
Textzeichenfolge
Aktion
Die Funktion ToText wandelt boolesche, Zahlen-, Währungs-, Datums-,
Uhrzeit- und Datums-/Uhrzeitwerte in Textzeichenfolgen um.
320
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Typische Verwendungen
Verwenden Sie diese Funktion, um einen booleschen, Zahlen-, Währungs-,
Datums-, Uhrzeit oder Datums-/Uhrzeitwert in Ihrem Bericht (Serienbriefe,
Kommentare usw.) in eine Textzeichenfolge umzuwandeln.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ToText({Aufträge.GELIEFERT})
Gibt True zurück, wenn Folgendes zutrifft: ({Aufträge.GELIEFERT}) =
True.
ToText(123.45)
Gibt 123,45 zurück.
ToText(12345.6749,2)
Gibt 1234,67 zurück.
ToText(12345.6750,2)
Gibt 12345,68 zurück.
ToText(12345.4999,0)
Gibt 12345 zurück.
ToText(12345.5000,0)
Gibt 12346 zurück.
ToText({Datei.VOLUMEN} * {Datei.MENGE})
Gibt 44,890.20 zurück, wenn Folgendes zutrifft: {Datei.VOLUMEN} =
24,45 und {Datei.MENGE} = 1836.
ToText ist nützlich, wenn Sie einen Satz aufbauen möchten, indem Sie eine
umgewandelte Zahl mit anderen Textzeichenfolgen kombinieren (verketten).
"Der Grundpreis des Artikels " + {Tabelle.ARTIKELNUMMER} + "
ist " + ToText({Tabelle.GRUNDPREIS}) + "
."
Diese Formel druckt den Satz „Der Grundpreis des Artikels A1/4520/B12
ist 50,00 €.“, wenn die ARTIKELNUMMER gleich A1/4520/B12 und der
GRUNDPREIS gleich 50,00 ist, wobei der GRUNDPREIS in Text
umgewandelt und mit 2 Dezimalstellen formatiert wird.
Die folgenden Beispiele gelten für die Crystal-Syntax:
ToText(CDate(1996, 11, 1), "yy MMM dd, dddd")
Gibt 96 Nov 01, Freitag zurück.
ToText(DateTime(1995,10,12,3,30,11),"HH:mm, yy MMMM ddd")
Gibt "03:30, 95 Oktober Mon" zurück.
ToText(Time(12, 10, 10), "HH*mm*ss tt", "amStr", "pmStr")
Gibt "12*10*10 pmStr" zurück.
Crystal Reports-Anwenderhandbuch 321
8
8
Funktionen
Zeichenfolgen
Anmerkungen
Die Syntaxformen der Funktion ToText, bei denen nur ein einziges Argument
verwendet wird, funktionieren genau wie die gleichnamigen Funktionen von
Visual Basic.
Konvertieren boolescher Werte
•
Wenn die Funktion ToText mit booleschen Werten verwendet wird, ist
sie hauptsächlich geeignet, um einen booleschen Wert mit anderem
Text zu kombinieren (verketten). In allen anderen Fällen kann ein
boolesches Feld so formatiert werden, dass es in Ihrem Bericht als
True (Wahr) oder False (Falsch) angezeigt wird. Dazu müssen Sie
lediglich im Format-Editor in dem Register Boolesch das Format
ändern.
Konvertieren von rationalen Zahlen und Currency-Werten
•
Ist die Anzahl der Dezimalstellen angegeben, kürzt diese Funktion
die Zahl nicht, wenn sie in Text umgewandelt wird, sondern rundet
die Zahl entsprechend der angegebenen Dezimalstellen. Weitere
Informationen hierzu finden Sie unter Round.
Konvertieren von Date-, Time- und DateTime-Werten:
322
•
Mit Ausnahme der Zeichen, mit denen Datumsangaben oder Zeiten
formatiert werden, können in einer Formatzeichenfolge alle Zeichen
verwendet werden. Sie könnten beispielsweise die Elemente eines
Datums (Tag, Monat und Jahr) durch Schrägstriche voneinander
trennen (wie in „30/12/95“) oder die Elemente einer Uhrzeit
(Stunden, Minuten und Sekunden) durch Doppelpunkte (wie in
„12:30:10“).
•
Möchten Sie die obigen Zeichen in einer Formatzeichenfolge
verwenden, müssen die Zeichen in Anführungszeichen stehen. Hier
ein Beispiel: ToText(CDateTime(1995,10,12,13,20,22), „dd/MM/yy hh
'Std' mm 'Min' ss 'Sek' “, 'AM', 'PM') gibt Folgendes zurück: „12/10/95
13 Std 20 Min 22 Sek“
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Übergeben optionaler Argumente:
•
Viele Argumente der Funktion ToText sind als optional angegeben.
Allerdings können Sie auf die Angabe eines Argumentes nur verzichten,
wenn alle ihm folgenden Argumente ebenfalls fehlen. Anders formuliert:
Sie können für das Argument w nur dann einen Wert angeben, wenn Sie
auch Werte für die Argumente y und z angegeben haben. Es können
beliebig viele optionale Argumente fehlen, solange auf die fehlenden
Argumente kein Argument mit Wert folgt. Die folgenden Kombinationen
sind zulässig, wenn Sie Argumente für die Funktion ToText angeben:
•
•
•
•
•
•
ToText(x)
ToText (x, y)
ToText (x, y, z)
ToText (x, y, z, w)
ToText (x, y, z, w, q)
Wenn Sie in der Formatzeichenfolge einer Uhrzeit die
Formatzeichen „t“ oder „tt“ verwenden, werden
Standardzeichenfolgen bereitgestellt, um die AM-Stunden
(Vormittag) und PM-Stunden (Nachmittag) zu kennzeichnen. „t“
bewirkt, dass nur ein Zeichen („a“ oder „p“) angezeigt wird, während
„tt“ bewirkt, dass die gesamte Zeichenfolge („am“ oder „pm“)
angezeigt wird. Sie können eigene Zeichenfolgen übergeben, die als
AM-/PM-Zeichenfolgen verwendet werden sollen. Im Abschnitt
Argumente weiter oben finden Sie die Argumente zur Konvertierung
von Time- und DateTime-Werten mit Hilfe der Funktion ToText. Wenn
Sie eigene AM-/PM-Zeichenfolgen übergeben, haben die
Formatzeichen „t“ und „tt“ die gleichen Auswirkungen auf diese
Zeichenfolgen (sie ergeben Zeichenfolgen aus nur je einem Zeichen
bzw. Zeichenfolgen aus allen Zeichen).
Crystal Reports-Anwenderhandbuch 323
8
8
Funktionen
Zeichenfolgen
Formatzeichenfolgen
In den Funktionen ToText und CStr kann mittels Formatzeichenfolgen
festgelegt werden, wie ein als Argument x übergebener Wert (rationale Zahl,
Currency-, Date-, Time- oder DateTime-Wert) angezeigt wird, nachdem er in
eine Zeichenfolge umgewandelt wurde. In diesem Abschnitt wird
beschrieben, wie Formatzeichenfolgen für die verschiedenen Datentypen
erstellt werden.
Formatzeichenfolgen für rationale Zahlen und Currency-Werte:
Folgende Zeichen werden verwendet, um Formatzeichenfolgen für rationale
Zahlen und Currency-Werte zu erstellen:
Zeichen
Beschreibung
Kommentare/Beispiele
#
Entspricht einer Ziffer oder
einem Leerzeichen.
Wenn die ursprüngliche Zahl
konvertiert wird, werden #Zeichen ignoriert, es sei denn,
die Anzahl der #-Zeichen in der
Formatzeichenfolge ist größer
als die Anzahl der signifikanten
Ziffern des ursprünglichen
Wertes. Ist dies der Fall, wird für
jedes zusätzliche #-Zeichen ein
Leerzeichen an die Zeichenfolge
angefügt.
Der ursprüngliche Wert sei z. B. 125,34:
• Die Formatzeichenfolge # ergibt die
Zeichenfolge 125 (die Anzahl der
signifikanten Ziffern ist größer als die
Anzahl der #-Zeichen),
324
Crystal Reports-Anwenderhandbuch
•
die Formatzeichenfolge ###.##
ergibt die Zeichenfolge 125,34 (die
Anzahl der signifikanten Ziffern ist
gleich der Anzahl der #-Zeichen),
und
•
die Formatzeichenfolge ####.###
ergibt die Zeichenfolge 125,34 (die
Anzahl der signifikanten Ziffern ist
kleiner als die Anzahl der #Zeichen).
Funktionen
Zeichenfolgen
Zeichen
Beschreibung
Kommentare/Beispiele
0
Entspricht einer Ziffer oder einer Der ursprüngliche Wert sei z. B. 125,34:
Null (0).
• Die Formatzeichenfolge 0 ergibt die
Wenn die ursprüngliche Zahl
Zeichenfolge 125 (die Anzahl der
konvertiert wird, werden Nullen
signifikanten Ziffern ist größer als die
(0) ignoriert, es sei denn, die
Anzahl der Nullen),
Anzahl der Nullen (0) in der
•
die Formatzeichenfolge 000,00
Formatzeichenfolge ist größer
ergibt die Zeichenfolge 125,34 (die
als die Anzahl der signifikanten
Anzahl der signifikanten Ziffern ist
Ziffern des ursprünglichen
gleich der Anzahl der Nullen), und
Wertes. Ist dies der Fall, wird für
jede zusätzliche Null (0) eine
• die Formatzeichenfolge 0000,000
Null (0) an die Zeichenfolge
ergibt die Zeichenfolge 0125,340
angefügt.
(die Anzahl der signifikanten Ziffern
ist kleiner als die Anzahl der Nullen).
#-Zeichen und Nullen (0) können in einer
Formatzeichenfolge kombiniert werden.
Der ursprüngliche Wert sei z. B. 125,34:
• Die Formatzeichenfolge ####,0000
ergibt die Zeichenfolge 125,3400.
•
•
Komma (,)
Ein Komma (,)
Ein Dezimalpunkt (.) gibt an, wo ein
Dezimaltrennzeichen stehen soll.
Das Zeichen, das tatsächlich in der
Ergebniszeichenfolge als
Dezimaltrennzeichen steht, kann
geändert werden.
Gibt an, wo ein
Tausendertrennzeichen steht.
Das Zeichen, das in der
Ergebniszeichenfolge als
Tausendertrennzeichen steht,
kann geändert werden.
Dezimalpunkt (.) Gibt an, wo ein
Dezimaltrennzeichen stehen
soll.
Das Zeichen, das tatsächlich in
der Ergebniszeichenfolge als
Dezimaltrennzeichen steht, kann
geändert werden.
Crystal Reports-Anwenderhandbuch 325
8
8
Funktionen
Zeichenfolgen
So können sich Formatzeichenfolgen auf Werte auswirken
In der folgenden Tabelle wird gezeigt, wie sich Formatzeichenfolgen auf
rationale Zahlen sowie Currency-Werte auswirken, die von der Funktion
ToText konvertiert wurden. In dieser Tabelle entspricht ein Unterstrich (_)
einem Leerzeichen in der Ergebniszeichenfolge:
Ursprünglicher
Wert
Formatzeichenfol Ergebniszeichenf
ge
olge
16.13
#
16
16.13
0
16
16.13
##
16
16.13
00
16
16.13
###
_16
16.13
000
016
16.13
#.####
16.13_
16.13
0.0000
16.1300
16125.00
###,###.#
_16,125.0
16125.00
000,000.0
016,125.0
16125.00
000000.0
016125.0
Formatzeichenfolgen für Date-, Time- und DateTime-Werte
Folgende Zeichen werden verwendet, um Formatzeichenfolgen für Date-,
Time- und DateTime-Werte zu erstellen:
326
Zeichen
Anmerkungen
d
- Tag des Monats ohne führende Null (0) bei
einer einzelnen Ziffer
dd
- Tag des Monats mit führender Null (0) bei
einer einzelnen Ziffer
ddd
- Wochentag als eine Abkürzung aus 2
Buchstaben
dddd
- vollständiger Name des Wochentags
M
- Monat ohne führende Null (0) bei einer
einzelnen Ziffer
MM
- Monat mit führender Null (0) bei einer
einzelnen Ziffer
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Zeichen
Anmerkungen
MMM
- Abkürzung des Monats aus drei
Buchstaben
MMMM
- vollständiger Monatsname
yy
- die zwei letzten Ziffern der Jahreszahl
yyyy
- volle Jahreszahl
h
- Stunden ohne führende Null (0) bei einer
einzelnen Ziffer (12 Stunden)
hh
- Stunden ohne führende Null (0) bei einer
einzelnen Ziffer (12 Stunden)
H
- Stunden ohne führende Null (0) bei einer
einzelnen Ziffer (24 Stunden)
HH
- Stunden mit führender Null (0) bei einer
einzelnen Ziffer (24 Stunden)
m
- Minuten ohne führende Null (0) bei einer
einzelnen Ziffer
mm
- Minuten mit führender Null (0) bei einer
einzelnen Ziffer
s
- Sekunden ohne führende Null (0) bei einer
einzelnen Ziffer
ss
- Sekunden mit führender Null (0) bei einer
einzelnen Ziffer
t, tt
- einzelnes Zeichen oder mehrere Zeichen
a.m./p.m. Zeichenfolge
In der folgenden Tabelle wird gezeigt, wie sich Formatzeichenfolgen auf
verschiedene Date-, Time- und DateTime-Werte auswirken, die von der
Funktion ToText oder CStr konvertiert wurden.
Date-, Time- oder
DateTime-Wert
Formatzeichenfolge
Ergebniszeichenfolge
CDate(1996, 11, 1)
yy MMM dd, dddd
96 Nov 01, Freitag
CTime(12, 10, 10)
HH*mm*ss tt
12*10*10
CDateTime(1995, 10,
12, 3, 30, 11)
HH:mm, yy MMMM ddd 03:30, 96 Oktober Mon
CTime(13, 20, 22)
hh 'Std' mm 'Min' ss
'Sek' tt
01 Std 20 Min 22 Sek
CDate(1998, 3, 17)
M/dd/yy
3/17/98
Crystal Reports-Anwenderhandbuch 327
8
8
Funktionen
Zeichenfolgen
Konvertieren boolescher Werte
Wenn die Funktion ToText mit booleschen Werten verwendet wird, ist sie
hauptsächlich geeignet, um einen booleschen Wert mit anderem Text zu
kombinieren (verketten). In allen anderen Fällen kann ein boolesches Feld so
formatiert werden, dass es in Ihrem Bericht als True (Wahr) oder False
(Falsch) angezeigt wird. Dazu müssen Sie lediglich im Dialogfeld „FormatEditor“ im Register „Boolesch“ das Format ändern.
Konvertieren von rationalen Zahlen und Currency-Werten
Ist die Anzahl der Dezimalstellen angegeben, kürzt diese Funktion die Zahl
nicht, wenn sie in Text umgewandelt wird, sondern rundet die Zahl
entsprechend der angegebenen Dezimalstellen. Weitere Informationen
hierzu finden Sie unter Round.
Konvertieren von Date-, Time- und DateTime-Werten
Mit Ausnahme der Zeichen, mit denen Datumsangaben oder Zeiten formatiert
werden, können in einer Formatzeichenfolge alle Zeichen verwendet werden.
Sie könnten beispielsweise die Elemente eines Datums (Tag, Monat und
Jahr) durch Schrägstriche voneinander trennen (wie in „30/12/95“) oder die
Elemente einer Uhrzeit (Stunden, Minuten und Sekunden) durch
Doppelpunkte (wie in „12:30:10“).
Möchten Sie die obigen Zeichen in einer Formatzeichenfolge verwenden,
müssen die Zeichen in Anführungszeichen stehen. Hier ein Beispiel:
ToText(DateTime(1995,10,12,13,20,22), "dd/MM/yy hh 'Std' mm
'Min' ss 'Sek' ", 'AM', 'PM') gibt Folgendes zurück: "12/
10/95 13 Std 20 Min 22 Sek"
Übergeben optionaler Argumente
•
328
Viele Argumente der Funktion ToText sind als optional angegeben.
Allerdings können Sie auf die Angabe eines Argumentes nur verzichten,
wenn alle ihm folgenden Argumente ebenfalls fehlen. Anders formuliert:
Sie können für das Argument w nur dann einen Wert angeben, wenn Sie
auch Werte für die Argumente y und z angegeben haben. Es können
beliebig viele optionale Argumente fehlen, solange auf die fehlenden
Argumente kein Argument mit Wert folgt.
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Die folgenden Kombinationen sind zulässig, wenn Sie Argumente für die
Funktion ToText angeben:
•
•
•
•
•
•
ToText(x)
ToText (x, y)
ToText (x, y, z)
ToText (x, y, z, w)
ToText (x, y, z, w, q)
Wenn Sie in der Formatzeichenfolge einer Uhrzeit die Formatzeichen „t“
oder „tt“ verwenden, werden Standardzeichenfolgen bereitgestellt, um
die AM-Stunden (Vormittag) und PM-Stunden (Nachmittag) zu
kennzeichnen. „t“ bewirkt, dass nur ein Zeichen („a“ oder „p“) angezeigt
wird, während „tt“ bewirkt, dass die gesamte Zeichenfolge („am“ oder
„pm“) angezeigt wird. Sie können eigene Zeichenfolgen übergeben, die
als AM-/PM-Zeichenfolgen verwendet werden sollen. Weitere
Informationen finden Sie in der Beschreibung der Argumente zum
Konvertieren von Time- und DateTime-Werten mit der Funktion ToText im
Abschnitt Argumente der ToText.)
Wenn Sie eigene AM-/PM-Zeichenfolgen übergeben, haben die
Formatzeichen „t“ und „tt“ die gleichen Auswirkungen auf diese
Zeichenfolgen (sie ergeben Zeichenfolgen aus nur je einem Zeichen bzw.
Zeichenfolgen aus allen Zeichen). Die Formatzeichen „t“ und „tt“ sind
optional und nur dann erforderlich, wenn die standardmäßigen AM-/PMZeichenfolgen benötigt werden.
Siehe auch
•
CStr
ToWords
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
ToWords(x)
ToWords (x, DezStellen)
ToWords (x, DezStellen, Formulartyp)
Crystal Reports-Anwenderhandbuch 329
8
8
Funktionen
Zeichenfolgen
Argumente
•
x ist ein Zahlen- oder Währungswert, der in Wörter umgewandelt werden
soll.
•
DezStellen ist eine ganze Zahl, die angibt, wie viele Dezimalstellen bei
der Konvertierung berücksichtigt werden sollen. (Dieses Argument ist
optional.)
•
Formulartyp gibt den Typ von Formular x an. Dieses Argument wird nur
für asiatische Sprachen verwendet, insbesondere Japanisch,
Koreanisch, Chinesisch (vereinfacht) und Chinesisch (traditionell). Bei
Englisch oder anderen nicht asiatischen Sprachen wird es ignoriert.
Formulartyp 0
Klassisches Formular, auch Prüfformular genannt.
Formulartyp 1
Tagesformular
Formulartyp 2
Informelles Formular
Hinweis:
•
Das Tagesformular hat dieselbe Struktur wie das klassische
Formular, außer dass ein anderer Zeichensatz für Ziffern verwendet
wird. Da in Koreanisch lediglich ein Zeichensatz für Ziffern existiert,
sind Tagesformular und klassisches Formular in dieser Sprache
identisch. Der im Tagesformular verwendete Stil ist mit Artikeln
vergleichbar.
•
Das informelle Formular wird zum Erfassen von Telefonnummern,
Adressen usw. verwendet.
Rückgabewert
Textzeichenfolge
Aktion
Mit Hilfe dieser Funktion können Sie den Wert eines Number- oder
Währungsfeldes oder das Ergebnis einer numerischen Berechnung in Wörter
umwandeln, die sich dann als Text verwenden lassen. Die Möglichkeit, die
Anzahl der Dezimalstellen anzupassen, erweist sich dann als hilfreich, wenn
die Zahl das Ergebnis einer Berechnung ist, die mehr Dezimalstellen
produziert als erwünscht.
Typische Verwendungen
Sie können diese Funktion beispielsweise verwenden, um auf Schecks
Beträge in Worten zu drucken.
330
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ToWords(12345)
Gibt "zwölftausenddreihundertfünfundvierzig und xx/100" zurück.
ToWords(12345.6749,2)
Gibt "zwölftausenddreihundertfünfundvierzig und 67/100" zurück.
ToWords(12345.4999,0)
Gibt "zwölftausenddreihundertvierundvierzig" zurück.
ToWords(12345.5000,0)
Gibt "zwölftausenddreihundertsechsundvierzig" zurück.
ToWords(-12345)
Gibt "minuszwölftausenddreihundertfünfundvierzig und xx/100" zurück.
ToWords(12.3499)
Gibt "zwölf und 35/100" zurück.
ToWords({Aufträge.Auftragssumme})
Gibt "zweitausendsechzehn und 84/100" zurück, wenn Folgendes zutrifft:
{Aufträge.Auftragssumme} = 2016,84.
ToWords((({Datei.MENGE1} + {Datei.MENGE2} + {Datei.MENGE3})
* {Datei.PREIS}) * 1.075)
Gibt "einhundertzwei und 13/100" zurück.
ToWords((({Datei.MENGE1} + {Datei.MENGE2} + {Datei.MENGE3})
* {Datei.PREIS}) * 1.075,0)
Gibt "einhundertzwei" zurück, wenn Folgendes zutrifft: {Datei.MENGE1}
= 1, {Datei.MENGE2} = 82, {Datei.MENGE3} = 12 und {Datei.PREIS} =
1,00 (summiert die drei Mengen, multipliziert das Ergebnis mit dem Preis
und fügt 7,5 % Mehrwertsteuer hinzu). Hier ist die numerische Antwort
102,125, die vor der Ausgabe in Wörtern auf 102,13 (mit zwei
Standarddezimalstellen) gerundet wird.
Anmerkungen
•
Diese Funktion arbeitet mit der Zahl als Ganzes, statt sie als Folge
individueller Ziffern zu behandeln. Das heißt, 123 wird als die Zahl
einhundertdreiundzwanzig statt der einzelnen Ziffern eins, zwei und drei
behandelt.
•
•
Negative Zahlen beginnen mit dem Wort „minus“.
Werte von Währungsfeldern und Zahlenfeldern werden auf dieselbe
Weise behandelt und führen zu identischen Ergebnissen.
Crystal Reports-Anwenderhandbuch 331
8
8
Funktionen
Zeichenfolgen
•
Da ein ausgeschriebener Wert viel länger ist als die ursprüngliche Zahl,
müssen Sie das Anzeigefeld entsprechend verbreitern, damit die neue
Feldlänge berücksichtigt wird.
ReplicateString (Zchnflge, AnzKopien)
Basic- und Crystal-Syntax.
Argumente
•
•
Zchnflge ist die Textzeichenfolge, die wiederholt werden soll.
AnzKopien ist eine ganze Zahl, die angibt, wie oft Zchnflge wiederholt
werden soll.
Rückgabewert
Textzeichenfolge
Aktion
Wiederholt die in Zchnflge angegebene Zeichenfolge so oft, wie AnzKopien
angibt.
Typische Verwendungen
Mit dieser Funktion können Sie bei Bedarf eine aus wiederholten Zeichen
bestehende Zeile einfügen. Typische Einsatzgebiete sind:
•
•
•
•
Markieren von kritischen Daten in Ihrem Bericht,
Erstellen von einfachen Balkendiagrammen,
Unterteilen eines Berichts in mehrere sichtbare Bereiche und
Markieren von Gesamtergebnissen, Teilergebnissen und anderen Daten
eines Gruppenergebnisses.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Datei.UMSATZ} < {Datei.ANGEBOT} Then
ReplicateString("*",10)
Else
""
Druckt als Markierung zehnmal das Zeichen *.
{Datei.NAME}+ "
" + ReplicateString("*"), {Datei.ERGEBNIS})
Druckt ein einfaches Balkendiagramm, das Testergebnisse anzeigt. Die
Formel druckt für jeden Punkt eines Testergebnisses (der Wert im Feld
{Datei.ERGEBNIS}) ein Sternchen.
332
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Angenommen, es liegen folgende Daten vor:
Name
Punktzahl
Schmidt
23
Strauss
17
Braun
21
Johnson
13
Reynolds
25
Die Formel produziert folgendes Ergebnis:
Name
@Punktzahl
Schmidt
***********************
Strauss
******************
Braun
**********************
Johnson
***************
Reynolds
*****************************
Space (Ganzzahl)
Basic- und Crystal-Syntax.
Argumente
•
Ganzzahl ist eine ganze Zahl, die die Anzahl der Leerzeichen angibt.
Rückgabewert
Textzeichenfolge (ein oder mehrere Leerzeichen)
Aktion
Die Funktion Space gibt eine bestimmte Anzahl von Leerzeichen zurück.
Typische Verwendungen
Mit der Funktion Space können Sie problemlos eine bestimmte Anzahl von
Leerzeichen zu einer Textzeichenfolge hinzufügen.
Crystal Reports-Anwenderhandbuch 333
8
8
Funktionen
Zeichenfolgen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Space(2)
Rückgabewert " "
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
InStr
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
InStr (Zchnflge1, Zchnflge2)
InStr (Start, Zchnflge1, Zchnflge2)
InStr (Zchnflge1, Zchnflge2, Vergleich)
InStr (Start, Zchnflge1, Zchnflge2, Vergleich)
Argumente
•
Start ist das Zeichen in Zchnflge1, bei dem die Suche beginnen soll. Dies
ist ein mit 1 beginnender Index. (Dieses Argument ist optional.)
•
•
•
Zchnflge1 ist die zu durchsuchende Zeichenfolge.
Zchnflge2 ist die in Zchnflge1 gesuchte Zeichenfolge.
Vergleich ist ein optionaler Zahlenwert, der angibt, welcher
Zeichenfolgenvergleich verwendet werden soll. Bei 0 wird der Vergleich
ohne Berücksichtigung der Groß-/Kleinschreibung durchgeführt und bei 1
mit Berücksichtigung der Groß-/Kleinschreibung. Ohne dieses Argument
wird der Vergleich unter Berücksichtigung der Groß-/Kleinschreibung
durchgeführt.
Rückgabewert
Ganze Zahl
Aktion
Die Funktion InStr gibt die Position zurück, ab der eine Zeichenfolge zum
ersten Mal innerhalb einer anderen Zeichenfolge angetroffen wird. Diese
Position ist ein mit 1 beginnender Index der Zeichen in Zchnflge1. Wenn
Zeichenfolge2 nicht innerhalb von Zeichenfolge1 gefunden wird, gibt die
Funktion Instr 0 zurück.
334
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Das Argument Start legt die Anfangsposition für die Suche fest. Wenn das
Argument Vergleich nicht verwendet wird, erfolgt der Zeichenfolgenvergleich
unter Berücksichtigung der Groß-/Kleinschreibung.
Typische Verwendungen
Mit dieser Funktion können Sie ermitteln, ob eine Zeichenfolge eine von
Ihnen gesuchte Zeichenfolge enthält.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
InStr("abcdefg", "bcd")
Gibt 2 zurück.
InStr(3, "abcdefg", "cde")
Gibt 3 zurück.
InStr(“KarenJudith”,”karen”,1)
Gibt 1 zurück. Beachten Sie, dass der Vergleich nicht unter
Berücksichtigung der Groß-/Kleinschreibung durchgeführt wurde, da das
Argument "Vergleich" den Wert 1 hat.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Diese Funktion verfügt im Hinblick auf das Argument Start über zwei
Versionen. Bei der ersten Version wird das Argument Start verwendet,
bei der zweiten nicht. Wenn das Argument Start nicht verwendet wird,
durchsucht InStr die gesamte Zeichenfolge Zchnflge1 daraufhin, ob sie
Zchnflge2 enthält. Wird das Argument "Start" verwendet, beginnt InStr
mit der Suche bei dem Zeichen von Zchnflge2, das durch dieses
Argument angegeben ist.
InStrRev
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
InStrRev (Eingabezeichenfolge, Findzeichenfolge)
InStrRev (Eingabezeichenfolge, Findzeichenfolge, Startposition)
InStrRev (Eingabezeichenfolge, Findzeichenfolge, Startposition,
Vergleich)
Crystal Reports-Anwenderhandbuch 335
8
8
Funktionen
Zeichenfolgen
Argumente
•
•
•
„Eingabezeichenfolge“ ist die zu durchsuchende Zeichenfolge.
•
Vergleich ist ein optionaler Zahlenwert, der angibt, welche Art von
Vergleich beim Auswerten von Teilzeichenfolgen verwendet werden soll:
„Findzeichenfolge“ ist die in „Zchnflge1“ gesuchte Zeichenfolge.
„startPosition“ ist ein optionaler numerischer Ausdruck, der die
Startposition für jede Suche festlegt. Wenn diese Angabe weggelassen
wird, wird -1 verwendet, was bedeutet, dass die Suche an der Position
des letzten Zeichens beginnt.
•
•
0 berücksichtigt beim Vergleich die Groß-/Kleinschreibung.
1 ignoriert beim Vergleich die Groß-/Kleinschreibung.
Wenn diese Angabe weggelassen wird, wird beim Vergleichen zwischen
Groß- und Kleinschreibung unterschieden.
Rückgabewert
Zahlenwert, der die Position der Suchzeichenfolge in der durchsuchten
Zeichenfolge angibt. Das erste Zeichen von „Eingabezeichenfolge“ (von
vorne) ist 1.
Aktion
InStrRev gibt die Position des ersten Auftretens einer Zeichenfolge in einer
anderen Zeichenfolge aus. Die Suche wird in umgekehrter Richtung von der
angegebenen Startposition aus durchgeführt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
InStrRev ("abcdefgbchijk", "bc")
Gibt 8 zurück, wenn die Suche vom Ende der Zeichenfolge aus in
umgekehrter Richtung verläuft.
InStrRev ("abcdefgbchijk", "bc", -1)
Gibt 8 zurück, wenn die Suche vom Ende der Zeichenfolge aus in
umgekehrter Richtung verläuft.
InStrRev ("abcdefgbchijk", "bc", 2)
Gibt 0 zurück, da nichts gefunden wurde. Die Suche beginnt ab dem „b“
in „ab“ in umgekehrter Richtung.
InStrRev ("abcdefgbchijk", "bc", 3)
Gibt 2 zurück. Die Suche beginnt ab dem „c“ in „abc“ in umgekehrter
Richtung.
336
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
InStrRev ("abcdefgbchijk", "bc", 10)
Gibt 8 zurück. Die Suche beginnt ab dem h in abcdefgbch in umgekehrter
Richtung, und das erste Auftreten von bc wird an der achten Stelle ab
dem Beginn der Eingabezeichenfolge gefunden.
InStrRev ("abcdefgbchijk", "BC", -1, 1)
Gibt 8 zurück. Die Suche beginnt am Ende der Zeichenfolge in
umgekehrter Richtung, und das erste Auftreten der Suchzeichenfolge
„BC“ wird an achter Stelle ab dem Beginn der durchsuchten Zeichenfolge
gefunden, da festgelegt wurde, nicht zwischen Groß- und
Kleinschreibung zu unterscheiden.
InStrRev ("aBCdefgbchijk", "BC", -1, 0)
Gibt 2 zurück. Die Suche beginnt ab dem Ende der Zeichenfolge in
umgekehrter Richtung, und das erste Auftreten der Suchzeichenfolge
„BC“ wird an der zweiten Stelle ab dem Beginn des durchsuchten
Eingabetexts gefunden.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
StrCmp
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
StrCmp (Zchnflge1, Zchnflge2)
StrCmp (Zchnflge1, Zchnflge2, Vergleich)
Argumente
•
•
•
Zchnflge1 ist die erste zu vergleichende Textzeichenfolge.
Zchnflge2 ist die zweite zu vergleichende Textzeichenfolge.
Vergleich ist ein optionaler Zahlwert, der angibt, welche Art von
Zeichenfolgenvergleich durchgeführt werden soll:
•
•
0 berücksichtigt beim Vergleich die Groß-/Kleinschreibung.
1 ignoriert beim Vergleich die Groß-/Kleinschreibung.
Wenn diese Angabe weggelassen wird, wird beim Vergleichen zwischen
Groß- und Kleinschreibung unterschieden.
Crystal Reports-Anwenderhandbuch 337
8
8
Funktionen
Zeichenfolgen
Rückgabewert
Ganze Zahl, wobei:
•
•
•
-1 = Kleiner als
0 = Gleich
1 = Größer als
Aktion
Die Funktion StrCmp vergleicht zwei Zeichenfolgen.
Typische Verwendung
Mit dieser Funktion können Sie ermitteln, ob zwei Zeichenfolgen identisch
sind.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
StrCmp("abcd", "aa")
Rückgabewerte = 1.
StrCmp("abcd", "aa", 1)
Rückgabewerte = 1.
StrCmp ("abcd", "ac")
Gibt = -1 zurück.
StrCmp ("aa", "aa")
Gibt = 0 zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Mid
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
Mid (Zchnflge, Start)
Mid (Zchnflge, Start, Länge)
Argumente
•
338
Zchnflge ist die Textzeichenfolge, aus der ein oder mehrere Zeichen
gelesen werden.
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
•
Start ist eine ganze Zahl, die die Position des ersten zu lesenden
Zeichens angibt.
•
Länge ist eine ganze Zahl, die die Anzahl der zu lesenden Zeichen
angibt. Dieses Argument ist optional. Wenn Sie keinen Wert angeben,
wird der Rest der Zeichenfolge ab der Startposition gelesen.
Rückgabewert
Textzeichenfolge
Aktion
Die Funktion Mid gibt eine bestimmte Anzahl von Zeichen aus einer
Zeichenfolge zurück. Das zweite Argument ist die Position des Zeichens, mit
dem der zu lesende Teil der Zeichenfolge beginnt. Das dritte Argument gibt
die Länge der zu lesenden Zeichenfolge an. Wenn das dritte Argument nicht
angegeben ist, wird alles ab der Startposition bis zum Ende der Zeichenfolge
gelesen.
Typische Verwendungen
Verwenden Sie diese Funktion, um Zeichen aus der Mitte einer
Textzeichenfolge zu lesen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Mid("abcdef", 3, 2)
Gibt "cd" zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Left (Zchnflge, Länge)
Basic- und Crystal-Syntax.
Argumente
•
•
Zchnflge ist eine Textzeichenfolge.
Länge ist eine ganze Zahl, die die Anzahl der aus Zchnflge zu
extrahierenden Zeichen angibt.
Rückgabewert
String-Wert
Crystal Reports-Anwenderhandbuch 339
8
8
Funktionen
Zeichenfolgen
Aktion
Extrahiert vom Beginn der Zeichenfolge (links) an die angegebene Anzahl an
Zeichen.
Typische Verwendungen
Mit dieser Funktion können Sie vom Beginn einer Textzeichenfolge (von links)
an eine bestimmte Anzahl an Zeichen extrahieren. Sie können z. B. die
Funktion Left verwenden, um aus den Werten, die ein Feld für
Telefonnummern enthält, nur die Vorwahlen zu ermitteln.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Left("abcdefg", 4)
Gibt „abcd“ zurück.
Left({Kunde.FAX}, 4)
Gibt zu jeder Faxnummer die Vorwahl zurück, wenn die ersten vier
Zeichen des Feldes FAX die Vorwahlnummer angeben.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Right (Zchnflge, Länge)
Basic- und Crystal-Syntax.
Argumente
•
•
Zchnflge ist eine Textzeichenfolge.
Länge ist eine ganze Zahl, die die Anzahl der aus Zchnflge zu
extrahierenden Zeichen angibt.
Rückgabewert
String-Wert
Aktion
Liest die angegebene Anzahl Textzeichen vom Ende (von rechts) der
angegebenen Zeichenfolge an.
Typische Verwendungen
Verwenden Sie diese Funktion, um nur den rechten Teil einer Zeichenfolge zu
lesen. Sie können z. B. mit dieser Funktion die letzten vier Ziffern von
Sozialversicherungsnummern lesen, die in einem Feld gespeichert sind.
340
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Right("abcdefg", 3)
Gibt „efg“ zurück.
Right({table.SSNUM}, 4)
Gibt die letzten 4 Ziffern der Sozialversicherungsnummer als
Zeichenfolge zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Val (Zchnflge)
Basic- und Crystal-Syntax.
Argumente
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
Bruchzahl
Aktion
Die Funktion Val (Zchnflge) liest eine Zeichenfolge, die Zahlen enthält (z.B:
eine Adresse, eine Telefonnummer oder eine Sozialversicherungsnummer),
und wandelt diese Zeichenfolge in eine Dezimalzahl um. Die Funktion Val
beendet das Auswerten der Zeichenfolge, sobald sie in der Zeichenfolge auf
das erste Zeichen gestoßen ist, das sie nicht als Ziffer oder Leerzeichen
erkennen kann.
Typische Verwendungen
Verwenden Sie diese Funktion, um den numerischen Teil einer Zeichenfolge
zu lesen, die sowohl Zahlen als auch Text enthält. Sie können z. B. nur die
Hausnummer aus einer Adresse lesen oder nur den numerischen Teil einer
Kennung (ID), die aus Buchstaben und Zahlen besteht.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Val("44227 49 Am Talenberg")
Gibt 4422749 zurück.
Crystal Reports-Anwenderhandbuch 341
8
8
Funktionen
Zeichenfolgen
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
ChrW (x)
Basic- und Crystal-Syntax.
Argumente
•
x entspricht einer ganzen Zahl, und zwar einem beliebigen Unicode-Wert.
x muss zwischen 0 und 65535 liegen, da andernfalls ein numerischer
Überlauffehler auftritt.
Rückgabewert
Textzeichenfolge (ein Zeichen lang)
Aktion
Die Funktion ChrW (x) gibt ein Zeichen zurück, das dem Unicode-Wert
entspricht, der als x übergeben wurde.
Typische Verwendungen
Verwenden Sie diese Funktion, um das zu einem Unicode-Wert gehörende
Zeichen zu erhalten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ChrW(65)
Gibt „A“ zurück.
ChrW(332)
Gibt „Õ“ zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Siehe auch
•
342
AscW (Zchnflge)
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
AscW (Zchnflge)
Basic- und Crystal-Syntax.
Argumente
•
Zchnflge ist eine Textzeichenfolge.
Rückgabewert
Zahl
Aktion
Die Funktion AscW (Zchnflge) gibt den Unicode-Code des ersten Zeichens
der Zeichenfolge zurück.
Typische Verwendungen
Verwenden Sie diese Funktion, um den Unicode-Wert eines Zeichens zu
ermitteln. Diese Funktion ist besonders nützlich für Anwendungsentwickler,
die das Crystal Reports-Modul verwenden.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
AscW("Karen")
Gibt 75 zurück, was dem Unicode-Wert des Buchstabens „K“ entspricht.
AscW("Õ")
Gibt 213 zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Siehe auch
•
ChrW (x)
Filter
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
Filter (Eingabezeichenfolgen, Suchzeichenfolge)
Filter (Eingabezeichenfolgen, Suchzeichenfolge, einschließen)
Filter (Eingabezeichenfolgen, Suchzeichenfolge, einschließen, Vergleich)
Crystal Reports-Anwenderhandbuch 343
8
8
Funktionen
Zeichenfolgen
Argumente
•
•
•
InputStrings ist ein Array mit Zeichenfolgen, der durchsucht wird.
•
Vergleich ist ein optionaler Zahlwert, der angibt, welche Art von
Zeichenfolgenvergleich durchgeführt werden soll:
searchString ist eine Zeichenfolge, nach der gesucht wird.
Einschließen ist ein optionaler boolescher Wert, der angibt, ob
Teilzeichenfolgen zurückgegeben werden sollen, in denen die als
Suchzeichenfolge angegebene Suchzeichenfolge enthalten bzw. nicht
enthalten ist. Wenn für Einschließen der Wert True angegeben wird, gibt
Filter den Teilsatz des Arrays zurück, der die Suchzeichenfolge als
Teilzeichenfolge enthält. Wenn für Einschließen der Wert False
angegeben wird, gibt Filter den Teilsatz des Arrays zurück, der die
Suchzeichenfolge nicht als Teilzeichenfolge enthält. Wenn diese Angabe
weggelassen wird, wird der Wert True (Wahr) verwendet.
•
•
0 berücksichtigt beim Vergleich die Groß-/Kleinschreibung.
1 ignoriert beim Vergleich die Groß-/Kleinschreibung.
Wenn diese Angabe weggelassen wird, wird beim Vergleichen zwischen
Groß- und Kleinschreibung unterschieden.
Rückgabewert
Array mit String-Werten
Aktion
Filter durchsucht einen Array aus Zeichenfolgen nach einer angegebenen
Zeichenfolge und gibt die Zeichenfolgen in einem Array zurück.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Dabei wird davon ausgegangen, dass inputStrings ein String-Array ist, der
aus folgenden 5 Elementen besteht: „Ananas“, „Apfel“, „APFEL“, „Grapefruit“
und „Orange“
Filter (inputStrings, "ap")
Gibt „Grapefruit“ enthält.
Filter (inputStrings, "Ap", True)
Gibt einen Array zurück, der nur die Zeichenfolge „Apfel“ enthält.
Filter (inputStrings, "ap", True, 1)
Gibt einen Array zurück, der die Zeichenfolgen „Apfel“, „APFEL“ und
„Grapefruit“ enthält. Beim Vergleichen mit der Suchzeichenfolge wird
nicht zwischen Groß- und Kleinschreibung unterschieden.
344
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Filter (inputStrings, "ap", False)
Gibt einen Array zurück, der die Zeichenfolgen „Apfel“, „APFEL“ und
„Orange“ enthält.
Filter (inputStrings, "cd")
Gibt einen Array zurück, der nur die leere Zeichenfolge "" enthält. Der
zurückgegebene Array enthält zwar keine übereinstimmende
Zeichenfolge, aber zumindest 1 Element, da die Formelsprache keine
leeren Arrays unterstützt.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Replace
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
Replace (Eingabezeichenfolge, Findzeichenfolge, Ersatzzeichenfolge)
•
Replace (Eingabezeichenfolge, Findzeichenfolge, Ersatzzeichenfolge,
Startposition, Anzahl)
•
Replace (Eingabezeichenfolge, Findzeichenfolge, Ersatzzeichenfolge,
Startposition, Anzahl, Vergleich)
Replace (Eingabezeichenfolge, Findzeichenfolge, Ersatzzeichenfolge,
Startposition)
Argumente
•
"Eingabezeichenfolge" ist eine Zeichenfolge, in der die zu ersetzende
Teilzeichenfolge enthalten ist.
•
•
"Findzeichenfolge" ist eine Teilzeichenfolge, nach der gesucht wird.
•
"Startposition" ist eine optionale Zahl, mit der die Position innerhalb von
inputString angegeben wird, an der die Suche nach der Teilzeichenfolge
beginnen soll. Wenn diese Angabe weggelassen wird, wird 1 verwendet.
•
"Anzahl" ist ein optionaler Zahlenwert, mit dem angegeben wird, wie oft
die Teilzeichenfolge ersetzt werden soll. Wenn diese Angabe
weggelassen wird, dann wird der Standardwert -1 verwendet, was
bedeutet, dass alle Ersetzungen vorgenommen werden, die möglich
sind.
"Ersatzzeichenfolge" ist die Teilzeichenfolge, durch die die gesuchte
Teilzeichenfolge ersetzt wird.
Crystal Reports-Anwenderhandbuch 345
8
8
Funktionen
Zeichenfolgen
•
"Vergleich" ist eine optionale Zahl, die angibt, welche Art von Vergleich
beim Auswerten der Teilzeichenfolgen verwendet werden soll:
•
•
0 berücksichtigt beim Vergleich die Groß-/Kleinschreibung.
1 ignoriert beim Vergleich die Groß-/Kleinschreibung.
Wenn diese Angabe weggelassen wird, wird beim Vergleichen zwischen
Groß- und Kleinschreibung unterschieden.
Rückgabewert
String-Wert
Aktion
Replace gibt eine Zeichenfolge zurück, in der eine angegebene
Teilzeichenfolge so oft wie festgelegt durch eine andere Zeichenfolge ersetzt
wurde. Optional können Sie auch festlegen, an welcher Stelle innerhalb der
Zeichenfolge mit dem Ersetzungsvorgang begonnen werden soll, und eine
Zeichenfolge zurückgeben, die genau an dieser Stelle beginnt.
Typische Verwendung
Systematische Ersetzung einer Teilzeichenfolge durch eine andere.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax: Dabei wird davon ausgegangen, dass für inputString die
Zeichenfolge „Montag ist mein freier Tag. Können wir uns nächsten Montag
treffen?“ verwendet wird.
Replace (inputString, "Montag", "Mittwoch")
Gibt „Mittwoch ist mein freier Tag. Können wir uns nächsten Mittwoch
treffen?“ zurück.
Replace (inputString, "Montag", "Mittwoch", 29)
Gibt „Können wir uns nächsten Mittwoch treffen?“ zurück. Die Ersetzung
beginnt beim 29. Zeichen ab dem Anfang der Originalzeichenfolge
inputString. Die zurückgegebene Zeichenfolge ist genau dieser Teil der
Zeichenfolge, in dem die Ersetzungen durchgeführt wurden.
Replace (inputString, "Montag", "Mittwoch", 1, 1)
Gibt „Mittwoch ist mein freier Tag. Können wir uns nächsten Montag
treffen?“ zurück. Hier hat nur eine einzige Ersetzung stattgefunden, und
zwar ab dem 1. Zeichen des Anfangs der Originalzeichenfolge
inputString. Der Rückgabewert entspricht also dem Originalwert, in dem
jedoch genau eine Ersetzung durchgeführt wurde.
Replace (inputString, "montag", "Mittwoch", 1, -1, 0)
346
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Gibt in inputString dieselbe Zeichenfolge zurück, in der keine Ersetzung
durchgeführt worden ist, da durch einen Vergleich, bei dem auf Groß-/
Kleinschreibung geachtet wurde, keine Übereinstimmung mit „montag“
gefunden wurde.
Replace (inputString, "montag", "Mittwoch", 1, -1, 1)
In der zurückgegebenen Zeichenfolge inputString ist „Montag“ beide
Male durch „Mittwoch“ ersetzt worden. Zurückgegeben wurde: „Mittwoch
ist mein freier Tag. Können wir uns nächsten Mittwoch treffen?“ zurück.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Der Rückgabewert der Funktion Replace ist eine Zeichenfolge, in der die
festgelegten Ersetzungen von Teilzeichenfolgen vorgenommen wurden,
die an der durch startPosition angegebenen Position beginnt und die am
Ende der in inputString enthaltenen Zeichenfolge endet. Der
Rückgabewert ist also keine echte Kopie der Originalzeichenfolge.
Join
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
Join (Liste)
Join (Liste, Trennzeichen)
Argumente
•
list ist ein String-Array mit Teilzeichenfolgen, die miteinander verknüpft
werden sollen.
•
delimiter ist eine optionale Zeichenfolge, mit der die in der
zurückgegebenen Zeichenfolge enthaltenen Teilzeichenfolgen
voneinander getrennt werden. Wenn diese Angabe weggelassen wird,
wird als Trennzeichen das Leerzeichen (" ") verwendet. Wenn als
Trennzeichen eine Zeichenfolge ohne Länge ("") verwendet wird, werden
alle in der Liste enthaltenen Elemente ohne Trennzeichen verknüpft.
Rückgabewert
String-Wert
Aktion
Join gibt eine Zeichenfolge zurück, die durch Verknüpfung mehrerer in einem
Array enthaltener Teilzeichenfolgen entsteht.
Crystal Reports-Anwenderhandbuch 347
8
8
Funktionen
Zeichenfolgen
Typische Verwendung
Zum Konvertieren der in einem String-Array gespeicherten Elemente in eine
einzelne Zeichenfolge.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Bei diesen Beispielen wird davon ausgegangen, dass list ein String-Array ist,
der aus folgenden 3 Elementen besteht: „Schokolade“, „Vanille“ und
„Erdbeer“.
Join (Liste)
Gibt die Zeichenfolge „Schokolade Vanille Erdbeer“ zurück.
Join (list, "***")
Gibt die Zeichenfolge „Schokolade***Vanille***Erdbeer“ zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Siehe auch
•
Split
Split
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
Split (Eingabezeichenfolge)
Split (Eingabezeichenfolge, Trennzeichen)
Split (Eingabezeichenfolge, Trennzeichen, Anzahl)
Split (Eingabezeichenfolge, Trennzeichen, Anzahl, Vergleich)
Argumente
348
•
"Eingabezeichenfolge" ist ein Zeichenfolgeausdruck, in dem
Teilzeichenfolgen und Trennzeichen enthalten sind.
•
"Trennzeichen" ist eine optionale alphanumerische Zeichenfolge, die
dazu dient, Anfang und Ende von Teilzeichenfolgen anzuzeigen. Wenn
diese Angabe weggelassen wird, wird als Trennzeichen das Leerzeichen
(" ") verwendet. Wenn Trennzeichen eine Zeichenfolge mit der Länge
Null ist, wird ein Array mit einem einzigen Element, nämlich der
gesamten Zeichenfolge inputString, zurückgegeben.
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
•
"Anzahl" ist ein optionaler Zahlenwert für die Anzahl der Zeichenfolgen,
die zurückgegeben werden sollen. Der Wert -1 gibt an, dass alle
Teilzeichenfolgen zurückgegeben werden. Wenn diese Angabe
weggelassen wird, wird -1 verwendet.
•
"Vergleich" ist eine optionale Zahl, die angibt, welche Art von Vergleich
beim Auswerten der Trennzeichenfolge verwendet werden soll:
•
•
0 berücksichtigt beim Vergleich die Groß-/Kleinschreibung.
1 ignoriert beim Vergleich die Groß-/Kleinschreibung.
Wenn diese Angabe weggelassen wird, wird beim Vergleichen zwischen
Groß- und Kleinschreibung unterschieden.
Hinweis: Anders als in Visual Basic müssen Sie in Crystal Reports auch die
folgenden Argumente weglassen, wenn Sie ein optionales Argument
weggelassen haben. Wenn Sie z.B. keinen Wert für "Trennzeichen"
festlegen, können Sie auch die Werte compare oder count nicht bestimmen.
Rückgabewert
Array mit String-Werten
Aktion
Split löst eine Zeichenfolge, in der mehrere Teilzeichenfolgen enthalten sind,
in eine festgelegte Zahl von Teilzeichenfolgen auf und gibt einen Array
zurück, in dem diese Teilzeichenfolgen enthalten sind.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Split ("Schokolade Erdbeer Ananas")
Gibt einen Array zurück, in dem 3 Elemente enthalten sind:
„Schokolade“, „Erdbeer“ und „Ananas“.
Split ("Schokolade//Erdbeer//Ananas", "//")
Gibt einen Array zurück, in dem 3 Elemente enthalten sind:
„Schokolade“, „Erdbeer“ und „Ananas“.
Split ("Schokolade//Erdbeer//Ananas", "//", 2)
Gibt einen Array zurück, in dem 2 Elemente enthalten sind: „Schokolade“
und „Erdbeer//Ananas“. Beachten Sie, dass das letzte Element des
Arrays eine Verkettung der zweiten Teilzeichenfolge mit der restlichen
Teilzeichenfolge ist.
Split ("Schokolade und Erdbeer und Ananas", " Und ", -1, 0)
Gibt einen Array zurück, in dem 1 Element enthalten ist: „Schokolade und
Erdbeer und Ananas“. Die Trennzeichenfolge „ Und “ wird nicht
gefunden.
Crystal Reports-Anwenderhandbuch 349
8
8
Funktionen
Zeichenfolgen
Split ("Schokolade und Erdbeer und Ananas", " Und ", -1, 1)
Gibt einen Array zurück, in dem 3 Elemente enthalten sind:
„Schokolade“, „Erdbeer“ und „Ananas“. Die Trennzeichenfolge " Und "
wird unabhängig von Groß- und Kleinschreibung in Form von " und "
gefunden.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Wenn count (c) kleiner als die Gesamtanzahl aller Teilzeichenfolgen in
Eingabezeichenfolge ist, dann werden im Ergebnis-Array höchstens c
Teilzeichenfolgen zurückgegeben. Das letzte Element des Arrays ist eine
Verkettung der c-ten Teilzeichenfolge mit allen restlichen
Teilzeichenfolgen.
Siehe auch
•
Join
Roman
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
Roman (arabischerWert)
Roman (arabischerWert, Stil)
Argumente
350
•
"arabischerWert" entspricht einer Zahl, die der zu konvertierenden
arabischen Ziffer entspricht. Die gültigen Werte lauten 0 bis 3999.
•
"Stil" ist eine Zahl, die den Typ der gewünschten römischen Ziffer angibt.
Der numerische Stil für Roman reicht vom klassischen bis zum
vereinfachten Stil und wird umso präziser, je höher der Wert für Stil
ausfällt. Siehe die Beispiele unten. Da Stil ein optionales Argument ist,
kann es weggelassen werden. In diesem Fall wird davon ausgegangen,
dass der klassische Stil anstelle des Stilwertes verwendet wird.
Formular
Typ
0 oder weggelassen
Klassisch
1
Präziser. Siehe Beispiel.
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
2
Präziser. Siehe Beispiel.
3
Präziser. Siehe Beispiel.
4
Vereinfacht
Rückgabewert
Eine Zeichenfolge, die der römischen Zifferndarstellung von arabischerWert
entspricht.
Aktion
Konvertiert arabische Ziffern in römische Ziffern in Textform.
Beispiele
Sie können diese Funktion verwenden, um Seitenzahlen als römische Ziffern
in Kleinbuchstaben auszugeben. Hier ein Beispiel:
LCase (Roman (Seitenzahl))
Andere Beispiele:
Roman (499,0)
Gibt CDXCIX zurück.
Roman (499,1)
Gibt LDVLIV zurück.
Roman (499,2)
Gibt XDIX zurück.
Roman (499,3)
Gibt VDIV zurück.
Roman (499,4)
Gibt ID zurück.
Anmerkungen
Diese Funktion ist vergleichbar mit der Excel-Funktion für römische Ziffern.
URLEncode
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
•
URLEncode (inputString)
URLEncode (inputString, encodingScheme)
URLEncode (inputString, encodingScheme, neverEncode)
URLEncode (inputString, encodingScheme, neverEncode,
alwaysEncode)
Crystal Reports-Anwenderhandbuch 351
8
8
Funktionen
Zeichenfolgen
•
•
•
URLEncode (inputString, encodingScheme, characterSet)
URLEncode (inputString, encodingScheme, characterSet, neverEncode)
URLEncode (inputString, encodingScheme, characterSet, neverEncode,
alwaysEncode)
Argumente
•
•
inputString ist eine Zeichenfolge mit der URL, die codiert werden soll.
encodingScheme ist eine ganze Zahl, durch die das Schema angegeben
wird, das zur Codierung der Zeichenfolge verwendet werden soll:
•
•
Durch 0 wird die URL-Codierung gemäß RFC 1738 festgelegt.
•
Durch 2 wird die benutzerdefinierte Codierung festgelegt.
Standardmäßig bleiben nur alphanumerische Zeichen uncodiert.
Durch 1 wird die HTML-Formular-Codierung gemäß application/xwww-form-urlencoded festgelegt.
Falls encodingScheme nicht festgelegt wird, wird der Standardwert 0
(URL-Codierung) verwendet.
•
neverEncode entspricht einer Zeichenfolge, die im Codierungsprozess
nicht geändert werden soll. Dieses Argument entspricht standardmäßig
einer leeren Zeichenfolge.
Hinweis: Die Zeichenfolge, aus der dieses Argument gebildet wird, darf
nur Zeichen mit ASCII-Werten zwischen 0 und einschließlich 127
enthalten.
•
alwaysEncode ist eine Zeichenfolge, die im Codierungsprozess immer
codiert werden soll. Dieses Argument entspricht standardmäßig einer
leeren Zeichenfolge.
Hinweis:
•
•
Die Zeichenfolge, aus der dieses Argument gebildet wird, darf nur
Zeichen mit ASCII-Werten zwischen 0 und einschließlich 127
enthalten.
•
alwaysEncode hat Vorrang vor neverEncode, falls in beiden
Argumenten dieselben Zeichen verwendet werden.
characterSet ist eine ganze Zahl, durch die die gewünschte
Zeichencodierung (Codeseite) festgelegt wird:
•
•
•
Durch 0 wird UTF-8 festgelegt.
Durch 1 wird ISO-8859 festgelegt.
Durch 2 wird Shift-JIS festgelegt.
Falls characterSet nicht festgelegt wird, wird der Standardwert 0 (UTF-8Codierung) verwendet.
352
Crystal Reports-Anwenderhandbuch
Funktionen
Zeichenfolgen
Rückgabewert
Eine Zeichenfolge, die eine URL-codierte Version Ihrer Eingabezeichenfolge
enthält.
Aktion
URLEncode erfordert eine Zeichenfolge, die Leer- und Sonderzeichen
enthält, und gibt eine codierte Version dieser Zeichenfolge zurück, die als
URL für die plattformübergreifende Berichterstellung verwendet werden kann.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
URLEncode ("http://Ihre Site.com", 0)
Gibt http://Ihre%20Site.com zurück.
URLEncode ("http://Ihre Site.com", 0, " ")
Gibt http://Ihre Site.com zurück.
URLEncode ("http://Ihre Site.com", 0, " ", ":.")
Gibt http%3A//Ihre Site%2Ecom zurück.
Anmerkungen
•
•
•
•
Für die URL-Codierung gelten die folgenden Regeln:
•
Folgende Zeichen werden standardmäßig nicht codiert: A...Z a...z
0...9 $ - _ . + ! * ' ( ) , ; / ? : @ & = #
•
Folgende Zeichen werden standardmäßig codiert: alle anderen
Zeichen.
Für die HTML-Formular-Codierung gelten folgende Regeln:
•
Folgende Zeichen werden standardmäßig nicht codiert: A...Z a...z
0...9 . - * _
•
•
Sonderzeichen: " " wird als + codiert.
Folgende Zeichen werden standardmäßig codiert: alle anderen
Zeichen.
Für die benutzerdefinierte Codierung gelten folgende Regeln:
•
Folgende Zeichen werden standardmäßig nicht codiert: A...Z a...z
0...9
•
Folgende Zeichen werden standardmäßig codiert: alle anderen
Zeichen.
Die Ersetzung mehrerer Zeichen wird nicht unterstützt (Beispiel: "<" in
"&lt;").
Crystal Reports-Anwenderhandbuch 353
8
8
Funktionen
Zeichenfolgen
Siehe auch
•
URLDecode
URLDecode
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
URLDecode (inputString)
URLDecode (inputString, encodingScheme)
URLDecode (inputString, encodingScheme, characterSet)
Argumente
•
inputString ist eine Zeichenfolge mit der codierten URL, die decodiert
werden soll.
•
encodingScheme ist eine ganze Zahl, durch die das Schema angegeben
wird, das zur Decodierung der Zeichenfolge verwendet werden soll:
•
•
Durch 0 wird die URL-Codierung gemäß RFC 1738 festgelegt.
•
Durch 2 wird die benutzerdefinierte Codierung festgelegt.
Standardmäßig bleiben nur alphanumerische Zeichen uncodiert.
Durch 1 wird die HTML-Formular-Codierung gemäß application/xwww-form-urlencoded festgelegt.
Falls encodingScheme nicht festgelegt wird, wird der Standardwert 0
(URL-Codierung) verwendet.
•
characterSet ist eine ganze Zahl, durch die die gewünschte
Zeichencodierung (Codeseite) festgelegt wird:
•
•
•
Durch 0 wird UTF-8 festgelegt.
Durch 1 wird ISO-8859 festgelegt.
Durch 2 wird Shift-JIS festgelegt.
Falls characterSet nicht festgelegt wird, wird der Standardwert 0 (UTF-8Codierung) verwendet.
Rückgabewert
Eine Zeichenfolge, die eine URL-decodierte Version Ihrer
Eingabezeichenfolge enthält.
Aktion
URLDecode erfordert eine Zeichenfolge, die Codierungen für Leer- und
Sonderzeichen enthält, und gibt eine decodierte Version dieser Zeichenfolge
zurück.
354
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
URLDecode ("http://Ihre+Site.com", 0)
Gibt http://Ihre+Site.com zurück.
URLDecode ("http://Ihre+Site.com", 1)
Gibt http://Ihre Site.com zurück.
Anmerkungen
•
Damit URLEncode und URLDecode als inverse Funktionen genutzt
werden können, muss URLDecode nur wissen, welche
Zeichencodierung verwendet werden soll und wie das Zeichen + zu
behandeln ist (ob es also als allein stehendes Zeichen verwendet oder in
ein Leerzeichen umgewandelt wird). Aus diesem Grund muss der
encodingScheme-Parameter festgelegt werden.
Siehe auch
•
URLEncode
Datum/Uhrzeit
Mit Datumsfunktionen können Sie Zahlen in Datumsangaben und
Datumsangaben in Zahlen umwandeln. Die Datumsangaben können Sie zum
Anzeigen beliebig formatieren.
CurrentDate
Current Time
CurrentDateTime
Date
Time
DateTime
DateValue
TimeValue
DateTimeValue
DateSerial (Jahr, Monat, Tag)
TimeSerial (Stunden, Minuten, Sekunden)
IsTime
IsDate
Crystal Reports-Anwenderhandbuch 355
8
8
Funktionen
Datum/Uhrzeit
IsDateTime
Year (x)
Month (x)
Day (x)
WeekDay
DayOfWeek
Hour (x)
Minute (x)
Second (x)
MonthName
WeekdayName
Timer
DateAdd (Intervalltyp, nIntervalle, StartDatumUhrzeit)
DateDiff
DatePart
Konstanten für den ersten Wochen-/Jahrestag
ShiftDateTime (inputDateTime, inputTimeZone, newTimeZone)
Zusätzliche Datum-/Uhrzeitfunktionen
DateTo2000 (Datum, Zahl)
DTSTo2000 (DatumUhrzeitFolge, Zahl)
DTSToDate (DatumUhrzeitFolge)
DTSToSeconds (DatumUhrzeitFolge)
DTSToTimeString (DatumUhrzeitFolge)
CurrentDate
Basic- und Crystal-Syntax.
Rückgabewert
Date-Wert
Aktion
CurrentDate gibt das Druckdatum des Berichts zurück.
356
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Typische Verwendung
Verwenden Sie CurrentDate immer dann, wenn das Druckdatum auf Ihrem
Bericht stehen soll.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CurrentDate
Gibt "31.12.96" zurück, wenn Sie den Ausdruck des Berichts am 31.
Dezember 1996 starten.
CurrentDate
Gibt "31.12.96" zurück, wenn Sie den Ausdruck des Berichts am 31.
Dezember 1996 starten.
Anmerkungen
•
•
CurrentDate und PrintDate sind synonym.
•
CurrentDate gibt denselben Wert zurück wie die Funktion Today, die
Bestandteil der früheren Versionen vom Programm ist. Today wird nur
bereitgestellt, um die Kompatibilität zu Berichten zu gewährleisten, die
mit früheren Versionen vom Programm erstellt wurden. Für neue Berichte
sollten Sie die Funktion CurrentDate verwenden.
Das verwendete Datumsformat richtet sich nach den
Ländereinstellungen in der Windows-Systemsteuerung.
Current Time
Basic- und Crystal-Syntax.
Rückgabewert
Time-Wert
Aktion
CurrentTime gibt die Druckzeit des Berichts zurück.
Typische Verwendung
Verwenden Sie CurrentTime immer dann, wenn die Druckzeit auf Ihrem
Bericht stehen soll.
Crystal Reports-Anwenderhandbuch 357
8
8
Funktionen
Datum/Uhrzeit
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CurrentTime
Gibt 04:45:18 zurück, wenn Sie mit dem Drucken des Berichts um
04:45:18 beginnen.
CurrentTime
Gibt 17:14:33 zurück, wenn Sie mit dem Drucken des Berichts um
17:14:33 beginnen.
Anmerkungen
•
•
CurrentTime und PrintTime sind synonym.
•
Die Funktion CurrentTime gibt denselben Wert zurück wie die Funktion
Now, die Bestandteil der früheren Versionen vom Programm ist. Now
wird nur bereitgestellt, um die Kompatibilität zu Berichten zu
gewährleisten, die mit früheren Versionen vom Programm erstellt
wurden. Für neue Berichte sollten Sie die Funktion CurrentTime
verwenden.
Das verwendete Zeitformat richtet sich nach den Ländereinstellungen in
der Windows-Systemsteuerung.
CurrentDateTime
Basic- und Crystal-Syntax.
Rückgabewert
DateTime-Wert
Aktion
CurrentDateTime gibt das aktuelle Datum und die aktuelle Uhrzeit zurück.
Das Datum und die Uhrzeit werden anhand der internen Uhr Ihres Computers
ermittelt.
Typische Verwendung
Verwenden Sie CurrentDateTime immer dann, wenn das aktuelle Datum und
die aktuelle Uhrzeit auf Ihrem Bericht stehen sollen.
358
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CurrentDateTime
Gibt "04.07.98 09:45:18" zurück, wenn Sie am 4. Juli 1998 um 09:45:18
den Ausdruck des Berichts starten.
CurrentDateTime
Gibt "31.12.96 17:14:33" zurück, wenn Sie am 31. Dezember 1996 um
17:14:33 den Ausdruck des Berichts starten.
Anmerkungen
•
Die für das Datum und die Uhrzeit verwendeten Formate richten sich
nach den Ländereinstellungen in der Windows-Systemsteuerung.
•
CurrentDateTime gibt dasselbe Ergebnis zurück wie die folgende Formel:
CDateTime(CurrentDate, CurrentTime)
Date
Crystal-Syntax.
Die Funktionen CDate und DateValue sind gleichwertig mit Date. Date kann
allerdings nur in der Crystal-Syntax verwendet werden, da es in der BasicSyntax als Name für einen Typ verwendet wird.
Syntax der Argumente
•
•
•
•
Date (Zahl)
Date (Zeichenfolge)
Date (DatumUhrzeit)
Date (JJJJ, MM, TT)
Argumente
Date (Zahl)
•
Zahl ist ein Wert, der die Anzahl der Tage
ab dem 30. Dezember 1899 angibt.
•
Zahl kann positiv oder negativ sein und
wird abgeschnitten, wenn es ein
Dezimalwert ist.
Crystal Reports-Anwenderhandbuch 359
8
8
Funktionen
Datum/Uhrzeit
Date (Zeichenfolge)
•
Date (DatumUhrzeit)
•
•
Date (JJJJ, MM, TT)
Zeichenfolge enthält eine
Textzeichenfolge, die ein Datum darstellt
(Beispiel: „20. September 1999“).
datumUhrzeit ist ein DateTime-Wert.
JJJJ ist eine ganze Zahl, die ein Jahr
angibt, z. B. 1996.
•
MM ist eine ganze Zahl, die einen Monat
angibt, z. B. 12 für Dezember.
•
TT ist eine ganze Zahl, die einen
Monatstag angibt, z. B. 05.
Rückgabewert
Date-Wert
Aktion
Date (Zahl)
Gibt einen Date-Wert zurück, wenn eine
Anzahl der Tage ab dem 30. Dezember 1899
angegeben wird.
Date (Zeichenfolge)
Gibt einen Date-Wert zurück, wenn eine
Zeichenfolge angegeben wird, die ein Datum
zwischen dem 1. Januar 100 und dem 31.
Dezember 9999 darstellt.
Date (DatumUhrzeit)
Gibt den Datumsbestandteil eines
angegebenen DateTime-Wertes zurück.
Date (JJJJ, MM, TT)
Gibt einen Date-Wert zurück, wenn
numerische Argumente für Jahr, Monat und
Tag angegeben werden.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Date ("31. Dezember 1999")
Gibt den Date-Wert 31 1999 zurück. 31, 1999.
Date (50)
Gibt den Date-Wert 18. Februar 1900 zurück.
Date (#Oct. 20, 1999 12:02pm#)
Gibt den Date-Wert 20. Oktober 1999 zurück.
Date (1930, 7, 30)
Gibt den Date-Wert 30. Juli 1930 zurück.
360
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Anmerkungen
Mit der Funktion IsDate können Sie prüfen, ob ein String-Argument in einen
Date-Wert konvertiert werden kann, bevor Sie die Konvertierung durchführen.
Auf diese Weise können Sie die geeigneten Maßnahmen ergreifen, falls die
Konvertierung nicht möglich ist.
Siehe auch
•
DateSerial (Jahr, Monat, Tag)
Time
Crystal-Syntax.
Die Funktionen CTime und TimeValue sind gleichwertig zu Time. Time kann
allerdings nur in der Crystal-Syntax verwendet werden, da es in der BasicSyntax als Name für einen Typ verwendet wird.
Syntax der Argumente
•
•
•
•
Zeit (Zahl)
Time (Zeichenfolge)
Time (DatumUhrzeit)
Time (HH, MM, SS)
Argumente
Zeit (Zahl)
Time (Zeichenfolge)
•
Gibt einen Time-Wert zurück,
wenn eine Zahl im 24Stunden-Format angegeben
wird.
•
Die Zahl kann auch negativ
und eine Dezimalzahl sein.
Gibt einen Time-Wert für die
Uhrzeit zurück, wenn ein StringAusdruck angegeben wird, der
eine Uhrzeit von 0:00:00
(12:00:00 am) bis einschließlich
23:59:59 (11:59:59 pm) darstellt.
Crystal Reports-Anwenderhandbuch 361
8
8
Funktionen
Datum/Uhrzeit
Time (DatumUhrzeit)
Time (Std, Min, Sek)
DatumUhrzeit ist ein DateTimeWert.
• Std ist eine ganze Zahl, die
eine Stunde des Tages
angibt.
•
Min ist eine ganze Zahl, die
eine Minute angibt.
•
Sek ist eine ganze Zahl, die
eine Sekunde angibt.
Rückgabewert
Time-Wert
Aktion
Erstellt anhand der bereitgestellten Informationen einen Time-Wert.
Typische Verwendungen
Diese Funktion können Sie immer dann verwenden, wenn Sie mit einem
Time-Wert arbeiten müssen, der entweder aus einem DateTime-Wert stammt
oder aus den einzelnen Bestandteilen der Zeit (d. h. Stunde, Minute,
Sekunde) besteht.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Time(.2) und Time (1.2)
Beide geben 4:48:00 zurück.
Time(-.2)
Gibt 7:12:00 pm zurück
Time("3:05pm")
Gibt 15:05:00 zurück
Time(DateTime(1996, 1, 1, 12, 10, 10))
Gibt 12:10:10 zurück.
Time(10, 20, 22)
Gibt 10:20:22 zurück.
Siehe auch
•
362
TimeValue
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
DateTime
Crystal-Syntax.
Die Funktionen CDateTime und DateTimeValue sind gleichwertig zu
DateTime. DateTime kann allerdings nur in der Crystal-Syntax verwendet
werden, da es in der Basic-Syntax als Name für einen Typ verwendet wird.
Syntax der Argumente
•
•
•
•
•
•
DateTime (Datum)
DateTime (Zahl)
DateTime (Zeichenfolge)
DateTime (Datum, Uhrzeit)
DateTime (JJJJ, MM, TT)
DateTime (JJJJ, MM, TT, HH, MM, SS)
Argumente
DateTime (Datum)
Datum ist ein Date-Wert.
Datum ist ein Date-Wert.
DateTime (Datum, Uhrzeit)
•
•
DateTime (Zeichenfolge)
Zeichenfolge gibt Datum und Zeit an.
Beispiel: „September 15, 1999 10:45 am“
DateTime (Zahl)
Zahl stellt eine Anzahl an Tagen seit dem
30. Dezember 1899 dar.
Beispiel: 20 steht für 20 Tage nach dem
Dezember des Jahres 1899, also für den
19. Januar 1900
• Jahr ist eine ganze Zahl, die ein
Kalenderjahr angibt, z. B. 1996.
DateTime (Jahr, Monat, Tag)
DateTime (Jahr, Monat, Tag,
Std, Min, Sek)
x ist ein Time-Wert.
•
Monat ist eine ganze Zahl, die einen
Monat angibt, z. B. 1 für Januar.
•
Tag ist eine ganze Zahl, die einen
Monatstag angibt, z. B. 10.
•
Std ist eine ganze Zahl, die eine
Stunde des Tages angibt, z. B. 12.
•
Min ist eine ganze Zahl, die eine
Minute angibt, z. B. 59.
•
Sek ist eine ganze Zahl, die die
Sekunden angibt, z. B. 30.
Crystal Reports-Anwenderhandbuch 363
8
8
Funktionen
Datum/Uhrzeit
Rückgabewert
DateTime-Wert
Aktion
DateTime (Datum)
Gibt einen DateTime-Wert zurück, wenn
ein Date-Wert angegeben wird, und weist
dabei als Uhrzeitbestandteil des
Rückgabewertes 12:00:00 am zu.
DateTime (Datum, Uhrzeit)
Gibt einen DateTime-Wert zurück, wenn
ein Datums- und ein Time-Wert
angegeben werden.
DateTime (Zahl)
Gibt einen DateTime-Wert zurück, wenn
die Anzahl der Tage ab dem 30.
Dezember 1899 angegeben wird.
Zahl kann positiv oder negativ und ein
Dezimalwert sein.
DateTime (Zeichenfolge)
Gibt einen DateTime-Wert zurück, wenn
eine Zeichenfolge angegeben wird, die
ein Datum und eine Uhrzeit darstellt;
dabei werden für diese Zeichenfolge
verschiedene Formate unterstützt.
DateTime (JJJJ, MM, TT)
Gibt einen DateTime-Wert zurück, wenn
numerische Argumente für Jahr, Monat
und Tag angegeben werden.
Weist dem Uhrzeit-Bestandteil des
zurückgegebenen DateTime-Wertes die
Zeit 12:00:00 am zu.
DateTime (JJJJ, MM, TT,
HH, MM, SS)
Gibt einen DateTime-Wert zurück, wenn
numerische Argumente für Jahr, Monat,
Tag, Stunde, Minute und Sekunde
angegeben werden.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
DateTime ("10/4/1999 10:20am")
Gibt den DateTime-Wert 4. Oktober 1999, 10.20:00 zurück.
364
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
DateTime 12.5)
Gibt den DateTime-Wert 11. Januar 1900, 12:00:00 zurück.
DateTime (-2.5)
Gibt den DateTime-Wert 27. Dezember 1899, 12:00:00 zurück.
DateTime (CDate ("Dec. 25, 1999"))
Gibt den DateTime-Wert 25. Dezember 1999, 12:00:00 zurück.
DateTime (CDate ("November 10, 1999"), CTime("12:20am"))
Gibt den DateTime-Wert 10. November 1999, 12:20:00 zurück.
DateTime (1945, 8, 21, 0, 0, 0)
Gibt den DateTime-Wert 21. August 1945, 12:00:00 zurück.
DateTime (1945, 8, 21, 10, 0, 0)
Gibt den DateTime-Wert 21. August 1945, 10:00:00 zurück.
Anmerkungen
Mit der Funktion IsDateTime können Sie prüfen, ob ein String-Argument in
einen DateTime-Wert konvertiert werden kann, bevor Sie die Konvertierung
durchführen. Auf diese Weise können Sie die geeigneten Maßnahmen
ergreifen, falls die Konvertierung nicht möglich ist.
Siehe auch
•
DateTimeValue
DateValue
Basic- und Crystal-Syntax.
Die Funktionen CDate und Date sind gleichwertig zu DateValue. Date kann
allerdings nur in der Crystal-Syntax verwendet werden, da es in der BasicSyntax als Name für einen Typ verwendet wird.
Syntax der Argumente
•
•
•
•
DateValue (Zeichenfolge)
DateValue (Zahl)
DateValue (DatumUhrzeit)
DateValue (JJJJ, MM, TT)
Crystal Reports-Anwenderhandbuch 365
8
8
Funktionen
Datum/Uhrzeit
Argumente
DateValue (Zahl)
•
Zahl ist ein Wert, der die
Anzahl der Tage ab dem 30.
Dezember 1899 angibt.
•
Zahl kann positiv oder negativ
sein und wird abgeschnitten,
wenn es ein Dezimalwert ist.
DateValue (Zeichenfolge)
Zeichenfolge enthält eine
Textzeichenfolge, die ein Datum
darstellt (Beispiel: „20.
September 1999“).
DateValue (DatumUhrzeit)
datumUhrzeit ist ein DateTimeWert.
• YYYY (Jahr) ist eine ganze
Zahl, die ein Kalenderjahr
angibt, z. B. 1996.
DateValue (YY,MM,DD)
•
Monat ist eine ganze Zahl,
die einen Monat angibt, z. B.
12 für Dezember.
•
Tag ist eine ganze Zahl, die
einen Monatstag angibt, z. B.
05.
Rückgabewert
DateValue
Aktion
DateValue (Zeichenfolge) gibt einen Date-Wert zurück, wenn eine
Zeichenfolge angegeben wird, die ein Datum zwischen dem 1. Januar 100
und dem 30. Dezember 9999 darstellt.
DateValue (Zahl) gibt einen Date-Wert zurück, wenn eine Anzahl der Tage ab
dem 30. Dezember 1899 angegeben wird. Zahl kann positiv oder negativ
sowie abgeschnitten sein, wenn es sich um einen Dezimalwert handelt.
DateValue (DatumUhrzeit) gibt den Datum-Bestandteil eines angegebenen
DateTime-Wertes zurück.
DateValue (JJJJ, MM, TT) gibt einen Date-Wert zurück, wenn numerische
Argumente für Jahr, Monat und Tag angegeben werden.
366
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DateValue ("31. Dezember 1999")
Gibt den Date-Wert 31 1999 zurück. 31, 1999.
DateValue (50)
Gibt den Date-Wert 18. Februar 1900 zurück.
DateValue (#Oct. 20, 1999 12:02pm#)
Gibt den Date-Wert 20. Oktober 1999 zurück.
DateValue (1930, 7, 30)
Gibt den Date-Wert 30. Juli 1930 zurück.
Anmerkungen
Mit der Funktion IsDate können Sie prüfen, ob ein String-Argument in einen
Date-Wert konvertiert werden kann, bevor Sie die Konvertierung durchführen.
Auf diese Weise können Sie die geeigneten Maßnahmen ergreifen, falls die
Konvertierung nicht möglich ist.
Siehe auch
•
DateSerial (Jahr, Monat, Tag)
TimeValue
Basic- und Crystal-Syntax.
Die Funktionen CTime und Time sind gleichwertig zu TimeValue. Time kann
allerdings nur in der Crystal-Syntax verwendet werden, da es in der BasicSyntax als Name für einen Typ verwendet wird.
Syntax der Argumente
•
•
•
•
TimeValue (Zahl)
TimeValue (Zeichenfolge)
TimeValue (DatumUhrzeit)
TimeValue (HH, MM, SS)
Crystal Reports-Anwenderhandbuch 367
8
8
Funktionen
Datum/Uhrzeit
Argumente
TimeValue (Zahl)
•
Gibt einen Time-Wert zurück,
wenn eine Zahl im 24Stunden-Format angegeben
wird.
•
Die Zahl kann auch negativ
und eine Dezimalzahl sein.
TimeValue (Zeichenfolge)
Gibt einen Time-Wert für die
Uhrzeit zurück, wenn ein StringAusdruck angegeben wird, der
eine Uhrzeit von 0:00:00
(12:00:00 am) bis einschließlich
23:59:59 (11:59:59 pm) darstellt.
TimeValue (DatumUhrzeit)
DatumUhrzeit ist ein DateTimeWert.
• Std ist eine ganze Zahl, die
eine Stunde des Tages
angibt.
TimeValue (Stunde, Minute,
Sekunde)
•
Min ist eine ganze Zahl, die
eine Minute angibt.
•
Sek ist eine ganze Zahl, die
eine Sekunde angibt.
Rückgabewert
Time-Wert
Aktion
TimeValue (Zahl) gibt einen Time-Wert zurück, wenn eine Zahl im 24Stunden-Format angegeben wird. Zahl kann negativ oder positiv und ein
Dezimalwert sein.
TimeValue (Zeichenfolge) gibt einen Time-Wert für die Uhrzeit zurück, wenn
ein String-Ausdruck angegeben wird, der eine Uhrzeit von 0:00:00 (12:00:00
am) bis einschließlich 23:59:59 (11:59:59 pm) darstellt.
TimeValue (DatumUhrzeit) gibt den Uhrzeitbestandteil eines angegebenen
DateTime-Wertes zurück.
TimeValue (HH, MM, SS) gibt einen Time-Wert zurück, wenn numerische
Argumente für Stunde, Minuten und Sekunden angegeben werden.
368
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
TimeValue (.2)
TimeValue (1.2)
Beide geben denselben Wert 4:48:00 zurück.
TimeValue (-.2)
Gibt 7:12:00 pm zurück
TimeValue ("Jan. 6, 1999 2:30pm")
Gibt 2:30:00 pm zurück
TimeValue (#Feb. 24, 1999 2:40pm#)
Gibt 2:40:00 pm zurück
TimeValue (18, 30, 30)
Gibt 6:30:30 pm zurück
Anmerkungen
Mit der Funktion IsTime können Sie prüfen, ob ein String-Argument in einen
Time-Wert konvertiert werden kann, bevor Sie die Konvertierung durchführen.
Auf diese Weise können Sie die geeigneten Maßnahmen ergreifen, falls die
Konvertierung nicht möglich ist. Siehe auch TimeSerial (Stunden, Minuten,
Sekunden).
DateTimeValue
Basic- und Crystal-Syntax.
Die Funktionen CDateTime und DateTime sind gleichwertig zu
DateTimeValue. DateTime kann allerdings nur in der Crystal-Syntax
verwendet werden, da es in der Basic-Syntax als Name für einen Typ
verwendet wird.
Syntax der Argumente
•
•
•
•
•
•
DateTimeValue (Datum)
DateTimeValue (Datum, Uhrzeit)
DateTimeValue (Zahl)
DateTimeValue (Zeichenfolge)
DateTimeValue (JJJJ, MM, TT)
DateTimeValue (JJJJ, MM, TT, HH, MM, SS)
Crystal Reports-Anwenderhandbuch 369
8
8
Funktionen
Datum/Uhrzeit
Argumente
DateTimeValue (Zahl)
•
•
•
•
DateTimeValue (Zeichenfolge)
•
DateTimeValue (Jahr, Monat, Tag)
DateTimeValue (Jahr, Monat, Tag,
Stunde, Min, Sek)
•
DateTimeValue (Datum)
DateTimeValue (Datum, Uhrzeit)
Datum ist ein Date-Wert.
Datum ist ein Date-Wert.
x ist ein Time-Wert.
Zahl stellt eine Anzahl von Tagen
ab dem 30. Dezember 1899 dar,
z. B.: 20 steht für 20 Tage nach
dem Dezember des Jahres 1899,
also für den 19. Januar 1900
Zeichenfolge ist ein Datum und
eine Uhrzeit, z. B.: „15.
September 1999, 10:45 a.m.“.
Jahr ist eine ganze Zahl, die ein
Kalenderjahr angibt, z. B. 1996.
•
Monat ist eine ganze Zahl, die
einen Monat angibt, z. B. 1 für
Januar.
•
Tag ist eine ganze Zahl, die einen
Monatstag angibt, z. B. 10.
•
Std ist eine ganze Zahl, die eine
Stunde des Tages angibt, z. B.
12.
•
Min ist eine ganze Zahl, die eine
Minute angibt, z. B. 59.
•
Sek ist eine ganze Zahl, die die
Sekunden angibt, z. B. 30.
Rückgabewert
DateTime-Wert
Aktion
DateTimeValue (Datum) gibt einen DateTime-Wert zurück, wenn ein DateWert angegeben wird, und weist dabei als Uhrzeit-Bestandteil des
zurückgegebenen DateTime-Wertes 12:00:00 am zu.
DateTimeValue (Datum, Uhrzeit) gibt einen DateTime-Wert zurück, wenn
ein Date- und ein Time-Wert angegeben werden.
370
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
DateTimeValue (Zahl) gibt einen DateTime-Wert zurück, wenn die Anzahl
der Tage ab dem 30. Dezember 1899 angegeben wird. Zahl kann positiv oder
negativ und ein Dezimalwert sein.
DateTimeValue (Zeichenfolge) gibt einen DateTime-Wert zurück, wenn eine
Zeichenfolge angegeben wird, die ein Datum und eine Uhrzeit darstellt. Dabei
werden für diese Zeichenfolge verschiedene Formate unterstützt.
DateTimeValue (JJJJ, MM, TT) gibt einen DateTime-Wert zurück, wenn
numerische Argumente für Jahr, Monat und Tag angegeben werden. Weist
dem Uhrzeit-Bestandteil des zurückgegebenen DateTime-Wertes die Zeit
12:00:00 am zu.
DateTimeValue (JJJJ, MM, TT, HH, MM, SS) gibt einen DateTime-Wert
zurück, wenn numerische Argumente für Jahr, Monat, Tag, Stunde, Minute
und Sekunde angegeben werden.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DateTimeValue ("10/4/1999 10:20am")
Gibt den DateTime-Wert 4. Oktober 1999, 10:20:00 am zurück.
DateTimeValue (12.5)
Gibt den DateTime-Wert 11. Januar 1900, 12:00:00 zurück.
DateTimeValue (-2.5)
Gibt den DateTime-Wert 27. Dezember 1899, 12:00:00 pm zurück.
DateTimeValue (CDate ("Dec. 25, 1999"))
Gibt den DateTime-Wert 25. Dezember 1999, 12:00:00 zurück.
DateTimeValue (CDate ("November 10, 1999"),
CTime("12:20am"))
Gibt den DateTime-Wert 10. November 1999, 00:20:00 zurück.
DateTimeValue (1945, 8, 21, 0, 0, 0)
Gibt den DateTime-Wert 21. August 1945, 00:00:00 zurück.
DateTimeValue (1945, 8, 21, 10, 0, 0)
Gibt den DateTime-Wert 21. August 1945, 10:00:00 zurück.
Anmerkungen
Mit der Funktion IsDateTime können Sie prüfen, ob ein String-Argument in
einen DateTime-Wert konvertiert werden kann, bevor Sie die Konvertierung
durchführen. Auf diese Weise können Sie die geeigneten Maßnahmen
ergreifen, falls die Konvertierung nicht möglich ist.
Crystal Reports-Anwenderhandbuch 371
8
8
Funktionen
Datum/Uhrzeit
DateSerial (Jahr, Monat, Tag)
Basic- und Crystal-Syntax.
Argumente
•
Jahr ist eine ganze Zahl oder ein numerischer Ausdruck, zur Angabe
eines Jahres, z. B. 1996. 1996.
•
Monat ist eine ganze Zahl oder ein numerischer Ausdruck zur Angabe
eines Monats, z. B. 12 für Dezember.
•
Tag ist eine ganze Zahl oder ein numerischer Ausdruck zur Angabe eines
Monatstages, z. B. 5.
Rückgabewert
Date-Wert
Aktion
DateSerial gibt für die festgelegten Jahres-, Monats- und Tagesangaben
einen Date-Wert zurück. Diese Funktion kann auch relative Datumsangaben
verarbeiten.
Typische Verwendungen
DateSerial kann anstelle von CDate oder DateValue dazu verwendet werden,
aus Angaben für Jahr, Monat und Tag einen Date-Wert zu erstellen.
Eine nützliche Eigenschaft von DateSerial besteht darin, dass das Argument
Monat nicht von 1 bis 12 angegeben werden und das Argument Tag nicht im
zulässigen Bereich für die Zahlenangabe von Monatstagen liegen muss.
Solche Datumsangaben werden als relative Datumsangaben interpretiert und
von DateSerial in einen gültigen Date-Wert umgewandelt. Dadurch lassen
sich viele Datumsberechnungen durchführen, ohne auf Sonderfälle wie
Jahresende, Schaltjahre und die Anzahl von Tagen in den einzelnen Monaten
achten zu müssen. Einige typische Anwendungen dieser Funktion finden Sie
in den folgenden Beispielen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DateSerial (1999, 6, 15)
DateSerial (2000, 1 - 7, 15)
DateSerial (1999, 1, 166)
Sie geben alle den 15. Juni 1999 zurück. Im zweiten Beispiel wird
ermittelt, dass 7 Monate vor dem 1. Januar 2000 der 15. Juni 1999 liegt.
Im dritten Beispiel wird ermittelt, dass der 166. Tag des Jahres 1999 der
15. Juni 1999 ist.
372
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
DateSerial (1996 + 12, 2 + 13, 29 + 14)
Gibt den 12. April 2002 zurück. Dies bedeutet, dass 12 Jahre, 13 Monate
und 14 Tage nach dem 29. Februar 1996 der 12. April 2009 kommt.
Angenommen, Sie möchten den letzten Tag des Monats für das DateTimeFeld {Aufträge.Auftragsdatum} ermitteln. Beachten Sie, dass in der
Berechnung DateSerial(Year(d), Month(d) + 1, 1) den ersten Tag des Monats
nach {Aufträge.Auftragsdatum} darstellt und davon 1 Tag abgezogen wird, um
das gewünschte Ergebnis zu erhalten:
Rem Basic-Syntax
Dim d
d = {Aufträge.Auftragsdatum}
formula = DateSerial(Year(d), Month(d) + 1, 1 - 1)
//Crystal-Syntax
Local DateTimeVar d := {Aufträge.Auftragsdatum};
DateSerial(Year(d), Month(d) + 1, 1 - 1)
Es ist häufig nützlich, DateSerial mit anderen Datumsfunktionen zu
kombinieren. Wenn Sie beispielsweise das Datum des letzten Freitags
des Monats für das Feld {Aufträge.Auftragsdatum} berechnen möchten,
können Sie wie folgt vorgehen.
Bei der Berechnung wird zuerst der letzte Tag des Monats ermittelt und
danach die Anzahl der Tage bis zum letzten Freitag abgezogen. Da
manche Monate fünf Freitage haben (Beispiel: Oktober 1999) und
andere nur vier (Beispiel: November 1999), ist dieser Ansatz leichter zu
handhaben als vom ersten Tag des Monats auszugehen.
Rem Basic-Syntax
Dim d1, d2
d1 = {Aufträge.Auftragsdatum}
d2 = DateSerial(Year(d1), Month(d1) + 1, 1 - 1)
formula = d2 - (WeekDay(d2, crFriday) - 1)
//Crystal-Syntax
Local DateTimeVar d1 := {Aufträge.Auftragsdatum};
Local DateVar d2;
d2 := DateSerial(Year(d1), Month(d1) + 1, 1 - 1);
d2 - (DayOfWeek(d2, crFriday) - 1)
Gibt den Date-Wert 27.03.98 zurück, wenn {Aufträge.Auftragsdatum} der
18. März 1998 ist.
Im nächsten Beispiel wird das Datum des zweiten Dienstags des Monats drei
Monate vor {Aufträge.Auftragsdatum} zurückgegeben:
Rem Basic-Syntax
Dim d1, d2
d1 = {Aufträge.Auftragsdatum}
d2 = DateSerial(Year(d1), Month(d1) - 3, 1)
formula = d2 + (2 * 7 - (WeekDay(d2, crTuesday) - 1))
Crystal Reports-Anwenderhandbuch 373
8
8
Funktionen
Datum/Uhrzeit
//Crystal-Syntax
Local DateTimeVar d1 := {Aufträge.Auftragsdatum};
Local DateVar d2 := DateSerial(Year(d1), Month(d1) - 3, 1);
d2 + (2 * 7 - (DayOfWeek(d2, crTuesday) - 1))
Gibt den Date-Wert 9. Dezember 1997 zurück, wenn
{Aufträge.Auftragsdatum} der 18. März 1998 ist.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
TimeSerial (Stunden, Minuten, Sekunden)
Basic- und Crystal-Syntax.
Argumente
•
Stunden ist eine Zahl oder ein numerischer Ausdruck und gibt die Stunde
an.
•
Minuten ist eine Zahl oder ein numerischer Ausdruck und gibt die Anzahl
der Minuten an.
•
Sekunden ist eine Zahl oder ein numerischer Ausdruck und gibt die
Anzahl der Sekunden an.
Rückgabewert
Time-Wert
Aktion
TimeSerial gibt einen Time-Wert zurück, wenn Argumente für Stunden,
Minuten und Sekunden angegeben werden.
Typische Verwendungen
TimeSerial kann anstelle von CTime oder TimeValue dazu verwendet werden,
aus Angaben für Stunden, Minuten und Sekunden einen Time-Wert zu
erstellen.
Eine nützliche Eigenschaft von TimeSerial besteht darin, dass die Argumente
Stunden, Minuten und Sekunden nicht innerhalb normalerweise zulässiger
Bereiche liegen müssen. Dies bedeutet, dass die Stundenangabe nicht im
Bereich von 0 bis 24 und die Minuten- und Sekundenangabe nicht im Bereich
0 bis 59 liegen muss. Solche Uhrzeitangaben werden als relative
Zeitangaben interpretiert, und TimeSerial generiert daraus einen gültigen
Time-Wert. Damit lassen sich viele Berechnungen mit Zeitangaben einfach
durchführen.
374
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
TimeSerial (18, 45, 0)
TimeSerial (22 -3, 15 -30, 0)
Beide geben dieselbe Zeit, 6:45 pm, zurück. Im zweiten Beispiel wird
errechnet, dass 3 Stunden und 30 Minuten vor 10:15 pm die Zeit 6:45 pm
liegt.
TimeSerial (10 + 20, 30 + 55, 0)
Gibt 07:25 zurück. Dies bedeutet, dass 20 Stunden und 55 Minuten nach
10:30 die Zeit 7:25 (des nächsten Tages) liegt.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Visual
Basic. Es besteht jedoch dann ein Unterschied, wenn die relativen
Zeitangaben mehr als einen Tag umfassen. Zum Beispiel gibt in Crystal
Reports
TimeSerial (1, 0 - 180, 0)
gibt 10:00 pm zurück. Dies bedeutet, dass 180 Minuten vor 1:00 am die Zeit
10:00 pm liegt. Derselbe Funktionsaufruf würde jedoch in Visual Basic 2:00
am zurückgeben. Dieser Unterschied kommt dadurch zustande, dass 180
Minuten vor 1:00 am die Uhrzeit 10:00 pm des vorigen Tages beschreibt und
solche Fälle in Visual Basic anders verarbeitet werden.
IsTime
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
IsTime (Zeichenfolge)
IsTime (Zahl)
Argumente
•
Zeichenfolge ist ein String-Wert oder -Ausdruck, der darauf geprüft wird,
ob er in einen Time-Wert umgewandelt werden kann. Es werden viele
verschiedene Formate akzeptiert.
•
Zahl ist ein Zahlenwert oder ein numerischer Ausdruck, der darauf
geprüft wird, ob er in einen Time-Wert umgewandelt werden kann. Zahl
kann positiv oder negativ und ein Dezimalwert sein. Dieser Wert wird in
Einheiten von 24 Stunden interpretiert. In diesem System ist 0
Mitternacht und 0,5 entspricht 12 Uhr mittags.
Crystal Reports-Anwenderhandbuch 375
8
8
Funktionen
Datum/Uhrzeit
Rückgabewert
Boolescher Wert (Wahr oder Falsch).
Aktion
IsTime gibt True (Wahr) zurück, wenn der angegebene String- oder
Zahlenwert in eine gültige Zeit umgewandelt werden kann, und gibt
andernfalls False (Falsch) zurück.
Typische Verwendung
Wenn Sie einen String-Wert mit den Funktionen CTime oder TimeValue in
eine Zeit umwandeln möchten, sollten Sie zuerst mit der Funktion IsTime
prüfen, ob die Konvertierung erfolgreich sein wird. Ein Beispiel für diesen Typ
finden Sie im Abschnitt mit den Beispielen unter IsDate.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
IsTime ("10:30 pm")
Gibt True (Wahr) zurück.
IsTime ("September 30,1999")
Gibt True (Wahr) zurück, da das angegebene String-Argument als
12:00:00 am interpretiert wird.
IsTime (3.2)
Gibt ebenfalls True (Wahr) zurück, da das angegebene Zahlenargument
als 3,2 Einheiten von 24 Stunden, also als 4:48:00am, interpretiert wird.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die Funktion IsDate in Visual Basic,
verwendet jedoch hauptsächlich den Zeittyp von Crystal Report, in dem nur
Time-Werte enthalten sein können.
IsDate
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
376
IsDate (Zeichenfolge)
IsDate (Zahl)
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Argumente
•
Zeichenfolge ist ein String-Wert oder -Ausdruck, der darauf geprüft wird,
ob er in einen Date-Wert umgewandelt werden kann. Es werden viele
verschiedene Formate akzeptiert.
•
Zahl ist ein Zahlenwert oder ein numerischer Ausdruck, der darauf
geprüft wird, ob er in einen Date-Wert umgewandelt werden kann. Zahl
kann positiv oder negativ und ein Dezimalwert sein. Dieser Wert wird als
die Anzahl der Tage ab dem 30. Dezember 1899 interpretiert.
Rückgabewert
Boolescher Wert (Wahr oder Falsch).
Aktion
IsDate gibt True (Wahr) zurück, wenn der angegebene String- oder
Zahlenwert in ein gültiges Datum umgewandelt werden kann, und gibt
andernfalls False (Falsch) zurück. Jedes Datum zwischen dem 1. Januar 100
und dem 31. Dezember 9999 ist gültig.
Typische Verwendung
Wenn Sie einen String-Wert mit den Funktionen CDate oder DateValue in ein
Datum umwandeln möchten, sollten Sie zuerst mit der Funktion IsDate
prüfen, ob die Konvertierung erfolgreich sein wird. Ein Beispiel dazu finden
Sie unten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
IsDate ("Jan 1, 1999")
Gibt True (Wahr) zurück.
IsDate (100)
Gibt ebenfalls True zurück, da die Zahl 100 als 100 Tage nach dem 30.
Dezember 1899, also als 9. April 1900, interpretiert wird.
IsDate ("Feb 29, 1999")
Gibt False (Falsch) zurück, da 1999 kein Schaltjahr ist und daher die
Zeichenfolge nicht in ein Datum umgewandelt werden kann.
Angenommen, ein Auftragsbericht wird nach Auftragsdatum in Monate
unterteilt. Die folgende Formel gibt den Date-Wert zurück, der aus dem
String-Feld "Gruppenname" extrahiert wird. Wenn der Bericht ein Erste NBericht ist, kann das Feld „Gruppenname“ den Wert „Sonstige“ enthalten.
Dieser Wert kann nicht in ein Datum konvertiert werden. Folglich wird IsDate
dazu verwendet, einen Fehler beim Aufrufen von CDate zu vermeiden:
Rem Basic-Syntax
Crystal Reports-Anwenderhandbuch 377
8
8
Funktionen
Datum/Uhrzeit
Dim s As String
s = GroupName ({Aufträge.Auftragsdatum}, "monthly")
If IsDate(s) Then
formula = CDate(s)
Else
formula = CDate(0,0,0)
End If
//Crystal-Syntax
Local StringVar s := GroupName ({Aufträge.Auftragsdatum},
"monthly");
If IsDate(s) Then
CDate(s)
Else
CDate(0,0,0)
Gibt den Date-Wert 1. Mai 1998 zurück, wenn das Gruppenname-Feld
den Wert "Mai - 1998" enthält. Gibt das Null-Datum (ein nicht
ausgedruckter Date-Wert) zurück, falls das Gruppenname-Feld den Wert
„Sonstige“ enthält.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die gleichnamige Funktion in Visual
Basic, verwendet jedoch hauptsächlich den Datumstyp von Crystal Reports,
in dem nur Date-Werte enthalten sein können.
IsDateTime
Basic und Crystal syntax.
Syntax der Argumente
•
•
IsDateTime (Zeichenfolge)
IsDateTime (Zahl)
Argumente
•
Zeichenfolge ist ein String-Wert oder -Ausdruck, der darauf geprüft wird,
ob er in einen DateTime-Wert umgewandelt werden kann. Es werden
viele verschiedene Formate akzeptiert.
•
Zahl ist ein Zahlenwert oder ein numerischer Ausdruck, der darauf
geprüft wird, ob er in einen DateTime-Wert umgewandelt werden kann.
Zahl kann positiv oder negativ und ein Dezimalwert sein. Dieser Wert
wird als die Anzahl der Tage ab dem 30. Dezember 1899 interpretiert.
Rückgabewert
Boolescher Wert (Wahr oder Falsch).
378
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Aktion
IsDateTime gibt True (Wahr) zurück, wenn der angegebene String- oder
Zahlenwert in einen gültigen DateTime-Wert umgewandelt werden kann, und
gibt andernfalls False (Falsch) zurück. Jeder DateTime-Wert zwischen dem
1. Januar 100 und dem 31. Dezember 9999 ist gültig.
Typische Verwendung
Wenn Sie einen String-Wert mit den Funktionen CDateTime oder
DateTimeValue in einen DateTime-Wert umwandeln möchten, sollten Sie
zuerst mit der Funktion IsDateTime prüfen, ob die Konvertierung erfolgreich
sein wird. Ein Beispiel für diesen Typ finden Sie im Abschnitt mit den
Beispielen unter IsDate.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
IsDateTime ("September 30, 1999")
Gibt True (Wahr) zurück, da die angegebene Zeichenfolge „September
30, 1999“ als DateTime-Wert 30. September 1999, 12:00:00 am
interpretiert wird.
IsDateTime (-100,2)
Gibt True (Wahr) zurück, da das angegebene Zahlenargument als
DateTime-Wert 20. September 1899, 7:12:00 pm interpretiert wird.
Anmerkungen
Diese Funktion arbeitet ähnlich wie die Funktion IsDate von Visual Basic.
Year (x)
Basic- und Crystal-Syntax.
Argumente
•
x ist ein Date-Wert oder ein DateTime-Wert.
Rückgabewert
Ganze Zahl
Aktion
Year ermittelt das Jahr aus einem Datum und gibt es als Zahl zurück.
Crystal Reports-Anwenderhandbuch 379
8
8
Funktionen
Datum/Uhrzeit
Typische Verwendungen
Verwenden Sie diese Funktion immer dann, wenn Sie eine in eine Zahl
umgewandelte Jahresangabe in Berechnungen oder Vergleichen verwenden
möchten.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Year({Tabelle.LETZTE RECHNUNG IN})
Gibt 1989 zurück, wenn die letzte Rechnung 1989 gestellt wurde.
If Year({Tabelle.LETZTE AKTUALISIERUNG}) < 1993 Then
"PS: Sie verpassen viele Vorteile der neuen
verbesserten Version."
Else
""
Druckt ein PS für die Kunden, die vor 1988 das letzte Mal aktualisiert
haben, und druckt nichts für die Kunden, deren letzte Aktualisierung noch
nicht so lange zurückliegt.
Year(CDateTime(1996, 3, 3, 10, 33, 20))
Gibt 1996 zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Month (x)
Basic- und Crystal-Syntax.
Argumente
•
x ist ein Date-Wert oder ein DateTime-Wert.
Rückgabewert
Ganze Zahl
Aktion
Month extrahiert die Monatskomponente eines Datums und wandelt sie in
eine Zahl um.
380
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Typische Verwendungen
Verwenden Sie diese Funktion, wenn Sie nur die Monatskomponente eines
Datums benötigen. Wenn Sie z. B. Zahlungen kontrollieren, die in ein
bestimmtes Jahr fallen, sind Sie nur an den Monaten interessiert, an denen
die Zahlungen eingetroffen sind. Tages- und Jahresangaben wären nicht
notwendig. Sie können mit der Funktion „Month“ auch die jeweilige
Monatskomponente eines Datums ermitteln und in eine Zahl umwandeln,
wenn Sie die Nummer des Monats für eine Kalkulation benötigen (z. B.
Month({Datei.OKTZAHLUNG}) - Month({Datei.SEPZAHLUNG}).
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Month({Datei.RECHNUNG}) - Month({Datei.ZAHLUNG})
Berechnet die Anzahl der zwischen Rechnung und Zahlung liegenden
Monate.
If Month({Datei.LETZER EINKAUF}) < 6 Then
"Zweifellos werden Ihnen einige Neuerungen auffallen,
seit Sie zuletzt in unserem Geschäft waren."
Else
"Wie Sie sicherlich bemerkt haben, gibt es in unserem
Geschäft seit kurzem viele Änderungen."
Diese Formel druckt „Zweifellos werden Ihnen einige Neuerungen
auffallen, seit Sie zuletzt in unserem Geschäft waren.“ für Kunden, deren
letzter Kauf im Mai oder früher erfolgte. Für Kunden, die später als Mai
gekauft haben, druckt diese Formel „Wie Sie sicherlich bemerkt haben,
präsentiert sich Ihnen unser Geschäft seit kurzem mit einigen
Neuerungen.“
Kommentare
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Day (x)
Basic- und Crystal-Syntax.
Argumente
•
x ist ein Date-Wert oder ein DateTime-Wert.
Rückgabewert
Ganze Zahl (der Tag des Monats)
Crystal Reports-Anwenderhandbuch 381
8
8
Funktionen
Datum/Uhrzeit
Aktion
Day ermittelt den Tag aus einem Date- oder DateTime-Wert und gibt eine
ganze Zahl zurück.
Typische Verwendungen
Verwenden Sie diese Funktion, wenn Sie nur die Tageskomponente eines
Date- oder eines DateTime-Wertes benötigen. Wenn Sie z.B. Zahlungen
kontrollieren, die in einen bestimmten Monat fallen, sind Sie nur an den Tagen
interessiert, an denen die Zahlungen eingetroffen sind; Informationen über
Monat und Jahr sind überflüssig. Wenn Sie den Monatstag für eine
numerische Berechnung benötigen (Beispiel: Day({Tabelle.OKTZAHLUNG}) Day ({Tabelle.SEPZAHLUNG})), können Sie mit der Day-Funktion den
Monatstag ermitteln und in eine Zahl umwandeln.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Day({Datei.LETZTE RECHNUNG})
Gibt 10 zurück, wobei das Datum der letzten Rechnung der 10. des
Monats ist.
If Day({Datei.LETZTE ZAHLUNG}) < 15 Then
"Überfällig"
Else
""
Wenn der Tag der letzten Zahlung niedriger als 15 ist, soll „Überfällig“
gedruckt werden, anderenfalls nichts.
Day(CDateTime(1996, 3, 3, 10, 33, 20))
Gibt 3 zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
WeekDay
WeekDay und DayOfWeek sind gleichwertige Funktionen. WeekDay wird in
der Basic-Syntax bevorzugt, DayOfWeek dagegen in der Crystal-Syntax.
Syntax der Argumente
•
•
382
WeekDay (Datum)
WeekDay (Datum, ersterWochentag)
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Argumente
•
Datum ist ein Date- oder DateTime-Wert, für den die Zahl des Wochtags
zurückgegeben werden soll.
•
"ersterWochentag" ist eine optionale Zahl, die den ersten Tag der Woche
angibt. Weitere Informationen finden Sie unter DayOfWeek. Wenn diese
Angabe weggelassen wird, wird Sonntag verwendet.
Rückgabewert
Zahlenwert
Aktion
WeekDay gibt eine Zahl n zurück, die den n-ten Wochentag angibt, wenn ein
Date- oder DateTime-Wert angegeben wird.
Typische Verwendung
WeekDay wird häufig zum Durchführen von Datumsberechnungen
verwendet, bei denen bestimmte Wochentage wie beispielsweise die
Wochenenden eine besondere Rolle spielen. Anwendungsbeispiele für diese
Funktion finden Sie im Abschnitt mit den Beispielen zu DateSerial (Jahr,
Monat, Tag).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
WeekDay (#Oct. 4, 1999#)
Gibt 2 zurück, da der 4. Oktober 1999 ein Montag ist und Sonntag als
erster Tag der Woche festgelegt ist.
WeekDay (#Oct. 4, 1999#, crMonday)
Gibt 1 zurück, da der 4. Oktober 1999 ein Montag ist, und Montag als
erster Tag der Woche festgelegt ist.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
DayOfWeek
DayOfWeek und WeekDay sind gleichwertige Funktionen. WeekDay wird in
der Basic-Syntax bevorzugt, DayOfWeek dagegen in der Crystal-Syntax.
Syntax der Argumente
•
•
DayOfWeek (Datum)
DayOfWeek (Datum, ersterWochentag)
Crystal Reports-Anwenderhandbuch 383
8
8
Funktionen
Datum/Uhrzeit
Argumente
•
x ist ein Date- oder DateTime-Wert.
Rückgabewert
Ganze Zahl
Aktion
DayOfWeek ermittelt die Tageskomponente aus einem Datum, ermittelt den
Wochentag, auf den das Datum fällt, und wandelt den Wochentag in eine
Zahl um (1 bis 7). Optional kann für den ersten Tag der Woche ein
numerischer Wert festgelegt werden. Wenn Sie keinen Tag angeben, wird der
Sonntag als erster Tag der Woche festgelegt.
Typische Verwendungen
Verwenden Sie diese Funktion immer dann, wenn Sie in einem numerischen
Ausdruck die Nummer eines Wochentages benötigen.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
(DayOfWeek(Date(1990,10,1)
Gibt 2 zurück, wo der 1. Oktober 1990 ein Montag ist.
If DayOfWeek({Aufträge.AUFTRAGSDATUM}) = 3 Then
"Helga"
Else
"Claudia"
So kann z.B. ermittelt werden, ob am 8. September 1990 Helga oder
Claudia zuständig war.
If DayOfWeek({Aufträge.AUFTRAGSDATUM}) = 7 Then
"Samstag"
Else
""
Gibt Samstag zurück, wenn DayOfWeek 7 ist. Ansonsten wird eine leere
Zeichenfolge zurückgegeben.
DayOfWeek(#Sept. 24, 1999#, crMonday)
Gibt 5 zurück, wenn der 24. September 1999 ein Freitag ist und Montag
als erster Tag der Woche festgelegt ist.
Anmerkungen
Wenn Sie den jeweiligen Wochentag in der Crystal-Syntax als Wort drucken
möchten, können Sie folgende Formel verwenden:
["So", "Mo", "Di",...] [DayOfWeek(Date)]
384
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Richtet ein Array (["So",...]) ein und benutzt die Nummer des Wochentags
(So = 1, Sa = 7), um den gesuchten Tagesnamen aus dem Bereich zu
wählen.
Hour (x)
Basic- und Crystal-Syntax.
Argumente
•
x ist ein Date- oder DateTime-Wert.
Rückgabewert
Ganze Zahl
Aktion
Die Funktion Hour ermittelt aus einem Time-Wert den Stundenanteil und gibt
diesen als ganze Zahl zurück.
Typische Verwendungen
Verwenden Sie diese Funktion immer dann, wenn Sie nur den Stundenanteil
eines Time-Wertes anzeigen oder Berechnungen ausführen möchten, die auf
Stunden basieren.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Hour(CTime(10, 20, 22))
Gibt 10 zurück.
Hour(CTime(10, 00, 30)) - Hour(CTime(6, 00, 00))
Gibt 4 zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Minute (x)
Basic- und Crystal-Syntax.
Argumente
•
x ist ein Date- oder DateTime-Wert.
Crystal Reports-Anwenderhandbuch 385
8
8
Funktionen
Datum/Uhrzeit
Rückgabewert
Ganze Zahl
Aktion
Gibt nur die Minuten eines Time-Wertes zurück.
Typische Verwendungen
Verwenden Sie diese Funktion immer dann, wenn Sie Zeitberechnungen
ausführen müssen, bei denen nur die Minuten bestimmter Time-Werte zu
berücksichtigen sind.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Minute(CTime(10, 20, 22)
Gibt 20 zurück.
TimeVar Lieferzeitpunkt := CTime({Aufträge.LIEFERDATUM});
Minute(Lieferzeitpunkt)
Gibt 30 zurück, wenn {Aufträge.LIEFERDATUM} 1998/12/05 8:30:15 ist.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Second (x)
Basic- und Crystal-Syntax.
Argumente
•
x ist ein Date- oder DateTime-Wert.
Rückgabewert
Ganze Zahl
Aktion
Ermittelt den Sekundenteil eines angegebenen Time-Wertes.
Typische Verwendungen
Verwenden Sie diese Funktion immer dann, wenn Sie Zeitberechnungen
ausführen müssen, bei denen nur die Sekunden bestimmter Time-Werte zu
berücksichtigen sind.
386
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Second(CTime(10, 20, 22))
Gibt 22 zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
MonthName
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
MonthName (Monat)
MonthName (Monat, Abkürzung)
Argumente
•
"Monat" ist eine ganze Zahl (1 bis 12), die den Monat des Jahres angibt,
z. B. 1 für Januar.
•
"Abkürzung" ist ein optionaler boolescher Wert, der angibt, ob der
Monatsname abgekürzt werden soll. Wenn diese Angabe weggelassen
wird, wird der Standardwert False (Falsch) verwendet.
Rückgabewert
String-Wert
Aktion
MonthName gibt für den festgelegten Monat einen Zeichenfolgenamen
zurück.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
MonthName (4)
Gibt den Zeichenfolgenwert „April“ zurück.
MonthName (4, True)
Gibt „April“ zurück.
Crystal Reports-Anwenderhandbuch 387
8
8
Funktionen
Datum/Uhrzeit
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
WeekdayName
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
WeekdayName (Wochentag)
WeekdayName (Wochentag, Abkürzung)
WeekdayName (Wochentag, Abkürzung, ersterWochentag)
Argumente
•
Wochentag ist die numerische Angabe des Wochentags. Die
numerischen Werte der einzelnen Tage hängen davon ab, welcher
Wochentag durch das Argument firstDayOfWeek als erster Tag der
Woche festgelegt wird. Wenn firstDayOfWeek weggelassen wird, wird
Sonntag verwendet.
•
Abkürzung ist ein optionaler boolescher Wert, mit dem angegeben wird,
ob der Name des Wochentags abgekürzt werden soll. Wenn diese
Angabe weggelassen wird, wird der Standardwert False (Falsch)
verwendet.
•
"ersterWochentag" ist eine optionale Zahl, die den ersten Tag der Woche
angibt. Siehe Konstanten für Wochentage.
Rückgabewert
String-Wert
Aktion
WeekdayName gibt eine Zeichenfolge zurück, die den Namen des
angegebenen Wochentags ausgibt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
WeekdayName (3)
Gibt „Dienstag“ zurück, da als erster Tag der Woche Sonntag festgelegt
ist.
388
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
WeekdayName (3, True, crMonday)
Gibt „Mit“ zurück, da Abkürzung gewählt und als erster Tag der Woche
Montag festgelegt ist.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Timer
Basic- und Crystal-Syntax.
Rückgabewert
Zahlenwert
Aktion
Timer gibt die Anzahl der seit Mitternacht verstrichenen Sekunden zurück.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Timer
Gibt 57.720 zurück, wenn die aktuelle Uhrzeit 4:02 pm ist.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
DateAdd (Intervalltyp, nIntervalle, StartDatumUhrzeit)
Basic- und Crystal-Syntax.
Argumente
•
"Intervalltyp" ist ein Zeichenfolgeausdruck, der das Zeitintervall angibt,
das hinzugefügt werden soll. Folgende Werte können verwendet werden:
IntervalType-Wert
Beschreibung
yyyy
Jahr
q
Quartal (3-Monate)
m
Monat
y
Tag im Jahr
Crystal Reports-Anwenderhandbuch 389
8
8
Funktionen
Datum/Uhrzeit
IntervalType-Wert
Beschreibung
d
Tag
w
Wochentag
ww
Woche (7-Tage)
h
Stunde
n
Minute
s
Zweites
•
"nIntervalle" ist eine Zahl oder ein numerischer Ausdruck und gibt an, wie
viele Intervalle hinzugefügt werden sollen. Diese Zahl kann positiv
(DateTime-Werte in der Zukunft) oder negativ (DateTime-Werte in der
Vergangenheit) sein.
•
"StartDatumUhrzeit" ist der DateTime-Wert, zu dem die Intervalle
hinzugefügt werden sollen.
Rückgabewert
DateTime-Wert
Aktion
DateAdd gibt einen DateTime-Wert zurück, zu dem eine festgelegte Anzahl
von Zeitintervallen hinzugefügt wurde.
Typische Verwendung
DateAdd dient dazu, Zeitintervalle zu einem DateTime-Wert hinzuzufügen.
Die wichtigste Eigenschaft dieser Funktion liegt darin, dass der von ihr
zurückgegebene DateTime-Wert immer gültig ist. DateAdd berücksichtigt
beispielsweise Faktoren wie die Anzahl der Tage in den einzelnen Monaten
sowie Schaltjahre. Wenn Sie Tage von einem DateTime-Wert abziehen oder
hinzuaddieren möchten, können Sie dazu die Operatoren für Addition und
Subtraktion anstelle von DateAdd mit dem Parameter „d“ verwenden.
Allerdings verarbeitet DateAdd auch andere Intervalltypen wie z. B. das
Addieren von Monaten oder Stunden zu einem DateTime-Wert.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DateAdd("d", -32, #Sept 28, 1999#)
Gibt den DateTime-Wert 27.08.99 zurück.
DateAdd ("m", 1, #1/31/1996#)
Gibt den DateTime-Wert 29. Februar 1966 zurück. Beachten Sie, dass
DateAdd nicht den ungültigen Wert 31. Februar 1996 zurückgibt.
390
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
DateAdd ("q", 17, #Sept 28, 1999#)
Gibt den DateTime-Wert 28.Dezember 2003 zurück.
DateAdd ("h", -400, #Sept 28, 1999#)
Gibt den DateTime-Wert 11. September 1999, 8:00 am zurück. Mit
anderen Worten: Dies ist das Ergebnis, wenn vom 28. September 1999,
12:00 am 400 Stunden abgezogen werden.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Um Tage zu einem DateTime-Wert zu addieren, können Sie einen der
Intervalltypparameter „y“, „d“ oder „w“ verwenden. Sie haben für DateAdd
alle denselben Effekt.
•
DateAdd gibt einen DateTime-Wert zurück, keinen Date-Wert. In
bestimmten Fällen kann es erforderlich sein, diesen DateTime-Wert in
einen Date-Wert zu konvertieren (z. B. wenn Sie den von DateAdd
zurückgegebenen Wert einer Datumsvariablen zuweisen möchten).
Verwenden Sie zum Konvertieren in einen Date-Wert die Funktion
DateAdd zusammen mit der Typkonvertierungsfunktion CDate. Das
folgende Beispiel gibt den Date-Wert 6. Oktober 1997 zurück:
CDate(DateAdd("yyyy", -2, #October 6, 1999#))
DateDiff
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
DateDiff (Intervalltyp, StartDatumUhrzeit, EndeDatumUhrzeit)
DateDiff (Intervalltyp, StartDatumUhrzeit, EndeDatumUhrzeit,
ersterWochentag)
Argumente
•
"Intervalltyp" ist ein Zeichenfolgeausdruck mit dem Zeitintervall, das Sie
zum Ausrechnen der Differenz zwischen startDateTime und
endDateTime verwenden. Folgende Werte können verwendet werden:
IntervalType-Wert
Beschreibung
yyyy
Jahr
q
Quartal
m
Monat
Crystal Reports-Anwenderhandbuch 391
8
8
Funktionen
Datum/Uhrzeit
IntervalType-Wert
Beschreibung
y
Tag im Jahr
d
Tag („y“ und „d“ ermitteln beide die
Differenz in Tagen)
w
Anzahl der Wochen zwischen
startDateTime und endDateTime
ww
Anzahl der Instanzen von
firstDayOfWeek zwischen StartdatumZeit
und EnddatumZeit
h
Stunde
n
Minute
s
Zweites
•
"startDateTime" ist der erste DateTime-Wert, der zum Errechnen der
Differenz verwendet wird.
•
"endDateTime" ist der zweite DateTime-Wert, der zum Errechnen der
Differenz verwendet wird.
•
"firstDayOfWeek" ist eine optionale Konstante, mit der der erste Tag der
Woche angegeben wird. Wenn diese Angabe weggelassen wird, wird
crSunday verwendet. Siehe Konstanten für Wochentage.
Rückgabewert
Zahlenwert
Aktion
DateDiff gibt eine Anzahl von Zeitintervallen zwischen zwei Datumsangaben
zurück.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Verwenden Sie DateDiff mit dem Intervalltypparameter „d“ oder „y“, um die
Anzahl der Tage zwischen zwei Datumsangaben zu ermitteln:
DateDiff ("d", #10/7/1999#, #10/10/1999#)
Gibt 3 zurück.
Verwenden Sie DateDiff mit dem Intervalltypparameter „yyyy“, um die Anzahl
der Jahre zwischen zwei Datumsangaben zu ermitteln. Diese Verwendung
von DateDiff entspricht der Ermittlung des zeitlichen Abstands zwischen dem
Jahr von endDateTime und dem Jahr von startDateTime.
392
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
DateDiff ("yyyy", #10/7/1999#, #2/10/2005#)
Gibt 6 zurück.
DateDiff ("yyyy", #12/31/1999#, #1/1/2000#)
Gibt 1 (1 Jahr Differenz) zurück, obwohl zwischen den beiden
Datumsangaben nur 1 Tag Differenz liegt.
DateDiff ("yyyy", #1/1/1999#, #12/31/1999#)
Gibt 0 (0 Jahre Differenz) zurück, obwohl zwischen den beiden
Datumsangaben ein Abstand von 364 Tagen liegt.
Angenommen, in den oben stehenden Beispielen ist das erste Datum der
Tag, an dem Sie Investmentfonds gekauft haben, und das zweite Datum der
Tag, an dem Sie sie verkauft haben. Das Investmentfonds-Unternehmen
muss Ihnen für jedes Jahr, in dem Sie die Investmentfonds besitzen, einen
Jahresbericht zuschicken. Dadurch erhalten Sie in den oben stehenden
Beispielen 7, 2 bzw. 1 Jahresbericht.
Verwenden Sie DateDiff mit dem Parameter „q“, um die Anzahl von Quartalen
(je 3 Monate) zwischen zwei Datumsangaben zu ermitteln.
DateDiff ("q", #10/6/1999#, #5/20/2003#)
Gibt 14 zurück.
DateDiff ("q", #3/31/1999#, #4/1/1999#)
Gibt 1 zurück. Die beiden Datumsangaben befinden sich in aneinander
grenzenden Quartalen.
DateDiff ("q", #1/1/1999#, #3/31/1999#)
Gibt 0 zurück. Die beiden Datumsangaben befinden sich im selben
Quartal.
Angenommen, das Investmentfonds-Unternehmen im Beispiel mit „yyyy“ hat
Quartalsberichte verschickt. Dann hätte es in den oben stehenden Beispielen
15, 2 bzw. 1 Quartalsbericht verschicken müssen.
Verwenden Sie DateDiff mit dem Parameter „m“, um die Anzahl der Monate
zwischen zwei Datumsangaben zu ermitteln.
DateDiff ("m", #3/15/1999#, #7/13/1999#)
Gibt 4 zurück.
Verwenden Sie DateDiff mit dem Parameter „w“, um die Anzahl der Wochen
zwischen zwei Datumsangaben zu errechnen. Wenn beispielsweise
startDateTime ein Dienstag ist, zählt DateDiff die Anzahl der Dienstage
zwischen startDateTime und endDateTime, ohne den Dienstag von
startDateTime mitzurechnen. Beachten Sie jedoch, dass endDateTime
gezählt wird, wenn es ein Dienstag ist.
DateDiff ("w", #10/19/1999#, #10/25/1999#)
Gibt 0 zurück.
Crystal Reports-Anwenderhandbuch 393
8
8
Funktionen
Datum/Uhrzeit
DateDiff ("w", #10/19/1999#, #10/26/1999#)
Gibt 1 zurück.
Verwenden Sie DateDiff mit dem Parameter „ww“, um die Anzahl der ersten
Wochentage (firstDayOfWeek) zwischen zwei Datumsangaben zu errechnen.
Bei der Funktion DateDiff ist „ww“ der einzige Parameter, der das Argument
firstDayOfWeek benutzt. Von allen anderen Intervalltypparametern wird
dieses Argument ignoriert. Wenn firstDayOfWeek zum Beispiel crWednesday
ist, wird damit die Anzahl der Mittwoche zwischen startDateTime und
endDateTime gezählt. startDateTime selbst wird nicht mitgezählt, selbst wenn
es ein Mittwoch ist, während ein Mittwoch in endDateTime gezählt wird.
Beachten Sie bei den Beispielen, dass im Jahr 1999 der 6., der 13., der 20.
und der 27. Oktober auf einen Mittwoch fallen.
DateDiff ("ww", #10/5/1999#, #10/29/1999#, crWednesday)
Gibt 4 zurück.
DateDiff ("ww", #10/6/1999#, #10/29/1999#, crWednesday)
Gibt 3 zurück.
DateDiff ("ww", #10/5/1999#, #10/27/1999#, crWednesday)
Gibt 4 zurück.
Nehmen wir beispielsweise einmal an, Sie möchten die Anzahl der Tage
zwischen dem Bestelldatum und dem Versanddatum einschließlich
Sonntagen und Samstagen errechnen.
Rem Basic-Syntax
Dim d1, d2
d1 = {Aufträge.Auftragsdatum}
d2 = {Aufträge.Versanddatum}
formula = DateDiff("d", d1, d2) - _
DateDiff("ww", d1, d2, crSaturday) - _
DateDiff ("ww", d1, d2, crSunday)
//Crystal-Syntax
Local DateTimeVar d1 := {Aufträge.Auftragsdatum};
Local DateTimeVar d2 := {Aufträge.Versanddatum};
DateDiff ("d", d1, d2) DateDiff ("ww", d1, d2, crSaturday) DateDiff ("ww", d1, d2, crSunday)
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
394
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
DatePart
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
•
DatePart (Intervalltyp, EingabeDatumUhrzeit)
DatePart (Intervalltyp, EingabeDatumUhrzeit, ersterWochentag)
DatePart (Intervalltyp, EingabeDatumUhrzeit, ersterWochentag,
ersteWochedesJahres)
Argumente
•
intervalType ist ein String-Ausdruck, der angibt, welcher Bestandteil
eines Datums zurückgegeben werden soll. Folgende Werte können
verwendet werden:
IntervalType-Wert Beschreibung
yyyy
Extrahiert das Jahr
q
Quarter (Ergebniswert: 1, 2, 3 oder 4)
m
Monat (Ergebniswert: 1 bis 12)
y
Tag des Jahres (1 bis 365 bzw. in
Schaltjahren bis 366)
d
Tagbestandteil des Datums (1 bis 31)
w
Wochentag (1 bis 7, abhängig von
firstDayOfWeek)
ww
Woche im Jahr (1 bis 53, wobei durch
firstDayOfWeek und firstWeekOfYear die
Tage der ersten Kalenderwoche des
Jahres genau ermittelt werden)
h
Extrahiert den Stundenbestandteil des
angegebenen DateTime-Wertes (0 bis
23)
n
Minutenbestandteil (0 bis 59)
s
Sekundenbestandteil (0 bis 59)
•
inputDateTime ist der DateTime-Wert, aus dem ein Bestandteil extrahiert
wird.
•
firstDayOfWeek ist eine optionale Konstante, mit der der erste Tag der
Woche angegeben wird. Wenn diese Angabe weggelassen wird, wird
crSunday verwendet. Weitere Informationen finden Sie unter Konstanten
für Wochentage.
Crystal Reports-Anwenderhandbuch 395
8
8
Funktionen
Datum/Uhrzeit
•
firstWeekOfYear ist eine optionale Konstante, mit der die erste Woche
des Jahres angegeben wird. Wenn sie nicht angegeben wird, wird davon
ausgegangen, dass die erste Woche diejenige Woche ist, in der der 1.
Januar (crFirstJan1) enthalten ist. Siehe Konstanten für die erste
Jahreswoche.
Rückgabewert
Zahlenwert
Aktion
DatePart gibt eine Zahl zurück, die ein angegebener Bestandteil eines
Datums ist.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DatePart ("d", #August 15, 1999#)
Gibt 15 zurück.
DatePart ("m", #August 15, 1999#)
Gibt 8 zurück.
DatePart ("n", #10:35 am#)
Gibt 35 zurück.
DatePart ("q", #September 29, 1999#)
Gibt 3 zurück, da der 29. September im dritten Quartal des Jahres liegt.
DatePart ("ww", #September 14, 1997#)
Gibt 38 zurück, da der 14. September 1997 in der 38. Woche des Jahres
liegt.
Angenommen, ein Unternehmen möchte zur Qualitätskontrolle auf jede
Lieferung eine ID-Nummer stempeln. Diese ID-Nummer besteht aus der
Auftrags-ID, einem Gedankenstrich, der Woche des Versands dieses
Auftrags und den letzten zwei Ziffern der Jahresangabe. In folgender
Beispielformel werden diese ID-Nummern generiert:
Rem Basic-Syntax
formula = CStr({Orders.Order ID}, 0, "") & "-" & _
CStr(DatePart("ww", {Aufträge.Versanddatum}), 0)
& _
CStr({Aufträge.Versanddatum}, "yy")
//Crystal-Syntax
CStr({Aufträge.Auftrags-ID}, 0, "") & "-" &
CStr(DatePart("ww", {Aufträge.Versanddatum}), 0) &
CStr({Aufträge.Versanddatum}, "yy")
396
Crystal Reports-Anwenderhandbuch
Funktionen
Datum/Uhrzeit
Gibt die Zeichenfolge „2082-3897“ zurück, wenn
{Aufträge.Auftragskennung} gleich 2082 und {Aufträge.Versanddatum}
der 14. September 1997 ist.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Die Funktion DatePart mit dem IntervalType-Argument „yyyy“ entspricht der
Funktion Year. In ähnlicher Weise entspricht die Funktion DatePart mit dem
intervalType-Argument „m“, „d“, „w“, „h“, „n“ und „s“ den Funktionen Month,
Day, Weekday (oder DayOfWeek), Hour, Minute und Second. Andererseits
gibt es keine einfache Alternative für die Verwendung der Funktion DatePart
mit den intervalType-Argumenten „q“, „y“ und „ww“.
Wenn das Intervalltypargument „w“ oder „ww“ verwendet wird, dann wird die
Funktion DatePart durch das Argument firstDayOfWeek beeinflusst. Bei allen
anderen intervalType-Argumenten wird dieses Argument ignoriert.
Das Argument firstWeekOfYear beeinflusst die Funktion DatePart nur, wenn
das intervalType-Argument „ww“ verwendet wird. Bei allen anderen
intervalType-Argumenten wird dieses Argument ignoriert.
Konstanten für den ersten Wochen-/Jahrestag
Konstanten für Wochentage
Konstanten für die Wochentageinrahmung
Konstanten für die erste Jahreswoche
ShiftDateTime (inputDateTime, inputTimeZone,
newTimeZone)
Basic- und Crystal-Syntax.
Argumente
•
•
inputDateTime – ein DateTime-Wert, der verschoben werden soll.
•
newTimeZone – eine "TimeZoneString", die die Zeitzone darstellt, in die
inputDateTime verschoben wird.
inputTimeZone – eine "TimeZoneString", die die Zeitzone von
inputDateTime darstellt.
Rückgabewert
DateTime-Wert
Crystal Reports-Anwenderhandbuch 397
8
8
Funktionen
Datum/Uhrzeit
Aktion
Durch ShiftDateTime wird ein DateTime-Wert von einer Zeitzone in eine
andere verschoben.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ShiftDateTime (DateTime (2000, 1, 1, 12, 0, 0),
"EST,300,EDT", "PST,480,PDT")
Gibt 01.01.2000 9:00:00 zurück
In diesem Beispiel findet eine Verschiebung von EST-Sommerzeit in PSTSommerzeit, 9.00 Uhr, statt.
Anmerkungen
Zeitzonen werden durch TimeZoneString dargestellt, einer Zeichenfolge mit
den folgenden Formaten:
•
"std,offset,dst,[offset];start[/time],end[/time]"
Beispiel: "PST,480,PDT,-60;4.1.0/02:00,10.1.0/02:00"
•
"std,offset,dst,[offset]” (wenn die Zeitzone den Regeln der
amerikanischen Sommerzeit (DST) unterliegt)
Beispiel: "PST,480,PDT,-60"
•
"std,offset" (falls keine Sommerzeit verfügbar ist)
Beispiel "Südafrika,-120"
•
"" (eine leere Zeichenfolge steht für die lokale Zeitzone, die im
Betriebssystem eingestellt wurde)
Syntax
Beschreibung
std
Zeichenfolgenname der Standardzeitzone.
offset
Differenz von der Standardzeitzone in Minuten (Westen ist
positiv).
dst
Zeichenfolgenname der Sommerzeit-Zeitzone.
offset
Optionale Sommerzeitdifferenz von der Standardzeit
(standardmäßig eine Stunde mehr als die Standarddifferenz).
Datum, zu dem die Sommerzeit in Kraft tritt. Das Format lautet
M.W.T., was für Monat, Woche und Tag der Datumsangabe
steht. W=1 entspricht der ersten und W=5 der letzten Woche
des Monats.
start
398
Crystal Reports-Anwenderhandbuch
Funktionen
Datumsbereiche
Syntax
Beschreibung
time
Optionale Zeit, zu der die Sommerzeit in Kraft tritt (24-StundenFormat). Der Standardwert entspricht 02:00 Uhr (in der
jeweiligen Zeitzone).
end
Datum, zu dem die Zeitzone in die Standardzeitzone
zurückgeändert wurde.
Datumsbereiche
Datumsbereichsfunktionen sind vorgegebene Datumsbereiche, die in
Formeln verwendet werden können.
WeekToDateFromSun
MonthToDate
YearToDate
Last7Days
Last4WeeksToSun
LastFullWeek
LastFullMonth
AllDatesToToday
AllDatesToYesterday
AllDatesFromToday
AllDatesFromTomorrow
Aged0To30Days, Aged31To60Days, Aged61To90Days
Over90Days
Next30Days, Next31To60Days, Next61To90Days, Next91To365Days
Calendar1stQtr, Calendar2ndQtr, Calendar3rdQtr, Calendar4thQtr
Calendar1stHalf, Calendar2ndHalf
LastYearMTD
LastYearYTD
WeekToDateFromSun
Basic- und Crystal-Syntax.
Crystal Reports-Anwenderhandbuch 399
8
8
Funktionen
Datumsbereiche
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der alle Tage ab dem letzten
Sonntag bis einschließlich heute umfasst.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in WeekToDateFromSun Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in folgenden Bereich
fällt: letzter Sonntag bis heute. Die folgende Tabelle zeigt das erste und
letzte Datum im Datumsbereich, wenn heute der 13.04.1995 ist.
Heute = 13.04.1995
{Aufträge.AUFTRA {Aufträge.Auftragssumme}
GSDATUM}
Nicht im Bereich
(vorheriger Samstag)
04/08/95
0
Einschließlich erstes
Datum
(vorheriger Sonntag)
04/09/95
1252.24
04/11/95
1597.87
04/12/95
2546.35
04/13/95
5462.21
Einschließlich letztes
Datum
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
MonthToDate
Basic- und Crystal-Syntax.
Rückgabewert
Keine
400
Crystal Reports-Anwenderhandbuch
Funktionen
Datumsbereiche
Aktion
Gibt einen Bereich von Date-Werten an, zu dem alle Tage vom ersten Tag
des Monats bis heute gehören.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in MonthToDate Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in den folgenden
Datumsbereich fällt: vom ersten Tag des Monats bis einschließlich heute.
Die folgende Tabelle zeigt das erste und letzte Datum im Datumsbereich,
wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRA
GSDATUM}
{Aufträge.Auftragssumme}
Nicht im Bereich
03/31/98
0
Einschließlich erstes
Datum
04/01/98
1252.24
04/05/98
1597.87
04/09/98
2546.35
04/10/98
5462.21
Einschließlich letztes
Datum
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
YearToDate
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der alle Tage vom ersten Tag des
Kalenderjahres bis heute umfasst.
Crystal Reports-Anwenderhandbuch 401
8
8
Funktionen
Datumsbereiche
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in YearToDate Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in den folgenden
Datumsbereich fällt: vom ersten Tag des Kalenderjahres bis
einschließlich heute. Die folgende Tabelle zeigt das erste und letzte
Datum im Datumsbereich, wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRA {Aufträge.Auftragssumme}
GSDATUM}
Nicht im Bereich
12/31/97
0
Einschließlich erstes
Datum
01/01/98
1252.24
02/28/98
1597.87
03/15/98
2546.35
04/10/98
5462.21
Einschließlich letztes
Datum
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
Last7Days
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der folgende Tage enthält: die sechs
vor heute liegenden Tage und heute.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in Last7Days Then
{Aufträge.Auftragssumme}
402
Crystal Reports-Anwenderhandbuch
Funktionen
Datumsbereiche
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in den folgenden
Datumsbereich fällt: einer der letzten sechs Tage bis einschließlich
heute. Die folgende Tabelle zeigt das erste und letzte Datum im
Datumsbereich, wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRA
GSDATUM}
{Aufträge.Auftragssumme}
Nicht im Bereich
04/03/98
0
Einschließlich erstes
Datum
04/04/98
1252.24
04/06/98
1597.87
04/08/98
2546.35
Einschließlich letztes 04/10/98
Datum
5462.21
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
Last4WeeksToSun
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Datumsbereich an, der die vier Wochen vor dem letzten Sonntag
umfasst. Eine Woche beginnt an einem Montag und endet an einem Sonntag.
Zum Beispiel hat der September 1996 an einem Sonntag begonnen.
•
Wenn heute der 22. September (Sonntag) ist, beginnt Last4WeeksToSun
am 26. August (Montag) und endet am 22. September (heute, Sonntag).
•
Wenn heute der 28. September (ein Samstag) ist, beginnt
Last4WeeksToSun am 26. August (ein Montag) und endet am 22.
September (dem vorhergehenden Sonntag).
Crystal Reports-Anwenderhandbuch 403
8
8
Funktionen
Datumsbereiche
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in Last4WeeksToSun Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in die letzten vier
Wochen vor Sonntag fällt (ausführlichere Informationen finden Sie unter
Aktion). Die folgende Tabelle zeigt das erste und letzte Datum im
Datumsbereich, wenn heute der 10.4.95 (Montag) ist.
Heute = 10.04.1995
{Aufträge.
{Aufträge.
AUFTRAGSDATUM} AUFTRAGSSUMME}
Nicht im Bereich
03/12/95
0
Einschließlich erstes
Datum
03/13/95
1252.24
03/27/95
1597.87
04/05/95
2546.35
04/09/95
5462.21
Einschließlich letztes
Datum
(Sonntag vor dem
aktuellen Datum)
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
LastFullWeek
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der alle Tage von Sonntag bis
Samstag der vorhergehenden Woche umfasst.
404
Crystal Reports-Anwenderhandbuch
Funktionen
Datumsbereiche
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in LastFullWeek Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in den folgenden
Datumsbereich fällt: von Sonntag bis Samstag der letzten vollständigen
Woche. Die folgende Tabelle zeigt das erste und letzte Datum im
Datumsbereich, wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRA
GSDATUM}
{Aufträge.Auftragssumme}
Nicht im Bereich
03/28/98
0
Einschließlich erstes
Datum
03/29/98
1252.24
Einschließlich letztes
Datum
04/04/98
5462.21
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
LastFullMonth
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Legt einen Bereich von Date-Werten fest, der alle Tage vom ersten bis zum
letzten Tag des vorhergehenden Monats umfasst.
Crystal Reports-Anwenderhandbuch 405
8
8
Funktionen
Datumsbereiche
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in LastFullMonth Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum irgendeinem Datum
des vorhergehenden Monats entspricht. Die folgende Tabelle zeigt das
erste und letzte Datum im Datumsbereich, wenn heute der 10.04.1998
ist.
Heute = 10.04.1998
{Aufträge.AUFTRAG
SDATUM}
{Aufträge.Auftragssumme}
Nicht im Bereich
02/28/98
0
Einschließlich erstes
Datum
03/01/98
1252.24
03/15/98
1597.87
03/27/98
2546.35
Einschließlich letztes 03/31/98
Datum
5462.21
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
AllDatesToToday
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der jeden Tag bis zum heutigen Tag
umfasst.
406
Crystal Reports-Anwenderhandbuch
Funktionen
Datumsbereiche
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in AllDatesToToday Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in den folgenden
Datumsbereich fällt: vom frühesten gespeicherten Datum der
Vergangenheit bis einschließlich heute. Die folgende Tabelle zeigt das
erste und letzte Datum im Datumsbereich, wenn heute der 10.04.1998
ist.
Heute = 10.04.1998
{Aufträge.AUFTRAG {Aufträge.Auftragssumme}
SDATUM}
Einschließlich erstes
Datum
(frühestes Datum im
Feld)
12/10/97
1252.24
01/05/98
1597.87
03/05/98
2546.35
Einschließlich letztes
Datum
04/10/98
5462.21
Nicht im Bereich
04/11/98
0
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
AllDatesToYesterday
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der jeden Tag bis zum gestrigen Tag
umfasst. AllDatesToYesterday berücksichtigt alle Date-Werte vor heute, aber
nicht den heutigen Tag.
Crystal Reports-Anwenderhandbuch 407
8
8
Funktionen
Datumsbereiche
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in AllDatesToYesterday Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in den folgenden
Datumsbereich fällt: vom frühesten gespeicherten Datum der
Vergangenheit bis einschließlich gestern. Die folgende Tabelle zeigt das
erste und letzte Datum im Datumsbereich, wenn heute der 10.04.1998
ist.
Heute = 10.04.1998
{Aufträge.AUFTRAG {Aufträge.Auftragssumme}
SDATUM}
Einschließlich erstes 12/10/97
Datum
(frühestes Datum im
Feld)
1252.24
01/05/98
1597.87
03/05/98
2546.35
Einschließlich letztes 04/09/98
Datum
5462.21
Nicht im Bereich
0
04/10/98
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
AllDatesFromToday
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der ab dem heutigen Tag alle in der
Zukunft liegenden Date-Werte enthält, die in einem Feld gespeichert sein
können. AllDatesFromToday bezieht den heutigen Tag ein.
408
Crystal Reports-Anwenderhandbuch
Funktionen
Datumsbereiche
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in AllDatesFromToday Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in den folgenden
Datumsbereich fällt: von einschließlich heute bis zu jedem zukünftigen
Datum. Die folgende Tabelle zeigt das erste und letzte Datum im
Datumsbereich, wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRAGSDA {Aufträge.Auftragssumme}
TUM}
Nicht im Bereich
04/09/98
0
Einschließlich erstes
Datum
04/10/98
1252.24
07/08/98
1597.87
09/24/98
2546.35
10/08/98
5462.21
Einschließlich letztes
Datum
(spätestes Datum im
Feld)
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
AllDatesFromTomorrow
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, in den alle Tage fallen, die auf den
heutigen Tag folgen. AllDatesFromTomorrow berücksichtigt nicht den
heutigen Tag, sondern nur alle zukünftigen Date-Werte.
Crystal Reports-Anwenderhandbuch 409
8
8
Funktionen
Datumsbereiche
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in AllDatesFromTomorrow Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in den folgenden
Datumsbereich fällt: von morgen bis zu jedem zukünftigen Datum.
Die folgende Tabelle zeigt das erste und letzte Datum im
Datumsbereich, wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRAG {Aufträge.Auftragssumme}
SDATUM}
Nicht im Bereich
04/10/98
0
Einschließlich erstes
Datum
04/11/98
1252.24
07/08/98
1597.87
09/24/98
2546.35
10/08/98
5462.21
Einschließlich letztes
Datum
(spätestes Datum im
Feld)
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
Aged0To30Days, Aged31To60Days, Aged61To90Days
Basic- und Crystal-Syntax.
Rückgabewert
Keine
410
Crystal Reports-Anwenderhandbuch
Funktionen
Datumsbereiche
Aktion
Gibt einen Bereich von Date-Werten an, die in einen bestimmten, vor dem
aktuellen Datum liegenden Zeitraum fallen. Wenn das aktuelle Datum der 30/
12/98 ist, gibt die Funktion Aged0To30Days den Zeitraum vom 1/12/98 bis
zum aktuellen Datum an, Aged31To60Days gibt den Zeitraum vom 1/11/98
bis zum 30/11/98 und Aged61To90Days den Zeitraum vom 2/10/98 bis zum
31/10/98 an.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in Aged0To30Days Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Auftragsdatum in den
folgenden Zeitraum fällt: 0 bis 30 Tage vor dem heutigen Datum. Die
folgende Tabelle zeigt das erste und letzte Datum im Datumsbereich,
wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRAG
SDATUM}
{Aufträge.Auftragssumme}
Nicht im Bereich
03/10/98
0
Einschließlich erstes
Datum
03/11/98
1252.24
03/15/98
1597.87
04/05/98
2546.35
Einschließlich letztes 04/10/98
Datum
5462.21
If {Aufträge.AUFTRAGSDATUM} in Aged31To60Days Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Auftragsdatum in den
folgenden Zeitraum fällt: 31 bis 60 Tage vor dem heutigen Datum. Die
folgende Tabelle zeigt das erste und letzte Datum im Datumsbereich,
wenn heute der 10.04.1998 ist.
Crystal Reports-Anwenderhandbuch 411
8
8
Funktionen
Datumsbereiche
Heute = 10.04.1998
{Aufträge.AUFTRAG {Aufträge.Auftragssumme}
SDATUM}
Nicht im Bereich
02/08/98
0
Einschließlich erstes
Datum
02/09/98
1252.24
02/25/98
1597.87
03/05/98
2546.35
Einschließlich letztes 03/10/98
Datum
5462.21
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
Over90Days
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der alle Tage enthält, die gegenüber
dem heutigen Datum um mehr als 90 Tage zurückliegen.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in Over90Days Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Auftragsdatum in den
folgenden Zeitraum fällt: mehr als 90 Tage vor dem heutigen Datum. Die
folgende Tabelle zeigt das erste und letzte Datum im Datumsbereich,
wenn heute der 10.04.1998 ist.
412
Crystal Reports-Anwenderhandbuch
Funktionen
Datumsbereiche
Heute = 10.04.1998
{Aufträge.AUFTRAG {Aufträge.Auftragssumme}
SDATUM}
Einschließlich erstes
Datum
(frühestes Datum im
Feld)
12/10/97
1252.24
12/31/97
1597.87
01/05/98
2546.35
Einschließlich letztes
Datum
01/09/98
5462.21
Nicht im Bereich
01/10/98
0
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
Next30Days, Next31To60Days, Next61To90Days,
Next91To365Days
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der ab heute (einschließlich heute)
alle zu dem angegebenen Zeitraum gehörenden Tage umfasst.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in Next30Days Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum ab einschließlich heute
auf einen der nächsten 30 Tage fällt. Die folgende Tabelle zeigt das erste
und letzte Datum im Datumsbereich, wenn heute der 10.04.1998 ist.
Crystal Reports-Anwenderhandbuch 413
8
8
Funktionen
Datumsbereiche
Heute = 10.04.1998
{Aufträge.AUFTRAG {Aufträge.Auftragssumme}
SDATUM}
Nicht im Bereich
04/09/98
0
Einschließlich erstes
Datum
04/10/98
1252.24
04/30/98
1597.87
05/05/98
2546.35
Einschließlich letztes 05/10/98
Datum
5462.21
If {Aufträge.AUFTRAGSDATUM} in Next31To60Days Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum ab heute gesehen auf
einen der nächsten 31 bis 60 Tage fällt. Die folgende Tabelle zeigt das
erste und letzte Datum im Datumsbereich, wenn heute der 10.04.1998
ist.
Heute = 10.04.1998
{Aufträge.AUFTRAG {Aufträge.Auftragssumme}
SDATUM}
Nicht im Bereich
05/10/98
0
Einschließlich erstes
Datum
05/11/98
1252.24
05/30/98
1597.87
06/03/98
2546.35
06/09/98
5462.21
Einschließlich letztes
Datum
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
414
Crystal Reports-Anwenderhandbuch
Funktionen
Datumsbereiche
Calendar1stQtr, Calendar2ndQtr, Calendar3rdQtr,
Calendar4thQtr
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der alle Date-Werte enthält, die in
das erste, zweite, dritte oder vierte Quartal des aktuellen Kalenderjahres
fallen. Das erste Quartal des Kalenderjahres umfasst alle Tage vom 1. Januar
bis zum 31. März. Das zweite Quartal des Kalenderjahres umfasst alle Tage
vom 1. April bis zum 30. Juni. Das dritte Quartal des Kalenderjahres umfasst
alle Tage vom 1. Juli bis zum 30. September. Das vierte Quartal des
Kalenderjahres umfasst alle Tage vom 1. Oktober bis zum 31. Dezember.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in Calendar1stQtr Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in das erste Quartal
des Kalenderjahres fällt. Die folgende Tabelle zeigt das erste und letzte
Datum im Datumsbereich, wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRAG
SDATUM}
{Aufträge.Auftragssumme}
Nicht im Bereich
12/10/97
0
01/01/97
0
01/01/98
1252.24
02/05/98
1597.87
03/15/98
2546.35
Einschließlich letztes 03/31/98
Datum
5462.21
Einschließlich erstes
Datum
Crystal Reports-Anwenderhandbuch 415
8
8
Funktionen
Datumsbereiche
Calendar1stHalf, Calendar2ndHalf
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt einen Bereich von Date-Werten an, der alle Date-Werte enthält, die in
die erste bzw. in die zweite Hälfte des aktuellen Kalenderjahres fallen. Die
erste Hälfte des Kalenderjahres umfasst alle Tage vom 1. Januar bis zum 30.
Juni. Die zweite Hälfte des Kalenderjahres umfasst alle Tage vom 1. Juli bis
zum 31. Dezember.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in Calendar1stHalf Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum in die erste Hälfte des
Kalenderjahres fällt. Die folgende Tabelle zeigt das erste und letzte
Datum im Datumsbereich, wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRAG {Aufträge.Auftragssumme}
SDATUM}
Nicht im Bereich
12/10/97
0
01/01/97
0
01/01/98
1252.24
03/05/98
1597.87
05/15/98
2546.35
06/30/98
5462.21
Einschließlich erstes
Datum
Einschließlich letztes
Datum
LastYearMTD
Basic- und Crystal-Syntax.
Rückgabewert
Keine
416
Crystal Reports-Anwenderhandbuch
Funktionen
Datumsbereiche
Aktion
Gibt einen Bereich von Date-Werten an, zu dem folgende im vorhergehenden
Jahr liegende Tage gehören: die Tage des aktuellen Monats bis einschließlich
des Tages, der das gleiche Datum hat wie heute.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in LastYearMTD Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum einen der folgenden
Tage angibt: ein beliebiger Tag im selben Monat des letzten Jahres wie
der aktuelle Monat mit einem Datum, das kleiner gleich dem aktuellen
Datum ist. Die folgende Tabelle zeigt das erste und letzte Datum im
Datumsbereich, wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRAG {Aufträge.Auftragssumme}
SDATUM}
Nicht im Bereich
03/31/97
0
Einschließlich erstes
Datum
04/01/97
1252.24
04/05/97
1597.87
04/08/97
2546.35
Einschließlich letztes 04/10/97
Datum
5462.21
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
LastYearYTD
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Crystal Reports-Anwenderhandbuch 417
8
8
Funktionen
Arrays
Aktion
Gibt einen Bereich von Date-Werten an, zu dem folgende im vorhergehenden
Jahr liegende Tage gehören: alle Tage bis einschließlich des Tages, der das
gleiche Datum hat wie heute.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If {Aufträge.AUFTRAGSDATUM} in LastYearYTD Then
{Aufträge.Auftragssumme}
Else
0
Gibt die Auftragssumme zurück, wenn das Datum ein beliebiger Tag bis
zu dem Datum des letzten Jahres ist, das kleiner gleich dem aktuellen
Datum ist. Die folgende Tabelle zeigt das erste und letzte Datum im
Datumsbereich, wenn heute der 10.04.1998 ist.
Heute = 10.04.1998
{Aufträge.AUFTRAG {Aufträge.Auftragssumme}
SDATUM}
Nicht im Bereich
12/31/96
0
Einschließlich erstes
Datum
01/01/97
1252.24
02/16/97
1597.87
03/24/97
2546.35
04/10/97
5462.21
Einschließlich letztes
Datum
Hinweis: Wenn Sie den Datumsbereich auf einem anderen als dem heutigen
Datum basieren lassen möchten, müssen Sie das Datum entweder in der
Windows-Systemsteuerung über die Datum/Uhrzeit-Option oder das
Druckdatum des Berichts mit dem Befehl „Druckdatum/-zeit festlegen“ im
Menü „Bericht“ ändern.
Arrays
Array (x,…)
MakeArray (x, ...)
UBound (Array)
Array-Gruppenergebnisfunktionen
418
Crystal Reports-Anwenderhandbuch
Funktionen
Arrays
Array (x,…)
Basic-Syntax.
Array und MakeArray (x, ...) sind gleichwertige Funktionen. Array kann
allerdings nicht in der Crystal-Syntax verwendet werden, da es in dieser
Syntax ein Schlüsselwort zum Deklarieren von Array-Variablen ist.
Argumente
•
Die angegebenen Argumente sind Array-Elemente, mit denen der Array
initialisiert wird. Die Anzahl von Array-Elementen kann eine beliebige
Zahl zwischen 1 und 1000 sein. Alle Argumente müssen desselben Typs
sein. Im Gegensatz zu Visual Basic ist eine Anzahl von 0 Elementen hier
nicht möglich.
Rückgabewert
Array mit Werten
Aktion
Die Funktion Array erstellt einen Array, initialisiert ihn mit den angegebenen
Array-Elementen und gibt ihn dann zurück.
Typische Verwendung
Erstellen und Initialisieren einer Array-Variable in der Basic-Syntax.
In der Crystal-Syntax können Sie für Arrays stattdessen die Schreibweise mit
den eckigen Klammern verwenden.
Beispiel
Das folgende Beispiel gilt für die Basic-Syntax:
Im folgenden Beispiel wird ein Array für die Tage einer Woche eingerichtet,
angefangen mit dem Montag:
Dim week, firstDay, lastDay
Woche = Array(„Montag“, „Dienstag“, „Mittwoch“,
„Donnerstag“, „Freitag“, _
„Samstag“, „Sonntag“)
Rem firstDay enthält "Montag"
firstDay = week(1)
Rem lastDay enthält "Sonntag"
lastDay = week(7)
formula = firstDay
Gibt „Montag“ zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Crystal Reports-Anwenderhandbuch 419
8
8
Funktionen
Arrays
MakeArray (x, ...)
Basic- und Crystal-Syntax.
Array (x,…) und MakeArray sind gleichwertige Funktionen. Array kann
allerdings nicht in der Crystal-Syntax verwendet werden, da es in dieser
Syntax ein Schlüsselwort zum Deklarieren von Array-Variablen ist.
Argumente
•
Die angegebenen Argumente sind Array-Elemente, mit denen der Array
initialisiert wird. Die Anzahl von Array-Elementen kann eine beliebige
Zahl zwischen 1 und 1000 sein. Alle Argumente müssen desselben Typs
sein.
Rückgabewert
Array mit Werten
Aktion
MakeArray erstellt einen Array, initialisiert ihn mit den angegebenen ArrayElementen und gibt ihn dann zurück.
Typische Verwendung
Erstellen und Initialisieren einer Array-Variable (vor allem in der BasicSyntax).
In der Crystal-Syntax können Sie für Arrays stattdessen die Schreibweise mit
den eckigen Klammern verwenden.
Beispiel
Das folgende Beispiel gilt für die Crystal-Syntax:
Local NumberVar Array x := MakeArray (1, 10, 100, 1000);
Erstellt und initialisiert einen Array x mit fünf Zahlenelementen: 1, 1000,
10, 100, 10.
UBound (Array)
Basic- und Crystal-Syntax.
Argument
Array ist ein Array-Wert, ein Array-Ausdruck oder eine Array-Variable.
Rückgabewert
Zahlenwert
420
Crystal Reports-Anwenderhandbuch
Funktionen
Arrays
Aktion
UBound gibt die größte Indexzahl des angegebenen Arrays zurück.
Typische Verwendung
Diese Funktion wird im Allgemeinen dazu verwendet, die Größe eines Arrays
zu ermitteln, bevor eine Schleifenstruktur benutzt wird, um die Elemente des
Arrays systematisch zu verarbeiten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Rem Basic-Syntax
Dim einfacherArray(10) As Number
formula = UBound(einfacherArray)
//Crystal-Syntax
Local NumberVar Array einfacherArray;
Redim einfacherArray[10];
UBound(einfacherArray)
Gibt 10 zurück.
Rem Basic-Syntax
Dim DatumArray () As Date
DatumArray = Array (CDate(#12/25/1998#), CDate(#12/24/
1999#))
formula = UBound(DatumArray)
//Crystal-Syntax
Local DateVar Array DatumArray;
DatumArray := [CDate(#12/25/1998#), CDate(#12/24/1999#)];
UBound (DatumArray)
Gibt 2 zurück.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Hinweis: Im Gegensatz zu Visual Basic werden in Crystal Reports nur
eindimensionale Arrays unterstützt. Außerdem beginnen ArrayTeilzeichenfolgen in Crystal Reports bei 1 statt bei 0, der
Standardeinstellung in Visual Basic.
•
UBound gibt bei nicht initialisierten Array-Variablen eine 1 zurück, gibt
jedoch eine Fehlermeldung aus, wenn versucht wird, eine nichtinitialisierte Array-Variable zu verarbeiten. Dies liegt daran, dass Crystal
Reports zurzeit keine Arrays mit Null-Elementen unterstützt. Um dieses
Problem zu vermeiden, sollten Sie Ihre Array-Variablen stets
initialisieren.
Crystal Reports-Anwenderhandbuch 421
8
8
Funktionen
Bereiche
Initialisieren Sie beispielsweise globale Array-Variablen in einer Formel,
die im Kopfbereich des Berichts positioniert wird, und lokale ArrayVariablen innerhalb der Formel selbst.
Array-Gruppenergebnisfunktionen
Die folgenden Funktionen enthalten eine Überladung für ein Array:
•
•
•
•
•
•
•
•
•
•
Average
Count
DistinctCount
Maximum
Minimum
PopulationStdDev
PopulationVariance
StdDev
Sum
Variance
Bereiche
Mit Hilfe dieser Funktionen können Sie ermitteln, mit welcher Bereichsart Sie
arbeiten. Alle Funktionen akzeptieren Einzelbereichs- oder
Bereichsarrayargumente und geben ein boolesches Ergebnis zurück. So gibt
HasLowerBound beispielsweise True zurück, wenn der verwendete Bereich
über eine Untergrenze verfügt, oder False, wenn der Bereich keine
Untergrenze hat.
HasLowerBound (x)
HasUpperBound (x)
IncludesLowerBound (x)
IncludesUpperBound (x)
HasLowerBound (x)
Diese Funktion kann sowohl in Formeln von Basic- und Crystal-Syntax als
auch in benutzerdefinierten Funktionen verwendet werden.
Argumente
•
422
x kann ein Einzelbereich oder ein Bereichsarray sein.
Crystal Reports-Anwenderhandbuch
Funktionen
Bereiche
Rückgabewert
Boolescher Wert
Aktion
HasLowerBound gibt True (Wahr) zurück, wenn der Bereich nicht die Form
„Is<a“ oder „Is<=a“ hat. HasLowerBound gibt für jeden Array True (Wahr)
zurück, wenn HasLowerBound für jedes Element im Array mit True (Wahr)
ausgewertet wird.
Typische Verwendungen
Sollte verwendet werden, um festzustellen, ob ein Datenbereich oder ein
Bereichsarray über eine untere Grenze verfügt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
HasLowerBound (Is>5)
Gibt True (Wahr) zurück.
HasLowerBound (Is<=8)
Gibt False zurück.
Ein Beispiel zur Vorgehensweise, wenn Sie die Bereichsart nicht im Voraus
kennen, finden Sie unter den Ausführungen zu den benutzerdefinierten
Funktionen cdFormatNumberRange, cdFormatDateRange und
cdFormatStringRange. Sie finden diese Funktionen im BusinessObjects
Enterprise Repository.
HasUpperBound (x)
Diese Funktion kann sowohl in Formeln von Basic- und Crystal-Syntax als
auch in benutzerdefinierten Funktionen verwendet werden.
Argumente
•
x kann ein Einzelbereich oder ein Bereichsarray sein.
Rückgabewert
Boolescher Wert
Aktion
Gibt True (Wahr) zurück, wenn der Bereich nicht die Form „Is>a“ oder „Is>=a“
aufweist. HasUpperBound gibt für jeden Array True (Wahr) zurück, wenn
HasUpperBound für jedes Element im Array mit True (Wahr) ausgewertet
wird.
Crystal Reports-Anwenderhandbuch 423
8
8
Funktionen
Bereiche
Typische Verwendungen
Sollte verwendet werden, um festzustellen, ob ein Datenbereich oder ein
Bereichsarray über eine obere Grenze verfügt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
HasUpperBound (Is<5)
Gibt True (Wahr) zurück.
HasUpperBound (Is>=7)
Gibt False zurück.
Ein Beispiel zur Vorgehensweise, wenn Sie die Bereichsart nicht im Voraus
kennen, finden Sie unter den Ausführungen zu den benutzerdefinierten
Funktionen cdFormatNumberRange, cdFormatDateRange und
cdFormatStringRange. Sie finden diese Funktionen im BusinessObjects
Enterprise Repository.
IncludesLowerBound (x)
Diese Funktion kann sowohl in Formeln von Basic- und Crystal-Syntax als
auch in benutzerdefinierten Funktionen verwendet werden.
Argumente
•
x kann ein Einzelbereich oder ein Bereichsarray sein.
Rückgabewert
Boolescher Wert
Aktion
Gibt True (Wahr) für Bereiche in der Form „a To b“, „a To_ b“ und „Is>=b“
zurück. IncludesLowerBound gibt für jeden Array True (Wahr) zurück, sofern
der Bereich das unterste Element (IncludesLowerBound) einschließt.
Typische Verwendungen
Sollte verwendet werden, um festzustellen, ob ein Datenbereich oder ein
Bereichsarray den unteren Grenzwert einschließt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
IncludesLowerBound (2 To_ 2)
Gibt True (Wahr) zurück.
424
Crystal Reports-Anwenderhandbuch
Funktionen
Bereiche
IncludesLowerBound (Is<10)
Gibt False zurück.
Ein Beispiel zur Vorgehensweise, wenn Sie die Bereichsart nicht im Voraus
kennen, finden Sie unter den Ausführungen zu den benutzerdefinierten
Funktionen cdFormatNumberRange, cdFormatDateRange und
cdFormatStringRange. Sie finden diese Funktionen im BusinessObjects
Enterprise Repository.
IncludesUpperBound (x)
Diese Funktion kann sowohl in Formeln von Basic- und Crystal-Syntax als
auch in benutzerdefinierten Funktionen verwendet werden.
Argumente
•
x kann ein Einzelbereich oder ein Bereichsarray sein.
Rückgabewert
Boolescher Wert
Aktion
Gibt True (Wahr) für Bereiche in der Form „a To b“, „a _To b“ und „Is<=a“
zurück. IncludesUpperBound gibt für jeden Array True (Wahr) zurück, sofern
der Bereich das oberste Element (IncludesUpperBound) einschließt.
Typische Verwendungen
Sollte verwendet werden, um festzustellen, ob ein Datenbereich oder ein
Bereichsarray den oberen Grenzwert einschließt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
IncludesUpperBound (2 _To 3)
Gibt True (Wahr) zurück.
IncludesUpperBound (Is>=9)
Gibt False zurück.
Ein Beispiel zur Vorgehensweise, wenn Sie die Bereichsart nicht im Voraus
kennen, finden Sie unter den Ausführungen zu den benutzerdefinierten
Funktionen cdFormatNumberRange, cdFormatDateRange und
cdFormatStringRange. Sie finden diese Funktionen im BusinessObjects
Enterprise Repository.
Crystal Reports-Anwenderhandbuch 425
8
8
Funktionen
Typkonvertierung
Typkonvertierung
Mit diesen Funktionen können Sie Daten in andere Datentypen konvertieren.
CBool (Zahl oder Währung)
CCur
CDbl
CStr
CDate
CTime
CDateTime
CBool (Zahl oder Währung)
Basic- und Crystal-Syntax.
Argument
Ein einzelnes Argument, das entweder ein Zahlenwert oder -ausdruck oder
ein Currency-Wert oder -ausdruck sein kann.
Rückgabewert
Boolescher Wert
Aktion
CBool gibt True (Wahr) zurück, wenn das Argument positiv oder negativ, aber
nicht 0 ist, und gibt False (Falsch) zurück, wenn es 0 ist.
Beispiel
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CBool({Artikel.NETTOUMSATZ})
Gibt True (Wahr) zurück, wenn der Nettoumsatz zu- oder abgenommen
hat, und gibt False (Falsch) zurück, wenn der Nettoumsatz 0 ist.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
426
Crystal Reports-Anwenderhandbuch
Funktionen
Typkonvertierung
CCur
Basic- und Crystal-Syntax.
Syntax der Argumente
•
•
CCur (Zahl oder Währung)
CCur (Zeichenfolge)
Argumente
CCur (Zahl oder Währung)
Zahl bzw. Währung enthält einen
Zahlenwert oder einen
numerischen Ausdruck bzw.
einen Currency-Wert oder ausdruck.
CCur (Zeichenfolge)
Zeichenfolge ist ein String-Wert
oder ein String-Ausdruck.
Rückgabewert
Currency-Wert
Aktion
CCur gibt einen Currency-Wert zurück, der durch Konvertieren des
angegebenen Number-, Currency- oder String-Arguments in einen CurrencyWert erstellt wird. Wenn die Konvertierung nicht möglich ist, wird eine
Fehlermeldung ausgegeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CCur (200.20)
In der Crystal-Syntax entspricht dies dem Ausschreiben von 200,20 €. In
der Basic-Syntax stellt CCur (200,20) die Möglichkeit dar, einen
Currency-Wert von 200,20 direkt zu erstellen.
CCur ("$200.20")
Gibt den Currency-Wert CCur (200.20) zurück, wenn der String-Wert
„$200.20“ angegeben wird.
CCur ("zweihundert
")
Verursacht einen Fehler. Mit der Funktion CCur kann die Zeichenfolge
„zweihundert €“ nicht in einen Currency-Wert umgewandelt werden.
Crystal Reports-Anwenderhandbuch 427
8
8
Funktionen
Typkonvertierung
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
•
Mit der Funktion IsNumeric (Zchnflge) (oder NumericText (Zchnflge))
können Sie prüfen, ob ein String-Argument in einen Currency-Wert
konvertiert werden kann, bevor Sie die Konvertierung durchführen. Auf
diese Weise können Sie die geeigneten Maßnahmen ergreifen, falls die
Konvertierung nicht möglich ist.
•
In der Crystal-Syntax können Sie den Operator In-Währung-Operator
anstelle von CCur verwenden, um Zahlenwerte in Currency-Werte zu
konvertieren.
CDbl
Basic- und Crystal-Syntax.
CDbl und ToNumber sind gleichwertige Funktionen.
Syntax der Argumente
•
•
CDbl (Zahl oder Währung)
CDbl (Zeichenfolge)
Argumente
428
CDbl (Zahl oder Währung)
Zahl bzw. Währung enthält einen
Zahlenwert oder einen
numerischen Ausdruck bzw.
einen Currency-Wert oder ausdruck.
CDbl (Zeichenfolge)
Zeichenfolge ist ein String-Wert
oder ein String-Ausdruck.
Crystal Reports-Anwenderhandbuch
Funktionen
Typkonvertierung
Rückgabewert
Zahlenwert
Aktion
CDbl gibt einen Zahlenwert zurück, der durch Konvertieren des angegebenen
Number-, Currency- oder String-Arguments in einen Zahlenwert erstellt wird.
Wenn die Konvertierung nicht möglich ist, wird eine Fehlermeldung
ausgegeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CDbl ({Aufträge.Auftragssumme})
Gibt den in einen Zahlenwert konvertierten Wert des Währungsfeldes
{Aufträge.Auftragssumme} zurück.
CDbl ("$120.20")
Gibt den Zahlenwert von 120,2 zurück.
Anmerkungen
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion.
Mit der Funktion IsNumeric (Zchnflge) (oder NumericText (Zchnflge)) können
Sie prüfen, ob ein String-Argument in einen Currency-Wert konvertiert
werden kann, bevor Sie die Konvertierung durchführen. Auf diese Weise
können Sie die geeigneten Maßnahmen ergreifen, falls die Konvertierung
nicht möglich ist.
Crystal Reports-Anwenderhandbuch 429
8
8
Funktionen
Typkonvertierung
CStr
Basic- und Crystal-Syntax.
CStr und ToText sind gleichwertige Funktionen.
Syntax der Argumente
•
•
•
•
•
CStr (x)
CStr (x, y)
CStr (x, y, z)
CStr (x, y, z, w)
CStr (x, y, z, w, q)
Argumente
430
Konvertieren. . .
Beschreibung
Boolesche Werte
•
Number- und
Currency-Werte
•
x ist ein boolescher Wert, der in eine Zeichenfolge
umgewandelt wird, entweder Wahr oder Falsch.
x ist ein Number- oder Currency-Wert, der in eine
Zeichenfolge umgewandelt werden soll. Der Wert
kann ganzzahlig oder eine Dezimalzahl sein.
•
y ist eine ganze Zahl, die die Anzahl der
Dezimalstellen angibt, die der Wert von x erhalten
soll. (Dieses Argument ist optional.)
•
z ist eine aus einem Zeichen bestehende
Textzeichenfolge, die das Zeichen angibt, mit dem
Tausenderwerte in x getrennt werden.
Standardzeichen ist das Zeichen, das in der
Windows-Systemsteuerung in
Ländereinstellungen angegeben ist. (Dieses
Argument ist optional.)
•
w ist eine aus einem Zeichen bestehende
Textzeichenfolge, die das Zeichen angibt, das als
Dezimaltrennzeichen in x verwendet wird.
Standardzeichen ist das Zeichen, das in der
Windows-Systemsteuerung in
Ländereinstellungen angegeben ist. (Dieses
Argument ist optional.)
Crystal Reports-Anwenderhandbuch
Funktionen
Typkonvertierung
Konvertieren. . .
Beschreibung
Number- und
Currency-Werte
(Formatierung)
•
x ist ein Number- oder Currency-Wert, der in eine
Zeichenfolge umgewandelt werden soll. Der Wert
kann ganzzahlig oder eine Dezimalzahl sein.
•
y ist eine Textzeichenfolge, die das Anzeigeformat
für den Wert von x festlegt. Unter
Formatzeichenfolgen finden Sie weitere
Informationen über die Erstellung einer
Formatzeichenfolge.
•
z ist eine ganze Zahl, die die Anzahl der
Dezimalstellen angibt, die der Wert von x erhalten
soll. (Dieses Argument ist optional.)
•
w ist eine aus einem Zeichen bestehende
Textzeichenfolge, die das Zeichen angibt, mit dem
Tausenderwerte in x getrennt werden.
Standardzeichen ist das Zeichen, das in der
Windows-Systemsteuerung in
Ländereinstellungen angegeben ist. (Dieses
Argument ist optional.)
•
q ist eine aus einem Zeichen bestehende
Textzeichenfolge, die das Zeichen angibt, das als
Dezimaltrennzeichen in x benutzt wird.
Standardzeichen ist das Zeichen, das in der
Windows-Systemsteuerung in
Ländereinstellungen angegeben ist. (Dieses
Argument ist optional.)
x ist ein Date-Wert, der in eine Textzeichenfolge
umgewandelt wird.
Date-Werte
•
•
y ist eine Textzeichenfolge, die definiert, wie der
Wert von x formatiert werden soll. Unter
Formatzeichenfolgen für Date-, Time- und
DateTime-Werte erhalten Sie weitere
Informationen über die Erstellung dieser
Formatzeichenfolge. (Dieses Argument ist
optional.)
Crystal Reports-Anwenderhandbuch 431
8
8
Funktionen
Typkonvertierung
Konvertieren. . .
Beschreibung
Time-Werte
•
x ist ein Time-Wert, der in eine Textzeichenfolge
umgewandelt wird.
•
y ist eine Textzeichenfolge, die definiert, wie der
Wert von x formatiert werden soll. Unter
Formatzeichenfolgen für Date-, Time- und
DateTime-Werte erhalten Sie weitere
Informationen über die Erstellung dieser
Formatzeichenfolge. (Dieses Argument ist
optional.)
•
z ist eine Textzeichenfolge, die als Bezeichnung
für AM (Morgenstunden, 0-12 Uhr Mittag)
verwendet werden soll. (Dieses Argument ist
optional.)
•
w ist eine Textzeichenfolge, die als Bezeichnung
für PM (Nachmittag, 12-24 Uhr) verwendet wird.
(Dieses Argument ist optional.)
x ist ein DateTime-Wert, der in eine
Textzeichenfolge umgewandelt wird.
DateTime-Werte
•
•
y ist eine Textzeichenfolge, die festlegt, wie die
resultierende Textzeichenfolge formatiert wird.
Siehe Formatzeichenfolgen für Date-, Time- und
DateTime-Werte Informationen über die Erstellung
einer Formatzeichenfolge. (Dieses Argument ist
optional.)
•
z ist eine Textzeichenfolge, die als Bezeichnung
für AM (Morgenstunden, 0-12 Uhr Mittag)
verwendet werden soll. (Dieses Argument ist
optional.)
•
w ist eine Textzeichenfolge, die als Bezeichnung
für PM (Nachmittag, 12-24 Uhr) verwendet wird.
(Dieses Argument ist optional.)
Rückgabewert
Textzeichenfolge
Aktion
Die Funktion CStr wandelt rationale Zahlen, Currency-, Datums-, Uhrzeit- und
DateTime-Werte in Textzeichenfolgen um.
432
Crystal Reports-Anwenderhandbuch
Funktionen
Typkonvertierung
Typische Verwendungen
Verwenden Sie diese Funktion, um eine Zahl oder einen Currency-, Datums-,
Uhrzeit- oder DateTime-Wert in Ihrem Bericht (Serienbriefe, Kommentare
usw.) in eine Textzeichenfolge umzuwandeln.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CStr ({Aufträge.Versandt})
Gibt True (Wahr) zurück, falls der Wert von {Aufträge.Versandt} True
(Wahr) ist.
CStr(123.45)
Gibt 123,45 zurück.
CStr(12345.6749,2)
Gibt 1234,67 zurück.
CStr(12345.6750,2)
Gibt 12345,68 zurück.
CStr(12345.4999,0)
Gibt 12345 zurück.
CStr(12345.5000,0)
Gibt 12346 zurück.
CStr({Datei.VOLUMEN} * {Datei.MENGE})
Gibt „44.890,20“ zurück, wenn Folgendes zutrifft: {Datei.VOLUMEN} =
24,45 und {Datei.MENGE} = 1836.
CStr ist nützlich, wenn Sie einen Satz aufbauen möchten, indem Sie eine
umgewandelte Zahl mit anderen Textzeichenfolgen kombinieren (verketten).
"Der Grundpreis des Artikels # " + {Datei.ARTIKELNUMMER} + "
ist
" + CStr({Datei.GRUNDPREIS}) + "."
Diese Formel druckt den Satz „Der Grundpreis des Artikels A1/4520/B12
ist 50,00 €.“, wenn die ARTIKELNUMMER gleich A1/4520/B12 und der
GRUNDPREIS gleich 50,00 ist, wobei der GRUNDPREIS in Text
umgewandelt und mit 2 Dezimalstellen formatiert wird.
CStr(CDate(1996, 11, 1), "yy MMM dd, dddd")
Gibt „96 Nov 01, Freitag“ zurück.
CStr(CDateTime(1995,10,12,3,30,11),"HH:mm, yy MMMM ddd")
Gibt „03:30, 95 Oktober Mon“ zurück.
CStr(CTime(12, 10, 10), "HH*mm*ss tt", "amStr", "pmStr")
Gibt „12*10*10 pmStr“ zurück.
Crystal Reports-Anwenderhandbuch 433
8
8
Funktionen
Typkonvertierung
Anmerkungen
Die Syntaxformen der Funktion CStr, bei denen nur ein einziges Argument
verwendet wird, funktionieren genau wie die gleichnamigen Funktionen von
Visual Basic.
Konvertieren boolescher Werte
•
Wenn die Funktion CStr mit booleschen Werten verwendet wird, ist
sie hauptsächlich geeignet, um einen booleschen Wert mit anderem
Text zu kombinieren (verketten). In allen anderen Fällen kann ein
boolesches Feld so formatiert werden, dass es in Ihrem Bericht als
True (Wahr) oder False (Falsch) angezeigt wird. Dazu müssen Sie
lediglich im Format-Editor in dem Register Boolesch das Format
ändern.
Konvertieren von rationalen Zahlen und Currency-Werten
•
Ist die Anzahl der Dezimalstellen angegeben, kürzt diese Funktion
die Zahl nicht, wenn sie in Text umgewandelt wird, sondern rundet
die Zahl entsprechend der angegebenen Dezimalstellen. Weitere
Informationen hierzu finden Sie unter Round.
Konvertieren von Date-, Time- und DateTime-Werten:
•
Mit Ausnahme der Zeichen, mit denen Datumsangaben oder Zeiten
formatiert werden, können in einer Formatzeichenfolge alle Zeichen
verwendet werden. Sie könnten beispielsweise die Elemente eines
Datums (Tag, Monat und Jahr) durch Schrägstriche voneinander
trennen (wie in „30/12/95“) oder die Elemente einer Uhrzeit
(Stunden, Minuten und Sekunden) durch Doppelpunkte (wie in
„12:30:10“).
•
Möchten Sie die obigen Zeichen in einer Formatzeichenfolge
verwenden, müssen die Zeichen in Anführungszeichen stehen. Hier
ein Beispiel: CStr(DateTime(1995,10,12,13,20,22), „dd/MM/yy hh
'Std' mm 'Min' ss 'Sek' “, 'AM', 'PM') gibt Folgendes zurück: „12/10/95
13 Std 20 Min 22 Sek“
Übergeben optionaler Argumente:
•
434
Viele Argumente der Funktion CStr sind als optional angegeben.
Allerdings können Sie auf die Angabe eines Argumentes nur verzichten,
wenn alle ihm folgenden Argumente ebenfalls fehlen. Anders formuliert:
Sie können für das Argument w nur dann einen Wert angeben, wenn Sie
auch Werte für die Argumente y und z angegeben haben. Es können
beliebig viele optionale Argumente fehlen, solange auf die fehlenden
Argumente kein Argument mit Wert folgt.
Crystal Reports-Anwenderhandbuch
Funktionen
Typkonvertierung
Die folgenden Kombinationen sind zulässig, wenn Sie Argumente für die
Funktion CStr angeben:
•
•
•
•
•
•
CStr (x)
CStr (x, y)
CStr (x, y, z)
CStr (x, y, z, w)
CStr (x, y, z, w, q)
Wenn Sie in der Formatzeichenfolge einer Uhrzeit die
Formatzeichen „t“ oder „tt“ verwenden, werden
Standardzeichenfolgen bereitgestellt, um die AM-Stunden
(Vormittag) und PM-Stunden (Nachmittag) zu kennzeichnen. „t“
bewirkt, dass nur ein Zeichen („a“ oder „p“) angezeigt wird, während
„tt“ bewirkt, dass die gesamte Zeichenfolge („am“ oder „pm“)
angezeigt wird. Sie können eigene Zeichenfolgen übergeben, die als
AM-/PM-Zeichenfolgen verwendet werden sollen. Im Abschnitt
Argumente weiter oben finden Sie die Argumente zur Konvertierung
von Time- und DateTime-Werten mit Hilfe der Funktion CStr. Wenn
Sie eigene AM-/PM-Zeichenfolgen übergeben, haben die
Formatzeichen „t“ und „tt“ die gleichen Auswirkungen auf diese
Zeichenfolgen (sie ergeben Zeichenfolgen aus nur je einem Zeichen
bzw. Zeichenfolgen aus allen Zeichen).
CDate
Basic- und Crystal-Syntax.
Die Funktionen DateValue und Date sind CDate gleichwertig. Date kann
allerdings nur in der Crystal-Syntax verwendet werden, da es in der BasicSyntax als Name für einen Typ verwendet wird.
Syntax der Argumente
•
•
•
•
CDate (Zahl)
CDate (Zeichenfolge)
CDate (DatumUhrzeit)
CDate (JJJJ, MM, TT)
Crystal Reports-Anwenderhandbuch 435
8
8
Funktionen
Typkonvertierung
Argumente
CDate (Zahl)
Zahl ist ein Wert, der die Anzahl der
Tage ab dem 30. Dezember 1899
angibt. Zahl kann positiv oder negativ
sein und wird abgeschnitten, wenn es
ein Dezimalwert ist.
CDate (Zeichenfolge)
Zeichenfolge enthält eine
Textzeichenfolge, die ein Datum
darstellt (Beispiel: „20. September
1999“; für diese Zeichenfolge werden
viele verschiedene Formate
unterstützt.
CDate (DatumUhrzeit)
CDate (YY,MM,DD)
datumUhrzeit ist ein DateTime-Wert.
YYYY (Jahr) ist eine ganze Zahl,
die ein Kalenderjahr angibt, z. B.
1996.
•
•
Monat ist eine ganze Zahl, die
einen Monat angibt, z. B. 12 für
Dezember.
•
Tag ist eine ganze Zahl, die einen
Monatstag angibt, z. B. 05.
Rückgabewert
Date-Wert
Aktion
CDate (Zahl) konvertiert die angegebene Zahl und gibt ein Datum zurück,
wenn die Anzahl der Tage ab dem 30. Dezember 1899 als Zahl angegeben
wird.
CDate (Zeichenfolge) konvertiert die angegebene Zeichenfolge und gibt ein
Datum zurück, wenn eine Zeichenfolge angegeben wird.
CDate (DatumUhrzeit) konvertiert den angegebenen DateTime-Wert und
gibt ein Datum zurück, wenn ein DateTime-Wert angegeben wird.
CDate (YYYY, MM, DD) erstellt aus den angegebenen Argumenten einen
Date-Wert.
436
Crystal Reports-Anwenderhandbuch
Funktionen
Typkonvertierung
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CDate ("Dec. 31, 1999")
Gibt den Date-Wert 31 1999 zurück. 31, 1999.
CDate (50)
Gibt den Date-Wert 18. Februar 1900 zurück.
CDate (#Oct. 20, 1999 12:02pm#)
Gibt den Date-Wert 20. Oktober 1999 zurück.
CDate (1930, 7, 30)
Gibt den Date-Wert 30. Juli 1930 zurück.
Anmerkungen
Mit der Funktion IsDate können Sie prüfen, ob ein String-Argument in einen
Date-Wert konvertiert werden kann, bevor Sie die Konvertierung durchführen.
Auf diese Weise können Sie die geeigneten Maßnahmen ergreifen, falls die
Konvertierung nicht möglich ist.
Siehe auch
•
DateSerial (Jahr, Monat, Tag)
CTime
Basic- und Crystal-Syntax.
Die Funktionen TimeValue und Time sind CTime gleichwertig. Time kann
allerdings nur in der Crystal-Syntax verwendet werden, da es in der BasicSyntax als Name für einen Typ verwendet wird.
Syntax der Argumente
•
•
•
•
CTime (Zahl)
CTime (Zeichenfolge)
CTime (DatumUhrzeit)
CTime (HH, MM, SS)
Crystal Reports-Anwenderhandbuch 437
8
8
Funktionen
Typkonvertierung
Argumente
CTime (Zahl)
•
Gibt einen Time-Wert zurück,
wenn eine Zahl im 24-StundenFormat angegeben wird.
•
Die Zahl kann auch negativ und
eine Dezimalzahl sein.
CTime (Zeichenfolge)
Gibt einen Time-Wert für die Uhrzeit
zurück, wenn ein String-Ausdruck
angegeben wird, der eine Uhrzeit von
0:00:00 (12:00:00 am) bis
einschließlich 23:59:59 (11:59:59 pm)
darstellt.
CTime (DatumUhrzeit)
DatumUhrzeit ist ein DateTime-Wert.
• Std ist eine ganze Zahl, die eine
Stunde des Tages angibt.
CTime (Stunde, Minute, Sekunde)
•
Min ist eine ganze Zahl, die eine
Minute angibt.
•
Sek ist eine ganze Zahl, die eine
Sekunde angibt.
Rückgabewert
Time-Wert
Aktion
CTime (Zahl) konvertiert eine angegebene Zahl in einen Time-Wert, wobei
diese Zahl im 24-Stunden-Format, als Dezimalzahl und als negative Zahl
angegeben werden kann.
CTime (Zeichenfolge) konvertiert in eine Zeit und gibt einen Time-Wert
zurück, wenn eine Zeichenfolge angegeben wird, die einen Time-Wert
darstellt.
CTime (DatumUhrzeit) konvertiert in eine Zeit und gibt einen Time-Wert
zurück, wenn ein DateTime-Wert angegeben wird.
CTime (hh, mm, ss) konvertiert die Argumente und gibt einen Time-Wert
zurück, wenn Argumente für Stunden, Minuten und Sekunden angegeben
werden.
438
Crystal Reports-Anwenderhandbuch
Funktionen
Typkonvertierung
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CTime (.2)
CTime (1.2)
Beide geben denselben Wert 4:48:00 zurück.
CTime (-.2)
Gibt 7:12:00 pm zurück
CTime ("Jan. 6, 1999 2:30pm")
Gibt 2:30:00 pm zurück
CTime (#Feb. 24, 1999 2:40pm#)
Gibt 2:40:00 pm zurück
CTime (18, 30, 30)
Gibt 6:30:30 pm zurück
Anmerkungen
Mit der Funktion IsTime können Sie prüfen, ob ein String-Argument in einen
Time-Wert konvertiert werden kann, bevor Sie die Konvertierung durchführen.
Auf diese Weise können Sie die geeigneten Maßnahmen ergreifen, falls die
Konvertierung nicht möglich ist.
Siehe auch
•
•
TimeSerial (Stunden, Minuten, Sekunden)
IsTime
CDateTime
Basic- und Crystal-Syntax.
Die Funktionen DateTimeValue und DateTime sind CDateTime gleichwertig.
DateTime kann allerdings nur in der Crystal-Syntax verwendet werden, da es
in der Basic-Syntax als Name für einen Typ verwendet wird.
Syntax der Argumente
•
•
•
•
•
•
CDateTime (Zeichenfolge)
CDateTime (Zahl)
CDateTime (Datum)
CDateTime (Datum, Uhrzeit)
CDateTime (JJJJ, MM, TT)
CDateTime (JJJJ, MM, TT, HH, MM, SS)
Crystal Reports-Anwenderhandbuch 439
8
8
Funktionen
Typkonvertierung
Argumente
CDateTime (Datum)
CDateTime (Datum, Uhrzeit)
CDateTime (Zahl)
•
•
•
•
Datum ist ein Date-Wert.
•
Zahl kann positiv oder negativ
und ein Dezimalwert sein.
Zeichenfolge ist ein Datum und
eine Uhrzeit, z. B.: „September
15, 1999 10:45 am“
Jahr ist eine ganze Zahl, die ein
Kalenderjahr angibt, z. B. 1996.
CDateTime (Zeichenfolge)
•
CDateTime (Jahr, Monat, Tag)
CDateTime (Jahr, Monat, Tag,
Stunde, Minute, Sekunde)
•
Datum ist ein Date-Wert.
x ist ein Time-Wert.
Zahl stellt eine Anzahl von Tagen
ab dem 30. Dezember 1899 dar,
z. B.: 20 steht für 20 Tage nach
dem Dezember des Jahres 1899,
also für den 19. Januar 1900
•
Monat ist eine ganze Zahl, die
einen Monat angibt, z. B. 1 für
Januar.
•
Tag ist eine ganze Zahl, die einen
Monatstag angibt, z. B. 10.
•
Std ist eine ganze Zahl, die eine
Stunde des Tages angibt, z. B.
12.
•
Min ist eine ganze Zahl, die eine
Minute angibt, z. B. 59.
•
Sek ist eine ganze Zahl, die die
Sekunden angibt, z. B. 30.
Rückgabewert
DateTime-Wert
Aktion
CDateTime (Zeichenfolge) wandelt die angegebene Zeichenfolge in einen
DateTime-Wert um.
CDateTime (Zahl) wandelt die angegebene Zahl in einen DateTime-Wert um,
wobei diese Zahl als Anzahl der Tage seit dem 30. Dezember 1899
interpretiert wird.
440
Crystal Reports-Anwenderhandbuch
Funktionen
Typkonvertierung
CDateTime (Datum) erstellt aus dem angegebenen Datum den
Datumsbestandteil des zurückgegebenen DateTime-Wertes und weist als
Uhrzeitbestandteil 12:00:00 am zu.
CDateTime (Datum, Uhrzeit) kombiniert die angegebenen Datentypen für
Datum und Uhrzeit zu einem DateTime-Wert.
CDateTime (JJJJ, MM, TT) erstellt aus den angegebenen Argumenten den
Datums-Bestandteil des zurückgegebenen DateTime-Wertes und weist als
Uhrzeitbestandteil 12:00:00 am zu.
CDateTime (JJJJ, MM, TT, HH, MM, SS) setzt die angegebenen Argumente
zu einem DateTime-Wert zusammen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CDateTime ("10/4/1999 10:20am")
Gibt den DateTime-Wert 4. Oktober 1999, 10:20:00 am zurück.
CDateTime (12.5)
Gibt den DateTime-Wert 11. Januar 1900, 12:00:00 zurück.
CDateTime (-2.5)
Gibt den DateTime-Wert 27. Dezember 1899, 12:00:00 pm zurück.
CDateTime (CDate ("Dec. 25, 1999"))
Gibt den DateTime-Wert 25. Dezember 1999, 12:00:00 zurück.
CDateTime (CDate ("November 10, 1999"), CTime("12:20am"))
Gibt den DateTime-Wert 10. November 1999, 00:20:00 zurück.
CDateTime (1945, 8, 21, 0, 0, 0)
Gibt den DateTime-Wert 21. August 1945, 00:00:00 zurück.
CDateTime (1945, 8, 21, 10, 0, 0)
Gibt den DateTime-Wert 21. August 1945, 10:00:00 zurück.
Anmerkungen
Mit der Funktion IsDateTime können Sie prüfen, ob ein String-Argument in
einen DateTime-Wert konvertiert werden kann, bevor Sie die Konvertierung
durchführen. Auf diese Weise können Sie die geeigneten Maßnahmen
ergreifen, falls die Konvertierung nicht möglich ist.
Siehe auch
•
IsDateTime
Crystal Reports-Anwenderhandbuch 441
8
8
Funktionen
Programmierbefehle
Programmierbefehle
Diese Funktionen stellen Alternativen zur Verwendung von
Steuerelementstrukturen dar.
Choose (Index, Auswahl1, Auswahl2, ...)
IIF (Ausdruck, True-Teil, False-Teil)
Switch (Ausdr1, Wert1, Ausdr2, Wert2, …)
Choose (Index, Auswahl1, Auswahl2, ...)
Argumente
•
"Index" ist eine Zahl oder ein numerischer Ausdruck und gibt den Index
der Auswahl an. Der Wert sollte zwischen 1 und der Anzahl der
verfügbaren Auswahlen liegen. Wenn er außerhalb dieses Bereichs liegt,
gibt Choose einen Standardwert zurück. (Welcher Standardwert
zurückgegeben wird, hängt vom Typ der Auswahlen ab. Wenn die
Auswahlen beispielsweise aus Zahlen bestehen, ist der Standardwert 0,
und bei Auswahlen vom Zeichenfolgetyp ist der Standardwert eine leere
Zeichenfolge ("").)
•
"Auswahl" ist eine der Auswahlen, die zur Verfügung stehen. Alle
Wahloptionen müssen vom gleichen Typ sein. Eine Wahloption kann von
jedem einfachen Typ (Zahl, Währung, Zeichenfolge, boolescher Wert,
Datum, Uhrzeit und DatumUhrzeit) oder Bereichstyp (Zahlenbereich,
Währungsbereich, Zeichenfolgebereich, Datumsbereich, Zeitbereich und
DatumUhrzeit-Bereich), aber kein Array sein.
Rückgabewert
Ein Wert aus der angegebenen Liste von Auswahlen. Der Rückgabewert ist
vom gleichen Typ wie die Auswahlen.
Aktion
Choose gibt auf Grundlage des Wertes von Index einen Wert aus der Liste
der Auswahlen zurück. Wenn Index beispielsweise 1 ist, wird Auswahl1
zurückgegeben, und wenn Index 2 ist, wird Auswahl2 zurückgegeben usw.
Typische Verwendungen
•
442
Choose kann in einigen Fällen anstelle der oder SelectSteuerelementstrukturen verwendet werden. Wenn Sie beispielsweise
einen Indexwert einem String-Wert zuordnen, eignet sich dazu am
besten Choose.
Crystal Reports-Anwenderhandbuch
Funktionen
Programmierbefehle
•
Choose eignet sich beispielsweise dann besser als eine
Programmstruktur, wenn Datensatzauswahlformeln geschrieben werden,
weil diese dadurch auf dem Datenbankserver verarbeitet werden können.
Siehe Switch (Ausdr1, Wert1, Ausdr2, Wert2, …) Funktion für ein
Beispiel.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Choose (3, "Schlecht", "Mittelmäßig", "Gut",
"Ausgezeichnet")
Gibt die Zeichenfolge „Gut“ zurück.
Choose (2, 10 To 20, 100 To 200, 60 To 70)
Gibt den Zahlenbereichswert "100 bis 200" zurück.
Im nächsten Beispiel hat ein Unternehmen ein Steuerjahr, das am 1. Juli (im
dritten Kalenderquartal) beginnt, und möchte das Steuerquartal jedes
Auftragsdatums drucken:
Rem Basic-Syntax
formula = Choose (DatePart ("q", {Aufträge.Auftragsdatum}),
_
"drittes Steuerquartal", "viertes
Steuerquartal", _
" erstes Steuerquartal", "zweites
Steuerquartal")
//Crystal-Syntax
Choose (DatePart ("q", {Aufträge.Auftragsdatum}),
"drittes Steuerquartal", "viertes Steuerquartal",
"erstes Steuerquartal", "zweites Steuerquartal")
Wenn {Aufträge.Auftragsdatum} der 18. Februar 1996 ist, dann wird
durch den Aufruf der DatePart-Funktion 1 zurückgegeben, da dieses
Datum im ersten Kalenderquartal liegt. Daher wird von der Formel der
erste Auswahlwert, die Zeichenfolge „drittes Steuerquartal“,
zurückgegeben.
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion. Ein Unterschied besteht darin, dass die Funktion keinen
Variant-Typ zurückgibt und daher alle Auswahlen vom selben Typ sein
müssen.
•
Jedes Argument der Funktion Choose wird vor der Rückgabe der
Auswahl ausgewertet. Daher sollten Sie auf unerwünschte
Nebenwirkungen achten, wenn Sie Choose verwenden.
Crystal Reports-Anwenderhandbuch 443
8
8
Funktionen
Programmierbefehle
Wenn beispielsweise einer der Auswahlausdrücke zu einer Division
durch Null führt, tritt ein Fehler auf, auch wenn es sich dabei nicht um die
von der Funktion Choose zurückgegebene Auswahl handelt.
Siehe auch
•
•
Funktion IIF (Ausdruck, True-Teil, False-Teil)
Funktion Switch (Ausdr1, Wert1, Ausdr2, Wert2, …)
IIF (Ausdruck, True-Teil, False-Teil)
Basic- und Crystal-Syntax.
Argument
•
•
Ausdruck ist ein boolescher Ausdruck.
•
False-Teil ist der Wert, der zurückgegeben wird, wenn der Ausdruck
False ist. Dieses Argument muss vom gleichen Typ wie True-Teil
sein.
True-Teil ist der Wert, der zurückgegeben wird, wenn der Ausdruck
TRUE ist. Dieser Wert kann von jedem einfachen Typ (Zahl,
Währung, Zeichenfolge, Boolesch, Datum, Uhrzeit und DateTime)
oder Bereichstyp (Zahlenbereich, Währungsbereich,
Zeichenfolgebereich, Datumsbereich, Zeitbereich und
DatumUhrzeit-Bereich), aber kein Array sein.
Rückgabewert
True-Teil, wenn der Ausdruck TRUE ist, und False-Teil, wenn der Ausdruck
FALSE ist. Der Rückgabewert ist vom gleichen Typ wie True-Teil und FalseTeil.
Aktion
IIF gibt je nach Auswertung des Ausdrucks einen von zwei Bestandteilen aus.
Typische Verwendungen
•
In einigen Fällen kann IIF als Alternative zu den If/Then/ElseProgrammstrukturen verwendet werden.
IIF eignet sich beispielsweise dann besser als eine Programmstruktur,
wenn Datensatzauswahlformeln geschrieben werden, weil diese dadurch
auf dem Datenbankserver verarbeitet werden können. Ein Beispiel dazu
finden Sie unter Switch (Ausdr1, Wert1, Ausdr2, Wert2, …).
444
Crystal Reports-Anwenderhandbuch
Funktionen
Programmierbefehle
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
IIF ({Aufträge.Auftragssumme} > 10000, "Großauftrag",
"Standardauftrag")
Gibt den String-Wert „Großauftrag“ zurück, wenn
{Aufträge.Auftragssumme} größer als 10.000 € ist, und andernfalls den
String-Wert „Standardauftrag“.
Sie können ein Formelfeld einfügen, das die Auftragssumme repräsentiert,
falls die Zahlung bereits geleistet wurde, und andernfalls 0 ist:
Rem Basic-Syntax
formula = IIF ({Aufträge.Eingegangene Zahlungen},
{Aufträge.Auftragssumme}, 0)
//Crystal-Syntax
IIF ({Aufträge.Eingegangene Zahlungen},
{Aufträge.Auftragssumme}, 0)
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion. Ein Unterschied besteht darin, dass die Funktion keinen
Variant-Typ zurückgibt und daher True-Teil und False-Teil vom selben
Typ sein müssen.
•
Jedes Argument der Funktion IIF wird vor der Rückgabe der Auswahl
ausgewertet. Daher sollten Sie auf unerwünschte Nebenwirkungen
achten, wenn Sie IIF verwenden. Wenn beispielsweise False-Teil zu
einer Division durch Null führt, tritt ein Fehler auf, selbst wenn Ausdruck
TRUE ist und daher True-Teil zurückgegeben wird.
Siehe auch
•
•
Choose (Index, Auswahl1, Auswahl2, ...)
Switch (Ausdr1, Wert1, Ausdr2, Wert2, …)
Switch (Ausdr1, Wert1, Ausdr2, Wert2, …)
Basic- und Crystal-Syntax.
Argumente
•
„Ausdr1“, „Ausdr2“ usw. sind boolesche Ausdrücke.
Crystal Reports-Anwenderhandbuch 445
8
8
Funktionen
Programmierbefehle
•
„Wert1“, „Wert2“ usw. sind die möglichen Rückgabewerte. Alle Werte
müssen vom gleichen Typ sein. Ein Wert kann von jedem einfachen Typ
(Zahl, Währung, Zeichenfolge, Boolesch, Datum, Uhrzeit und
DatumUhrzeit) oder Bereichstyp (Zahlenbereich, Währungsbereich,
Zeichenfolgebereich, Datumsbereich, Uhrzeitbereich und DatumUhrzeitBereich), aber kein Array sein.
Rückgabewert
Einer der Werte aus der Werteliste „Wert1“, „Wert2“ usw. Der Rückgabewert
ist vom gleichen Typ wie die Werte.
Aktion
Die Argumentenliste von Switch besteht aus zwei Paaren von Ausdrücken
und Werten. Switch wertet die Ausdrücke von links nach rechts aus und gibt
den Wert zurück, der dem ersten Ausdruck zugeordnet ist, der als True
ausgewertet wird.
Wenn beispielsweise Ausdr1 True ist, gibt Switch Wert1 zurück. Wenn
Ausdr1 False und Ausdr2 True ist, dann gibt Switch Wert2 zurück. Wenn
Ausdr1 und Ausdr2 False sind und Ausdr3 True ist, gibt Switch Wert3 zurück.
Wenn alle Ausdrücke falsch (False) sind, gibt Switch einen Standardwert
zurück. (Welcher Standardwert zurückgegeben wird, hängt vom Typ der
Werte in der Liste der Werte ab. Wenn die Werte beispielsweise vom
Zahlentyp sind, ist der Standardwert 0, und bei Werten vom Zeichenfolgetyp
ist der Standardwert eine leere Zeichenfolge ("").)
Typische Verwendungen
Switch kann in bestimmten Situationen anstelle von If-Then-Else-Operatoren
oder Select-Anweisungen (Basic-Syntax) bzw. Select-Ausdrücken (CrystalSyntax) verwendet werden.
Switch eignet sich beispielsweise dann besser als eine Programmstruktur,
wenn Datensatzauswahlformeln geschrieben werden, weil diese dadurch auf
dem Datenbankserver verarbeitet werden können. Ein Beispiel dazu finden
Sie unten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Angenommen, ein Unternehmen möchte Aufträge anhand der Auftragsgröße
in die Kategorien „groß“, „mittel“ oder „klein“ einteilen:
Rem Basic-Syntax
formula = Switch ({Aufträge.Auftragssumme} > 5000, "groß", _
{Aufträge.Auftragssumme} > 1000,
"mittel", _
446
Crystal Reports-Anwenderhandbuch
Funktionen
Programmierbefehle
True, "klein")
//Crystal-Syntax
Switch ({Aufträge.Auftragssumme} > 5000, "groß",
{Aufträge.Auftragssumme} > 1000, "mittel",
True, "klein")
Wenn {Aufträge.Auftragssumme} größer als 5.000 € ist, dann gibt die
Formel den String-Wert „groß“ aus. Andernfalls, wenn
{Aufträge.Auftragssumme} größer als 1.000 € ist, dann gibt die Formel
den String-Wert „mittel“ aus. Andernfalls gibt die Formel „klein“ aus.
Im folgenden Beispiel wird gezeigt, wie die Funktion Switch dazu verwendet
werden kann, wirkungsvolle Datensatzauswahlformeln zu schreiben, die auf
dem Datenbankserver verarbeitet werden können. Würde diese Formel unter
Verwendung von If-Then-Else-Operatoren oder Select-Anweisungen (BasicSyntax) bzw. Select-Ausdrücken (Crystal-Syntax) geschrieben, könnte sie
nicht an den Server weitergegeben werden.
Hinweis: Dieses Beispiel wurde in der Crystal-Syntax geschrieben, da alle
mit dem Formula Workshop bearbeiteten Datensatzauswahlformeln in
Crystal-Syntax geschrieben sind.
Musterbericht
Eine vollständigere Version dieses Beispiels mit 27 Bedingungen für Switch
finden Sie in einem Musterbericht unter dem Namen „Record Selection on
DateRange.rpt“.
Sie finden die Musterberichte im Crystal Reports-Verzeichnis unter
\Samples\De\Reports.
Wenn Sie den Bericht in die Seitenansicht laden, geben Sie einen Parameter
für das Referenzauftragsdatum {?Referenzdatum} und eine
Bereichsbedingung {?Referenzbedingung} an, um einen Datumsbereich um
das Referenzauftragsdatum herum anzuzeigen. Der Bericht wird dann in der
Seitenansicht nur mit denjenigen Datensätzen angezeigt, deren
Auftragsdatum in den angegebenen Bereich fällt.
Die gesamte Datensatzauswahl wird auf dem Datenbankserver durchgeführt.
Dies liegt daran, dass die Funktion Switch und alle zugehörigen Argumente
ausgewertet werden können, bevor auf die Datenbank zugegriffen wird.
Hinweis:
•
In diesem Musterbericht gibt die Funktion Switch einen
Datumsbereichswert zurück.
•
Der Aufruf der Funktion Switch sieht durch die Einrückung des Codes
ähnlich wie eine Programmstruktur aus, was das Lesen der Funktion
vereinfacht.
•
Der letzte Ausdruck ist der boolesche Wert True (Wahr).
Crystal Reports-Anwenderhandbuch 447
8
8
Funktionen
Auswertungszeitpunkt
Der Aufruf der Funktion Switch liefert einen expliziten Standardwert;
wenn keiner der anderen Ausdrücke True ist, ist der letzte Ausdruck
automatisch True, und daher wird der Datumsbereich CDate (1899, 12,
30) To CDate(1899, 12, 30) zurückgegeben.
//Datensatzauswahlformel in der Crystal-Syntax
{Aufträge.Auftragsdatum} in
Switch
(
{?Referenzbedingung} = "Alter 0 bis 30 Tage",
({?Referenzdatum} - 30) To {?Referenzdatum},
{?Referenzbedingung} = "Alter 31 bis 60 Tage",
({?Referenzdatum} -60) To ({?Referenzdatum} -31),
{?Referenzbedingung} = "Alter 61 bis 90 Tage",
({?Referenzdatum} -90) To ({?Referenzdatum} -61),
True, // stellt den Standardwert bereit und gibt einen
gültigen Bereich an
CDate(1899, 12, 30) To CDate(1899, 12, 30)
)
Anmerkungen
•
Diese Funktion arbeitet genau so wie die entsprechende Visual BasicFunktion. Ein Unterschied besteht darin, dass die Funktion keinen
Variant-Typ zurückgibt und daher alle Werte vom selben Typ sein
müssen.
•
Jedes Argument der Funktion Switch wird vor der Rückgabe der Auswahl
ausgewertet. Daher sollten Sie auf unerwünschte Nebenwirkungen
achten, wenn Sie Switch verwenden.
Wenn beispielsweise einer der Werte zu einer Division durch Null führt,
tritt ein Fehler auf, auch wenn es sich dabei nicht um den von der
Funktion Switch zurückgegebenen Wert handelt.
Siehe auch
•
•
Choose (Index, Auswahl1, Auswahl2, ...)
IIF (Ausdruck, True-Teil, False-Teil)
Auswertungszeitpunkt
Mit den Auswertungszeitpunktfunktionen kann die Präsentation von Daten
durch Überprüfen des Zeitpunkts ihrer Kalkulation und Präsentation
kontrolliert werden.
BeforeReadingRecords
WhileReadingRecords
WhilePrintingRecords
EvaluateAfter (x)
448
Crystal Reports-Anwenderhandbuch
Funktionen
Auswertungszeitpunkt
BeforeReadingRecords
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Gibt an, dass die Formel vor dem Lesen der Datensätze ausgewertet werden
muss.
Typische Verwendungen
Formeln werden normalerweise zu folgenden Zeitpunkten ausgewertet:
•
Wenn in der Formel kein Datenbank- oder Gruppenfeld enthalten ist, wird
die Formel ausgewertet, bevor das Programm Datensätze liest.
•
Wenn in der Formel ein Datenbankfeld enthalten ist, wird die Formel
ausgewertet, während das Programm Datensätze liest.
•
Wenn in der Formel ein Gruppenfeld, Seitenzahlenfeld, ein Teilergebnis
usw. enthalten ist, wird die Formel ausgewertet, nachdem die Datensätze
der Datenbank gelesen wurden und während die Daten aus den
Datensätzen in den Bericht gedruckt werden.
BeforeReadingRecords bewirkt, dass die Formel ausgewertet wird, bevor das
Programm die Datensätze der Datenbank liest. Wenn diese Funktion in einer
Formel verwendet wird, gibt die Formelprüffunktion eine Fehlermeldung aus,
sobald Sie Elemente (z.B. Datenbankfelder, Gruppen usw.) in die Formel
eingefügt haben, die zu einem späteren Zeitpunkt ausgewertet werden
müssen (während des Lesens oder Druckens der Datensätze).
Beispiele
Das folgende Beispiel gilt für die Crystal-Syntax:
BeforeReadingRecords;
ToNumber("12345")
Erzwingt die Auswertung der Formel (die keine Datenbankfelder oder
Gruppenfelder enthält), bevor Datensätze gelesen werden.
Hinweis: Wenn Sie ein Datenbankfeld oder eine Gruppe in diese Formel
aufnehmen, wird ein Fehler gemeldet.
WhileReadingRecords
Basic- und Crystal-Syntax.
Crystal Reports-Anwenderhandbuch 449
8
8
Funktionen
Auswertungszeitpunkt
Rückgabewert
Keine
Aktion
Zwingt das Programm, die Formel auszuwerten, während es Datensätze der
Datenbank liest.
Typische Verwendungen
Formeln werden normalerweise zu folgenden Zeitpunkten ausgewertet:
•
Wenn in der Formel kein Datenbank- oder Gruppenfeld enthalten ist, wird
die Formel ausgewertet, bevor das Programm Datensätze liest.
•
Wenn in der Formel ein Datenbankfeld enthalten ist, wird die Formel
ausgewertet, während das Programm Datensätze liest.
•
Wenn in der Formel ein Gruppenfeld, Seitenzahlenfeld, ein Teilergebnis
usw. enthalten ist, wird die Formel ausgewertet, nachdem die Datensätze
der Datenbankgelesen wurden und während die Daten aus den
Datensätzen in den Bericht gedruckt werden.
WhileReadingRecords erzwingt, dass die Formel ausgewertet wird, während
das Programm die Datensätze der Datenbank liest. Wenn diese Funktion in
einer Formel verwendet wird, gibt die Formelprüffunktion eine Fehlermeldung
aus, wenn Sie versuchen, Elemente in die Formel einzufügen (Gruppen-,
Seitenzahlenfelder usw.), die zu einem späteren Zeitpunkt ausgewertet
werden müssen (w
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
WhileReadingRecords;
ToNumber({Auftragsdetails.MENGE})
Erzwingt, dass die Formel (die ein Datenbankfeld enthält) zu dem für sie
üblichen Zeitpunkt ausgewertet wird (während des Lesens der
Datensätze).
Hinweis: Wenn Sie eine Gruppe in diese Formel aufnehmen, wird ein Fehler
gemeldet.
WhileReadingRecords;
ToNumber("12345")
Erzwingt, dass die Formel (die keine Datenbankfelder oder Gruppen
enthält) später als normal ausgewertet wird. In diesem Fall wird die
Formel nicht vor dem Lesen der Datensätze, sondern während des
Lesens der Datensätze ausgewertet.
Hinweis: Wenn Sie eine Gruppe in diese Formel aufnehmen, wird ein Fehler
gemeldet.
450
Crystal Reports-Anwenderhandbuch
Funktionen
Auswertungszeitpunkt
WhilePrintingRecords
Basic- und Crystal-Syntax.
Rückgabewert
Keine
Aktion
Zwingt das Programm, die Formel auszuwerten, während es Datensätze der
Datenbank druckt.
Typische Verwendungen
Formeln werden normalerweise zu folgenden Zeitpunkten ausgewertet:
•
Wenn in der Formel kein Datenbank- oder Gruppenfeld enthalten ist, wird
die Formel ausgewertet, bevor das Programm Datensätze liest.
•
Wenn in der Formel ein Datenbankfeld enthalten ist, wird die Formel
ausgewertet, während das Programm Datensätze liest.
•
Wenn in der Formel ein Gruppenfeld, Seitenzahlenfeld, ein Teilergebnis
usw. enthalten ist, wird die Formel ausgewertet, nachdem die Datensätze
der Datenbankgelesen wurden und während die Daten aus den
Datensätzen in den Bericht gedruckt werden.
WhilePrintingRecords bewirkt, dass die Formel ausgewertet wird, während
das Programm die Datensätze der Datenbank druckt.
Mit dieser Funktion können Sie auch erzwingen, dass eine Formel, die keine
Datenbankfelder und keine Gruppenfelder enthält, erst verarbeitet wird, wenn
Datensätze gedruckt werden, und nicht schon bevor Datensätze gelesen
werden. Mit dieser Funktion können Sie auch erzwingen, dass eine Formel,
die keine Datenbankfelder enthält, erst verarbeitet wird, wenn Datensätze
gedruckt werden, und nicht schon während Datensätze gelesen werden.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
WhilePrintingRecords;
3* Sum ({Datei.MENGE1}, {Datei.MENGE2})
Erzwingt, dass die Formel (die eine Gruppe enthält) zu dem für sie
üblichen Zeitpunkt ausgewertet wird (während des Druckens der
Datensätze).
WhilePrintingRecords;
ToNumber("12345")
Crystal Reports-Anwenderhandbuch 451
8
8
Funktionen
Auswertungszeitpunkt
Erzwingt, dass die Formel (die keine Datenbankfelder oder Gruppen
enthält) später als normal ausgewertet wird. In diesem Fall wird
veranlasst, dass die Formel nicht vor dem Lesen der Datensätze,
sondern während des Druckens der Datensätze ausgewertet wird.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
EvaluateAfter (x)
Basic- und Crystal-Syntax.
Argumente
•
x ist ein beliebiger Formelname.
Rückgabewert
Keine
Aktion
Diese Funktion kann verwendet werden, damit eine Formel nach der anderen
ausgeführt wird. Beispielsweise können zwei separate Formeln in einem
Bericht den gleichen Auswertungszeitpunkt haben (BeforeReadingRecords,
WhileReadingRecords oder WhilePrintingRecords), oder sie sind im selben
Bereich des Berichts enthalten und werden daher beim Drucken der
Datensätze automatisch ausgewertet. In solchen Fällen ist es oft unklar,
welche Formel zuerst ausgeführt werden soll.
In vielen Situationen kann es unwichtig sein, welche Formel zuerst
ausgewertet wird. In anderen Situationen kann es aber wichtig sein, dass
eine Formel nach der anderen ausgewertet wird. Es könnte z.B. sein, dass
eine Formel den Wert einer Variablen einstellt, und die andere diesen Wert
liest. Mit Hilfe der EvaluateAfter-Funktion kann die zweite Formel dazu
gebracht werden, erst dann ausgeführt zu werden, wenn die erste Formel
abgeschlossen ist.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
EvaluateAfter({@SetVariable})
Lässt die Formel warten, bis die @SetVariable-Formel die Berechnungen
abgeschlossen hat.
452
Crystal Reports-Anwenderhandbuch
Funktionen
Druckstatus
Druckstatus
Diese Funktionen sind zuständig für den Status eines in Seitenansicht
angezeigten Berichts.
Previous (Feld)
PreviousValue (Feld)
Next (Feld)
NextValue (Feld)
IsNull (Feld)
PreviousIsNull (Feld)
NextIsNull (Feld)
PageNumber
TotalPageCount
PageNofM
Datensatznummer
GroupNumber
RecordSelection
GroupSelection
InRepeatedGroupHeader
OnFirstRecord
OnLastRecord
DrillDownGroupLevel
HierarchyLevel (GroupingLevel)
Previous (Feld)
Crystal-Syntax.
PreviousValue (Feld) und Previous sind gleichwertige Funktionen. Previous
kann allerdings nur in der Crystal-Syntax und PreviousValue nur in der BasicSyntax verwendet werden.
Argumente
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld des Berichts.
Crystal Reports-Anwenderhandbuch 453
8
8
Funktionen
Druckstatus
Rückgabewert
Ein Feldwert, der denselben Typ hat wie das Feld, das als Argument "Feld"
übergeben wurde.
Aktion
Previous (Feld) gibt den Wert zurück, den das angegebene Feld im
vorhergehenden Datensatz hat.
Typische Verwendungen
Sie können "Previous" verwenden, um den letzten Datensatz eines
vorhergehenden Bereichs oder den letzten Datensatz vor dem Beginn eines
neuen Bereichs zu ermitteln oder um auf doppelte Werte zu prüfen.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If Previous({Datei.MENGE}) <> 0 Then
{Datei.MENGE}/2
Else
{Datei.MENGE}
Prüft den vorhergehenden Wert des Feldes {Datei.MENGE} daraufhin,
ob er ein Nullwert ist. Ist der Wert kein Nullwert, wird er durch 2 dividiert.
Ist der Wert ein Nullwert, wird der Wert selbst zurückgegeben.
If Previous ({Kunde.KUNDENNR}) = {Kunde.KUNDENNR} Then
"Wiederholter Wert"
Else
""
Markiert Werte, die im Feld {Kunde.KUNDENNR} wiederholt werden.
If Remainder(Previous ({Datei.SERIENNUMMER}), 300) = 0 Then
"Anfang eines neuen Blocks"
Else
""
Dividiert den vorhergehenden Wert des Feldes
{Datei.SERIENNUMMER} durch 300. Gibt es keinen Rest, markiert die
Formel den aktuellen Wert als „Anfang eines neuen Blocks“. Wenn ein
Rest bleibt (Else), wird keine Markierung gedruckt. (Diese Formel
unterteilt Seriennummern in Blöcke aus 300 Elementen.)
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
454
Crystal Reports-Anwenderhandbuch
Funktionen
Druckstatus
PreviousValue (Feld)
Basic-Syntax
PreviousValue und Previous (Feld) sind gleichwertige Funktionen.
PreviousValue kann allerdings nur in der Basic-Syntax und Previous nur in
der Crystal-Syntax verwendet werden.
Argument
Feld ist der Name eines Datenbankfeldes.
Rückgabewert
Wert des angegebenen Feldes, wobei der Typ vom Typ des Feldes abhängt.
Aktion
PreviousValue gibt den Wert des vorherigen Datensatzes des angegebenen
Feldes zurück.
Typische Verwendung
Sie können PreviousValue verwenden, um den letzten Datensatz eines
vorhergehenden Bereichs oder den letzten Datensatz vor dem Beginn eines
neuen Bereichs zu ermitteln oder um auf doppelte Werte zu prüfen.
Beispiele
Die folgenden Beispiele gelten für die Basic-Syntax:
If PreviousValue ({Auftragsdetails.Menge}) <> 0 Then
formula = {Auftragsdetails.Menge} / 2
Else
formula = {Auftragsdetails.Menge}
End If
Prüft den vorherigen Wert im Feld {Auftragsdetails.Menge}, um
herauszufinden, ob er Null ist. Ist der Wert kein Nullwert, wird er durch 2
dividiert. Ist der Wert ein Nullwert, wird der Wert selbst zurückgegeben.
If PreviousValue ({Aufträge.Auftrags-ID}) Mod 10 = 0 Then
formula = "Beginn eines neuen Blocks"
Else
formula = "Gleicher Block"
End If
Unterteilt Auftrags-IDs in Blöcke aus 10 Elementen. Wenn die vorherige
Auftrags-ID ein Vielfaches von 10 ist, wird der aktuelle Wert als „Beginn
eines neuen Blocks“ gekennzeichnet. Andernfalls wird „Gleicher Block“
gedruckt.
If PreviousValue ({Kunde.KUNDENNR}) = {Kunde.KUNDENNR} Then
formula = "Gleicher Kunde"
Else
formula = "Kunde geändert"
End If
Crystal Reports-Anwenderhandbuch 455
8
8
Funktionen
Druckstatus
Markiert Werte, die im Feld {Kunde.KUNDENNR} wiederholt werden.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
Next (Feld)
Crystal-Syntax.
Next und NextValue (Feld) sind gleichwertige Funktionen. Next kann
allerdings nur in der Crystal-Syntax und NextValue (Feld) nur in der BasicSyntax verwendet werden.
Argumente
•
Feld ist ein beliebiges gültiges Datenbank- oder Formelfeld.
Rückgabewert
Ein Feldwert desselben Typs wie das Argument.
Aktion
Next(Feld) gibt den Wert zurück, den das angegebene Feld im nächsten
Datensatz hat.
Typische Verwendungen
Sie können Next verwenden, um bei einem Datensatz festzustellen, ob er der
erste oder letzte Datensatz eines Bereichs ist, um den Anfang einer neuen
Gruppe zu ermitteln oder um auf doppelte Werte zu prüfen.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If Next({Datei.MENGE})<>0 Then
{Datei.MENGE}/2
Else
{Datei.MENGE}
Prüft den nächsten Wert des Feldes {Datei.MENGE} daraufhin, ob er ein
Nullwert ist. Ist der Wert kein Nullwert, wird er durch 2 dividiert. Ist der
Wert ein Nullwert, wird der Wert selbst zurückgegeben.
If Remainder(Next ({Datei.SERIENNUMMER}), 300) = 0 Then
"Ende des Blocks"
Else
""
456
Crystal Reports-Anwenderhandbuch
Funktionen
Druckstatus
Dividiert den nächsten Wert des Feldes {Datei.SERIENNUMMER} durch
300. Gibt es keinen Rest, markiert die Formel den aktuellen Wert als
„Ende des Blocks“. Wenn ein Rest bleibt (Else), wird keine Markierung
gedruckt. (Diese Formel unterteilt Seriennummern in Blöcke aus 300
Elementen.)
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
NextValue (Feld)
Basic-Syntax.
NextValue und Next (Feld) sind gleichwertige Funktionen. NextValue kann
allerdings nur in der Basic-Syntax und Next nur in der Crystal-Syntax
verwendet werden.
Argument
Feld ist der Name eines Datenbankfeldes.
Rückgabewert
Wert des angegebenen Feldes, wobei der Typ vom Typ des Feldes abhängt.
Aktion
NextValue gibt den Wert des nächsten Datensatzes des angegebenen Feldes
zurück.
Typische Verwendung
Sie können NextValue verwenden, um bei einem Datensatz festzustellen, ob
er erster oder letzter Datensatz eines Bereichs ist, um den Anfang einer
neuen Gruppe zu ermitteln oder um auf doppelte Werte zu prüfen.
Beispiele
Die folgenden Beispiele gelten für die Basic-Syntax:
If NextValue ({Auftragsdetails.Menge}) <> 0 Then
formula = {Auftragsdetails.Menge} / 2
Else
formula = {Auftragsdetails.Menge}
End If
Prüft den nächsten Wert im Feld {Auftragsdetails.Menge}, um
herauszufinden, ob er Null ist. Ist der Wert kein Nullwert, wird er durch 2
dividiert. Wenn er Null ist, wird der aktuelle Wert zurückgegeben.
Crystal Reports-Anwenderhandbuch 457
8
8
Funktionen
Druckstatus
If NextValue ({Aufträge.Auftrags-ID}) Mod 10 = 0 Then
formula = "Ende des Blocks"
Else
formula = "Es kommt noch mehr"
End If
Diese Formel unterteilt Auftrags-IDs in Blöcke aus 10 Elementen. Wenn
die nächste Auftrags-ID ein Vielfaches von 10 ist, wird der aktuelle Wert
als „Ende des Blocks“ gekennzeichnet. Andernfalls wird „Es kommt noch
mehr“ gedruckt.
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
IsNull (Feld)
Basic- und Crystal-Syntax.
Argumente
•
Feld ist ein beliebiges gültiges Datenbank-, Memo- oder BLOB-Feld.
Rückgabewert
Boolescher Wert
Aktion
Wertet das angegebene Feld des aktuellen Datensatzes aus und gibt TRUE
zurück, wenn das Feld einen Nullwert enthält.
Typische Verwendungen
Sie können diese Funktion in einer Datensatzauswahlformel verwenden, um
den Bericht auf Datensätze zu beschränken, die in dem angegebenen Feld
einen Wert ungleich Null aufweisen. Sie können die Funktion auch
verwenden, um das Programm zu veranlassen, immer dann einen
bestimmten Vorgang auszuführen, wenn es einen Nullwert vorfindet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
IsNull({Aufträge.Auftragssumme}) gibt die folgenden Ergebnisse zurück:
If{Aufträge.AUFTRAGSSUMME} IsNull({Aufträge.AUFTRAGSSUMME})
Angezeigter Wert
Rückgabewert
200.00
458
Crystal Reports-Anwenderhandbuch
False
Funktionen
Druckstatus
(Null)
True
100.00
False
347.12
False
Not IsNull({Aufträge.Auftragssumme})
Wird diese Funktion als Datensatzauswahlformel verwendet, werden in
den Bericht nur Datensätze aufgenommen, die im Feld
{Aufträge.Auftragssumme} einen Wert ungleich Null haben.
Anmerkungen
Einige Datenbanken unterstützen Nullwerte, andere nicht. Diese Funktion
arbeitet nicht, wenn die aktiven Datenbanken keine Null-Werte unterstützen.
Wenn die Datenbanken Nullwerte unterstützen, lässt sich die Funktion
verwenden, um auf die Nullwerte zu verweisen, die als Ergebnis eines
misslungenen Nachschlagens während des Verknüpfens erstellt werden.
Hinweis: Null (0) und leer (kein Wert oder Leerzeichen) sind keine NullWerte.
PreviousIsNull (Feld)
Basic- und Crystal-Syntax.
Argumente
•
Feld ist ein beliebiges numerisches Feld, Formel-, Memo- oder BLOBFeld des Berichts.
Rückgabewert
Boolescher Wert
Aktion
Wertet das angegebene Feld des vorherigen Datensatzes aus und gibt
WAHR zurück, wenn das Feld einen Null-Wert enthält.
Typische Verwendungen
Sie können diese Funktion verwenden, um auf den ersten Eintrag einer Liste
zu prüfen und bestimmte Vorgänge auszulösen, wenn Sie festgestellt haben,
dass der erste Eintrag erreicht ist.
Beispiele
Das folgende Beispiel gilt für die Crystal-Syntax:
If PreviousIsNull ({Mitarbeiter.Mitarbeiter-ID}) Then
"Erster Angestellter"
Crystal Reports-Anwenderhandbuch 459
8
8
Funktionen
Druckstatus
Else
""
In einer Personaldatenbank, in der das Feld {Mitarbeiter.Mitarbeiter-ID}
keine Nullwerte enthält, wird die/der erste in der Liste stehende
Angestellte markiert.
Anmerkungen
Einige Datenbanken unterstützen Nullwerte, andere nicht. Diese Funktion
arbeitet nicht, wenn die aktiven Datenbanken keine Null-Werte unterstützen.
Wenn die Datenbanken Nullwerte unterstützen, lässt sich die Funktion
verwenden, um auf die Nullwerte zu verweisen, die als Ergebnis eines
misslungenen Nachschlagens während des Verknüpfens erstellt werden.
Hinweis:
•
•
Null (0) und leer (kein Wert oder Leerzeichen) sind keine Null-Werte.
Wenn Sie diese Funktion in einer Formel verwenden, wird die Formel
zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
NextIsNull (Feld)
Basic- und Crystal-Syntax.
Argumente
•
Feld ist ein beliebiges gültiges Datenbank-, Formel-, Memo- oder BLOBFeld des Berichts.
Rückgabewert
Boolescher Wert
Aktion
Wertet das angegebene Feld des nächsten Datensatzes aus und gibt WAHR
zurück, wenn das Feld einen Null-Wert enthält.
Typische Verwendungen
Sie können diese Funktion verwenden, um den letzten Eintrag einer Liste zu
prüfen und um bestimmte Vorgänge auszulösen, wenn Sie festgestellt haben,
dass der letzte Eintrag erreicht ist.
Beispiele
Das folgende Beispiel gilt für die Crystal-Syntax:
If NextIsNull ({Mitarbeiter.Mitarbeiter-ID}) Then
"Letzter Angestellter ist erreicht"
460
Crystal Reports-Anwenderhandbuch
Funktionen
Druckstatus
Else
""
In einer Personaldatenbank, in der das Feld {Mitarbeiter.Mitarbeiter-ID}
keine Nullwerte enthält, wird die/der letzte in der Liste stehende
Angestellte markiert.
Anmerkungen
Einige Datenbanken unterstützen Nullwerte, andere nicht. Diese Funktion
arbeitet nicht, wenn die aktiven Datenbanken keine Null-Werte unterstützen.
Wenn die Datenbanken Nullwerte unterstützen, lässt sich die Funktion
verwenden, um auf die Nullwerte zu verweisen, die als Ergebnis eines
misslungenen Nachschlagens während des Verknüpfens erstellt werden.
Hinweis:
•
•
Null (0) und leer (kein Wert oder Leerzeichen) sind keine Null-Werte.
Wenn Sie diese Funktion in einer Formel verwenden, wird die Formel
zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
PageNumber
Basic- und Crystal-Syntax.
Rückgabewert
Ganze Zahl
Aktion
Seitenzahl fügt die aktuelle Seitenzahl als Feld in eine Formel ein.
Typische Verwendungen
Verwenden Sie diese Funktion, wenn das Programm zur Druckzeit die
Seitenzahl ermitteln oder diese Zahl zur Berechnung von Formelergebnissen
verwenden soll. Sie können z.B. diese Funktion verwenden, wenn das
Programm Informationen nicht auf allen, sondern nur auf bestimmten Seiten
drucken soll.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
PageNumber
Erzeugt ein Feld, das die aktuelle Seitenzahl enthält und das Sie an jeder
Stelle der Seite anordnen können. Diese Formel erzielt dasselbe
Ergebnis wie das Feld „PageNumber“ im Ordner „Spezialfelder“
(Dialogfeld „Feld-Explorer“).
Crystal Reports-Anwenderhandbuch 461
8
8
Funktionen
Druckstatus
If PageNumber > 1 Then
PageNumber
Else
0
Erzeugt ein Feld, das die Seitenzahl auf jeder Seite außer der ersten
druckt. Wenn Sie auf der Registerkarte „Zahl“ des Dialogfelds
„Benutzerdefiniertes Format“ das Kontrollkästchen „Nullen unterdrücken“
aktivieren, druckt die Formel auf der ersten Seite gar nichts aus, auch
keine 0.
Hinweis:
•
Sie benötigen kein Seitenzahlenfeld in Ihrem Bericht, um die Funktion
Seitenzahl in einer Berichtsformel verwenden zu können.
•
Wenn Sie diese Funktion in einer Formel verwenden, wird die Formel
zum Zeitpunkt des Druckens zwangsweise ausgewertet.
Weitere Informationen hierzu finden Sie unter Auswertungszeitpunkt.
TotalPageCount
Basic- und Crystal-Syntax.
Rückgabewert
Ganze Zahl
Aktion
Geht den Bericht durch und gibt die Gesamtseitenzahl zurück.
Typische Verwendungen
Mit dieser Funktion können Sie z. B. die Seitenzahl im Kopf- oder Fußbereich
des Berichts positionieren.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
TotalPageCount
Gibt 2 zurück, wenn ein Bericht insgesamt 2 Seiten hat.
Anmerkungen
Diese Funktion fügt dem Bericht einen Extra-Durchlauf hinzu.
462
Crystal Reports-Anwenderhandbuch
Funktionen
Druckstatus
PageNofM
Basic- und Crystal-Syntax.
Rückgabewert
Eine Textzeichenfolge
Aktion
PageNofM fügt Seite [aktuelle Seitenzahl] von [Gesamtseitenzahl] als Feld in
eine Formel ein.
Typische Verwendungen
Verwenden Sie diese Funktion, wenn Sie zum Zeitpunkt des Druckens die
Seitenzahl im Verhältnis zur Gesamtseitenzahl ermitteln oder diese Zahl zum
Berechnen von Formelergebnissen verwenden möchten. Sie können z.B.
diese Funktion verwenden, wenn das Programm Informationen nicht auf
allen, sondern nur auf bestimmten Seiten drucken soll.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
PageNofM
Erstellt ein Feld, das die aktuelle Seitenzahl sowie die Gesamtseitenzahl
enthält und an jeder Stelle auf der Seite eingefügt werden kann. Wenn
Sie diese Formel benutzen, ist es dem Feld PageNofM aus dem Menü
Einfügen|Spezialfeld gleichwertig.
Datensatznummer
Basic- und Crystal-Syntax.
Rückgabewert
Ganze Zahl
Aktion
RecordNumber gibt die Nummer des aktuellen Datensatzes zurück.
Typische Verwendungen
Sie können diese Funktion verwenden, um eine Datensatzauswahlformel zu
erstellen, und somit bestimmte Datensätze drucken und andere
ausschließen.
Crystal Reports-Anwenderhandbuch 463
8
8
Funktionen
Druckstatus
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
RecordNumber
Erzeugt ein Feld, das die Nummer des aktuellen Datensatzes enthält und
das Sie in Ihren Bericht einfügen können. Diese Formel erzielt dasselbe
Ergebnis wie das Feld „RecordNumber“ im Ordner „Spezialfelder“
(Dialogfeld „Feld-Explorer“).
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
GroupNumber
Basic- und Crystal-Syntax.
Rückgabewert
Ganze Zahl
Aktion
Gibt die aktuelle Gruppennummer zurück.
Typische Verwendungen
Sie können diese Funktion in einer Gruppenauswahlformel verwenden, um
bestimmte Datensätze zu drucken und andere auszuschließen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
GroupNumber
Erstellt ein Feld, das die aktuelle Gruppennummer enthält, die Sie dann
in Ihren Bericht einfügen können. Diese Formel erzielt dasselbe Ergebnis
wie das Feld „GroupNumber“ im Ordner „Spezialfelder“ (Dialogfeld „FeldExplorer“).
Hinweis: Wenn Sie diese Funktion in einer Formel verwenden, wird die
Formel zum Zeitpunkt des Druckens zwangsweise ausgewertet. Weitere
Informationen hierzu finden Sie unter Auswertungszeitpunkt.
464
Crystal Reports-Anwenderhandbuch
Funktionen
Druckstatus
RecordSelection
Basic- und Crystal-Syntax.
Rückgabewert
Die Datensatzauswahlformel
Aktion
RecordSelection fügt die Datensatzauswahlformel für den Bericht in eine
Formel ein, die Sie wiederum in Ihren Bericht einfügen können.
Typische Verwendungen
Sie können diese Funktion jederzeit verwenden, wenn Sie die
Datensatzauswahlformel im Bericht drucken oder eine Bedingung in der
Datensatzauswahlformel festlegen möchten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
RecordSelection
Erstellt ein Feld mit der Datensatzauswahlformel. Sie können das Feld dann
in Ihren Bericht einfügen. Diese Formel erzielt dasselbe Ergebnis wie das
Feld „Datensatzauswahlformel“ im Ordner „Spezialfelder“ (Dialogfeld „FeldExplorer“).
GroupSelection
Basic- und Crystal-Syntax.
Rückgabewert
Die Gruppenauswahlformel
Aktion
GroupSelection fügt die Gruppenauswahlformel für den Bericht in eine
Formel ein, die Sie wiederum in Ihren Bericht einfügen können.
Typische Verwendungen
Sie können diese Funktion verwenden, um die Gruppenauswahlformel im
Bericht zu drucken oder eine Bedingung für die Gruppenauswahlformel
einzustellen.
Crystal Reports-Anwenderhandbuch 465
8
8
Funktionen
Druckstatus
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
GroupSelection
Erstellt ein Feld, das die Gruppenauswahlformel enthält. Sie können das Feld
dann in Ihren Bericht einfügen. Diese Formel erzielt dasselbe Ergebnis wie
das Feld „Gruppenauswahlformel“ im Ordner „Spezialfelder“ (Dialogfeld
„Feld-Explorer“).
InRepeatedGroupHeader
Basic- und Crystal-Syntax.
Rückgabewert
Boolesch
Aktion
Gibt TRUE zurück, wenn der Gruppenkopfbereich auf der zweiten, dritten
usw. Seite wiederholt wird.
Typische Verwendungen
Mit dieser Funktion können Sie jedem Gruppenkopf, der angezeigt wird,
wenn eine Gruppe auf eine zweite, dritte, vierte usw. Seite umgebrochen
wurde, bedingte Formatierungen hinzufügen. Sie können z. B. dem
Gruppenkopf den Text „Fortsetzung“ hinzufügen, wenn er auf den
darauffolgenden Seiten angezeigt wird.
OnFirstRecord
Basic- und Crystal-Syntax.
Rückgabewert
Boolesch
Aktion
Die Funktion gibt TRUE zurück, wenn der Datensatz, der momentan
ausgewertet wird, der erste Datensatz des Berichts ist.
466
Crystal Reports-Anwenderhandbuch
Funktionen
Druckstatus
OnLastRecord
Basic- und Crystal-Syntax.
Rückgabewert
Boolesch
Aktion
Die Funktion gibt TRUE zurück, wenn der Datensatz, der momentan
ausgewertet wird, der letzte Datensatz des Berichts ist.
DrillDownGroupLevel
Basic- und Crystal-Syntax.
Rückgabewert
Zahl
Aktion
Gibt eine Zahl zurück, die die Gruppenebene der aktuellen Drilldownansicht
angibt. Handelt es sich nicht um eine Drilldownansicht, wird 0
zurückgegeben.
Beispiele
Wenn ein Bericht über Gruppen für "Land" und "Region" verfügt, gibt
DrillDownGroupLevel in der Ansicht ohne Drilldowns 0 zurück. Innerhalb der
Drilldownansicht für ein Land gibt DrillDownGroupLevel den Wert 1 zurück,
und innerhalb der Drilldownansicht einer Region gibt DrillDownGroupLevel
den Wert 2 zurück.
Um festzustellen, ob Sie sich in einer Drilldownansicht befinden, testen Sie,
ob DrillDownGroupLevel > 0 den Wert TRUE zurückgibt.
HierarchyLevel (GroupingLevel)
Basic- und Crystal-Syntax.
Argumente
•
GroupingLevel ist eine Funktion, durch die die Ebene einer vorhandenen
Gruppe festgelegt wird. Siehe GroupingLevel (Feld).
Crystal Reports-Anwenderhandbuch 467
8
8
Funktionen
Dokumenteigenschaften
Rückgabewert
Zahl
Aktion
Gibt eine Zahl zurück, durch die die Hierarchieebene des aktuellen
Gruppenmitglieds angegeben wird, wenn Sie die Gruppe hierarchisch sortiert
haben.
Typische Verwendungen
Wenn Sie die Position einzelner Mitglieder in einer hierarchisch sortierten
Gruppe mit Hilfe einer Formel für bedingte X-Positionen feststellen möchten,
verfolgen Sie die Ebenen anhand dieser Funktion.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
HierarchyLevel (GroupingLevel ({Mitarbeiter.MitarbeiterID}))
Gibt die Ebene zurück, auf der sich die einzelnen Mitglieder in der
Hierarchie befinden. Dabei wird vorausgesetzt, dass der Bericht
hierarchisch nach dem Feld Mitarbeiter-ID gruppiert ist.
Anmerkungen
Diese Funktion wird im zweiten Arbeitsgang ausgewertet.
Dokumenteigenschaften
Diese Funktionen geben zu einem Dokument gehörende Attributwerte
zurück.
PrintDate
PrintTime
PrintTimeZone
ModificationDate
ModificationTime
DataDate
DataTime
DataTimeZone
ReportTitle
ReportComments
468
Crystal Reports-Anwenderhandbuch
Funktionen
Dokumenteigenschaften
Filename
FileAuthor
FileCreationDate
CurrentCEUserName
CurrentCEUserID
GroupingLevel (Feld)
CurrentCEUserTimeZone
ContentLocale
SelectionLocale
PrintDate
Basic- und Crystal-Syntax.
Rückgabewert
Date-Wert
Aktion
PrintDate fügt das Datum, an dem der Bericht gedruckt wird, als Feld in eine
Formel ein.
Typische Verwendungen
Sie können diese Funktion verwenden, wenn Sie das Druckdatum in den
Bericht aufnehmen oder ein Berichtselement vom Druckdatum abhängig
machen möchten.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
PrintDate
Erstellt ein Feld, das das Datum enthält, an dem der Bericht gedruckt
wird, und das sie in Ihren Bericht einfügen können. Diese Formel erzielt
dasselbe Ergebnis wie das Feld „PrintDate“ im Ordner „Spezialfelder“
(Dialogfeld „Feld-Explorer“).
If PrintDate >= CDate(1992,01,01) Then
"Entschuldigen Sie bitte den verspäteten Bericht."
Else
""
Druckt die Entschuldigung für die Verspätung, wenn der Bericht nach
dem 1. Januar 1992 gedruckt wird. Anderenfalls wird nichts gedruckt.
Crystal Reports-Anwenderhandbuch 469
8
8
Funktionen
Dokumenteigenschaften
Anmerkungen
•
•
PrintDate und CurrentDate sind synonym.
Die Funktion „PrintDate“ gibt einen Wert der Einstellung zurück, die durch
den Befehl „Druckdatum/-zeit festlegen“ im Menü „Bericht“ im Bericht
festgelegt ist. Standardmäßig stimmt dieser Wert (sofern der Anwender
ihn nicht geändert hat) mit den Einstellungen der Datum/Uhrzeit-Option
in der Windows-Systemsteuerung überein.
PrintTime
Basic- und Crystal-Syntax.
Rückgabewert
Time-Wert
Aktion
PrintTime fügt die Zeit als Feld in eine Formel ein, wenn der Bericht gedruckt
wird.
Typische Verwendungen
Sie können diese Funktion verwenden, wenn Sie das Druckdatum in den
Bericht aufnehmen oder ein Berichtselement von der Druckzeit abhängig
machen möchten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
PrintTime
Erstellt ein Feld, das das Datum enthält, an dem der Bericht gedruckt
wird, und das sie in Ihren Bericht einfügen können. Diese Formel erzielt
dasselbe Ergebnis wie das Feld „Druckzeit“ im Ordner „Spezialfelder“
(Dialogfeld „Feld-Explorer“).
Anmerkungen
•
PrintTime und Current Time sind synonym.
PrintTimeZone
Basic- und Crystal-Syntax.
Rückgabewert
String-Wert
470
Crystal Reports-Anwenderhandbuch
Funktionen
Dokumenteigenschaften
Aktion
Durch PrintTimeZone wird die Zeitzone von Druckdatum und Druckzeit, in der
der Bericht ausgegeben wird, als TimeZoneString-Feld in eine Formel
eingefügt.
Hinweis: Weitere Informationen zu TimeZoneString-Feldern finden Sie unter
ShiftDateTime (inputDateTime, inputTimeZone, newTimeZone).
Typische Verwendungen
Sie können diese Funktion jederzeit verwenden, wenn Sie die Zeitzone der
Druckzeit im Bericht ausgeben oder ein Berichtselement von der Zeitzone der
Druckzeit abhängig machen möchten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
PrintTimeZone
Erstellt ein Feld, das die Zeitzone enthält, in der der Bericht gedruckt
wird, und das Sie in Ihren Bericht einfügen können. Diese Formel erzielt
dasselbe Ergebnis wie das Feld „Zeitzone drucken“ im Ordner
„Spezialfelder“ (Dialogfeld „Feld-Explorer“).
ModificationDate
Basic- und Crystal-Syntax.
Rückgabewert
Date-Wert
Aktion
Die Funktion ModificationDate fügt das Datum der letzten Berichtsänderung
als Feld in eine Formel ein.
Typische Verwendungen
Verwenden Sie diese Funktion, um das Datum der letzten Berichtsänderung
zu drucken oder eine Bedingung für das Änderungsdatum im Bericht
einzustellen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ModificationDate
Crystal Reports-Anwenderhandbuch 471
8
8
Funktionen
Dokumenteigenschaften
Erstellt ein Feld für Ihren Bericht, welches das Datum der letzten
Berichtsänderung zurückgibt. Diese Formel erzielt dasselbe Ergebnis wie
das Feld „ModificationDate“ im Ordner „Spezialfelder“ (Dialogfeld „FeldExplorer“).
ModificationTime
Basic- und Crystal-Syntax.
Rückgabewert
Time-Wert
Aktion
Die Funktion ModificationTime fügt die Uhrzeit der letzten Berichtsänderung
als Feld in eine Formel ein.
Typische Verwendungen
Verwenden Sie diese Funktion, um das Datum der letzten Berichtsänderung
durch die Uhrzeit zu ergänzen oder eine Bedingung für die Änderungszeit im
Bericht einzustellen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ModificationTime
Erstellt ein Feld mit der Uhrzeit der letzten Berichtsänderung, das Sie in
Ihren Bericht einfügen können. Diese Formel erzielt dasselbe Ergebnis
wie das Feld „ModificationTime“ im Ordner „Spezialfelder“ (Dialogfeld
„Feld-Explorer“).
DataDate
Basic- und Crystal-Syntax.
Rückgabewert
Date-Wert
Aktion
DataDate gibt das Datum zurück, an dem der Bericht das letzte Mal
aktualisiert wurde.
472
Crystal Reports-Anwenderhandbuch
Funktionen
Dokumenteigenschaften
Typische Verwendungen
Verwenden Sie DataDate immer dann, wenn das aktuelle Datum auf Ihrem
Bericht stehen soll.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DataDate
Gibt 06.05.98 zurück, wenn der Bericht das letzte Mal am 06.05.98
aktualisiert wurde.
DataDate
Gibt 06.12.73 zurück, wenn der Bericht das letzte Mal am 06.12.73
aktualisiert wurde.
Anmerkungen
Das verwendete Datumsformat richtet sich nach den Ländereinstellungen in
der Windows-Systemsteuerung.
DataTime
Basic- und Crystal-Syntax.
Rückgabewert
Time-Wert
Aktion
DataTime gibt die Uhrzeit zurück, zu der der Bericht das letzte Mal aktualisiert
wurde.
Typische Verwendungen
Verwenden Sie DataTime immer dann, wenn die aktuelle Zeit auf Ihrem
Bericht stehen soll.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DataTime
Gibt 12:45:23 zurück, wenn der Bericht das letzte Mal um 12:45:23
aktualisiert wurde.
DataTime
Gibt 17:26:10 zurück, wenn der Bericht das letzte Mal um 17:26:10
aktualisiert wurde.
Crystal Reports-Anwenderhandbuch 473
8
8
Funktionen
Dokumenteigenschaften
DataTimeZone
Basic- und Crystal-Syntax.
Rückgabewert
String-Wert
Aktion
Durch DataTimeZone wird die Zeitzone von Datendatum und -uhrzeit, in der
der Bericht ausgegeben wird, als TimeZoneString-Feld in eine Formel
eingefügt.
Hinweis: Weitere Informationen zu TimeZoneString-Feldern finden Sie unter
ShiftDateTime (inputDateTime, inputTimeZone, newTimeZone).
Typische Verwendungen
Sie können diese Funktion jederzeit verwenden, wenn Sie die Zeitzone der
Datenuhrzeit im Bericht ausgeben oder ein Berichtselement von der Zeitzone
der Datenuhrzeit abhängig machen möchten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DataTimeZone
Erstellt ein Feld mit der Zeitzone, in der die Daten zuletzt aktualisiert
wurden. Sie können dieses Feld in Ihren Bericht aufnehmen. Diese
Formel erzielt dasselbe Ergebnis wie das Feld „Datums-/Zeitzone“ im
Ordner „Spezialfelder“ (Dialogfeld „Feld-Explorer“).
ReportTitle
Basic- und Crystal-Syntax.
Rückgabewert
Zeichenfolge
Aktion
ReportTitle fügt den Titel des Berichts als Feld in eine Formel ein.
Typische Verwendungen
Sie können diese Funktion verwenden, um den Titel für den Bericht zu
drucken.
474
Crystal Reports-Anwenderhandbuch
Funktionen
Dokumenteigenschaften
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ReportTitle
Erstellt ein Feld, das den Titel enthält, den Sie dann in Ihren Bericht
einfügen können. Diese Formel erzielt dasselbe Ergebnis wie das Feld
„ReportTitle“ im Ordner „Spezialfelder“ (Dialogfeld „Feld-Explorer“).
ReportComments
Basic- und Crystal-Syntax.
Rückgabewert
Zeichenfolge
Aktion
ReportComments fügt die Kommentare des Berichts als Feld in eine Formel
ein.
Typische Verwendungen
Sie können diese Funktion verwenden, um den Kommentar für den Bericht zu
drucken, den Sie im Dialogfeld „Dokumenteigenschaften“ eingegeben haben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ReportComments
Erstellt ein Feld, das die Kommentare enthält, die Sie in Ihren Bericht
einfügen können. Diese Formel erzielt dasselbe Ergebnis wie das Feld
„ReportComments“ im Ordner „Spezialfelder“ (Dialogfeld „FeldExplorer“).
Filename
Basic- und Crystal-Syntax.
Rückgabewert
Zeichenfolge
Aktion
Filename fügt den Dateinamen und -pfad (in einer Formel) ein. Diese
Informationen sind als Feld im Bericht enthalten.
Crystal Reports-Anwenderhandbuch 475
8
8
Funktionen
Dokumenteigenschaften
Typische Verwendungen
Sie können diese Funktion verwenden, um den Dateinamen für den Bericht
zu drucken.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Filename
Erstellt ein Feld mit dem Dateinamen. Diese Formel erzielt dasselbe
Ergebnis wie das Feld „Dateipfad und -name“ im Ordner „Spezialfelder“
(Dialogfeld „Feld-Explorer“).
FileAuthor
Basic- und Crystal-Syntax.
Rückgabewert
Zeichenfolge
Aktion
FileAuthor fügt den Namen des Dateiautors (in einer Formel) ein. Diese
Informationen sind als Feld im Bericht enthalten.
Typische Verwendungen
Sie können diese Funktion verwenden, um den Namen des Dateiautors zu
drucken (wie im Dialogfeld „Dokumenteigenschaften“ angegeben).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FileAuthor
Erstellt ein Feld, das den Namen des Dateiautors enthält. Diese Formel
erzielt dasselbe Ergebnis wie das Feld „Dateiautor“ im Ordner
„Spezialfelder“ (Dialogfeld „Feld-Explorer“).
FileCreationDate
Basic- und Crystal-Syntax.
Rückgabewert
Zeichenfolge
476
Crystal Reports-Anwenderhandbuch
Funktionen
Dokumenteigenschaften
Aktion
FileCreationDate fügt das Erstellungsdatum für den Bericht (in einer Formel)
ein. Diese Informationen sind als Feld im Bericht enthalten.
Typische Verwendungen
Sie können diese Funktion verwenden, um das Datum, an dem der Bericht
erstellt wurde, zu drucken (wie im Dialogfeld „Dokumenteigenschaften“
angegeben).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FileCreationDate
Erstellt ein Feld mit dem Erstellungsdatum für den Bericht. Diese Formel
erzielt dasselbe Ergebnis wie das Feld „Dateierstellungsdatum“ im
Ordner „Spezialfelder“ (Dialogfeld „Feld-Explorer“).
CurrentCEUserName
Basic- und Crystal-Syntax.
Rückgabewert
Zeichenfolge
Aktion
Durch „CurrentCEUserName“ wird der Name, der bei Verwendung des
Dialogfelds „Anmeldung bei BusinessObjects Enterprise“ für die Anmeldung
bei der aktuellen Sitzung verwendet wurde, (in eine Formel) eingefügt.
Typische Verwendungen
Sie können diese Funktion jederzeit verwenden, um den Namen des derzeit
angemeldeten Anwenders auszugeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CurrentCEUserName
Erstellt ein Feld mit dem aktuellen Anwendernamen. Diese Formel erzielt
dasselbe Ergebnis wie das Feld „Name des aktuellen CE-Anwenders“ im
Ordner „Spezialfelder“ (Dialogfeld „Feld-Explorer“).
Crystal Reports-Anwenderhandbuch 477
8
8
Funktionen
Dokumenteigenschaften
CurrentCEUserID
Basic- und Crystal-Syntax.
Rückgabewert
Zahl
Aktion
Durch „CurrentCEUserID“ wird die ID des Anwenders, die bei Verwendung
des Dialogfelds „Anmeldung bei BusinessObjects Enterprise“ für die
Anmeldung bei der aktuellen Sitzung verwendet wurde, (in eine Formel)
eingefügt.
Typische Verwendungen
Sie können diese Funktion jederzeit verwenden, um die ID des derzeit
angemeldeten Anwenders auszugeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CurrentCEUserID
Erstellt ein Feld mit der aktuellen Anwender-ID. Diese Formel erzielt
dasselbe Ergebnis wie das Feld „ID des aktuellen CE-Anwenders“ im
Ordner „Spezialfelder“ (Dialogfeld „Feld-Explorer“).
GroupingLevel (Feld)
Basic- und Crystal-Syntax.
Argumente
•
"Feld" entspricht einem beliebigen gültigen Berichtfeld.
Rückgabewert
Zahl
Aktion
Durch GroupingLevel wird die Ebene Ihrer Gruppe bestimmt.
Typische Verwendungen
Verwenden Sie diese Funktion zusammen mit der Funktion HierarchyLevel
(GroupingLevel), um festzustellen, auf welcher Ebene sich Mitglieder einer
hierarchisch sortierten Gruppe befinden.
478
Crystal Reports-Anwenderhandbuch
Funktionen
Dokumenteigenschaften
CurrentCEUserTimeZone
Basic- und Crystal-Syntax.
Rückgabewert
Zeichenfolge
Aktion
Durch „CurrentCEUserTimeZone“ wird die Zeitzone des Anwenders, die bei
Verwendung des Dialogfelds „Anmeldung bei BusinessObjects Enterprise“ für
die Anmeldung bei der aktuellen Sitzung verwendet wurde, (in eine Formel)
eingefügt.
Typische Verwendungen
Sie können diese Funktion jederzeit verwenden, um die Zeitzone des derzeit
angemeldeten Anwenders auszugeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CurrentCEUserTimeZone
Erstellt ein Feld mit der Zeitzone des aktuellen Anwenders. Diese Formel
erzielt dasselbe Ergebnis wie das Feld „Zeitzone des aktuellen CEAnwenders“ im Ordner „Spezialfelder“ (Dialogfeld „Feld-Explorer“).
Anmerkungen
Zeitzonen werden durch TimeZoneString dargestellt. Weitere Informationen
zu TimeZoneString finden Sie unter ShiftDateTime (inputDateTime,
inputTimeZone, newTimeZone).
ContentLocale
Basic- und Crystal-Syntax.
Rückgabewert
Zeichenfolge
Aktion
Durch ContentLocale wird die Gebietsschemaeinstellung des Computers
eingefügt (die sich normalerweise in der Systemsteuerung unter
"Ländereinstellungen" befindet).
Crystal Reports-Anwenderhandbuch 479
8
8
Funktionen
Dokumenteigenschaften
Typische Verwendungen
Sie können diese Funktion jederzeit verwenden, um die
Gebietsschemaeinstellung des Computers zu ermitteln, auf dem der Bericht
ausgeführt wird.
Hinweis: ContentLocale ist eine Spezialvariable für die Druckzeit. Sie kann
deshalb nicht in Datensatzauswahlformeln, sondern nur in Druckzeitformeln
verwendet werden.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ContentLocale
Erstellt ein Feld mit der Gebietsschemaeinstellung des Computers, auf
dem der Bericht ausgeführt wird. Diese Formel erzielt dasselbe Ergebnis
wie das Feld „Inhaltsgebietsschema“ im Ordner „Spezialfelder“
(Dialogfeld „Feld-Explorer“).
SelectionLocale
Basic- und Crystal-Syntax.
Rückgabewert
Zeichenfolge
Aktion
Durch „SelectionLocale“ wird die Gebietsschemaeinstellung des Computers
eingefügt (die sich normalerweise in der Systemsteuerung unter
„Ländereinstellungen“ befindet).
Typische Verwendungen
Sie können diese Funktion jederzeit verwenden, um die
Gebietsschemaeinstellung des Computers zu ermitteln, auf dem der Bericht
ausgeführt wird.
Hinweis:
480
•
„SelectionLocale“ basiert auf einer Konstantenfunktion, die Sie in der
Formelsprache von Crystal Reports verwenden können (einschließlich
Datensatz- und Gruppenauswahlfilter). Diese Funktion wird nur
aktualisiert, wenn auch die Daten Ihres Berichts aktualisiert werden.
•
Wenn Sie Ihren Bericht unter BusinessObjects Enterprise zeitgesteuert
verarbeiten, verwendet diese Funktion das Gebietsschema des
jeweiligen Anwenders, um die Datenbank abzufragen.
Crystal Reports-Anwenderhandbuch
Funktionen
Warnungen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
SelectionLocale
Erstellt ein Feld mit der Gebietsschemaeinstellung des Computers, auf
dem der Bericht ausgeführt wird. Diese Formel erzielt dasselbe Ergebnis
wie das Feld „Gebietsschema der Auswahl“ im Ordner „Spezialfelder“
(Dialogfeld „Feld-Explorer“).
Warnungen
Mit Hilfe der Warnungsfunktionen können Sie Druckzeitformeln erstellen, die
auf die Ergebnisse von Berichtswarnungen verweisen. Jede Formel, die auf
eine Warnung verweist, wird zu einer Druckzeitformel.
IsAlertEnabled(Name der Warnung)
IsAlertTriggered(Name der Warnung)
AlertMessage(Name der Warnung)
IsAlertEnabled(Name der Warnung)
Basic- und Crystal-Syntax.
Argumente
•
"Name der Warnung" ist der Name einer Warnung (in
Anführungszeichen), die bereits vorliegt. Die verfügbaren Warnungen
sind in der Liste "Warnungsnamen" aufgeführt, die nach dem Erstellen
einer Warnung in der Funktionsstruktur des Formula Workshops
angezeigt wird.
Rückgabewert
Boolescher Wert, aus dem hervorgeht, ob die Warnung aktiviert ist.
Tipp: Eine Warnung können Sie aktivieren bzw. deaktivieren, indem Sie im
Menü "Bericht" auf "Alarme erstellen" klicken. Wählen Sie die gewünschte
Warnung aus, und klicken Sie auf Bearbeiten. Klicken Sie im Dialogfeld
"Warnung bearbeiten" auf die Option "Aktiviert", um sie zu markieren bzw. die
Markierung aufzuheben.
Crystal Reports-Anwenderhandbuch 481
8
8
Funktionen
Warnungen
Beispiele
Crystal-Syntax:
If IsAlertEnabled("Warnung") Then
AlertMessage("Warnung")
Else
"Warnung1 ist deaktiviert"
Basic-Syntax:
If IsAlertEnabled("Warnung") Then
Formula = AlertMessage("Warnung")
Else
Formula = "Warnung1 ist deaktiviert"
End If
Mit Hilfe dieser Formel können Sie eine Meldung ausgeben lassen, mit der
den Anwendern des Berichts angezeigt wird, ob eine Warnung aktiviert ist. So
können Sie z. B. den Musterbericht Alerting.rpt öffnen, die Formel erstellen
und „Warnung1“ durch „Sales“ (Name der Warnung im Musterbericht)
ersetzen. Ziehen Sie dann die Formel in den Berichtkopf. Die Warnung
"Sales" ist standardmäßig aktiviert, so dass die entsprechende Meldung im
Berichtkopf erscheint. Wenn Sie die Warnung nun deaktivieren (Dialogfeld
„Warnung bearbeiten“), wird im Bericht die von Ihnen in der Formel
angegebene Deaktiviert-Meldung angezeigt.
Anmerkungen
Jede Formel, die auf eine Warnung verweist, wird zu einer Druckzeitformel.
IsAlertTriggered(Name der Warnung)
Basic- und Crystal-Syntax.
Argumente
•
"Name der Warnung" ist der Name einer Warnung (in
Anführungszeichen), die bereits vorliegt. Die verfügbaren Warnungen
sind in der Liste "Warnungsnamen" aufgeführt, die nach dem Erstellen
einer Warnung in der Funktionsstruktur des Formula Workshops
angezeigt wird.
Rückgabewert
Boolescher Wert, aus dem hervorgeht, ob die Warnung „ausgelöst“ wird, also
ob die Berichtdaten die in der Formel festgelegten Bedingungen für die
Ausgabe einer Warnung erfüllen.
482
Crystal Reports-Anwenderhandbuch
Funktionen
Warnungen
Beispiele
Crystal-Syntax:
If IsAlertTriggered("Warnung1") Then
AlertMessage("Warnung")
Else
"nicht ausgelöst"
Basic-Syntax:
If IsAlertTriggered("Warnung1") Then
Formula = AlertMessage("Warnung")
Else
Formula = "nicht ausgelöst"
End If
Mit Hilfe dieser Formel können Sie Meldungen ausgeben lassen, mit denen
den Anwendern des Berichts angezeigt wird, welche Datensätze die
Berichtswarnung ausgelöst haben. So können Sie z. B. den Musterbericht
Alerting.rpt öffnen, die Formel erstellen und „Warnung1“ durch „Sales“ (Name
der Warnung im Musterbericht) ersetzen. Ziehen Sie dann die Formel in den
Detailbereich. (Unter Umständen müssen Sie die Größe des Detailbereichs
ändern, um das Formelfeld vollständig sehen zu können.) Die Formel zeigt
die Warnmeldung für Datensätze an, die die Bedingungen für die Ausgabe
der Warnmeldung erfüllen; andernfalls wird in der Formel Ihre „Nicht
ausgelöst“-Meldung angezeigt.
Anmerkungen
Jede Formel, die auf eine Warnung verweist, wird zu einer Druckzeitformel.
AlertMessage(Name der Warnung)
Basic- und Crystal-Syntax.
Argumente
•
"Name der Warnung" ist der Name einer Warnung (in
Anführungszeichen), die bereits vorliegt. Die verfügbaren Warnungen
sind in der Liste "Warnungsnamen" aufgeführt, die nach dem Erstellen
einer Warnung in der Funktionsstruktur des Formula Workshops
angezeigt wird.
Rückgabewert
•
Gibt die Warnmeldungs-Zeichenfolge für Datensätze an, die die Warnung
auslösen (also für Datensätze, die die in der Formel für die Ausgabe von
Warnmeldungen festgelegten Bedingungen erfüllen).
•
Gibt bei Datensätzen, die die Bedingungen für die Ausgabe von
Warnmeldungen nicht erfüllen, eine leere Zeichenfolge ("") zurück.
Crystal Reports-Anwenderhandbuch 483
8
8
Funktionen
Zusätzliche Funktionen
Beispiele
Crystal-Syntax:
If IsAlertEnabled("Warnung") Then
AlertMessage("Warnung")
Else
"Warnung1 ist deaktiviert"
Basic-Syntax:
If IsAlertEnabled("Warnung") Then
Formula = AlertMessage("Warnung")
Else
Formula = "Warnung1 ist deaktiviert"
End If
AlertMessage gibt in diesen Beispielen die Meldung zurück, die Sie bei der
Erstellung der Warnung definiert haben.
Anmerkungen
Jede Formel, die auf eine Warnung verweist, wird zu einer Druckzeitformel.
Zusätzliche Funktionen
DateTo2000 (Datum, Zahl)
DTSTo2000 (DatumUhrzeitFolge, Zahl)
DTSToDate (DatumUhrzeitFolge)
DTSToSeconds (DatumUhrzeitFolge)
DTSToTimeString (DatumUhrzeitFolge)
ExchGetId (Adresse)
ExchGetOrganization (Adresse)
ExchGetSite (Adresse)
ExtractString (Ursprung, Anfangszeichenfolge, Endzeichenfolge)
EventNumber (Ereignisnummer im Nachrichten-Trackingprotokoll)
ExchGetPath (Pfad)
ByteToText (Byte)
FRCurrentRatio (Umlaufvermögen, KurzfristigeVerbindlichkeiten)
FRQuickRatio (Umlaufvermögen, Bestand, KurzfristigeVerbindlichkeiten)
FRDebtEquityRatio (GesObligo, GesEigenkapital)
FREquityVsTotalAssets (GesEigenkapital, GesVermögen)
FRNetProfitMargin (NettoGewinn, Verkauf)
484
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
FRGrossProfitMargin (BruttoGewinn, Verkauf)
FROperatingProfitMargin (Gewinn, Verkauf)
FRInterestCoverage (Barmittelfluss, Zinsausgaben)
FRCashFlowVsTotalDebt (Barmittelfluss, GesSchulden)
FRReturnOnEquity (NettoGewinn, GesEigenkapital)
FRReturnOnNetFixedAssets (NettoGewinn, Reinvermögen)
FRReturnOnTotalAssets (NettoGewinn, GesVermögen)
FRReturnOnInvestedCapital (NettoGewinn, GesBankschulden,
GesEigenkapital)
FRReturnOnCommonEquity (NettoGewinn, Vorzugsdividende,
Stammaktienkapital)
FREarningsPerCommonShare (NettoGewinn, Vorzugsdividende,
AnzStammaktien)
FRAccRecTurnover (Forderungen, Verkauf, AnzTage)
FRInventoryTurnover (Bestand, Verkauf, AnzTage)
FRPriceEarningsRatio (Marktpreis, GewinnProAktie)
FRDividendYield (Dividende, Marktpreis)
Now
Picture (Zchnflge, Bild)
LooksLike (Zchnflge, Maske)
Soundex (Zchnflge)
DateTimeTo2000 (DatumUhrzeit, Zahl)
DTSToDateTime (DatumUhrzeitFolge)
DTSToTimeField (DatumUhrzeitFolge)
DateTimeToDate (dateTime)
DateTimeToTime (DatumUhrzeit)
DateTimeToSeconds (DatumUhrzeit)
DateTo2000 (Datum, Zahl)
Basic- und Crystal-Syntax.
Argumente
•
Datum: akzeptiert nur gültige Datumsfelder mit zwei- oder vierstelligen
Jahreszahlen.
Crystal Reports-Anwenderhandbuch 485
8
8
Funktionen
Zusätzliche Funktionen
•
•
Ein als Datumsfeld definiertes Datenbankfeld. Die Option
Datei|Berichtoptionen sollte auf Datums-/Zeitfeld in Datum
konvertieren eingestellt werden.
•
Die Funktion CDate (CDate(yyyy, MM, dd) ). Diese Funktion setzt
vierstellige Jahreszahlen voraus. Wenn zweistellige Jahreszahlen
eingegeben werden, geht die Funktion von 00xx aus (z.B. 98 AD).
Zahl: eine Zahl zwischen 0 und 99, die mit dem gewünschten Jahr im
Wertebereich übereinstimmt.
Rückgabewert
Ein Datumsfeld mit einer vierstelligen Jahreszahl
Aktion
•
Zweistellige Jahreszahlen (xx)
Wenn die Jahreszahl größer ist als die Zahl im Wertebereich, wird der
zweistelligen Zahl 19 vorangestellt (19xx). Wenn die Jahreszahl kleiner
als oder gleich der Zahl im Wertebereich ist, wird 20 vorangestellt (20xx).
•
4stellige Jahreszahlen (19xx)
Wenn die beiden letzten Stellen in der Jahreszahl größer als die Zahl im
Wertebereich sind, wird die Jahreszahl im Datumsfeld beibehalten
(19xx). Wenn die beiden letzten Stellen in der Jahreszahl kleiner als oder
gleich der Zahl im Wertebereich sind, werden die ersten beiden Stellen in
20 (20xx) umgeändert. Wenn die ersten beiden Stellen im Jahresfeld 20
entsprechen, wird die Jahreszahl im Datumsfeld beibehalten (20xx).
Hinweis:
•
Beachten Sie, dass das Datum nicht geändert wird, wenn die Jahreszahl
kleiner als oder gleich 1899 und größer als oder gleich 100 ist.
•
Es hängt vom verwendeten Datenbanktreiber ab, ob die Daten Ihrer
Datenbank als zwei- oder vierstellige (19xx) Jahreszahlen angesehen
werden. Das Ergebnis der Formel sollte in beiden Fällen das Gleiche
sein.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
In diesem Beispiel ist der Wert im Wertebereich größer als die Jahreszahl, die
deshalb in 20XX umgeändert wird.
DateTo2000(CDate(1993,12,12), 99)
sollte 12.12.2093 zurückgeben
486
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
In diesem Beispiel ist der Wert im Wertebereich kleiner als die Jahreszahl, die
deshalb nicht umgeändert wird.
DateTo2000(CDate(1993,12,12), 92)
sollte 12.12.1993 zurückgeben
Andere Beispiele
Im folgenden Beispiel hat die Funktion keine Auswirkungen auf das Datum.
DateTo2000(CDate(1899,12,12), 99)
sollte 12.12.1899 zurückgeben
Im folgenden Beispiel hat die Funktion keine Auswirkungen auf das Datum.
DateTo2000(CDate(100,12,12), 99)
sollte 12.12.100 zurückgeben
Einige Datenbanken verwalten die Jahreszahl in einem Datum als
zweistelliges Feld, so dass das Datumsfeld in diesen Beispielen simuliert
wird.
DateTo2000(CDate(98,12,12), 99)
sollte 12.12.2098 zurückgeben
DateTo2000(CDate(98,12,12), 97)
sollte 12.12.1998 zurückgeben
DateTo2000(CDate(9,12,12), 10)
sollte 12.12.2009 zurückgeben
DateTo2000(CDate(1,12,12), 0)
sollte 12.12.1901 zurückgeben
DTSTo2000 (DatumUhrzeitFolge, Zahl)
Basic- und Crystal-Syntax.
Argumente
•
DatumUhrzeitFolge: akzeptiert nur gültige Datumsfelder mit zwei- oder
vierstelligen Jahreszahlen.
•
Ein als Datumsfeld definiertes Datenbankfeld. Die Option
„Berichtoptionen“ (Menü „Datei“) sollte auf „Datum-Uhrzeit-Felder in
Datum-Uhrzeit-Zeichenfolgen konvertieren“ eingestellt werden.
•
Ein als Zeichenfolgefeld definiertes Datenbankfeld, das jedoch ein
Datum enthält.
•
Eine in folgendem Format eingegebene Datums-/UhrzeitZeichenfolge: „jjjj/MM/tt HH:mm:ss.00“ oder „jj/MM/tt HH:mm:ss:00“,
z. B. „1997/04/11 12:12:12.00“ oder „97/04/11 12:12:12.00“.
Crystal Reports-Anwenderhandbuch 487
8
8
Funktionen
Zusätzliche Funktionen
•
Zahl: eine Zahl zwischen 0 und 99, die mit dem gewünschten Jahr im
Wertebereich übereinstimmt.
Rückgabewert
Eine DateTime-Zeichenfolge mit einer vierstelligen Jahreszahl.
Aktion
•
Zweistellige Jahreszahlen (xx)
Wenn die Jahreszahl größer ist als die Zahl im Wertebereich, wird der
zweistelligen Zahl 19 vorangestellt (19xx). Wenn die Jahreszahl kleiner
als oder gleich der Zahl im Wertebereich ist, wird 20 vorangestellt (20xx).
•
4stellige Jahreszahlen (19xx)
Wenn die beiden letzten Stellen in der Jahreszahl größer als die Zahl im
Wertebereich sind, wird die Jahreszahl im Datumsfeld beibehalten
(19xx). Wenn die beiden letzten Stellen in der Jahreszahl kleiner oder
gleich der Zahl im Wertebereich sind, werden die ersten beiden Stellen in
20 (20xx) umgeändert. Wenn die ersten beiden Stellen im Jahresfeld 20
entsprechen, wird die Jahreszahl im Datumsfeld beibehalten (20xx).
Hinweis: Beachten Sie, dass das Datum nicht geändert wird, wenn die
Jahreszahl kleiner als oder gleich 1899 und größer als oder gleich 100
ist.
Beispiele
Hinweis: Damit die folgenden Beispiele korrekte Ergebnisse zurückgeben,
müssen Sie auf Ihrem Computer das folgende Datumsformat eingestellt
haben: „JJ.MM.TT“ oder „JJJJ.MM.TT“.
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
In diesem Beispiel ist der Wert im Wertebereich größer als die Jahreszahl, die
deshalb in 20XX umgeändert wird.
DTSTo2000(ToText(CDateTime(1988,12,12,12,12,12)), 90)
Gibt 12.12.88 12:12:12 zurück.
In diesem Beispiel ist der Wert im Wertebereich kleiner als die Jahreszahl, die
deshalb nicht umgeändert wird.
DTSTo2000(ToText(CDateTime(1984,12,12,1,2,3)), 83)
Gibt 12.12.1984 01:02:03 am zurück.
488
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
Andere Beispiele
Nachstehend sind Datumsbeispiele aufgeführt, auf die die Funktion keinen
Einfluss nimmt.
DTSTo2000(ToText(CDateTime(1899,12,12,1,2,3)), 99)
Gibt 12.12.1899 01:02:03 zurück.
DTSTo2000(ToText(CDateTime(1899,12,12)), 99)
Gibt 12.12.1899 12:00:00 zurück.
DTSTo2000(ToText(CDateTime(100,12,12,1,2,3)), 99)
Gibt 12.12.100 01:02:03 zurück.
Einige Datenbanken verwalten die Jahreszahl in einem Datum als
zweistelliges Feld, so dass das Datumsfeld in diesen Beispielen simuliert
wird.
DTSTo2000(ToText(CDateTime(98,12,12,1,2,3)), 99)
sollte 12.12.2098 01:02:03 am zurückgeben.
DTSTo2000(ToText(CDateTime(98,12,12,1,2,3)), 97)
sollte 12.12.1998 01:02:03 am zurückgeben.
DTSTo2000(ToText(CDateTime(98,12,12)), 97)
Gibt 12.12.98 12:00:00 zurück.
DTSTo2000(ToText(CDateTime(9,12,12,1,2,3)), 10)
sollte 12.12.2009 1:02:03 am zurück.
DTSTo2000(ToText(CDateTime(1,12,12,1,2,3)), 0)
Gibt 12.12.1901 01:02:03 am zurück.
DTSToDate (DatumUhrzeitFolge)
Basic- und Crystal-Syntax.
Argumente
•
"DatumUhrzeitFolge" ist eine Zeichenfolge mit einem Datums- und TimeWert.
Rückgabewert
Date-Wert
Aktion
Wertet die angegebene Zeichenfolge aus und gibt nur das Datum zurück.
Crystal Reports-Anwenderhandbuch 489
8
8
Funktionen
Zusätzliche Funktionen
Beispiele
DTSToDate ("2000/01/13 11:30:15")
Gibt den Date-Wert 13. Januar 2000 zurück. Der Monat muss als 01
eingegeben werden, nicht nur als 1.
Anmerkungen
Der von der Funktion DTSToDate zurückgegebene Date-Wert entspricht dem
Datum um Mitternacht. Der Time-Wert wird entfernt, und Mitternacht dient als
implizite Zeit des Datums. Dies ist nur dann von Bedeutung, wenn Sie
Operationen mit dem zurückgegebenen Datum durchführen, z.B. einen TimeWert hinzufügen.
Hinweis: Verwenden Sie für neue Formeln die Funktionen CDate oder
DateValue anstelle von DTSToDate. Die Funktionen CDate und DateValue
können mehr Zeichenfolgetypen konvertieren.
DTSToSeconds (DatumUhrzeitFolge)
Basic- und Crystal-Syntax.
Argumente
•
DatumUhrzeitFolge ist eine Zeichenfolge mit einem Datums- und TimeWert.
Rückgabewert
Ganze Zahl
Aktion
Wertet die angegebene Zeichenfolge aus und wandelt den Time-Wert in die
Anzahl der Sekunden von 00:00:00 (Mitternacht) bis zur angegebenen Zeit
um.
Beispiele
Das folgende Beispiel gilt für die Crystal-Syntax:
DTSToSeconds("2000/01/13 11:30:15")
Gibt 41415 zurück.
Anmerkungen
Anstelle der Funktion DTSToSeconds können Sie folgende Funktionen
verwenden:
DateDiff ("s", #12:00 am#, CDateTime (CDate(0,0,0), CTime
(DateTimeString)))
490
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
Mit dem oben aufgeführten Ausdruck können mehr Zeichenfolgetypen
konvertiert werden.
DTSToTimeString (DatumUhrzeitFolge)
Basic- und Crystal-Syntax.
Argumente
•
DatumUhrzeitFolge ist eine Zeichenfolge mit einem Datums- und TimeWert.
Rückgabewert
Zeitzeichenfolgewert
Aktion
Wertet die angegebene Zeichenfolge aus und gibt nur den Time-Wert in
militärischem Format (00:00:00) zurück.
Beispiele
Das folgende Beispiel gilt für die Crystal-Syntax:
DTSToTime(„1998/10/25 08:35:30“)
Gibt 08:35:30 zurück.
ExchGetId (Adresse)
Basic- und Crystal-Syntax.
Argument
Adresse ist die Adresse des Absenders/Empfängers (Datentyp Zeichenfolge)
Rückgabewert
Zeichenfolge
Aktion
Die Funktion ExchGetID (Adresse) bestimmt zunächst, ob die Adresse das
X.500- oder das X.400-Format hat. Im Anschluss daran ermittelt die Funktion
die Kennung (ID).
•
Liegt das Feld im X500-Format vor, ermittelt die Funktion den Wert der
letzten Instanz des „CN=“-Codes (Groß-/Kleinschreibung wird nicht
berücksichtigt).
Crystal Reports-Anwenderhandbuch 491
8
8
Funktionen
Zusätzliche Funktionen
•
Liegt das Feld im X400-Format vor, ermittelt die Funktion die SMTP- oder
MS-Kennung (ID).
Hinweis: Die Felder müssen die Adresstypstandards der verarbeitenden
Funktionen erfüllen.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Feld = /o=Business Objects/ou=CRYSTALNT
/cn=Configuration/cn=Servers/cn=ESPRESSO/cn=Fredt
ExchGetID({Feld})
Gibt „Fredt“ zurück.
Feld = c=US; a= ;p=Microsoft; o=apps-wga;
dda:[email protected]
ExchGetID({Feld})
Gibt „[email protected]“ zurück.
Feld = c=US; a= ;p=Microsoft; o=apps-wga; dda:ms=com/
crystal/James
ExchGetID({Feld})
Gibt „com/crystal/James“ zurück.
ExchGetOrganization (Adresse)
Basic- und Crystal-Syntax.
Argumente
•
Adresse ist die Adresse des Absenders/Empfängers (Datentyp
Zeichenfolge)
Rückgabewert
Zeichenfolge
Aktion
Die Funktion bestimmt zunächst, ob die Adresse das X.500- oder das X.400Format hat. Im Anschluss daran ermittelt die Funktion den Namen des
Unternehmens.
•
492
Liegt das Feld im X500-Format vor, ermittelt die Funktion den Wert der
letzten Instanz des „/O=“-Codes (Groß-/Kleinschreibung wird nicht
berücksichtigt).
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
•
Liegt das Feld im X400-Format vor, ermittelt die Funktion den Wert der
Instanz des „P=“-Codes (Groß-/Kleinschreibung wird nicht
berücksichtigt).
Hinweis: Die Felder müssen die Adresstypstandards der verarbeitenden
Funktionen erfüllen.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Feld = /o=Business Objects/ou=CRYSTALNT/
cn=Configuration/
cn=Servers/cn=ESPPRESSO/cn=Fredt
ExchGetOrganization({Feld})
Rückgabewert „Business Objects“
Feld = c=US; a= ; p=Microsoft; o=apps-wga; da:ms=com/
Rich/James.
ExchGetOrganization({Feld})
Gibt „Microsoft“ zurück.
Feld = c=US; a= ;p=Microsoft; o=apps-wga;
da:[email protected].
ExchGetOrganization({Feld})
Gibt „Microsoft“ zurück.
ExchGetSite (Adresse)
Basic- und Crystal-Syntax.
Argument(e)
Adresse ist die Adresse des Absenders/Empfängers (Datentyp Zeichenfolge)
Rückgabewert
Zeichenfolge
Aktion
Die Funktion bestimmt zunächst, ob die Adresse das X.500- oder das X.400Format hat. Im Anschluss daran ermittelt die Funktion den Namen des
Standorts (Site).
•
Liegt das Feld im X500-Format vor, ermittelt die Funktion den Wert der
letzten Instanz des „/OU=“-Codes (Groß-/Kleinschreibung wird nicht
berücksichtigt).
Crystal Reports-Anwenderhandbuch 493
8
8
Funktionen
Zusätzliche Funktionen
•
Liegt das Feld im X400-Format vor, ermittelt die Funktion den Wert der
Instanz des „O=“-Codes (Groß-/Kleinschreibung wird nicht
berücksichtigt).
Hinweis: Die Felder müssen die Adresstypstandards der verarbeitenden
Funktionen erfüllen.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Feld = /o=Business Objects/ou=CRYSTALNT/
cn=Configuration/cn=Servers/cn=ESPRESSO/cn=Fredt
ExchGetSite({Feld})
Gibt „CRYSTALNT“ zurück.
c=US;a= ;p=Microsoft;o=apps-wga;dda:[email protected].
ExchGetSite({Feld})
Gibt „apps-wga“ zurück.
ExtractString (Ursprung, Anfangszeichenfolge,
Endzeichenfolge)
Basic- und Crystal-Syntax.
Argumente
•
•
•
Ursprung: Zeichenfolge
Anfangszeichenfolge: Zeichenfolge
Endzeichenfolge: Zeichenfolge
Rückgabewert
Zeichenfolge
Aktion
Die Funktion gibt das erste Vorkommen (in der Ursprungszeichenfolge) einer
Zeichenfolge zurück, die mit der Anfangszeichenfolge beginnt und mit der
Endzeichenfolge endet. Wenn die Endzeichenfolge nicht gefunden wird,
lautet die zurückgegebene Zeichenfolge wie folgt: beginnend mit der
Anfangszeichenfolge bis zum Ende der Zeichenfolge.
494
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
StringVar strTest := "James und crystal";
ExtractString (strTest,"J","s");
Gibt "ame" zurück.
StringVar strTest := "James und crystal";
ExtractString (strTest, "", "s");
Gibt „Jame“ zurück.
EventNumber (Ereignisnummer im NachrichtenTrackingprotokoll)
Basic- und Crystal-Syntax.
Argumente
•
Ereignisnummer ist ein Zahlenwert, der einem von Exchange
protokollierten Ereignis entspricht.
Rückgabewert
Zeichenfolge
Aktion
Die Funktion gibt für das von Exchange protokollierte Ereignis die geeignete
Textbeschreibung zurück, die mit der Ereignisnummer übereinstimmt. Falls
keine geeignete Textbeschreibung für eine Ereignisnummer vorhanden ist,
wird die Meldung „Unbekanntes Ereignis“ zurückgegeben, wobei die
Ereignisnummer hinter der Meldung in Klammern erscheint.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
EventNumber (1000)
Gibt „Lokale Lieferung“ zurück.
EventNumber (4)
Gibt „Message Submission“ zurück.
EventNumber (0)
Gibt „Nachricht erhalten“ zurück.
EventNumber (100)
Gibt „Unbekanntes Ereignis(100)“ zurück.
Crystal Reports-Anwenderhandbuch 495
8
8
Funktionen
Zusätzliche Funktionen
ExchGetPath (Pfad)
Basic- und Crystal-Syntax.
Argumente
•
Pfad ist die Adresse des Absenders/Empfängers (Datentyp
Zeichenfolge)
Rückgabewert
Zeichenfolge
Aktion
Die Funktion gibt die in einem Adressfeld enthaltenen Containerinformationen
zurück.
•
Liegt die Adresse im X500-Format vor, gibt die Funktion alle
Informationen von der ersten Instanz des „CN=“-Codes bis zur letzten
Instanz des „CN=“-Codes zurück. Gibt es nur eine Instanz des „CN=“Codes, gibt die Funktion den Wert NULL zurück.
•
Liegt die Adresse im X400-Format vor, gibt die Funktion alle „OU*=“Codes zurück (die sich zwischen den „P=“- und „O=“-Codes befinden).
•
Wenn die Adresse mit „DDA:“ beginnt, gibt die Funktion alle
Informationen zurück, die auf den „DDA:“-Code folgen. folgen.
•
Ist das Feld dagegen leer, gibt die Funktion den Text „UNKNOWN
ADDRESS“ zurück.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Feld = /o=Business Objects/ou=CRYSTALNT/
cn=Configuration/cn=Servers/cn=ESPRESSO/cn=Fredt
ExchGetPath ({Feld})
Gibt „cn=Configuration/cn=Servers/cn=ESPRESSO“ zurück.
Feld = c=US; a= ; p=Microsoft; ou1=James;
ou2=RichCorp; o=apps-wga;
dda:[email protected]
ExchGetPath ({Feld})
Gibt „ou1=James; ou2=Richcorp“ zurück.
Feld = DDA:MS=CRYSTAL/JAMES/crystal
ExchGetpath9{Feld})
Gibt „MS=CRYSTAL/JAMES/crystal“ zurück.
496
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
ByteToText (Byte)
Basic- und Crystal-Syntax.
Argumente
•
„Byte“ ist eine Zahl, die Speicherplatz in Byte angibt.
Rückgabewert
Zeichenfolge
Aktion
Diese Funktion gibt eine Zeichenfolgenbeschreibung der übergebenen Zahl
zurück.
•
Ist der Wert des Arguments kleiner als 1024, wird das Ergebnis in Byte
zurückgegeben.
•
Liegt der Wert des Arguments zwischen 1024 und 1048576, wird das
Ergebnis in Kilobyte zurückgegeben.
•
In allen anderen Fällen wird das Ergebnis in Megabyte zurückgegeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
ByteToText(1000)
Gibt „1000 bytes“ zurück.
ByteToText(345555)
Gibt „337KB“ zurück.
FRCurrentRatio (Umlaufvermögen,
KurzfristigeVerbindlichkeiten)
Basic- und Crystal-Syntax.
Format
FRCurrentRatio(Umlaufvermögen,
KurzfristigeVerbindlichkeiten)
Argumente
•
"Umlaufvermögen" ist eine Zahl oder Formel.
Umlaufvermögen besteht in der Regel aus Barmitteln, Forderungen,
Bestand, transitorischen Aktiva und börsengängigen Geldanlagen auf
kurze Sicht in der Bilanz eines Unternehmens.
Crystal Reports-Anwenderhandbuch 497
8
8
Funktionen
Zusätzliche Funktionen
•
"KurzfristigeVerbindlichkeiten" ist eine Zahl oder Formel.
Kurzfristige Verbindlichkeiten bestehen in der Regel aus Bankkrediten,
Verbindlichkeiten, zahlbaren Dividenden/Einkommenssteuer und den
langfristigen Darlehen, die innerhalb eines Jahres fällig sind, in der Bilanz
eines Unternehmens.
Aktion
FRCurrentRatio gibt das Verhältnis zwischen Umlaufvermögen und
kurzfristigen Verbindlichkeiten zurück (z. B. CurrentRatio = Umlaufvermögen /
KurzfristigeVerbindlichkeiten).
Typische Verwendungen
Mit diesem Verhältnis wird die Kurzzeitliquidität eines Unternehmens
gemessen. Dabei wird versucht zu ermitteln, inwieweit der Wert des
Umlaufvermögens den Wert kurzfristiger Verbindlichkeiten überschreitet. Je
höher die Kennzahl, desto höher die Liquidität.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRCurrentRatio(5, 2.5)
Gibt 2 zurück.
FRCurrentRatio(4.2, 2)
Gibt 2.1 zurück.
FRCurrentRatio(1.1, 2.2)
Gibt 0,5 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRCurrentRatio ist eines von zahlreichen Finanzanalysetools, mit denen die
finanzielle Lage eines Unternehmens interpretiert werden kann. Wie bei allen
Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden. Es sollte
lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor zur
Beurteilung der finanziellen Lage eines Unternehmens.
498
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FRQuickRatio (Umlaufvermögen, Bestand,
KurzfristigeVerbindlichkeiten)
Basic- und Crystal-Syntax.
Format
FRQuickRatio(Umlaufvermögen, Bestand,
KurzfristigeVerbindlichkeiten)
Argumente
•
"Umlaufvermögen" ist eine Zahl oder Formel. Das Umlaufvermögen
besteht in der Regel aus Barmitteln, Forderungen, Bestand,
transitorischen Aktiva und börsengängigen Geldanlagen auf kurze Sicht
in der Bilanz eines Unternehmens.
•
"Bestand" ist eine Zahl oder Formel. Der Bestand umfasst in der Regel
Rohstoffe, unfertige Erzeugnisse und Enderzeugnisse in der Bilanz eines
Unternehmens.
•
"KurzfristigeVerbindlichkeiten" ist eine Zahl oder Formel. Kurzfristige
Verbindlichkeiten bestehen in der Regel aus Bankkrediten,
Verbindlichkeiten, zahlbaren Dividenden/Einkommenssteuer und den
langfristigen Darlehen, die innerhalb eines Jahres fällig sind, in der Bilanz
eines Unternehmens.
Aktion
FRQuickRatio gibt das Verhältnis zwischen Umlaufvermögen (abzüglich
Bestand) und kurzfristigen Verbindlichkeiten zurück (z. B. QuickRatio =
(Umlaufvermögen - Bestand) / KurzfristigeVerbindlichkeiten).
Crystal Reports-Anwenderhandbuch 499
8
8
Funktionen
Zusätzliche Funktionen
Typische Verwendungen
Da die Umwandlung von Rohmaterial in Enderzeugnisse Zeit in Anspruch
nimmt und Enderzeugnisse im Prinzip keine flüssigen Mittel darstellen, wird
der Bestand bei der Berechnung der Liquidität des Unternehmens anhand
dieser Relation aus dem Umlaufvermögen entfernt. Die Kennzahl gibt an,
inwieweit kurzfristige Verbindlichkeiten durch Bargeld und gleichwertige Mittel
gedeckt sind. Je höher die Kennzahl, desto höher die Liquidität.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRQuickRatio(7.2, 2.2, 2)
Gibt 2.5 zurück.
FRQuickRatio(3, 1.5, 3)
Gibt 0,5 zurück.
Hinweis:
•
Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass keine
negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
•
Der Formula Workshop prüft automatisch, ob Bestand kleiner oder gleich
Umlaufvermögen ist. Wenn Umlaufvermögen kleiner ist als Bestand,
erhalten Sie eine Fehlermeldung.
Anmerkungen
FRQuickRatio ist eines von zahlreichen Finanzanalysetools, mit denen die
finanzielle Lage eines Unternehmens interpretiert werden kann. Wie bei allen
Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden. Es sollte
lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor zur
Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
500
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
FRDebtEquityRatio (GesObligo, GesEigenkapital)
Basic- und Crystal-Syntax.
Format
FRDebtEquityRatio(GesObligo, GesEigenkapital)
Argumente
•
"GesObligo" ist eine Zahl oder Formel. Das Gesamtobligo besteht in der
Regel aus allen kurz- und langfristigen Verbindlichkeiten in der Bilanz
eines Unternehmens. Einige Analytiker berücksichtigen jedoch nur kurzund langfristige Bankschulden beim Berechnen dieser Kennzahl.
•
"GesEigenkapital" ist eine Zahl oder Formel. Das Gesamteigenkapital
besteht in der Regel aus Stammaktien, Vorzugsaktien, nicht aus
Jahresüberschüssen stammenden Rücklagen und Gewinnrücklagen in
der Bilanz eines Unternehmens.
Aktion
FRDebtEquityRatio gibt das Verhältnis zwischen Gesamtobligo und
Gesamteigenkapital zurück (z.B. DebtEquityRatio = GesObligo /
GesEigenkapital).
Typische Verwendungen
Mit diesem Verhältnis wird die Kapitalstruktur des Unternehmens gemessen.
Dabei kann die Relation zwischen Gesamtobligo/-schulden und Eigenkapital
eines Unternehmens ermittelt werden, aus der sich Rückschlüsse darauf
ziehen lassen, ob das Unternehmen zu viele Kredite aufnimmt. Je höher die
Kennzahl, desto größer das finanzielle Risiko.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRDebtEquityRatio(2.6, 1.3)
Gibt 2 zurück.
FRDebtEquityRatio(1.5, 2.5)
Gibt 0.6 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Crystal Reports-Anwenderhandbuch 501
8
8
Funktionen
Zusätzliche Funktionen
Anmerkungen
FRDebtEquityRatio ist eines von zahlreichen Finanzanalysetools, mit denen
die finanzielle Lage eines Unternehmens interpretiert werden kann. Wie bei
allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden. Es sollte
lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor zur
Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FREquityVsTotalAssets (GesEigenkapital, GesVermögen)
Basic- und Crystal-Syntax.
Format
FREquityVsTotalAssets(GesEigenkapital, GesVermögen)
Argumente
•
"GesEigenkapital" ist eine Zahl oder Formel. Das Gesamteigenkapital
besteht in der Regel aus Stammaktien, Vorzugsaktien, nicht aus
Jahresüberschüssen stammenden Rücklagen und Gewinnrücklagen in
der Bilanz eines Unternehmens.
•
"GesVermögen" ist eine Zahl oder Formel. Das Gesamtvermögen
besteht in der Regel aus dem Gesamtumlaufvermögen, Reinvermögen
und allen anderen Vermögenswerten in der Bilanz eines Unternehmens.
Aktion
FREquityVsTotalAssets gibt das Verhältnis zwischen Gesamteigenkapital und
Gesamtvermögen zurück (z. B. EquityVsTotalAssets = GesEigenkapital /
GesVermögen).
Typische Verwendungen
Mit diesem Verhältnis wird die Finanzstruktur eines Unternehmens
gemessen. Je höher die Kennzahl, desto stärker die Kapitalstruktur des
Unternehmens und desto besser seine Kapitalisierung.
502
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FREquityVsTotalAssets(2, 4)
Gibt 0,5 zurück.
FREquityVsTotalAssets(2.82, 18.8)
Gibt 0.15 zurück.
Hinweis:
•
Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass keine
negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
•
"GesEigenkapital" muss kleiner oder gleich "GesVermögen", da Sie
sonst eine Fehlermeldung erhalten.
Anmerkungen
FREquityVsTotalAssets ist eines von zahlreichen Finanzanalysetools, mit
denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FRNetProfitMargin (NettoGewinn, Verkauf)
Basic- und Crystal-Syntax.
Format
FRNetProfitMargin(NettoGewinn, Verkauf)
Argumente
•
"NettoGewinn" ist eine Zahl oder Formel. "NettoGewinn" zeigt das
Einkommen eines Unternehmens aus dem Verkauf seiner Produkte oder
Dienstleistungen abzüglich der Ausgabenposten in einem Geschäftsjahr
an. Der Nettogewinn entspricht dem Saldo in der Gewinn- und
Verlustrechnung eines Unternehmens.
Crystal Reports-Anwenderhandbuch 503
8
8
Funktionen
Zusätzliche Funktionen
Einige Analytiker verwenden den Nettogewinn vor Sonderposten bzw.
Einkommenssteuern unter Umständen zur Berechnung dieser Kennzahl.
•
"Verkauf" ist eine Zahl oder Formel. "Verkauf" zeigt die Gesamtverkäufe
in dem Zeitraum, über den sich die Gewinn- und Verlustrechnung eines
Unternehmens erstreckt, an.
Aktion
FRNetProfitMargin gibt das Verhältnis zwischen Nettogewinn und Verkauf
zurück (z. B. NetProfitMargin = NettoGewinn / Verkauf).
Typische Verwendungen
Mit diesem Verhältnis wird gemessen, wie gewinnbringend ein Unternehmen
arbeitet. Je höher das Ergebnis, desto gewinnbringender arbeitet das
Unternehmen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRNetProfitMargin(3, 50)
Gibt 0.06 zurück.
FRNetProfitMargin(5.6, 100)
Gibt 0.056 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRNetProfitMargin ist eines von zahlreichen Finanzanalysetools, mit denen
die finanzielle Lage eines Unternehmens interpretiert werden kann. Wie bei
allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden. Es sollte
lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor zur
Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
504
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
FRGrossProfitMargin (BruttoGewinn, Verkauf)
Basic- und Crystal-Syntax.
Format
FRGrossProfitMargin(BruttoGewinn, Verkauf)
Argumente
•
"BruttoGewinn" ist eine Zahl oder Formel. Der Bruttogewinn entspricht in
der Regel dem Verkauf abzüglich der Selbstkosten in der Gewinn- und
Verlustrechnung eines Unternehmens.
•
"Verkauf" ist eine Zahl oder Formel. "Verkauf" zeigt die Gesamtverkäufe
in dem Zeitraum, über den sich die Gewinn- und Verlustrechnung eines
Unternehmens erstreckt, an.
Aktion
FRGrossProfitMargin gibt das Verhältnis zwischen Bruttogewinn und Verkauf
zurück (z. B. GrossProfitMargin = BruttoGewinn/Verkauf).
Typische Verwendungen
Mit diesem Verhältnis wird der Gewinn gemessen, der aus dem
Warenverkauf vor Abzug aller anderen Ausgaben entsteht. Das Ergebnis
variiert von Industriezweig zu Industriezweig und richtet sich danach, wie die
Buchhaltung die in den Selbstkosten enthaltenen Fertigungskosten
handhabt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRGrossProfitMargin(3.4, 50)
Gibt 0.068 zurück.
FRGrossProfitMargin(36.15, 120.5)
Gibt 0.3 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Crystal Reports-Anwenderhandbuch 505
8
8
Funktionen
Zusätzliche Funktionen
Anmerkungen
FRGrossProfitMargin ist eines von zahlreichen Finanzanalysetools, mit
denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FROperatingProfitMargin (Gewinn, Verkauf)
Basic- und Crystal-Syntax.
Format
FROperatingProfitMargin(Gewinn, Verkauf)
Argumente
•
"Betriebsgewinn" ist eine Zahl oder Formel. Der Betriebsgewinn
entspricht in der Regel dem Bruttogewinn abzüglich aller Verwaltungs-,
Vertriebs- und Allgemeinkosten in der Gewinn- und Verlustrechnung
eines Unternehmens.
•
"Verkauf" ist eine Zahl oder Formel. "Verkauf" zeigt die Gesamtverkäufe
in dem Zeitraum, über den sich die Gewinn- und Verlustrechnung eines
Unternehmens erstreckt, an.
Aktion
FROperatingProfitMargin gibt das Verhältnis zwischen Betriebsgewinn und
Verkauf zurück (z. B. OperatingProfitMargin = Betriebsgewinn/Verkauf).
Typische Verwendungen
Mit der Funktion FROperatingProfitMargin wird die Umsatzrendite nach
Abzug aller direkt damit verbundenen Kosten gemessen. Das Ergebnis lässt
Rückschlüsse darauf ziehen, wie rentabel die Geschäfte eines
Unternehmens sind. Je höher das Ergebnis, desto höher die Rentabilität des
Unternehmens.
506
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FROperatingProfitMargin(3.3, 30)
Gibt 0.11 zurück.
FROperatingProfitMargin(11, 16.5)
Gibt 0.6875 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FROperatingProfitMargin ist eines von zahlreichen Finanzanalysetools, mit
denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FRInterestCoverage (Barmittelfluss, Zinsausgaben)
Basic- und Crystal-Syntax.
Format
FRInterestCoverage(Barmittelfluss, Zinsausgaben)
Argumente
•
"Barmittelfluss" ist eine Zahl oder Formel. Meistens entspricht CashFlow
dem Nettogewinn des Unternehmens zuzüglich aller Ausgabenposten,
für die keine Barmittel erforderlich sind (z. B. Abschreibungen,
Kapitalverlust usw.), und abzüglich aller bargeldlosen Gewinne (z. B.
Kapitalveräußerungsgewinne usw.). Diese Informationen sind in der
Gewinn- und Verlustrechnung und dem Bericht zur Änderung der
Finanzlage eines Unternehmens enthalten.
Crystal Reports-Anwenderhandbuch 507
8
8
Funktionen
Zusätzliche Funktionen
•
"Zinsausgaben" ist eine Zahl oder Formel. Zinsausgaben ist eine Zahl
oder Formel, die die Gesamtzinsausgaben anzeigt, die in der Gewinnund Verlustrechnung eines Unternehmens offengelegt werden.
Aktion
FRInterestCoverage gibt das Verhältnis zwischen Barmittelfluss und
Zinsausgaben zurück (z.B. InterestCoverage = Barmittelfluss/Zinsausgaben).
Typische Verwendungen
Mit diesem Verhältnis wird die Fähigkeit eines Unternehmens, die
Zinsbelastungen für seine Schulden mit dem Barmittelfluss aus seinen
Transaktionen zu zahlen, gemessen. Die Kennzahl entspricht in der Regel
einer Anzahl von Malen (z.B. 3X usw.). Je höher das Ergebnis, desto größer
die Fähigkeit des Unternehmens, seine Zinszahlungen auch bei einem
Anstieg des Zinssatzes einzuhalten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRInterestCoverage(120, 50)
Gibt 2.40 zurück.
FRInterestCoverage(30, 100)
Gibt 0.3 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRInterestCoverage ist eines von zahlreichen Finanzanalysetools, mit denen
die finanzielle Lage eines Unternehmens interpretiert werden kann. Wie bei
allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden. Es sollte
lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor zur
Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
508
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
FRCashFlowVsTotalDebt (Barmittelfluss, GesSchulden)
Basic- und Crystal-Syntax.
Format
FRCashFlowVsTotalDebt(Barmittelfluss, GesSchulden)
Argumente
•
"Barmittelfluss" ist eine Zahl oder Formel. Meistens entspricht CashFlow
dem Nettogewinn des Unternehmens zuzüglich aller Ausgabenposten,
für die keine Barmittel erforderlich sind (z. B. Abschreibungen,
Kapitalverlust usw.), abzüglich aller bargeldlosen Gewinne (z. B.
Kapitalveräußerungsgewinne usw.). Diese Informationen sind in der
Gewinn- und Verlustrechnung und dem Bericht zur Änderung der
Finanzlage eines Unternehmens enthalten.
•
"GesSchulden" ist eine Zahl oder Formel. In der Regel sind die
kurzfristigen und langfristigen Gesamtbankdarlehen darunter zu
verstehen. Einige Analytiker betrachten sogar alle Kurz- und
Langzeitverbindlichkeiten als Teil der Gesamtschulden. Diese
Informationen sind in der Gewinn- und Verlustrechnung eines
Unternehmens enthalten.
Aktion
FRCashFlowVSTotalDebt gibt das Verhältnis zwischen Cashflow und
Gesamtverschuldung zurück (z. B. CashFlowVsTotalDebt = Cashflow /
Gesamtverschuldung).
Typische Verwendungen
Mit diesem Verhältnis wird die Fähigkeit eines Unternehmens, seine
Gesamtschulden durch in Transaktionen erzeugtem Barmittelfluss zu
bezahlen, gemessen. In der Regel entspricht das Ergebnis einer Anzahl von
Malen. Je höher das Ergebnis, desto größer die Fähigkeit des
Unternehmens, seine Schulden abzubezahlen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRCashFlowVsTotalDebt(45, 30)
Gibt 1.5 zurück.
Crystal Reports-Anwenderhandbuch 509
8
8
Funktionen
Zusätzliche Funktionen
FRCashFlowVsTotalDebt(74.4, 93)
Gibt 0.8 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRCashFlowVsTotalDebt ist eines von zahlreichen Finanzanalysetools, mit
denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FRReturnOnEquity (NettoGewinn, GesEigenkapital)
Basic- und Crystal-Syntax.
Format
FRReturnOnEquity(NettoGewinn, GesEigenkapital)
Argumente
510
•
"NettoGewinn" ist eine Zahl oder Formel. "NettoGewinn" zeigt das
Einkommen eines Unternehmens aus dem Verkauf seiner Produkte oder
Dienstleistungen abzüglich der Ausgabenposten in einem Geschäftsjahr
an. Der Nettogewinn entspricht dem Saldo in der Gewinn- und
Verlustrechnung eines Unternehmens. Einige Analytiker verwenden den
Nettogewinn vor Sonderposten bzw. Einkommenssteuern unter
Umständen zur Berechnung dieser Kennzahl.
•
"GesEigenkapital" ist eine Zahl oder Formel. Das Gesamteigenkapital
besteht in der Regel aus Stammaktien, Vorzugsaktien, nicht aus
Jahresüberschüssen stammenden Rücklagen und Gewinnrücklagen in
der Bilanz eines Unternehmens.
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
Aktion
FRReturnOnEquity gibt das Verhältnis zwischen Nettogewinn und
Gesamteigenkapital zurück (z. B. ReturnOnEquity = Nettogewinn /
Gesamteigenkapital).
Typische Verwendungen
Mit diesem Verhältnis wird der Ertrag aus dem für den Unternehmensbetrieb
erforderlichen Gesamtkapital gemessen. Je höher das Ergebnis, desto höher
der Ertrag.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRReturnOnEquity(34.5,150)
Gibt 0.23 zurück.
FRReturnOnEquity(12, 15)
Gibt 0.8 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRReturnOnEquity ist eines von zahlreichen Finanzanalysetools, mit denen
die finanzielle Lage eines Unternehmens interpretiert werden kann. Wie bei
allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden. Es sollte
lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor zur
Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
Crystal Reports-Anwenderhandbuch 511
8
8
Funktionen
Zusätzliche Funktionen
FRReturnOnNetFixedAssets (NettoGewinn,
Reinvermögen)
Basic- und Crystal-Syntax.
Format
FRReturnOnNetFixedAssets(NettoGewinn, Reinvermögen)
Argumente
•
"NettoGewinn" ist eine Zahl oder Formel. "NettoGewinn" zeigt das
Einkommen eines Unternehmens aus dem Verkauf seiner Produkte oder
Dienstleistungen abzüglich der Ausgabenposten in einem Geschäftsjahr
an. Der Nettogewinn entspricht dem Saldo in der Gewinn- und
Verlustrechnung eines Unternehmens. Einige Analytiker verwenden den
Nettogewinn vor Sonderposten bzw. Einkommenssteuern unter
Umständen zur Berechnung dieser Kennzahl.
•
"Reinvermögen" ist eine Zahl oder Formel. Sie entspricht dem
Gesamtanlagevermögen abzüglich der aufgelaufenen Abschreibung in
der Bilanz eines Unternehmens.
Aktion
FRReturnOnNetFixedAssets gibt das Verhältnis zwischen Nettogewinn und
Reinvermögen zurück (z.B. ReturnOnNetFixedAssets = NettoGewinn/
Reinvermögen).
Typische Verwendungen
Mit diesem Verhältnis wird der Ertrag aus investiertem Anlagevermögen
gemessen. Diese Kennzahl wird in der Regel dazu verwendet, die
Rentabilität von Fertigungsbetrieben oder Dienstleistungsunternehmen zu
ermitteln, die ihr Anlagevermögen investieren müssen, um ihre
Dienstleistungen anbieten zu können (z. B. Fluggesellschaften usw.). Je
höher die Kennzahl, desto höher der Ertrag.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRReturnOnNetFixedAssets(34, 50)
Gibt 0.68 zurück.
512
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
FRReturnOnNetFixedAssets(50.4, 42)
Gibt 1,2 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRReturnOnNetFixedAssets ist eines von zahlreichen Finanzanalysetools,
mit denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FRReturnOnTotalAssets (NettoGewinn, GesVermögen)
Basic- und Crystal-Syntax.
Format
FRReturnOnTotalAssets(NettoGewinn, GesVermögen)
Argumente
•
"NettoGewinn" ist eine Zahl oder Formel. "NettoGewinn" zeigt das
Einkommen eines Unternehmens aus dem Verkauf seiner Produkte oder
Dienstleistungen abzüglich der Ausgabenposten in einem Geschäftsjahr
an. Der Nettogewinn entspricht dem Saldo in der Gewinn- und
Verlustrechnung eines Unternehmens. Einige Analytiker verwenden den
Nettogewinn vor Sonderposten bzw. Einkommenssteuern unter
Umständen zur Berechnung dieser Kennzahl.
•
"GesVermögen" ist eine Zahl oder Formel. Das Gesamtvermögen
besteht in der Regel aus dem Gesamtumlaufvermögen, Reinvermögen
und allen anderen Vermögenswerten in der Bilanz eines Unternehmens.
Crystal Reports-Anwenderhandbuch 513
8
8
Funktionen
Zusätzliche Funktionen
Aktion
FRReturnOnTotalAssets gibt das Verhältnis zwischen Nettogewinn und
Gesamtvermögen zurück (z.B. ReturnOnTotalAssets = NettoGewinn/
GesVermögen).
Typische Verwendungen
Mit diesem Verhältnis wird der Ertrag aus investiertem Gesamtkapital
gemessen. Das Ergebnis gibt Aufschluss darüber, wie rentabel das
Unternehmen sein Gesamtkapital investiert. Je höher das Ergebnis, desto
höher die Rentabilität des Unternehmens.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRReturnOnTotalAssets(23, 100)
Gibt 0.23 zurück.
FRReturnOnTotalAssets(442, 340)
Gibt 1,3 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRReturnOnTotalAssets ist eines von zahlreichen Finanzanalysetools, mit
denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
514
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
FRReturnOnInvestedCapital (NettoGewinn,
GesBankschulden, GesEigenkapital)
Basic- und Crystal-Syntax.
Format
FRReturnOnInvestedCapital(NettoGewinn, GesBankschulden,
GesEigenkapital)
Argumente
•
"NettoGewinn" ist eine Zahl oder Formel. "NettoGewinn" zeigt das
Einkommen eines Unternehmens aus dem Verkauf seiner Produkte oder
Dienstleistungen abzüglich der Ausgabenposten in einem Geschäftsjahr
an. Der Nettogewinn entspricht dem Saldo in der Gewinn- und
Verlustrechnung eines Unternehmens. Einige Analytiker verwenden den
Nettogewinn vor Sonderposten bzw. Einkommenssteuern unter
Umständen zur Berechnung dieser Kennzahl.
•
"GesBankschulden" ist eine Zahl oder Formel. "GesBankschulden" zeigt
alle kurz- und langfristigen Bankschulden eines Unternehmens an. Diese
Informationen werden in der Bilanz eines Unternehmens offengelegt.
•
"GesEigenkapital" ist eine Zahl oder Formel. Das Gesamteigenkapital
besteht in der Regel aus Stammaktien, Vorzugsaktien, nicht aus
Jahresüberschüssen stammenden Rücklagen und Gewinnrücklagen in
der Bilanz eines Unternehmens.
Aktion
FRReturnOnInvestedCapital gibt das Verhältnis zwischen Nettogewinn und
investiertem Kapital (d. h. Gesamtbankschulden zuzüglich
Gesamteigenkapital) zurück (z.B. ReturnOnInvestedCapital = NettoGewinn/
(GesBankschulden + GesEigenkapital)).
Typische Verwendungen
Mit diesem Verhältnis wird der Ertrag aus dem investierten Kapital eines
Unternehmens gemessen, einschließlich aller Bankdarlehen und des
Gesamteigenkapitals des Unternehmens. Je höher der Ertrag, desto besser.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRReturnOnInvestedCapital(23, 17, 33)
Gibt 0.46 zurück.
Crystal Reports-Anwenderhandbuch 515
8
8
Funktionen
Zusätzliche Funktionen
FRReturnOnInvestedCapital(54, 23, 17)
Gibt 1.35 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRReturnOnInvestedCapital ist eines von zahlreichen Finanzanalysetools,
mit denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FRReturnOnCommonEquity (NettoGewinn,
Vorzugsdividende, Stammaktienkapital)
Basic- und Crystal-Syntax.
Format
FRReturnOnCommonEquity (NettoGewinn, Vorzugsdividende,
Stammaktienkapital)
Argumente
•
•
516
"NettoGewinn" ist eine Zahl oder Formel. "NettoGewinn" zeigt das
Einkommen eines Unternehmens aus dem Verkauf seiner Produkte oder
Dienstleistungen abzüglich der Ausgabenposten in einem Geschäftsjahr
an. Der Nettogewinn entspricht dem Saldo in der Gewinn- und
Verlustrechnung eines Unternehmens. Einige Analytiker verwenden den
Nettogewinn vor Sonderposten bzw. Einkommenssteuern unter
Umständen zur Berechnung dieser Kennzahl.
"Vorzugsdividende" ist eine Zahl oder Formel. "Vorzugsdividende" zeigt
die insgesamt an die Vorzugsaktieninhaber in der betreffenden
Abrechnungsperiode ausgeschüttete Dividende an. Diese Informationen
sind in der Gewinn- und Verlustrechnung und dem Bericht zur Änderung
der Finanzlage eines Unternehmens enthalten. Sie können auch der
Unternehmensbilanz entnommen werden.
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
•
Stammaktienkapital ist eine Zahl oder Formel. "Stammaktienkapital" zeigt
in der Regel die Summe aller Stammaktien, eingebrachten Gewinne und
Gewinnrücklagen an. Diese Informationen werden in der Bilanz eines
Unternehmens offengelegt.
Aktion
FRReturnOnCommonEquity gibt das Verhältnis zwischen dem an
Stammaktieninhaber ausschüttbaren Nettogewinn (NettogewinnVorzugsdividende) und Stammaktienkapital zurück (z. B.
ReturnOnCommonEquity = (Nettogewinn - Vorzugsdividende) /
Stammaktienkapital).
Typische Verwendungen
Mit diesem Verhältnis wird der Gewinn aus Stammaktienkapital gemessen.
Beachten Sie, dass Dividenden von Vorzugsaktien nicht bei der Berechnung
berücksichtigt werden. Je höher das Ergebnis, desto höher der Ertrag.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRReturnOnCommonEquity(340, 40, 600)
Gibt 0,5 zurück.
FRReturnOnCommonEquity(245, 50, 150)
Gibt 1,3 zurück.
Hinweis:
• Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass keine
negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
• Der Formula Workshop prüft automatisch, ob NettoGewinn kleiner als
Vorzugsdividende ist. Wenn der NettoGewinn kleiner ist als die
Vorzugsdividende, erhalten Sie eine Fehlermeldung.
Anmerkungen
FRReturnOnCommonEquity ist eines von zahlreichen Finanzanalysetools,
mit denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
Crystal Reports-Anwenderhandbuch 517
8
8
Funktionen
Zusätzliche Funktionen
FREarningsPerCommonShare (NettoGewinn,
Vorzugsdividende, AnzStammaktien)
Basic- und Crystal-Syntax.
Format
FREarningsPerCommonShare(NettoGewinn, Vorzugsdividende,
AnzStammaktien)
Argumente
•
"NettoGewinn" ist eine Zahl oder Formel. "NettoGewinn" zeigt das
Einkommen eines Unternehmens aus dem Verkauf seiner Produkte oder
Dienstleistungen abzüglich der Ausgabenposten in einem Geschäftsjahr
an. Der Nettogewinn entspricht dem Saldo in der Gewinn- und
Verlustrechnung eines Unternehmens. Einige Analytiker verwenden den
Nettogewinn vor Sonderposten bzw. Einkommenssteuern unter
Umständen zur Berechnung dieser Kennzahl.
•
"Vorzugsdividende" ist eine Zahl oder Formel. "Vorzugsdividende" zeigt
die insgesamt an die Vorzugsaktieninhaber in der betreffenden
Abrechnungsperiode ausgeschüttete Dividende an. Diese Informationen
sind in der Gewinn- und Verlustrechnung und dem Bericht zur Änderung
der Finanzlage eines Unternehmens enthalten. Sie können auch der
Unternehmensbilanz entnommen werden.
•
"AnzStammaktien" ist eine Zahl oder Formel. Die Anzahl der
Stammaktien entspricht in der Regel der Anzahl ausgegebener und in
den Händen des Publikums befindlicher Aktien. Diese Informationen sind
in der Bilanz eines Unternehmens enthalten.
Aktion
FREarningsPerCommonShare gibt das Verhältnis zwischen dem an
Stammaktieninhaber ausschüttbaren Nettogewinn (NettoGewinnVorzugsdividende) und der Anzahl von Stammaktien zurück (z.B.
EarningPerCommonShare = (NettoGewinn - Vorzugsdividende)/
AnzStammaktien).
Typische Verwendungen
Mit diesem Verhältnis wird die Gewinnberechtigung für eine Stammaktie
berechnet. Die Kennzahl wird Seite an Seite mit der Dividende pro
Stammaktie verwendet, um das Dividendenausschüttungsverhältnis zu
ermitteln. Einige Analytiker führen unter Umständen eine Berechnung des
Gewinns je Aktie unter Annahme einer Gewinnverbreiterung durch. Sie
müssen dabei alle Stammaktien berücksichtigen, die aus den Vorzugsaktien
mit Umtauschrecht umgewandelt werden.
518
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FREarningsPerCommonShare(550000, 50000, 100000)
Gibt 5 zurück.
FREarningsPerCommonShare(450000, 10000, 2000000)
Gibt 0,22 zurück.
Hinweis:
•
Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass keine
negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
•
Der NettoGewinn kann nicht kleiner sein als die Vorzugsdividende, da
Sie sonst eine Fehlermeldung erhalten.
Anmerkungen
FREarningsPerCommonShare ist eines von zahlreichen Finanzanalysetools,
mit denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FRAccRecTurnover (Forderungen, Verkauf, AnzTage)
Basic- und Crystal-Syntax.
Format
FRAccRecTurnover(Forderungen, Verkauf, AnzTage)
Argumente
•
"Forderungen" ist eine Zahl oder Formel. "Forderungen" zeigt die
Gesamtforderungen in der Bilanz eines Unternehmens an.
•
"Verkauf" ist eine Zahl oder Formel. "Verkauf" zeigt die Gesamtverkäufe
in dem Zeitraum, über den sich die Gewinn- und Verlustrechnung eines
Unternehmens erstreckt, an.
Crystal Reports-Anwenderhandbuch 519
8
8
Funktionen
Zusätzliche Funktionen
•
"AnzTage"ist eine Zahl oder Formel. In der Regel ist es die Anzahl von
Tagen, die einem Geschäftsjahr entspricht. Einige Analytiker verwenden
360 Tage, andere 365. Der Standardwert für diese Funktion ist 360.
Aktion
FRAccRecTurnover gibt den durchschnittlichen Forderungsumschlag in
Tagen zurück (z. B. AccRecTurnover = (Forderungen/Verkauf) * 360).
Typische Verwendungen
Mit diesem Verhältnis wird der Forderungsumschlag in Tagen gemessen.
Eine niedrigere Kennzahl gibt einen höheren Umschlag an, d. h., die
Forderungen werden unmittelbar nachdem sie gemacht worden sind bezahlt.
Ein höherer Umschlag ist in der Regel einem niedrigeren Umschlag
vorzuziehen, der möglicherweise auf zweifelhafte Forderungen hindeutet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRAccRecTurnover(100, 600, 360)
Gibt 60 zurück.
FRAccRecTurnover(200, 300, 360)
Gibt 240 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRAccRecTurnover ist eines von zahlreichen Finanzanalysetools, mit denen
die finanzielle Lage eines Unternehmens interpretiert werden kann. Wie bei
allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden. Es sollte
lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor zur
Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
520
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
FRInventoryTurnover (Bestand, Verkauf, AnzTage)
Basic- und Crystal-Syntax.
Format
FRInventoryTurnover(Bestand, Verkauf, AnzTage)
Argumente
•
Bestand ist eine Zahl oder Formel. Sie zeigt den Gesamtbestand in der
Bilanz eines Unternehmens an. In der Regel fallen darunter Rohstoffe,
unfertige Erzeugnisse und Enderzeugnisse.
•
"Verkauf" ist eine Zahl oder Formel. "Verkauf" zeigt die Gesamtverkäufe
in dem Zeitraum, über den sich die Gewinn- und Verlustrechnung eines
Unternehmens erstreckt, an.
•
"AnzTage"ist eine Zahl oder Formel. Sie entspricht in der Regel der
Anzahl von Tagen in einem Geschäftsjahr. Einige Analytiker verwenden
360 Tage, andere 365. Der Standardwert für diese Funktion ist 360.
Aktion
FRInventoryTurnover gibt die durchschnittliche Umschlagshäufigkeit des
Warenbestands in Tagen zurück (z. B. InventoryTurnover = (Bestand/Verkauf)
* 360).
Typische Verwendungen
Mit diesem Verhältnis wird die Umschlagshäufigkeit des Warenbestands in
Tagen gemessen. Eine niedrige Kennzahl stellt einen höheren Umschlag dar,
d. h., der Warenbestand wird schnell verkauft und nicht lange im Lager
gehalten. Eine hohe Umschlagshäufigkeit wird in der Regel einer niedrigen
vorgezogen, die unter Umständen auf einen veralteten und überholten
Warenbestand hindeutet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRInventoryTurnover(40, 400, 360)
Gibt 36 zurück.
FRInventoryTurnover(36, 90, 360)
Gibt 144 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Crystal Reports-Anwenderhandbuch 521
8
8
Funktionen
Zusätzliche Funktionen
Anmerkungen
FRInventoryTurnover ist eines von zahlreichen Finanzanalysetools, mit
denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FRPriceEarningsRatio (Marktpreis, GewinnProAktie)
Basic- und Crystal-Syntax.
Format
FRPriceEarningsRatio(Marktpreis, GewinnProAktie)
Argumente
•
"Marktpreis" ist eine Zahl oder Formel. "Marktpreis" zeigt den aktuellen
Marktpreis der Stammaktien eines Unternehmens an. Diese
Informationen sind für die Öffentlichkeit zugänglich, wenn die Aktien des
Unternehmens an der Börse gehandelt werden.
•
"GewinnProAktie" ist eine Zahl oder Formel. Sie zeigt den Gewinn an,
der auf jede Stammaktie zuzurechnen ist. Diese Informationen werden in
den Finanzberichten eines Unternehmens offengelegt.
Aktion
FRPriceEarningsRatio gibt das Verhältnis zwischen Marktpreis und Gewinn
pro Aktie zurück (z.B. PriceEarningsRatio = Marktpreis/GewinnProAktie (12
Monate)).
Typische Verwendungen
Dieses Verhältnis dient als Vergleich zwischen dem Marktpreis einer Aktie
und ihrem Gewinnpotential. Anhand dieser nützlichen Kennzahl lässt sich die
Ertragsfähigkeit eines Unternehmens leicht mit der eines anderen
vergleichen.
522
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRPriceEarningsRatio(3.5, 2)
Gibt 1,75 zurück.
FRPriceEarningsRatio(27, 1.5)
Gibt 18 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRPriceEarningsRatio ist eines von zahlreichen Finanzanalysetools, mit
denen die finanzielle Lage eines Unternehmens interpretiert werden kann.
Wie bei allen Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden.
Es sollte lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor
zur Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
FRDividendYield (Dividende, Marktpreis)
Basic- und Crystal-Syntax.
Format
FRDividendYield(Dividende, Marktpreis)
Argumente
•
Dividende ist eine Zahl oder Formel. Sie zeigt die nachgewiesene
Jahresdividende pro Stammaktie an.
•
"Marktpreis" ist eine Zahl oder Formel. "Marktpreis" zeigt den aktuellen
Marktpreis der Stammaktien eines Unternehmens an. Diese
Informationen sind für die Öffentlichkeit zugänglich, wenn die Aktien des
Unternehmens an der Börse gehandelt werden.
Crystal Reports-Anwenderhandbuch 523
8
8
Funktionen
Zusätzliche Funktionen
Aktion
FRDividendYield gibt das Verhältnis zwischen Dividende und Marktpreis
zurück (z. B. DividendYield = Dividende/Marktpreis).
Typische Verwendungen
Dieses Verhältnis ermöglicht es einem Kapitalanleger, Rückschlüsse auf die
Rendite für Stammaktien zu ziehen. Dabei wird ein oberflächlicher Vergleich
der Aktien verschiedener Unternehmen angestellt. Einige Analytiker
verwenden diese Funktion unter Umständen auch zur Berechnung der
Rendite für Vorzugsaktien.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
FRDividendYield(3,25)
Gibt 0,12 zurück.
FRDividendYield(5, 80)
Gibt 0,0625 zurück.
Hinweis: Die Argumente dürfen nicht negativ sein. Stellen Sie sicher, dass
keine negativen Werte verwendet werden, bevor Sie die Argumente
weitergeben.
Anmerkungen
FRDividendYield ist eines von zahlreichen Finanzanalysetools, mit denen die
finanzielle Lage eines Unternehmens interpretiert werden kann. Wie bei allen
Kennzahlen muss dieses Tool mit Vorsicht eingesetzt werden. Es sollte
lediglich als Anhaltspunkt dienen, nicht als ausschließlicher Faktor zur
Beurteilung der finanziellen Lage eines Unternehmens.
Keine der Kennzahlen kann allein für Finanzanalysen verwendet werden, und
es bestehen keine festen Regeln bezüglich der Ergebnisse der Kennzahlen.
Die Ergebnisse variieren nicht nur von Industriezweig zu Industriezweig,
sondern weichen auch zwischen verschiedenen Unternehmen innerhalb
desselben Industriezweigs und in verschiedenen Abrechnungsperioden
voneinander ab. Sie sollten deshalb nur für einen relativen Vergleich und
Trendanalysen verwendet und nicht als absolute Tatsache betrachtet werden.
Now
Basic- und Crystal-Syntax.
Rückgabewert
Textzeichenfolge
524
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
Aktion
Now druckt die aktuelle Uhrzeit auf einen Bericht. Die Uhrzeit wird anhand
der internen Uhr Ihres Computers ermittelt.
Typische Verwendung
Verwenden Sie Now immer dann, wenn die aktuelle Zeit auf Ihrem Bericht
stehen soll.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Jetzt
Gibt 04:45:18 zurück, wenn Sie mit dem Drucken des Berichts um
04:45:18 beginnen.
Jetzt
Gibt 17:14:33 zurück, wenn Sie mit dem Drucken des Berichts um
17:14:33 beginnen.
Anmerkungen
•
Das verwendete Uhrzeitformat richtet sich nach den Ländereinstellungen
in der Windows-Systemsteuerung.
•
Die Funktion Current Time gibt denselben Wert zurück wie die Funktion
Now, die Bestandteil der früheren Versionen vom Programm ist. Now
wird nur bereitgestellt, um die Kompatibilität zu Berichten zu
gewährleisten, die mit früheren Versionen vom Programm erstellt
wurden. Für neue Berichte sollten Sie die Funktion CurrentTime
verwenden.
Picture (Zchnflge, Bild)
Basic- und Crystal-Syntax.
Argumente
•
Zchnflge ist eine Textzeichenfolge, die entsprechend des Argumentes
Bild formatiert wird.
•
Bild ist eine Textzeichenfolge, die festlegt, wie die Zeichen der
Zeichenfolge Zchnflge gedruckt werden sollen.
Rückgabewert
Zeichenfolge
Crystal Reports-Anwenderhandbuch 525
8
8
Funktionen
Zusätzliche Funktionen
Aktion
Picture (Zchnflge, Bild) druckt eine Zeichenfolge oder Werte einer
Textzeichenfolge in einem vorgegebenen Format.
Typische Verwendung
Picture kann verwendet werden, um die Zeichenfolge „2065555555“ im
Format einer Telefonnummer als „(206) 555-5555“ oder andere
Zeichenfolgen in festen Formaten zu drucken. Ein Datenbankfeld kann nur
als Zeichenfolge verwendet werden, wenn seine Länge fest und bekannt ist.
Hinweis: Im Argument Bild können keine Sternchen als Platzhalter
verwendet werden. Wenn Sie ein Sternchen in das Argument einfügen, wird
es in der resultierenden Zeichenfolge auch als Sternchen angezeigt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Picture ({Kunde.FAX},"(xxx) xxx-xxxx" )
Druckt die Werte des Feldes {Kunde.FAX} im Format (805) 555-5555,
(313) 555-2555 usw.
Picture ({Kunde.Region}, "[xx]")
Druckt die Werte des Feldes {Kunde.Region} im Format [NW], [MV] usw.
Die Größe der Zeichenfolge, die Sie im Parameter "Picture" festlegen, d.h.
die Anzahl der verwendeten x-Zeichen, muss größer oder gleich dem
höchsten Wert der Zeichenfolge sein. Um beispielsweise Ortsnamen in
eckigen Klammern auszugeben, verfahren Sie wie folgt:
Picture ({Kunde.ORT},
„[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]“)
Auf diese Weise würde [Hamburg],[Bremen],[Berlin] usw. ausgegeben. Die
Funktion Picture passt die Größe der Daten in den einzelnen Zeilen an.
Hinweis: Es können maximal 252 x-Zeichen eingegeben werden.
Kommentare
526
•
Der Wert des Argumentes Bild muss in Anführungszeichen gesetzt
werden.
•
Verwenden Sie in der jeweiligen Maske das Zeichen „x“, um die Zeichen
der Zeichenfolge zuzuordnen.
•
Wenn ein Datenbankfeld Klammern oder andere Formatierungen, z. B.
(xxx) xxx-xxxx, enthält, kann es nicht in xxxxxxx konvertiert werden. Die
Klammern und der Bindestrich werden weiterhin angezeigt.
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
LooksLike (Zchnflge, Maske)
Basic- und Crystal-Syntax.
Argumente
•
Zchnflge ist die Textzeichenfolge oder das Feld, das die
Textzeichenfolgen enthält, die mit der Maske verglichen werden.
•
Maske ist eine Textzeichenfolge, die die Maske angibt, mit der der Wert
des Argumentes Zchnflge verglichen wird.
Rückgabewert
Boolescher Wert
Aktion
Ermöglicht Ihnen die Suche nach Feldwerten mit einem standardmäßigen
DOS-Platzhalter (? = Platzhalter für ein Zeichen, * = Platzhalter für beliebig
viele Zeichen). Dazu wird eine Zeichenfolge mit einer Maske verglichen, die
einen oder mehrere Platzhalter enthält. Die Funktion gibt True zurück, wenn
die Zeichenfolge mit der Maske übereinstimmt. Ist dies nicht der Fall, gibt die
Funktion den Wert False zurück.
Typische Verwendungen
Verwenden Sie diese Funktion, wenn Sie anhand von zwei oder mehr
Feldwerten, die zwar unterschiedlich geschrieben sind, aber ähnlich
aussehen (deren Aufbau also prinzipiell ähnlich ist), Datensätze suchen
möchten.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
LooksLike ("Snyder","Sn?der")
Gibt TRUE (Wahr) zurück.
LooksLike ("Schneider","S?der")
Gibt FALSE zurück.
LooksLike ("Schneider", "S?????der")
Gibt TRUE (Wahr) zurück.
Das folgende Beispiel gilt für die Crystal-Syntax:
If LooksLike ({customer.CONTACT FIRST NAME},"?ris" Then
{Kunde.KONTAKT, VORNAME}
Else
""
Crystal Reports-Anwenderhandbuch 527
8
8
Funktionen
Zusätzliche Funktionen
Gibt Cris, Kris und Iris, aber nicht Chris zurück (vorausgesetzt, diese
Werte befinden sich alle im Datenbankfeld {Kunde.KONTAKT
VORNAME}).
Soundex (Zchnflge)
Basic- und Crystal-Syntax.
Argumente
•
Zchnflge ist eine von zwei oder mehreren Zeichenfolgen, die ähnlich
klingen.
Rückgabewert
Textzeichenfolge
Aktion
Soundex (Zchnflge) wertet eine Textzeichenfolge aus und gibt einen aus vier
Zeichen bestehenden Wert zurück, der den Klang der Zeichenfolge
symbolisiert.
Typische Verwendungen
Verwenden Sie diese Funktion, wenn Sie ausgehend von zwei oder mehr
Feldwerten, die unterschiedlich geschrieben, aber ähnlich ausgesprochen
werden, nach Datensätzen suchen möchten.
Mit dieser Funktion kann auch nach falsch geschriebenen Kundennamen
gesucht werden.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
If Soundex{customer.LAST NAME} = Soundex ("Snider") Then
{Kunde.NACHNAME}
Else
""
Führt die Funktion Soundex mit allen Werten im Feld
{Kunde.NACHNAME} aus und druckt nur die Werte, deren Soundex-Wert
dem Soundex-Wert des Namens Snider entspricht. Diese Formel gibt die
Namen Sneider, Schneider, Snyder und Snider zurück, sofern diese in
der Datenbank enthalten sind.
Anmerkungen
•
528
Die Zeichenfolge Zchnflge muss in Anführungszeichen stehen.
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
•
Soundex kann nur mit Werten verwendet werden, die mit demselben
Buchstaben beginnen. Soundex gibt z.B. für Chris und Cris (C620)
denselben Wert zurück, aber nicht für Kris (K620).
•
Soundex erstellt einen Code, der sich aus dem ersten Zeichen der
Zeichenfolge sowie den drei nächsten Zeichen ergibt, die wie folgt
ausgewertet werden:
•
Zeichen, die keine Buchstaben sind (z.B. Ziffern und Satzzeichen),
werden zu einer -1.
•
Die Buchstaben a, e, i, o, u, y, h und w werden ignoriert (es sei denn,
der jeweilige Buchstabe ist das erste Zeichen der ursprünglichen
Zeichenfolge).
•
•
•
•
•
•
Die Buchstaben b, f, p und v werden zu einer 1.
Die Buchstaben c, g, j, k, q, s, x und z werden zu einer 2.
Die Buchstaben d und t werden zu einer 3.
Der Buchstabe l wird zu einer 4.
Die Buchstaben m und n werden zu einer 5.
Der Buchstabe r wird zu einer 6.
•
Falls der sich ergebende Code nur 2 oder 3 Zeichen lang ist, füllt
Soundex den Code mit Nullen auf vier Zeichen auf. Beispielsweise
werden bei dem Namen Helga nur die Buchstaben H, l und g
umgewandelt (Hlg), so dass Soundex den Code H420 zurückgibt.
•
Ist der sich ergebende Code länger als 4 Zeichen, werden alle Zeichen
nach dem vierten Zeichen ignoriert. Beispielsweise können bei dem
Namen Patrick die Buchstaben P, t, r, c und k umgewandelt werden
(Ptrck), aber der von Soundex zurückgegebene Code besteht nur aus 4
Zeichen: P362.
DateTimeTo2000 (DatumUhrzeit, Zahl)
Basic- und Crystal-Syntax.
Argumente
•
DateTime: akzeptiert nur gültige Datum-/Zeitfelder mit zwei- oder
vierstelligen Jahreszahlen.
•
Ein als Datums-/Zeitfeld definiertes Datenbankfeld. Die Option
Datei|Berichtoptionen sollte auf Datum-Uhrzeit-Felder in Datum-Zeit
konvertieren eingestellt werden. (Diese Option kann nur für ODBCDatenquellen in 6.0 verwendet werden.)
Crystal Reports-Anwenderhandbuch 529
8
8
Funktionen
Zusätzliche Funktionen
•
•
Die CDateTime-Funktion (CDateTime(yyyy, MM, dd, hh, mm, ss)).
Diese Funktion setzt vierstellige Jahreszahlen voraus. Wenn
zweistellige Jahreszahlen eingegeben werden, geht die Funktion von
00xx aus (Beispiel: 98 AD).
Zahl: eine Zahl zwischen 0 und 99, die mit dem gewünschten Jahr im
Wertebereich übereinstimmt.
Rückgabewert
Ein Datums-/Zeitfeld mit einer vierstelligen Jahreszahl
Aktion
•
Zweistellige Jahreszahlen (xx)
Wenn die Jahreszahl größer ist als die Zahl im Wertebereich, wird der
zweistelligen Zahl 19 vorangestellt (19xx). Wenn die Jahreszahl kleiner
als oder gleich der Zahl im Wertebereich ist, wird 20 vorangestellt (20xx).
•
4stellige Jahreszahlen (19xx)
Wenn die beiden letzten Stellen in der Jahreszahl größer als die Zahl im
Wertebereich sind, wird die Jahreszahl im Datumsfeld beibehalten
(19xx). Wenn die beiden letzten Stellen in der Jahreszahl kleiner oder
gleich der Zahl im Wertebereich sind, werden die ersten beiden Stellen in
20 (20xx) umgeändert. Wenn die ersten beiden Stellen im Jahresfeld 20
entsprechen, wird die Jahreszahl im Datumsfeld beibehalten (20xx).
Hinweis: Beachten Sie, dass das Datum nicht geändert wird, wenn die
Jahreszahl kleiner als oder gleich 1899 und größer als oder gleich 100 ist.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
In diesem Beispiel ist der Wert im Wertebereich größer als die Jahreszahl, die
deshalb in 20XX umgeändert wird.
DateTimeTo2000(CDateTime(1998,12,12,3,2,1), 99)
Gibt 12.12.2098 03:02:01 zurück.
In diesem Beispiel ist der Wert im Wertebereich kleiner als die Jahreszahl, die
deshalb nicht umgeändert wird.
DateTimeTo2000(CDateTime(1995,1,2,3,2,1), 94)
Gibt 02.01.1995 03:02:01 zurück.
Andere Beispiele
Nachstehend sind Datumsbeispiele aufgeführt, auf die die Funktion keinen
Einfluss nimmt.
530
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
DateTimeTo2000(CDateTime(1899,12,12,5,6,7), 99)
Gibt 12.12.1899 5:06:07 zurück.
DateTimeTo2000(CDateTime(999,12,12,5,6,7), 99)
Gibt 12.12.999 5:06:07 zurück.
Einige Datenbanken verwalten die Jahreszahl in einem Datum als
zweistelliges Feld, so dass das Datumsfeld in diesen Beispielen simuliert
wird.
DateTimeTo2000(CDateTime (93,12,12,5,6,7), 96)
Gibt 12.12.2093 5:06:07 zurück.
DateTimeTo2000(CDateTime (98,12,12,5,6,7), 50)
sollte 12.12.1998 5:06:07 zurückgeben.
DateTimeTo2000(CDateTime (9,12,12,5,6,7), 10)
sollte 12.12.2009 5:06:07 zurück.
DateTimeTo2000(CDateTime (2,12,12,5,6,7), 1)
sollte 12.12.1902 5:06:07 zurückgeben.
DTSToDateTime (DatumUhrzeitFolge)
Basic- und Crystal-Syntax.
Argumente
•
"DatumUhrzeitFolge" ist eine Zeichenfolge mit einem Datums- und TimeWert.
Rückgabewert
DateTime-Wert
Aktion
Wertet die angegebene Zeichenfolge aus und gibt Daten vom Typ DateTime
zurück.
Beispiele
DTSToDateTime ("2000/01/13 11:30:15")
Gibt den Date-Wert 13. Januar 2000 11:30:15 zurück. Der Monat muss
als 01 eingegeben werden, nicht nur als 1.
Anmerkungen
Verwenden Sie für neue Formeln die Funktionen CDateTime oder
DateTimeValue anstelle der Funktion DTSToDateTime. Mit den Funktionen
CDateTime und DateTimeValue können mehr Zeichenfolgetypen verarbeitet
werden.
Crystal Reports-Anwenderhandbuch 531
8
8
Funktionen
Zusätzliche Funktionen
DTSToTimeField (DatumUhrzeitFolge)
Basic- und Crystal-Syntax.
Argumente
•
DatumUhrzeitFolge ist eine Zeichenfolge mit einem Datums- und TimeWert.
Rückgabewert
Time-Wert
Aktion
Wertet die angegebene Zeichenfolge aus und gibt Daten vom Typ Zeit
zurück.
Beispiele
DTSToTimeField ("2000/01/13 11:30:15")
Gibt den Time-Wert 11:30:15 zurück. Der Monat muss als 01 eingegeben
werden, nicht nur als 1.
Anmerkungen
Verwenden Sie für neue Formeln die Funktionen CTime oder TimeValue
anstelle der Funktion DTSToTimeField. Mit den Funktionen CTime und
TimeValue können mehr Zeichenfolgetypen verarbeitet werden.
DateTimeToDate (dateTime)
Basic- und Crystal-Syntax.
Argumente
•
datumUhrzeit ist ein DateTime-Wert.
Rückgabewert
Date-Wert
Aktion
Wertet den angegebenen DateTime-Wert aus und wandelt ihn in einen DateWert um.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
532
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen
DateTimeToDate(#11/01/1998 11:15:00 AM#)
Gibt den Date-Wert 11/01/1998 zurück.
Anmerkungen
Für neue Formeln können Sie die Funktionen CDate oder DateValue anstelle
der Funktion DateTimeToDate verwenden, wenn Sie einen DateTime-Wert in
einen Date-Wert konvertieren möchten. Die Funktionen CDate und
DateValue sind effizienter, da sie keine UFLs sind.
DateTimeToTime (DatumUhrzeit)
Basic- und Crystal-Syntax.
Argumente
•
datumUhrzeit ist ein DateTime-Wert.
Rückgabewert
Time-Wert
Aktion
Wertet den angegebenen DateTime-Wert aus und wandelt ihn in einen TimeWert um.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DateTimeToTime(#11/01/1998 11:15:00 AM#)
Gibt 11:15:00 am zurück.
Anmerkungen
Für neue Formeln können Sie die Funktionen CTime oder TimeValue anstelle
der Funktion DateTimeToTime verwenden, wenn Sie einen DateTime-Wert in
einen Time-Wert konvertieren möchten. Die Funktionen CTime und
TimeValue sind effizienter, da sie keine UFLs sind.
DateTimeToSeconds (DatumUhrzeit)
Basic- und Crystal-Syntax.
Argumente
•
datumUhrzeit ist ein DateTime-Wert.
Crystal Reports-Anwenderhandbuch 533
8
8
Funktionen
Funktionen zum Duplizieren von Gruppenfeldern
Rückgabewert
Time-Wert (in Sekunden)
Aktion
Wertet den DateTime-Wert aus und gibt die Anzahl der Sekunden von
00:00:00 (Mitternacht) bis zur angegebenen Zeit zurück.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
DateTimeToSeconds(#11/01/1998 11:30:15 AM#)
Gibt 41415 zurück.
Anmerkungen
Anstelle von DateTimeToSeconds (dt) können Sie folgenden Ausdruck
verwenden:
DateDiff ("s", #12:00 am#, CDateTime (CDate(0,0,0), CTime
(dt)))
Dieser Ausdruck verwendet keine UFLs und ist daher effizienter.
Funktionen zum Duplizieren von
Gruppenfeldern
Verwenden Sie diese Funktionen zum Duplizieren von Gruppenfeldern in
Formeln.
Hinweis: Wenn Sie diese Funktionen verwenden möchten, müssen Sie in
Ihrem Bericht vorher ein Gruppenfeld mit den Parametern eingeben, die Sie
in der Formel duplizieren möchten. Das kann z. B. das gleiche Feld, das
gleiche Feld "Nach Feld sortieren und gruppieren", die gleiche verwendete
Datums- bzw. boolesche Bedingung oder die gleiche Aktion (Durchschnitt,
Anzahl) sein.
Nach Feld sortieren und gruppieren = Zeichen, Zahl oder
Currency-Wert
Average (Feld, BedFeld)
Siehe Average
Count (Feld, BedFeld)
Siehe Count
534
Crystal Reports-Anwenderhandbuch
Funktionen
Funktionen zum Duplizieren von Gruppenfeldern
DistinctCount (Feld, BedFeld)
Siehe DistinctCount
Maximum (Feld, BedFeld)
Siehe Maximum
Minimum (Feld, BedFeld)
Siehe Minimum
PopulationStdDev (Feld, BedFeld)
Siehe PopulationStdDev
PopulationVariance (Feld, BedFeld)
Siehe PopulationVariance
StdDev (Feld, BedFeld)
Siehe StdDev
Sum (Feld, BedFeld)
Siehe Sum
Variance (Feld, BedFeld)
Siehe Variance
Nach Feld sortieren und gruppieren = Datums- oder
boolesche Bedingung
Average (Feld, BedFeld, Bed)
Siehe Average
Count (Feld, BedFeld, Bed)
Siehe Count
DistinctCount (Feld, BedFeld, Bed)
Siehe DistinctCount
Maximum (Feld, BedFeld, Bed)
Siehe Maximum
Minimum (Feld, BedFeld, Bed)
Siehe Minimum
PopulationStdDev (Feld, BedFeld, Bed)
Siehe PopulationStdDev
Crystal Reports-Anwenderhandbuch 535
8
8
Funktionen
Gesamtergebnis-Funktionen
PopulationVariance (Feld, BedFeld, Bed)
Siehe PopulationVariance
StdDev (Feld, BedFeld, Bed)
Siehe StdDev
Sum (Feld, BedFeld, Bed)
Siehe Sum
Variance (Feld, BedFeld, Bed)
Siehe Variance
Gesamtergebnis-Funktionen
Verwenden Sie diese Funktionen zum Auswerten aller Werte für den
gesamten Bericht in einem angegebenen Feld mit Rückgabe eines
errechneten Wertes, z. B. dem Durchschnitt oder der Anzahl für ein
Gesamtergebnis
Average (Feld)
Siehe Average
Count (Feld)
Siehe Count
DistinctCount (Feld)
Siehe DistinctCount
Maximum (Feld)
Siehe Maximum
Minimum (Feld)
Siehe Minimum
PopulationStdDev (Feld)
Siehe PopulationStdDev
PopulationVariance (Feld)
Siehe PopulationVariance
StdDev (Feld)
Siehe StdDev
536
Crystal Reports-Anwenderhandbuch
Funktionen
Konditionale Formatierungsfunktionen
Sum (Feld)
Siehe Sum
Variance (Feld)
Siehe Variance
Konditionale Formatierungsfunktionen
GridRowColumnValue (Name)
CurrentFieldValue
DefaultAttribute
RGB (Rot, Grün, Blau)
GridRowColumnValue (Name)
Basic- und Crystal-Syntax.
Argumente
•
Name ist ein Zeichenfolgewert, der ein Alias für Formeln ist. Dieser Alias
für Formeln ist ein Name, den Sie für eine Dimensionsebene in einem
OLAP-Raster oder einer Kreuztabelle festgelegt haben.
Rückgabewert
Wert einer Dimensionsebene in einem OLAP-Raster oder einer Kreuztabelle,
der durch das Argument Name festgelegt wurde. Der Typ des Wertes ist
daher abhängig von dem in der angegebenen Dimension.
Aktion
GridRowColumnValue gibt den Wert einer angegebenen Dimensionsebene in
einem OLAP-Raster oder einer Kreuztabelle zurück.
Typische Verwendungen
Formatieren von Zellen auf Dimensionsebene in einem OLAP-Raster oder
einer Kreuztabelle auf Grundlage des Wertes der Dimensionsebene. Die
Schriftfarbe für Zellen kann in einer Dimensionsebene auf der Grundlage des
Wertes dieser Dimensionsebene formatiert werden. Die Attribute einer Zelle,
die mit einer Formel bedingt formatiert werden können, umfassen Schriftart,
Rahmen, Objektpositionierung usw. Auf diese Attribute kann über den
Format-Editor zugegriffen werden.
Crystal Reports-Anwenderhandbuch 537
8
8
Funktionen
Konditionale Formatierungsfunktionen
Beispiele
Das folgende Beispiel gilt sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Es wird von einem OLAP-Raster ausgegangen, in dem die Produkte in den
Zeilen und die Regionen in den Spalten aufgeführt sind.
Angenommen, Sie möchten mit der Funktion GridRowColumnValue Zellen
auf Ebene 1 der Regionen-Dimension und auf Ebene 2 der ProdukteDimension bedingt formatieren. Die Schriftfarbe der Gesamtumsätze
verschiedener Produkte für Europa soll rot und die Gesamtumsätze für
Nordamerika blau formatiert werden.
1.
Erstellen Sie ein Alias für Formeln mit dem Namen „Kontinent“ für Ebene
1 der Regionen-Dimension. (Sie können dazu den OLAP BerichtsAssistenten oder den Befehl OLAP-Rasterobjekt formatieren verwenden.
Nachdem Sie den erforderlichen Alias für Formeln erstellt haben, können
Sie die Formatierungsbedingung wie folgt angeben: wenn
GridRowColumnValue(„Kontinent“) den Wert „Europa“ zurückgibt, dann
soll die Schriftfarbe der Zellen für Ebene 2 der Produkt-Dimension rot
sein. Ansonsten soll die Schriftfarbe blau sein, da in diesem Beispiel nur
zwei Kontinente verwendet werden.
2.
Klicken Sie im OLAP-Raster auf eine der Zellen, die die Gesamtumsätze
für ein bestimmtes Produkt (Ebene 2) für Europa darstellen.
Die Zellen aller Produkte auf Ebene 2 verbunden mit den Regionen der
Ebene 1 werden ebenfalls markiert. Die Formatierung einer dieser Zellen
wird auf alle anderen markierten Zellen übertragen.
538
Crystal Reports-Anwenderhandbuch
Funktionen
Konditionale Formatierungsfunktionen
3.
Geben Sie mit dem Befehl Feld formatieren eine Formel für bedingte
Formatierung für die markierten Zellen ein.
In der Crystal-Syntax können Sie z. B. folgende Formel verwenden:
If GridRowColumnValue(“Continent”) = “Europa” Then crRed
Else crBlue
In der Basic-Syntax wird folgende Formel verwendet:
If GridRowColumnValue(“Kontinent”) = “Europa” Then
formula = crRed Else formula = crBlue
Die Gesamtumsätze verschiedener Produkte für Europa werden rot und
die entsprechenden Gesamtumsätze für Nordamerika blau markiert.
CurrentFieldValue
Basic- und Crystal-Syntax.
Rückgabewert
Jeder beliebige Feldtyp kann zurückgegeben werden
Aktion
Die Funktion CurrentFieldValue gibt den aktuellen Wert des Feldes zurück,
das ausgedruckt wird.
Typische Verwendung
Sie können die Funktion CurrentFieldValue zum bedingten Formatieren von
Feldelementen, Feldobjekten und Gruppenergebnissen und Beschriftungen
in Kreuztabellen verwenden.
Crystal Reports-Anwenderhandbuch 539
8
8
Funktionen
Konditionale Formatierungsfunktionen
Beispiele
In der Crystal-Syntax können Sie z. B. folgende Formel verwenden:
if CurrentFieldValue = 0 then crRed
In der Basic-Syntax wird folgende Formel verwendet:
If CurrentFieldValue = 0 Then formula = crRed
Die Schriftfarbe des Objekts ist beim Druck rot formatiert, wenn der Wert
des Feldes Null ist.
Anmerkungen
•
Die Funktion CurrentFieldValue ist nur verfügbar, wenn
Feldformatierungsformeln eingegeben werden.
•
Der Typ des Rückgabewertes ist vom Formelkontext abhängig. Wenn Sie
z.B. ein Zeichenfolgefeld formatieren, wird mit der Funktion
CurrentFieldValue ein Zeichenfolgetyp zurückgegeben, und wenn Sie ein
Datumsfeld formatieren, wird mit CurrentFieldValue ein Datumstyp
zurückgegeben.
DefaultAttribute
Basic- und Crystal-Syntax.
Rückgabewert
Jeder beliebige Feldtyp kann zurückgegeben werden
Aktion
Der durch die Funktion DefaultAttribute zurückgegebene Wert ist abhängig
von dem Wert, der für das als Attributwert formatierte Attribut ausgewählt
wurde.
Beispiele
Die Funktion DefaultAttribute kann zusammen mit der Funktion
CurrentFieldValue zum bedingten Formatieren von Feldern auf Grundlage
ihrer Werte und Standardbedingungen verwendet werden.
Die folgenden Beispiele gelten für die Crystal-Syntax:
if CurrentFieldValue < 0 then DefaultAttribute else crBlack
In der Basic-Syntax wird folgende Formel verwendet:
If CurrentFieldValue < 0 Then
formula = DefaultAttribute
Else
formula = crBlack
End If
540
Crystal Reports-Anwenderhandbuch
Funktionen
Konditionale Formatierungsfunktionen
Durch die Formatierung des Objekts wird die Schrift in der Standardfarbe
gedruckt, wenn der Feldwert kleiner als Null ist. Bei einem Feldwert
größer als Null wird die Schrift schwarz gedruckt.
Anmerkungen
Die Funktion DefaultAttribute ist nur verfügbar, wenn Formatierungsformeln
eingegeben werden.
RGB (Rot, Grün, Blau)
RGB und Color (Rot, Grün, Blau) sind gleichwertige Funktionen. RGB wird in
der Basic-Syntax bevorzugt, Color dagegen in der Crystal-Syntax.
Argumente
•
Rot ist ein Zahlenwert zwischen 0 und 255 für die Rot-Komponente der
Ergebnisfarbe.
•
Grün ist ein Zahlenwert zwischen 0 und 255 für die Grün-Komponente
der Ergebnisfarbe.
•
Blau ist ein Zahlenwert zwischen 0 und 255 für die Blau-Komponente der
Ergebnisfarbe.
Rückgabewert
Schriftfarbenattribut.
Aktion
RGB gibt das Farbattribut als Definition der Komponenten Rot, Grün und Blau
zurück.
Typische Verwendung
Um beim Schreiben einer Formel für bedingte Formatierung eine
benutzerdefinierte Farbe für die Schrift oder den Hintergrund eines
Berichtfeldes festzulegen.
Beispiel
Das folgende Beispiel gilt für die Basic-Syntax:
If CurrentFieldValue > 10000 Then
formula = RGB (150,230,150)
Else
formula = RGB (10,19,200)
End If
Crystal Reports-Anwenderhandbuch 541
8
8
Funktionen
Konditionale Formatierungsfunktionen
Diese Formel formatiert ein Zahlenfeld so, dass es in der durch RGB
(150,230,150) festgelegten Farbe angezeigt wird, wenn sein aktueller
Wert größer als 10.000 ist, und andernfalls in der Farbe RGB
(10,19,200).
Siehe auch
•
Color (Rot, Grün, Blau)
Color (Rot, Grün, Blau)
Color und RGB (Rot, Grün, Blau) sind gleichwertige Funktionen. RGB wird in
der Basic-Syntax bevorzugt, Color dagegen in der Crystal-Syntax.
Argumente
•
Rot ist ein Zahlenwert zwischen 0 und 255 für die Rot-Komponente der
Ergebnisfarbe.
•
Grün ist ein Zahlenwert zwischen 0 und 255 für die Grün-Komponente
der Ergebnisfarbe.
•
Blau ist ein Zahlenwert zwischen 0 und 255 für die Blau-Komponente der
Ergebnisfarbe.
Rückgabewert
Schriftfarbenattribut.
Aktion
Color gibt das Farbattribut als Definition der Komponenten Rot, Grün und
Blau zurück.
Typische Verwendung
Um beim Schreiben einer Formel für bedingte Formatierung eine
benutzerdefinierte Farbe für die Schrift oder den Hintergrund eines
Berichtfeldes festzulegen.
Beispiel
Das folgende Beispiel gilt für die Crystal-Syntax:
if CurrentFieldValue > 10000 then
Color (150,230,150)
Else
Color (10,19,200)
Diese Formel formatiert ein Zahlenfeld so, dass es in der durch RGB
(150,230,150) festgelegten Farbe angezeigt wird, wenn sein aktueller
Wert größer als 10.000 ist, andernfalls in der Farbe RGB (10,19,200).
542
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen des SQL-Ausdrucks-Editors
Siehe auch
•
RGB (Rot, Grün, Blau)
Zusätzliche Funktionen des SQL-AusdrucksEditors
Der SQL-Ausdrucks-Editor verwendet einen Standardsatz ODBC-kompatibler
Funktionen. Die folgende Liste enthält Serverfunktionen für SQLErweiterungen, die spezifisch für Teradata sind.
Detaillierte Informationen zur Verwendung der Funktionen finden Sie in der
Dokumentation über Teradata SQL-Erweiterungen.
Klicken Sie auf eine Verknüpfung, um zum jeweiligen Abschnitt zu gelangen:
•
•
•
•
•
•
•
•
Attributfunktionen
CASE-Ausdrücke
Datum-/Uhrzeitfunktionen
Hash-bezogene Funktionen
Numerische Funktionen
Logische Prädikate
Zeichenfolgefunktionen
Integrierte Funktionen
Attributfunktionen
Ausführliche Informationen zur Verwendung der folgenden Attributfunktionen
finden Sie in der Teradata-Referenzdokumentation:
•
•
•
•
•
•
BYTES
CHARACTER_LENGTH
FORMAT
OCTET_LENGTH
TITLE
TYPE
Crystal Reports-Anwenderhandbuch 543
8
8
Funktionen
Zusätzliche Funktionen des SQL-Ausdrucks-Editors
CASE-Ausdrücke
Ausführliche Informationen zur Verwendung der folgenden CASE-Ausdrücke
finden Sie in der Teradata-Referenzdokumentation:
•
•
•
•
Bewertete CASE-Ausdrücke
Gesuchte CASE-Ausdrücke
COALESCE
NULLIF
Datum-/Uhrzeitfunktionen
Ausführliche Informationen zur Verwendung der folgenden Datum-/
Uhrzeitfunktionen finden Sie in der Teradata-Referenzdokumentation:
•
•
ADD_MONTHS
EXTRACT
Hash-bezogene Funktionen
Ausführliche Informationen zur Verwendung der folgenden Hash-bezogenen
Funktionen finden Sie in der Teradata-Referenzdokumentation:
•
•
•
•
HASHAMP
HASHBAKAMP
HASHBUCKET
HASHROW
Numerische Funktionen
Ausführliche Informationen zur Verwendung der folgenden numerischen
Funktionen finden Sie in der Teradata-Referenzdokumentation:
•
•
•
•
•
•
•
•
544
ACOS
ACOSH
ASIN
ASINH
ATAN2
ATANH
CASE_N
COSH
Crystal Reports-Anwenderhandbuch
Funktionen
Zusätzliche Funktionen des SQL-Ausdrucks-Editors
•
•
•
•
•
•
•
•
LN
NULLIFZERO
RANDOM
RANGE_N
SINH
TANH
WIDTH_BUCKET
ZEROIFNULL
Logische Prädikate
Ausführliche Informationen zur Verwendung der folgenden logischen
Prädikate finden Sie in der Teradata-Referenzdokumentation:
•
•
•
•
•
•
•
•
•
ALL
ANY
BETWEEN/NOT BETWEEN
EXISTS/NOT EXISTS
IN/NOT IN
IS NULL/IS NOT NULL
LIKE
SOME
OVERLAPS
Zeichenfolgefunktionen
Ausführliche Informationen zur Verwendung der folgenden
Zeichenfolgenfunktionen finden Sie in der Teradata-Referenzdokumentation:
•
•
•
•
•
•
•
•
•
•
CHAR2HEXINT
LOWER
POSITION
SOUNDEX
SUBSTRING/SUBSTR
TRANSLATE
TRANSLATE_CHK
TRIM
UPPER
VARGRAPHIC
Crystal Reports-Anwenderhandbuch 545
8
8
Funktionen
Zusätzliche Funktionen des SQL-Ausdrucks-Editors
Integrierte Funktionen
Ausführliche Informationen zur Verwendung der folgenden integrierten
Funktionen finden Sie in der Teradata-Referenzdokumentation:
•
•
•
•
•
•
•
•
•
546
ACCOUNT
CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
DATABASE
PROFILE
ROLE
SESSION
USER
Crystal Reports-Anwenderhandbuch
Kapitel
Operatoren
9
Operatoren
Arithmetische Operatoren
Arithmetische Operatoren
Arithmetische Operatoren werden zum Berechnen von numerischen Werten
oder Währungsbeträgen verwendet.
•
•
•
•
•
•
•
•
•
Additionsoperator
Subtraktionsoperator
Multiplikationsoperator
Divisionsoperator
Prozent-Operator
Ganzzahldivision (x \ y)
Modul (x Mod y)
Negationsoperator
Potenzieren (x ^ y)
Additionsoperator
Basic- und Crystal-Syntax.
Verwendung
x+y
Fügt die Werte x und y hinzu.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
5 + 6
Gibt 11 zurück.
{Datei.MENGE1} + {Datei.MENGE2}.
Gibt 1.487 zurück, wobei {Datei.MENGE1} = 366 und {Datei.MENGE2} =
1.121 entspricht.
{Datei.PREIS1} + {Datei.PREIS2} + {Datei.PREIS3} +
{Datei.PREIS4}
Gibt 20 zurück, wobei {Datei.PREIS1} = 2, {Datei.PREIS2} = 4,
{Datei.PREIS3} = 6 und {Datei.PREIS4} = 8 entspricht.
{Datei.KLASSE1} + 25
Gibt 37 zurück, wobei {Datei.KLASSE1} = 12 entspricht.
CDate (1991, 04, 05) + 12
Gibt den Datumswert 17. April 1991 zurück.
548
Crystal Reports-Anwenderhandbuch
Operatoren
Arithmetische Operatoren
Subtraktionsoperator
Basic- und Crystal-Syntax.
Verwendung
x-y
Subtrahiert den Wert y vom Wert x.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
244 - 112
Gibt 132 zurück.
{Datei.UMSATZ} - {Datei.KOSTEN GESAMTER WARENLIEFERUNG} {Datei.S&A}
Gibt den Wert 214.972 zurück, wobei {Datei.UMSATZ} = 455.031,
{Datei.KOSTEN GESAMTER WARENLIEFERUNG} = 188.213 und
{Datei.S&A} = 51.846 entspricht.
{Datei.AUF LAGER} - 877
Gibt 114 zurück, wobei {Datei.AUF LAGER} = 991 entspricht.
CDate (1991, 04, 15) - 12
Gibt 03. Apr. 91 zurück.
Multiplikationsoperator
Basic- und Crystal-Syntax.
Verwendung
x*y
Multipliziert den Wert x mit dem Wert y.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
2883 * 1999
Gibt 5.763.117 zurück.
{Datei.MENGE} * {Datei.ANZAHL} * {Datei.RABATT}
Gibt 26,25 zurück, wobei {Datei.MENGE} = 25,00, {Datei.ANZAHL} = 7
und {Datei.RABATT} = 0,15 entspricht.
{Datei.BEFREIUNG} * 356.00
Gibt 152.012 zurück, wobei {Datei.BEFREIUNG} = 427 entspricht.
Crystal Reports-Anwenderhandbuch 549
9
9
Operatoren
Arithmetische Operatoren
Divisionsoperator
Basic- und Crystal-Syntax.
Verwendung
x/y
Dividiert den Wert x durch den Wert y.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
25/5
Gibt 5 zurück.
1/3
Gibt ,333333 zurück.
{Datei.UMSATZ} / {Datei.PROGNOSE}
Gibt 0,875 zurück, wobei {Datei.UMSATZ} = 52.533 und
{Datei.PROGNOSE} = 60.000 entspricht.
{Datei.FÄLLIGKEITSDATUM} / 5
Gibt 22 zurück, wobei {Datei.FÄLLIGKEITSDATUM} = 110 entspricht.
Hinweis: Wenn der Nenner gleich 0 ist, wird der Bericht mit einem Schutz
vor Division durch Null angehalten. Sie können ein solches Problem
vermeiden, indem Sie einen Test vornehmen.
Das folgende Beispiel gilt für die Crystal-Syntax:
If {Datei.PROGNOSE} = 0 Then
0
Else
{Datei.UMSATZ} / {Datei.PROGNOSE}
Prozent-Operator
Crystal-Syntax.
Verwendung
x % y
Der Wert x wird als Prozentsatz des Wertes y berechnet. Dies entspricht
(x/y) * 100.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
{Datei.AUSSTEHENDE BILANZ} % {Datei.KREDITGRENZE}
550
Crystal Reports-Anwenderhandbuch
Operatoren
Arithmetische Operatoren
Gibt den Wert 30.00 zurück, wobei {Datei.AUSSTEHENDE BILANZ} =
1.500 € und {Datei.KREDITGRENZE} = 5.000 € entspricht.
{Datei.MENGE} % {Datei.KREDITGRENZE}
Gibt den Wert 32,26 zurück, wobei {Datei.MENGE} = 2.257,87 und
{Datei.KREDITGRENZE} = 7.000 entspricht.
Hinweis: Wenn der Nenner gleich 0 ist, wird der Bericht mit einem Schutz
vor Division durch Null angehalten. Sie können ein solches Problem
vermeiden, indem Sie einen Test vornehmen.
If {Datei.PROGNOSE} = 0 Then
0
Else
{Datei.UMSATZ} / {Datei.PROGNOSE}
Ganzzahldivision (x \ y)
Basic- und Crystal-Syntax.
Verwendung
x \ y
Teilt den Zahlenwert x durch den Zahlenwert y und gibt den ganzzahligen
Quotienten zurück.
Hinweis: Wenn der Zahlenwert x oder y keine ganze Zahl ist, wird er vor
der Operation zuerst gerundet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
23 \ 5
Gibt 4 zurück.
3 \ 2
Gibt 1 zurück.
Modul (x Mod y)
Basic- und Crystal-Syntax.
Verwendung
x Mod y
Teilt x durch y und gibt den ganzzahligen Rest zurück. Die Zahlenwerte x
und y können positiv, negativ oder Dezimalwerte sein. Wenn x oder y ein
Dezimalwert ist, wird der Wert zuerst gerundet, bevor der Modulus
berechnet wird.
Crystal Reports-Anwenderhandbuch 551
9
9
Operatoren
Arithmetische Operatoren
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
83 Mod 10
Gibt 3 zurück.
10 Mod 3
Gibt 1 zurück.
-10 Mod 3
Gibt -1 zurück.
10 Mod -3
Gibt 1 zurück.
10 Mod 3.5
Gibt 2 zurück, da 3,5 zuerst auf 4 gerundet wird, bevor der Modulus
berechnet wird.
Negationsoperator
Basic- und Crystal-Syntax.
Verwendung
[-(x)]
Multipliziert den Wert in Klammern mit -1.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
-(-1)
Gibt 1 zurück, da die Multiplikation zweier negativer Werte einen
positiven Wert ergibt.
-(1)
Gibt -1 zurück, da die Multiplikation eines negativen und eines positiven
Wertes einen negativen Wert ergibt.
-(0-14)
Gibt 14 zurück.
-({Datei.AUF LAGER})
Gibt 144 zurück, wobei {Datei.AUF LAGER} = -144 entspricht.
- (- (15-18) )
Gibt –3 zurück, da 15 - 18 = -3, -(-3) = +3, -(+3) = -3 entspricht.
552
Crystal Reports-Anwenderhandbuch
Operatoren
Konvertierungsoperatoren
Potenzieren (x ^ y)
Basic- und Crystal-Syntax.
Verwendung
x ^ y
X hoch Y.
Hinweis: Der Zahlenwert y kann ein Dezimalwert und positiv oder
negativ sein. Der Zahlenwert x kann ein Dezimalwert sein, er kann aber
nur negativ sein, wenn y eine ganze Zahl ist.
Beispiele
Die folgenden Beispiele gelten sowohl für die Crystal-Syntax als auch für die
Basic-Syntax:
3 ^ 2
Gibt 9 zurück.
3 ^ .5
Gibt 1,73205 … zurück.
(-3.5) ^ 2
Gibt 12,25 zurück. Beachten Sie, dass der Potenzierungsoperator eine
höhere Priorität als die Negation hat, -3,5 ^ 2 hat folglich eine andere
Bedeutung als (-3,5) ^ 2.
3 ^ (-2)
Gibt 0,111 ... zurück.
Hinweis: Bei Funktionen mit negativen Hochzahlen setzen Sie die
Hochzahl in Klammern.
Konvertierungsoperatoren
Konvertierungsoperatoren werden zur Konvertierung von einem Datentyp in
einen anderen verwendet.
•
In-Währung-Operator
In-Währung-Operator
Crystal-Syntax.
Verwendung
$x
Konvertiert x von Nummer auf Währung.
Crystal Reports-Anwenderhandbuch 553
9
9
Operatoren
Vergleichsoperatoren
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Hinweis: In jedem Beispiel wird angenommen, dass Sie im Dialogfeld
„Format-Editor“ auf der Registerkarte „Zahl“ (Dialogfeld „Benutzerdefiniertes
Format“) die folgenden Formatierungsoptionen ausgewählt haben:
Dezimalstellen = (1,00), Minuszeichen = (345,00-), Währungssymbol =
(verschiebbar) und Tausendertrennzeichen = (1.000,00).
$12345678
Gibt 12.345.678,00 $ zurück.
$(123 * 456)
Gibt 56.088,00 $ zurück
$({Datei.MENGE} * 3)
Gibt 42,00 $ zurück, wobei {Datei.MENGE} = 14 entspricht.
$({Datei.KILOMETER} * {Datei.PFAND})
Gibt 27,95 $ zurück, wobei {Datei.KILOMETER} = 13 und {Datei.PFAND}
= 2,15 entspricht.
Hinweis: Die Multiplikation zweier Währungswerte ist nicht möglich und
generiert einen Fehler.
Vergleichsoperatoren
Vergleichsoperatoren werden verwendet, um Daten in einem Datenfeld mit
einer Konstanten, dem Inhalt eines anderen Datenfeldes oder einem
Formelergebnis zu vergleichen.
Hinweis: Eine Konstante ist ein fester Wert (z. B. eine eingegebene
Textzeichenfolge, ein Datum, eine Zahl oder ein Dollar-Wert) der bei einer
Berechnung unverändert bleibt.
•
•
•
•
•
•
554
Gleichheitsoperator (x=y)
Not (Ungleichheit)
Kleiner-als-Operator
Größer-als-Operator
Kleiner-als-oder-gleich-Operator
Größer-oder-gleich-Operator
Crystal Reports-Anwenderhandbuch
Operatoren
Vergleichsoperatoren
Gleichheitsoperator (x=y)
Basic- und Crystal-Syntax.
Verwendung
x = y
x ist gleich y
Der Gleichheitsoperator weist Crystal Reports an, einen Ausdruck (x=y)
auszuwerten und TRUE (wenn x gleich y ist) oder FALSE (wenn x nicht gleich
y ist) zurückzugeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Crystal-Syntax als auch für die
Basic-Syntax:
{Datei.MENGE} = 3
Gibt TRUE zurück, wobei {Datei.MENGE} dem Wert 3 entspricht.
{Datei.MENGE} = 3
sonst FALSE.
{Datei.AUFGELAUFENER JAHRESUMSATZ} = {Datei.AUFGELAUFENER
JAHRESUMSATZ VORJAHR}
Gibt TRUE zurück, wenn der Wert des Feldes {Datei.AUFGELAUFENER
JAHRESUMSATZ} mit dem Wert des Feldes {Datei.AUFGELAUFENER
JAHRESUMSATZ VORJAHR} übereinstimmt.
{Datei.AUFGELAUFENER JAHRESUMSATZ} = {Datei.AUFGELAUFENER
JAHRESUMSATZ VORJAHR}
sonst FALSE.
({Datei.UMSATZ} - {Datei.KOSTEN GESAMTER WARENLIEFERUNG}) =
22.654
Gibt TRUE zurück, wobei die Berechnung des Ausdrucks
{Datei.UMSATZ}-{Datei.KOSTEN GESAMTER WARENLIEFERUNG}
den Wert 22.654 ergibt, z. B. {Datei.UMSATZ} = 109.986 und
{Datei.KOSTEN GESAMTER WARENLIEFERUNG} = 87.332.
({Datei.UMSATZ} - {Datei.KOSTEN GESAMTER WARENLIEFERUNG}) =
22.654
sonst FALSE.
{Kunde.NACHNAME} = "Becker"
Gibt TRUE zurück, wobei die Textzeichenfolge des Feldes
{Kunde.NACHNAME} „Becker“ lautet.
{Kunde.NACHNAME} = "Becker"
sonst FALSE.
Crystal Reports-Anwenderhandbuch 555
9
9
Operatoren
Vergleichsoperatoren
Anmerkungen
Dieser Operator wird häufig in Ausdrücken mit If-Then-Else-Operatoren
verwendet. Zum Beispiel in Crystal-Syntax:
If {Datei.KÄUFE} = 0 Then
"Auf Ihrem Konto fanden diesen Monat keine Bewegungen
statt."
Else
"";
Diese Formel gibt den Satz „Auf Ihrem Konto ...“ aus, wenn das Feld
{Datei.KÄUFE} einen Nullwert enthält, und es findet keine Ausgabe statt
(die Zeichenfolge ist leer „“), wenn dieses Feld einen anderen Wert als
einen Nullwert enthält.
Not (Ungleichheit)
Basic- und Crystal-Syntax.
Verwendung
x <> y
x ist nicht gleich y.
Der Ungleich-Operator weist Crystal Reports an, einen Ausdruck (x<>y)
auszuwerten und TRUE (wenn x nicht gleich y ist) oder FALSE (wenn x gleich
y ist) zurückzugeben.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
{Aufträge.Auftragssumme} <> 400
TRUE, wobei{Aufträge.Auftragssumme} gleich 200 oder
{Aufträge.Auftragssumme} gleich 401 ist usw.
{Aufträge.Auftragssumme} <> 400
Gibt FALSE zurück, wobei {Aufträge.Auftragssumme} gleich 400 ist.
{Datei.TAG} <> "Donnerstag"
TRUE, wenn {Datei.TAG} = „Freitag“.
{Datei.TAG} <> "Donnerstag"
FALSE, wenn {Datei.TAG} = „Donnerstag“
{Datei.AUF LAGER} <>0
TRUE, wobei der Wert von {Datei.AUF LAGER} 10 oder -5 entspricht.
{Datei.AUF LAGER} <>0
FALSE, wenn der Wert der {Datei.AUF LAGER} Null ist.
556
Crystal Reports-Anwenderhandbuch
Operatoren
Vergleichsoperatoren
{Datei.AUF LAGER} - {Datei.VERBRAUCHT} <>10
TRUE, wobei der Wert des Feldes {Datei.AUF LAGER} minus dem Wert
des Feldes {Datei.VERBRAUCHT} ein Ergebnis ungleich 10 ergibt.
{Datei.AUF LAGER} - {Datei.VERBRAUCHT} <>10
FALSE, wobei der Wert 10 beträgt.
Anmerkungen
Dieser Operator wird häufig mit If-Then-Else-Operatoren verwendet. Zum
Beispiel in Crystal-Syntax:
If {Datei.GESCHLECHT} <> "M" Then
"WEIBLICH"
Else
"MÄNNLICH"
Das Wort „WEIBLICH“ wird gedruckt, wenn der Wert im Feld
{Datei.GESCHLECHT} nicht gleich „M“ ist. Ansonsten wird immer das
Wort „MÄNNLICH“ gedruckt.
Kleiner-als-Operator
Basic- und Crystal-Syntax.
Verwendung
x < y
x ist kleiner als y
Der Kleiner-als-Operator weist das Dialogfeld „Formel-Editor“ an, einen
Ausdruck (x<y) auszuwerten, und gibt den Wert TRUE (wenn x kleiner als y
ist) oder FALSE (wenn x größer als oder gleich y ist) zurück.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
{Datei.GEWICHT} < 200
Gibt TRUE zurück, wobei {Datei.GEWICHT} = 150 oder
{Datei.GEWICHT} = 199 entspricht.
{Datei.GEWICHT} < 200
Gibt FALSE zurück, wobei {Datei.GEWICHT} = 200 oder
{Datei.GEWICHT} = 400 entspricht.
{Datei.UNKOSTEN} < {Datei.PREIS}
Gibt TRUE zurück, wobei {Datei.UNKOSTEN} = 350 und {Datei.PREIS}
= 400 entspricht.
{Datei.UNKOSTEN} < {Datei.PREIS}
Crystal Reports-Anwenderhandbuch 557
9
9
Operatoren
Vergleichsoperatoren
Gibt FALSE zurück, wobei {Datei.UNKOSTEN} = 350 und {Datei.PREIS}
= 350 oder {Datei.UNKOSTEN} = 350 und {Datei.PREIS} = 325
entspricht.
Größer-als-Operator
Basic- und Crystal-Syntax.
Verwendung
x > y
x ist größer als y.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
{Datei.GEWICHT} > 200
Gibt FALSE zurück, wobei {Datei.GEWICHT} = 150, {Datei.GEWICHT} =
199 oder {Datei.GEWICHT} = 200 entspricht.
{Datei.GEWICHT} > 200
Gibt TRUE zurück, wobei {Datei.GEWICHT} = 400 oder
{Datei.GEWICHT} = 201 entspricht.
{Datei.UNKOSTEN} > {Datei.PREIS}
Gibt FALSE zurück, wobei {Datei.UNKOSTEN} = 350 und {Datei.PREIS}
= 400 oder {Datei.UNKOSTEN} = 350 und {Datei.PREIS} = 350
entspricht.
{Datei.UNKOSTEN} > {Datei.PREIS}
Gibt TRUE zurück, wobei {Datei.UNKOSTEN} = 350 und {Datei.PREIS}
= 325 entspricht.
Kleiner-als-oder-gleich-Operator
Basic- und Crystal-Syntax.
Verwendung
x <= y
x ist kleiner als oder gleich y.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
{Datei.GEWICHT} <= 200
558
Crystal Reports-Anwenderhandbuch
Operatoren
Vergleichsoperatoren
Gibt TRUE zurück, wobei {Datei.GEWICHT} = 150, {Datei.GEWICHT} =
200 oder {Datei.GEWICHT} = 199 entspricht.
{Datei.GEWICHT} <= 200
Gibt FALSE zurück, wobei {Datei.GEWICHT} = 400 entspricht.
{Datei.UNKOSTEN} <= {Datei.PREIS}
Gibt TRUE zurück, wobei {Datei.UNKOSTEN} = 350 und {Datei.PREIS}
= 400 oder {Datei.UNKOSTEN} = 350 und {Datei.PREIS} = 350
entspricht.
{Datei.UNKOSTEN} <= {Datei.PREIS}
Gibt FALSE zurück, wobei {Datei.UNKOSTEN} = 350 und {Datei.PREIS}
= 325 entspricht.
Größer-oder-gleich-Operator
Basic- und Crystal-Syntax.
Verwendung
x >= y
x ist größer als oder gleich y.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
{Datei.GEWICHT} >= 200
Gibt FALSE zurück, wobei {Datei.GEWICHT} = 150 oder
{Datei.GEWICHT} = 199 entspricht.
{Datei.GEWICHT} >= 200
Gibt TRUE zurück, wobei {Datei.GEWICHT} = 400, {Datei.GEWICHT} =
201 oder {Datei.GEWICHT} = 199 entspricht.
{Datei.UNKOSTEN} >= {Datei.PREIS}
Gibt FALSE zurück, wobei {Datei.UNKOSTEN} = 350 und {Datei.PREIS}
= 400 entspricht.
{Datei.UNKOSTEN} >= {Datei.PREIS}
Gibt TRUE zurück, wobei {Datei.UNKOSTEN} = 350 und {Datei.PREIS}
= 325 oder {Datei.UNKOSTEN} = 350 und {Datei.PREIS} = 350
entspricht.
Crystal Reports-Anwenderhandbuch 559
9
9
Operatoren
Zeichenfolgeoperatoren
Zeichenfolgeoperatoren
Zeichenfolgeoperatoren werden verwendet, um Textzeichenfolgen
miteinander zu verketten (verbinden), Teilzeichenfolgen aus
Textzeichenfolgen zu extrahieren oder Textzeichenfolgen auf bestimmte
Teilzeichenfolgen zu überprüfen.
Hinweis: Die Operatoren unterliegen der Groß- und Kleinschreibung. Zum
Beispiel ist „ABC“ nicht gleich „abc“. „abc“ ist auch nicht Teil der Zeichenfolge
„ABCDEF“.
•
•
•
•
•
Verkettungsoperator (x +y)
Verketten (x & y)
Index in Arrays und Zeichenfolgen
In-Zeichenfolge-Operator
Leere Zeichenfolge einfügen
Verkettungsoperator (x +y)
Basic- und Crystal-Syntax.
Verketten (x & y) und Verketten (x + y) sind synonym, wenn sowohl Operand
x als auch Operand y eine Zeichenfolge sind.
Verwendung
x + y
Verkettet (verbindet) Zeichenfolge x mit der Zeichenfolge y zu einer
zusammenhängenden Zeichenfolge.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
"Brot" + " und " + "Butter"
Gibt „Brot und Butter“zurück.
"Ihre Kundennummer ist" + ({Kunde.KUNDENNUMMER}) + ", und
Ihr Ansprechpartner ist " +
({Kunde.KONTAKTPERSON.VORNAME}) + "."
Gibt Folgendes zurück: „Ihre Kundennummer ist 64 und Ihr
Ansprechpartner ist Dirk.“ Wobei die Kundennummer =„64“ und der
Vorname = „Dirk“ lautet.
560
Crystal Reports-Anwenderhandbuch
Operatoren
Zeichenfolgeoperatoren
Anmerkungen
•
Dieser Operator kann nur verwendet werden, wenn alle Elemente, die
Sie verbinden möchten, Zeichenfolgen sind.
•
Wenn Sie einen Wert aus einem numerischen Feld übernehmen
möchten (z. B. einen Kontostand), müssen Sie diesen Wert mit der
Funktion ToText erst in eine Textzeichenfolge konvertieren.
"Ihr Kontostand beträgt " + ToText({Datei.KONTOSTAND}) + "."
Verwandte Themen:
•
Verketten (x & y)
Verketten (x & y)
Basic- und Crystal-Syntax.
Verketten (x & y) und Verkettungsoperator (x +y) sind synonym, wenn sowohl
Operand x als auch Operand y eine Zeichenfolge sind.
Verwendung
x & y
Verkettet die Werte von x und y und gibt das Ergebnis als Zeichenfolge
zurück. x und y können von einem der folgenden Typen sein: Zahl,
Boolesch, Währung, Datum, Uhrzeit, DatumUhrzeit oder Zeichenfolge.
Beispiele
Die folgenden Beispiele gelten sowohl für die Crystal-Syntax als auch für die
Basic-Syntax:
10 & 20
Gibt die Zeichenfolge „10,0000020,00000“ zurück, wobei durch die
Zahlenformatierung für dieses Formelfeld 5 Dezimalstellen festgelegt
sind. Verwenden Sie CStr, wenn Sie festlegen möchten, wie eine
Zeichenfolge bei der Umwandlung aus einem anderen Typ formatiert
werden soll. Bei diesem Beispiel können Sie auf die Zahlenwerte "a" und
"b" die Funktion CStr anwenden, um sie zu Zeichenfolgen zu
konvertieren und zu formatieren, und die daraus resultierenden
Zeichenfolgen anschließend zu verketten.
TRUE & FALSE
Gibt die Zeichenfolge „TrueFalse“ zurück.
"Meeting am " & #15 Nov. 1999# 1999#
Gibt die Zeichenfolge „The meeting is 11/15/99 12:00:00 AM“ zurück.
"Junge" & "Mädchen"
Gibt die Zeichenfolge „JungeMädchen“ zurück.
Crystal Reports-Anwenderhandbuch 561
9
9
Operatoren
Zeichenfolgeoperatoren
Anmerkungen
Das Format des Rückgabewertes wird durch das Format bestimmt, das für
dieses Formelfeld des entsprechenden Operandentyps eingerichtet wurde.
Sie können jedoch CStr verwenden, wenn Sie einen Wert eines anderen Typs
in eine Zeichenfolge umwandeln und dabei die Möglichkeit haben möchten,
für die daraus resultierende Zeichenfolge ein Format festzulegen.
Verwandte Themen:
•
Verkettungsoperator (x +y)
Index in Arrays und Zeichenfolgen
Index (x(y)) Basic-Syntax
Verwendung
x(y)
Extrahiert das Element y aus der Zeichenfolge x.
x(y To z)
Extrahiert den Elementenbereich y bis z aus der Zeichenfolge x.
x(n)
Extrahiert das Element n aus dem Array x.
Hinweis: Die Indexbereiche haben die Basis 1, d. h., sie beginnen bei 1 statt
bei 0.
Ein Index wird verwendet, um ein oder mehrere Zeichen aus einer
Zeichenfolge oder ein Element aus einem Array zu extrahieren.
Beispiele
Die folgenden Beispiele gelten für die Basic-Syntax:
LNAME (1)
Gibt „S“ zurück, wenn LNAME = „Schmidt“.
Postal (6)
Gibt den Wert „V“ zurück, wobei die Postleitzahl „T5A 9V2“ lautet (das
Leerzeichen zwischen A und 9 zählt als ein Element).
{Kunde.PLZ} (5 to 7)
Gibt „9V2“ zurück, wenn die Postleitzahl „T5A 9V2“ lautet.
{Datei.ARTIKELNUMMER} (4 to 5)
Gibt „40“ zurück, wobei die Artikelnummer A1/4020/B10 lautet.
562
Crystal Reports-Anwenderhandbuch
Operatoren
Zeichenfolgeoperatoren
Anmerkungen
•
Sie müssen einen Array indizieren, indem Sie in Basic-Syntax zuerst den
Array deklarieren und danach auf den Variablennamen des Arrays
verweisen: Hier ein Beispiel:
'Deklaration des Arrays MeinName
Dim MeinName () As String
MeinName = Array ("Firma A", "Firma B", "Firma C")
'Verweis auf den Array anhand seines Namens
formula = MyName (1)
•
Verwechseln Sie Indexe nicht mit dem In-Zeichenfolge-Operator.
Während durch einen Index eine Zeichenfolge nach einem Element
durchsucht und dieses Element, sobald gefunden, aus der Zeichenfolge
extrahiert wird, wird durch In Zeichenfolge lediglich geprüft, ob das
gesuchte Element in der Zeichenfolge enthalten ist.
Verwandte Themen:
•
Index (x[y]) Crystal-Syntax
Index (x[y]) Crystal-Syntax
Verwendung
x[y]
Extrahiert das Element y aus der Zeichenfolge x.
x[y to z]
Extrahiert den Elementenbereich y bis z aus der Zeichenfolge x.
x[n]
Extrahiert das Element n aus dem Array x.
Hinweis: Die Indexbereiche haben die Basis 1, d. h., sie beginnen bei 1 statt
bei 0.
Ein Index wird verwendet, um ein oder mehrere Zeichen aus einer
Zeichenfolge oder ein Element aus einem Array zu extrahieren.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
[100,233,466,998][3]
Gibt 466 zurück; 466 ist das dritte Element des Arrays.
LNAME [1]
Gibt „S“ zurück, wenn LNAME = „Schmidt“.
Crystal Reports-Anwenderhandbuch 563
9
9
Operatoren
Zeichenfolgeoperatoren
Postal [6]
Gibt den Wert „V“ zurück, wobei die Postleitzahl „T5A 9V2“ lautet (das
Leerzeichen zwischen A und 9 zählt als ein Element).
{Kunde.PLZ} [5 to 7]
Gibt „9V2“ zurück, wenn die Postleitzahl „T5A 9V2“ lautet.
{Datei.ARTIKELNUMMER} [4 to 5]
Gibt „40“ zurück, wobei die Artikelnummer A1/4020/B10 lautet.
Anmerkungen
Verwechseln Sie Indexe nicht mit dem In-Zeichenfolge-Operator.
Während durch einen Index eine Zeichenfolge nach einem Element
durchsucht und dieses Element, sobald gefunden, aus der Zeichenfolge
extrahiert wird, wird durch In Zeichenfolge lediglich geprüft, ob das gesuchte
Element in der Zeichenfolge enthalten ist.
Verwandte Themen:
•
Index (x(y)) Basic-Syntax
In-Zeichenfolge-Operator
Basic- und Crystal-Syntax.
Verwendung
x in y
Überprüft die Zeichenfolge y auf Vorkommen der Zeichenfolge x.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
"Bero" in {Kunde.ADRESSE1}
Gibt TRUE zurück, wobei {Kunde.ADRESSE1} „Berowitz-Straße 35“
lautet.
"Bero" in {Kunde.ADRESSE1}
Gibt TRUE zurück, wobei {Kunde.ADRESSE1} „Berowitz-Straße 35“
lautet.
"bero" in {Datei.MOTTO}
Gibt FALSE zurück, wenn {Datei.MOTTO} = „Klein aber oho“.
(Die Buchstaben „ber“ am Ende des Wortes „aber“ und das „o“ am
Anfang von „oho“ sind durch ein Leerzeichen voneinander getrennt, das
selbst als Element gezählt wird.)
564
Crystal Reports-Anwenderhandbuch
Operatoren
Bereichsoperatoren
"ber o" in {Datei.MOTTO}
Gibt TRUE zurück, wenn {Datei.MOTTO} = „Klein aber oho“.
(In diesem Beispiel enthält die Suchzeichenfolge „ber o“ ein Leerzeichen
zwischen „ber“ und dem „o“, so dass es zu einer Übereinstimmung kommt.)
Hinweis: Mit dem Operator „in“ können Sie nach einer Zeichenfolge in einem
Textbereich suchen. Zum Beispiel, „V5B“ in „V0A“ bis „V9Z“.
Leere Zeichenfolge einfügen
Basic- und Crystal-Syntax.
Verwendung
Fügt eine leere Zeichenfolge ein.
Beispiele
Durch Einfügen einer leeren Zeichenfolge können Sie überprüfen, ob für den
Kundennamen ein Eintrag vorliegt oder nicht. Wenn der Kundenname fehlt,
können Sie anstelle des Kundennamens die Kontaktperson für diesen
Kunden zurückgeben lassen.
if {Kunde.Kundenname}="" then
({Kunde.Kontaktperson, Vorname}+" "+{Kunde.Kontaktperson,
Nachname})''
Else
{Kunde.Kundenname}
Bereichsoperatoren
Bereichsoperatoren werden verwendet, um Bereiche zu erstellen und zu
überprüfen, ob ein bestimmter Wert in diesem Bereich liegt. Mit diesen
Operatoren können Sie überprüfen, ob zusammenhängende Werte, wie
Datumsangaben, Text oder Beträge, innerhalb eines Bereichs liegen.
•
•
•
•
•
•
•
•
•
In-Bereich-Operator (x in y)
To (x To y) – Bereicherstellungs-Operator
_To (x _To y) Bereich mit Ausschluss des Startpunkts
To_ (x To_ y) Bereich mit Ausschluss des Endpunkts
_To_ (x _To_ y) – Bereich mit Ausschluss von Start- und Endpunkt
Is > x
Is < x
Ist >= x
Ist <= x
Crystal Reports-Anwenderhandbuch 565
9
9
Operatoren
Bereichsoperatoren
•
•
•
•
upFrom (upFrom x) – Ab
upFrom_ (upFrom_ x) – Ab aber nicht einschließlich
Bis (upTo x)
upTo_ (upTo_ x) – Bis aber nicht einschließlich
In-Bereich-Operator (x in y)
Basic- und Crystal-Syntax.
Verwendung
x in y
Durchsucht einen Bereich von Wert (y), um zu prüfen, ob ein Wert (x)
innerhalb des angegebenen Bereichs liegt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
CurrentDate in CDate(1990, 09, 01) to CDate(1990, 09, 20)
Gibt True zurück, wenn das heutige Datum der 15. September 1990 ist.
CurrentDate in CDate(1990, 09, 01) to CDate(1990, 09, 20)
Gibt False zurück, wenn das heutige Datum der 21. September 1990 ist.
{Datei.MENGE} in {Datei.AUF LAGER} to ({Datei.DERZEIT NICHT
LIEFERBAR} + {Datei.BESTELLT})
Gibt TRUE zurück, wobei {Datei.MENGE} = 20, {Datei.AUF LAGER} =
10, {Datei.DERZEIT NICHT LIEFERBAR} = 5 und {Datei.BESTELLT} =
25 entspricht. (Liegt 20 im Bereich zwischen 10 und der Summe aus 5
und 25?).
{Datei.MENGE} in {Datei.AUF LAGER} to ({Datei.DERZEIT NICHT
LIEFERBAR} + {Datei.BESTELLT})
Gibt FALSE zurück, wobei {Datei.MENGE} = 31, {Datei.AUF LAGER} =
10, {Datei.DERZEIT NICHT LIEFERBAR} = 5 und {Datei.BESTELLT} =
25 entspricht. (Liegt 31 im Bereich zwischen 10 und der Summe aus 5
und 25?).
Anmerkungen
Die Kombination aus dem To (x To y) – Bereicherstellungs-Operator und dem
In-Bereich-Operator wird häufig zusammen mit den If-Then-Else-Operatoren
verwendet. Zum Beispiel in Crystal-Syntax Formel:
If ({Datei.MENGE} in (100.00 to 250.00)) Then
(.10 * {Datei.MENGE})
Else
0;
566
Crystal Reports-Anwenderhandbuch
Operatoren
Bereichsoperatoren
Liegt der Wert von {Datei.MENGE} im Bereich von 100,00 bis 250,00,
wird {Datei.MENGE} mit 0,10 multipliziert. Ist dies nicht der Fall, wird Null
zurückgeben.
Verwandte Themen:
•
Funktion DateTime
To (x To y) – Bereicherstellungs-Operator
Basic- und Crystal-Syntax.
Verwendung
x to y
Erstellt den Bereich x bis y.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
100.00 to 250.00
Der Bereich fortlaufender numerischer Werte von 100,00 bis 250,00
(einschließlich der Endwerte).
CDate(1990, 09, 01) to CDate(1990, 09, 20)
Der Bereich fortlaufender Datumsangaben, die mit dem 1. September
1990 beginnen und mit dem 20. September 1990 enden. Sowohl der 1.
September als auch der 20. September sind im Bereich enthalten.
"Anton" to "Lisa"
Ein Bereich fortlaufender Textwerte von „Anton“ bis „Lisa“, wobei die
Endwerte eingeschlossen sind.
Anmerkungen
•
Sie können keine Formel erstellen, die einen Bereich als Ergebnis liefert.
Daher wird der Bereicherstellungs-Operator immer in Verbindung mit
anderen Operatoren wie dem In-Bereich-Operator (x in y) verwendet. Mit
der Kombination aus Bereich erstellen und In Bereich können Sie eine
Formel erstellen, die nur einen der Werte Wahr oder Falsch zurückgibt,
aber keinen Bereich.
•
Es wird eine Reihe von vordefinierten Datumsbereiche, z. B. YearToDate,
zur Verfügung gestellt.
Crystal Reports-Anwenderhandbuch 567
9
9
Operatoren
Bereichsoperatoren
_To (x _To y) Bereich mit Ausschluss des Startpunkts
Basic- und Crystal-Syntax.
Verwendung
x
_To y
x _To y wird zum Festlegen eines Bereichs von Werten verwendet, die
größer als der Wert x (ohne x selbst) und zugleich kleiner als oder gleich
dem Wert y sind. x und y können von einem der folgenden Typen sein:
Zahl (Number), Boolesch (Boolean), Währung (Currency), Datum (Date),
Zeit (Time), Datum/Uhrzeit (DateTime) und Zeichenfolge (String).
Beispiele
Das folgende Beispiel gilt für die Basic-Syntax:
Dim BlackoutZeit As Date Range
Rem Blackout period is Jan. 1, 1999 to March 31, 1999,
inclusive
BlackoutDates = CDate(#12/31/1998#) _To CDate(#3/ 31/1999#)
If CurrentDate In BlackoutZeit Then
formula = "Blackout"
Else
formula = "Frei für Handelsgeschäfte"
End If
Wenn das heutige Datum der 31. Dezember 1998 ist, dann wird "Frei für
Handelsgeschäfte" zurückgegeben, da es vor dem Blackoutzeitraum
liegt.
Wenn das heutige Datum der 1. Januar 1999 ist, dann wird "Blackout"
zurückgegeben, da es innerhalb des Blackoutzeitraums liegt.
Wenn das heutige Datum der 31. März. 1999 ist, dann wird „Blackout“
zurückgegeben, da es innerhalb des Blackoutzeitraums liegt.
Wenn das heutige Datum der 30. Oktober 1999 ist, dann wird "Frei für
Handelsgeschäfte" ausgegeben, da es nach dem Blackoutzeitraum liegt.
To_ (x To_ y) Bereich mit Ausschluss des Endpunkts
Basic- und Crystal-Syntax.
Verwendung
x
568
To_ y
Crystal Reports-Anwenderhandbuch
Operatoren
Bereichsoperatoren
x To_ y wird zum Festlegen eines Bereichs von Werten verwendet, die
größer als oder gleich dem Wert x und zugleich kleiner als der Wert y
(ohne y selbst) sind. x und y können von einem der folgenden Typen
sein: Zahl (Number), Boolesch (Boolean), Währung (Currency), Datum
(Date), Zeit (Time), Datum/Uhrzeit (DateTime) und Zeichenfolge (String).
Beispiele
Das folgende Beispiel gilt für die Basic-Syntax:
Dim BlackoutZeit As Date Range
Rem Blackout period is Jan. 1, 1999 to March 31, 1999,
inclusive
BlackoutDates = CDate(#1/1/1999#) To_ CDate(#4/1/1999#)
If CurrentDate In BlackoutZeit Then
formula = "Blackout"
Else
formula = "Frei für Handelsgeschäfte"
End If
Wenn das heutige Datum der 31. Dezember 1998 ist, dann wird "Frei für
Handelsgeschäfte" zurückgegeben, da es vor dem Blackoutzeitraum
liegt.
Wenn das heutige Datum der 1. Januar 1999 ist, dann wird "Blackout"
zurückgegeben, da es innerhalb des Blackoutzeitraums liegt.
Wenn das heutige Datum der 31. März. 1999 ist, dann wird „Blackout“
zurückgegeben, da es innerhalb des Blackoutzeitraums liegt.
Wenn das heutige Datum der 1. April 1999 ist, dann wird „Frei für
Handelsgeschäfte“ zurückgegeben, da es nach dem Blackoutzeitraum
liegt.
_To_ (x _To_ y) – Bereich mit Ausschluss von Start- und
Endpunkt
Basic- und Crystal-Syntax.
Verwendung
x
_To_ y
x _To_ y wird zum Festlegen eines Bereichs von Werten verwendet, die
größer als der Wert x (ohne x selbst) und zugleich kleiner als der Wert y
(ohne y selbst) sind. x und y können von einem der folgenden Typen
sein: Zahl (Number), Boolesch (Boolean), Währung (Currency), Datum
(Date), Zeit (Time), Datum/Uhrzeit (DateTime) und Zeichenfolge (String).
Crystal Reports-Anwenderhandbuch 569
9
9
Operatoren
Bereichsoperatoren
Beispiele
Das folgende Beispiel gilt für die Basic-Syntax:
Dim BlackoutZeit As Date Range
Rem Blackout period is Jan. 1, 1999 to March 31, 1999,
inclusive
BlackoutDates = CDate(#12/31/1998#) _To_ CDate(#4/1/1999#)
If CurrentDate In BlackoutZeit Then
formula = "Blackout"
Else
formula = "Frei für Handelsgeschäfte"
End If
Wenn das heutige Datum der 31. Dezember 1998 ist, dann wird "Frei für
Handelsgeschäfte" zurückgegeben, da es vor dem Blackoutzeitraum
liegt.
Wenn das heutige Datum der 1. Januar 1999 ist, dann wird "Blackout"
zurückgegeben, da es innerhalb des Blackoutzeitraums liegt.
Wenn das heutige Datum der 31. März. 1999 ist, dann wird „Blackout“
zurückgegeben, da es innerhalb des Blackoutzeitraums liegt.
Wenn das heutige Datum der 1. April 1999 ist, dann wird „Frei für
Handelsgeschäfte“ zurückgegeben, da es nach dem Blackoutzeitraum
liegt.
Is > x
Basic- und Crystal-Syntax.
Is > x wird in der Basic-Syntax bevorzugt, upFrom_ (upFrom_ x) – Ab aber
nicht einschließlich dagegen in der Crystal-Syntax.
Verwendung
Is > x
Is > x wird zum Festlegen eines Bereichs von Werten verwendet, die
größer als der Wert x sind. x kann von jedem Typ sein: Zahl (Number),
Währung (Currency), Datum (Date), Uhrzeit (Time), DatumUhrzeit
(DateTime) und Zeichenfolge (String).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Is > 250
Alle Zahlen größer als 250.
570
Crystal Reports-Anwenderhandbuch
Operatoren
Bereichsoperatoren
Is > CDate (2000, 3, 17)
Alle Datumsangaben ab dem 18. März 2000, einschließlich dem 18.
März 2000.
Is < x
Basic- und Crystal-Syntax.
Is < x wird in der Basic-Syntax bevorzugt, upTo_ (upTo_ x) – Bis aber nicht
einschließlich dagegen in der Crystal-Syntax.
Verwendung
Is < x
Is < x wird zum Festlegen eines Bereichs von Werten verwendet, die
kleiner als der Wert x sind. x kann von jedem Typ sein: Zahl (Number),
Währung (Currency), Datum (Date), Uhrzeit (Time), DatumUhrzeit
(DateTime) und Zeichenfolge (String).
Beispiele
Das folgende Beispiel gilt für die Basic-Syntax:
Dim BlackoutZeit() As Date Range
Rem Der Blackoutzeitraum umfasst jedes Datum vor 1999 oder
jedes Datum im März 1999
BlackoutDates = Array (Is < CDate(1999, 1, 1), _
CDate(1999, 3, 1) To CDate
(1999, 3, 31))
If CurrentDate In BlackoutZeit Then
formula = "Blackout"
Else
formula = "Frei für Handelsgeschäfte"
End If
Wenn das heutige Datum der 30. Dezember 1998 ist, dann wird
"Blackout" zurückgegeben, da es innerhalb des Blackoutzeitraums vor
1999 liegt.
Wenn das heutige Datum der 1. Januar 1999 ist, dann wird "Frei für
Handelsgeschäfte" zurückgegeben, da es innerhalb keines
Blackoutzeitraums liegt.
Wenn das heutige Datum der 31. März 1999 ist, dann wird „Blackout“
zurückgegeben, da es innerhalb des Blackoutmonats März liegt.
Wenn das heutige Datum der 30. Oktober 1999 ist, dann wird "Frei für
Handelsgeschäfte" zurückgegeben, da es innerhalb keines
Blackoutzeitraums liegt.
Crystal Reports-Anwenderhandbuch 571
9
9
Operatoren
Bereichsoperatoren
Ist >= x
Basic- und Crystal-Syntax.
Is >= x wird in der Basic-Syntax bevorzugt, upFrom (upFrom x) – Ab dagegen
in der Crystal-Syntax.
Verwendung
Is >= x
Is >= x wird zum Festlegen eines Bereichs von Werten verwendet, die
größer als oder gleich dem Wert x sind. x kann von jedem Typ sein: Zahl
(Number), Währung (Currency), Datum (Date), Uhrzeit (Time),
DatumUhrzeit (DateTime) und Zeichenfolge (String).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Is >= 250
Alle Zahlen größer als oder gleich 250.
Is >= CDate (2000, 3, 17)
Alle Datumsangaben ab dem 17. März 2000, einschließlich dem 17.
März 2000.
Ist <= x
Basic- und Crystal-Syntax.
Is <= x wird in der Basic-Syntax bevorzugt, Bis (upTo x) dagegen in der
Crystal-Syntax.
Verwendung
Is <= x
Is <= x wird zum Festlegen eines Bereichs von Werten verwendet, die
kleiner als oder gleich dem Wert x sind. x kann von jedem Typ sein: Zahl
(Number), Währung (Currency), Datum (Date), Uhrzeit (Time),
DatumUhrzeit (DateTime) und Zeichenfolge (String).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Is <= 250
Alle Zahlen kleiner als oder gleich 250.
572
Crystal Reports-Anwenderhandbuch
Operatoren
Bereichsoperatoren
Is <= CDate (2000, 3, 17)
Alle Datumsangaben vor dem 17. März 2000, einschließlich dem 17.
März 2000.
upFrom (upFrom x) – Ab
Basic- und Crystal-Syntax.
upFrom x wird in der Crystal-Syntax bevorzugt, Ist >= x dagegen in der BasicSyntax.
Verwendung
upFrom x
upFrom x wird zum Festlegen eines Bereichs von Werten verwendet, die
größer als oder gleich dem Wert x sind. x kann von jedem Typ sein: Zahl
(Number), Boolesch (Boolean), Währung (Currency), Datum (Date), Zeit
(Time), Datum/Uhrzeit (DateTime) und Zeichenfolge (String).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
upFrom 250
Alle Zahlen größer als oder gleich 250.
upFrom CDate (2000, 3, 17)
Alle Datumsangaben ab dem 17. März 2000, einschließlich dem 17.
März 2000.
upFrom_ (upFrom_ x) – Ab aber nicht einschließlich
Basic- und Crystal-Syntax.
UpFrom_ x wird in der Crystal-Syntax bevorzugt, Is > x dagegen in der BasicSyntax.
Verwendung
upFrom_x
upFrom_ x wird zum Festlegen eines Bereiches von Werten verwendet,
die größer als, aber nicht gleich dem Wert x sind. x kann von jedem Typ
sein: Zahl (Number), Boolesch (Boolean), Währung (Currency), Datum
(Date), Zeit (Time), Datum/Uhrzeit (DateTime) und Zeichenfolge (String).
Crystal Reports-Anwenderhandbuch 573
9
9
Operatoren
Bereichsoperatoren
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
upFrom_ 250
Alle Zahlen größer als 250.
upFrom_ CDate (2000, 3, 17)
Alle Datumsangaben ab dem 18. März 2000, einschließlich dem 18.
März 2000.
Bis (upTo x)
Basic- und Crystal-Syntax.
upTo x wird in der Crystal-Syntax bevorzugt, Ist <= x dagegen in der BasicSyntax.
Verwendung
upTo x
upTo x wird zum Festlegen eines Bereichs von Werten verwendet, die
kleiner als oder gleich dem Wert x sind. x kann von jedem Typ sein: Zahl
(Number), Boolesch (Boolean), Währung (Currency), Datum (Date), Zeit
(Time), Datum/Uhrzeit (DateTime) und Zeichenfolge (String).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
upTo 250
Alle Zahlen kleiner als oder gleich 250.
upTo CDate (2000, 3, 17)
Alle Datumsangaben vor dem 17. März 2000, einschließlich dem 17.
März 2000.
upTo_ (upTo_ x) – Bis aber nicht einschließlich
Basic- und Crystal-Syntax.
upTo_ x wird in der Crystal-Syntax bevorzugt, Is < x dagegen in der BasicSyntax.
574
Crystal Reports-Anwenderhandbuch
Operatoren
Boolesche Operatoren
Verwendung
upTo_ x
upTo_x wird zum Festlegen eines Bereichs von Werten verwendet, die
kleiner als aber nicht gleich dem Wert x sind. x kann von jedem Typ sein:
Zahl (Number), Boolesch (Boolean), Währung (Currency), Datum (Date),
Zeit (Time), Datum/Uhrzeit (DateTime) und Zeichenfolge (String).
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
upTo_ 250
Alle Zahlen kleiner als 250.
upTo_ CDate (2000, 3, 17)
Alle Datumsangaben vor dem 17. März 2000, ausschließlich dem 17.
März 2000.
Boolesche Operatoren
Boolesche Operatoren werden zum Erstellen von Bedingungen verwendet,
die eine logische Beziehung zwischen zwei oder mehreren Werten erfordern.
Bedingungen, die boolesche Operatoren verwenden, werden als boolesche
Ausdrücke bezeichnet.
"A und B" sagt aus, dass sowohl A als auch B wahr sein müssen, damit die
Bedingung erfüllt ist (der Wert TRUE zurückgegeben wird).
"A oder B" sagt aus, dass entweder A oder B wahr sein muss (oder beide
wahr sein können), damit die Bedingung erfüllt ist (der Wert TRUE
zurückgegeben wird).
•
•
•
•
•
•
Not (Ungleich-Operator)
And (Und)
Or (Oder)
Xor (logischer Ausschluss)
Eqv (logische Äquivalenz)
Imp (logische Implikation)
Crystal Reports-Anwenderhandbuch 575
9
9
Operatoren
Boolesche Operatoren
Not (Ungleich-Operator)
Basic- und Crystal-Syntax.
Verwendung
not (x)
Kehrt den Wert Wahr oder Falsch von x um.
Wert von x
Not x
True
False
False
True
•
•
Not (Not(False)) = False
Not (Not(True)) = True
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
not (A>B and B>C)
Wenn A = 5, B = 4, C = 3, ist der Ausdruck (A>B and B>C) TRUE. Beide
durch den booleschen Operator "And" verbundene Bedingungen sind
TRUE. Daher besitzt die gesamte Anweisung den Wert TRUE. Durch
den Operator "Not" bekommt der Ausdruck den Wert FALSE.
not (A>B and B>C)
Wenn A = 3, B = 4, C = 3, ist der Ausdruck (A>B and B>C) FALSE. Eine
der durch den booleschen Operator "And" verbundenen Bedingungen ist
FALSE. Daher hat die gesamte Anweisung den Wert FALSE. Durch den
Operator "Not" bekommt der Ausdruck den Wert TRUE.
not ({Datei.AUF LAGER} - {Datei.AUFTRAG} > 0)
Gibt TRUE zurück, wenn {Datei.AUF LAGER} = 10 und
{Datei.AUFTRAG} = 11 entspricht.
not ({Datei.AUF LAGER} - {Datei.AUFTRAG} > 0)
Gibt FALSE zurück, wenn {Datei.AUF LAGER} = 10 und
{Datei.AUFTRAG} = 9 entspricht.
And (Und)
Basic- und Crystal-Syntax.
576
Crystal Reports-Anwenderhandbuch
Operatoren
Boolesche Operatoren
Verwendung
x And y
Wert von x
Wert von y
x And y
True
True
True
True
False
False
False
True
False
False
False
False
Beispiele
Das folgende Beispiel gilt für die Crystal-Syntax:
If {Datei.KREDITRAHMEN} = 5000 and {Datei.VERKÄUFER} = "SP"
Then
{Datei.MENGE}
Else
0
Wenn der Kreditrahmen 5.000 beträgt und der Verkäufer SP ist (also
beide Bedingungen erfüllt sind), wird der Wert des Feldes
{Datei.MENGE} zurückgegeben, andernfalls wird Null zurückgegeben.
A > B and B > C
Gibt den Wert TRUE zurück, wobei A = 10, B = 6 und C = 3 entspricht
(beide Bedingungen sind erfüllt).
Gibt FALSE zurück, wenn A = 10, B = 6 und C = 7 (nur eine der beiden
Bedingungen ist erfüllt).
(A>B) and (A * C - D > E) and (E / D <= B)
Gibt den Wert TRUE zurück, wobei A = 7, B = 5, C = 3, D = 2 und E = 10
entspricht (alle drei Bedingungen sind erfüllt).
Or (Oder)
Basic- und Crystal-Syntax.
Verwendung
x Or y
Wert von x
Wert von y
x Or y
True
True
True
True
False
True
False
True
True
False
False
False
Crystal Reports-Anwenderhandbuch 577
9
9
Operatoren
Boolesche Operatoren
Beispiele
Das folgende Beispiel gilt für die Crystal-Syntax:
If {Datei.KREDITRAHMEN} = 5000 or {Datei.VERKÄUFER} = "SP"
Then
{Datei.MENGE}
Else
0;
Diese Formel besagt: Wenn der Kreditrahmen 5.000 beträgt oder der
Verkäufer SP ist (eine der beiden Bedingungen TRUE ist), dann wird der
Wert im Feld {Datei.MENGE} zurückgegeben, ansonsten wird kein Wert
zurückgegeben.
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
A > B or B > C
Gibt den Wert TRUE zurück, wobei A = 10, B = 6 und C = 3 entspricht
(beide Bedingungen sind erfüllt).
A > B or B > C
Gibt TRUE zurück, wenn A = 10, B = 6 und C = 7 (eine der beiden
Bedingungen ist erfüllt).
A > B or B > C
Gibt FALSE zurück, wenn A = 5, B = 6 und C = 7 (keine der beiden
Bedingungen ist erfüllt).
(A>B) or (A * C - D > E) or (E / D<= B)
Gibt TRUE zurück, wobei A = 5, B = 5, C = 3, D = 2 und E = 12 entspricht.
(Mindestens eine der drei Bedingungen wird erfüllt. In diesem Fall ist nur
(A * C - D > E) TRUE.)
Xor (logischer Ausschluss)
Basic- und Crystal-Syntax.
Verwendung
x Xor y
578
Wert von x
Wert von y
x Xor y
True
True
False
True
False
True
False
True
True
False
False
False
Crystal Reports-Anwenderhandbuch
Operatoren
Boolesche Operatoren
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
{Kunde.VERKAUF} Xor {Kunde.REG_GENEHMIGUNG}
Vermittlung ist wahr (TRUE), wenn entweder {Kunde.VERKAUF} oder
{Kunde.REG_GENEHMIGUNG} wahr (TRUE) und der andere Operand
falsch (FALSE) ist.
Eqv (logische Äquivalenz)
Basic- und Crystal-Syntax.
Verwendung
x Eqv y
Wert von x
Wert von y
X Eqv y
True
True
True
True
False
False
False
True
False
False
False
True
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
{Kunde.VERKAUF} Eqv {Kunde.REG_GENEHMIGUNG}
Genehmigung ist wahr (TRUE), wenn sowohl {Kunde.VERKAUF} als
auch {Kunde.REG_GENEHMIGUNG} wahr (TRUE) ist oder sowohl
{Kunde.VERKAUF} als auch {Kunde.REG_GENEHMIGUNG} falsch
(FALSE) ist.
Imp (logische Implikation)
Basic- und Crystal-Syntax.
Verwendung
x Imp y
Wert von x
Wert von y
x Imp y
True
True
True
True
False
False
Crystal Reports-Anwenderhandbuch 579
9
9
Operatoren
Arrayoperatoren
Wert von x
Wert von y
x Imp y
False
True
True
False
False
True
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
{Kunde.VERKAUF} Imp {Kunde.REG_GENEHMIGUNG}
GenehmigungOderAufheben ist wahr (TRUE), wenn sowohl
{Kunde.VERKAUF} als auch {Kunde.REG_GENEHMIGUNG}
übereinstimmen (d. h., wenn beide Wahr oder Falsch sind) oder wenn
nur {Kunde.REG_GENEHMIGUNG} übereinstimmt (d. h., wenn nur
{Kunde.REG_GENEHMIGUNG} TRUE ist) und Vorrang hat.
Arrayoperatoren
Arrayoperatoren werden verwendet, um eine Liste mit Datenfeldern,
Konstanten oder Textzeichenfolgen zu erstellen. Anhand dieser Listen
können Sie dann überprüfen, ob ein Feld in der entsprechenden Liste
vorkommt und an welcher Listenposition sich das extrahierte Element
befindet. Während mit Bereichsoperatoren überprüft wird, ob ein Element in
einem Wertebereich vorkommt, können Sie mit Hilfe der Datenfeldoperatoren
feststellen, ob sich ein Element unter einer Reihe nicht zusammenhängender
Werte befindet.
•
•
•
•
•
Arrayerstellung
Index (x[y])
In Array
Redim
Redim Preserve
Arrayerstellung
Crystal-Syntax.
Der Array-Erstellungs-Operator kann nur mit Crystal-Syntax verwendet
werden. Die Array-Funktion kann nur mit Basic-Syntax verwendet werden.
Siehe Arrays (Basic-Syntax).
580
Crystal Reports-Anwenderhandbuch
Operatoren
Arrayoperatoren
Verwendung
[x,y,z,...n]
Erstellt ein Array mit den Elementen x, y, z, ... n.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
[100,200,300,400]
[{Datei.MENGEA}, {Datei.MENGEB}, {Datei.MENGEC}]
[({Datei.PREIS1} * .5),({Datei.PREIS2} * .5),
({Datei.PREIS3} * .25)]
[500, ({Datei.MENGE} / 3)]
Hinweis: In einem Array kann nur ein Datentyp vorkommen.
Index (x[y])
Siehe Index in Arrays und Zeichenfolgen.
In Array
Basic- und Crystal-Syntax.
Verwendung
x in [y]
Ist x in dem Array y enthalten?
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
Rem Basic-Syntax
{Kunde.Region} in Array ("NW", "HE", "TH")
//Crystal-Syntax
{Kunde.Region} in [("NW", "HE", "TH"]
Ist der Wert des Feldes {Kunde.Region} im Array der
Bundesländerabkürzungen enthalten?
Die folgenden Beispiele gelten für die Crystal-Syntax:
{Datei.FARBE} in ["Rot", "Weiß", "Blau"]
Ist der Wert im Feld {Datei.FARBE} im Array der Farben, die in Klammern
aufgelistet sind, enthalten?
DayofWeek({Datei.DATUM}) in [2, 4, 6]
Ist der Wert im Feld {Datei.DATUM}, der in eine Zahl umgewandelt wurde, die
DayOfWeek entspricht, im Array der in Klammern aufgelisteten Zahlen
enthalten? (Sonntag = 1, Samstag = 7)
Crystal Reports-Anwenderhandbuch 581
9
9
Operatoren
Arrayoperatoren
Redim
Basic-Syntax x(n)
Verwenden Sie in der Crystal-Syntax nur Redim x[n] (mit eckigen Klammern)
und in der Basic-Syntax nur Redim x(n) (mit runden Klammern).
Verwendung
Redim x(n)
Ändern Sie die Größe des Arrays x zur Größe n, wobei x ein Array und n
eine positive ganze Zahl ist, mit der die neue Größe von x festgelegt wird.
Beispiele
Das folgende Beispiel gilt für die Basic-Syntax:
Dim x () As String
'Initialisierung der ersten drei Array-Elemente
x = Array ("a", "bb", "ccc")
'Änderung der Größe von x zu 4; alte Werte werden ignoriert
'x ist jetzt gleich dem Array ("", "", "", "")
Redim x(4)
'x ist jetzt gleich dem Array ("", "", "", "dddd")
x(4) = "dddd"
formula = x(4)
Anmerkungen
Wenn die Größe eines Arrays mit Redim geändert wird, werden die Elemente
des Arrays mit Standardwerten für den betreffenden Typ gefüllt.
Crystal-Syntax x[n]
•
Verwenden Sie in der Crystal-Syntax nur Redim x[n] (mit eckigen
Klammern) und in der Basic-Syntax nur Redim x(n) (mit runden
Klammern).
•
Im Gegensatz zu Redim x(n) in der Basic-Syntax kann eine RedimAnweisung in der Crystal-Syntax nicht mehrere Arrays besitzen.
Verwendung
Redim x[n]
Änderung der Größe des Arrays x zur Größe n, wobei x ein Array und n
eine positive ganze Zahl ist, mit der die neue Größe von n festgelegt
wird.
582
Crystal Reports-Anwenderhandbuch
Operatoren
Arrayoperatoren
Beispiele
Das folgende Beispiel gilt für die Crystal-Syntax:
Local StringVar array x:= ["a", "bb", "ccc"];
// Änderung der Arraygröße auf 4; alte Werte werden
ignoriert
// und durch Standardwerte in Form leerer Zeichenfolgen
ersetzt
Redim x [4];
x[4] := "dddd"; // nur x[4] wird initialisiert
Anmerkungen
Wenn die Größe eines Arrays mit Redim geändert wird, werden die Elemente
des Arrays mit Standardwerten für den betreffenden Typ gefüllt.
Redim Preserve
Basic-Syntax x(n)
Verwendung
Redim Preserve x(n)
Ändern Sie die Größe des Arrays x zur Größe n unter Beibehaltung der in
x ursprünglich enthaltenen Werte. x ist ein Array, und n ist eine positive
ganze Zahl, mit der die neue Größe von x festgelegt wird.
Beispiele
Das folgende Beispiel gilt für die Basic-Syntax:
Dim x () As String
'Initialisierung der ersten drei Array-Elemente
x = Array ("a", "bb", "ccc")
'Änderung der Größe von x auf 4; alte Werte bleiben erhalten
Redim Preserve x(4)
'Initialisiert x(4)
x(4) = "dddd"
'gibt "dddd" zurück
formula = x(4)
Crystal-Syntax x[n]
•
Verwenden Sie in der Crystal-Syntax nur Redim Preserve x[n] (mit
eckigen Klammern) und in der Basic-Syntax nur Redim Preserve x(n)
(mit runden Klammern).
•
Im Gegensatz zu Redim Preserve x(n) in der Basic-Syntax können in der
Crystal-Syntax in einer einzigen Redim Preserve-Anweisung nicht
mehrere Arrays angegeben werden.
Crystal Reports-Anwenderhandbuch 583
9
9
Operatoren
Musteroperatoren
Verwendung
Redim Preserve x[n]
Änderung der Größe des Arrays x zur Größe n unter Beibehaltung der in
x ursprünglich enthaltenen Werte. x ist ein Array, und n ist eine positive
ganze Zahl, mit der die neue Größe von n festgelegt wird.
Beispiele
Das folgende Beispiel gilt für die Crystal-Syntax:
Local StringVar array x:= ["a", "bb", "ccc"];
// Änderung der Arraygröße auf 4 unter Beibehaltung der
alten Werte.
Redim Preserve x [4];
// jetzt x = ["a", "bb", "ccc", "dddd"]
x [4] := "dddd";
x[4] // Gibt "dddd" zurück
Musteroperatoren
Musteroperatoren werden verwendet, um Zeichenfolgen mit einem
festgelegten Muster zu vergleichen. Sie eignen sich besonders als
Operatoren zum Auswählen von Datensätzen, wobei ein Teil einer
Zeichenfolge (like (Wie Muster)) oder eine teilweise unbekannte Zeichenfolge
(Beginnt-mit-Operator (x startsWith y)) mit dem Muster übereinstimmen
muss.
•
•
Beginnt-mit-Operator (x startsWith y)
like (Wie Muster)
Beginnt-mit-Operator (x startsWith y)
Basic- und Crystal-Syntax.
Der Beginnt-Mit-Operator ist dann hilfreich, wenn Datensätze zum Einfügen
in Berichte oder Entfernen aus Berichten ausgewählt werden sollen.
Verwendung
x startsWith y
{feldname} startsWith "abc"
Dieser Operator überprüft, ob der Inhalt von {Feldname}mit der
angegebenen Zeichenfolge beginnt: „abc“. Wenn der Inhalt des Feldes
mit „abc“ beginnt, gibt die Formel den Wert TRUE zurück. Wenn das Feld
anders beginnt, gibt die Formel FALSE zurück.
584
Crystal Reports-Anwenderhandbuch
Operatoren
Musteroperatoren
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
{Kunde.Kundenname} startsWith "A"
Gibt TRUE zurück, wenn {Kunde.Kundenname} = ABC Ltd.
{Kunde.Kundenname} startsWith "C"
Gibt FALSE zurück, wenn {Kunde.Kundenname} = ABC Ltd.
{Kunde.Kundenname} startsWith "ABC"
Gibt TRUE zurück, wenn {Kunde.Kundenname} = ABC Inc. oder ABC
Ltd.
{Kunde.Kundenname} startsWith "ABC"
Gibt FALSE zurück, wenn {Kunde.Kundenname} = XYZ Inc.
like (Wie Muster)
Basic- und Crystal-Syntax.
Der like-Operator ist dann hilfreich, wenn Datensätze zum Einfügen in
Berichte oder Entfernen aus Berichten ausgewählt werden sollen.
Verwendung
x like y
{Feldname} like "c?n*"
Dieser Operator prüft, ob der Inhalt von {Feldname} mit der Zeichenfolge
„c?n*“, die als Muster angegeben wurde, übereinstimmt. Wenn der Inhalt
des Feldes mit dem Muster „c?n*“ übereinstimmt, gibt die Formel den
Wert TRUE zurück. Wenn das Feld anders beginnt, gibt die Formel
FALSE zurück.
Verwenden Sie die Platzhaltersymbole ? und * als Zeichenvariablen. Das
Fragezeichen (?) steht für ein einzelnes Zeichen. Das Symbol * steht für
eine beliebige Anzahl von Zeichen.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
{Kunde.VORNAME} like "T?m"
Gibt TRUE zurück, wenn {Kunde.VORNAME} = Tim oder Tom.
{Kunde.VORNAME} like "T?m"
Gibt FALSE zurück, wenn {Kunde.VORNAME} = Dirk oder Jan.
{Kunde.NACHNAME} like "*s?n*"
Gibt TRUE zurück, wenn {Kunde.NACHNAME} = Jansen oder Bessen.
{Kunde.NACHNAME} like "*s?n*"
Gibt FALSE zurück, wenn {Kunde.NACHNAME} = Schmitt oder Becker.
Crystal Reports-Anwenderhandbuch 585
9
9
Operatoren
Operatoren für Kontrollstrukturen
Operatoren für Kontrollstrukturen
Bei Formeln ohne Steuerelementstrukturen wird beim Auswerten der Formel
jede Anweisung genau einmal abgearbeitet. Die Anweisungen werden von
der ersten Anweisung der Formel bis zur letzten in sequentieller Reihenfolge
abgearbeitet. Mit Hilfe von Steuerelementstrukturen können Sie diese
feststehende Abfolge ändern. Je nachdem, welche Steuerelementstruktur Sie
wählen, können Sie abhängig davon, ob bestimmte Bedingungen erfüllt
werden, eine Folge von Anweisungen überspringen oder mehrmals
auswerten lassen. Steuerelementstrukturen sind das wichtigste Hilfsmittel,
um betriebswirtschaftliche Abläufe auszudrücken, und werden in
Standardberichtsformeln häufig dafür eingesetzt.
Basic-Syntax – Operatoren für Kontrollstrukturen
•
•
•
•
•
•
•
If-Anweisungen (Basic-Syntax)
Select-Anweisungen (Basic-Syntax)
For/Next-Schleifen (Basic-Syntax)
Verwenden der Exit For-Anweisung (Basic-Syntax)
While-Schleifen (Basic-Syntax)
Do-Schleifen (Basic-Syntax)
Option-Schleife (Basic-Syntax)
Crystal-Syntax – Operatoren für Kontrollstrukturen
•
•
•
•
•
If-Ausdrücke (Crystal-Syntax)
Select-Ausdrücke (Crystal-Syntax)
For-Schleifen (Crystal-Syntax)
While-Schleifen (Crystal-Syntax)
Option-Schleife (Crystal-Syntax)
Andere Operatoren
Mit anderen Operatoren können Sie Variablen Werte zuweisen, eine
Verarbeitungsreihenfolge zum Ausführen der Berechnungen bestimmen,
Anmerkungen von Formeln trennen, Datumskonstanten definieren oder
Funktionen aufrufen.
•
586
Klammeroperatoren
Crystal Reports-Anwenderhandbuch
Operatoren
Andere Operatoren
•
•
•
Zuweisungsoperatoren
Kommentare
Datum-Uhrzeit-Literal (#…#)
Klammeroperatoren
Basic- und Crystal-Syntax.
Verwendung
(x + y) * z
Die Berechnungen innerhalb der Klammern werden zuerst ausgeführt.
Um die Verarbeitungsreihenfolge zu steuern, in der eine Formel vom
Dialogfeld „Format-Editor“ berechnet wird, werden Klammern verwendet. In
der Basic-Syntax werden Klammern auch als Index für Arrays und
Zeichenfolgen verwendet.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
8 + 6 * 3 - 6 / 2
Gibt 23 zurück.
(8 + 6) * 3 - 6 / 2
Gibt 39 zurück.
(8 + 6) * (3 - 6 / 2)
Gibt 0 zurück.
(8 + 6 * 3 - 6) / 2
Gibt 10 zurück.
{Datei.UMSATZ} - {Datei.KOSTEN GESAMTER WARENLIEFERUNG} {Datei.S&A} * .8
Gibt 1000 zurück, wobei UMSATZ = 25.000, KOSTEN GESAMTER
WARENLIEFERUNG = 12.000 und S&A = 15.000 entspricht.
{Datei.UMSATZ} - (({Datei.KOSTEN GESAMTER WARENLIEFERUNG} {Datei.S&A}) * .8)
Gibt 27.400 zurück, wobei UMSATZ = 25.000, KOSTEN GESAMTER
WARENLIEFERUNG = 12.000 und S&A = 15.000 entspricht.
({Datei.UMSATZ} - {Datei.KOSTEN GESAMTER WARENLIEFERUNG} {Datei.S&A}) * .8
Gibt –1.600 zurück, wobei UMSATZ = 25.000, KOSTEN GESAMTER
WARENLIEFERUNG = 12.000 und S&A = 15.000 entspricht.
Crystal Reports-Anwenderhandbuch 587
9
9
Operatoren
Andere Operatoren
Zuweisungsoperatoren
Basic syntax (x = y)
Sie können den Zuweisungsoperator (=) und das Zuweisungsschlüsselwort
„Let“ (Let x = y). nur in der Basic-Syntax verwenden. Die Crystal-Syntax
verwendet den anderen Zuweisungsoperator (:=).
Verwendung
x = y
Weist y der Variablen x zu; x muss vor der Zuweisung bereits deklariert
sein. y muss vom selben Typ wie x oder ein mit x kompatibler Typ sein.
Let x = y
Weist y der Variablen x zu; x muss vor der Zuweisung bereits deklariert
sein. y muss vom selben Typ wie x oder ein mit x kompatibler Typ sein.
Beispiele
Das folgende Beispiel gilt für die Basic-Syntax:
Dim n As Number
Dim b As Boolean
Dim c As Currency
Dim d As Date
Dim t As Time
Dim s As String
Dim ZahlenArray () As Number
'n wird die Zahl 100 zugewiesen.
n = 100
'b wird der boolesche Wert True zugewiesen
b = True
'c wird der Währungswert 5.000 zugewiesen
c = CCur (5000)
'd wird der Datumswert 10. Okt. 1999 zugewiesen 10, 1999
d = CDate ("10, 10, 1999")
't wird der Zeitwert 12:50 zugewiesen
t = CTime ("12:50am")
's wird eine Zeichenfolge zugewiesen, die aus einer
Verkettung von zwei Teilzeichenfolgen und einem Feldwert
besteht
s = "Der Gesamtumsatz beläuft sich auf " &
{Aufträge.Auftragssumme} & " Milliarden."
'ZahlenArray wird ein Array aus Zahlenwerten zugewiesen
numArray = Array (10, 20, 30)
formula = s
588
Crystal Reports-Anwenderhandbuch
Operatoren
Andere Operatoren
Anmerkungen
•
Eine Variable muss in einer separaten Anweisung deklariert worden sein,
bevor ihr in der Basic-Syntax ein beliebiger Wert zugewiesen werden
kann.
•
Bei einer Zuweisung wird lediglich einer Variablen ein Wert zugewiesen.
Wenn eine Formel einen Rückgabewert liefert, wird dieser der Variablen
formula zugewiesene Wert so formatiert, wie dies für dieses Formelfeld
des entsprechenden Typs festgelegt wurde.
Crystal-Syntax (x := y)
Sie können den Zuweisungsoperator (:=) nur in der Crystal-Syntax
verwenden.
Verwendung
x := n
Weist der Variable x den Wert n zu. (x muss in der Formel bereits
deklariert worden sein.)
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
Amount:= 0
Initialisiert die Variable MENGE (setzt die Variable auf Null).
Amount:= 100
Weist der Variablen Amount den Wert 100 zu.
MENGE := MENGE + {Datei.MENGE}
Weist der Variablen MENGE das Ergebnis einer Berechnung zu. Bei der
Berechnung handelt es sich um die Addition des Wertes im Mengenfeld
({Datei.MENGE}) und des aktuellen Wertes der Variablen MENGE.
MENGE:= {Datei.MENGE1} + {Datei.MENGE2} + {Datei.MENGE3}
Summiert die drei Mengenfelder und weist der Variablen MENGE die
Summe zu.
Kunde:= "Westside Motors"
Die Zeichenfolge „Westside Motors“ wird der Variablen Customer
zugewiesen.
Kunde:= {Kunde.VORNAME} + {Kunde.NACHNAME}
Verkettet zwei Felder und weist der Variablen Customer den verketteten
Wert beider Felder zu.
Kunde := TrimRight({Kunde.VORNAME}) + {Kunde.NACHNAME}
Crystal Reports-Anwenderhandbuch 589
9
9
Operatoren
Andere Operatoren
Entfernt die Leerzeichen hinter dem Vornamen im Feld
{Kunde.VORNAME}, verkettet dieses Feld mit dem Feld für den
Nachnamen ({Kunde.NACHNAME}) und weist den verketteten Wert der
Variablen Kunde zu.
"Hr . {Kunde.NACHNAME}
Concatenates the string “Mr. Verkettet die Zeichenfolge „Herr“ mit dem
Wert des Nachnamenfeldes {Kunde .NACHNAME} und weist der
Variablen Customer den verketteten Wert zu.
Amount:= 100; Customer:= "Westside Motors"
Weist die Konstante 100 der Zahlenvariablen Amount und die
Zeichenfolge „Westside Motors“ der Zeichenfolgenvariablen Customer
zu. Sie können mehreren Variablen Werte zuweisen, indem Sie die
Zuweisungsanweisungen mit Semikolons voneinander trennen.
Kommentare
Formelkommentare sind Hinweise, die den Aufbau und die Funktion der
Formel erklären. Kommentare werden nicht ausgedruckt und haben keinen
Einfluss auf die Formel. Sie werden nur im Formula Workshop angezeigt.
Basic-Syntax (Rem)
Verwendung
Rem Text
Der Text, der auf den Operator folgt, ist ein Kommentar.
Beispiele
Die folgenden Beispiele gelten für die Basic-Syntax:
Rem Diese Formel gibt die Gesamtzahl aller Tage zurück, an
denen in einem Jahr gearbeitet wurde.
Der Kommentar steht in einer eigenen Zeile.
formula = TageGesamt : Rem Gesamtzahl aller Tage, an denen in
einem Jahr gearbeitet wurde.
Der Kommentar folgt auf eine Formelanweisung und einen Doppelpunkt.
formula = TageGesamt : Rem Diese Formel gibt die Gesamtzahl
aller Tage zurück, _
an denen in einem Jahr
gearbeitet wurde.
Der Kommentar folgt auf eine Formelanweisung und einen Doppelpunkt
und verwendet das Zeilenfortsetzungszeichen, um in der nächsten Zeile
fortgesetzt werden zu können.
590
Crystal Reports-Anwenderhandbuch
Operatoren
Andere Operatoren
Anmerkungen
•
Der Kommentar kann sich ober- oder unterhalb der Formel befinden. Er
kann in einer eigenen Zeile beginnen oder auch in derselben Zeile nach
der Formel folgen, wenn ihm ein Doppelpunkt (:) vorangestellt wird.
•
Innerhalb eines Kommentars kann ein Zeilenfortsetzungszeichen („_“)
verwendet werden, mit dem der Kommentar in der nächsten Zeile
fortgesetzt werden kann.
•
Der Kommentaroperator (//) kann nur in der Crystal-Syntax verwendet
werden, während die anderen Kommentaroperatoren (’) und (Rem) in der
Basic-Syntax verwendet werden.
Basic-Syntax (')
Verwendung
' Text
Der Text, der auf den Operator folgt, ist ein Kommentar.
Beispiele
Die folgenden Beispiele gelten für die Basic-Syntax:
'Diese Formel gibt die Gesamtzahl aller Tage zurück, an
denen in einem Jahr gearbeitet wurde.
Der Kommentar steht in einer eigenen Zeile.
formula = TageGesamt 'Gesamtzahl aller Tage, an denen in
einem Jahr gearbeitet wurde.
Der Kommentar folgt auf eine Formelanweisung.
formula = TageGesamt 'Diese Formel gibt die Gesamtzahl aller
Tage zurück, _
an denen in einem Jahr
gearbeitet wurde.
Der Kommentar folgt auf eine Formelanweisung und verwendet das
Zeilenfortsetzungszeichen, um in der nächsten Zeile fortgesetzt werden
zu können.
Anmerkungen
•
Der Kommentar kann sich ober- oder unterhalb der Formel befinden. Er
kann in einer eigenen Zeile beginnen oder auch in derselben Zeile auf die
Formel folgen, wenn ihm ein Apostroph (’) vorangestellt wird.
•
Innerhalb eines Kommentars kann ein Zeilenfortsetzungszeichen („_“)
verwendet werden, mit dem der Kommentar in der nächsten Zeile
fortgesetzt werden kann.
Crystal Reports-Anwenderhandbuch 591
9
9
Operatoren
Andere Operatoren
•
Der Kommentaroperator (//) kann nur in der Crystal-Syntax verwendet
werden, während die anderen Kommentaroperatoren (’) und (Rem) in der
Basic-Syntax verwendet werden.
Crystal-Syntax (//)
Verwendung
// Text
Der auf diesen Operator folgende Text ist ein Kommentar; er wird nicht
als Teil der Formel betrachtet und nicht ausgegeben.
Beispiele
Die folgenden Beispiele gelten für die Crystal-Syntax:
{Datei.UMSATZ} - {Datei.UNKOSTEN}
// berechnet den Bruttogewinn
Die Formel lautet {Datei.UMSATZ} - {Datei.UNKOSTEN}; alles andere
wird vom Dialogfeld „Formel-Editor“ ignoriert.
({Datei.UMSATZ} - {Datei.SPANNE}) *0,06
// berechnet die Verkaufskommission
Die Formel lautet ({Datei.UMSATZ} - {Datei.SPANNE}) * 0,06; alles
andere wird vom Dialogfeld „Formel-Editor“ ignoriert.
//Es folgt
//eine Formel. Beachten Sie, dass Sie nach
//einem erzwungenen Zeilenumbruch
//die neue Zeile wieder mit dem
//Operator "Kommentar" beginnen müssen.
If {Datei.UNKOSTEN} > {Datei.VERKAUFSPREIS} Then "Verlust"
Else "";
//Dies war eine Formel.
Alle kommentierten Zeilen, die vor oder nach der Formel angezeigt
werden, werden ignoriert.
Anmerkungen
•
Der Kommentar kann sich ober- oder unterhalb der Formel befinden oder
sogar am Ende einer Formelzeile stehen, wenn er durch zwei
Schrägstriche eingeleitet wird.
•
Sie können den Kommentaroperator (//) nur in der Crystal-Syntax
verwenden und die anderen Kommentaroperatoren (') und (Rem) in der
Basic-Syntax.
Datum-Uhrzeit-Literal (#…#)
Basic- und Crystal-Syntax.
592
Crystal Reports-Anwenderhandbuch
Operatoren
Variablendeklarationsoperatoren
Verwendung
# Alphanumerische Zeichenfolge #
Dieser Operator wandelt die eingeschlossene alphanumerische
Zeichenfolge in einen Datum-Uhrzeit-Wert um. Die alphanumerische
Zeichenfolge muss eine allgemein verwendete Datums-, Uhrzeit- oder
Datum-Uhrzeit-Angabe enthalten. Viele Formate werden unterstützt.
Beispiele
Die folgenden Beispiele gelten sowohl für die Basic-Syntax als auch für die
Crystal-Syntax:
#10:10am#
Gibt den DateTime-Wert 10:10:00 zurück.
#Oct. 19, 1999 #
Gibt den DateTime-Wert 19. Oktober 1999 12:00:00 zurück.
#Oct. 19, 1999 10:10am#
Gibt den DateTime-Wert 19. Oktober 1999 10:10:00 zurück.
Anmerkungen
Wenn eine Formel einen Datum-Uhrzeit-Wert zurückgibt, wird das Format
dieses Rückgabewertes durch die für dieses Formelfeld gültige DatumUhrzeit-Formatierung bestimmt.
Variablendeklarationsoperatoren
Alle Variablennamen müssen in der Formelsprache deklariert worden sein,
bevor Sie ihn in einer Formel einsetzen können.
•
•
Variablendeklaratoren für Basic-Syntax
Variablendeklaratoren für Crystal-Syntax
Variablendeklaratoren für Basic-Syntax
Mit Hilfe von Variablendeklaratoren können Sie eine Variable definieren,
indem Sie ihr einen Namen zuweisen. Sie haben auch die Möglichkeit, einer
Variablen bei der Deklaration einen Wert zuzuweisen, und zwar unter
Verwendung des Zuweisungsoperators. Die folgenden Variablendeklaratoren
gelten für die Basic-Syntax.
Verwendung
•
•
Dim x
Dim x ()
Crystal Reports-Anwenderhandbuch 593
9
9
Operatoren
Variablendeklarationsoperatoren
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Dim x As Boolean
Dim x As Number
Dim x As Currency
Dim x As Date
Dim x As Time
Dim x As DateTime
Dim x As String
Dim x As Number Range
Dim x As Currency Range
Dim x As Date Range
Dim x As Time Range
Dim x As DateTime Range
Dim x As String Range
Dim x () As Boolean
Dim x () As Number
Dim x () As Currency
Dim x () As Date
Dim x () As Time
Dim x () As DateTime
Dim x () As String
Dim x () As Number Range
Dim x () As Currency Range
Dim x () As Date Range
Dim x () As Time Range
Dim x () As DateTime Range
Dim x () As String Range
Deklariert eine Variable x, die Daten eines Datentyps aufnehmen kann,
der dem verwendeten Variablendeklarator entspricht.
Anmerkungen
594
•
Eine Variable muss mit einem Variablendeklarator deklariert worden sein,
bevor Sie sie in einer Formel einsetzen können.
•
Dim gibt eine Variable mit lokalem Gültigkeitsbereich an. Sie können die
verschiedenen Bereiche mit den Schlüsselwörtern Local (lokal), Global
und Shared (freigegeben) anstelle von Dim angeben. Local und Dim sind
gleichwertige Schlüsselwörter.
Crystal Reports-Anwenderhandbuch
Operatoren
Variablendeklarationsoperatoren
Variablendeklaratoren für Crystal-Syntax
Mit Hilfe von Variablendeklaratoren können Sie eine Variable definieren,
indem Sie ihr einen Namen zuweisen. Sie haben auch die Möglichkeit, einer
Variablen bei der Deklaration einen Wert zuzuweisen, und zwar unter
Verwendung des Zuweisungsoperators. Die folgenden Variablendeklaratoren
gelten für die Crystal-Syntax.
Verwendung
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Local BooleanVar x
Local NumberVar x
Local CurrencyVar x
Local DateVar x
Local TimeVar x
Local DateTimeVar x
Local StringVar x
Local NumberVar range x
Local CurrencyVar range x
Local DateVar range x
Local TimeVar range x
Local DateTimeVar range x
Local StringVar range x
Local BooleanVar array x
Local NumberVar array x
Local CurrencyVar array x
Local DateVar array x
Local TimeVar array x
Local DateTimeVar array x
Local StringVar array x
Local NumberVar range array x
Local CurrencyVar range array x
Local DateVar range array x
Local TimeVar range array x
Local DateTimeVar range array x
Local StringVar range array x
Deklariert eine lokale Variable x, die Daten eines Datentyps aufnehmen
kann, der dem verwendeten Variablendeklarator entspricht.
Crystal Reports-Anwenderhandbuch 595
9
9
Operatoren
Bereichsoperatoren
Lokale Variablen erhalten ihren Wert nur für die Auswertung der Formel,
in der sie verwendet werden.
Anmerkungen
•
Eine Variable muss mit einem Variablendeklarator deklariert worden sein,
bevor Sie sie in einer Formel einsetzen können.
•
Local (Lokal) legt eine Variable mit lokalem Gültigkeitsbereich fest. Zur
Angabe anderer Bereiche können Sie die Schlüsselwörter Global und
Shared (freigegeben) anstelle von Local verwenden. Sie können das
Bereichsschlüsselwort auch auslassen und die Deklaration der Variablen
mit dem Typnamen beginnen. Dies entspricht der Deklaration einer
globalen Variablen.
Bereichsoperatoren
Der Gültigkeitsbereich einer Variablen ist ein Attribut, das angibt, wo und wie
Sie die Variable verwenden können, z. B. innerhalb der Formel, in der sie
definiert ist oder auch außerhalb dieser Formel.
•
•
Variablenbereiche für Basic-Syntax
Variablenbereiche für Crystal-Syntax
Variablenbereiche für Basic-Syntax
Mit der Deklaration eines Bereichs für eine Variable wird ihre Verwendbarkeit
für verschiedene Bereiche eines Berichts festgelegt.
Folgende Bereiche stehen für Variablen zur Verfügung:
•
•
•
•
Dim
Local (Lokal)
Global
Shared (Freigegeben)
Dim gibt eine Variable mit lokalem Gültigkeitsbereich an. Local und Dim sind
gleichwertige Schlüsselwörter.
Variablenbereiche für Crystal-Syntax
Mit der Deklaration eines Bereichs für eine Variable wird ihre Verwendbarkeit
für verschiedene Bereiche eines Berichts festgelegt.
Folgende Bereiche stehen für Variablen zur Verfügung:
•
596
Global
Crystal Reports-Anwenderhandbuch
Operatoren
Bereichsoperatoren
Die Variable steht für Formeln im gesamten aktuellen Bericht zur
Verfügung.
•
Shared (Freigegeben)
Die Variable kann sowohl in einem Unterbericht als auch im gesamten
aktuellen Bericht verwendet werden.
•
Local (Lokal)
Die Variable kann nur in der Formel verwendet werden, in der sie
definiert ist.
Wenn Sie Variablenbereiche verwenden, müssen Sie den für die Variable zu
deklarierenden Bereich zu Beginn der Anweisung für die Variablendeklaration
hinzufügen. Sie können das Bereichsschlüsselwort auch auslassen und die
Deklaration der Variablen mit dem Typnamen beginnen. Dies entspricht der
Deklaration einer globalen Variablen.
Beispiele
NumberVar MENGE;
Deklariert eine Variable namens MENGE, die beliebige Werte vom
Datentyp Ganze Zahl oder Dezimal aufnehmen kann.
Global NumberVar MENGE;
Deklariert eine Variable namens MENGE, die beliebige Werte vom
Datentyp Ganze Zahl oder Dezimal aufnehmen kann. Diese Variable
wäre für alle Formeln des aktuellen Berichts verfügbar
BooleanVar Outstanding;
Deklariert eine globale Variable mit dem Namen Outstanding, die
entweder den Wert Wahr oder Falsch besitzen kann.
Shared BooleanVar Outstanding;
Deklariert eine freigegebene Variable mit dem Namen "Outstanding", die
den Wert Wahr oder Falsch besitzen kann. Diese Variable stünde sowohl
im Hauptbericht als auch in allen im Hauptbericht enthaltenen
Unterberichten zur Verfügung.
StringVar Nachname := "Meier";
Deklariert die globale Variable „Nachname“, die einen Zeichenfolgenwert
besitzen kann und der die Zeichenfolge „Meier“ zugewiesen wurde.
Local StringVar Nachname : = "Meier";
Deklariert die lokale Variable „Nachname“, die einen Zeichenfolgenwert
besitzen kann und der die Zeichenfolge „Meier“ zugewiesen wurde.
Diese Variable stünde nur für die Formel zur Verfügung, in der sie
deklariert wurde.
Crystal Reports-Anwenderhandbuch 597
9
9
Operatoren
Anweisungstrennzeichen
Anmerkungen
•
Aufgrund Ihrer Variablendeklaration reserviert Crystal Reports einen
bestimmten Speicherplatz, um den der Variablen zugewiesenen Wert
aufzunehmen, und weist dem Speicherblock einen Standardwert zu.
Welcher Standardwert zugewiesen wird, hängt vom Datentyp des
verwendeten Variablendeklarators ab und davon, ob der Variablen bei
der Deklaration ein Wert zugewiesen wurde.
•
Eine Variable, die in zwei Formeln deklariert wurde, verwendet ein und
denselben Speicherblock (d. h., sie bezieht sich auf nur einen Wert). Hier
ein Beispiel:
//Formel Nr. 1
NumberVar(x);
x := 5
//Formel Nr. 2
NumberVar(x);
x = x +15
Der Wert von x ist nun 20.
Anweisungstrennzeichen
Crystal-Syntax.
Operator (Symbol/Wort)
;
Verwendung
1+1;"abc"
1+1 und „abc“ sind zwei unterschiedliche Formelausdrücke in einer
Formel, die mehrere Ausdrücke enthält. Der Strichpunkt zwischen den
Anweisungen gibt an, wo eine Anweisung endet und die Nächste
beginnt. Ohne das Semikolon würden die Anweisungen zusammen als
eine einzige Anweisung interpretiert werden.
Anmerkungen
Dieser Operator wird nur in der Crystal-Syntax zur Trennung aufeinander
folgender Ausdrücke verwendet. In der Basic-Syntax werden zur Trennung
von aufeinander folgenden Anweisungen Zeilenumbrüche oder Doppelpunkte
verwendet.
598
Crystal Reports-Anwenderhandbuch
Operatoren
Konstanten
Konstanten
Dieser Abschnitt enthält Informationen über die verschiedenen Typen von
Konstanten:
•
•
•
Konstanten für das Datum
Konstanten zur Formatierung
Mathematische Konstanten
Diese Konstanten können in der Formelsprache für Folgendes verwendet
werden:
•
•
•
•
Datumsfunktionen
bedingte Datumsformatierung
bedingte Schriftartformatierung
Textinterpretation im Report Designer
Konstanten für das Datum
Klicken Sie auf eine Verknüpfung, um zum jeweiligen Abschnitt zu gelangen:
•
•
•
•
Konstanten für Wochentage
Konstanten für die erste Jahreswoche
Konstanten für die Wochentageinrahmung
Datum-/Uhrzeitkonstanten
Konstanten für Wochentage
Die folgenden Konstanten werden mit den entsprechenden numerischen
Werten definiert. Sie können sie zusammen mit Datumsfunktionen
verwenden, die firstDayOfWeek als Parameter akzeptieren:
Konstante
Beschreibung
crUseSystem
0 (Verwenden Sie die NLS API-Einstellung)
crSunday
1
crMonday
2
crTuesday
3
crWednesday
4
crThursday
5
crFriday
6
crSaturday
7
Crystal Reports-Anwenderhandbuch 599
9
9
Operatoren
Konstanten
Konstanten für die erste Jahreswoche
Die folgenden Konstanten werden mit den entsprechenden numerischen
Werten definiert. Sie können sie zusammen mit Datumsfunktionen
verwenden, die firstWeekOfYear als Parameter akzeptieren:
Konstante
Wert
Beschreibung
crUseSystem
0
Die NLS API-Einstellung wird verwendet.
crFirstJan1
1
Es wird mit der Woche, in die der 1. Januar
fällt, begonnen (Standardeinstellung).
crFirstFourDays
2
Damit wird mit der ersten Woche des Jahres,
die aus mindestens vier Tagen besteht,
begonnen.
crFirstFullWeek
3
Damit wird mit der ersten vollen Woche des
Jahres begonnen.
Konstanten für die Wochentageinrahmung
Die folgenden Konstanten sind so definiert, dass die internationale
Formatierung von Wochentagen, d. h. die mögliche Einfassung in runde oder
eckige Klammern, unterstützt wird.
600
Konstante
Beschreibung
crDayOfWeekNotEnclosed
Damit werden Wochentage in Date- oder
DateTime-Feldern nicht in Klammern
gesetzt.
crDayOfWeekInParentheses
Damit werden Wochentage in Date- oder
DateTime-Feldern in runde Klammern
gesetzt. Dies ist bei englischen
Schriftarten die Standardeinstellung.
crDayOfWeekInFWParentheses
Damit werden Wochentage in Date- oder
DateTime-Feldern in breite runde
Klammern gesetzt, wie sie für japanische
Schriften zur Verfügung stehen.
crDayOfWeekInSquareBrackets
Damit werden Wochentage in Date- oder
DateTime-Feldern in eckige Klammern
gesetzt. Dies ist bei englischen
Schriftarten die Standardeinstellung.
crDayOfWeekInFWSquareBrackets
Damit werden Wochentage in Date- oder
DateTime-Feldern in breite eckige
Klammern gesetzt, wie sie für japanische
Schriften zur Verfügung stehen.
Crystal Reports-Anwenderhandbuch
Operatoren
Konstanten
Datum-/Uhrzeitkonstanten
Konstante
Beschreibung
crDateThenTime
Zeigt das Datum und im Anschluss daran die
Uhrzeit an.
crTimeThenDate
Zeigt die Uhrzeit und im Anschluss daran das
Datum an.
crDateOnly
Zeigt nur das Datum an.
crTimeOnly
Zeigt nur die Uhrzeit an.
Konstanten zur Formatierung
Klicken Sie auf eine Verknüpfung, um zum jeweiligen Abschnitt zu gelangen:
•
•
•
•
•
Konstanten für den Schriftschnitt
Konstanten für die Textinterpretation
Konstanten für die Farbe
Konstanten für die Ausrichtung
Konstanten für die Linienart
Konstanten für den Schriftschnitt
Konstante
Beschreibung
crRegular
Formatiert Schriftart im Schriftschnitt
"Standard".
crBold
Formatiert Schriftart im Schriftschnitt "Fett".
crItalic
Formatiert Schriftart im Schriftschnitt
"Kursiv".
crBoldItalic
Formatiert Schriftart im Schriftschnitt "Fett
Kursiv".
Crystal Reports-Anwenderhandbuch 601
9
9
Operatoren
Konstanten
Konstanten für die Textinterpretation
Die folgenden Konstanten sind so definiert, dass sie das Importieren
wichtiger Daten, die im RTF- oder HTML-Format vorformatiert sind, und das
Einfügen der Daten in einem Bericht als Zeichenfolge- oder Memofelder
unterstützen.
Konstante
Beschreibung
crUninterpretedText
Damit werden die Daten als reine Textdaten
interpretiert.
crRTFText
Damit werden die Daten als RTF-Daten
(Rich Text Format) interpretiert.
crHTMLText
Damit werden die Daten als HTML-Daten
interpretiert.
Konstanten für die Farbe
602
Konstante
Beschreibung
crBlack
Die Farbe Schwarz.
crMaroon
Die Farbe Kastanienbraun.
crGreen
Die Farbe Grün.
crOlive
Die Farbe Olivgrün.
crNavy
Die Farbe Dunkelblau.
crPurple
Die Farbe Violett.
crTeal
Die Farbe Blaugrün.
crGray
Die Farbe Grau.
crSilver
Die Farbe Silber.
crRed
Die Farbe Rot.
crLime
Die Farbe Gelbgrün.
crYellow
Die Farbe Gelb.
crBlue
Die Farbe Blau.
crFuchsia
Die Farbe Lila.
crAqua
Die Farbe Aquamarin.
crWhite
Die Farbe Weiß.
crNoColor
Keine Farbe.
Crystal Reports-Anwenderhandbuch
Operatoren
Konstanten
Konstanten für die Ausrichtung
Konstante
Beschreibung
crDefaultHorAligned
Legt die horizontale Ausrichtung als
Standard fest.
crLeftAligned
Richtet linksbündig aus.
crRightAligned
Richtet rechtsbündig aus.
crCenteredHorizontally
Zentriert horizontal.
crJustified
Legt den Blocksatz als Ausrichtung fest.
crDefaultVerAligned
Legt die vertikale Ausrichtung als Standard
fest.
crTopAligned
Richtet am oberen Rand aus.
crBottomAligned
Richtet am unteren Rand aus.
crCenteredVertically
Zentriert vertikal.
Konstanten für die Linienart
Konstante
Beschreibung
crNoLine
Keine Rahmenlinie.
crSingleLine
Einzelne Rahmenlinie.
crDoubleLine
Doppelte Rahmenlinie.
crDashedLine
Gestrichelte Rahmenlinie.
crDottedLine
Gepunktete Rahmenlinie.
Mathematische Konstanten
crPi – die mathematische Konstante pi, die den Wert 3,14 (auf zwei
Dezimalstellen gerundet) aufweist.
Crystal Reports-Anwenderhandbuch 603
9
9
Operatoren
Konstanten
604
Crystal Reports-Anwenderhandbuch
Anhang
Business ObjectsInformationsressourcen
A
Business Objects-Informationsressourcen
Dokumentations- und Informationsdienste
Dokumentations- und Informationsdienste
Business Objects bietet ein komplettes Dokumentationsset, in dem sowohl
sämtliche Produkte als auch die Implementierung behandelt wird. Darüber
hinaus wird zusätzlicher Support und sonstige Serviceleistungen
bereitgestellt, damit Sie einen maximalen Nutzen aus Ihrer Business
Intelligence-Investition ziehen können. In den folgenden Abschnitten erfahren
Sie, wo die Business Objects-Dokumentation erhältlich ist und wie Sie die
Business Objects-Ressourcen nutzen können, um Ihren Bedarf an
technischem Support, Schulungs- und Beratungsleistungen zu decken.
Dokumentation
In der Dokumentation erhalten Sie Antworten auf Ihre Fragen zur Installation,
Konfiguration, Implementierung sowie zum Einsatz der Business ObjectsProdukte.
Was ist im Dokumentationsset enthalten?
Lesen oder laden Sie den Business Objects-Dokumentationswegweiser
herunter, der mit der Produktdokumentation unter der Adresse
http://www.businessobjects.com/support/ zur Verfügung steht.
Im Dokumentationswegweiser sind alle Business Objects-Handbücher
aufgeführt, sodass Sie auf einen Blick erkennen können, welche
Informationen wo und in welchem Format verfügbar sind.
Wo finden Sie die Dokumentation?
Sie können jederzeit innerhalb der Benutzeroberfläche der Produkte, über
das Internet oder über die Produkt-CD auf die elektronische Dokumentation
zugreifen.
Dokumentation innerhalb der Produkte
Online-Hilfe und Handbücher im Adobe PDF-Format sind über das Hilfemenü
der jeweiligen Anwendung verfügbar. Sofern nur die Onlinehilfe zur
Verfügung steht, enthält diese Onlinehilfedatei den gesamten Inhalt der PDFVersion des Handbuchs.
606
Crystal Report Explorer-Anwenderhandbuch
Business Objects-Informationsressourcen
Kunden-Support, Beratung und Schulung
Dokumentation im Internet
Die vollständige elektronische Dokumentation steht auf unserer
Supportwebsite im Internet bereit:
http://www.businessobjects.com/support/.
Dokumentation auf der Produkt-CD
Suchen Sie auf der Produkt-CD im Verzeichnis docs nach
Handbuchversionen im Adobe PDF-Format.
Senden Sie uns Ihr Feedback
Haben Sie Vorschläge, wie die Business Objects-Dokumentation verbessert
werden könnte? War etwas besonders hilfreich oder gut beschrieben?
Schreiben Sie uns. Wir werden unser Bestes tun, damit Ihre Vorschläge
bereits in die nächste Version der Dokumentation einfließen:
[email protected].
Hinweis Wenn Ihr Problem nicht die Dokumentation, sondern ein Business
Objects-Produkt betrifft, wenden Sie sich bitte an die Business Objects
Customer Support-Experten. Informationen zum Kunden-Support finden Sie
auf folgender Website: http://www.businessobjects.com/support/.
Kunden-Support, Beratung und Schulung
Ein weltweites Netz von erfahrenen Business Objects-Technikern bietet Ihnen
Kunden-Support, Schulungen und Beratungen, damit Ihr Unternehmen einen
optimalen Nutzen aus der Business Intelligence-Lösung ziehen kann.
Wie erhalten Sie Unterstützung?
Business Objects entwirft Kunden-Supportpläne für Sie, um eine auf Ihre
Implementierungsanforderungen und -größe zugeschnittene Lösung zu
finden. Kunden-Supportcenter werden in folgenden Ländern betrieben:
•
•
•
•
•
USA
Australien
Kanada
Großbritannien
Japan
Crystal Report Explorer-Anwenderhandbuch 607
A
A
Business Objects-Informationsressourcen
Kunden-Support, Beratung und Schulung
Online Customer Support
Die Customer Support-Website von Business Objects enthält Informationen
zu Kunden-Support-Programmen und -Diensten. Außerdem finden Sie hier
Links zu einem breiten Angebot an technischen Informationen, einschließlich
Knowledge Base-Artikeln, Downloads und Support-Foren.
http://www.businessobjects.com/support/
Suchen Sie nach der optimalen Implementierungslösung für
Ihr Unternehmen?
Die Business Objects-Berater können Sie von der ersten Analysephase an
bis hin zur Lieferung Ihres Implementierungsprojekts begleiten. Es wird Ihnen
Fachwissen und Know-how in den Bereichen relationale und
multidimensionale Datenbanken, Konnektivität, Datenbank-Designtools,
angepasste Integrationstechnologie und vielem mehr geboten.
Weitere Informationen erhalten Sie in Ihrer örtlichen Verkaufsstelle oder
indem Sie sich an Business Objects wenden unter:
http://www.germany.businessobjects.com/services/
Suchen Sie Schulungsmöglichkeiten?
Business Objects bietet Ihnen von traditionellen Gruppenkursen bis hin zu
gezielten e-Learning-Seminaren ein Schulungspaket, das an Ihre
Schulungserfordernisse und Ihren bevorzugten Lernstil angepasst ist. Weitere
Informationen erhalten Sie auf der Business Objects Education-Website unter:
http://www.businessobjects.com/services/training
608
Crystal Report Explorer-Anwenderhandbuch
Business Objects-Informationsressourcen
Nützliche Adressen auf einen Blick
Nützliche Adressen auf einen Blick
Adresse
Inhalt
Business ObjectsProduktinformationen
http://www.businessobjects.com
Informationen über das gesamte
Business Objects-Produktangebot.
Produktdokumentation
http://www.businessobjects.com/
support
Business ObjectsProduktdokumentation,
einschließlich Business ObjectsDokumentationswegweiser.
Business Objects-DokumentationsMailbox
[email protected]
Senden Sie uns Ihr Feedback oder
Ihre Fragen zur Dokumentation.
Online Customer Support
http://www.businessobjects.com/
support/
Informationen zu KundenSupportprogrammen sowie Links
zu technischen Artikeln,
Downloads und Online-Foren.
Business Objects-Beratungsdienste
http://www.businessobjects.com/
services/consulting/
Informationen, auf welche Weise
Business Objects zur
Ertragsmaximierung Ihrer
Business Intelligence-Investition
beitragen kann.
Business Objects-Schulungsdienste Informationen zu Business
Objects-Schulungsangeboten und
http://www.businessobjects.com/
-modulen.
services/training
Crystal Report Explorer-Anwenderhandbuch 609
A
A
Business Objects-Informationsressourcen
Nützliche Adressen auf einen Blick
610
Crystal Report Explorer-Anwenderhandbuch
Index
Sonderzeichen
_To (Operator) 568
_To_ (Operator) 569
A
Abs (Funktion) 149
absteigende Sortierreihenfolge 47
ACCRINT (Funktion) 216
ACCRINTM (Funktion) 218
Aged0To30Days 410
Aged31To60Days 410
Aged61To90Days 410
AlertMessage (Funktion) 483
AllDatesFromToday (Funktion) 408
AllDatesFromTomorrow (Funktion) 409
AllDatesToToday (Funktion) 406
AllDatesToYesterday (Funktion) 407
Allgemein (Registerkarte im BereichsAssistenten) 88
Allgemein (Registerkarte im Dialogfeld "FormatEditor") 85
Am Ende der Seite drucken,
Formatierungsoption 88
AmorDEGRC (Funktion) 219
AmorLINC (Funktion) 221
And (Operator) 576
Andere Operatoren 586
Datum-Uhrzeit-Literal 592
Klammern 587
Kommentare 590
Zuweisung 588
anmelden, bei BusinessObjects Enterprise 27
anordnen, Gruppen 36
Anweisungstrennzeichen 598
anzeigen, Bericht 51
anzeigen, erweiterte Dialogfelder 97
arithmetische Operatoren 548
Addition 548
Crystal-Syntax 128
Division 550
Integer-Division 551
Modul 551
Multiplikation 549
Negation 552
Potenz 553
Prozent 550
Subtraktion 549
Array (Funktion) 419
Array-Datentypen
Crystal-Syntax 113
Arrayerstellungsoperator 580
Array-Funktionen 418
Array 419
Array-Gruppenergebnisfunktionen 422
Crystal-Syntax 125
MakeArray 420
UBound 420
Array-Gruppenergebnisfunktionen 422
Arrayoperatoren 580
Arrayerstellung 580
in Array 581
Indexoperator 562
Redim 582
Redim Preserve 583
AscW (Funktion) 343
Atn-Funktion 165
Aufsteigende Sortierreihenfolge 46
Ausblenden (Drilldown OK)
(Formatierungsoption) 88
Ausdrücke (Crystal-Syntax) 105
Auswahl 136
Ausrichtung, Konstanten 603
Auswählen
Felder 34
Gruppen nach Gruppenergebniswerten 50
Auswertungszeitpunktfunktionen 125, 448
BeforeReading Records 449
Crystal Report Explorer-Anwenderhandbuch 611
Index
EvaluateAfter 452
WhilePrintingRecords 451
WhileReadingRecords 449
automatische Typkonvertierungen
Crystal-Syntax 121
Average (Funktion) 173
B
Bedingte Formatierung
mit Crystal-Syntax 126
Bedingte Formatierungsfunktionen
Color 542
RGB 541
Bedingungen für Gruppenergebnisfunktionen 170
BeforeReadingRecords (Funktion) 449
Beginnt-mit-Operator 584
Berater, Business Objects 608
Berechnungen
Bearbeiten 60
Entfernen 61
Fehlermeldungen 62
Gruppenergebnisse 42
Hinzufügen 59
Löschen 61
Bereiche
Formatieren 84
Verschieben und Ändern der Größe 79
Bereichs-Assistent, verwenden 84
Bereichsdatentypen (Crystal-Syntax) 111
Bereichsoperatoren 565, 596
_To 568
_To_ 569
in Bereich 566
is < x 571
is <= x 572
is > x 570
is >= x 572
To 567
To_ 568
upFrom 573
upFrom_ 573
upTo 574
upTo_ 574
Bericht (Registerkarte) verwenden 30
Bericht ändern (Seite) 28
612 Crystal Report Explorer-Anwenderhandbuch
Bericht erstellen (Seite) 28
Berichte
Ändern 27
Datenquelle auswählen 33
Erstellen 27
Exportieren 53
Formatieren 76
formatieren, Bereiche 79
formatieren, Objekte 79
mit Parametern 33
mit Vorlagen 77
speichern 53
Veröffentlichen 53
Berichte exportieren 53
Berichtsdatenquellen verwenden 32
Berichtviewer öffnen 30
boolesche Operatoren 575
And 576
Crystal-Syntax 129
Eqv 579
Imp 579
Or 577
ungleich 576
Xor 578
Business Elements
Auswählen 34
Beschreibung 32
Business Objects
Beratungsleistungen 608, 609
Schulungsangebote 608, 609
Support-Dienstleistungen 608
Business Views
auswählen, Business Elements 34
verwenden, als Datenquelle 32
Business-Felder, Beschreibung 32
BusinessObjects Enterprise, anmelden bei 27
ByteToText (Funktion) 497
C
Calendar1stHalf (Funktion) 416
Calendar1stQtr (Funktion) 415
Calendar2ndHalf (Funktion) 416
Calendar2ndQtr (Funktion) 415
Calendar3rdQtr (Funktion) 415
Calendar4thQtr (Funktion) 415
Index
CBool (Funktion) 426
CCur (Funktion) 427
CDate (Funktion) 435
CDateTime (Funktion) 439
CDbl (Funktion) 428
Ceiling (Funktion) 158
Choose (Funktion) 442
ChrW (Funktion) 342
Color (Funktion) 542
ContentLocale (Funktion) 479
Correlation (Funktion) 190
Cos-Funktion 163
Count (Funktion) 186
CoupDayBS (Funktion) 224
CoupDays (Funktion) 225
CoupDaysNC (Funktion) 227
CoupNCD (Funktion) 229
CoupNum (Funktion) 230
CoupPCD (Funktion) 231
Covariance (Funktion) 192
crAqua 602
crBlack 602
crBlue 602
crBold 601
crBoldItalic 601
crBottomAligned 603
crCenteredHorizontally 603
crCenteredVertically 603
crDashedLine 603
crDateOnly 601
crDateThenTime 601
crDayOfWeekInFWParentheses 600
crDayOfWeekInFWSquareBrackets 600
crDayOfWeekInParentheses 600
crDayOfWeekInSquareBrackets 600
crDayofWeekNotEnclosed 600
crDefaultHorAligned 603
crDefaultVerAligned 603
crDottedLine 603
crDoubleLine 603
crFirstFourDay 600
crFirstFullWeek 600
crFirstJan1 600
crFriday 599
crFuchsia 602
crGray 602
crGreen 602
crHTMLText 602
crItalic 601
crJustified 603
crLeftAligned 603
crLime 602
crMaroon 602
crMonday 599
crNavy 602
crNoColor 602
crNoLine 603
crOlive 602
crPi 603
crPurple 602
crRed 602
crRegular 601
crRightAligned 603
crRTFText 602
crSaturday 599
crSilver 602
crSingleLine 603
crSunday 599
crTeal 602
crThursday 599
crTimeOnly 601
crTimeThenDate 601
crTopAligned 603
crTuesday 599
crUninterpretedText 602
crUseSystem 599
crWednesday 599
crWhite 602
crYellow 602
Crystal-Syntax 102
Array-Datentypen 113
Array-Variablen 119
Ausdrücke 105
Mehrfachausdrücke 105
bedingte Formatierung 126
Bereichsdatentypen 111
boolesche Werte 110
DatumUhrzeit-Werte 110
einfache Datentypen 108
Felder 103
Crystal Report Explorer-Anwenderhandbuch 613
Index
Funktionen 122
Array 125
Auswertungszeit 125
Datumsbereiche 124
Gruppenergebnis 124
nicht berichtspezifische 123
Größenbeschränkungen 144
Grundlagen 102
If-Ausdrücke 107, 131
Kommentare 103
Operatoren 128
arithmetische 128
boolesche 129
NULL-Felder 130
Vergleich 129
Option Loop 144
Schleifen
For-Schleifen 138
Sicherheitsmechanismus 143
While-Schleifen 141
Select-Ausdrücke 136
Steuerelementstrukturen 131
Variablen 113
automatische Typkonvertierungen 121
deklarieren 114
Gültigkeitsbereich 116
Verarbeitungsreihenfolge 128
Währung 108
Zahlen 108
Zeichenfolgen 109
Zuweisung 107
CStr (Funktion) 430
CTime (Funktion) 437
CumIPMT (Funktion) 232
CumPrinc (Funktion) 233
CurrentCEUserID-Funktion 478
CurrentCEUserName-Funktion 477
CurrentCEUserTimeZone (Funktion) 479
CurrentDate (Funktion) 356
CurrentDateTime (Funktion) 358
CurrentFieldValue (Funktion) 539
CurrentTime (Funktion) 357
Customer Support (Kundendienst) 608
614 Crystal Report Explorer-Anwenderhandbuch
D
Danach neue Seite, Formatierungsoption 89
DataDate (Funktion) 472
DataTime (Funktion) 473
DataTimeZone (Funktion) 474
Date (Funktion) 359
DateAdd (Funktion) 389
DateDiff (Funktion) 391
Daten
absteigende Reihenfolge 47
aufsteigende Reihenfolge 46
Auswählen 34
durchsuchen 38
Ergebnisse bilden 42
Filtern 39
gruppieren 36
Sortieren 45
Daten (Registerkarte)
Beschreibung 30
verwenden, zur Berichtsanzeige 51
Datenquellen
auswählen 33
Berichtsdatenquellen 32
Business Views 32
DatePart (Funktion) 395
DateSerial (Funktion) 372
DateTime (Funktion) 363
DateTimeTo2000 (Funktion) 529
DateTimeToDate (Funktion) 532
DateTimeToSeconds (Funktion) 533
DateTimeToTime (Funktion) 533
DateTimeValue (Funktion) 369
DateTo2000 (Funktion) 485
DateValue (Funktion) 365
Datum (Registerkarte im Dialogfeld "FormatEditor") 88
Datum, Konstanten 599
Datum-/Uhrzeitfunktionen 355
Current Time 357
CurrentDate 356
CurrentDateTime 358
Date 359
DateAdd 389
DateDiff 391
DatePart 395
Index
DateSerial 372
DateTime 363
DateTimeValue 369
DateValue 365
Day 381
DayOfWeek 383
Hour 385
IsDate 376
IsDateTime 378
IsTime 375
Minute 385
Month 380
MonthName 387
Second 386
ShiftDateTime 397
Time 361
Timer 389
TimeSerial 374
TimeValue 367
WeekDay 382
WeekdayName 388
Year 379
Datumsbereichsfunktionen 124, 399
Aged0To30Days 410
Aged31To60Days 410
Aged61To90Days 410
AllDatesFromToday 408
AllDatesFromTomorrow 409
AllDatesToToday 406
AllDatesToYesterday 407
Calendar1stHalf 416
Calendar1stQtr 415
Calendar2ndHalf 416
Calendar2ndQtr 415
Calendar3rdQtr 415
Calendar4thQtr 415
Last4WeeksToSun 403
Last7Days 402
LastFullMonth 405
LastFullWeek 404
LastYearMTD 416
LastYearYTD 417
MonthToDate 400
Next30Days 413
Next31To60Days 413
Next61To90Days 413
Next91To365Days 413
Over90Days 412
WeekToDateFromSun 399
YearToDate 401
Datumsreihenfolge (Formatierungsoption) 88
Datum-Uhrzeit-Literal-Operator 592
Davor neue Seite (Formatierungsoption) 89
Day (Funktion) 381
DayOfWeek (Funktion) 383
Days360 (Funktion) 238
DB (Funktion) 235
DDB (Funktion) 236
DefaultAttribute (Funktion) 540
Detailbereich, sortieren 47
Dezimalstelle festlegen (Formatierungsoption) 87
Dezimalzeichen (Formatierungsoption) 88
Diagramme
Entfernen 76
Hinzufügen 76
DISC (Funktion) 239
DistinctCount (Funktionen) 188
Divisionsoperator 550
Dokumentation
Auf der Produkt-CD 607
Feedback zu 607
im Internet 607
Wegweiser 606
Dokumenteigenschaftenfunktionen 468
ContentLocale 479
CurrentCEUserID 478
CurrentCEUserName 477
CurrentCEUserTimeZone 479
DataDate 472
DataTime 473
DataTimeZone 474
FileAuthor 476
FileCreationDate 476
Filename 475
GroupingLevel 478
ModificationDate 471
ModificationTime 472
PrintDate 469
PrintTime 470
PrintTimeZone 470
Crystal Report Explorer-Anwenderhandbuch 615
Index
ReportComments 475
ReportTitle 474
SelectionLocale 480
DollarDE (Funktion) 241
DollarFR (Funktion) 242
DrillDownGroupLevel (Funktion) 467
Druckstatusfuntionen 453
Crystal-Syntax 125
DrillDownGroupLevel 467
GroupNumber 464
GroupSelection 465
HierarchyLevel 467
InRepeatedGroupHeader 466
IsNull 458
Next 456
NextIsNull 460
NextValue 457
OnFirstRecord 466
OnLastRecord 467
PageNofM 463
Previous 453
PreviousIsNull 459
PreviousValue 455
RecordNumber 463
RecordSelection 465
Seitenzahl 461
TotalPageCount 462
DTSTo2000 (Funktion) 487
DTSToDate (Funktion) 489
DTSToDateTime 531
DTSToSeconds (Funktion) 490
DTSToTimeField (Funktion) 532
DTSToTimeString (Funktion) 491
Duration (Funktion) 243
Durchgestrichen, Formatierungsoption 87
durchsuchen, Daten 38
E
Effect (Funktion) 244
Einfache Datentypen (Crystal-Syntax) 108
Einstellungen
anzeigen, erweiterte Dialogfelder 97
Entwurf (Registerkarte), Aussehen 98
festlegen, Standardregisterkarte 96
festlegen, Zeilen 98
616 Crystal Report Explorer-Anwenderhandbuch
Hintergrundfarbe 95
Symbolleisteneinstellungen 96
wiederherstellen, Standardeinstellungen 95
Eng Horizontal, Formatierungsoption 86
Entfernen
Diagramme 76
Felder 35
Filter 39
Gruppen 36
Gruppenergebnisse 42
Sortieren 51
Entwurf (Registerkarte)
ändern, Aussehen 98
verwenden 30
Eqv (Operator) 579
erste Jahreswoche, Konstanten für 397, 600
Erstellen
Berechnungen 59
Berichte 27
Formeln 59
erweiterte Dialogfelder, anzeigen 97
EvaluateAfter (Funktion) 452
EventNumber (Funktion) 495
ExchGetId (Adresse) (Funktion) 491
ExchGetOrganization (Funktion) 492
ExchGetPath (Funktion) 496
ExchGetSite (Funktion) 493
Exp (Funktion) 166
ExtractString (Funktion) 494
F
Farbe (Registerkarte im Bereichs-Assistenten) 90
Farbe, Formatierungsoption 87
Farbe, Konstanten 602
Feedback zur Dokumentation 607
Fehlermeldungen, Formeln 62
Felder
Auswählen 34
Filtern 39
gruppieren 36
Sortieren 45
suchen 38
umbenennen 34
Felder umbenennen 34
Feldobjekte formatieren 80
Index
FileAuthor (Funktion) 476
FileCreationDate (Funktion) 476
Filename (Funktion) 475
Filter
Entfernen 39
Hinzufügen 39
mehrere, hinzufügen 42
Filter (Funktion) 343
Finanzfunktionen 214
ACCRINT 216
ACCRINTM 218
AmorDEGRC 219
AmorLINC 221
CoupDayBS 224
CoupDays 225
CoupDaysNC 227
CoupNCD 229
CoupNum 230
CoupPCD 231
CumIPMT 232
CumPrinc 233
Days360 238
DB 235
DDB 236
DISC 239
DollarDE 241
DollarFR 242
Duration 243
Effect 244
FV 245
FVSchedule 247
IntRate 248
IPmt 249
IRR 251
ISPMT 252
MDuration 253
MIRR 255
Nominal 256
NPer 256
NPV 258
OddFPrice 259
OddFYield 261
OddLPrice 263
OddLYield 265
Pmt 267
PPmt 269
Price 271
PriceDisc 272
PriceMat 274
PV 276
Rate 277
Received 279
SLN 280
SYD 281
TBillEq 282
TBillPrice 283
TBillYield 285
VDB 286
XIRR 288
XNPV 290
YearFrac 291
Yield 292
YieldDisc 294
YieldMat 295
Fix (Funktion) 160
Floor (Funktion) 159
folgende Bereiche unterlegen
(Formatierungsoption) 90
Format, Formatierungsoption 87, 88
formatieren
Bereiche 84
Berichte 76
Diagramme 76
Feldobjekte 80, 91
Größe ändern, Objekte 79
Größe von Bereichen ändern 79
mit Vorlagen 77
Objekte und Bereiche 79
Optionen 85
Textobjekte 80, 90, 91
Formeln 56, 102
Array-Datentypen
Crystal-Syntax 113
Ausdrücke, Crystal-Syntax 105
Bearbeiten 60
bedingte Formatierung
Crystal-Syntax 126
Bereichsdatentypen
Crystal-Syntax 111
Druckstatusfunktionen (Crystal-Syntax) 125
Crystal Report Explorer-Anwenderhandbuch 617
Index
einfache Datentypen
Crystal-Syntax 108
Entfernen 61
Fehlermeldungen 62
Felder
Crystal-Syntax 103
Funktionen
Crystal-Syntax 122
Größenbeschränkungen
Crystal-Syntax 144
Grundlagen
Crystal-Syntax 102
If-Ausdrücke in Crystal-Syntax 131
Kommentare
Crystal-Syntax 103
Komponenten 57
Löschen 61
Operatoren
Crystal-Syntax 128
Schleifen
Crystal-Syntax 138
Select-Ausdrücke (Crystal-Syntax) 136
Steuerelementstrukturen
Crystal-Syntax 131
Syntax 58
typische Anwendungsbeispiele 56
Variablen
Crystal-Syntax 113
Verarbeitungsreihenfolge
Crystal-Syntax 128
Zuweisung
Crystal-Syntax 107
For-Schleifen (Crystal-Syntax) 138
Fortbildung. Siehe Schulung
FRAccRecTurnover (Funktion) 519
FRCashFlowVsTotalDebt (Funktion) 509
FRCurrentRatio (Funktion) 497
FRDebtEquityRatio (Funktion) 501
FRDividendYield (Funktion) 523
FREarningsPerCommonShare (Funktion) 518
FREquityVsTotalAssets (Funktion) 502
FRGrossProfitMargin (Funktion) 505
FRInterestCoverage (Funktion) 507
FRInventoryTurnover (Funktion) 521
FRNetProfitMargin (Funktion) 503
618 Crystal Report Explorer-Anwenderhandbuch
FROperatingProfitMargin (Funktion) 506
FRPriceEarningsRatio (Funktion) 522
FRQuickRatio (Funktion) 499
FRReturnOnCommonEquity (Funktion) 516
FRReturnOnEquity (Funktion) 510
FRReturnOnInvestedCapital (Funktion) 515
FRReturnOnNetFixedAssets (Funktion) 512
FRReturnOnTotalAssets (Funktion) 513
Funktionen
Abs 149
ACCRINT 216
ACCRINTM 218
Aged0To30Days 410
Aged31To60Days 410
Aged61To90Days 410
AllDatesFromToday 408
AllDatesFromTomorrow 409
AllDatesToToday 406
AllDatesToYesterday 407
AmorDEGRC 219
AmorLINC 221
Array 419
Crystal-Syntax 125
Array-Funktionen 418
Array-Gruppenergebnisfunktionen 422
AscW 343
Atn 165
Auswertungszeit
Crystal-Syntax 125
Auswertungszeitpunktfunktionen 448
Average 173
bedingte Formatierung
Crystal-Syntax 126
BeforeReadingRecords 449
ByteToText 497
Calendar1stHalf 416
Calendar1stQtr 415
Calendar2ndHalf 416
Calendar2ndQtr 415
Calendar3rdQtr 415
Calendar4thQtr 415
CBool 426
CCur 427
CDate 435
CDateTime 439
Index
CDbl 428
Ceiling 158
Choose 442
ChrW 342
Color 542
ContentLocale 479
Correlation 190
Cos 163
Count 186
CoupDayBS 224
CoupDays 225
CoupDaysNC 227
CoupNCD 229
CoupNum 230
CoupPCD 231
Covariance 192
Crystal-Syntax 122
CStr 430
CTime 437
CumIPMT 232
CumPrinc 233
Current Time 357
CurrentCEUserID 478
CurrentCEUserName 477
CurrentCEUserTimeZone 479
CurrentDate 356
CurrentDateTime 358
CurrentFieldValue 539
DataDate 472
DataTime 473
DataTimeZone 474
Date 359
DateAdd 389
DateDiff 391
DatePart 395
DateSerial 372
DateTime 363
DateTimeTo2000 529
DateTimeToDate 532
DateTimeToSeconds 533
DateTimeToTime 533
DateTimeValue 369
DateTo2000 485
DateValue 365
Datum-/Uhrzeitfunktionen 355
Datumsbereiche
Crystal-Syntax 124
Datumsbereichsfunktionen 399
Day 381
DayOfWeek 383
Days360 238
DB 235
DDB 236
DefaultAttribute 540
DISC 239
DistinctCount 188
Dokumenteigenschaftenfunktionen 468
DollarDE 241
DollarFR 242
DrillDownGroupLevel 467
Druckstatus 453
Crystal-Syntax 125
DTSTo2000 487
DTSToDate 489
DTSToDateTime 531
DTSToSeconds 490
DTSToTimeField 532
DTSToTimeString 491
Duration 243
Effect 244
EvaluateAfter 452
EventNumber 495
ExchGetId 491
ExchGetOrganization 492
ExchGetPath 496
ExchGetSite 493
Exp 166
ExtractString 494
FileAuthor 476
FileCreationDate 476
Filename 475
Filter 343
Finanzfunktionen 214
Fix 160
Floor 159
FRAccRecTurnover 519
FRCashFlowVsTotalDebt 509
FRCurrentRatio 497
FRDebtEquityRatio 501
FRDividendYield 523
Crystal Report Explorer-Anwenderhandbuch 619
Index
FREarningsPerCommonShare 518
FREquityVsTotalAssets 502
FRGrossProfitMargin 505
FRInterestCoverage 507
FRInventoryTurnover 521
FRNetProfitMargin 503
FROperatingProfitMargin 506
FRPriceEarningsRatio 522
FRQuickRatio 499
FRReturnOnCommonEquity 516
FRReturnOnEquity 510
FRReturnOnInvestedCapital 515
FRReturnOnNetFixedAssets 512
FRReturnOnTotalAssets 513
FV 245
FVSchedule 247
Gesamtergebnisfunktionen 536
GridRowColumnValue 537
GroupingLevel 478
GroupNumber 464
GroupSelection 465
Gruppenergebnis 169
Crystal-Syntax 124
Gruppenergebnisbedingungen 170
HierarchyLevel 467
Hour 385
IIF 444
InRepeatedGroupHeader 466
InStr 334
InStrRev 335
Int 150
IntRate 248
IPmt 249
IRR 251
IsDate 376
IsDateTime 378
IsNull 458
IsNumeric 313
ISPMT 252
IsTime 375
Join 347
Konstanten 599
Last4WeeksToSun 403
Last7Days 402
LastFullMonth 405
620 Crystal Report Explorer-Anwenderhandbuch
LastFullWeek 404
LastYearMTD 416
LastYearYTD 417
LCase 309
Left 339
Len 298
Length 300
Log 167
LooksLike 527
LowerCase 310
LTrim 302
MakeArray 420
Mathematische Funktionen 148
Maximum 182
MDuration 253
Median 194
Mid 338
Minimum 184
Minute 385
MIRR 255
Mode 199
ModificationDate 471
ModificationTime 472
Month 380
MonthName 387
MonthToDate 400
MRound 157
Next 456
Next30Days 413
Next31To60Days 413
Next61To90Days 413
Next91To365Days 413
NextIsNull 460
NextValue 457
nicht berichtspezifische, Crystal-Syntax 123
Nominal 256
Now 524
NPer 256
NPV 258
NthLargest 197
NthMostFrequent 201
NthSmallest 198
NumericText 314
OddFPrice 259
OddFYield 261
Index
OddLPrice 263
OddLYield 265
OnFirstRecord 466
OnLastRecord 467
Over90Days 412
PageNofM 463
PercentOfAverage 204
PercentOfCount 210
PercentOfDistinctCount 212
PercentOfMaximum 206
PercentOfMinimum 208
PercentOfSum 202
Pi 166
Picture 525
Pmt 267
PopulationStdDev 176
PopulationVariance 180
PPmt 269
Previous 453
PreviousIsNull 459
PreviousValue 455
Price 271
PriceDisc 272
PriceMat 274
PrintDate 469
PrintTime 470
PrintTimeZone 470
Programmierbefehle 442
ProperCase 311
PthPercentile 196
PV 276
Rate 277
Received 279
RecordNumber 463
RecordSelection 465
Remainder 161
Replace 345
ReplicateString 332
ReportComments 475
ReportTitle 474
RGB 541
Right 340
Rnd 168
Roman 350
Round 151
RoundUp 154
RTrim 305
Second 386
Seitenzahl 461
SelectionLocale 480
Sgn 150
ShiftDateTime 397
Sin 163
SLN 280
Soundex 528
Space 333
Split 348
Sqr 166
StdDev 174
StrCmp 337
StrReverse 312
Sum 171
Switch 445
SYD 281
Tan 164
TBillEq 282
TBillPrice 283
TBillYield 285
Time 361
Timer 389
TimeSerial 374
TimeValue 367
ToNumber 315
TotalPageCount 462
ToText 318
ToWords 329
Trim 302
TrimLeft 304
TrimRight 306
Truncate 155
Typkonvertierungsfunktionen 426
UBound 420
UCase 307
UpperCase 308
URLDecode 354
URLEncode 351
Val 341
Variance 178
VDB 286
Warnfunktionen 481
Crystal Report Explorer-Anwenderhandbuch 621
Index
WeekDay 382
WeekdayName 388
WeekToDateFromSun 399
WeightedAverage 193
WhilePrintingRecords 451
WhileReadingRecords 449
XIRR 288
XNPV 290
Year 379
YearFrac 291
YearToDate 401
Yield 292
YieldDisc 294
YieldMat 295
Zeichenfolgefunktionen 297
zum Duplizieren von Gruppenfeldern 534
Zusätzliche Funktionen 484
FV (Funktion) 245
FVSchedule (Funktion) 247
G
Gesamtergebnisfunktionen 536
Gleichheitsoperator 555
gleitender Durchschnitt
Bereiche 79
Objekte 79
GridRowColumnValue (Funktion) 537
Größe (Formatierungsoption) 87
Größe ändern
Bereiche 79
Objekte 79
Größer-als-Operator 558
Größer-oder-gleich-Operator 559
GroupingLevel (Funktion) 478
GroupNumber (Funktion) 464
GroupSelection (Funktion) 465
Gruppen
anordnen 36
auswählen, nach Gruppenergebniswerten 50
Ergebnisse bilden 42
Hinzufügen 36
nach Gruppenergebniswerten sortieren 50
Sortieren 48
Gruppenergebnisfunktionen 124, 169
Average 173
622 Crystal Report Explorer-Anwenderhandbuch
Bedingungen 170
boolesche 170
Datum 171
Zeit 171
Correlation 190
Count 186
Covariance 192
DistinctCount 188
Maximum 182
Median 194
Minimum 184
Mode 199
NthLargest 197
NthMostFrequent 201
NthSmallest 198
PercentOfAverage 204
PercentOfCount 210
PercentOfDistinctCount 212
PercentOfMaximum 206
PercentOfMinimum 208
PercentOfSum 202
PopulationStdDev 176
PopulationVariance 180
PthPercentile 196
StdDev 174
Sum 171
Variance 178
WeightedAverage 193
Gruppenergebnisse
auswählen nach 50
Entfernen 42, 43
Hinzufügen 42
sortieren von Gruppen nach 50
Gruppenfeld-Duplizierungsfunktionen 534
Gruppenfeldfunktionen 534
gruppieren, Daten 36
H
HierarchyLevel (Funktion) 467
Hilfe, online 24
Hintergrund, Formatierungsoption 87
Hintergrundfarbe
Ändern 95
Formatierungsoption 90
Index
Hinzufügen
Berechnungen 59
Diagramme 76
Felder 34
Filter 39
Formeln 59
Gruppen 36
Gruppenergebnisse 42
Sortierungen 45
Textobjekte 80
Horizontale Ausrichtung, Formatierungsoption 85
Hour (Funktion) 385
I
If-Ausdrücke in Crystal-Syntax 107, 131
IIF (Funktion) 444
Imp (Operator) 579
in Array (Operator) 581
In-Bereich-Operator 566
Indexoperator 562
Informationsressourcen 605, 606
InRepeatedGroupHeader (Funktion) 466
InStr (Funktion) 334
InStrRev (Funktion) 335
Int (Funktion) 150
Integer-Divisionsoperator 551
IntRate (Funktion) 248
In-Währung-Operator 553
In-Zeichenfolge-Operator 564
IPmt (Funktion) 249
IRR (Funktion) 251
is < x 571
is <= x 572
is > x 570
is >= x 572
IsAlertEnabled (Funktion) 481
IsAlertTriggered (Funktion) 482
IsDate (Funktion) 376
IsDateTime (Funktion) 378
IsNull (Funktion) 458
IsNumeric (Funktion) 313
ISPMT (Funktion) 252
IsTime (Funktion) 375
J
Join (Funktion) 347
K
Kann größer werden (Formatierungsoption) 86
Klammernoperator 587
Kleiner-als-oder-gleich-Operator 558
Kleiner-als-Operator 557
Kommentare
Crystal-Syntax 103
Kommentaroperator
Basic-Syntax 590
Crystal-Syntax 592
Konstanten 599
Erster Wochentag 397
für das Datum 599
für den Schriftschnitt 601
für die Ausrichtung 603
für die Farbe 602
für die Linienart 603
für die Textinterpretation 602
für die Wochentageinrahmung 600
für erste Jahreswoche 397, 600
für Wochentage 599
mathematische 603
Konstanten für ersten Wochentag 397
Konvertierungsoperatoren 553
in Währung 553
L
Last4WeeksToSun (Funktion) 403
Last7Days (Funktion) 402
LastFullMonth (Funktion) 405
LastFullWeek (Funktion) 404
LastYearMTD (Funktion) 416
LastYearYTD (Funktion) 417
LCase (Funktion) 309
Leeren Bereich unterdrücken
(Formatierungsoption) 90
Leere-Zeichenfolge-einfügen-Operator 565
Left (Funktion) 339
Len (Funktion) 298
Length (Funktion) 300
like (Operator) 585
Crystal Report Explorer-Anwenderhandbuch 623
Index
Linienart, Konstanten 603
Log (Funktion) 167
LooksLike (Funktion) 527
LowerCase (Funktion) 310
LTrim (Funktion) 302
MRound (Funktion) 157
Multiplikationsoperator 549
Musteroperatoren
beginnt mit 584
like 585
M
N
MakeArray 420
mathematische Funktionen 148
Abs 149
Atn 165
Ceiling 158
Cos 163
Exp 166
Fix 160
Floor 159
Int 150
Log 167
MRound 157
Pi 166
Remainder 161
Rnd 168
Round 151
RoundUp 154
Sgn 150
Sin 163
Sqr 166
Tan 164
Truncate 155
Mathematische Konstanten 603
Maximum (Funktion) 182
MDuration (Funktion) 253
Median (Funktion) 194
Mid (Funktion) 338
Minimum (Funktion) 184
Minute (Funktion) 385
MIRR (Funktion) 255
Mit Schatten (Formatierungsoption) 86
Mode (Funktion) 199
ModificationDate (Funktion) 471
ModificationTime (Funktion) 472
Moduloperator 551
Month (Funktion) 380
MonthName (Funktion) 387
MonthToDate (Funktion) 400
Negationsoperator 552
Negative Werte (Formatierungsoption) 87
Next (Funktion) 456
Next30Days (Funktion) 413
Next31To60Days (Funktion) 413
Next61To90Days (Funktion) 413
Next91To365Days (Funktion) 413
NextIsNull (Funktion) 460
NextValue (Funktion) 457
Nominal (Funktion) 256
Not (Operator) 556
Now (Funktion) 524
NPer (Funktion) 256
NPV (Funktion) 258
NthLargest-Funktion 197
NthMostFrequent (Funktion) 201
NthSmallest (Funktion) 198
Nullwerte, Formatierungsoption 87
NumericText (Funktion) 314
Nummer (Registerkarte im Dialogfeld "FormatEditor") 87
624 Crystal Report Explorer-Anwenderhandbuch
O
Objekte zusammenhalten
(Formatierungsoption) 85
Objekte, verschieben und Größe ändern 79
OddFPrice (Funktion) 259
OddFYield (Funktion) 261
OddLPrice (Funktion) 263
OddLYield (Funktion) 265
OnFirstRecord (Funktion) 466
OnLastRecord (Funktion) 467
Online Customer Support 608
Onlinehilfe 24
Operatoren 547
_To 568
_To_ 569
Index
Addition 548
And 576
andere 586
Anweisungstrennzeichen 598
arithmetische 548
Crystal-Syntax 128
Array 580
Arrayerstellung 580
beginnt mit 584
boolesche 575
Crystal-Syntax 129
Datum-Uhrzeit-Literal 592
Division 550
Eqv 579
gleich 555
größer als 558
größer oder gleich 559
Imp 579
in Array 581
in Bereich 566
in Währung 553
in Zeichenfolge 564
Index 562
Integer-Division 551
is < x 571
is <= x 572
is > x 570
is >= x 572
Klammern 587
kleiner als 557
kleiner als oder gleich 558
Kommentare 590
Konstanten 599
Kontrollstruktur 586
Konvertierung 553
leere Zeichenfolge einfügen 565
like 585
Modul 551
Multiplikation 549
Negation 552
Not 556
NULL-Felder
Crystal-Syntax 130
Or 577
Potenz 553
Prozent 550
Redim 582
Redim Preserve 583
Subtraktion 549
To 567
To_ 568
ungleich 576
upFrom 573
upFrom_ 573
upTo 574
upTo_ 574
Variablenbereiche 596
Basic-Syntax 596
Crystal-Syntax 596
Variablendeklaratoren 593
Basic-Syntax 593
Crystal-Syntax 595
Vergleich 554
Crystal-Syntax 129
Verkettung 560, 561
Xor 578
Zeichenfolge 560
Zuweisung 588
Operatoren für Kontrollstrukturen 586
Option Loop
Crystal-Syntax 144
Or (Operator) 577
Over90Days (Funktion) 412
P
PageNofM (Funktion) 463
Parameter festlegen 33
PercentOfAverage (Funktion) 204
PercentOfCount (Funktion) 210
PercentOfDistinctCount (Funktion) 212
PercentOfMaximum (Funktion) 206
PercentOfMinimum (Funktion) 208
PercentOfSum (Funktion) 202
Pi (Funktion) 166
Picture (Funktion) 525
Pmt (Funktion) 267
PopulationStdDev 176
PopulationVariance (Funktion) 180
Potenzoperator 553
PPmt (Funktion) 269
Crystal Report Explorer-Anwenderhandbuch 625
Index
Previous (Funktion) 453
PreviousIsNull (Funktion) 459
PreviousValue (Funktion) 455
Price (Funktion) 271
PriceDisc (Funktion) 272
PriceMat (Funktion) 274
PrintDate (Funktion) 469
PrintTime (Funktion) 470
PrintTimeZone (Funktion) 470
Programmierbefehlsfunktionen 442
Choose 442
IIF 444
Switch 445
ProperCase (Funktion) 311
Prozent-Operator 550
PthPercentile (Funktion) 196
PV (Funktion) 276
Q
Quelle (Registerkarte) verwenden 29
QuickInfo-Text (Formatierungsoption) 86
R
Rahmen (Registerkarte im Dialogfeld "FormatEditor") 86
Rahmen vor Seitenwechsel schließen,
Formatierungsoption 85
Rahmen, Formatierungsoption 87
Rate (Funktion) 277
Received (Funktion) 279
RecordNumber (Funktion) 463
RecordSelection (Funktion) 465
Redim-Operator 582
Basic-Syntax 582
Crystal-Syntax 582, 583
Redim-Preserve-Operator 583
Basic-Syntax 583
Remainder (Funktion) 161
Replace (Funktion) 345
ReplicateString (Funktion) 332
ReportComments (Funktion) 475
ReportTitle (Funktion) 474
Ressourcen 605, 606
RGB (Funktion) 541
626 Crystal Report Explorer-Anwenderhandbuch
Right (Funktion) 340
Rnd (Funktion) 168
Roman (Funktion) 350
Round (Funktion) 151
RoundUp (Funktion) 154
RTrim (Funktion) 305
S
Schleifen
Sicherheitsmechanismus
(Crystal-Syntax) 143
Schriftart (Registerkarte im Dialogfeld „FormatEditor“) 87
Schriftart, Formatierungsoption 87
Schriftschnitt, Konstanten 601
Schulung zu Business Objects-Produkten 608
Second (Funktion) 386
Seitenzahl (Funktion) 461
Seitenzahl zurücksetzen nach,
Formatierungsoption 89
SelectionLocale (Funktion) 480
Sgn (Funktion) 150
ShiftDateTime (Funktion) 397
Sin (Funktion) 163
SLN (Funktion) 280
Sortieren
anordnen 45
Daten 45
Datensatzgruppen 48
Detailbereich 47
Entfernen 51
Erste/Letzte N 50
nach zusammengefassten Werten 50
Richtung 46
Sortierfeld 45
Sortierungsrichtung 46
Soundex (Funktion) 528
Space (Funktion) 333
speichern, Bericht 53
Split (Funktion) 348
Sqr (Funktion) 166
StdDev (Funktion) 174
Steuerelementstrukturen
Crystal-Syntax 131
Steuerschaltflächen 29
Index
StrCmp (Funktion) 337
StrReverse (Funktion) 312
Subtraktionsoperator 549
suchen, Felder 38
Sum (Funktionen) 171
Support
Kundendienst 608
Standorte 607
technisch 608
Website 608
Switch (Funktion) 445
SYD (Funktion) 281
Symbolleistenoptionen 29, 96
T
Tan (Funktion) 164
Tausendertrennzeichen verwenden
(Formatierungsoption) 88
TBillEq (Funktion) 282
TBillPrice (Funktion) 283
TBillYield (Funktion) 285
Technischer Support 608
Teradata, SQL-Erweiterungen 543
Textinterpretation, Konstanten 602
Textobjekte
Bearbeiten 80, 90
Entfernen 80, 90
Formatieren 80, 91
Hinzufügen 80, 90
Time (Funktion) 361
Timer (Funktion) 389
TimeSerial (Funktion) 374
TimeValue (Funktion) 367
To (Operator) 567
To_ 568
ToNumber (Funktion) 315
TotalPageCount (Funktion) 462
ToText (Funktion) 318
ToWords (Funktion) 329
Trim (Funktion) 302
TrimLeft (Funktion) 304
TrimRight (Funktion) 306
Truncate (Funktion) 155
Typkonvertierungsfunktionen 426
CBool 426
CCur 427
CDate 435
CDateTime 439
CDbl 428
CStr 430
CTime 437
U
UBound (Funktion) 420
UCase (Funktion) 307
Ungleich-Operator 576
Unterdrücken (kein Drilldown)
(Formatierungsoption) 88
Unterstrichen (Formatierungsoption) 87
upFrom (Operator) 573
upFrom_ (Operator) 573
UpperCase (Funktion) 308
upTo (Operator) 574
upTo_ (Operator) 574
URLDecode (Funktion) 354
URLEncode (Funktion) 351
V
Val (Funktion) 341
Variablen
Array deklarieren (Crystal-Syntax) 119
automatische Typkonvertierung (CrystalSyntax) 121
Crystal-Syntax 113
freigegeben (Crystal-Syntax) 118
globale (Crystal-Syntax) 117
lokale (Crystal-Syntax) 116
Standardwerte (Crystal-Syntax) 120
Variablenbereiche
Basic-Syntax 596
Crystal-Syntax 596
Variablenbereiche (Crystal-Syntax) 116
Variablendeklarationen (Crystal-Syntax) 114
Variablendeklarationsoperatoren
Basic-Syntax 593
Crystal-Syntax 595
Variance 178
VDB (Funktion) 286
Verarbeitungsreihenfolge
Crystal Report Explorer-Anwenderhandbuch 627
Index
Crystal-Syntax 128
Vergleichsoperatoren 554
Crystal-Syntax 129
gleich 555
größer als 558
größer oder gleich 559
kleiner als 557
kleiner als oder gleich 558
Not 556
Verkettungsoperator 560, 561
veröffentlichen, Bericht 53
verschieben
Vorlagen
Überlegungen 78
übernehmen 77
W
Währungssymbol verwenden
(Formatierungsoption) 88
Warnungen, Formeln 62
Web
aufrufen, Dokumentation über 607
Customer Support (Kundendienst) 608
nützliche Adressen 609
Websites
Schulungen 608
Support 608
WeekDay (Funktion) 382
WeekdayName (Funktion) 388
WeekToDateFromSun (Funktion) 399
WeightedAverage (Funktion) 193
WhilePrintingRecords (Funktion) 451
WhileReadingRecords (Funktion) 449
While-Schleifen
Crystal-Syntax 141
wiederherstellen, Standardeinstellungen 95
Wochentage, Konstanten 599
Wochentageinrahmung, Konstanten 600
X
XIRR (Funktion) 288
XNPV (Funktion) 290
Xor (Operator) 578
628 Crystal Report Explorer-Anwenderhandbuch
Y
Year (Funktion) 379
YearFrac (Funktion) 291
YearToDate (Funktion) 401
Yield (Funktion) 292
YieldDisc (Funktion) 294
YieldMat (Funktion) 295
Z
Zeichenfolgenfunktionen 297
AscW 343
ChrW 342
Filter 343
InStr 334
InStrRev 335
IsNumeric 313
Join 347
LCase 309
Left 339
Len 298
Length 300
LowerCase 310
LTrim 302
Mid 338
NumericText 314
ProperCase 311
Replace 345
ReplicateString 332
Right 340
Roman 350
RTrim 305
Space 333
Split 348
StrCmp 337
StrReverse 312
ToNumber 315
ToText 318
ToWords 329
Trim 302
TrimLeft 304
TrimRight 306
UCase 307
UpperCase 308
URLDecode 354
Index
URLEncode 351
Val 341
Zeichenfolgeoperatoren 560
in Zeichenfolge 564
Index 562
leere Zeichenfolge einfügen 565
Verkettung 560, 561
Zeilen, Anzahl festlegen 98
Zusammenhalten, Formatierungsoption 89
Zuweisung
Crystal-Syntax 107
Zuweisungsoperator 588
Crystal Report Explorer-Anwenderhandbuch 629
Index
630 Crystal Report Explorer-Anwenderhandbuch

Documentos relacionados