Offen Worker per CMD batch Datei starten

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
7.547
2.087
Berlin
So steht es in meinen privaten Notizen die ich verwende wenn ein Kunde spezielle Wünsche hat.
Wenn es nicht geht gib ein Zeichen dann starte ich den Rechner.
 

Fkn

Aktives Mitglied
17. Februar 2020
6
6
Hi Community,
ich melde mich mal mit meinem ersten Post:

Ich habe mir mal Gedanken zum Thema JTL- Worker gemacht. Leider ist das nicht noch nicht Server-Always-On Ready. Leider ist auch das ansprechen und Informationen zu bekommen seeehr spärlich bis gar nicht vorhanden.
Also habe ich mich mal daran gemacht ein Powershellskript darum zu bauen.


Code:
#******************#
#  Dominik Bucher  #
#    JTL Worker    #
#    28.07.2020    #
#******************#

$StartWorkerFile       = "..\JTL_Worker.bat" #Add the right file path
$EmailFrom             = "" #Add the right sender email address
$EmailTo               = "" #Add the right reciever email address
$Body                  = "JTL Worker is not Running. Please Check it"
$EmailSubject          = "Error with JTL Worker"
$EmailUser             = "" #Add the right User
$EmailPW               = "" #Add the right Password
$EmailPW               = $EmailPW | ConvertTo-SecureString -AsPlainText -Force
$EmailCred             = New-Object System.Management.Automation.PSCredential($EmailUser, $EmailPW)
$PSEmailServer         = "" #Add the right SMTP relay server
$TryToStartProcess     = 0

try
{
    do
    {
        $TimerToRestartProcess++
        $JTLProcess = Get-Process | where{$_.Name -eq "JTL-Wawi"}
        if(!($JTLProcess -eq "" -or $JTLProcess -eq $null) -and $TimerToRestartProcess -eq "60")
        {
            Stop-Process -Name $JTLProcess.Name
        }
        if($JTLProcess -eq "" -or $JTLProcess -eq $null -or $TimerToRestartProcess -eq "60")
        {
            $TimerToRestartProcess = 0;
            Start-Process  $StartWorkerFile
            $TryToStartProcess++
        }
        else
        {
            $TryToStartProcess = 0;
        }
        if($TryToStartProcess -gt 3)
        {
            exit
        }
        sleep 120
    }while($true)
}
catch
{
    Write-Host "error"
}
finally
{
    if($TryToStartProcess -gt 3)
    {
        Send-MailMessage -to $EmailTo -from $EmailFrom -Subject "Try to start Worker" -body "Tried to start the Worker a Third time in a row without success - Please Check it"  -Credential $EmailCred -SmtpServer $PSEmailServer -Port 587 -UseSsl
    }else
    {
        Send-MailMessage -to $EmailTo -from $EmailFrom -Subject $EmailSubject -body $body -Credential $EmailCred -SmtpServer $PSEmailServer -Port 587 -UseSsl
    }
}


Die Datei
Code:
$StartWorkerFile       = "..\JTL_Worker.bat"
schaut aus wie in den ersten Kommentare:
Bash:
@echo off
Start "" "C:\Program Files (x86)\JTL-Software\JTL-wawi.exe" WORKER <Profile> <Username> <Password>

Gefüllt mit Standardparamter schaut das dann so aus:
Bash:
@echo off
Start "" "C:\Program Files (x86)\JTL-Software\JTL-wawi.exe" WORKER Standard Worker_User <Password>

Kurze Beschreibung zum .ps1 Skript:
Am Anfang werden grundsetzliche Variabeln definiert.
Danach baut ein Try-Catch-Finally eine Absicherung, um bei einem Skriptfehler oder Prozessfehler ein versenden der E-Mail zu garantieren.
Die Do-While Schleife stellt sicher, dass der Process immer ausgeführt wird. Darin wird ein Counter ( $TimerToRestartProcess++) hochgezählt um einen Neustart des Workers alle 2h durchzuführen. Hierbei versuchen wir einen Fehler zu eliminieren, welcher das Programm zum beenden zwingt aber den Windows Prozess nicht auflöst.
Mit der Variable $TryToStartProcess wird geprüft, sollte der JTL Worker nicht starten (aus Unbekannten Gründen), so wird der Neustart/Start des Workers nach 3 Versuchen abgebrochen und eine E-Mail für den manuellen Eingriff versendet.
Damit das System nicht dauerhaft prüft, wurde ein
Code:
sleep
eingebaut. Dieser Wert ist bei 120 Sekunden und kann angepasst werden. Wichtig dabei ist die Anpassung der
Code:
$TimerToRestartProcess
Variable, da diese Inverbindung der Laufzeit steht.

Ich hoffe, ich habe hier ein paar Personen geholfen und bei Verbesserungsvorshläge nicht sparen :)
Grüße
 

DerDima

Aktives Mitglied
29. April 2016
64
5
Bielefeld
AW: Worker per CMD batch Datei starten

anbei mal mein Batch

Code:
@ECHO OFF

color cf
mode con lines=13 cols=70

set /a b=%a%-1
set a=120

:loop
cls
set /a a=%a%-1

ECHO.
ECHO.
ECHO. ********************************************************************
ECHO. ***************************** ACHTUNG! *****************************
ECHO. ********************************************************************
ECHO.
ECHO.                JTL-Worker startet in %a% Sekunden!
ECHO.
ECHO. ********************************************************************
ECHO. ********************************************************************
ECHO. ********************************************************************
ECHO.

ping -n 2 127.0.0.1>nul
if %a%==0 goto finish
goto loop

:finish
START "" "C:\Program Files (x86)\JTL-Software\JTL-wawi.exe" WORKER wawiadmin wawiadminpasswort eazybusiness

ping -n 2 127.0.0.1>nul

EXIT


Hallo zusammen.

Stand heute mit der WaWi Version 1.5.33 funktioniert diese Batch Datei immer noch hervorragend. Ich habe einzig den Wert 120 durch 240 ersetzt - einfach, um der Kiste auch wirklich genug Zeit zu geben, alles zu laden.

Nun zu meiner Frage:

Wie habt ihr die Batch eingebunden? In den Autostart Ordner oder per Aufgabenplanung? Per Aufgabenplanung funktioniert bei mir irgendwie nicht. Aber ich muss zugeben, dass ich diese auch das erste Mal geöffnet hatte. Schien eigentlich alles selbsterklärend zu sein. Trotzdem klappt es nicht.

Dann habe ich eine Verknüpfung der Batch Datei per Ausführen der „shell:startup"-Methode in den Autostart Ordner kopiert und siehe da, es klappt wunderbar.

Gibt es hier Nachteile? Oder besser gefragt, welche Vorteile hat die Aufgabenplanung gegenüber der Autostart-Ordner Methode?

Weiterhin suche ich nach einer Möglichkeit, das System alle paar Minuten oder einmal die Stunde prüfen zu lassen, ob der Worker auch wirklich läuft und falls nicht, diesen dann zu starten. Wie könnte man das hinbekommen?
 

Astwert

Aktives Mitglied
21. November 2020
29
3
Hi Community,
ich melde mich mal mit meinem ersten Post:

Ich habe mir mal Gedanken zum Thema JTL- Worker gemacht. Leider ist das nicht noch nicht Server-Always-On Ready. Leider ist auch das ansprechen und Informationen zu bekommen seeehr spärlich bis gar nicht vorhanden.
Also habe ich mich mal daran gemacht ein Powershellskript darum zu bauen.


Code:
#******************#
#  Dominik Bucher  #
#    JTL Worker    #
#    28.07.2020    #
#******************#

$StartWorkerFile       = "..\JTL_Worker.bat" #Add the right file path
$EmailFrom             = "" #Add the right sender email address
$EmailTo               = "" #Add the right reciever email address
$Body                  = "JTL Worker is not Running. Please Check it"
$EmailSubject          = "Error with JTL Worker"
$EmailUser             = "" #Add the right User
$EmailPW               = "" #Add the right Password
$EmailPW               = $EmailPW | ConvertTo-SecureString -AsPlainText -Force
$EmailCred             = New-Object System.Management.Automation.PSCredential($EmailUser, $EmailPW)
$PSEmailServer         = "" #Add the right SMTP relay server
$TryToStartProcess     = 0

try
{
    do
    {
        $TimerToRestartProcess++
        $JTLProcess = Get-Process | where{$_.Name -eq "JTL-Wawi"}
        if(!($JTLProcess -eq "" -or $JTLProcess -eq $null) -and $TimerToRestartProcess -eq "60")
        {
            Stop-Process -Name $JTLProcess.Name
        }
        if($JTLProcess -eq "" -or $JTLProcess -eq $null -or $TimerToRestartProcess -eq "60")
        {
            $TimerToRestartProcess = 0;
            Start-Process  $StartWorkerFile
            $TryToStartProcess++
        }
        else
        {
            $TryToStartProcess = 0;
        }
        if($TryToStartProcess -gt 3)
        {
            exit
        }
        sleep 120
    }while($true)
}
catch
{
    Write-Host "error"
}
finally
{
    if($TryToStartProcess -gt 3)
    {
        Send-MailMessage -to $EmailTo -from $EmailFrom -Subject "Try to start Worker" -body "Tried to start the Worker a Third time in a row without success - Please Check it"  -Credential $EmailCred -SmtpServer $PSEmailServer -Port 587 -UseSsl
    }else
    {
        Send-MailMessage -to $EmailTo -from $EmailFrom -Subject $EmailSubject -body $body -Credential $EmailCred -SmtpServer $PSEmailServer -Port 587 -UseSsl
    }
}


Die Datei
Code:
$StartWorkerFile       = "..\JTL_Worker.bat"
schaut aus wie in den ersten Kommentare:
Bash:
@echo off
Start "" "C:\Program Files (x86)\JTL-Software\JTL-wawi.exe" WORKER <Profile> <Username> <Password>

Gefüllt mit Standardparamter schaut das dann so aus:
Bash:
@echo off
Start "" "C:\Program Files (x86)\JTL-Software\JTL-wawi.exe" WORKER Standard Worker_User <Password>

Kurze Beschreibung zum .ps1 Skript:
Am Anfang werden grundsetzliche Variabeln definiert.
Danach baut ein Try-Catch-Finally eine Absicherung, um bei einem Skriptfehler oder Prozessfehler ein versenden der E-Mail zu garantieren.
Die Do-While Schleife stellt sicher, dass der Process immer ausgeführt wird. Darin wird ein Counter ( $TimerToRestartProcess++) hochgezählt um einen Neustart des Workers alle 2h durchzuführen. Hierbei versuchen wir einen Fehler zu eliminieren, welcher das Programm zum beenden zwingt aber den Windows Prozess nicht auflöst.
Mit der Variable $TryToStartProcess wird geprüft, sollte der JTL Worker nicht starten (aus Unbekannten Gründen), so wird der Neustart/Start des Workers nach 3 Versuchen abgebrochen und eine E-Mail für den manuellen Eingriff versendet.
Damit das System nicht dauerhaft prüft, wurde ein
Code:
sleep
eingebaut. Dieser Wert ist bei 120 Sekunden und kann angepasst werden. Wichtig dabei ist die Anpassung der
Code:
$TimerToRestartProcess
Variable, da diese Inverbindung der Laufzeit steht.

Ich hoffe, ich habe hier ein paar Personen geholfen und bei Verbesserungsvorshläge nicht sparen :)
Grüße
Hallo Fkn.

Das klingt sehr vielversprechend.
Es wäre sehr hilfreich, wenn du noch 3 Zeilen ergänzen könntest, wie man das ganze "installiert".

Vielen Dank für deine Mühen.

André
 

timboatdibea

Aktives Mitglied
15. März 2023
5
1
Hallo zusammen,

gibt es statt dem " WORKER" Parameter, einen Parameter um den Worker 2.0 zu starten/anzusprechen?
Ich hatte vor nen Windows Dienst zu programmieren der immer wieder schaut ob unser Worker abgestürtz ist um diesen neuzustarten.

Wir benutzen momentan die 1.6.47.2.

Danke und VG
Tim
 
Zuletzt bearbeitet:

WProdukte

Aktives Mitglied
15. August 2022
9
13
@timboatdibea

Wir haben die 1.7.10 und ca. das umgesetzt, was du vorhast.
Der Worker ist bei uns als Dienst eingerichtet und startet mit dem Systemstart. Zur Sicherheit prüfen wir per Aufgabenplanung alle 60 min den Status und lassen ihn ggf. neustarten und uns bei Fehlern eine Mail senden.
Du erhält eine Mail wenn der Neustart geklappt hat, oder wenn er fehlschlägt.
Wenn der Worker läuft bekommst du keine Mail (wenn gewünscht unten "rem" entfernen).

Für die Mail brauchst du zusätzlich mailsend1.19.exe (in System32 packen, Pfad kann aber auch angepasst werden).
Wir nutzen Mailsend da es auch mit TLS 1.2 funktioniert (Mindestanforderung bei Ionos).

Die Pfade und Mail Einstellungen müssen entsprechend angepasst werden. Ebenfalls der Name des Dienstes falls er abweicht (s. Taskmanager).
Da das Mail Passwort im Klartext ist, sollte eine eigene Mail hierfür mit individuellem Passwort erstellt werden.
Meistens sind die Pfade nur für die Log Dateien. Aktuell gibt es nur ein Log Eintrag bei Fehlern. Wenn der Worker läuft passiert nichts. Kann aber alles angepasst werden (s. oben)
Wichtig: Die.bat muss lokal auf dem Server/Pc (C:) liegen, da sonst die Rechte fehlen. Ist die Datei z.B. in der Google Drive gespeichert, funktioniert das nicht mehr.

.bat
Code:
@echo on
set "ServiceName=JTL-Worker"
set "LogFile=C:\Users\admin\Documents\Worker-Status\Worker-Status_Log.txt"

rem Mailsend Configuration
set SMTP_SERVER=smtp.domain.de
set SMTP_PORT=587
set SMTP_USERNAME=absender@domain.de
set SMTP_PASSWORD=PASSWORT
set EMAIL_FROM=absender@domain.de
set EMAIL_TO=empfänger@domain.de

rem Vollständiger Pfad zur mailsend1.19.exe-Datei
set MAILSEND_PATH=C:\Windows\System32\mailsend1.19.exe

rem Enable delayed expansion
setlocal enabledelayedexpansion

sc query "%ServiceName%" | find "RUNNING" >nul
if !errorlevel! neq 0 (
    echo !DATE! !TIME! - Der Dienst ist gestoppt. Starte den Dienst neu... >> "!LogFile!"
    net start "!ServiceName!"
    
    rem Überprüfen Sie, ob der Startvorgang erfolgreich war
    sc query "!ServiceName!" | find "RUNNING" >nul
    if !errorlevel! equ 0 (
        set EMAIL_SUBJECT=!ServiceName! wurde erfolgreich neu gestartet
        set EMAIL_BODY=!ServiceName! war offline und wurde erfolgreich neu gestartet am !DATE! um !TIME! Uhr.
        !MAILSEND_PATH! -f !EMAIL_FROM! -t !EMAIL_TO! -sub "!EMAIL_SUBJECT!" -smtp !SMTP_SERVER! -port !SMTP_PORT! -auth -user !SMTP_USERNAME! -pass !SMTP_PASSWORD! -starttls -M "!EMAIL_BODY!" > "C:\Users\admin\Documents\Worker-Status\service_status.log" 2>&1
    ) else (
        echo !DATE! !TIME! - Fehler beim Starten des Dienstes! >> "!LogFile!"
    set EMAIL_SUBJECT=WICHTIG !ServiceName! Fehler beim Starten
        set EMAIL_BODY=!ServiceName! ist offline und konnte nicht neu gestartet werden am !DATE! um !TIME! Uhr.
        !MAILSEND_PATH! -f !EMAIL_FROM! -t !EMAIL_TO! -sub "!EMAIL_SUBJECT!" -smtp !SMTP_SERVER! -port !SMTP_PORT! -auth -user !SMTP_USERNAME! -pass !SMTP_PASSWORD! -starttls -M "!EMAIL_BODY!" > "C:\Users\admin\Documents\Worker-Status\service_status.log" 2>&1
        )
) else (
    rem echo !DATE! !TIME! - Der Dienst läuft. >> "!LogFile!"
    rem set EMAIL_SUBJECT=!ServiceName! läuft
    rem set EMAIL_BODY=!ServiceName! läuft am !DATE! um !TIME! Uhr.
    rem !MAILSEND_PATH! -f !EMAIL_FROM! -t !EMAIL_TO! -sub "!EMAIL_SUBJECT!" -smtp !SMTP_SERVER! -port !SMTP_PORT! -auth -user !SMTP_USERNAME! -pass !SMTP_PASSWORD! -starttls -M "!EMAIL_BODY!" > "C:\Users\admin\Documents\Worker-Status\service_status.log" 2>&1
)

rem End delayed expansion
endlocal

Hier die Einstellungen für die Aufgabenplanung:
Screenshot 2023-12-06 192933.jpgScreenshot 2023-12-06 193105.jpgScreenshot 2023-12-06 193149.jpg

Alle weiteren Einstellungen so setzen, wie ihr sie braucht.
Vermutlich geht das alles auch leichter, erfüllt aber seinen Zweck (ChatGPT sei Dank). :D
 
  • Gefällt mir
Reaktionen: timboatdibea

timboatdibea

Aktives Mitglied
15. März 2023
5
1
@timboatdibea

Wir haben die 1.7.10 und ca. das umgesetzt, was du vorhast.
Der Worker ist bei uns als Dienst eingerichtet und startet mit dem Systemstart. Zur Sicherheit prüfen wir per Aufgabenplanung alle 60 min den Status und lassen ihn ggf. neustarten und uns bei Fehlern eine Mail senden.
Du erhält eine Mail wenn der Neustart geklappt hat, oder wenn er fehlschlägt.
Wenn der Worker läuft bekommst du keine Mail (wenn gewünscht unten "rem" entfernen).

Für die Mail brauchst du zusätzlich mailsend1.19.exe (in System32 packen, Pfad kann aber auch angepasst werden).
Wir nutzen Mailsend da es auch mit TLS 1.2 funktioniert (Mindestanforderung bei Ionos).

Die Pfade und Mail Einstellungen müssen entsprechend angepasst werden. Ebenfalls der Name des Dienstes falls er abweicht (s. Taskmanager).
Da das Mail Passwort im Klartext ist, sollte eine eigene Mail hierfür mit individuellem Passwort erstellt werden.
Meistens sind die Pfade nur für die Log Dateien. Aktuell gibt es nur ein Log Eintrag bei Fehlern. Wenn der Worker läuft passiert nichts. Kann aber alles angepasst werden (s. oben)
Wichtig: Die.bat muss lokal auf dem Server/Pc (C:) liegen, da sonst die Rechte fehlen. Ist die Datei z.B. in der Google Drive gespeichert, funktioniert das nicht mehr.

.bat
Code:
@echo on
set "ServiceName=JTL-Worker"
set "LogFile=C:\Users\admin\Documents\Worker-Status\Worker-Status_Log.txt"

rem Mailsend Configuration
set SMTP_SERVER=smtp.domain.de
set SMTP_PORT=587
set SMTP_USERNAME=absender@domain.de
set SMTP_PASSWORD=PASSWORT
set EMAIL_FROM=absender@domain.de
set EMAIL_TO=empfänger@domain.de

rem Vollständiger Pfad zur mailsend1.19.exe-Datei
set MAILSEND_PATH=C:\Windows\System32\mailsend1.19.exe

rem Enable delayed expansion
setlocal enabledelayedexpansion

sc query "%ServiceName%" | find "RUNNING" >nul
if !errorlevel! neq 0 (
    echo !DATE! !TIME! - Der Dienst ist gestoppt. Starte den Dienst neu... >> "!LogFile!"
    net start "!ServiceName!"
   
    rem Überprüfen Sie, ob der Startvorgang erfolgreich war
    sc query "!ServiceName!" | find "RUNNING" >nul
    if !errorlevel! equ 0 (
        set EMAIL_SUBJECT=!ServiceName! wurde erfolgreich neu gestartet
        set EMAIL_BODY=!ServiceName! war offline und wurde erfolgreich neu gestartet am !DATE! um !TIME! Uhr.
        !MAILSEND_PATH! -f !EMAIL_FROM! -t !EMAIL_TO! -sub "!EMAIL_SUBJECT!" -smtp !SMTP_SERVER! -port !SMTP_PORT! -auth -user !SMTP_USERNAME! -pass !SMTP_PASSWORD! -starttls -M "!EMAIL_BODY!" > "C:\Users\admin\Documents\Worker-Status\service_status.log" 2>&1
    ) else (
        echo !DATE! !TIME! - Fehler beim Starten des Dienstes! >> "!LogFile!"
    set EMAIL_SUBJECT=WICHTIG !ServiceName! Fehler beim Starten
        set EMAIL_BODY=!ServiceName! ist offline und konnte nicht neu gestartet werden am !DATE! um !TIME! Uhr.
        !MAILSEND_PATH! -f !EMAIL_FROM! -t !EMAIL_TO! -sub "!EMAIL_SUBJECT!" -smtp !SMTP_SERVER! -port !SMTP_PORT! -auth -user !SMTP_USERNAME! -pass !SMTP_PASSWORD! -starttls -M "!EMAIL_BODY!" > "C:\Users\admin\Documents\Worker-Status\service_status.log" 2>&1
        )
) else (
    rem echo !DATE! !TIME! - Der Dienst läuft. >> "!LogFile!"
    rem set EMAIL_SUBJECT=!ServiceName! läuft
    rem set EMAIL_BODY=!ServiceName! läuft am !DATE! um !TIME! Uhr.
    rem !MAILSEND_PATH! -f !EMAIL_FROM! -t !EMAIL_TO! -sub "!EMAIL_SUBJECT!" -smtp !SMTP_SERVER! -port !SMTP_PORT! -auth -user !SMTP_USERNAME! -pass !SMTP_PASSWORD! -starttls -M "!EMAIL_BODY!" > "C:\Users\admin\Documents\Worker-Status\service_status.log" 2>&1
)

rem End delayed expansion
endlocal

Hier die Einstellungen für die Aufgabenplanung:
Den Anhang 103924 betrachtenDen Anhang 103927 betrachtenDen Anhang 103930 betrachten

Alle weiteren Einstellungen so setzen, wie ihr sie braucht.
Vermutlich geht das alles auch leichter, erfüllt aber seinen Zweck (ChatGPT sei Dank). :D


Hey @WProdukte ,

vielen Dank für diese charmante lösung, die werde ich bei uns auch mal umsetzen ;)

Doch ich hoffe, dass sich noch jemand melden kann zum Thema Worker 2.0 und Parameter etc.
Ich würde es am liebsten vollautomatisch lösen wollen 😅
 
Ähnliche Themen
Titel Forum Antworten Datum
Frage zu 1.10.x (Worker Timeout behoben? SCX Marktplätze parallel?) JTL-Wawi 1.10 5
Neu JTL-Connector (Drittanbieter) - Kein product.push (oder andere Artikel Updates) über Worker User helfen Usern - Fragen zu JTL-Wawi 0
Neu Connector Shop Abgleich nicht im JTL Worker Allgemeines zu den JTL-Connectoren 2
Fehler beim Abgleich mit Shopify – „Unknown column 'sort'“ & Bildlöschung blockiert Worker Shopify-Connector 1
Worker und PC mit Microsoft-Account JTL-Wawi 1.9 3
Neu Track&Trace Abgleich funktioniert nicht mit Worker als Dienst? JTL-Track&Trace - Fehler und Bugs 0
Ebayabgleich Worker 2.0 Datenblock begrenzen JTL-Wawi 1.9 3
Neu JTL Worker Fehler - Amazon Abgleich soll nicht durchgeführt werden Amazon-Anbindung - Fehler und Bugs 18
JTL Connector zu Woocommerce lädt nicht, Worker zeigt Tausende Prozent Fortschritt an... JTL-Wawi 1.9 1
Neu Import von Angeboten per Ameise möglich? JTL-Ameise - Ideen, Lob und Kritik 0
Neu Artikelübersicht: JTL-Shop lädt per AJAX gesamte Html-Seite in das Filter-Modal JTL-Shop - Fehler und Bugs 0
Artikel mehreren Kategorien per Ameise zuordnen JTL-Wawi 1.9 3
In Diskussion Rechnungskorrekturen per SQL Vorgangsstatus setzen JTL-Workflows - Ideen, Lob und Kritik 1
Neu Nach Update auf 1.9.8.0 kein Bilderabgleich per JTL-Connector mehr möglich Shopify-Connector 20
Zahlungslinks & Rechnungen per Mollie API? JTL-Wawi 1.9 0
Neu Waren per Scanner einlagern Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
Neu Bedienbarkeit von JTL-Wawi per Screenreader NVDA/JAWS JTL-Wawi - Ideen, Lob und Kritik 1
Anhänge bei zb. Auftrag per Email versenden | Workflow JTL-Wawi 1.9 5
Neu Expressbearbeitung (unter Zusatzverpackung) in der WaWi per Workflow abfangen Allgemeine Fragen zu JTL-Shop 2
Neu Auftragsview per Ameise oder SQL in CSV exportieren User helfen Usern - Fragen zu JTL-Wawi 13
Neu Rückzahlung per Zettle nicht möglich?! Allgemeine Fragen zu JTL-POS 0
Neu Bild-URL per Workflow aus eigene Felder zuordnen – Geht das? User helfen Usern - Fragen zu JTL-Wawi 5
Gelöst Datei per Workflow verschieben JTL-Workflows - Ideen, Lob und Kritik 8
Neu Einem Kunden eine Rechnung mit individuellem Betreff per E-Mail zusenden User helfen Usern - Fragen zu JTL-Wawi 2
Neu Bon automatisch per Mail Allgemeine Fragen zu JTL-POS 0
Neu CSV per FTP vom Lieferanten JTL Shop Hosting Schnittstellen Import / Export 3
Neu PDF Datei automatisch herunterladen und per E-Mail versenden Arbeitsabläufe in JTL-Wawi 1
In Diskussion Wie lässt sich ein Freiposition im Auftrag per Workflow löschen? JTL-Workflows - Fehler und Bugs 4
Neu Lieferschein per Workflow o.ä. von "offen" auf "Versendet" setzen bei bestimmter Versandart User helfen Usern - Fragen zu JTL-Wawi 8
Neu Hersteller per Ameise löschen User helfen Usern - Fragen zu JTL-Wawi 3
In Diskussion Versandbestätigung per Workflow versenden JTL-Workflows - Fehler und Bugs 1
Neu Ameise 1.9.7.0 CMD sehr langsam wegen Telemetrie Funktion ?!? JTL-Ameise - Fehler und Bugs 10

Ähnliche Themen