JTL-Ameise CMD automatisieren: zeitgesteuerte Imports und Exporte | Vlarom

JTL-Ameise CMD automatisieren: So richtest du zeitgesteuerte Imports und Exporte ein

Viele Händler nutzen die JTL-Ameise täglich für Artikelimporte, Preisupdate-CSVs oder Bestandsexporte — aber sie machen das manuell. Jedes Mal dieselben Klicks, dieselbe Datei, dasselbe Warten. Die CMD-Line-Version der JTL-Ameise macht diesen Schritt überflüssig. Wer einmal eine Batch-Datei aufgesetzt und in den Windows-Aufgabenplaner eingehängt hat, läuft danach vollständig automatisch — ohne Zutun, ohne offene GUI, auch nachts und am Wochenende.

Du willst JTL-Ameise CMD automatisieren und weißt nicht, wo du anfangen sollst?

Diese Anleitung zeigt dir den vollständigen Weg: von den Parametern der CMD-Version bis zum fertigen Aufgabenplaner-Task — mit echten Befehls-Beispielen aus der Praxis.

Auf einen Blick

  • Die JTL-Ameise CMD-Version startet automatisch im Batch-Modus, sobald du mindestens einen Parameter übergibst — die grafische Oberfläche öffnet sich dann nicht mehr. Vlarom E-Commerce Agentur setzt das bei Lieferanten-Datenabgleichen und nächtlichen Preisexporten regelmäßig ein.
  • Pflicht-Parameter sind Datenbankverbindung (`-s`, `-d`, `-u`, `-p`), Vorlagen-ID (`-t`) und je nach Richtung entweder Eingabe- (`-i`) oder Ausgabedatei (`-o`). Alle weiteren Parameter wie `–loglevel` oder `–no_workflows` sind optional, aber für automatisierte Setups sinnvoll.
  • Mit dem Windows-Aufgabenplaner lässt sich jede Batch-Datei minutengenau oder täglich starten — vollständig unbeaufsichtigt. Unsere Erfahrung: wer das einmal eingerichtet hat, fragt sich warum er es nicht früher gemacht hat. Die Vlarom E-Commerce Agentur richtet solche Setups regelmäßig für Händler ein.

Wir sind JTL Service Partner Gold und arbeiten täglich mit der JTL-Ameise — im Kundenbetrieb und in eigenen Automatisierungsprojekten. Was hier steht, kommt nicht aus der Doku allein, sondern aus echten Setups bei Händlern: Lieferanten die täglich neue Bestandsdateien per FTP liefern, Marktplatz-Händler die Preise automatisch einpflegen, Logistik-Setups die Lagerplätze über Nacht synchronisieren. Vlarom E-Commerce Agentur begleitet Händler bei genau diesen Automatisierungsprojekten — von der ersten Batch-Datei bis zum stabilen Produktivbetrieb. Die CMD-Automatisierung ist kein Nischen-Feature, sondern der nächste logische Schritt für jeden der die Ameise regelmäßig benutzt.

JTL-Ameise CMD automatisieren in 5 Schritten

Der Aufbau folgt immer demselben Muster: zuerst die Importvorlage in der GUI anlegen, dann den CMD-Befehl zusammensetzen, eine Batch-Datei schreiben, testen und zuletzt in den Aufgabenplaner einhängen. Das klingt nach viel, ist für einen einzelnen Import-Use-Case aber schnell erledigt. Wenn du mehrere Vorlagen oder FTP-Quellen einbindest, plane mehr Zeit ein.

Importvorlage in der JTL-Ameise GUI anlegen (Vorbereitung)

Bevor du die CMD-Version nutzen kannst, muss die Importvorlage in der grafischen Oberfläche existieren. Öffne dazu die JTL-Ameise normal, lege eine neue Vorlage an und speichere sie. Jede Vorlage bekommt dabei eine eindeutige ID — Importvorlagen beginnen typischerweise mit IMP, Exportvorlagen mit EXP (zum Beispiel IMP01 oder EXP_ARTIKEL). Diese ID brauchst du im nächsten Schritt als Pflichtparameter. Der häufigste Fehler den wir sehen: Händler versuchen einen CMD-Import direkt zu starten, ohne die Vorlage vorher in der GUI gespeichert zu haben — das schlägt mit einem Fehler fehl und gibt keine hilfreiche Fehlermeldung. Solange die Vorlage in der GUI funktioniert, funktioniert sie auch per CMD. Umgekehrt gilt das aber auch: wenn der Import in der GUI Fehler produziert, bringt der CMD-Betrieb keine Verbesserung.

CMD-Befehl zusammensetzen (Syntax und Parameter)

Die CMD-Version der JTL-Ameise folgt einer festen Syntax. Ein vollständiger Import-Befehl sieht so aus: `JTL-wawi-ameise.exe -s (local)\\JTLWAWI -d eazybusiness -u sa -p DeinPasswort -t IMP01 -i C:\\Import\\artikel.csv`. Die Parameter im Überblick: `-s` ist der SQL-Datenbankserver, `-d` der Datenbankname, `-u` und `-p` sind Datenbanknutzer und Passwort, `-t` die Vorlagen-ID, `-i` die Eingabedatei beim Import und `-o` die Ausgabedatei beim Export. Für Exports mit Datumsstempel in den Dateinamen kannst du Platzhalter nutzen: `%y` für Jahr, `%m` für Monat, `%d` für Tag, `%H` für Stunde. Wichtig: In Batch-Dateien muss `%` als `%%` geschrieben werden, sonst interpretiert Windows die Zeichen als eigene Batch-Variablen und der Import schlägt ohne klare Fehlermeldung fehl. Die vollständige Parameterübersicht findest du in der JTL-Ameise CMD-Dokumentation auf guide.jtl-software.com.

Batch-Datei schreiben und testen

Öffne einen Texteditor und lege eine `.bat`-Datei an. Ein typisches Grundgerüst für einen automatischen Import: erste Zeile `@echo off`, dann ein `cd` in den Ordner mit der Import-CSV, danach der vollständige Ameise-Befehl mit allen Parametern. Für Logging nutzen wir `–log C:\\Logs\\ameise_%%y%%m%%d.log` — so entsteht pro Tag eine eigene Logdatei. Wer Workflow-Aktionen während des Imports verhindern will, etwa damit keine automatischen E-Mails an Kunden ausgelöst werden, setzt zusätzlich `–no_workflows`. Für reine Fehler-Protokollierung gibt es außerdem `–log_errors` und `–log_warnings` als separate Logdateien. Vor dem Einhängen in den Aufgabenplaner: Batch-Datei einmal manuell im CMD-Fenster ausführen und die Ausgabe prüfen. Läuft der Import ohne Fehler durch, ist der Testlauf bestanden. Sinnvoll ist außerdem ein Testlauf mit dem Parameter `–mode test`, der die Daten prüft ohne sie tatsächlich zu importieren.

Automatischen FTP-Download vorschalten (für Lieferantendaten)

Viele Lieferanten stellen ihre Datendateien täglich per FTP oder HTTP bereit. In diesem Fall erweiterst du die Batch-Datei um einen Download-Schritt. Das geht entweder mit dem eingebauten Windows-FTP-Client über eine `.ftp`-Skriptdatei oder mit `wget` für FTP- und HTTP-Quellen: `wget ftp://server.de/artikel.csv –user=nutzername –password=passwort`. Das Ergebnis landet dann in dem Ordner, den der Ameise-Import-Befehl als Eingabedatei aufruft. Wer mehrere Dateien aus einem Ordner importieren will, kann in der Batch-Datei eine FOR-Schleife einbauen: `For /R \“C:\\Import\“ %%f IN (*.csv) do (\“JTL-wawi-ameise.exe\“ … –inputfile=\“%%f\“)`. Ein Händler im JTL-Forum beschrieb genau diesen Ansatz als die einfachste Lösung für tägliche Lieferantendaten-Abgleiche. Wir setzen das regelmäßig bei Kunden mit mehreren Lieferanten ein, die ihre Bestands-CSVs nachts hochladen. Damit läuft der komplette Zyklus von FTP-Download bis Wawi-Import vollautomatisch durch. Wer solche Abläufe über die Ameise hinaus orchestrieren möchte — etwa mit einem Workflow-Tool wie n8n — findet in unserem Vergleich der vier Wege, JTL-Wawi mit n8n zu verbinden die passende Methode.

Windows-Aufgabenplaner einrichten und absichern

Öffne den Windows-Aufgabenplaner (`taskschd.msc`), klicke auf „Aufgabe erstellen“ und gib der Aufgabe einen sprechenden Namen, zum Beispiel „JTL Ameise – Artikel-Import täglich“. Unter „Trigger“ legst du fest, wann die Aufgabe laufen soll — täglich um 02:00 Uhr ist ein klassisches Setup für Händler mit Lieferanten-Nachtlieferungen. Unter „Aktionen“ trägst du den vollständigen Pfad zur Batch-Datei ein. Wichtig: Setze „Ausführen unabhängig davon, ob der Benutzer angemeldet ist“ damit der Task auch ohne aktive Windows-Session startet. Deaktiviere außerdem „Aufgabe nur starten, wenn Computer mit Wechselstrom verbunden ist“ wenn der Server dauerhaft läuft. Teste abschließend über „Ausführen“ im Aufgabenplaner und prüfe das Log. Weitere Hinweise zur zeitgesteuerten Automatisierung findest du in der JTL-Ameise Übersicht auf guide.jtl-software.com. Wir prüfen die erste Woche täglich das Log — in dieser Zeit tauchen die meisten Konfigurationsprobleme auf.

Häufige Fragen zur JTL-Ameise CMD-Automatisierung

Die JTL-Ameise wechselt automatisch in den CMD-Modus, sobald du beim Aufruf mindestens einen Parameter übergibst. Du rufst also `JTL-wawi-ameise.exe -s (local)\\JTLWAWI -d eazybusiness -u sa -p DeinPasswort -t IMP01 -i datei.csv` auf — und die GUI öffnet sich nicht. Ohne Parameter startet die grafische Oberfläche normal. Das bedeutet: dieselbe Anwendungsdatei funktioniert für beide Modi, du brauchst kein separates Tool und keine andere Installation.
Jede Importvorlage die du in der CMD-Version nutzen willst, muss vorher in der grafischen Oberfläche der JTL-Ameise angelegt und gespeichert worden sein. Die dabei vergebene ID, zum Beispiel IMP01 oder IMP_ARTIKEL_PREISE, übergibst du dann im CMD-Aufruf über den Parameter `-t`. Wer die Vorlage nicht im Voraus anlegt, bekommt beim CMD-Start eine Fehlermeldung. Aus unserer Projekterfahrung: am klarsten sind Vorlagen-IDs die den Inhalt beschreiben, also IMP_LIEFERANT_1 statt einfach IMP1 — das hilft vor allem wenn mehrere Vorlagen im Einsatz sind.
Dafür gibt es den Parameter `–no_workflows`. Wenn du ihn an den CMD-Befehl anhängst, werden alle konfigurierten JTL-Workflows für die Dauer dieses Imports deaktiviert. Das ist besonders relevant wenn du Artikel-Updates importierst und nicht möchtest, dass dabei automatisch E-Mails an Kunden oder Aktionen an Lieferanten ausgelöst werden. Diese Funktion ist in aktuellen Ameise-Versionen standardmäßig verfügbar und wurde offiziell mit JTL-Wawi-Ticket WAWI-15552 eingeführt.
Ja, Exporte funktionieren genauso wie Importe — nur dass du statt `-i` (Eingabedatei) den Parameter `-o` (Ausgabedatei) verwendest. Für tägliche Exporte bietet sich ein Dateiname mit Zeitstempel-Platzhaltern an, zum Beispiel `-o \“C:\\Exports\\artikel_%%y%%m%%d.csv\“`. Die doppelten Prozentzeichen sind notwendig wenn du den Befehl in einer Batch-Datei schreibst. So entsteht pro Exportlauf eine neue Datei mit Datum im Namen, und ältere Exporte werden nicht überschrieben.
Die JTL-Ameise bricht den Import ab und schreibt einen Fehler in die Logdatei — sofern du Logging über `–log` konfiguriert hast. Ohne Logging bekommst du keinen aktiven Hinweis und der Task läuft scheinbar durch. Wir richten bei automatisierten Setups immer ein Tages-Log ein. Alternativ kannst du in der Batch-Datei vor dem Ameise-Aufruf eine `IF EXIST`-Prüfung einbauen: Wenn die Quelldatei nicht existiert, bricht das Skript mit einer Meldung ab anstatt die Ameise mit einem leeren Pfad aufzurufen.
Ja. Du steuerst den Mandanten über den Parameter `-d` (Datenbankname). Wenn du zwei Mandanten hast, zum Beispiel `eazybusiness` und `eazybusiness_mandant2`, legst du für jeden eine eigene Batch-Datei an und trägst beide im Aufgabenplaner ein. Die Vorlagen-IDs sind mandantenspezifisch, also muss jede Vorlage im jeweiligen Mandanten separat angelegt worden sein. Bei mehreren Mandanten auf einem Server starten wir die Aufgaben zeitlich versetzt, damit sich die Importe nicht gegenseitig blockieren.

Automatisierung einrichten aber keine Zeit zum Tüfteln?

Mit Vlarom E-Commerce Agentur läuft der Import automatisch.

Vlarom E-Commerce Agentur richtet Batch-Imports, zeitgesteuerte Exporte und FTP-Automatisierungen in JTL-Wawi für dich ein — sauber dokumentiert, getestet und mit Logging. Ruf uns direkt an unter +49 30 91473862, schreib an info@vlarom.de oder nutze unser Kontaktformular.

Autor

Alexander Luft

JTL Service Partner Gold · Vlarom E-Commerce Agentur · Ahrensfelde bei Berlin