Programmierschnittstelle (API): Unterschied zwischen den Versionen
Die Seite wurde neu angelegt: „<languages /> <translate> <!-- <title>ArcFlow API</title> --> <table class=BigTable bgcolor="#242A34"> <tr> <td class="BigTitle" colspan="2" align="c…“ |
Jens (Diskussion | Beiträge) Stand 4.1.08 Geänderte Verzeichnisstruktur |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 28: | Zeile 28: | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td valign=top><font class=source> | <td valign=top><font class=source>...\Client\Lib\api_w32\af_api_w32.dll</font></td> | ||
<td valign=top>ArcFlow-API-DLL</td> | <td valign=top>ArcFlow-API-DLL 32-bit</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td valign=top><font class=source>arcflow_api.ca1</font></td> | <td valign=top><font class=source>...\Client\Lib\api_w64\af_api_w64.dll</font></td> | ||
<td valign=top>ArcFlow-API-DLL 64-bit</td> | |||
</tr> | |||
<tr> | |||
<td valign=top><font class=source>...\Client\App\Install\ArcFlowAPI\AF.API.Arg.prc</font></td> | |||
<td valign=top>Prozedur für Übergabe von Argumenten und Ermitteln des Resultats</td> | |||
</tr> | |||
<tr> | |||
<td valign=top><font class=source>...\Client\App\Install\ArcFlowAPI\AF.API.Base.prc</font></td> | |||
<td valign=top>Prozedur mit Basisfunktionen</td> | |||
</tr> | |||
<tr> | |||
<td valign=top><font class=source>...\Client\App\Install\ArcFlowAPI\AF.API.Def.prc</font></td> | |||
<td valign=top>Prozedur mit Konstanten und anderen Definitionen</td> | |||
</tr> | |||
<tr> | |||
<td valign=top><font class=source>...\Client\App\Install\ArcFlowAPI\AF.API.prc</font></td> | |||
<td valign=top>Prozedur mit allen Anweisungen der Schnittstelle</td> | |||
</tr> | |||
<tr> | |||
<td valign=top><font class=source>...\Client\App\Install\ArcFlowAPI\arcflow_api.ca1</font></td> | |||
<td valign=top>Beispielapplikation inklusive der API-Prozeduren</td> | <td valign=top>Beispielapplikation inklusive der API-Prozeduren</td> | ||
</tr> | </tr> | ||
Zeile 40: | Zeile 60: | ||
</p><p> | </p><p> | ||
Das Unterverzeichnisse "ArcFlow\Client\Lib\api_w32" und "ArcFlow\Client\Lib\api_w64" können in ein separates Verzeichnis kopiert werden, beispielsweise in das Unterverzeichnis "ArcFlowAPI" oder aus dem ArcFlow-Clientverzeichnis "ArcFlow\Client\Lib" geladen werden. Bei der Anweisung [[AfOpen|AfOpen()]] darf nur das "Lib"-Verzeichnis angegeben werden. Die Anweisung ermittelt die Architektur und ruft dann die korrekte DLL aus dem entsprechenden Verzeichnis auf. | |||
werden, beispielsweise in das Unterverzeichnis " | |||
das | Bestimmte Funktionen benötigen die .NET-Funktionalitäten von ArcFlow, daher sollten die Dateien "ArcFlow.NET.API.DLL", "ArcFlow.NET.DLL" und "ArcFlow.SYS.DLL" in das Verzeichnis des Clients kopiert werden. | ||
<p>Die Datenbank "arcflow_api.ca1" | <p>Die Datenbank "arcflow_api.ca1" kann beim CONZEPT 16-Server eingetragen werden. | ||
In der Datenbank sind zwei Benutzer (USER und SUPERUSER) definiert. Für beide | In der Datenbank sind zwei Benutzer (USER und SUPERUSER) definiert. Für beide | ||
Benutzer ist kein Passwort notwendig. Mit dem Benutzer "USER" kann die | Benutzer ist kein Passwort notwendig. Mit dem Benutzer "USER" kann die | ||
Zeile 77: | Zeile 97: | ||
</table> | </table> | ||
<p>Die Prozedur "Frm_ApiTest" wird nur in der Beispielapplikation benötigt. Sie zeigt den Aufruf der API-Funktionen, sowie die Verarbeitung der | <p>Die Prozedur "Frm_ApiTest" wird nur in der Beispielapplikation benötigt. Sie zeigt den Aufruf der API-Funktionen, sowie die Verarbeitung der zurück gelieferten Daten. Alle anderen Prozeduren müssen aus der Beispielapplikation exportiert und in die CONZEPT 16-Applikation importiert werden. Die Prozeduren befinden sich ebenfalls nach der Installation von ArcFlow im Verzeichnis "ArcFlow\Client\App\Install\ArcFlowAPI".</p> | ||
{{Info|Diese Prozeduren dürfen '''nicht''' verändert werden. Im Falle von Änderungen kann kein Support geleistet werden!}} | |||
von Änderungen kann kein Support geleistet werden!}} | |||
<p>Damit die ArcFlow-Hilfe in der Entwicklungsumgebung von CONZEPT 16 eingesetzt werden kann, um zum Beispiel die Online-Hilfe für die API-Befehle anzuzeigen, muss in der Konfigurationsdatei des Clients (<font class=source>c16.cfg</font> oder <font class=source>c16_apgi.cfg</font>) der Eintrag <font class=source>ApiHelp1=<Pfad und Dateiname></font> vorhanden sein. <Pfad und Dateiname> ist dabei der relative Verzeichnispfad und der Dateiname zur Datei <font class=source>ArcFlow.rid</font>.</p> | <p>Damit die ArcFlow-Hilfe in der Entwicklungsumgebung von CONZEPT 16 eingesetzt werden kann, um zum Beispiel die Online-Hilfe für die API-Befehle anzuzeigen, muss in der Konfigurationsdatei des Clients (<font class=source>c16.cfg</font> oder <font class=source>c16_apgi.cfg</font>) der Eintrag <font class=source>ApiHelp1=<Pfad und Dateiname></font> vorhanden sein. <Pfad und Dateiname> ist dabei der relative Verzeichnispfad und der Dateiname zur Datei <font class=source>ArcFlow.rid</font>.</p> |
Aktuelle Version vom 25. März 2024, 10:10 Uhr
![]() |
|
ArcFlow API | |
Programmierschnittstelle von ArcFlow |
Mit der Programmierschnittstelle können die Funktionen von ArcFlow aus einer anderen CONZEPT 16-Applikation heraus genutzt werden. Auf diese Weise kann ArcFlow in beliebige Applikationen integriert werden.
Im Lieferumfang der API sind folgende Dateien enthalten:
Pfad / Datei | Beschreibung |
...\Client\Lib\api_w32\af_api_w32.dll | ArcFlow-API-DLL 32-bit |
...\Client\Lib\api_w64\af_api_w64.dll | ArcFlow-API-DLL 64-bit |
...\Client\App\Install\ArcFlowAPI\AF.API.Arg.prc | Prozedur für Übergabe von Argumenten und Ermitteln des Resultats |
...\Client\App\Install\ArcFlowAPI\AF.API.Base.prc | Prozedur mit Basisfunktionen |
...\Client\App\Install\ArcFlowAPI\AF.API.Def.prc | Prozedur mit Konstanten und anderen Definitionen |
...\Client\App\Install\ArcFlowAPI\AF.API.prc | Prozedur mit allen Anweisungen der Schnittstelle |
...\Client\App\Install\ArcFlowAPI\arcflow_api.ca1 | Beispielapplikation inklusive der API-Prozeduren |
Installation
Das Unterverzeichnisse "ArcFlow\Client\Lib\api_w32" und "ArcFlow\Client\Lib\api_w64" können in ein separates Verzeichnis kopiert werden, beispielsweise in das Unterverzeichnis "ArcFlowAPI" oder aus dem ArcFlow-Clientverzeichnis "ArcFlow\Client\Lib" geladen werden. Bei der Anweisung AfOpen() darf nur das "Lib"-Verzeichnis angegeben werden. Die Anweisung ermittelt die Architektur und ruft dann die korrekte DLL aus dem entsprechenden Verzeichnis auf.
Bestimmte Funktionen benötigen die .NET-Funktionalitäten von ArcFlow, daher sollten die Dateien "ArcFlow.NET.API.DLL", "ArcFlow.NET.DLL" und "ArcFlow.SYS.DLL" in das Verzeichnis des Clients kopiert werden.
Die Datenbank "arcflow_api.ca1" kann beim CONZEPT 16-Server eingetragen werden. In der Datenbank sind zwei Benutzer (USER und SUPERUSER) definiert. Für beide Benutzer ist kein Passwort notwendig. Mit dem Benutzer "USER" kann die Beispielapplikation gestartet werden. Weitere Hilfe zum Umgang mit der Beispielapplikation befindet sich weiter unten.
Um die Schnittstelle in eine CONZEPT 16-Applikation einzubinden, muss die Beispielapplikation mit dem Benutzer "SUPERUSER" oder "SU" ohne Passwort aufgerufen werden. Die Datenbank enthält folgende Prozeduren:
AF.API | Prozedur mit den ArcFlow-Funktionen |
AF.API.Arg | Include-Prozedur |
AF.API.Base | Prozedur mit den ArcFlow-Basisfunktionen. |
AF.API.Def | Prozedur mit den Variablen-Definitionen |
Frm_ApiTest | Prozedur für die Beispielapplikation |
Die Prozedur "Frm_ApiTest" wird nur in der Beispielapplikation benötigt. Sie zeigt den Aufruf der API-Funktionen, sowie die Verarbeitung der zurück gelieferten Daten. Alle anderen Prozeduren müssen aus der Beispielapplikation exportiert und in die CONZEPT 16-Applikation importiert werden. Die Prozeduren befinden sich ebenfalls nach der Installation von ArcFlow im Verzeichnis "ArcFlow\Client\App\Install\ArcFlowAPI".
![]() |
Diese Prozeduren dürfen nicht verändert werden. Im Falle von Änderungen kann kein Support geleistet werden! |
Damit die ArcFlow-Hilfe in der Entwicklungsumgebung von CONZEPT 16 eingesetzt werden kann, um zum Beispiel die Online-Hilfe für die API-Befehle anzuzeigen, muss in der Konfigurationsdatei des Clients (c16.cfg oder c16_apgi.cfg) der Eintrag ApiHelp1=<Pfad und Dateiname> vorhanden sein. <Pfad und Dateiname> ist dabei der relative Verzeichnispfad und der Dateiname zur Datei ArcFlow.rid.
Beispiel:
ApiHelp1=Arcflow\ArcFlow.rid
Sind die Angaben korrekt, kann im Prozedureditor über die direkt Befehlshilfe (<Strg>+<F1>) die Hilfe zu dem Befehl aus der ArcFlow-Onlinehilfe angezeigt werden.
Bedienung der Beispielapplikation
Die Beispielapplikation startet direkt, wenn sich der Benutzer "USER" ohne Passwort einloggt.
Hier muss der Programmpfad eingetragen werden, in dem die ArcFlow-API-DLL gespeichert ist, ebenso Name bzw. die IP des Servers (bspw: "192.168.0.1") und der Name der Arcflow-Datenbank (in der Regel "arcflow").
Nach diesen Eintragungen kann die API geladen werden. Dazu wird die Schaltfläche [API laden] gedrückt. Im nächsten Schritt muss sich mit der ArcFlow-Datenbank verbunden werden. Dazu wird ein Benutzerkürzel sowie das dazugehörende Benutzerpasswort angegeben und auf [Login] geklickt.
Auf der zweiten Notebookseite "Beispielfunktionen" sind in einer Liste alle Funktionen aufgelistet, die die API zur Verfügung stellt. Über die Eingabefelder können die Parameter eingetragen werden, die der Funktion übergeben werden sollen. Die Beschreibung der Funktionen befindet sich im Text im unteren Bereich des Fensters.
Über die Schaltfläche [Funktion ausführen] wird die ausgewählte Funktion aufgerufen und die Inhalte der Eingabefelder als Parameter übergeben. Das Resultat wird im Text unterhalb der Liste angezeigt.