Gelöst cmd.exe aus Workflow ausführen funktioniert nicht

biotraxx

Aktives Mitglied
29. Juli 2012
31
4
Wawi 1.2.3.7

Grüezi,

Obwohl ich die Wawi unter Windows 8.1 als Administrator ausführe und mich in die Wawi als "admin" einlogge, wird in meinem Test-Worklow (keine Bedingung und nur eine Aktion) die unter "Ausführen" angegebene cmd.exe nicht ausgeführt? Natürlich möchte ich letztendlich eine eigene exe oder.bat aufrufen aber wenn cmd.exe schon nicht funktioniert:

Unter " Workflow testen" > "Workflow ausführen" (nicht simulieren!) wird zwar "Aktion wird ausgeführt: cmd.exe"
angezeigt aber es wird keine Shell geöffnet?

Frank
 

biotraxx

Aktives Mitglied
29. Juli 2012
31
4
Stimmt - heisst das jetzt, dass nur eine GUI-exe (mit Message-Loop) aus einem Workflow aufrufbar ist und auch keine bat?
 

biotraxx

Aktives Mitglied
29. Juli 2012
31
4
Da bei meiner Test-Batch "t.bat" leider auch keine Shell zur besseren visuellen Kontrolle aufgemacht wird, schreibe ich jetzt in eine Datei:

@echo Auftrag %1> test.txt

Die Kommandozeile ist eingeschaltet und als einziger Parameter {{ Vorgang.Stammdaten.Auftragsnummer }} eingetragen. Die Datei test.txt wird zwar angelegt aber die Variable wird nicht aufgelöst an die bat übergeben (%1), obwohl der Auftrags- Workflow für Auftrag 3 gestartet wurde?
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
402
Hallo @biotraxx,

das Problem ist hier nicht, dass die Variable nicht übergeben wird, sondern dass Du die Text-Datei in Deiner Batch-Datei ohne explizite Pfadangabe erzeugst. Wenn Du mal spaßeshalber Deine Mini-Batch Datei wie folgt abänderst ...
Code:
@echo Das aktuelle Verzeichnis liegt in %CD% > %temp%\WorkflowTest.txt
@echo Das Temp-Verzeichnis liegt in %temp% >> %temp%\WorkflowTest.txt
@echo Auftrag %1 >> %temp%\WorkflowTest.txt
... dann kommt dabei in der Datei WorkflowTest.txt im Verzeichnis %temp% etwas raus, wie ...
Code:
Das aktuelle Verzeichnis liegt in C:\Program Files (x86)\JTL-WAWI_BETA
Das Temp-Verzeichnis liegt in C:\Users\GUTBER~1\AppData\Local\Temp
Auftrag AB17041282
... und wichtig ist die erste Zeile. Wenn Du nämlich keinen expliziten Pfad angibst, nimmt die Wawi das aktuelle "working dir" und das ist das Programmverzeichnis der Wawi selbst. Tja, und da darst Du nicht hinschreiben.

Fazit: Du mußt also einfach nur sicherstellen, das Du explizit angibst, wo hingeschrieben werden soll und dass Du dort auch die entsprechenden Rechte hast.

@Thomas Lisson - Ich finde nichts in der Doku über die Option "Kommandozeile benutzen". Die hat hier zwar offenbar keinen Einfluß, aber was macht die?

Gruß,
Ingmar
 

biotraxx

Aktives Mitglied
29. Juli 2012
31
4
Danke Ingmar!

1. Leider ist das nicht richtig, zumindest wenn man wie ich bei Ausführungsverzeichnis die Option "Wie Programm/Skript" ausgewählt hat.

2. Das Häkchen bei "Kommandozeile benutzen" ist wichtig, sonst wird gar kein Parameter ("Argument" wäre die glücklichere Beschriftung) übergeben.

3. Wenn ich bei "Parameter" ein statisches Argument angebe wie "abc" oder "3" (jeweils ohne Anführungszeichen), wird das in der bat über %1 richtig aufgenommen.

Mein Problem reduziert sich also auf die nicht ausgeführte Variablenauflösung von {{ Vorgang.Stammdaten.Auftragsnummer }} als Parameter vor dem Aufruf der bat, obwohl der Auftrags- Workflow für Auftrag 3 gestartet wurde?

Gruss

Frank
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
402
Hallo Frank,

1. Mit der Option "Wie Programm/Skript" funktioniert bei mir kein einziger Workflow und ich kann nicht mal mit Tricks wie einer MsgBox-Batch arbeiten, die die Pfade intern auswertet und anzeigt, weil dann nicht einmal die *.bat selbst aufgerufen wird. Ich kann also nicht sagen, welcher Pfad hier konkret gesetzt wird. Bei "Nicht ändern"" ist es aber der Wawi Programmpfad und die Option "Verzeichnis festlegen" tut das, was der Name sagt und funktioniert einwandfrei.
>> Vielleicht versuchst Du es mal mit der Option "Verzeichnis festlegen"?

2. Kommandozeile benutzen ist für die Parameterübergabe NICHT wichtig, Benutze ich nie, funktioniert trotzdem, deshalb ja auch meine Frage an @Thomas Lisson.

3. Kann ich nicht nachvollziehen, funktionert einwandfrei und immer, auch mit komplexen Funktionen, also zum Beispiel SQL DirectQueries.
>> Das kann ich nun überhaupt nicht nachvollziehen. Vielleicht kannst Du mal einen Screenshot hochladen, der zeigt, welche Optionen du wie und wo benutzt?

Nachtrag: Ich habe gerade in Deinem Initial-Post gesehen, dass Du erwartest, dass eine CMD Shell geöffnet wird. Das passiert nicht und das ist auch nicht ohne weiteres möglich, denn der zugehörige Prozess würde von der Wawi gespawned werden und würde die Wawi blockieren, bis die Shell geschlossen wird, etc. - Grundsätzlich bin ich mir aber noch nicht einmal sicher, ob das aus der Wawi heraus mit einem einfachen Aufruf aus einem Workflow heraus gehen würde. Die Option /k zum Beispiel erzeugt dann zwar eine Ausgabe-Datei (sofern gewünscht), die sich aber nicht löschen läßt, weil sie von einem gar nicht mehr laufenden cmd Prozess blockiert wird. Erst wenn die Wawi selbst geschlossen wird, wird die Datei freigegeben. Ich habe Zweifel... o_O

Gruß,
Ingmar
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: biotraxx

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
402
Das ist alles korrekt so, bis auf das Ausführungsverzeichnis, bei dem Du mit "Wie Programm/Skript" kein Glück haben wirst. Ist schon klar, dass ~ wenn ~ diese Option funktionieren würde, sie wohl das Arbeitsverzeichnis auf "C:\Users\Frank\Downloads\" setzen sollte, das tut sie aber anscheinend nicht und der Workflow wird auch nicht (korrekt) ausgeführt. Wenn Du mich fragst, ist das ein Bug!

Setz das Verzeichnis doch bitte mal auf einen Wert, von dem wir wissen, dass er funktioniert, also statt "Wie Programm/Skript" die Option "Verzeichnis festlegen" auswählen, als Verzeichnis "C:\Users\Frank\Downloads\" auswählen und noch einmal probieren.

Dass der Parameter unter "Parameter:" und auch im Log unter "Aktion" nicht aufgelöst wird, ist völlig normal und ja, den Parameter "Kommandozeile benutzen" braucht es nicht.

Ich habe Dir auch eine MsgBox.bat angehängt, mit der Du die Parameterübergabe viel einfacher prüfen kannst. Kopier die nach "C:\Users\Frank\Downloads\" und ändere Deine Zeile "Programm/Skript" ab, so dass statt "t.bat" nun "MsgBox.bat" aufgerufen wird. Beim Testen des Workflow würde die MsgBox dann den Übergabeparameter zeigen und nach Klick auf Ok ist der Spuk vorbei. So sparst Du hier ewiges hin- und hergucken.
 

Anhänge

  • MsgBox.zip
    215 Bytes · Aufrufe: 84
  • Gefällt mir
Reaktionen: Gual61 und biotraxx

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
402
Gern geschehen. - Schließen können wir "normal Sterbliche" nicht, aber "zustimmen" kannst Du über den "Gefällt mir" Link/Label rechts unter den jeweiligen Beiträgen ... :)
 
Ähnliche Themen
Titel Forum Antworten Datum
Sonderpreise werden vom Shop aus Wawi nicht übernommen JTL-Wawi 1.10 0
Neu Gutschein löst mehrere Lagerbuchungen aus JTL-POS - Fehler und Bugs 0
Neu _1 aus dem Titel einer Kategorie entfernen Betrieb / Pflege von JTL-Shop 0
JTL 1.11 aus Downloads und Supportseite verschwunden / ZugFerd Ausgabe geändert? JTL-Wawi 1.11 2
OnePageComposer - diverse HTML-Tags werden aus Richtext automatisch gelöscht Einrichtung JTL-Shop5 4
Neu Heute wied kein Versand bei Amazon bestätigt und manueller Abgleich gibt Fehlermeldung aus Amazon-Anbindung - Fehler und Bugs 1
Neu Wie kommen die Versandarten aus JTL-Wawi in den JTL-Shop? Betrieb / Pflege von JTL-Shop 7
Neu Artikeletiketten aus einem Aftrag heraus druckbar machen JTL-Wawi - Ideen, Lob und Kritik 1
Produkt-API v4 Support bei OTTO läuft aus (10.12.2025) – Zukunft mit JTL Wawi unklar Otto.de - Anbindung (SCX) 25
Neu (Bank-)Rückzahlungen aus der Wawi heraus nicht mehr möglich JTL-Wawi - Fehler und Bugs 2
Neu KI-WaWi-Workflows: Eigene KI-Endpunkte direkt aus JTL-Workflows ansprechen – ohne Plugin, flexibel und schnell Dienstleistung, Jobs und Ähnliches 3
Neu Verkäufe aus LS-Pos werden nicht mehr in der Wawi angezeigt Fragen rund um LS-POS 2
Neu Blog Kategorie nicht erstelbbar "Bitte füllen Sie alle Pflichtfelder korrekt aus." JTL-Shop - Fehler und Bugs 4
Neu Artikel lassen sich nicht aus Shopify Store löschen Shopify-Connector 4
Neu Bei allen Artikeln aus einer Execlliste die Lieferzeiten einheitlich setzen. JTL-Wawi 1.6 4
Neu Aus JTL Wawi übernommene Aufträge in JTL POS ergänzen JTL-POS - Ideen, Lob und Kritik 0
Neu Automatische Datenübernahme aus Wawi-HTML in den Shop verhindern Hallo zusammen, Allgemeine Fragen zu JTL-Shop 3
Neu Shop 5 globale Variable die aus der Wawi gefüllt wird? Allgemeine Fragen zu JTL-Shop 0
Neu Import aus Billbee und Schnittstelle zu Strato Smartwebshop Schnittstellen Import / Export 4
Neu Frage: Artikelimport aus Amazonlisting von Drittanbietern User helfen Usern - Fragen zu JTL-Wawi 4
Neu Mittels Ameise Aufträge aus 2 einzelnen CSV Dateien erstellen Schnittstellen Import / Export 5
Neu Enorme Anfragen/Aufrufe vorw. aus Brasilien, Zugriffe auf Merkmalfilter Allgemeine Fragen zu JTL-Shop 4
Neu Portlet - Zugriff auf Settings aus dem Adminbereich Technische Fragen zu Plugins und Templates 0
kann man inzwischen aus der Wawi auf kaufland Varianten bilden, wenn ja, ab welcher Version? kaufland.de - Anbindung (SCX) 0
Buchhalterische Abwicklung von Gutscheinen aus Rechnungskorrekturen Allgemeine Fragen zu JTL-Vouchers 0
Neu Rechnungskorrektur direkt aus „Verkauf → Aufträge → Mit Rechnung“ möglich? Arbeitsabläufe in JTL-Wawi 2
Webinar: So sieht ein vollständiges E-Commerce-Steuersetup wirklich aus - mit SKULD & countX am 25.09.25 Messen, Stammtische und interessante Events 0
Neu Entfernung von Elementen aus dem Template Templates für JTL-Shop 1
Neu Bestellungen aus der Vergangenheit Shopify-Connector 3

Ähnliche Themen