Inhaltsverzeichnis
Scripting mit Python
Wichtig für den erfolgreichen Einsatz einer ERP Software ist heute, dass der Endanwender selbst die Geschäftsprozesse individuell erweitern kann. In cimERP stehen hier verschiedene Optionen wie z.B. Workflows, Prozessmanagement u.a. zur Verfügung. In diesen Bereichen ist es bisher schon machbar, über die mitgelieferte Script-Sprache OpenROAD Geschäftsprozesse zu erweitern.
Eine weitere neue Möglichkeit besteht darin, die externe Script-Sprache Python für das Scripting zu verwenden.
Vorteile der Verwendung von Python:
1. Für Python gibt es sehr viele Module, die es ermöglichen, komplexe Anforderungen einfach realisieren zu können. So gibt es hier Module für die Bildverarbeitung, für die Nutzung des Internets, für die Verarbeitung von XML-Daten u.v.m.
2. Python ist sehr einfach zu erlernen.
3. Python ist sehr schnell, obwohl es eine interpretierte Sprache ist.
cimERP nutzt heute bereits Python für diverse Anwendungsfälle. Dazu zählen z.B. der Export von Excel-Dateien, das Auslesen von IMAP-Postfächern und die Abfrage von Webservices.
Wir zeigen Ihnen hier ein einfaches Beispiel, mit dem eine bestimmte Datei, die auf einem Webserver liegt, über das Internet abgerufen und lokal angezeigt werden kann.
Definieren eines neuen Workflows
Um dieses Beispiel in cimERP anzulegen, definieren Sie zuerst einen neuen Workflow
Script des Workflows
Das Skript hat den folgenden Aufbau:
declare
mypythonscript = StringObject;
enddeclare
begin
mypythonscript.ConcatVarchar('import requests' + HC_NEWLINE);
mypythonscript.ConcatVarchar('import os' + HC_NEWLINE);
mypythonscript.ConcatVarchar(HC_NEWLINE);
mypythonscript.ConcatVarchar('targeturl = "http://www.cimdata-sw.de/files/Grafik/2016/Grafik_cimERP.jpg"' + HC_NEWLINE);
mypythonscript.ConcatVarchar('response = requests.get(targeturl)' + HC_NEWLINE);
mypythonscript.ConcatVarchar(HC_NEWLINE);
mypythonscript.ConcatVarchar('f = open("C:\\bild.jpg", "wb")' + HC_NEWLINE);
mypythonscript.ConcatVarchar('f.write(response.content)' + HC_NEWLINE);
mypythonscript.ConcatVarchar('f.close()' + HC_NEWLINE);
mypythonscript.ConcatVarchar(HC_NEWLINE);
mypythonscript.ConcatVarchar('os.system("C:\\bild.jpg")' + HC_NEWLINE);
callproc cdpr4_ExecutePython(pythonscript = mypythonscript);
end
Diesen Workflow können Sie jetzt z.B. als eigenen Menüpunkt in cimERP integrieren. Ein denkbarer Einsatzzweck ist, dass man über solch einen Menüpunkt bestimmte Ressourcen zur Verfügung stellt. Das Script selbst zeigt, dass das Python-Script in ein cimERP Script eingebettet wird. Dies hat den großen Vorteil, dass Sie keinerlei Python Installation auf dem Client bzw. Server benötigen, da cimERP einen eigenen Interpreter mitbringt.
