Script
Ein Skript ist ein Programm, das in einer Hochsprache geschrieben ist und Teil eines Berichts ist. Während der Bericht ausgeführt wird, wird das Skript ebenfalls ausgeführt. Ein Skript kann Daten auf Weisen verarbeiten, die mit den normalen Operationen des FastReport-Kerns nicht möglich sind; zum Beispiel kann ein Skript redundante Daten abhängig von einer vordefinierten Bedingung ausblenden. Ein Skript kann auch verwendet werden, um die Eigenschaften von Dialogformularen zu steuern, die Teil eines Berichts sind.
Ein Skript wird in einer der von der Skript-Engine (FastScript) unterstützten Sprachen geschrieben. Diese sind: PascalScript, C++Script, BasicScript und JScript.
Wir werden alle Beispiele in PascalScript schreiben. Wenn ein neuer Bericht erstellt wird, wird diese Sprache standardmäßig ausgewählt.
Die folgenden Funktionen werden von der FastScript-Engine unterstützt:
- Standardsprachensatz: Variablen, Konstanten, Prozeduren, Funktionen (die geschachtelt sein können und Variablen, Konstanten, Standardparameter haben können), alle Standardoperatoren (einschließlich case, try, finally, except, with), Typen (ganzzahlig, gebrochen, logisch, Zeichen, Zeile, mehrdimensionale Arrays, Variant), Klassen (mit Methoden, Ereignissen, Eigenschaften, Indizes und Standard-Eigenschaften)
- Typkompatibilitätsprüfung
- Zugriff auf beliebige Objekte des Berichts
FastScript unterstützt jedoch nicht Folgendes:
- Deklarationen dieser Typen: Datensätze, Klassen
- Zeiger, Mengen (aber der 'IN'-Operator kann in Ausdrücken wie "a in ['a'..'c','d']" verwendet werden)
- shortstring-Typ
- bedingungslose Sprünge (GOTO)
Skripte können im FastReport-Designer erstellt werden, der einen Skripteditor enthält.
Shortcut-Tasten
Liste der Tastenkombinationen, die im Skripteditor verwendet werden können:
Taste
|
Bedeutung
|
Cursortasten
|
Cursor bewegen
|
Seite Hoch, Seite Runter
|
Gehe zur vorherigen/nächsten Seite
|
Strg+Seite Hoch
|
Gehe zum Anfang des Textes
|
Strg+Seite Runter
|
Gehe zum Ende des Textes
|
Home
|
Gehe zum Anfang der Zeile
|
Ende
|
Gehe zum Ende der Zeile
|
Enter
|
Gehe zur nächsten Zeile
|
Entf
|
Symbol an der Cursorposition löschen; ausgewählten Text löschen
|
Rücktaste
|
Symbol links vom Cursor löschen
|
Strg+Y
|
Aktuelle Zeile löschen
|
Strg+Z
|
Letzte Aktion rückgängig machen (bis zu 32 Ereignisse)
|
Shift+Cursortasten
|
Textblock auswählen
|
Strg+A
|
Gesamten Text auswählen
|
Strg+U
|
Ausgewählten Block um 2 Symbole nach links verschieben
|
Strg+I
|
Ausgewählten Block um 2 Symbole nach rechts verschieben
|
Strg+C, Strg+Einfügen
|
Ausgewählten Block in die Zwischenablage kopieren
|
Strg+V, Shift+Einfügen
|
Text aus der Zwischenablage einfügen
|
Strg+X, Shift+Entf
|
Ausgewählten Block in die Zwischenablage ausschneiden
|
Strg+F
|
Eine Zeile suchen
|
Strg+R
|
Eine Zeile ersetzen
|
F3
|
Wiederholte Suche/Ersetzung von der Cursorposition
|
F9
|
Skript ausführen (Ausführen)
|
Strg + Leertaste
|
Liste der Methoden und Eigenschaften des Objekts anzeigen
|
Strg+Shift+Entf
|
Wort rechts vom Cursor löschen
|
Strg+Shift+Rücktaste
|
Wort links vom Cursor löschen
|
Struktur eines Skripts
var // das Kapitel "Variablen" kann überall platziert werden
i, j: Integer;
const // Kapitel "Konstanten"
pi = 3.14159;
procedure p1; // Prozeduren und Funktionen
var
i: Integer;
procedure p2; // geschachtelte Prozedur
begin
end;
begin
end;
begin // Hauptprozedur.
end.