Event Scripting - Ereignisgesteuerte Skripte

<< Hilfenavigation einblenden

Home > Handbuch > Entwicklerhilfe > Ereignisgesteuertes Scripting

Event Scripting - Ereignisgesteuerte Skripte

Verfügbar in diesen Editionen

Ereignisgesteuerte Skripte

Ereigisgesteuerte Skripte werden vom Office Manager bei bestimmten Ereignissen automatisch ausgeführt. Dies ermöglicht individuelle Anpassungen und Reaktionen auf Programmfunktionen.

Hinweise

Das Event Scripting muss vom Administrator freigegeben werden.

Alle Ereignis-Funktionen werden in der Datei EventScripting.pas deklariert. Eine verschlüsselte Datei ist nicht zulässig, weil der Code nicht einzusehen wäre.

Sicherheit: Um Manipulationen auszuschließen, schützen Sie bitte das Verzeichnis "(Gemeinsame Dateien)\macro\eventscripting\" mit Dateizugriffsrechten. Leserechte für alle Benutzer, Schreibrechte nur für berechtigte Administratoren.

Fehlerhafte Skripte können zu einer Vielzahl von Fehlern und Meldungen im Programm führen!

Ereignissteuerung einrichten

1.Der Administrator muss das Scripting zulassen: Menü Datei | Optionen | Einstellungen, Seite Sicherheit.

2.Öffnen Sie anschließend den Makro-Editor, Menü Start | Verwenden | Makro | Makro-Editor. Klicken Sie im Editor auf Start | Makro | Event Scripting | Event Scripting installieren. Der Befehl ist nur sichtbar, wenn die Funktion noch nicht eingerichtet ist.
Das Verzeichnis "..\Macro\EventScripting" wird mit einer Beispiel Pascal-Datei erstellt und in den Editor geladen.

3.Zum Deaktivieren der Funktion können Sie die Datei AutoScripting.pas umbenennen/löschen oder, wie unter Punkt 1 beschrieben, wieder deaktivieren.

Liste der Ereignisse

Bei Funktionen mit booleschem Ergebnis wird die programminterne Ausführen abgebrochen, wenn das Funktionsergebnis false ist. Weitere Informationen erhalten Sie, wenn Sie eine Ereignis-Funktion im Skripteditor aus der Funktionsliste einfügen.

function AfterAutoCaptAzureAI(AFileName: string; AFieldValues: TStrings): boolean

function AfterAutoCaptDate(AFileName: string; AFieldValues: TStrings): boolean

function AfterAutoCaptPhrases(AFileName: string; AFieldValues: TStrings): boolean

function AfterAutoCaptYear(AFileName: string; AFieldValues: TStrings): boolean

function AfterAutoCaptZugferd(AFileName: string; AFieldValues: TStrings): boolean

procedure AfterCreateDocFile(AFileName: string; ADocID: integer)

procedure AfterInitializationMenu(AForm: TForm; ABarManager: TdxBarManager; ARibbon: TdxRibbon)

procedure AfterLoadFormSettings(AForm: TForm; ASettingsFileName: string)

procedure AfterLoadMenuSettings(AForm: TForm; ABarManager: TdxBarManager; ASettingsFileName: string)

procedure AfterPostDoc(ADataset: TDataset; AIsNewDocument: boolean)

procedure AfterSendFileToAccountant(ADocID: integer; ASrcFileName, ADestFileName: string)

procedure AfterSendToAccountant(AArchiveFileName, ADestPath, ADestZipFileName: string)

function AppOnActivate(ADocWasOpened: boolean): boolean

procedure BeforePostDoc(ADataset: TDataset; AIsNewDocument: boolean)

procedure DatasetDocBeforeDelete(ADataset: TDataset)

procedure DatasetDocBeforeEdit(ADataset: TDataset)

procedure DatasetDocBeforeInsert(ADataset: TDataset)

procedure DatasetDocBeforeOpen(ADataset: TDataset)

procedure DatasetDocAfterOpen(ADataset: TDataset)

procedure DatasetDocBeforePost(ADataset: TDataset)

procedure DatasetDocAfterPost(ADataset: TDataset)

procedure DatasetDocversBeforePost(ADataset: TDataset)

procedure DatasetDocversAfterPost(ADataset: TDataset)

function DBImportTableBeforeAppend(ADBCategory: integer; ASrcDBName: string; ASrcDataset, ADstDataset: TDataset): boolean;

function DocumentGetPassword(ACalledFrom, AFileName: string; ACalledCount: integer): string

procedure FormDBEdit_AfterLoadLayout

function FormDBEdit_OnCloseQuery: boolean
Mit result=false kann z. B. die Eingabe eines Datenfelder im Eigenschaftenfenster erzwungen werden.

procedure FormDBEdit_OnExitFieldEdit(AField: TField)

procedure FormOmMain_AfterCreate

procedure FormOmMain_AfterCreateDocGridColumns

function FormOmMain_AfterExecuteActFileDbExport(AFileName: string): boolean

procedure FormOmMain_AfterExecuteActFileDbReport(AFileName: string)

procedure FormOmMain_AfterLoadLayout

function FormOmMain_OnCloseQuery: boolean
Mit result=false wird das Beenden des Programms verhindert.

procedure FormOmMain_OnExitSearchEdit(AFieldName, AEditText: string)

function FormOmMain_OnGridClipbordPaste: boolean

function FormOmMain_OnGridDnDDrop: boolean

function FormOmMain_OnNavigatorClipbordPaste: boolean

function FormOmMain_OnNavigatorDnDDrop: boolean

procedure FormOmMain_tvDocumentEditValueChanged(AField: TField; AEditingValue: string)

procedure OnAdminLogin(IsLoggedIn: boolean)

procedure OmApiAfterInterpretToken(ATokenName, AMacroCmd: string; ATokens: TStrings; AResult: string)

function OmApiBeforeInterpretToken(ATokenName, AMacroCmd: string; ATokens: TStrings): boolean

procedure OnDocumentFileMoved(AOldFileName, ANewFileName: string; AType, ASourceType: integer)

function OnExecuteAction(AForm: TForm; AAction: TBasicAction): boolean
Wird vor dem Ausführen einer Action aufgerufen. Siehe auch {OmAPI:ListMainMenuEntries} für eine Liste der Actions im Hauptfenster.

procedure OnFileChange(AType: integer; AFileName: string; ADataset: TFDQuery)

function OnFileDelete(AType: integer; AFileName: string; ADataset: TFDQuery): boolean
Löschen einer Dokumentdatei. Mit result=false wird nur das Löschen der Datei, aber nicht das Entfernen aus dem Archiv verhindert. Typ 1 ist das Hauptdokument, 2 eine Dokumentversion.

function OnFtiAddDocument(AFileName: string; ADocID: integer): boolean

procedure OnFtiReadFile(AFileName: string; ADocID: integer)

function OnHelp(ACommand: Word; AData: Integer): boolean

function OnImporterAddItem(ASourceOrFileName: string; AImportSource: integer; AFieldValues: TStrings): boolean

function OnImporterExecute(AItemCount: integer): boolean

function OnLoadFormSettings(AForm: TForm; ASettingsFileName: string): boolean

function OnLoadMenuSettings(AForm: TForm; ABarManager: TdxBarManager; ASettingsFileName: string): boolean

function OnSchedulerEventComplete(ACompleted: boolean; ADataset: TFDQuery; ACaption, AGuid: string): boolean