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.389
1.315
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
330
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
330
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
330
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
330
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
330
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 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
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 3
In Diskussion Workflow OpenAI JTL-Workflows - Ideen, Lob und Kritik 0
Workflow Trigger bei Angebot-Import über Ameise JTL-Wawi 1.9 0
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
Artikelpuffer Email Workflow JTL-Wawi 1.11 4
Neu Workflow Ereignis "Position hinzufügen" bei Angebote User helfen Usern - Fragen zu JTL-Wawi 0
Neu Workflow - Bedingung Lieferstatus User helfen Usern - Fragen zu JTL-Wawi 4
Workflow: Artikel geändert -> bat-script ausführen JTL-Wawi 1.11 2
Neu Workflow funktioniert nicht so wie gewollt :) User helfen Usern - Fragen zu JTL-Wawi 1
In Diskussion Workflow Abweichung Preise > Emailreport JTL-Workflows - Ideen, Lob und Kritik 3
Neu Workflow Auslöser: Artikel gelöscht User helfen Usern - Fragen zu JTL-Wawi 0
Ameise-Export: Umsatzsteuer stimmt nicht mit Differenz aus Netto und Brutto überein (insbesondere bei mehreren Steuersätzen) JTL-Wawi 1.11 0
Neu Klarna konnte mit den angegebenen Daten keine Sitzung erstellen. Einige Feldbedingungen wurden verletzt. Betrieb / Pflege von JTL-Shop 0
Neu Funktioniert Shop 5.7 mit MariaDB 10.5.29? Installation / Updates von JTL-Shop 1
Sanktionsprüfung mit JTL JTL-Wawi 1.10 0
Versandart Standartpaketversand mit Express JTL-Wawi 1.10 2
Artikeletiketten mit Angabe des Herstellers+Adresse JTL-Wawi 1.10 1
Neu Versandkostenersparnis mit JTL-Shipping: Vergünstigte Versandlabels ohne individuelle Rahmenverträge mit Versanddienstleistern User helfen Usern - Fragen zu JTL-Wawi 1
Probleme mit Worker und JTL-App JTL-Wawi 2.0 4
Neu Probleme mit Import Datenbank vom Server auf lokal JTL-Wawi 2.0 User helfen Usern - Fragen zu JTL-Wawi 4
Neu Angeblich noch keine Verknüpfung mit DPD Meta ??? JTL-ShippingLabels - Fehler und Bugs 1
Neu fEKNetto - zwei Einträge je LiefArtikel mit gleichem Lieferant - nur einer aktualisiert User helfen Usern - Fragen zu JTL-Wawi 1
Neu JTL-Verknüpfung mit EC-Gerät fehlerhaft JTL-POS - Fehler und Bugs 0
Neu Problem mit Dantezeile und fehlerhafte Angebotsgültigkeit. Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
DHL 4.0 mit JTL Wawi 1.7.13.0 JTL-Wawi 1.7 2
Neu Google Shopping: g:product_type mit Attribut befüllen ist immer DE, obwohl mehrsprachig angelegt Plugins für JTL-Shop 0
Neu Listung mit Varianten - nicht alle Varianten sind vorhanden Amazon-Lister - Fehler und Bugs 0
Häufiges Aufhängen - vermutlich Probleme mit der Datenbank JTL-Wawi 2.0 10
Neu Kein permanenter Dataflow mit Kern FCB Waage JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 2
Neu DRIGEND HILFE!!! Ebay Abgleich endet mit Arithmetischer Überlauffehler für tinyint-Datentyp, Wert = -1. Die Anweisung wurde beendet. eBay-Anbindung - Fehler und Bugs 4
Wawi 1.10.14.3 lässt sich nicht mehr mit Datev verbinden JTL-Wawi 1.10 3
Problem Wawi 2.0 mit DHL Versand JTL-Wawi 2.0 1
Neu JTL-WaWi + ESL Connector — Entwicklung mit Kostenaufteilung gesucht Business Jungle 0
Statistische Auswertung mit Klar Connector oder Controlling Software? JTL-Wawi 1.10 0
Artikelnamen bei Varioartikel nichtänderbar mit csv JTL-Wawi 1.10 0
Neu Probleme mit Ninepoint und TikTok Shop Schnittstellen Import / Export 6
FFN Abgleich schlägt fehlt mit Worker 2.0 JTL-Wawi 2.0 1
Eingangsrechnungen mit Einstellung "Nur gelieferte Positionen übernehmen" - Versandkosten werden nicht mit übernommen JTL-Wawi 1.11 4
Neu 5.6.1 Bug bei Versandarten mit Kalkulation durch Artikelmenge und Staffelpreisen JTL-Shop - Fehler und Bugs 2
Neu Ältere Young Fashion Kollektion: Mit Kaufland, TikTok & Influencer schnell hochziehen und abverkaufen? Dienstleistung, Jobs und Ähnliches 1
Neu Problem mit "eigenen Seiten" Betrieb / Pflege von JTL-Shop 2

Ähnliche Themen