Synchronizácia variabilných produktov z Omegy do e-shopu

Systém KROS Omega, resp. Konektor API neponúka možnosť exportovať varianty skladových kariet do e-shopu. Preto je potrebné synchronizáciu riešiť špecifickým spôsobom – evidovať skladové karty v Omege tak, aby identifikátory produktov niesli informáciu o variante produktu. Takto evidovaná skladová karta je následne na strane e-shopu spracovaná rozparsovaním identifikátora.

Nastavenie prenosu skladových kariet v KROS Omege
KROS Omega neponúka prenášať varianty skladových kariet do e-shopu

Pod identifikátorom produktu môžeme rozumieť číslo karty, EAN, PLU alebo JKPOV. Tieto identifikátory ponúka KROS Omega zapisovať do skladových kariet a podľa nich následne produkty synchronizovať s e-shopom.

Príklad synchronizácie variabilných produktov

Predpokladajme, že v Omege máme evidovaný tovar (skladové karty) typu oblečenie. Každý variant je v Omege evidovaný ako samostatná skladová karta, keďže ich naskladňujeme samostatne, avšak v e-shope nechceme mať synchronizované produkty ako jednoduché produkty, ale variabilné, tzn. v produkte chceme „zlúčiť“ jeho vlastnosti.

Ako príklad nám poslúži produkt s názvom Tričko ABC, ktorý máme v Omege naskladnený v rôznych veľkostiach a farbách. Predpokladajme, že v e-shope chceme mať veľkosti a farby ako vlastnosti variabilného produktu a súčasne chceme produkty synchronizovať podľa kľúčovej položky Číslo karty. V takom prípade produkt môže mať číslo karty zapísané v tvare trickoabc-M-biela, kde trickoabc je unikátny identifikátor produktu, M je veľkosť a biela je farba. Znak pomlčky je oddeľovač (separátor) jednotlivých príznakov.

Ďalšie varianty tohto produktu môžu mať zápisy čísla kariet v tvare napr. trickoabc-L-biela, trickoabc-XL-biela, trickoabc-M-hnedá, trickoabc-L-hnedá, apod.

Príklad evidovania skladových kariet ako variantov v KROS Omege
Príklad evidovania skladových kariet ako variantov v KROS Omege

Nastavenie v plugine WooCommerce KROS Omega Connector

Náš plugin WooCommerce KROS Omega Connector umožňuje synchronizovať variabilné produkty z Omegy prostredníctvom definovania tzv. parsovacej masky. V podstate ide o spôsob spracovania identifikátora skladovej karty, ktorá je exportovaná z Omegy. V plugine je možné definovať aj viac parsovacích masiek pre prípad, že v Omege máme skladové karty s rôznymi typmi variantov.

Postup definovania parsovacej masky v plugine

1. Najskôr potrebujeme mať v e-shope vytvorené všetky vlastnosti produktov (pozn. varianty, nie hodnoty), ktoré budeme mať v skladových kartách v Omege evidované v identifikátoroch. Napríklad Veľkosť, Farba, Materiál. Každá vlastnosť nesie vo WooCommerce e-shope unikátny príznak, tzv. slug. Definícia slugov je dôležitá, pretože ich budeme používať v parsovacej maske. Príklady slugov – Veľkosť = velkost, Farba = farba, Materiál = material.

2. V nastavení pluginu WooCommerce KROS Omega Connector v záložke Produkty je položka Synchronizácia variabilných produktov. Do tejto položky potrebujeme zapísať parsovaciu masku, podľa ktorej bude plugin synchronizovať produkty v e-shope exportované z Omegy.

3. Parsovacia maska musí obsahovať príznaky, tzv. placeholdre a musí mať zachovanú štruktúru (poradie placeholdrov). Každý placeholder musí byť zapísaný v zložených zátvorkách a medzi jednotlivými placeholdrami musí byť zapísaný separátor (oddeľovač).

4. Parsovacích masiek môže byť viac, každú masku je potrebné oddeliť čiarkou. Každá parsovacia maska by mala reprezentovať možné kombinácie zápisu identifikátor variabilného produktu.

5. Prvým placeholdrom v maske musí byť {product}, ktorý identifikuje produkt ako hlavnú kartu.

6. Ďalšími placeholdrami v maske definujeme už samotné vlastnosti (varianty) produktu. Placeholdre vlastností sú v podstate slugy vlastností v e-shope.

Príklad zápisu parsovacích masiek

{product}-{velkost},{product}-{velkost}-{farba},{product}-{velkost}-{farba}-{material}

Uvedený príklad masiek parsuje tieto prípady identifikátorov produktov:

{product}-{velkost} – príklad identifikátora produktu 000127-XL

{product}-{velkost}-{farba} – príklad identifikátora produktu 000127-XL-biela

{product}-{velkost}-{farba}-{material} – príklad identifikátora produktu 000127-XL-biela-coretex

V prípade, že niektorú vlastnosť produkt nemá, namiesto placeholdra zadáme prázdnu medzeru. Napríklad produkt Čiapka Craft coretexová nemá veľkosť a ani farbu, ale má len materiál, takže identifikátor produktu bude 000130- – -coretex

Príklad zápisu parsovacích masiek pre synchronizáciu variabilných produktov z Omegy do e-shopu