Ereignisorientierte Programmierungen (user-defined-trigger)

Allgemeine Beschreibung

Als umfangreiches Softwaresystem umfasst unsere ERP-Software easyWinArt mehrere Millionen Zeilen strukturierten Quellcode. Diesem liegt eine Schichtenarchitektur mit zehn Schichten (Layer) zugrunde. Sechs dieser Layer enthalten freigegebene Ereignisse (Events), welche weiterhin Trigger genannt werden, in Anlehnung an Datenbankereignisse (Datenbanktrigger). Diese Trigger werden während der Programmlaufzeit ausgelöst und unter Verwendung des SDK kann eigener Code für diese Trigger programmiert werden, welcher dann zur Laufzeit ausgeführt wird. Es können somit eigene ereignisorientierte Programmierungen umgesetzt werden.

In der SDK-Projektmappe stehen im Projekt '03-UserLayer-SDK' im Ordner 'user-defined-trigger' sechs Quellcodedateien ('TriggerBasisLayer.vb', 'TriggerDatenLayer.vb', ...) bereit, von denen jede eine vom easyWinArt-Original-Code vererbte Klasse mit den freigegebenen Ereignissen des jeweiligen Triggers enthält. Der eigene Code sollte im entsprechenden Trigger nach dem Öffnen des Codes unterhalb des Kommentars 'User-defined Code Area:' eingefügt werden. Die Ereignisse werden ausgewählt durch Auswahl des 'Ereiginsse'-Eintrags im linken Codenavigations-Dropdown und anschließender Auswahl des gewünschten Ereginisses im rechten Dropdown. Im Folgenden werden diese Trigger beschrieben und es stehen verschiedene Programmierbeispiele bereit.

TriggerBasisLayer

Der Basis-Layer ist die zehnte und unterste Schicht in der easyWinArt-Architektur. Sie enthält einige grundsätzliche Strukturen und Funktionen wie die Tabellen, Views, Mandantenkonfiguration, die globalen Variablen (GV) und statische wichtige Methoden (Fkt). Die Trigger des Basis-Layers sind grundsätzlicher Natur und werden eher selten benötigt.

Beispiele zum TriggerBasisLayer

TriggerDatenLayer

Der Daten-Layer bildet die 9. Schicht und ist somit nahezu ganz unten angesiedelt. Hier werden hauptsächlich die Datenbankzugriffe geregelt. Entsprechende Ereignisse sind hier enthalten, wie z.B. 'InsertDatensatz' oder 'DeleteDatensatz'.

Beispiele zum TriggerDatenLayer

TriggerBusinessFramework

Der 8. Layer heißt 'Business-Framework' und enthält im Wesentlichen einige Basis-Klassen, die als Grundlage für Klassen des 'Business-Layer' dienen. Die Ereignisse dieser Schicht werden eher selten benötigt und verwendet.

Beispiele zum TriggerBusinessFramework

TriggerBusinessLayer

In der 7. Schicht 'Business-Layer' sind die vielen Business-Objekte (BLs und OBJs) der vielen easyWinArt-Menüfunktionen enthalten. Weiterhin sind hier die verschiedenen Methoden abgelegt, die unter 'FktB' zusammengefasst sind. Interessant ist an dieser Stelle z.B. das Ereignis 'NachPreisfindung', mit dem die Preisfindung von easyWinArt durch eine eigene überschrieben werden kann.

Beispiele zum TriggerBusinessLayer

TriggerFormFramework

Die 5. Schicht mit dem Namen 'Form-Framework' enthält die Basis-Form-Klasse 'BasisForm', von der alle normalen easyWinArt-Menüfunktionen abgeleitet werden, sowie viele übergreifende (Hilfs-)Forms wie z.B. die Such- oder Meldungsfenster. Weiterhin sind hier auch die Ewa-Controls, also easyWinArt-spezifische Steuerelemente, untergebracht. Ebenfalls wichtig ist die Klasse FktF mit vielen wichtigen Funktionen und Prozeduren. Ab dieser Schicht steht eine Oberfläche zur Verfügung. Es sind hier sehr viele (wichtige) Ereignisse untergebracht, welche im Wesentlichen beim aktiven Arbeiten mit easyWinArt-Menüfunktionen ablaufen, z.B. 'NachLoad', 'NachNeu', 'VorSpeichern' etc.

Beispiele zum TriggerFormFramework

TriggerFormLayer

Der 'Form-Layer' ist die 4. Schicht in der easyWinArt-Architektur. Hier sind alle Forms der normalen easyWinArt-Menüfunktionen untergebracht, wie z.B. das Artikel-Fenster oder das Adressen-Fenster. Teilweise befinden sich auch Hilfs-Forms an dieser Stelle. Die enthaltenen Ereignisse beziehen sich entsprechend jeweils auf eine ganz bestimmte Form, z.B. der Trigger 'EwaNachUpdateEasyWinArt', welcher am Ende des Updates aufgerufen wird, oder der Trigger 'EwaImportInDrehscheibeBelege', welcher im Rahmen der Menüfunktion 'Beleg-Import-Drehscheibe' ausgelöst wird.

Beispiele TriggerFormLayer

Beratung erwünscht?

Gerne können Sie mich oder einen mein­er freund­lichen Kollegen telefonisch er­reichen:  +49 2161 277 680

Alter­na­tiv schrei­ben Sie uns an  info@it-easy.de oder nutz­en Sie das nach­folgende Kontakt­formular.

Ihr Ralf Jasper
Kundenservice

Mitarbeiterfoto von Herrn Ralf Jasper


Rückruf-Service

Für eine möglichst unkomplizierte Kontaktaufnahme füllen Sie bitte das unten stehende Formular aus und klicken auf „Rückruf anfordern“.