Nová verze Mergada
Inu, někdo se v létě válí u móře a někdo třeba zase lozí po horách …
A my jim to přejeme! A u toho pilně pracujeme.
Datum a čas nasazení
čtvrtek 22. 8. 2019 v 16:00
Novinky a opravy
- Nový typ pravidla - Import datového souboru:
- Díky tomuto pravidlu můžete pomocí CSV souboru importovat úpravy k již existujícím položkám.
- Formát CSV souboru musí být:
- Kódování
utf-8
. - Oddělovač polí musí být čárka, tedy znak
,
. Hodnoty obsahující doslovnou čárku musí být obaleny v uvozovkách"
. - Soubor může obsahovat neomezený počet řádků či sloupců, ale maximální velikost nahraného souboru je 25 MB.
- Kódování
- Obsah CSV souboru pak má následující strukturu:
- První sloupec představuje tzv. párovací sloupec:
- První řádek prvního sloupce (ekvivalent buňky
A1
v programu Excel či Libre/OpenOffice Calc) definuje párovací element/pole (toto může být buď libovolný existující element v aktuálním exportu, nebo speciální pole:xid
, představující interní ID položky v Mergadu - viz dále). - Další řádky definují hodnoty, podle kterých se bude párovat (záleží také na vybraném párovacím režimu - viz dále).
- První řádek prvního sloupce (ekvivalent buňky
- Druhý sloupec a všechny ostatní sloupce definují názvy existujících elementů, kterým se bude měnit obsah podle toho, co obsahují další řádky v CSV souboru.
- Poznámka 1: Pokud některý sloupec obsahuje neexistující element, takový sloupec se ignoruje; jinými slovy: neexistující elementy se automaticky nevytvoří.
- Poznámka 2: Pokud některý řádek CSV souboru pro element definuje prázdnou hodnotu, takové pole se ignoruje a hodnota elementu zůstane nezměněná; jinými slovy: prázdná hodnota CSV pole Mergadu říká, že hodnotu daného elementu u daného produktu měnit nechcete.
- První sloupec představuje tzv. párovací sloupec:
- Existují 3 režimy párování:
- Párování podle přesné shody: Na produkt se aplikují změny z toho řádku CSV souboru, jehož první sloupec přesně odpovídá hodnotě párovacího elementu (tj. ten element, který datový soubor specifikuje v buňce
A1
) u daného produktu.- Tento režim se dá nastavit v nastavení pravidla v UI.
- Dá se také nastavit, zda při párování záleží či nezáleží na velikosti písmen.
- Pokud soubor definuje více řádků se stejnou párovací hodnotou, v režimu přesné shody platí vždy nejspodnější řádek (řádky dále v souboru přepíšou řádky předchozí).
- Příklad:
- Obsah datového souboru:
ITEM_ID, PRODUCTNAME, HEUREKA_CPC 12, "Kořalka", "130,4" 34, Terénní kočárek s pásy 12, "Kočárek s koly, možná i s dárkem", "5,60" 56,,"12,3" 78, "","7,8" 788, "Nějaký balast"
- Co se stane:
- Produkt s
ITEM_ID = 12
:- Bude mít nově hodnoty elementů:
PRODUCTNAME
Kočárek s koly, možná i s dárkem
.HEUREKA_CPC
5,60
.
- Proč? Protože třetí řádek s přesnou párovací hodnotou
12
přebije první řádek s párovací hodnotou12
.
- Bude mít nově hodnoty elementů:
- Produkt s
ITEM_ID = 34
:- Bude mít nově hodnoty elementů:
PRODUCTNAME
Terénní kočárek s pásy
.HEUREKA_CPC
hodnotu nezmění.
- Bude mít nově hodnoty elementů:
- Produkt s
ITEM_ID = 56
třeba v exportu vůbec není, takže se nic nestane. - Produkt s
ITEM_ID = 78
:- Bude mít nově hodnoty elementů:
PRODUCTNAME
hodnotu nezmění.HEUREKA_CPC
7,8
.
- A proč ne
"Nějaký balast"
? Protože řádek s párovací hodnotouITEM_ID = 788
tomuto produktu neodpovídá přesně.
- Bude mít nově hodnoty elementů:
- Produkt s
- Obsah datového souboru:
- Párování podle částečné shody: Produkt je na řádek v CSV napárovaný i v případě, že hodnota párovacího elementu (specifikovanho v buňce
A1
CSV souboru) daného produktu jen částečně obsahuje hodnotu z párovacího (prvního) sloupce datového souboru.- Tento režim se dá nastavit v nastavení pravidla v UI.
- Dá se také nastavit, zda při párování záleží či nezáleží na velikosti písmen.
- Pokud soubor definuje více řádků se stejnou párovací hodnotou, v režimu částečné shody platí vždy nejvrchnější řádek (pokud se produkt napáruje na nějaký řádek z datového souboru, další řádky se pro tento produkt přeskočí).
- Příklad:
- Obsah datového souboru:
DESCRIPTION, CATEGORYTEXT pro panenky, "Dětské zboží | Hračky | Hračky pro holky | Doplňky pro panenky" kočárek, "Dětské zboží | Kočárky" granáty, "Sport | Střelecké sporty | Airsoft | Příslušenství na Airsoft | Airsoftové granáty" granát, "Oblečení a móda | Módní doplňky | Šperky | Soupravy šperků a bižuterie"
- Co se stane:
- Produkty, jejichž
DESCRIPTION
obsahuje hodnotupro panenky
:- Nová hodnota
CATEGORYTEXT
budeDětské zboží | Hračky | Hračky pro holky | Doplňky pro panenky
.
- Nová hodnota
- Produkty, jejichž
DESCRIPTION
obsahuje hodnotukočárek
:- Nová hodnota
CATEGORYTEXT
budeDětské zboží | Kočárky
.
- Nová hodnota
- Produkty, jejichž
DESCRIPTION
obsahuje hodnotugranáty
:- Nová hodnota
CATEGORYTEXT
budeSport | Střelecké sporty | Airsoft | Příslušenství na Airsoft | Airsoftové granáty
.
- Nová hodnota
- Produkty, jejichž
DESCRIPTION
obsahuje hodnotugranát
(a nikolivgranáty
):- Nová hodnota
CATEGORYTEXT
:Oblečení a móda | Módní doplňky | Šperky | Soupravy šperků a bižuterie
.
- Nová hodnota
- Produkty, jejichž
- Obsah datového souboru:
- Speciální režim párování podle interního Mergado ID produktu:
- Tento režim se nedá nastavit v nastavení pravidla, ale je automaticky aktivován v případě, že datový soubor definuje párovací pole s hodnotou
:xid
. Uživatelské nastavení párovacího režimu je v takovém případě ignorováno a páruje se podle interního ID/:xid
položky v Mergadu. - K čemu tohle je?
- Když si na stránce Produkty vyexportujete položky do CSV souboru, dostanete CSV soubor přesně v tomto formátu - první sloupec CSV zde u každého produktu definuje pole
:xid
. - Pokud si pak tento soubor otevřete v programu Excel či Libre/OpenOffice Calc), můžete snadno nadefinovat velké množství manuálních změn u konkrétních produktů.
- Pokud pak takto upravený soubor nahrajete do pravidla
Import datového souboru
, vaše změny budou reprezentovány konkrétním hromadným pravidlem, které se dá pozastavit, přesouvat, či rovnou smazat.
- Když si na stránce Produkty vyexportujete položky do CSV souboru, dostanete CSV soubor přesně v tomto formátu - první sloupec CSV zde u každého produktu definuje pole
- Příklad:
- Obsah datového souboru:
:xid, "PARAM|Materiál|1", "PARAM|Materiál|2" 123456, "Bavlna 50%", "Ovčí vlna 50%" 123457, "Polyester 30%", "Ocel 70%" 123458, "Sklo 45%", "Merino vlna 55%" 123459, "Železo 23%", "Bavlna 77%" ...
- Efekt by měl být zřejmý z předchozích příkladů…
- Obsah datového souboru:
- Tento režim se nedá nastavit v nastavení pravidla, ale je automaticky aktivován v případě, že datový soubor definuje párovací pole s hodnotou
- Párování podle přesné shody: Na produkt se aplikují změny z toho řádku CSV souboru, jehož první sloupec přesně odpovídá hodnotě párovacího elementu (tj. ten element, který datový soubor specifikuje v buňce
- Funkci sledování produktu při průchodu pravidly jsme konečně integrovali do nového designu stránky Produkty:
- Průchod pravidly u každého produktu dostal vlastní záložku, ve které se dá sledování produktu aktivovat. Na tomto místě se také - až se nasbírají data v rámci aplikování pravidel - dají změny zobrazit.
- Nově jsou graficky zvýrazněny i rozdíly v hodnotách, které jsou jednotlivými pravidly změněny.
- Vylepšili jsme pravidlo pro nastavení UTM parametrů:
- Nově se u tohoto typu pravidla dá explicitně nastavit cílový element, do kterého se UTM parametry mají propsat.
- Již existující pravidla tohoto typu si ponechají již nastavený element (ten jim Mergado dříve nastavovalo na pozadí.)
- Vylepšili jsme pravidlo Hromadně přepsat hodnoty:
- Pokud je u pravidla zapnutý režim regulárních výrazů, tak jdou nyní v pravém sloupečku používat číslované zpětné reference - ty odkazují na text, který regulární výraz odchytne ve sloupečku nalevo.
- Například:
- V levém sloupci se hledá v elementu
PRODUCTNAME
podle regulárního výrazu:^(.*)(Velikost )(.*)( %MANUFACTURER%).*$
- V pravém sloupci lze nyní nově na stejném řádku - např. pro naplnění elementu
PARAM|Velikost
- použít zpětnou referenci v této formě:\3
- Což ve výsledku element
PARAM|Velikost
vyplní obsahem třetí skupiny (tj. obsah třetích závorek zleva) z toho, co regulární výraz najde. - Konkrétněji:
- Pokud má
PRODUCTNAME
hodnotuDámská bunda Le Mesh bílá, Velikost S / M Le Moda
(s tím, žeMANUFACTURER
má u produktu hodnotuLe Moda
), tak se zde elementPARAM|Velikost
naplní hodnotouS / M
.
- Pokud má
- V levém sloupci se hledá v elementu
- Drobné vylepšení UI: Na stránce Produkty je pod názvem uloženého výběru nová ikonka s proklikem na vytvoření nového pravidla - s tím, že právě zobrazený výběr se do formuláře nového pravidla předvyplní.
- Opravili jsme chybu ve vyhledávání na stránce Elementy, které už umí správně vyhledávat řetězce obsahující znak
%
procenta. - V Mergado Store jsme vylepšili řazení subjektů, u kterých se dá appka spravovat, aby odpovídalo řazení e-shopů a exportů na jiných místech v Mergadu.
- Při převodu ceny z formátu Google Nákupy nově správně zohledňujeme hodnotu elementu
G:SALE_PRICE
, pokud je k dispozici (dříve jsme tento element ignorovali a ve všech případech jsme preferovali cenu definovanou vG:PRICE
). - Na stránce Přehled exportu jsme opravili situace, kdy jsme zobrazovali červený stav exportu i v případech, kdy s ním bylo vše v pořádku.
- Opravili jsme chybu, kvůli které u některých formátu padal export výstupního feedu, pokud název nějakého parametru bylo pouhopouhé číslo, tedy např.
<PARAM><PARAM_NAME>1</PARAM_NAME>...</PARAM>
, které se převádělo do formyPARAM|1
, které jsme následně špatně považovali za vícenásobný element. - Mergado umí nové formáty:
- Modemi.cz
- Geizhals.at CSV
- 2Performant CSV
- Google Nákupy/Merchant pro Maďarsko
- Google Nákupy/Merchant pro Rumunsko
- Pokračujeme v práci na optimalizacích :
- Mergado by mělo mít více responzivnější UI v situacích, kdy internetový prohlížeč dělá na pozadí paralelně více dotazů na náš server.
- Podívali jsme se na zoubek podivně pomalému pravidlu Hromadně přepsat podle výběru a zrychlili jsme ho (a nasadili už minulý týden - bystří si již mohli všimnout ).
- Podle dosavadních měření se toto pravidlo zrychlilo více než 10x. Na reálných datech jsme viděli zrychlení zpracování pravidla z 1+ hodiny na 5 minut .
- A další drobné opravy a vylepšení…
Novinky v platformě
- Přidali jsme logování webhooků, které Mergado vaší appce posílá.
- Webhooky se dají prohlížet na stránce Webhooks v administraci vaší appky v Developers.
- U poslaných webhooků se dá prohlédnout hlavička, obsah, ale i odpověď vaší appky.
- Webhooky je možné si nechat zopakovat; tzn. znovu zaslat na hook URL vaší appky.
- Webhooky aplikování pravidel se logují pouze v případě, že hook skončil s chybou - i takový hook se pak přes UI dá poslat znovu - např. kvůli debuggingu.
Může se stát, že v uvedený čas zaznamenáte drobné výpadky Mergada. Děkujeme za pochopení a trpělivost při nasazení nové verze.
V případě dotazů nás neváhejte kontaktovat.