Gelöst String per Smarty zerlegen

lord_icon

Gut bekanntes Mitglied
21. Juli 2007
198
8
Hi,

ich habe in eigene Felder eine Amazon-Kategorie zu stehen.
Z.B. "Schuhe & Handtaschen | 361139011"

Nun würde ich das gern für Amazon fest verknüpfen (also die Klassifikationsnummer[Kategorie-ID])
Leider schlägt das fehl, weil Amazon (logischerweise) nur die ID haben möchste.

Also hab ich mit Smarty was bewegen wollen.ala

{{{assign var="myArray" value="|"|explode: {{ Vorgang.EigeneFelder.Amazon.Amazon_Kategorie }} }}

Wenn ich mir das Ergebniss im Browser anschaun möchte. dann erscheint:
"Liquid error: Der Wert darf nicht NULL sein. Parametername: input"

Dann hängt sich die WAWI auf und ich muß von vorn beginnen.
Das erschwert natürlich alles erheblich.

Kann einer Helfen was zu tun ist ?
 
Zuletzt bearbeitet:

fibergirl

Sehr aktives Mitglied
14. April 2016
829
254
Ich seh da nur auf die Schnelle (vom Handy, Tapatalk), dass Du 5 Klammern auf, aber nur 4 Klammern zu machst.
Vielleicht hat es damit etwas zu tun?


Gesendet von meinem I9195I mit Tapatalk
 

lord_icon

Gut bekanntes Mitglied
21. Juli 2007
198
8
Sorry... nochmal von vorn. Ist kein Smarty. Da wo ich bin ist es DotLiquid

Ich bin auch schon recht nah... der Lösung.


Code:
{% assign words = Vorgang.EigeneFelder.Amazon.Amazon_Kategorie | Split: ' =>'  %}
{{ words.first }}

{{Vorgang.EigeneFelder.Amazon.Amazon_Kategorie | Split: ' =>'| }}

Die Vorschau/Auswertung bringt:
Code:
1760307031

1760307031 Schuhe & Handtaschen/Schuhe/Damen/Pumps
Die erste Zeile ist also schon mal korrekt. Nur erzeugt die assign words-Zeile bei der ausgabe eine Leerzeile.
Sprich: ich hab eine Leerzeile und in der 2ten Zeile erst die Amazon-Kategorie. Das wiederrum versteht die WAWI-Vorlage aber nicht.

Ich müsste also in der ersten Zeile schon den passenden Wert ausgeben. Aktuell greift da aber garnichts als Ausgabe
Z.B.
Code:
{% assign words = Vorgang.EigeneFelder.Amazon.Amazon_Kategorie | Split: ' =>'  | words.first % }

Hab ich da noch was vergessen ?
 

lord_icon

Gut bekanntes Mitglied
21. Juli 2007
198
8
ich hab's rausgefunden
Code:
{% assign words = Vorgang.EigeneFelder.Amazon.Amazon_Kategorie | Split: ' =>'  % } {{words.first}}

Wichtig hier war für meine Konstallation, dass {{ words.first }} hinter bzw. in der ersten Zeile steht. PAckt man den Befehl in die 2te Zeile (wegen Lesefreundlichkeit) dann ergibt das im Output auch eine 2te Zeile.
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
395
@lord_icon - Ja, diese implizite Formatierung in DotLiquid ist schon echt blöd. Wenn man z.B. zur besseren Lesbarkeit des Codes mit Einrückungen arbeitet, sagen wir mal bei Schleifen, wo das ja echt Sinn macht, dann erzeugen alle Befehle, die einen Wert ausgeben, vorne dran genauso viele Leerzeichen, wie man in der Einrückung hat. - Klingt für mich, als ob da jemand beim Coden gepennt hätte ... :eek:
 

Christian ausm Westerwald

Gut bekanntes Mitglied
7. Januar 2017
162
11
Hallo,

kann da über den Code nochmal jemand drüber schauen?
Bei mir zeigt er immer beide wörter an.

Der Code Lautet wie oben angegeben:

{% assign words = Vorgang.EigeneFelder.Amazon_Sonstiges.Amazon_Kategorie | Split: '=>' %} {{words.first}}

Bekomme es einfach nicht hin das er mir nur die ID anzeigt, also das erste Wort was ich in den Eigenen Felder hinterlegt habe.
:(

LG Christian
 

Christian ausm Westerwald

Gut bekanntes Mitglied
7. Januar 2017
162
11
Anbei zwei bilder.

Der Text der aufgespalten werden soll ist durch ein leerzeichen getrennt.
Ausgegeben werden soll ja nur die Zahl 123456.

Screenshot 38 ist die vorschau...
 

Anhänge

  • Screenshot (37).png
    Screenshot (37).png
    33 KB · Aufrufe: 16
  • Screenshot (38).png
    Screenshot (38).png
    25,6 KB · Aufrufe: 16
Zuletzt bearbeitet:

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
6.731
1.617
Berlin
Kollega :)

dann musst du doch anstelle von => ein Leerzeichen eintragen :)

{% assign words = Vorgang.EigeneFelder.Amazon.Amazon_Kategorie | Split: ' ' % } {{ words.first }}
 

Christian ausm Westerwald

Gut bekanntes Mitglied
7. Januar 2017
162
11
AHA..... :D

@Xantiva
weil ich kein Plan davon habe und mir alles durch lesen selbst beigebracht habe :).
In diesem Fall habe ich nicht richtig gelesen, oder einfach drauf verlassen was unter #3 steht :) da ist nämlich auch kein = Zeichen zu sehen.

VIELEN DANK an euch euch beide.
Die Lösung war so einfach.

PS: An dem Problem hing ich schon vor Monaten und ich glaube es würden sich alle hier schlapp lachen wenn se wüssten wie ich dieses Problem (echt umständlich) gelöst hatte :)

Euch noch ein schönes Wochenende und danke für die schnelle hilfe!
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu String am Ende kürzen User helfen Usern - Fragen zu JTL-Wawi 3
Uncaught TypeError... ($priority) must be of type int, string given Upgrade JTL-Shop4 auf JTL-Shop5 0
Neu Plattform Feld per SQL setzen - mehrere Marken unter einer Firma verkaufen User helfen Usern - Fragen zu JTL-Wawi 3
Neu Worker WMS Picklisten per Schaltfläche einmalig starten Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Neu Kundendaten extern verschlüsseln (Für den eigenen Shop) und per Import importieren Technische Fragen zu Plugins und Templates 2
Neu Wie kann man Anzahl der VPE per SQL abfragen? User helfen Usern - Fragen zu JTL-Wawi 1
Neu Per Button/ Link Artikel in den Warenkorb legen Technische Fragen zu Plugins und Templates 1
Artikel per Ameise mehreren Kategorien zuordnen - Artikeldatenimport in WaWi nicht mehr vorhanden JTL-Wawi 1.8 6
Workflow = Gewinn unter 30 % vom netto = per Mail informiert JTL-Wawi 1.6 10
Neu WMS/Packtisch+ ... manuelle Workflows per Barcode auslösen JTL-WMS / JTL-Packtisch+ - Ideen, Lob und Kritik 0
Wie kann ich etwas in der WAWI Datenbank per SQL ändern? JTL-Wawi 1.8 2
Gutscheine aktualisieren bzw. mehrere per Import deaktivieren? Allgemeine Fragen zu JTL-Vouchers 1
Neu shopapotheke per Anbindung eBay-Anbindung - Fehler und Bugs 1
Neu Umlagerung per Ameisen-Import JTL-Wawi - Fehler und Bugs 1
Neu In einen Portlet-Container im Frontend per Ajax Datennachladen (weitere anzeigen) Technische Fragen zu Plugins und Templates 1
Neu eBay Plus Angebote per Ameise steuerbar ? Eigene Übersichten in der JTL-Wawi 6
Neu Zugang zu Kategorien nur per Kennworteingabe Plugins für JTL-Shop 3
Neu Eigene Felder (Kunde) in csv-Datei per Ausgabe (Auftrag oder Lieferschein) Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Lieferadresse / Rechnungsadresse im Auftrag per Doppelklick wählbar machen JTL-Wawi - Ideen, Lob und Kritik 0
Datenbank-Abfrage per SQL nach Lagermenge pro Artikel & Warenbereich (WMSLager) JTL-Wawi 1.8 1
Neu Lieferantenbestellung als CSV mit selbst festgelegten Spalten per Mail senden Arbeitsabläufe in JTL-Wawi 1
Neu Benachrichtigung per Workflow bei Wareneingang User helfen Usern - Fragen zu JTL-Wawi 24
Neu Weiterleitungen direkt per Datenbank einfügen aufgrund Größe bzw. Anzahl? Betrieb / Pflege von JTL-Shop 9
Gelöst Per Workflow im Servicedesk eine Mail versenden. Gelöste Themen in diesem Bereich 4
Variationen per Ameise umbenennen JTL-Wawi 1.8 1
Workflow Auftraqspositionen per Email an Kunden senden JTL-Wawi 1.7 3
Neu Ist es möglich per Ameise Kunden zu löschen? Arbeitsabläufe in JTL-Wawi 2
Neu LS-Pos Kundenrechnung per Email Fragen rund um LS-POS 1
Neu Warenkorb per Link teilen Allgemeine Fragen zu JTL-Shop 7
Ausgabe per E-Mail geht plötzlich nicht mehr, Testmail aus Wawi aber schon JTL-Wawi 1.6 22
Beantwortet Kunde von Firma per Workflow setzen JTL-Workflows - Ideen, Lob und Kritik 1
Neu Datenbankebene per SQL löschen Eigene Übersichten in der JTL-Wawi 6
Neu Consent Status per Smarty Var abfragen Technische Fragen zu Plugins und Templates 2
Neu Smarty-Fehler im Logfile JTL-Shop - Fehler und Bugs 1
Neu Smarty Block in Productdetails Templates für JTL-Shop 0

Ähnliche Themen