Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Crystal Reports 2016 Grundkurs

Formeln in Crystal Reports-Berichten verwenden

Testen Sie unsere 2016 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Formel stellen in Crystal Reports wichtige und mächtige Werkzeuge für Ihr Berichtsdesign dar. In dieser Lektion lernen Sie die Grundlagen der Formelerstellung kennen.

Transkript

In diesem Video zeige ich Ihnen, wie Sie mit Hilfe von Formeln neue Feldinhalte erstellen können. Ich bin dazu bereits mit der Xtreme.mdb verbunden und habe die Kundentabelle, also die Customer-Tabelle geladen. Über den "Contact First Name" und den "Contact Last Name" bekomme ich die Ansprechpartner der jeweiligen Kunden heraus: Sowohl den Vornamen als auch den Nachnamen. Ich erweitere den Bericht nun so, dass er ein neues Feld enthält, was sowohl den Vor- als auch den Nachnamen in einem Feld beinhaltet. Dieses Feld existiert noch nicht und damit muss ich ein neues Feld erschaffen. Und das geschieht über die "Formelfelder". Sie finden die "Formelfelder" im "Feld-Explorer" unter dem Knotenpunkt "Formelfelder". Und ein neues Formelfeld erstellen Sie mit der rechten Maustaste auf "Formelfelder" "Neu". Sie geben zunächst einen Namen für das Formelfeld an und das könnten wir jetzt mal "Ansprechpartner" nennen, klicken OK und es öffnet sich der Formel-Workshop beziehungsweise der Formel-Editor. Innerhalb des Formel-Editors haben Sie Zugriff auf verschiedenste Informationen. Hier auf der linken Seite sehen Sie, wo Sie sich im Grunde gerade befinden, das heißt, welche Formel Sie gerade schreiben oder wenn Sie weitere Formeln haben, welche Formeln es bereits gibt. Dann oben in den drei Textboxen haben Sie auf der linken Seite die Auswahl der im Bericht verwendeten Felder. Unter "Berichtfelder", da habe ich bisher drei in meinem Formelfeld "Ansprechpartner", man sieht es auch an dem fx-Symbol und ich habe zwei Tabellenfelder aus der Tabelle "Customer.Contact First Name" und aus der Tabelle "Customer.Contact Last Name". Des Weiteren haben Sie Zugriff auf alle Felder Ihrer Datenholung. Hier habe ich meine Customer-Tabelle und dann im Grunde auch alle Felder aus der Customer-Tabelle. In der Mitte haben Sie Zugriff auf verschiedene Funktionen, wie zum Beispiel den "Zeichenfolgen", unser klassisches "Left" zum Beispiel oder ein "Split", Sie haben auch Zugriff auf mathematische Funktionen, die Sie dann hier in dem Formel-Editor verwenden können. Auf der rechten Seite sind denn die Operatoren, die Sie da eben auch verwenden können, wir zum Beispiel Boolesche Operatoren und so weiter. Wenn ich jetzt also so einen Feld schreiben möchte, dann habe ich die Auswahl der Syntax, in der ich die Formel schreiben möchte und das Skript in dem Fall schreiben möchte. Entweder ich nehme die Crystal-Syntax oder die Basic-Syntax. Crystal-Syntax, wie gesagt, der Standard, ist eher so ein bisschen angelehnt an C# oder Java, während die Basic-Syntax dann eher an Visual Basic oder Visual Basic VBA angelehnt ist. Dann haben wir hier den großen weißen Bereich, wo wir dann im Grunde die Formel schreiben können. Jetzt ist das Verketten von zwei Feldern, dem Vornamen und dem Nachnamen, relativ einfach. Wenn ich nicht viel tippen will, kann ich entweder aus den Berichtfeldern oder aus den Kundentabellenfeldern den First Name quasi per doppelklickt hier reinfügen, Sie sehen, dieser wird dann eingefügt in geschweiften Klammern, das heißt, dieses ist ein Datenbankfeld und kann dann mit einem Plus-Symbol den Nachnamen noch verknüpfen. Ich habe außerdem die Möglichkeit, wenn ich lieber schreiben möchte, geschweifte Klammer auf und dann habe ich so eine Art Intelligenz-Unterstützung, geht schon davon, aus dass ich in die Customer-Tabelle gehen möchte, weil gar nichts anderes da ist als die Customer-Tabelle. Customer-Tabelle ist ja noch die einzige Tabelle, die wir verwenden und können dann hier mit "Contact First Name" und Enter, die Auswahl bestätigen, + , wieder geschweifte Klammer auf, "Contact Last Name", Enter, die Auswahl bestätigen. dann haben wir hier oben links das Symbol zum Überprüfen der Formel, können Sie draufklicken und dann sehen Sie, dass keine Fehler gefunden wurden, das heißt, die Formel ist in Ordnung. Jetzt kann ich das + mal wegmachen. Dann schimpft Crystal Reports: Der übrigen Text scheint nicht zur Formel zu gehören, weil hier einfach das Verketten-Symbol fehlt. Füge ich es wieder ein soll, ist alles wieder in Ordnung. Sie können jederzeit die Formel speichern und mit "Speichern und schließen" verlassen Sie dann den Formel-Editor oder den Formal-Workshop. Dann habe ich jetzt hier meine Ansprechpartner-Feld und dieses kann ich gleich direkt in die Vorschau-Ansicht auf die Details-Sektion setzen und Sie sehen, ich habe dann hier den Vornamen und den Nachnamen miteinander verkettet, nicht ganz schön, weil kein Leerzeichen zwischen Vor- und Nachname ist. Das können Sie jederzeit ändern, indem Sie zurück gehen in den Formel-Editor. Sie suchen sich die entsprechende Formel und können dann mit der rechten Maustaste auf "Bearbeiten" gehen oder Sie gehen per Doppelklick in den Formel-Editor für diese Formel "Ansprechpartner". Was Sie auch machen können ist, Sie können auf das Feld direkt draufklicken mit der rechten Maustaste und kommen dort in "Formel bearbeiten" in die Formel. Das können Sie dann hier gleich direkt noch ein weiteres Plus-Symbol einfügen und ein Leerzeichen in einfachen Hochkommas. Das ist genauso richtig, wie die doppelten Hochkommas. Das wird da in dem Fall auch funktionieren. Wichtig ist, dass sich nicht mischen, das heißt, doppelte Hochkommas auf und einfache Hochkomma schließen, das ist nicht korrekt. Das heißt, Sie halten sich dann im Grunde lieber an eine Syntax. Wenn die Formel gespeichert ist, wird auch die Änderungen sofort übernommen. Wenn ich jetzt mit der Maus hier so ein bisschen über den Ansprechpartner rüberfahre, dann sehen Sie über die Tooltip-Hilfe, dass der "Ansprechpartner" mit einem @-Symbol versehen ist. Das heißt, dass es sich hierbei um ein Formelfeld handelt. Alle Formelfelder werden mit einem @-Symbol gekennzeichnet. Wenn ich jetzt die Formel wieder weiter bearbeiten möchte, ein bisschen komplizierter oder komplexer, fügen wir nun der Formel einfach eine Funktion hinzu, und zwar können wir die entweder hier aus dem Funktionsbereich heraussuchen, bei den Zeichenfolgen zum Beispiel eben "Left" oder Sie schreiben das direkt hier rein, Groß- oder Kleinschreibung spielt dabei erstmal keine Rolle. Sie sehen, wenn ich "Left" schreibe, wird dieses Wort auch Blau. Blau heißt, es wird als Befehl erkannt und ich kann über die Taste F1 die Hilfe aufrufen und kann mir dann angucken, was macht denn eigentlich "Left" und welche Parameter muss ich da mitgeben. Ich sehe also, dass ist "Left" mit den Parametern, das soll Zeichenfolge heißen, und eine Länge übergeben muss, Zeichenfolge ist dann dabei ein Text und die Länge ist eine ganze Zahl, die die Anzahl der aus Zeichenfolge zu extrahierenden Zeichen angibt, und zwar, wie der Name schon sagt, von links also von "Left". Rückgabewert ist dann eben ein String-Wert. Der Befehl "Left" ist sowohl in der Basic als auch in der Crystal-Syntax vorhanden und funktioniert in beiden Fällen gleich. Hier gibt es noch ein paar Beispiele: "Left ("abcdefg") 4" gibt "abcd" zurück, also die vier, die ersten vier Zeichen von links. Mit dieser Information gehen wir nun in den Formel-Editor zurück und sagen,"Left" runde Klammer auf, Angabe einer Zeichenfolge, dass wäre in dem Fall unser Vorname, mit Komma getrennt, der nächste Parameter, 1, das heißt, nur das erste Zeichen von links aus gesehen, dann hängen wir noch einen Punkt, diesmal kein Leerzeichen dran und dann kommt nahtlos der Nachname. Das Ganze können wir überprüfen, sind keine Fehler gefunden worden, "Speichern und schließen" und Sie sehen das dann aus dem Ansprechpartner "Chris Christianson" "C. Christianson" geworden ist. Machen wir noch ein weiteres Beispiel und erweitern den Ansprechpartner erneut über "Formel bearbeiten" und fügen jetzt mal dem Nachnamen noch etwas hinzu, und zwar heißt das "UpperCase". UpperCase ist eine Funktion, die das, was Sie als Zeichenfolge übergeben in Großbuchstaben zurückgibt, das heißt, wir schreiben hier "UpperCase", Klammer auf, dann den Nachnamen und runde Klammer auch wieder zu, überprüfen die Formel, klicken auf OK, keine Fehler. Und dann sehen Sie, dass aus "Christianson" mit großem C und kleinem Rest ein großgeschriebener "Christiason" geworden ist. Die Formelfelder sind ganz normale Datenfelder, die Sie mit rechter Maustaste, "Feld formatieren" genauso formatieren können wie Textfelder oder andere Datenbankfelder, Sie können sie unterdrücken, Größe und Position sperren, Rahmen drumrum setzen, Schriftarten festlegen und so weiter. Das besonderen an Crystal Reports ist, dass Sie für viele der Optionen, die Sie setzen können, also wie zum Beispiel "Unterdrücken", dieses X2-Symbol haben mit dem kleinen Bleistift, das heißt, dass Sie diese Option, "Unterdrücken" in dem Fall, auch mit einer Formel versehen können, das heißt, wir könnten hier hineingehen und eine Formel beschreiben, die dann den Ansprechpartner-Namen unterdrückt, aber nur wenn das Ergebnis dieser Formel, die wir hier schreiben, einen booleschen Wert "true", also wahr ergibt. Das ist deswegen so, weil die Formel, die wir hier schreiben, ja entweder den Haken setzt oder eben den Haken nicht setz. Speziell gesagt, gibt die Formel zurück, ob der Haken gesetzt werden muss. Heißt, gibt die Formel "wahr" also "true" zurück, wird der Haken gesetzt, gibt die Formel "false" zurück, wird der Haken nicht gesetzt. Achten Sie dabei, dass, noch einmal um die Ecke gedacht, der Haken für "Unterdrücken" gesetzt wird, das heißt, der Haken wird gesetzt für "nicht anzeigen". Das ist manchmal etwas schwer zu verstehen, deswegen weise ich nochmal darauf hin. Wir können ja mal ein Beispiel machen und sagen, wir schreiben eine Formel, und zwar, wenn der Ansprechpartner-Namen so wie er jetzt da drin steht, also wie wir ihn aus der Formel "Ansprechpartner" bekommen, wenn der länger als acht Zeichen ist, dann soll der Ansprechpartner-Name gar nicht gedruckt werden. Die Länge eines Feldes bekommt man über eine Funktion "LEN" wie Length. Sie können auch direkt "Length" schreiben, ist aber beides das Gleiche, "Length" wäre eben nur länger, aber eben auch eindeutiger, deswegen lasse ich mal Length und wir schreiben dann die Länge von "Ansprechpartner", wenn die 8. Wir müssen also jetzt, damit es einen Wahrheitswert, also ein Boolescher Wert ergibt, noch eine Abfrage schreiben, ob die Länge 8 ist und nur die Länge von "Ansprechpartner" würde nicht reichen, dann würde Crystal Reports einen Fehler werfen. Und sagen hier ist ein Boolescher Wert erforderlich, dann die Länge 8 eintragen, dann findet er keine Felder und dann ist auch in Ordnung. Jetzt zwei Dinge. Wenn Sie eine Formel hinter eine formelfähige Option gelegt haben, dann wird dieses Icon rot, das heißt, Sie sehen es hier deutlich, X2 steht jetzt in roten Buchstaben da und Sie sehen es auch, dass der Stift sich gesenkt hat, das heißt, es hat jemand die Formel geschrieben. Dabei ist dann unerheblich, ob Sie den Haken hier reingesetzt haben oder nicht reingesetzt haben. Dieser Haken für die Option wird immer durch die Formel evaluiert. Ich klicke mal auf OK. Und dann sehen wir, dass alle die rausfallen, die eben länger als acht Zeichen waren. Weiteres Beispiel und damit demonstrieren wir nochmal, was im Crystal Reports eigentlich so möglich ist mit Formeln, ist, wenn wir in der Schriftart können Sie sogar eben die Farbe setzen über eine Formel, können wir auch sagen. Wenn eine bestimmte Länge erreicht ist, dann soll der Name in Rot dargestellt werden, ansonsten in Schwarz. Dazu haben Sie hier die verschiedenen Farbkonstanten, die Sie zurückgeben müssen, also diesmal dann kein Boolescher Wert und auch kein alphanumerischer Wert, sondern ein Farbwert. Das wäre dann hier einer von diesen oder einen RGB-Code mit dem Wort "Color" davor, also mit der Funktion "Color" davor. das gibt auch einen Farbwert zurück. Also können wir sagen, "if (LENGTH ( { @Ansprechpartner } )", natürlich die Länge des Ansprechpartners, " 6", dann geben wir zurück den Farbcode "crRed", ansonsten "crBlack". Sie sehen auch, dass die Farbcodes dann jeweils blau gekennzeichnet sind. Das können Sie nochmal überprüfen, keine Fehler, "Speichern und schließen". Auch hier sehen Sie wieder das X2-Icon ist rot und der Stift ist gesenkt und Sie sehen nun, dass viele Namen rot gefärbt sind, weil sie eben länger als sechs Zeichen sind. Nur Gerry Wade ist genau sechs Zeichen und damit eben schwarz. Wenn Sie jetzt die Formatoptionen übertragen mit dem kleinen Pinsel-Symbol, was Sie auch aus Word kennen, dann ist es so, dass auch sämtliche Formatierungsoptionen und auch sämtliche Formatierungsformeln mitübertragen werden. Das heißt, ich kann jetzt aus dem Ansprechpartner du Formatvorlage wählen und wende diese auch auf den Nachnamen an. Und Sie sehen, es verschwinden einige Nachnamen, eben jene, wo der Ansprechpartner länger als acht Zeichen ist. Und all diejenigen, wo der Ansprechpartner-Name größer als sechs Zeichen ist, werden dann eben rot dargestellt. Das können Sie sich auch angucken, indem Sie dieses "Feld formatieren" für den Nachnamen aufrufen. Im Bereich der "Schriftart" sehen Sie jetzt, ist hier auch eine Formel hinterlegt, die Sie so zumindest hier drin nie geschrieben haben, sondern die ist kopiert worden vom Ansprechpartner und "Unterdrückt" ist eben auch eine Formel dahinter, dir auch kopiert wurde. Jetzt können Sie folgendes machen, jetzt können Sie hier sagen, wir wählen bei den Nachnamen eine Formel für das Unterdrücken aus, da muss dann der Ansprechpartner-Name schon größer als 10 Zeichen sein, damit der Nachname nicht angezeigt wird, klicken auf OK und dann sehen Sie, das eben "Chester" von "Kristina Chester" als Nachname wieder auftaucht und aber als Ansprechpartner lange nicht. Und wenn Sie jetzt zwei Felder mit unterschiedlichen Formeln dahinter markieren und mit der rechten Maustaste über "Objekte formatieren", die Formatoption setzen wollen für alle beide Felder, dann sehen Sie noch eine Farbe in den Formel-Icons, und zwar Pink. Und Pink bedeutet, hier gibt es unterschiedliche Werte. Das heißt, wenn ich jetzt hier reinklicke, dann wird der Wert gelöscht, der hinter der Formel steht, und es wird für beide die gleiche Formel verwendet. Nur dass Sie das mal gesehen haben, wenn also das Icon hier Pink ist, dann heißt das, die beiden markierten Felder oder die markierten Felder, die Sie markiert haben, haben unterschiedliche Formeln in diesem Bereich. Sie haben in diesem Video damit einen kleinen Einblick bekommen, wie mächtig Formeln in Crystal Reports sind und was Sie mit Formeln innerhalb des Berichtes eigentlich alles so anstellen können. Sie können ganz neue Felder erschaffen, aber Sie können auch bei vorhandenen Feldern Eigenschaften oder Formatoptionen skripten. Und das ist eigentlich so das, was Crystal Reports so ausmacht, dass es so unglaublich flexibel in die Richtung ist.

Crystal Reports 2016 Grundkurs

Erstellen Sie aussagekräftige und übersichtliche Berichte mit SAP Crystal Reports 2016.

6 Std. 39 min (51 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Hersteller:
Software:
Crystal Reports Crystal Reports 2016
Exklusiv für Abo-Kunden
Erscheinungsdatum:30.01.2017

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!