Neu Workflow - Oberkategorie prüfen

Ahok

Aktives Mitglied
11. September 2023
227
8
Wie kann ich prüfen, ob ein Artikel eine bestimmte Oberkategorie hat, egal auf welcher Ebene über ihm? Ich könnte bisher nur auf die nächste Oberkategorie prüfen, aber nicht auf die Oberkategorie der Oberkategorie usw.
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
628
199
Da es hier um Workflows geht hab ich hier zumindest einen Ansatz, wie genau das verbaut werden soll weiß ich ja nicht. Über eine erweiterte Eigenschaft könnt ihr die IDs aller Kategorien abfragen, die ein Artikel in seinem "Kategoriepfad" hat (oder Pfaden).
Mit etwas aufwand könnte man das auch in die Bezeichnungen umwandeln aber IDs sind eh besser, da mehrere Kategorien den gleichen Namen haben könnten.

All diese IDs geben wir dann zurück, und fragen im Workflow ab ob die ID der Kategorie, welche wir nun prüfen wollen, dort enthalten ist.

Hier der Code für die erweiterte Eigenschaft:

Code:
{% capture Kategoriepfade -%}
declare @IDs varchar(500)
set @IDs = ''
select @IDs = @IDs + '|' + vKategorien.Sort
from tkategorieartikel
join vKategorien on tkategorieartikel.kKategorie = vKategorien.kKategorie
where kArtikel = {{ Vorgang.Allgemein.Stammdaten.InterneArtikelnummer }}
select @IDs = @IDs + '|'
select @IDs
{% endcapture -%}
{% assign IDs = Kategoriepfade | DirectQueryScalar -%}
{{ IDs }}

Als Beispiel, die Kategorien sind:
Shop -> Auto -> Reinigung -> Scheiben
Shop -> Auto -> Zubehör -> Scheibenreiniger


Die IDs in der Datenbank lauten:
Shop = 1
Auto = 2
Reinigung = 3
Scheiben = 4
Zubehör = 5
Scheibenreiniger = 6

Die Rückgabe im Workflow sieht dann z.B. so aus:

|1|2|3|4|1|2|5|6|


Weil du nun wissen willst ob dein Fensterreiniger unterhalb der Auto Kategorie liegt (warum auch immer) fragst du im Workflow ab ob die Rückgabe den Wert |2| enthält.
Die ID einer Kategorie bekommt man in JTL angezeigt wenn man die Kategorie öffnet, heißt dort "interner Schlüssel".

Vielleicht hilft das.
 

Tomka

Aktives Mitglied
10. Mai 2022
47
7
Da es hier um Workflows geht hab ich hier zumindest einen Ansatz, wie genau das verbaut werden soll weiß ich ja nicht. Über eine erweiterte Eigenschaft könnt ihr die IDs aller Kategorien abfragen, die ein Artikel in seinem "Kategoriepfad" hat (oder Pfaden).
Mit etwas aufwand könnte man das auch in die Bezeichnungen umwandeln aber IDs sind eh besser, da mehrere Kategorien den gleichen Namen haben könnten.

All diese IDs geben wir dann zurück, und fragen im Workflow ab ob die ID der Kategorie, welche wir nun prüfen wollen, dort enthalten ist.

Hier der Code für die erweiterte Eigenschaft:

Code:
{% capture Kategoriepfade -%}
declare @IDs varchar(500)
set @IDs = ''
select @IDs = @IDs + '|' + vKategorien.Sort
from tkategorieartikel
join vKategorien on tkategorieartikel.kKategorie = vKategorien.kKategorie
where kArtikel = {{ Vorgang.Allgemein.Stammdaten.InterneArtikelnummer }}
select @IDs = @IDs + '|'
select @IDs
{% endcapture -%}
{% assign IDs = Kategoriepfade | DirectQueryScalar -%}
{{ IDs }}

Als Beispiel, die Kategorien sind:
Shop -> Auto -> Reinigung -> Scheiben
Shop -> Auto -> Zubehör -> Scheibenreiniger


Die IDs in der Datenbank lauten:
Shop = 1
Auto = 2
Reinigung = 3
Scheiben = 4
Zubehör = 5
Scheibenreiniger = 6

Die Rückgabe im Workflow sieht dann z.B. so aus:

|1|2|3|4|1|2|5|6|

Weil du nun wissen willst ob dein Fensterreiniger unterhalb der Auto Kategorie liegt (warum auch immer) fragst du im Workflow ab ob die Rückgabe den Wert |2| enthält.
Die ID einer Kategorie bekommt man in JTL angezeigt wenn man die Kategorie öffnet, heißt dort "interner Schlüssel".

Vielleicht hilft das.
Hey vielen Dank,

Das ist schon mal ein Ansatz den ich mal weiter verfolgen kann.

Hintergrund ist folgender, ich muss den Kategorien eine eigene ID verpassen. Und wenn ich dort ein Produkt platziere, möchte ich gerne per Workflow die category ID dem Produkt zu weisen.

Die Lösung wäre einfach, wenn nur eine Kategorie zugewiesen wäre, dann würde die Variable erstes Objekt greifen.

Nur leider habe ich mehrere, je nach Shop unterschiedliche Zuweisung.

Warum per Workflow, nun da der Workflow noch weitere Anweisung verarbeitet und sowieso manuell angestoßen werden muss.

Parallel lasse ich vom Dienstleister eine SQL Abfrage prüfen. Persönlich wäre mir aktuell die Workflow Variante lieber.

Ich weiß es geht auch manuell Mit der Ameise, aber da müsste ich Kategorie für Kategorie Import/Export starten.

Gruß Tomka
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
7.667
2.149
Berlin
Ich habe es so verstanden, das er die Oberkategorie haben möchte, also wenn ein Artikel in der dritten Ebene liegt, das er dann wissen möchte was die erste Ebene davon ist?
wenn ich das richtig verstanden habe wäre dein Workflow nicht passend, da der nur schaut in welcher Kategorie der Artikel letztendlich liegt, es würde also in meinem Beschriebenen Fall nur die dritte Ebene angezeigt werden.
 

Tomka

Aktives Mitglied
10. Mai 2022
47
7
Genau für mich ist die letzte Kategorie entscheidend,

Shop -> Auto -> Reinigung -> Scheiben

Nach diesem Beispiel, müsste ich Scheiben herauskriegen. Bei einzelnen Eintrag ist das ja kein Problem. schwierig stellt sich wenn mehrere Pfade hinterlegt sind.
 

Tomka

Aktives Mitglied
10. Mai 2022
47
7
Ich probiere es trotzdem mal aus, dass könnte ich für ein anderes Problem gebrauchen :) und vllt. hilft es ja jemand anderem :)
 

kelvin.

Sehr aktives Mitglied
15. Februar 2023
165
65
Frankfurt
Die Kategorie ist nach der Datenstruktur ein Baum.
Dann müsste es rekursiv möglich sein, sowohl die Wurzel als auch die Blätter zu erreichen.

Das einzige Herausforderung, was ich derzeit sehe ist, dass ein Artikel in mehreren Kategorien sein, also auch in Kategorien, die sich nicht überschneiden. Da müsste man zusätzlich Abfragen.
 

Tomka

Aktives Mitglied
10. Mai 2022
47
7
Hallo Kelvin,

danke für die Antwort. Aus Zeitgründen habe ich am WE dies an einen externen Dienstleister übergeben der uns 2 SQL Abfragen für die Ameise programmiert hat, funktioniert für unsere Zwecke wunderbar.

Gruß Tomka
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Workflow Amazon Versandgruppe ändern User helfen Usern - Fragen zu JTL-Wawi 0
Neu Per Workflow aktuelle Kategorie als Attribut hinterlegen JTL-Workflows - Ideen, Lob und Kritik 3
Neu Workflow lößt bei Track & Trace nicht aus User helfen Usern - Fragen zu JTL-Wawi 1
In Diskussion JTL WAWI + FFN + OrangeConnex Workflow für Versand und Lagerbestand JTL-Workflows - Ideen, Lob und Kritik 0
In Diskussion Workflow kurze Pause per Batch - Fehler "Die Eingabeumleitung wird nicht unterstützt" JTL-Workflows - Ideen, Lob und Kritik 6
In Diskussion Workflow auf Zahlungseingang und Zahlungsweise JTL-Workflows - Ideen, Lob und Kritik 1
In Diskussion Per Workflow Versandart ändern - EK wird nicht korrigiert JTL-Workflows - Ideen, Lob und Kritik 1
In Bearbeitung Workflow funktioniert nicht - Bedingung: Seriennummer JTL-Workflows - Fehler und Bugs 30
Neu Menge von Auftragspositionen per Workflow ändern User helfen Usern - Fragen zu JTL-Wawi 4
In Diskussion Workflow Stücklistenbestandteile ausgeben JTL-Workflows - Ideen, Lob und Kritik 1
Neu Externe Belege per Workflow speichern Amazon-Anbindung - Fehler und Bugs 3
Verwiesen an Support Probleme mit dem Workflow JTL-Workflows - Fehler und Bugs 2
Workflow-Hilfe Zahlungserinnerung nach 3 Werktagen & Storno nach 7 Werktagen ohne Zahlung JTL-Wawi 1.10 7
Neu Zustellzeit EXPRESS Sendungen - als Bedingung für Workflow User helfen Usern - Fragen zu JTL-Wawi 1
Neu Workflow - Ausliefern - Jeden Tag um 04:00 Uhr, außer Sa. User helfen Usern - Fragen zu JTL-Wawi 4
Neu Wie kann es sein, dass ein "Rechnung erstellt" - Workflow 3 Tage später nochmal ausgelöst wird? User helfen Usern - Fragen zu JTL-Wawi 5
In Diskussion Rechnung per mail / Workflow gibt Fehler aus JTL-Workflows - Fehler und Bugs 6
Neu Workflow mehrere Werte setzen Shopify-Connector 2
In Diskussion Workflow für Amazon Tel. Nummern löschen JTL-Workflows - Ideen, Lob und Kritik 3
Neu Lässt sich die Artikelsichtbarkeit pro Kundengruppe per Workflow steuern? User helfen Usern - Fragen zu JTL-Wawi 2
Neu Variabel für "Bearbeiter" im Workflow User helfen Usern - Fragen zu JTL-Wawi 8
Gelöst BUG - Falsches Workflow wird ausgeführt JTL-Workflows - Fehler und Bugs 2
Neu Workflow der die Versandart für den Export zu Amazon nach dem ausliefern über WMS ändert User helfen Usern - Fragen zu JTL-Wawi 3
Gelöst [WAWI-75772] Workflow Erscheinungsdatum Feld leeren deaktiviert Überverkäufe möglich JTL-Workflows - Fehler und Bugs 2
Neu Workflow Artikel Erscheint am Datum überschritten, Bestandsführung aktivieren. User helfen Usern - Fragen zu JTL-Wawi 2
In Diskussion BUG Workflow bricht ab JTL-Workflows - Fehler und Bugs 6
Beantwortet Workflow: Zahlungserinnerung aus dem JTL Guid, versendet beim Testen mehr als nur 1 E-Mail JTL-Workflows - Fehler und Bugs 4
Beantwortet Brauche Hilfe Workflow Multichannel Rechnungserstellung nach Versand von Amazon JTL-Workflows - Ideen, Lob und Kritik 1
In Diskussion Workflow: Prüfen ob Artikel mit Fehlbestend nach 48h im Zulauf JTL-Workflows - Ideen, Lob und Kritik 2
Beantwortet Workflow Warengruppe nicht ausführen bei bestimmter Warengruppe, bei unterschiedlichen klappt es nicht JTL-Workflows - Fehler und Bugs 3
Manueller Workflow via App wird nicht vollständig ausgeführt JTL-Wawi App 5
Neu PayPal Plugin 2.0 - Vaulting - Ist IMMER ein neues Onboarding nötig? Wie prüfen, ob OK? Plugins für JTL-Shop 6
Neu Artikelanlage Artikelfelder vor dem Speichern prüfen User helfen Usern 1
Neu Dotliquid Beschreibung prüfen User helfen Usern - Fragen zu JTL-Wawi 7

Ähnliche Themen