Erweiterte Feldfunktionen: Unterschied zwischen den Versionen

Aus Wiki csv4you
Wechseln zu:Navigation, Suche
(IF-ELSE - Anweisung)
Zeile 113: Zeile 113:
 
ansonsten schreibe '0' in das Feld.
 
ansonsten schreibe '0' in das Feld.
 
  {IF 'Aktiv' == 'Ja'}[Bestand]{ELSE}{IF 'Bestand' > '10'}10{ELSE}0{ENDIF}{ENDIF}  
 
  {IF 'Aktiv' == 'Ja'}[Bestand]{ELSE}{IF 'Bestand' > '10'}10{ELSE}0{ENDIF}{ENDIF}  
 +
 +
== Spezifische Schnittstellen-Platzhalter ==
 +
=== WooCommerce ===
 +
ASIN-Platzhalter
 +
[ASIN-{COUNTRY}]
  
  

Version vom 10. November 2015, 12:18 Uhr

Für individuelle Formatierungen, Berechnungen und Abfragen einzelner Spalteninhalte stehen Ihnen verschiedene Funktionen zur Verfügung. Bitte achten Sie auf die korrekte Verwendung der Pipe |, dem einfachen Hochkomma ' sowie der geschwungenen und eckigen Klammern {} []. Nachfolgend finden Sie alle aktiven Funktionen mit Beispielen.

Freifelder anlegen und zuweisen

Im Bereich Datenpool ->Grundeinstellungen ->Aktionen können bis zu 20 individuelle Freifelder definiert werden, z.B. für Spalten einer Importdatei, die zu keinem der vorhandenen Feldbezeichner passen. Die Zuweisung von Freifeldern erfolgt über die Platzhalter [spec1], [spec2], usw. ... bis [spec20].

spec1, spec2, spec3, spec4 usw. - Freifelder zuweisen

Beispiel: Sie haben Ihrem 1. Freifeld den Namen MobileLink gegeben, da Ihre Importdatei eine solche Spalte mit entsprechenden Werten enthält. Auslesen bzw. zuweisen lassen sich alle Werte dieser Spalte mit folgendem Platzhalter:

[spec1]

Feldinhalte formatieren, berechnen und filtern

replace - Feldinhalt ersetzen

Beispiel... Das Komma im Preis Ihrer Importdatei wird durch einen Punkt ersetzt:

[price|replace:',':'.']

truncate - Feldinhalt kürzen

Beispiel... Vom Feld 'Bildname1' Ihrer Importdatei werden nur die ersten 4 Zeichen ausgegeben bzw. importiert:

[pic1|truncate:4]

Beispiel... Aus Ihrer Art.-Nummer möchten Sie 6 Zeichen ab Position 3 importieren:

[itemno|truncate:6:3]

lowercase - Feldinhalt mit Kleinbuchstaben

Beispiel... Bildname1 "GTN765.jpg" soll in Kleinbuchstaben (gtn756.jpg) umgewandelt werden:

[pic1|lowercase]

net - Preis Netto

Beispiel... Ihre Importdatei beinhaltet Bruttopreise. Sie benötigen den Preis jedoch netto, abzgl. (19%) Mehrwersteuer:

[price|net]

html - Texte mit Html

Beispiel... Alle Beschreibungstexte sollen mit HTML-Befehlen importiert werden (wenn vorhanden):

[description|html]

text - Texte ohne Html mit Zeilenumbrüchen

Beispiel... Aus den Artikelbeschreibungen Ihrer Importdatei werden ggf. vorhandene HTML-Tags entfernt und nur der eigentliche Text wird importiert. Zeilenumbrüche im Text werden formatiert ausgegeben:

[description|text]

clear - Texte ohne Html und ohne Zeilenumbrüche

Beispiel... Alle Beschreibungen werden unformatiert und ohne Zeilenumbrüche als fortlaufender Text dargestellt:

[description|clear]

split - Extrahieren von Daten aus einem Datenfeld mit Trennern

Beispiel 1... Feldinhalt sieht wie folgt aus: "Bildpfad1|Bildpfad2|Bildpfad3]". Als Datentrenner im System bei uns ist als Standardtrenner die Pipe | voreingestellt (senkrechter Strich). Es soll nur der Wert 'Bildpfad2' übernommen werden:

[FeldNameBild|split:2]

Beispiel 2... Feldinhalt: "Bildpfad1|-|Bildpfad2|-|Bildpfad3". Datentrenner 2 Pipes mit Bindestrich in der Mitte |-| (als Beispiel für einen eigenen Trenner). Aus dem Feldinhalt mit 3 Werten soll nur der Wert "Bildpfad3" übernommen werden:

[FeldNameBild|split:3:|-|]

Beispiel 3... Feldinhalt eines Feldes 'Category': "Möbel|Wohnzimmer|Sessel". Datentrenner ist wieder die Pipe. Wenn Sie einen anderen Trenner verwenden, dann bitte im Beispiel 2 schauen. In 3 Spalten wird die Übernahme der einzelnen Werte "Möbel", "Wohnzimmer" und "Sessel" wie folgt vorbereitet:

[Category|split:1]
[Category|split:2]
[Category|split:3]

math - Berechnungen

Beispiel 1... Addiere 100 auf den aktuellen Preis:

[math|price+100]

Beispiel 2... Multipliziere den aktuellen Preis mit 1.5, benutze als Dezimaltrennzeichen den Punkt:

[math|price*1.5|.]

Beispiel 3... Addiere Inhalte aus den Feldern 'price' und 'shippingCost':

[math|price+shippingCost]

date() - Datumswerte

Beispiel 1... Aktuelles Startdatum mit Angabe Stunde und Minute (z.B. für Auktionen):

date(d.m.Y H:i)

Beispiel 2... Aktuelles Startdatum mit zusätzlicher Angabe der Sekunden ausgeben:

date(d.m.Y H:i:s)

Beispiel 3... Startdatum mit Stunde und Minute jedoch 2 Tage zurück gesetzt:

date(d.m.Y H:i|-2)

Verknüpfung von Funktionen

[func1 {func2}] - 2 Funktionen verbinden

Beispiel 1... Ersetzt in einem String https in http und a-domain.com in b-domain.com:

[pic1|replace:'https':'http'{replace:'a-domain.com':'b-domain.com'}]

Beispiel 2... Sie möchten Datumswerte, z.B. "10.09.2015 17:55:49" in "10.09.2016" ändern. Dazu muss der 1. Teil des Datums gesucht und '2015' durch '2016' ersetzt werden. Der Trenner ist das Leerzeichen:

[Datum|split:1: {replace:'2015':'2016'}]

[func1 {func2}{func3}] - 3 Funktionen verbinden

Beispiel... Der Titel "Kette, schwarz-rot Metallik, 80cm" wird in "metallic" umgewandelt. Dazu muss der 3. Teil des Titels gesucht, alle Buchstaben klein geschrieben und ein Buchstabe ersetzt werden. Als Trennzeichen der Werte innerhalb des Titels wird das Leerzeichen definiert (vor der ersten geschwungenen Klammer):

[title|split:3: {lowercase}{replace:'k':'c'}]

Bedingte Anweisungen und Verzweigungen (Abfragen)

IF - Anweisung

Beispiel... Wenn 'SpalteBestand' Wert größer 5, schreibe 5 - ansonsten schreibe nichts in das Feld:

{IF 'SpalteBestand' > '5'}5{ENDIF}

IF-ELSE - Anweisung

Beispiel 1... Wenn 'SpalteVerfuegbar' Wert nicht wie 'ja', schreibe 0 - ansonsten schreibe 1.

{IF 'SpalteVerfuegbar' != 'ja'}0{ELSE}1{ENDIF}

Beispiel 2... Wenn 'Lager' Wert leer, schreibe 'nein' - ansonsten schreibe 'ja'.

{IF 'Lager' == ''}nein{ELSE}ja{ENDIF}

IF-ELSEIF-ELSE - Anweisung

Beispiel 1... Wenn 'SpalteVerfuegbar' Wert=nein, schreibe 0 - wenn 'SpalteVerfuegbar' Wert=ja, schreibe 1 - wenn Beides nicht zutrifft schreibe nichts in das Feld.

{IF 'SpalteVerfuegbar' == 'nein'}0{ELSEIF 'SpalteVerfuegbar' == 'ja'}1{ELSE}{ENDIF}

Beispiel 2... ist etwas komplexer. Es gibt z.B. Variantenfelder für Konfektionsgrößen. Der folgende Code ersetzt die Größenangaben 36-54 aus der Importdatei (Feldname: 'Variation_Size') in die gewünschten Buchstaben-Größenbezeichner, z.B. S, M, L, XL usw.:

{IF 'Variation_Size' == '36'}XXS
 {ELSEIF 'Variation_Size' == '38'}XS
 {ELSEIF 'Variation_Size' == '40'}S
 {ELSEIF 'Variation_Size' == '42'}M
 {ELSEIF 'Variation_Size' == '44'}L
 {ELSEIF 'Variation_Size' == '46'}XL
 {ELSEIF 'Variation_Size' == '48'}XXL
 {ELSEIF 'Variation_Size' == '50'}3XL
 {ELSEIF 'Variation_Size' == '52'}4XL
 {ELSEIF 'Variation_Size' == '54'}5XL
 {ELSE}6XL
{ENDIF} 

IF-ELSE-ELSE - Anweisung

Beispiel... Wenn Spalte 'Aktiv' Wert='Ja', übernehme Wert aus Spalte 'Bestand' - ansonsten wenn Wert 'Bestand' größer 10, schreibe '10' - ansonsten schreibe '0' in das Feld.

{IF 'Aktiv' == 'Ja'}[Bestand]{ELSE}{IF 'Bestand' > '10'}10{ELSE}0{ENDIF}{ENDIF} 

Spezifische Schnittstellen-Platzhalter

WooCommerce

ASIN-Platzhalter

[ASIN-{COUNTRY}]


Weitere Funktionen richten wir je nach Bedarf auf Anfrage ein.