Button für DLL
Voraussetzung zum Erstellen eigener DLLs:
- Delphi Lizenz: Die für die DLL-Programmierung benötigte Version ist bei visigate zu erfragen. visigate behält sich das Recht vor, jeweils aktuelle Delphi-Versionen in der Entwicklungsumgebung zu verwenden. D.h. ggf. muss der Anwender seine Delphi-Version auf eigene Kosten updaten und DLL-Programmierungen entsprechend anpassen.
- visigate Komponenten-Bibliothek zur metropolis DLL-Entwicklung
- Reportbuilder für DLL´s, die Daten ausdrucken sollen.
WICHTIG: Für die Programmierung von DLL´s sind gute Kenntnisse in Delphi und SQL zwingend notwendig.
DLL-Button einfügen
DLLs können über Buttons in Formulare eingefügt werden. DLLs können aber auch beim Drucken (in den Druckeinstellungen) und im Ereignismanager (bei verschiedenen Datensatz- oder Feldfunktionen) verwendet werden.
1. Um ein DLL-Button einzufügen, rufen Sie zuerst das Formular, dann das Designermenü Schaltflächen/DLL Aufrufen
bzw. Neu/Standards/Schaltflächen/DLL Aufrufen
auf.
2. Im Register Externer Aufruf geben Sie den Dateinamen (mit oder ohne Endung .DLL), den Pfadnamen (Pfadnamenfestlegung: Menü Dienste/System/Pfade) und ggf. Parameter (optional) ein. Der DLL-Parameter kann in der DLL mit der Variablen _DLLParameter.Uebergabewert abgefragt werden. Somit ist es möglich, eine einzige DLL für verschiedene Aufgaben zu programmieren. Der Übergabeparameter steuert die DLL entsprechend.
Wenn Sie in das Feld Parameter (optional) direkt: #Mandant #Benutzer eintragen, werden die Parameter vor dem Aufruf der DLL durch den "echten" Mandanten und "echten" Benutzer ersetzt.
DLL einem bestehenden Button zuweisen
1. Rufen Sie zuerst das Formular und dann den Objektinspektor auf.
2. Markieren Sie den Button, dem Sie eine DLL zuweisen wollen und klicken Sie auf die Objekteigenschaften.
3. Klicken Sie auf das Register Externer Aufruf und geben Sie dort die entsprechenden Daten ein. (Dateiname und Pfadname müssen eingegeben werden. Der Pfadname wird im Menü Dienste/System/Pfade bestimmt. Die Eingabe eines DLL-Parameters ist optional.)
4. Im Bereich Ausführung können Sie bestimmen, ob und wann die DLL ausgeführt werden soll.
DLL, die ein Programm aufruft und Parametern übergibt
Bei der execProg.dll, die als zip.Datei geliefert wird und in das metropolis-DLL-Verzeichnis (manuell) ausgepackt werden muss, handelt es sich um ein kundenspezifische DLL-Anwendung.]
Die DLL ermöglicht einen Programmaufruf mit Angabe von Parametern und metropolis-Belegkopffeldern. DLL-Aufrufmöglichkeiten:
- über einen DLL-Aufruf-Button in einem Formular (beim DLL-Button: Aufruf der Objekteigenschaften, Register Externer Aufruf)
- über Menü Dienste/Drucken/Einstellungen, Register DLL
- über Menü Dienste/Ereignismanager in verschiedenen Registern
Die Einträge müssen je nach Wahl der Aufrufmöglichkeiten in die folgenden Felder erfolgen:
|
Feldname |
Eintrag - Beispiel |
|
Dateiname bzw. DLL-Dateiname |
ExecProg |
|
Pfadname bzw. DLL-Pfadname |
DLL (bzw. Pfad angeben, wo die ExecProg.dll gespeichert ist. ACHTUNG: Bei einem Update wird nur die Datei, die im DLL-Verzeichnis gespeichert ist, berücksichtigt.) |
|
Parameter (optional) bzw. DLL-Parameter |
meinProg.exe meinPara1 meinPara2 "mein Para 3" #BELEGNR# |
Parameter, die eine Zeichenkette mit leeren Feldern haben, müssen in "An füh rungs zeichen" gesetzt werden, damit sie nicht als einzelne Parameter interpretiert werden.
metropolis-Felder aus dem Belegkopf müssen durch # vor und nach dem Begriff gekennzeichnet werden - #FELDNAME#. Es können nur Belegkopffelder übergeben werden.
Bei dem oben genannten Beispiel würde die DLL folgende Kommandozeile ausgeben:
meinProg.exe meinPara1 meinPara2 mein Para 3 R/10001
info@visigate.de - visigate© Software GmbH - Bremen - www.visigate.de