Neu JTL Worker xml-import triggern

WAWI-USER

Aktives Mitglied
7. Februar 2011
7
1
Berlin
Hallo allerseits,
ich habe ein web basiertes Tool gebaut um Lieferscheine schneller zu erstellen und zu bearbeiten es ist direkt mit der WAWI SQL Datenbank verbunden um sich Produkt/Kunden infos zu besorgen und erstellt anschließend ein auftrags-xml. Der wird dann in der Tabelle tXMLBestellImport abgelegt. nun will ich aber nicht immer bis zu 5 minuten warten bis der JTL- Worker den automatischen import macht, auch will ich den import dienst nicht immer manuell neu starten müssen.
gibt es hier irgendein workaround, irgend eine Prozedur die ich triggern kann damit immer beim upload die xml Dateien sofort weiter verarbeitet werden? Die Wawi API will ich nicht nutzten da 199€ monatlich für eine selbst gehostete API unfassbar teuer ist.

jegliche Hilfe ist sehr Willkommen!
 

no80

Sehr aktives Mitglied
28. Juni 2023
724
86
Du kannst per Ameise in csv oder ggf. noch über die externDLL.

kannst deine XML Teile bitte
 

John

Sehr aktives Mitglied
3. März 2012
4.112
1.048
Berlin
Der Worker besteht ja aus dem Hauptprozess, der in der DB nachschaut, welche Abgleiche wann zu erledigen sind. Entsprechend startet er dann Unterprozesse als eigene Instanzen.
Vielleicht reicht es aus, dem Hauptprozess durch Modifikation des Eintrags für den letzen Start des XML Imports vorzugaukeln, dass dieser zuletzt vor mehr als 5 Minuten lief.
Einfach den Zeitpunkt des letztens Laufes in der Datenbank zurück datieren.

Versuch ist das wert...
 

WAWI-USER

Aktives Mitglied
7. Februar 2011
7
1
Berlin
Du kannst per Ameise in csv oder ggf. noch über die externDLL.

kannst deine XML Teile bitte
unsere xml ist auf dem oldWawi.xsd basierend.
was meinst du mit der externDLL
unser template sieht dann so aus:


Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<tBestellungen>
    <tBestellung kFirma="{{ kFirma }}">
        <cSprache>{{ cSprache|default('ger') }}</cSprache>
        <cWaehrung>{{ cWaehrung }}</cWaehrung>
        <fGuthaben>0.00</fGuthaben>
        <fGesamtsumme>{{ fGesamtsumme }}</fGesamtsumme>
        <cBestellNr>{{ cBestellNr }}</cBestellNr>
        <cExterneBestellNr></cExterneBestellNr>
        <cVersandartName>{{ cVersandartName }}</cVersandartName>
        <cVersandInfo>{{ cVersandInfo|default('') }}</cVersandInfo>
        <dVersandDatum></dVersandDatum>
        <cTracking></cTracking>
        <cLogistiker></cLogistiker>
        <dLieferDatum></dLieferDatum>
        <cKommentar></cKommentar>
        <cBemerkung></cBemerkung>
        <dErstellt>{{ dErstellt }}</dErstellt>
        <cZahlungsartName>{{ cZahlungsartName }}</cZahlungsartName>
        <dBezahltDatum></dBezahltDatum>
        <fBezahlt>0.00</fBezahlt>
        {% if nZahlungsziel is defined and nZahlungsziel is not empty %}
        <nZahlungsziel>{{ nZahlungsziel }}</nZahlungsziel>
        {% endif %}

        {% for bestellpos in products %}
        <twarenkorbpos>
            <cName>{{ bestellpos.cName }}</cName>
            <cArtNr>{{ bestellpos.cArtNr }}</cArtNr>
            <cBarcode>{{ bestellpos.cBarcode }}</cBarcode>
            <cSeriennummer></cSeriennummer>
            <cEinheit>{{ bestellpos.cEinheit }}</cEinheit>
            <fPreisEinzelNetto>{{ bestellpos.fPreisEinzelNetto }}</fPreisEinzelNetto>
            <fPreis>{{ bestellpos.fPreis }}</fPreis>
            <fMwSt>{{ bestellpos.fMwSt }}</fMwSt>
            <fAnzahl>{{ bestellpos.fAnzahl }}</fAnzahl>
            <cPosTyp>standard</cPosTyp>
            <fRabatt>{{ bestellpos.fRabatt }}</fRabatt>
        </twarenkorbpos>
        {% endfor %}

        <tkunde>
            <cKundenNr>{{ customer.cKundenNr|default('') }}</cKundenNr>
            <cAnrede>{{ customer.cAnrede|default('') }}</cAnrede>
            <cTitel>{{ customer.cTitel|default('') }}</cTitel>
            <cVorname>{{ customer.cVorname|default('') }}</cVorname>
            <cNachname>{{ customer.cNachname|default(customer.cName|default('')) }}</cNachname>
            <cFirma>{{ customer.cFirma|default('') }}</cFirma>
            <cStrasse>{{ customer.cStrasse|default('') }}</cStrasse>
            <cAdressZusatz>{{ customer.cAdressZusatz|default('') }}</cAdressZusatz>
            <cPLZ>{{ customer.cPLZ|default('') }}</cPLZ>
            <cOrt>{{ customer.cOrt|default('') }}</cOrt>
            <cBundesland>{{ customer.cBundesland|default('') }}</cBundesland>
            <cLand>{{ customer.cLand|default('') }}</cLand>
            <cTel>{{ customer.cTel|default('') }}</cTel>
            <cMobil>{{ customer.cMobil|default('') }}</cMobil>
            <cFax>{{ customer.cFax|default('') }}</cFax>
            <cMail>{{ customer.cMail|default('') }}</cMail>
            <cUSTID>{{ customer.cUSTID|default('') }}</cUSTID>
            <cWWW>{{ customer.cWWW|default('') }}</cWWW>
            <cHerkunft>{{ customer.cHerkunft|default('Wawi') }}</cHerkunft>
        </tkunde>

        <tlieferadresse>
            <cAnrede>{{ deliveryAddress.cAnrede|default('') }}</cAnrede>
            <cVorname>{{ deliveryAddress.cVorname|default('') }}</cVorname>
            <cNachname>{{ deliveryAddress.cNachname|default('') }}</cNachname>
            <cTitel>{{ deliveryAddress.cTitel|default('') }}</cTitel>
            <cFirma>{{ deliveryAddress.cFirma|default('') }}</cFirma>
            <cStrasse>{{ deliveryAddress.cStrasse|default('') }}</cStrasse>
            <cAdressZusatz>{{ deliveryAddress.cAdressZusatz|default('') }}</cAdressZusatz>
            <cPLZ>{{ deliveryAddress.cPLZ|default('') }}</cPLZ>
            <cOrt>{{ deliveryAddress.cOrt|default('') }}</cOrt>
            <cBundesland>{{ deliveryAddress.cBundesland|default('') }}</cBundesland>
            <cLand>{{ deliveryAddress.cLand|default('') }}</cLand>
            <cTel>{{ deliveryAddress.cTel|default('') }}</cTel>
            <cMobil>{{ deliveryAddress.cMobil|default('') }}</cMobil>
            <cFax>{{ deliveryAddress.cFax|default('') }}</cFax>
            <cMail>{{ deliveryAddress.cMail|default('') }}</cMail>
        </tlieferadresse>
    </tBestellung>
</tBestellungen>
 
  • Gefällt mir
Reaktionen: no80

WAWI-USER

Aktives Mitglied
7. Februar 2011
7
1
Berlin
Der Worker besteht ja aus dem Hauptprozess, der in der DB nachschaut, welche Abgleiche wann zu erledigen sind. Entsprechend startet er dann Unterprozesse als eigene Instanzen.
Vielleicht reicht es aus, dem Hauptprozess durch Modifikation des Eintrags für den letzen Start des XML Imports vorzugaukeln, dass dieser zuletzt vor mehr als 5 Minuten lief.
Einfach den Zeitpunkt des letztens Laufes in der Datenbank zurück datieren.

Versuch ist das wert...
ich habe versucht Worker.tStatus dZeitstempelUtc des xmlBestellImport workers 10 minuten zurück zusetzen aber das hat leider keinen einfluss. auch den interval in der DB ändern macht nichts.
war aber definitiv einen versuch wert.
 

WAWI-USER

Aktives Mitglied
7. Februar 2011
7
1
Berlin
Es führt wohl keine weg drum herum. ich werde die Daten direkt in die Auftrags Tabellen schreiben müssen. das wollte ich eigentlich nicht aber ich denke es geht nicht anders.
Trotzdem vielen Dank für die Ideen
 

John

Sehr aktives Mitglied
3. März 2012
4.112
1.048
Berlin
Hmm, vielleicht kann man auch mit einem Tool von SysINternals mitschneiden, wie der Worker Hauptprozess den XML Subprozess startet und mit dem Mitschnitt den Subprozess aus einer eigenen Anwendung heraus selbst starten?
Ich würde Auftrag selbst anlegen echt versuchen zu vermeiden oder ggf. via Ameise gehen. Selbst schreiben ist echt ekelig bzgl. zu beachtender Seiteneffekte.
 
Ähnliche Themen
Titel Forum Antworten Datum
JTL-Worker 2.0 - Einrichtung als Dienst - Auffälligkeiten und Problemlösungen für manche JTL-Wawi 2.0 3
Probleme mit Worker und JTL-App JTL-Wawi 2.0 5
Probleme mit JTL Worker JTL-Wawi 2.0 1
(gelöst) Ecomdata - JTL Worker 2.0 - Startet nicht - Schließt ohne Fehlermeldung JTL-Wawi 2.0 10
JTL-Worker speichert Einstellungen nicht JTL-Wawi 2.0 0
JTL-Worker-Status-Widget zeigt nichts mehr an JTL-Wawi 2.0 7
Neu JTL Worker 2.0 erstellt keinen Komplettabgleich JTL-Wawi 2.0 74
Neu JTL ShippingLabels - Meldungen JTL-ShippingLabels - Fehler und Bugs 0
Neu Beta-Tester gesucht: Produktdaten aus Artikelfotos schneller für JTL/CSV vorbereiten Dienstleistung, Jobs und Ähnliches 0
Neu oAuth Credentials Login mit JTL .. WO? User helfen Usern 1
Neu Installationsdatei für JTL‑Wawi 1.9.6.5 Installation von JTL-Wawi 2
Neu kostenlos: DHL Sendungsverfolgung für JTL-Wawi – Web-Dashboard mit Frühwarnsystem Schnittstellen Import / Export 0
Neu JTL Wawi 2.0 oder höher WooCommerce-Connector 0
Changelog jtl Wawi 2.0.5 JTL-Wawi 2.0 10
Neu Ist es ohne Probleme möglich Cloudflare in der Free Version mit JTL zu nutzen? Allgemeine Fragen zu JTL-Shop 7
JTL 5.7.1 Widerrufsformular massiver SPAM Einrichtung JTL-Shop5 3
JTL Wawi 1.11.xx langsam unbenutzbar! JTL-Wawi 1.11 4
Neu Plugin: JTL Exportformat Google Shopping gibt <g:google_product_category> unter Shop 5.7.1 und Wawi 2.0.4 nicht aus Plugins für JTL-Shop 1
Neu Widerrufsbutton für JTL-Shop 4 Allgemeine Fragen zu JTL-Shop 8
Neu Rabatte aus dem JTL-Shop werden in der Wawi nur als Netto-Preis übernommen, Rabatt % gehen verloren Onlineshop-Anbindung 0
JTL Anmeldung letzter Benutzer JTL-Wawi 1.11 3
Test-Kunden als solche in JTL markieren, um die Auswertungen sauber zu halten? JTL-Wawi 1.11 1
Neu Ab Wawi 1.10 - JTL.Wawi.Pos.exe direkt ohne JTL-Administrator starten? Allgemeine Fragen zu JTL-POS 2
Neu JTL-Shop - Wechsel von Test zum Livebetrieb - was beachten ? Installation / Updates von JTL-Shop 2
JTL APP - Fehlermeldung nach Update auf Wawi 1.11. JTL-Wawi App 6
Eigener Drittshop-Connector (jtl/connector 5.3): valide Variationskombinationen werden mit „besitzt keine Variationen" nicht gesendet JTL-Wawi 1.11 1
JTL Wawi 1.11. - Fenstergröße - Artikel auf Einkaufsliste setzen JTL-Wawi 1.11 13
Neu Problem mit dem JTL-Connector – Invalid Shopify connection credentials. Shopify-Connector 3
Neu JTL Artikelanlage mit KI beschleunigen User helfen Usern - Fragen zu JTL-Wawi 2
Neu JTL-Wawi Shopabgleich per E-Mail überwachen (Warnungen & Fehler) Onlineshop-Anbindung 1
Neu Helfen Lösungen wie Unicorn wirklich, um die teuren Preise bei JTL zu vermeiden? Amazon-Anbindung - Ideen, Lob und Kritik 1
Neu Meta Shop seit September 2025: JTL-Lösung für neue Checkout-URL gesucht Allgemeine Fragen zu JTL-Shop 0
Neu Bug? Führende Nullen bei Sendungsnummern verschwinden in JTL-Wawi 2.0.3 JTL-ShippingLabels - Fehler und Bugs 1
DPD Cloud Labeldruck auf Zebra LP 2844-Z seit Update auf JTL-Wawi 1.11.x fehlerhaft JTL-Wawi 1.11 3
JTL nach Update auf 2.0.3 im Bereich „Kunden“ extrem langsam JTL-Wawi 2.0 1
Neu DHL 4.0 mit JTL-ShippingLabels funktioniert nicht JTL-ShippingLabels - Fehler und Bugs 2
JTL-Wawi sucht falschen ShopType nach Gambio-Update JTL-Wawi 1.7 2
Neu JTL Lizensserver ist nicht erreichbar eBay-Anbindung - Fehler und Bugs 0
Nach update 1.8>1.11 Kein Mandant in JTL-Wawi gefunden JTL-Wawi 1.11 5
Angebliche externe Aufträge "für Rechnungserstellung freigeben" und Rechnungen erstellen. Gibt es dazu eine akzeptable Erklärung von JTL? JTL-Wawi 1.11 1
Rabatt Coupons in Verbindung mit Staffelpreisen - JTL 1.11.9, JTL Shop JTL-Wawi 1.11 0
Neu JTL → Shopify Connector: MappingTablesException / „Endpoint id is empty“ – betroffene Artikel aus Logs per SQL finden Shopify-Connector 1
Neu Abschaltung DHL versenden 3.0 vs JTL Shipping JTL-ShippingLabels - Ideen, Lob und Kritik 4
Neu JTL PayPal Checkout 2.3.0 ... 1. Update klappte nicht, 2. Update nun Eintrag doppelt Plugins für JTL-Shop 22
Fehler beim Abgleich mit dem JTL-Shop JTL-Wawi 2.0 12
Neu Warnung: Attribute via JTL Funktion JTL_GetProductAttribute() funktioniert nicht zuverlässig Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 1
Neu OnFinds: KI-Suche für JTL-Shop mit fairer Abrechnung nach Artikelanzahl. 30 Tage kostenlos testen Plugins für JTL-Shop 0
Neu Eignes Feld aus Auftrag in Rechnung anzeigen lassen JTL-WaWi 1.11.10 Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
In Bearbeitung JTL FFN Seite defekt? JTL-Fulfillment Network - Fehler und Bugs 2
Neu Freelancer für JTL-Wawi, Shop & Prozessautomatisierung Dienstleistung, Jobs und Ähnliches 0

Ähnliche Themen