Neu Versanddatenimport per JTLWawiExtern - Mail-Aktion in Workflow wird nicht ausgelöst

Oddn

Aktives Mitglied
8. Juli 2022
7
0
Mit Hilfe eines C# Programms und der JTLWawiExtern.dll importieren wir automatisiert Versanddaten ins JTL. Das funktioniert, Trackingnummern und Versanddatum werden den Lieferscheinen richtig zugeordnet und in den Hintergrundprozessen ist zu sehen, dass auch die Workflows, die unter "Lieferscheine - versendet" angelegt sind, ausgeführt werden, sobald die Versanddaten importiert werden.

Allerdings befindet sich in diesem Workflow auch eine Aktion "Ausgabe", mit der der Kunde die Rechnung per E-Mail erhält. Als Ausgabeobjekt ist eingestellt "Lieferscheine\Auftrag\Zahlungen\Letzte Rechnung\Ausgabeobjekt", Ausgabemodus: Mailen. Diese Aktion wird (laut Hintergrundprozess- Log) ausgeführt und der Workflow erfolgreich beendet. Allerdings wird die Mail nicht versendet.
Beim manuellen Import der Versanddaten unter "Versand" - "Versanddaten importieren" wird die Mail hingegen versendet und steht dann auch in der Kundenhistorie als "Rechnung 'RE12345' wurde per E-Mail an den Kunden gesendet".

Hat von euch jemand eine Idee, an was es liegen kann, dass die Mail nicht versendet wird?
 

zaxxo

Offizieller Servicepartner
SPBanner
29. November 2022
101
38
Michelstadt | Bensheim
Firma
Zaxxo UG (haftungsbeschränkt)
Das erklärt es. Die Problematik ist, dass der Prozess der Konsolenanwendung sofort nach Abschluss deines Programmcodes beendet wird. Das killt auch sämtliche Threads die noch von JTL laufen. Da das Mailen standardmäßig asynchron ausgeführt wird, läuft hier also ein Thread, der aber zu früh beendet wird. Du hast zwei offizielle Möglichkeiten:

1.) Du aktivierst im Workflow die Option "Auf Ausgabe warten" und stellst ein entsprechendes Timeout ein (ich mache immer 60.000 ms)

2.) Du machst am Ende deines Programms noch ein Thread.Sleep(60000)

Es gibt auch noch eine andere Möglichkeit, die deutlich besser funktioniert und der Prozess auf alle Threads wartet und sich dann auch sofort beendet, aber das ist sehr inoffiziell, weswegen ich das hier nicht öffentlich beschreiben will ;)
 

zaxxo

Offizieller Servicepartner
SPBanner
29. November 2022
101
38
Michelstadt | Bensheim
Firma
Zaxxo UG (haftungsbeschränkt)
Wobei ich dir zur ersten Möglichkeit rate. Das Sleep ist viel zu unsicher. Falls viele Workflows ausgeführt werden, kann es mal kürzer mal länger als dein Sleep dauern und dann hast du wieder die gleichen Probleme.
 

Oddn

Aktives Mitglied
8. Juli 2022
7
0
Das hat leider nichts gebracht. Die Versanddaten werden nach wie vor importiert, aber es erscheint folgende Meldung bei den Hintergrundprozessen: "Timeout bei Ausgabe callerMemberName: .ctor".
 

zaxxo

Offizieller Servicepartner
SPBanner
29. November 2022
101
38
Michelstadt | Bensheim
Firma
Zaxxo UG (haftungsbeschränkt)
Dann weiß ich es leider auch nicht. Kompilierst du dein Projekt im 32bit Modus? AnyCPU und 64bit macht manchmal Probleme mit der ExternDLL.
 

zaxxo

Offizieller Servicepartner
SPBanner
29. November 2022
101
38
Michelstadt | Bensheim
Firma
Zaxxo UG (haftungsbeschränkt)
Vielleicht kannst du mal zum Testen in den Workflow statt einer Ausgabe Aktion eine Mailen Aktion einfügen, und erstmal schauen, ob das funktioniert.
 

SMIT

Offizieller Servicepartner
SPBanner
4. November 2019
110
19
Verl
Firma
SMIT Digital Services
Hallo,
ich habe heute auch etwas rumgespielt, und das über einen HttpListener gemacht.
Ich meine damit, das die Versanddaten via POST an das c# Programm gesendet wird.
Dieses läuft als Dienst und wartet quasi nur auf Anfragen, und wird nie beendet.
Dann klappt das auch mit dem mailen ohne Sleep und co..

Edit: Ich sehe gerade das ich die Wokflows auch alle auf "Verzögert 1 min" habe. Vielleicht genügt das ja schon?

Grüße
 
Zuletzt bearbeitet:
Ähnliche Themen
Titel Forum Antworten Datum
Neu Rechnung per Email aus LS-Pos Fragen rund um LS-POS 0
Lieferantenbestellung mit GLS Versandetikett an den Hersteller/Lieferanten per Mail Senden. JTL-Wawi 1.8 0
Neu Mollie Zahlung per Kreditkarte (25% Fehlschlag) User helfen Usern - Fragen zu JTL-Wawi 1
Neu Per WMS Workflow API Call ausführen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
Neu Berichtscontainer per Formel sortieren Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Frage zur Kartonagen Verwaltung in JTL WMS 1.8 - Karton per Scan ersetzen? Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
Neu Ware direkt in ein Standardlager einbuchen per SQL StoreProcedure dbo.spWarenlagerEingangSchreiben Schnittstellen Import / Export 8
Rechnung per Mail - Anhang (Rechnung) wird nicht erzeugt. JTL-Wawi 1.9 2
In Diskussion Versand bei Selbstabholern per Worker setzen JTL-Workflows - Fehler und Bugs 3
Neu Per Plugin Felder für das Newsletter-Anmeldungs-Template hinzufügen Technische Fragen zu Plugins und Templates 2
Neu Bild per SQL Query aus lesen aus von Artikel Bildplattform Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Idee: Manuelle Workflows per Rechtsklick Gelöste Themen in diesem Bereich 4
Abgleich per Worker 2.0 UND manuell nicht mehr möglich JTL-Wawi 1.8 3
Neu Abfrage per Erweiterter Eigenschaft zu Lieferstatus aller Bestellungen eines Kunden User helfen Usern - Fragen zu JTL-Wawi 0
Rechnung per Mail versenden JTL-Wawi 1.9 2
Neu Barzahlung per POS generiert auf einmal "Geldtransit Barzahlung" JTL-POS - Fehler und Bugs 0
Neu JTL verschickt keinen Link zur Sendungsverfolgung per Mail Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Warenkorb in Euro per JavaScript ermitteln? Allgemeine Fragen zu JTL-Shop 1
Neu CustomWorkflow zum Setzen von einem Hinweis für Auftragspositionen (Wert aus Eigene Felder per Workflow) Dienstleistung, Jobs und Ähnliches 13
Neu CustomWorkflow zum SPERREN von Kunden (Auswahl eines Kunden/Auftrages/Rechnung per Workflow) Dienstleistung, Jobs und Ähnliches 0
Neu Preis auf Anfrage Button per CSS änderbar ? User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTLwawiExtern.dll Python Bindings Schnittstellen Import / Export 10

Ähnliche Themen