Neu Workflow mit DotLiquid Variable

Bernd_Hofi

Aktives Mitglied
13. Mai 2017
91
23
Hallo, liebe Gemeinde

Ich brauche Hilfe mit einem Workflow.

Ausgangslage:

Wenn Auftrag erstellt wird und er den Artikel xy enthält, soll ein Zusatzartikel hinzugefügt werden.

jetzt gehts um die Menge der Zusatzposition und hier würde ich gerne die Menge errechnen lassen.

Die Anzahl soll bestimmt werden aus der Menge der Bestellpositionen, bei denen im Artikelstamm ein Hacken in einer Checkbox in den Eigenen Feldern gesetzt wurde.

Warum? Wir haben für einen Kunden Flyer eingelagert. Wenn der Kunde jetzt bei uns Bestellt, kann er seine eigenen Flyer mitbestellen. Für jeden Unterschiedlichen Flyer verlangen wir eine Pickpauschale. Und Sinnvollerweise steht nacher auf der Rechnung:

Artikel 1. 2x
Artikel 2. 3x
Artikel 3. 2x
Flyer 1. 10x
Flyer 2 2x
Pickpauschale 2x

Jetzt das Problem:

wie muss die Dotliquid Abfrage lauten, damit der gesetzte Wert für den Hacken erkannt und im Loop durch den Auftrag zusammengezählt wird?

Ich hab absoluten Kopfsalat🤯
 

Bernd_Hofi

Aktives Mitglied
13. Mai 2017
91
23
Ok, scheint schwierig zu sein. Dann die Frage an JTL. Könnt Ihr mir sagen, wie das Datenbankfeld heist für die Eigenen Felder? Dann mach ichs über eine Datenbankabfrage
 

hula1499

Sehr aktives Mitglied
22. Juni 2011
5.401
1.323
Artikelattribute findest in tAttribut (die angelegten) dann bei tArtikelAttribut die jeweiligen Zuordnungen (kAttribut)
 

Bernd_Hofi

Aktives Mitglied
13. Mai 2017
91
23
Danke.

Ich schreib mal die Abfrage und poste sie dann gerne. Das thema gabs ja schon öfter. Zusatzartikel nur unter bestimmten Kriterien.

Und nicht böse sein, aber ich seh es nicht ein, den Kollegen für solche Erweiterungen dafür Geld zu geben, wenn`s JTL kann.
 

T4DT.GmbH

Offizieller Servicepartner
SPBanner
6. November 2018
331
165
Hannover
SQL:
SELECT tas.cName, taas.nWertInt FROM dbo.tArtikelAttributSprache taas
JOIN dbo.tArtikelAttribut taa ON taa.kArtikelAttribut = taas.kArtikelAttribut
JOIN dbo.tAttributSprache tas ON tas.kAttribut = taa.kAttribut AND tas.cName = 'Pickpauschale'
WHERE taas.kSprache = 0 AND tas.kSprache = 0  AND taas.nWertInt =1 
AND taa.kArtikel    = 12345

Müsste entsprechend eingepasst werden
 
  • Gefällt mir
Reaktionen: Bernd_Hofi

Bernd_Hofi

Aktives Mitglied
13. Mai 2017
91
23
SQL:
SELECT tas.cName, taas.nWertInt FROM dbo.tArtikelAttributSprache taas
JOIN dbo.tArtikelAttribut taa ON taa.kArtikelAttribut = taas.kArtikelAttribut
JOIN dbo.tAttributSprache tas ON tas.kAttribut = taa.kAttribut AND tas.cName = 'Pickpauschale'
WHERE taas.kSprache = 0 AND tas.kSprache = 0  AND taas.nWertInt =1
AND taa.kArtikel    = 12345

Müsste entsprechend eingepasst werden
Hi.
Wow. Da warst du um einiges schneller wie ich. Ich hab grad noch Tabellen gesucht🤫
 

T4DT.GmbH

Offizieller Servicepartner
SPBanner
6. November 2018
331
165
Hannover
Hi.
Wow. Da warst du um einiges schneller wie ich. Ich hab grad noch Tabellen gesucht🤫
Sorry. Konnte mir das nicht verkneifen, nach dem einem Kommentar mit dem bezahlen :D
Das machen vernünftige Servicepartner in weniger als 240 Sekunden. Würde meinen Kunden hier (240 Sekunden / 3600 Sekunden/Stunde * 90 €/Stunde) = 6 € kosten :D Wieviel ist dir deine Zeit wert? :p
 
  • Gefällt mir
Reaktionen: Bernd_Hofi

Bernd_Hofi

Aktives Mitglied
13. Mai 2017
91
23
Gute Arbeit, darf gute Arbeit kosten. Aber für eine SQL-Profi DARF so eine Anfrage keine Kunst sein. Siehe T4DT.GMBH

Das schätze ich so an diesem Forum. Danke Vielmals.
 
  • Gefällt mir
Reaktionen: T4DT.GmbH

T4DT.GmbH

Offizieller Servicepartner
SPBanner
6. November 2018
331
165
Hannover
Die Abfrage müsste an den jeweiligen Zweck natürlich angepasst werden. Das ist nur die Datengrundlage. Möchtest du das als Bedingung, würde ich SELECT COUNT(*) .. machen und dann gucken, ob Wert größer 0 ist, als Workflowbedingung
 

Bernd_Hofi

Aktives Mitglied
13. Mai 2017
91
23
Nicht als Bedingung. Als Ergebniss. Die Abfrage ist relativ simpel in Worte gefasst.

Wieviele Artikel in diesem Auftrag haben in dem Eigenen Feld„Test“ einen Hacken.

Thats it.

mit Worten einfach. Für leihen im Code unmöglich.
 

T4DT.GmbH

Offizieller Servicepartner
SPBanner
6. November 2018
331
165
Hannover
SQL:
SELECT COUNT(*) FROM dbo.tArtikelAttributSprache taas
JOIN dbo.tArtikelAttribut taa ON taa.kArtikelAttribut = taas.kArtikelAttribut
JOIN dbo.tAttributSprache tas ON tas.kAttribut = taa.kAttribut AND tas.cName = 'Test'
JOIN dbo.tbestellpos bp ON bp.tArtikel_kArtikel = taa.kArtikel
WHERE taas.kSprache = 0 AND tas.kSprache = 0 AND taas.nWertInt =1
AND bp.tBestellung_kBestellung = {{interne BestellNr}}
 

Bernd_Hofi

Aktives Mitglied
13. Mai 2017
91
23
Kurzes Update:

Hab den Code jetzt mal in DotLiquid versucht zu Übersetzten.
Sieht jetzt so aus:

{% capture query -%}
SELECT COUNT(*) FROM dbo.tArtikelAttributSprache taas
JOIN dbo.tArtikelAttribut taa ON taa.kArtikelAttribut = taas.kArtikelAttribut
JOIN dbo.tAttributSprache tas ON tas.kAttribut = taa.kAttribut AND tas.cName = 'Test'
JOIN dbo.tbestellpos bp ON bp.tArtikel_kArtikel = taa.kArtikel
WHERE taas.kSprache = 0 AND tas.kSprache = 0 AND taas.nWertInt =1
AND bp.tBestellung_kBestellung = '{{interne BestellNr}}'
{% endcapture -%}
{% assign result = query | DirectQueryScalar %}\
{{ result }}


Der Wert, der nun zurückgegeben wird ist 0. Erwarteter Wert wären 2 gewesen.

Was ist falsch?

Wahrscheinlich die Übersetzung nach DotLiquid.

Schande über mir.:rolleyes:
 

T4DT.GmbH

Offizieller Servicepartner
SPBanner
6. November 2018
331
165
Hannover
Wenn du es als erweiterte Eigenschaft in den Workflows zu einem Auftrag anlegen willst:
Code:
{% capture query -%}
SELECT COUNT(*) FROM dbo.tArtikelAttributSprache taas
JOIN dbo.tArtikelAttribut taa ON taa.kArtikelAttribut = taas.kArtikelAttribut
JOIN dbo.tAttributSprache tas ON tas.kAttribut = taa.kAttribut AND tas.cName = 'Test'
JOIN dbo.tbestellpos bp ON bp.tArtikel_kArtikel = taa.kArtikel
WHERE taas.kSprache = 0 AND tas.kSprache = 0 AND taas.nWertInt =1
AND bp.tBestellung_kBestellung = {{ Vorgang.Stammdaten.InterneAuftragsnummer }}
{% endcapture -%}
{% assign result = query | DirectQueryScalar %}\
{{ result }}
Rückgabetyp ist hier "Zahl"
 

Bernd_Hofi

Aktives Mitglied
13. Mai 2017
91
23
Abschließender Beitrag:

Danke an T4DT.GmbH
Sie hatten die Lösung

Zusammengefasst:

Ihr wollt einem Auftrag einen Zusatzartikel für bestimmte Artikel per Workflow anhängen.

Die Artikel wurden per Checkbox in den Artikeldaten unter EigeneFelder selektiert.

Nun die Bedingung:

Wenn auftrag erstellt -> und Kunde ist aus dem Onlineshop (als Beispiel)

Bedingung: Füge Zusatzartikel für jeden Artikel hinzu, der einen Hacken in der Checkbox hat.

Also:

Positzion Hinzufügen

Modus -> Artikel
Aktikel wählen

Menge: Da kommt jetzt keine Zahl sonder der Code rein.

Öffnet die Erweiterten Eigenschaften und fügt Folgenden Code ein:

{% capture query -%}
SELECT COUNT(*) FROM dbo.tArtikelAttributSprache taas
JOIN dbo.tArtikelAttribut taa ON taa.kArtikelAttribut = taas.kArtikelAttribut
JOIN dbo.tAttributSprache tas ON tas.kAttribut = taa.kAttribut AND tas.cName = 'Test'
JOIN dbo.tbestellpos bp ON bp.tArtikel_kArtikel = taa.kArtikel
WHERE taas.kSprache = 0 AND tas.kSprache = 0 AND taas.nWertInt =1
AND bp.tBestellung_kBestellung = {{ Vorgang.Stammdaten.InterneAuftragsnummer }}
{% endcapture -%}
{% assign result = query | DirectQueryScalar %}\
{{ result }}


Das rote Test ersetzt Ihr durch den Namen der Checkbox.

Was macht der Code:

Er sucht in der Datenbank innerhalb des Auftrags nach allen Artikeln, wo Ihr den Hacken gesetzt habt.
Dann zählt er alles zusammen und gibt euch das Ergebniss als Zahl aus.


Viel Vergnügen mit dem Workflow

(Hinweis): Prüft nach jedem JTL-Update die Datenbankabfrage. Die Tabellen können sich ändern.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Auftrag - Lieferstatus mit Workflow exportieren Arbeitsabläufe in JTL-Wawi 3
In Diskussion Workflow mit UND / ODER - Bedingung erstellen JTL-Workflows - Ideen, Lob und Kritik 7
In Diskussion Ort mit OT per Workflow bereinigen JTL-Workflows - Ideen, Lob und Kritik 3
Neu Suche Workflow: Erstbestellung Shop auf Rechnung -> Auftrag Zurückhalten JTL-Wawi - Ideen, Lob und Kritik 1
1.11.7 Workflow versendet soll Rechnung 1x drucken, druckt aber 2x JTL-Wawi 1.11 1
Using short screen recordings for JTL-Wawi workflow documentation – anyone doing this? JTL-Wawi 2.0 3
Neu Werte erhöhen per Workflow User helfen Usern - Fragen zu JTL-Wawi 4
In Diskussion Workflow OpenAI JTL-Workflows - Ideen, Lob und Kritik 1
Workflow Trigger bei Angebot-Import über Ameise JTL-Wawi 1.9 1
Neu 2.0.0: Workflow Queue wird nicht abgearbeitet via API JTL-Wawi 2.0 1
Neu Verständnisfrage zum Mahnlauf Workflow User helfen Usern - Fragen zu JTL-Wawi 0
Neu Ausdruck Rechnung beim Workflow nicht korrekt formatiert User helfen Usern - Fragen zu JTL-Wawi 6
Worker versendet keine E-Mails mehr aus der Workflow Queue JTL-Wawi 2.0 6
Gelöst Workflow - Seriennummer per Mail versenden JTL-Workflows - Fehler und Bugs 1
Neu Workflow automatisch bei Warenausgang für Bestand und Puffer JTL-Wawi - Ideen, Lob und Kritik 12
workflow führt zu "keiner Rückmeldung" / Absturz JTL-Wawi 1.11 3
Neu oAuth Credentials Login mit JTL .. WO? User helfen Usern 1
Neu kostenlos: DHL Sendungsverfolgung für JTL-Wawi – Web-Dashboard mit Frühwarnsystem Schnittstellen Import / Export 0
Neu Konfigurationsgruppe mit Auslesen Arbeitsabläufe in JTL-Wawi 1
Neu Ist es ohne Probleme möglich Cloudflare in der Free Version mit JTL zu nutzen? Allgemeine Fragen zu JTL-Shop 7
Neu Nach Wawi Update Probleme mit Rechnungsdrucker JTL-POS - Fehler und Bugs 4
Neu Mariadb 12 mit 5.7.1 Allgemeine Fragen zu JTL-Shop 0
Neu Pickliste mit maximaler SKU-Anzahl – gibt es eine Lösung? Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 4
Neu Mit Fehlern beendet - Object reference not set to an instance of an object. JTL-Track&Trace - Fehler und Bugs 0
ändern von Servernamen nach Neuinstallation von SQL und Verbindung mit neuem Server in der Wawi JTL-Wawi 2.0 2
Probleme mit Artikelansicht oder Verkauf, etc. JTL-Wawi 2.0 0
Fehler mit Zahlungsabgleich JTL-Wawi 1.11 9
Eigener Drittshop-Connector (jtl/connector 5.3): valide Variationskombinationen werden mit „besitzt keine Variationen" nicht gesendet JTL-Wawi 1.11 1
Neu Problem mit dem JTL-Connector – Invalid Shopify connection credentials. Shopify-Connector 3
Neu Arbeiten mit Lieferanten EKs - Workflows und SQL User helfen Usern - Fragen zu JTL-Wawi 6
Neu JTL Artikelanlage mit KI beschleunigen User helfen Usern - Fragen zu JTL-Wawi 2
Neu DHL 4.0 mit JTL-ShippingLabels funktioniert nicht JTL-ShippingLabels - Fehler und Bugs 2
Neu Amazon FBA Bestellungen doppelt mit _1 Amazon-Anbindung - Fehler und Bugs 4
Fehler beim Abgleich mit Amazon JTL-Wawi 2.0 10
Abgleich Amazon mit Fehlern beendet 1.11.08 JTL-Wawi 1.11 14
Rabatt Coupons in Verbindung mit Staffelpreisen - JTL 1.11.9, JTL Shop JTL-Wawi 1.11 0
Worker 2.0 starten mit deak. Abgleichen? JTL-Wawi 2.0 3
Fehler beim Abgleich mit dem JTL-Shop JTL-Wawi 2.0 12
Neu OnFinds: KI-Suche für JTL-Shop mit fairer Abrechnung nach Artikelanzahl. 30 Tage kostenlos testen Plugins für JTL-Shop 0
Neu Abrechnung / Auslieferung von Aufträgen mit Gutschriftverfahren Arbeitsabläufe in JTL-Wawi 3
Neu Dummy-ID oder Freiposition für Angebot mit mehrzeiliger Beschreibung JTL-Wawi - Ideen, Lob und Kritik 7
Neu JTL Shop 5.7.1 mit Fehlern - versandarten zahlungsarten nicht änderbar, leere weiße Seite JTL-Shop - Fehler und Bugs 5
JTL Ameise Lieferantenbestellung mit VPE importieren oder umrechnen JTL-Wawi 1.11 0
Jtl pos Einstellungen mit wiwa 2.02 JTL-Wawi 1.11 0
Anmeldung mit OAuth bei Versanddienstleister notwendig JTL-Wawi 1.10 5
Problem mit Hermes Österreich Sendungsnummern – Fehler beim Amazon-Abgleich in JTL-Wawi JTL-Wawi 1.10 0
Bestellabgleich mit JTL Wawi und WooCommerce 1h verzögert JTL-Wawi 2.0 0
Neu PayPal Käufername stimme nicht mit Liederadresse überein! Business Jungle 0
Neu 1.11.8 Auftagsimport mit Artikelnummern mapping JTL-Ameise - Fehler und Bugs 0
Neu Neuerdings E-Mail benachrichtigung bei "Pick up in Store", allerdings mit E-Mail "Bestellung wurde abgeholt" Shopify-Connector 0

Ähnliche Themen