JobRouter Entwickler seit 8 Jahren ⦁ Geschäftsführer der DemandFlow GmbH ⦁ Xing: https://www.xing.com/profile/Andreas_Klein183/cv
demandflow.deAnsehen
Abzeichen 4
Editor Enthusiast 4 × Eureka! AnfängerGrundsätzlich muss die App mindestens die JobRouter API erreichen können. Darum kommt ihr nicht rum.
Anstatt den JobRouter ins Netz zu stellen könnt ihr die Handys ins lokale Netz bringen indem ihr ein VPN einrichtet. Dort buchen sich die mobilen Endgeräte ein. Dann könnt ihr den ganzen JobRouter oder zumindest nur die API aus dem VPN Netzsegment erreichbar machen.
Mich würde sehr interessieren wie ihr damit verbleibt.
Das sollte sich mit zwei SQL Listen in der Untertabellenansicht lösen lassen. Die SQL Liste in Spalte B referenziert die Liste in Spalte A.
Hierfür gibt es in der JobRouter Javascript API jr_subtable_refresh
um die SQL Liste in Abhängigkeit neu zu berechnen. Hier ist auch ein gutes Beispiel wie man die beiden Felder miteinander verknüpft.
Siehe hier
SQL-Aufbau
Die Inhalte der SQL-Elemente ergeben sich aus dem gespeicherten SQL. Hier kann auf vorhandene Felder der Prozesstabelle...
Das kann man so machen und ist auch keine schlechte Lösung.
Man muss natürlich aufpassen dass man beim Parametrisieren der SQL Query keine aus dem Frontend exploitbare SQL Injection baut (siehe Prepared Statements).
Ich finde hier den Roundtrip vom Browser ins Backend um eine Tabelle zu befüllen etwas unelegant. Alternativ dazu kann man eine Schrittinitialisierungsfunktion verwenden und die SQL Query auf dem Server beim öffnen des Schritts anstoßen.
Ohne genauere Details zu kennen wü...
Wow! Das ist meine neue Lieblingsfrage! Wie awsome!
int main() {
return 23;
}
Das kann nur über ein PHP Skript passieren, da nur der Server Zugriff auf das Upload Verzeichnis hat. Dafür gibt es in PHP die rename
Funktion. (Siehe hierzu die PHP Doku für rename).
Du kannst das beispielsweise in einer Ausführungsregel nach dem Schritt aufrufen.
Der JobRouter Webservice wird über SOAP angesprochen. Hierzu brauchen SIe einen SOAP Client den es als modul/paket in jeder Programmiersprache gibt. Hier ein Beispiel für PHP https://www.php.net/manual/de/class.soapclient.php
Hier gibt es zwei Probleme im Code:
- toDo ist keine Methode der Klasse className und vor allem auch keine
function
- toDo muss im Objektkontext aufgerufen werden
$this->toDo()
Ich empfehle einen ausgiebigen Blick in das PHP Manual zu Klassen und Objekten falls Sie mit den Konzepten noch nicht ganz vertraut sind: https://www.php.net/manual/de/language.oop5.php
Hi Timo,
die einfachste Lösung zum Ausführen einer Batch Datei ist wahrscheinlich die ShellExecute Systemaktivität die im Standard mitkommt. Damit kannst du ein beliebiges Programm auf dem Server ausführen und Parameter übergeben.
Alternativ wenn es eine Ausführungsregel sein muss kannst du auch das Tab Befehlszeile in der Ausführungsregel verwenden.
Meines Erachtens ist ShellExecute die sauberere Lösung, da du hier den Rückgabecode des Skript ordentlich verarbeiten kannst und s...
Die Übersetzungen werden im JobRouter als Translations XML in der Datenbank abgelegt. SQL Server bietet XML Funktionen mit denen sich das XML parsen und anfragen lässt. Die folgende Query verwendet hierzu XPath.
Der XML String in der Datenbank enthält ein falsches Encoding und lässt sich deshalb nicht als XML parsen. Das Encoding entfernen wir und können danach die Spalte als in einen XML Datentypen konvertieren. Hier unsere Query für das Dropdown.
SELECT DISTINCT
CAST(
REP...
Ein dynamisches filtern der Untertabellen ohne Scripting ist nicht möglich (mir ist kein Weg bekannt).
Wenn Scripting eine Option ist dann lässt sich eine Lösung mit DataTables (https://datatables.net/) implementieren. JobRouter bringt DataTables von Haus aus mit.
Wer sind wir?
Yellow Devs ist eine unabhängige professionelle Community von BPM Entwickler_innen.
Wir unterstützen uns gegenseitig in unserer täglichen Workflow Entwicklung. Dies ist ein technisches
Forum in dem wir Entwicklungs und Designfragen rund um die Workflow Entwicklung erörtern. Wir wollen
best practices für unsere Arbeit finden und voneinander lernen.
Wir wollen hier gemeinsam eine Ressource aufbauen in der wir auch noch in einigen Jahren uns weiterbilden
und recherchi...