Neu Workflow - Oberkategorie prüfen

Ahok

Mitglied
11. September 2023
137
6
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
584
189
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
39
6
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
6.942
1.740
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
39
6
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
39
6
Ich probiere es trotzdem mal aus, dass könnte ich für ein anderes Problem gebrauchen :) und vllt. hilft es ja jemand anderem :)
 

kelvin.

Gut bekanntes Mitglied
15. Februar 2023
157
59
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
39
6
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 Zahlung setzen bei Rechnungskorreturen bzw. Retouren User helfen Usern - Fragen zu JTL-Wawi 0
Neu Workflow: Artikel aus Kategorie löschen, wenn Sonderpreis abgelaufen Arbeitsabläufe in JTL-Wawi 0
Problem bei Workflow-Erstellung: Lieferzeit erhöhung" funktioniert nicht JTL-Wawi 1.8 16
Neu Custom Workflow: Lieferschein (Paket) Anmerkung setzen User helfen Usern - Fragen zu JTL-Wawi 0
Gelöst [ERLEDIGT] Hilfe bei workflow: Reiter Auftrag, Rechnung drucken und ausliefern. Gelöste Themen in diesem Bereich 3
Workflow braucht evig :-D JTL-Wawi 1.8 3
In Diskussion Workflow manuell funktioniert, automatisch nicht JTL-Workflows - Ideen, Lob und Kritik 4
Neu [Workaround] Auftrag: Bearbeiter über Workflow wechselen JTL-Wawi 1.9 User helfen Usern - Fragen zu JTL-Wawi 0
Neu CustomWorkflow zum Setzen von einem Hinweis für Auftragspositionen (Wert aus Eigene Felder per Workflow) Dienstleistung, Jobs und Ähnliches 0
Neu Workflow testen --> Auftrag auswählen --> Wawi hängt (keine Rückmeldung) JTL-Wawi - Fehler und Bugs 2
Neu CustomWorkflow zum SPERREN von Kunden (Auswahl eines Kunden/Auftrages/Rechnung per Workflow) Dienstleistung, Jobs und Ähnliches 0
[Bug] JTL-Wawi 1.9 | Auftrag: Statustext in Workflow Variablen leer | gelöst: [SQL] JTL-Wawi 1.9 0
Neu Merkmale & Cross Selling Artikel auf Kindartikel übertragen - Mit manuellen Workflow Ereignis auslösen möglich? User helfen Usern - Fragen zu JTL-Wawi 0
In Bearbeitung Workflow-Management Optimierung/Filterung JTL-Workflows - Ideen, Lob und Kritik 4
Beantwortet Workflow wie für verschiedene Druckausgaben? JTL-Workflows - Ideen, Lob und Kritik 1
Neu Workflow für Coupon Rabatt User helfen Usern - Fragen zu JTL-Wawi 0
Neu Custom Workflow Aufträge nach Artikelnummer sortieren User helfen Usern 6
Neu Workflow Retouren Position User helfen Usern - Fragen zu JTL-Wawi 2
Beantwortet Fehler im Workflow Bei Speichern Lieferschein JTL-Workflows - Fehler und Bugs 1
Neu Workflow = Lieferstatus Lieferschein erstellt = Automail User helfen Usern 0
Neu Workflow - Einkaufsliste bestücken User helfen Usern - Fragen zu JTL-Wawi 2
Workflow Aufträge Versandart JTL-Wawi 1.8 0
Neu Fällige Abos unter WAWI 1.6. mittels Workflow automatisiert ausliefern Arbeitsabläufe in JTL-Wawi 2
Workflow Rechnung erstellen und Verschicken nach WMS Versandbestätigung JTL-Wawi 1.9 4
In Diskussion SQL Update aus Workflow heraus JTL-Workflows - Fehler und Bugs 8
In Diskussion Workflow für Lagerbestände ( kleiner Verfügbarer Bestand - Artikel Offline schalten - Großer Bestand Artikel wieder einschalten) JTL-Workflows - Ideen, Lob und Kritik 3
Neu Tack & Trace Workflow Paket ohne Scan User helfen Usern 2
Beantwortet Guide Workflow: "Postnummer in das Feld Adresszusatz verschieben" funktioniert nicht JTL-Workflows - Ideen, Lob und Kritik 2
Neu Frage zu Workflow - Schleife für Artikelname und Warengruppe User helfen Usern - Fragen zu JTL-Wawi 3
Issue angelegt [WAWI-74098] Workflow - Mehrwertsteuersatz ändern JTL-Workflows - Ideen, Lob und Kritik 2
Workflow Leitcodierung 1.8.12.2 JTL-Wawi 1.8 8
Neu Workflow Doppelte Kunden prüfen - im Verkauf anzeigen Arbeitsabläufe in JTL-Wawi 0
Workflow für Rechnung automatisch als PDF in Verzeichnis abspeichern JTL-Wawi 1.8 9
Issue angelegt [WAWI-23263] Artikel per Workflow auf die Einkaufsliste setzen WAWI APP JTL-Workflows - Fehler und Bugs 8
In Diskussion Artikelbeschreibung mit Workflow umschreiben JTL-Workflows - Fehler und Bugs 1
Neu Manuelles Workflow Ereignis auslösen User helfen Usern - Fragen zu JTL-Wawi 20
Neu Workflow - SQL - Frage zur DATEADD()-Funktion User helfen Usern - Fragen zu JTL-Wawi 2
Beantwortet Workflow: Alle Besteller über neues Erscheinungsdatum informieren JTL-Workflows - Ideen, Lob und Kritik 2
Neu Fehlermeldungen ausgeben in Workflow Mail? User helfen Usern - Fragen zu JTL-Wawi 0
Verwiesen an Servicepartner Workflow für Einkaufsliste User helfen Usern - Fragen zu JTL-Wawi 2
Neu JTL-Shop oder Workflow: Artikel mit Menge > 1 sollen trotzdem als separate Einzelartikel im Auftrag aufgeführt werden User helfen Usern - Fragen zu JTL-Wawi 0
Neu Workflow - Stücklisten im Auftrag abfragen und korrekt in einer Mail auflisten User helfen Usern - Fragen zu JTL-Wawi 1
Workflow = Gewinn unter 30 % vom netto = per Mail informiert JTL-Wawi 1.6 10
Neu Wo ist die "Konto-Prüfen-Fuinktion"? Amazon-Anbindung - Fehler und Bugs 1
Neu Amazon Prime durch Verkäufer - Prüfen Sie anschließend, ob JTL-Wawi die Prime-Einstellungen übernimmt User helfen Usern - Fragen zu JTL-Wawi 0
Neu Auf aktive Kampange prüfen Technische Fragen zu Plugins und Templates 2
Verständnisfrage "offene Posten prüfen" JTL-Wawi 1.9 0

Ähnliche Themen