Was lässt sich anpassen?
Der Reportdesigner arbeitet nach dem Prinzip einer frei gestaltbaren Druckseite. Auf der Seite werden Objekte platziert, verschoben, vergrößert, formatiert und mit Venalis-Daten verbunden. Dadurch können vorhandene Formulare verändert oder – je nach Aufgabe – eigene Ausgaben aufgebaut werden.
Typische Anpassungen sind Firmenlogo und Briefkopf, Schriftart und Schriftgröße, Farben, Rahmen, Positionen und Abstände, zusätzliche Texte, Datenfelder aus Venalis, Seitenzahlen, Kopf- und Fußbereiche, Summen sowie bedingte Darstellungen.
Der Aufbau des Designers
Die wichtigsten Bereiche sind die Arbeitsfläche mit der eigentlichen Druckseite, die Menü- und Symbolleisten, der Reporttree, der Objektinspektor und der Datenbaum. Im Datenbaum stehen die für den Report freigegebenen Felder und Variablen zur Verfügung. Viele davon können per Drag & Drop auf die Druckseite gezogen werden.
Der Objektinspektor zeigt die Eigenschaften des gerade markierten Objekts. Dort lassen sich unter anderem Position, Größe, Datenverknüpfung, Ausrichtung und zahlreiche Spezialoptionen ändern.
Sicher arbeiten: speichern, Vorschau und rückgängig
Vor größeren Änderungen empfiehlt sich eine Kopie des Formulars. Während der Bearbeitung sollte regelmäßig gespeichert und über die Vorschau kontrolliert werden.
- Strg+S – Report speichern
- Strg+P – Vorschau erzeugen
- Strg+Z – letzte Änderung rückgängig machen
- Strg+Y – rückgängig gemachte Änderung wiederherstellen
- Entf – markiertes Objekt löschen
- Enter – Editor des markierten Objekts öffnen
- Strg+Pfeiltasten – markiertes Objekt fein verschieben
- Shift+Pfeiltasten – Größe des markierten Objekts ändern
Die wichtigsten Reportobjekte
Ein Formular besteht aus einzelnen Objekten. Besonders häufig werden Text, Grafik und Bänder verwendet. Zusätzlich stehen je nach Report unter anderem Systemtext, RichText, Unterreport, Diagramm, Checkbox, Barcode und Zeichenobjekte zur Verfügung.
Texte, Schrift und Farben ändern
Ein Textobjekt wird per Doppelklick bearbeitet. Schriftart, Schriftgröße, Fett, Kursiv, Unterstrichen, Schriftfarbe sowie horizontale und vertikale Ausrichtung können über die Text-Symbolleiste eingestellt werden. Rahmen, Hintergrundfarbe, Rahmenfarbe und Rahmenbreite werden über die Rahmenfunktionen beziehungsweise den Objektinspektor gesteuert.
Längere Texte können automatisch umbrochen werden. Dafür ist die Eigenschaft WordWrap / Zeilenumbruch zuständig. Soll Text nicht abgeschnitten werden, muss außerdem die Größe des Textobjekts ausreichend sein.
Objekte verschieben, ausrichten und gleich groß machen
Objekte können mit der Maus oder fein über die Tastatur positioniert werden. Mehrere markierte Objekte lassen sich links, rechts, oben oder unten ausrichten, horizontal oder vertikal verteilen sowie auf gleiche Breite oder Höhe bringen. Das Raster kann eingeblendet und die Ausrichtung am Raster aktiviert werden.
Logo oder andere Grafik einfügen
Für ein Firmenlogo wird ein Grafikobjekt verwendet. Das Bild kann in den Grafikeditor geladen und anschließend auf der Seite positioniert werden. Wichtige Optionen sind Dehnen, Zentrieren und Seitenverhältnis beibehalten. Gerade bei Logos sollte das Seitenverhältnis erhalten bleiben, damit das Bild nicht verzerrt wird.
Venalis-Datenfelder auf dem Formular
Felder aus der Datenquelle lassen sich auf verschiedene Arten in einen Report einfügen. Am bequemsten ist meist Drag & Drop aus dem Datenbaum. Alternativ kann ein Textobjekt über die Eigenschaften DataSet und DataField mit einem Feld verbunden werden. Auch Ausdrücke können Datenfelder enthalten.
Bei einem bereits vorhandenen Venalis-Formular ist es in der Regel sinnvoller, bestehende Felder zu kopieren oder ein vorhandenes Datenfeld als Vorlage zu verwenden, statt Datenquellen komplett neu aufzubauen.
Ausdrücke und Variablen
FastReport erkennt Ausdrücke standardmäßig in eckigen Klammern. Dadurch kann ein Textobjekt statischen Text und berechnete Inhalte kombinieren. Variablen werden über Report → Variablen verwaltet und können ebenfalls in Textobjekten verwendet werden.
Ausdrücke sind leistungsfähig, sollten in produktiven Formularen aber mit Bedacht geändert werden. Ein Tippfehler in einem Ausdruck kann dazu führen, dass ein Feld leer bleibt oder der Report nicht korrekt erzeugt wird.
Was sind Bänder?
Bänder bestimmen, wann und wo Objekte gedruckt werden. Ein Seitenkopf erscheint beispielsweise auf jeder Seite oben, ein Seitenfuß auf jeder Seite unten. Der Reporttitel erscheint typischerweise am Anfang, eine Reportzusammenfassung am Ende.
Datenbänder werden für wiederholte Datensätze verwendet. Bei einer Positionsliste wird das Datenband für jeden Datensatz erneut ausgegeben. Deshalb sollten Objekte nicht wahllos von einem Band in ein anderes verschoben werden – die Bandart hat direkten Einfluss auf die Ausgabe.
Gruppen und Summen
Für gruppierte Ausgaben stehen Gruppenkopf- und Gruppenfußbereiche zur Verfügung. Summen und andere Ergebnisse können über Aggregatfunktionen berechnet werden. Typische Aufgaben sind Positionssummen, Gruppensummen oder Gesamtsummen am Ende eines Reports.
Wenn eine Summe an einer bestimmten Stelle nicht wie erwartet erscheint, liegt die Ursache häufig im verwendeten Band oder im Zeitpunkt der Berechnung.
Seiteneinstellungen
Über die Seiteneinstellungen lassen sich Papierformat, Breite, Höhe, Hoch- oder Querformat, Ränder und – bei mehrspaltigen Reports – die Spalten festlegen. Ein Doppelklick auf eine freie Stelle der Reportseite öffnet je nach Version ebenfalls die Seiteneinstellungen.
Seitenzahlen, Datum und Systeminformationen
Für Seitenzahlen, Datum, Uhrzeit und weitere Systeminformationen steht das Objekt Systemtext zur Verfügung. Solche Angaben werden häufig im Seitenkopf oder Seitenfuß platziert. Für Angaben wie „Seite X von Y“ kann je nach Aufbau eine zweipassige Reporterstellung notwendig sein, damit die Gesamtseitenzahl vor der Ausgabe bekannt ist.
Bedingte Darstellung und Scripts
Für einfache optische Bedingungen stehen Hervorhebungsfunktionen zur Verfügung. Komplexere Regeln lassen sich über Report-Scripts und Ereignisse wie OnBeforePrint steuern. Damit können Objekte beispielsweise abhängig von Daten ein- oder ausgeblendet oder Eigenschaften vor dem Druck verändert werden.
Scripts sind eine fortgeschrittene Funktion. Bei vorhandenen Venalis-Standardformularen sollten Scripts nur geändert werden, wenn die bestehende Logik verstanden wird.
Vorschau, Druck und Export
Die Vorschau zeigt das fertig erzeugte Formular vor dem Druck. Von dort kann der Report gedruckt und – abhängig von den in Venalis eingebundenen Exportfiltern – in verschiedene Formate ausgegeben werden. Das FastReport-Handbuch beschreibt unter anderem PDF, RTF, Excel, XML, CSV, HTML und Grafikformate.
Typische Fragen
Kann ich das Logo auf meiner Rechnung ändern?
Ja. Das Logo ist in der Regel ein Grafikobjekt. Öffnen Sie den Reportdesigner, markieren Sie das vorhandene Logo beziehungsweise fügen Sie ein Grafikobjekt ein und laden Sie die gewünschte Grafik. Achten Sie auf „Seitenverhältnis beibehalten“.
Ich habe etwas verschoben. Kann ich das rückgängig machen?
Ja. Solange Sie im Designer arbeiten, können Sie die letzte Änderung mit Strg+Z beziehungsweise „Rückgängig“ zurücknehmen. Bei größeren Änderungen empfiehlt sich zusätzlich eine Sicherungskopie des Formulars.
Wie füge ich ein Datenfeld ein?
Am einfachsten ziehen Sie das gewünschte Feld aus dem Datenbaum auf das passende Band. Bei bestehenden Venalis-Formularen können Sie sich außerdem an bereits vorhandenen Feldern orientieren.
Warum wiederholt sich ein Feld auf jeder Position?
Wahrscheinlich liegt das Objekt auf einem Datenband. Datenbänder werden für jeden Datensatz erneut ausgegeben.
Warum erscheint etwas nur auf der ersten oder letzten Seite?
Prüfen Sie, auf welchem Band das Objekt liegt. Reporttitel, Seitenkopf, Seitenfuß und Reportzusammenfassung haben unterschiedliche Aufgaben.
Praxis-Tipp
Bei einer kleinen Änderung ist es fast immer sicherer, ein vorhandenes Objekt zu kopieren und anzupassen, statt ein komplexes Feld komplett neu aufzubauen. Danach sofort die Vorschau prüfen. So bleiben Datenbindung, Formatierung und Bandzuordnung nachvollziehbar.