Gelöst Attribute per DotLiquid in Workflow einzeln abfragen

Dull

Gut bekanntes Mitglied
14. Juli 2014
129
12
Passau
Moin,

ich versuche nun schon seit ein paar Stunden Attributwerte der ersten Artikelposition für einen Workflow zu extrahieren. Glaube langsam, dass das nicht (bzw. nur per SQL-Abfrage) möglich ist ... oder sehe ich den Wald vor lauter Bäumen nicht mehr?

Im Prinzip soll für einen Workflow eine erweiterte Eigenschaft erstellt werden, die zurückgibt, ob ein Attributwert mit einer If-Abfrage übereinstimmt. Im Prinzip soll also ein Booleanwert dabei heraus kommen, den ich dann für den Workflow nutzen kann.
Vorgefertigt gibt es dazu aber nur die 2 Variablen:
{{ Vorgang.AuftragsPositionen.ArtikelPositionen.ErstesObjekt.Artikel.Attribute }} und
{{ Vorgang.AuftragsPositionen.ArtikelPositionen.ErstesObjekt.Artikel.AttributeAlsText }}

Die erste Var gibt mir irgendwie gar nichts zurück, die zweite eben unsortierten Plaintext von allen Attributen des Artikels. Ich möchte nun aber gezielt ein bestimmtes Attribut, bzw. dessen Wert ausgespuckt bekommen, was mit den beiden Variablen wohl nicht funktioniert ^^
Bei den Vorlagen kann das ganz einfach z. B. per "Alias$()" oder "JTL_GetProductAttribute("ATTRIBUTNAME",SalesOrderPosition.ProductInternalId))" gelöst werden.

Da wir produktabhängige Attributwerte zur Berechnung von verschiedenen Sachen verwenden wäre es aber super, wenn man die Attribute konsistent nicht nur in den Vorlagen, sondern auch Global in DotLiquid ansprechen könnte :)
 

Björn Ponsen

Moderator
Mitarbeiter
1. Juli 2016
987
90
Hallo @Dull,

habt Ihr hier schon mal mit einer For-Schleife versucht die Artikelliste auf dieses Attribut zu überprüfen ?
Schaut mal hier könnt ihr sehen wie Ihr das macht, ist in in den Workflows bei DotLiquid sowie bei den Vorlagen gleich.
 

Dull

Gut bekanntes Mitglied
14. Juli 2014
129
12
Passau
Hi Björn,
Jap habe ich probiert je nach Konstellation kommt dabei folgendes raus:

Bei Vorgang.AuftragsPositionen.ArtikelPositionen.ErstesObjekt.Artikel.AttributeAlsText kommt in jedem Fall eine leere Ausgabe.

Bei
{% for item in Vorgang.AuftragsPositionen.ArtikelPositionen.ErstesObjekt.Artikel.Attribute %}
{{ item }}
{% endfor %}
erscheint:
Code:
Leere Ausgabe


Bei
{% for item in Vorgang.AuftragsPositionen.ArtikelPositionen.ErstesObjekt.Artikel.Attribute %}
{{ item[0] }}
{% endfor %}
erscheint:
Code:
 [Farbe, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Format, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Papier, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Umfang, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Verarbeitung, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Nutzen, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Seiten, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Gleiche-Bogen, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][R-D-Bogen, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Nutzen2, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Seiten2, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Gleiche-Bogen2, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][R-D-Bogen2, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][NutzenGTO, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][SeitenGTO, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Gleiche-BogenGTO, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][R-D-BogenGTO, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Offset-SM-ab, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Offset-GTO-ab, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Offset-Fremd-ab, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Typ, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][Typ2, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap][TypGTO, jtlDatabase.classes.AttributeMaps.AusgabeTexteMehrsprachigMap]


Bedeutet das also, dass es sich hier um ein verschachteltes Array in Abhängigkeit der Sprache handelt? Und wie bekomm ich da denn dann die Werte raus... dazu ist leider nix in der Dokumentation hinterlegt ^^

Habe das eben auch mit verschachtelten FOR-Abfragen getestet:
{% for item in Vorgang.AuftragsPositionen.ArtikelPositionen.ErstesObjekt.Artikel.Attribute %}
{% for wert in item[6] %}
{{ wert[0] }}
{% endfor %}
{% endfor %}
Code:
Liquid error: Das Objekt des Typs "System.Int32" kann nicht in Typ "System.String" umgewandelt werden.
 
 Liquid error: Das Objekt des Typs "System.Int32" kann nicht in Typ "System.String" umgewandelt werden.
 
Zuletzt bearbeitet:

Dull

Gut bekanntes Mitglied
14. Juli 2014
129
12
Passau
Ok nach einigem tüfteln hier die Lösung, falls andere das ebenfalls brauchen können.

Die Verschachtelung muss in Attributgruppe, Attributname und Attributsprache entschachtelt werden (Sprache evtl. von Wawi-einstellungen abhängig). Das könnte in einem Beispiel so aussehen:

Code:
{% for item in Vorgang.AuftragsPositionen.ArtikelPositionen.ErstesObjekt.Artikel.Attribute %}
 {% for wert in item[0] %}
    {% for wert2 in wert(HIER-ATTRIBUTNAME-EINFÜGEN) %}
        {{ wert2(Deutsch) }}
   {% endfor %}
 {% endfor %}
{% endfor %}
 
  • Gefällt mir
Reaktionen: 22143 und PAO1908
Ähnliche Themen
Titel Forum Antworten Datum
Neu eBay Attribute - Ändern / Überschreiben JTL-Ameise - Fehler und Bugs 9
Neu Google Shopping – Missing sub-attribute [country] (Versandland fehlt) Plugins für JTL-Shop 6
Ameisen-Vorlagen Attribute und Eigene Felder lassen sich nicht speichern JTL-Wawi 1.11 2
Neu Werte erhöhen per Workflow User helfen Usern - Fragen zu JTL-Wawi 3
Amazon Rechnungslayout geändert, per IDU wird trotzdem die alte Vorlage hochgeladen JTL-Wawi 1.9 2
In Diskussion Ort mit OT per Workflow bereinigen JTL-Workflows - Ideen, Lob und Kritik 3
Neu Banner per OPC auf Artikelseite Allgemeine Fragen zu JTL-Shop 5
Gelöst Workflow - Seriennummer per Mail versenden JTL-Workflows - Fehler und Bugs 1
In Diskussion Warnung per Mail wenn Paket seit x Tagen in Filiale zu Abholung (DHL Sendungsverfolgung) Track&Trace JTL-Workflows - Ideen, Lob und Kritik 6
Rechnungsversand per eMail hin und wieder nicht erfolgreich JTL-Wawi 1.9 1
Dropshipping-Trackingnummer erzeugt keine Versandbenachrichtigung per E-Mail JTL-Wawi 1.8 5
Neu Amazon Angebotspreise per Stored Procedure/Function oder API setzen Amazon-Anbindung - Ideen, Lob und Kritik 0
Ebay Preise per Ameise Importieren JTL-Wawi 1.10 14
Neu Bestellung per Mail, Kunde registriert sich im Nachgang, Bestellung nicht im Kundenkonto User helfen Usern - Fragen zu JTL-Wawi 2

Ähnliche Themen