Czym jest to zadanie i kiedy działa
To zaplanowane zadanie Odoo o nazwie Shopify Sync Products. Działa co godzinę i po instalacji modułu jest wyłączone, więc dopóki ktoś go nie włączy, nic nie robi. Istnieje we wszystkich opublikowanych gałęziach modułu (Odoo 17, 18, 19 i 20); w Odoo 17 ma ustawione powtarzanie bez końca.

Sklepy otworzysz z menu Shopify › Configuration › Stores. Jeśli nie widzisz fragmentu menu, chodzi o uprawnienia: część Shopify wymaga Viewer, a część Configuration wymaga Operator.


Przykład, by prześledzić cały przebieg
Przykład Przypadek poglądowy: firma i jej dane są zmyślone, żeby pokazać przebieg.
Casa Olivar to wymyślona firma z artykułami gospodarstwa domowego, z jednym głównym sklepem Shopify i drugim, małym sklepem, oba połączone z jej Odoo. Marta, administratorka, instaluje moduł i włącza zadanie Shopify Sync Products. W Odoo 20 w każdym przebiegu zadanie robi, gdy nadejdzie czas kolejnego uruchomienia, co następuje:
- Odoo uruchamia zadanie i najpierw sprawdza, czy osoba, która je wykonuje, jest administratorem. Jeśli nie, zadanie zatrzymuje się z komunikatem
Only an administrator can run this scheduled action.i nie robi nic więcej. - Wybiera sklepy, z którymi ma pracować: aktywne, z włączoną synchronizacją produktów i z zapisanymi danymi uwierzytelniającymi, czyli tokenem dostępu albo sekretem API aplikacji. Drugi sklep Casa Olivar nie ma jeszcze żadnego z nich, więc nie wchodzi do przebiegu.
- Dla każdego wybranego sklepu zadanie pobiera ze Shopify produkty stronami.
- Każdy produkt jest zapisywany osobno. Jeśli jeden zawiedzie, zadanie zapisuje ostrzeżenie w dzienniku technicznym i przechodzi do następnego: jeden zły produkt nie przerywa przebiegu. Zadanie liczy produkty, które udało się zapisać.
- Przebieg kończy się, gdy nie ma już stron albo gdy osiągnięto limit stron sklepu. Jeśli przebieg zakończy się w całości, zadanie zapisuje bieżącą godzinę jako ostatni moment synchronizacji produktów. Jeśli przerwał go limit i zostały strony, zadanie może zapisać zamiast tego datę aktualizacji ostatniego widzianego produktu, o ile jest późniejsza niż dotychczasowa: nigdy wstecz. Chodzi o to, by następny przebieg kontynuował od tego miejsca, zamiast uznać za przejrzane to, czego nie przeczytano.
- Jeśli synchronizacja całego sklepu zawiedzie, zadanie zapisuje błąd w dzienniku technicznym i przechodzi do następnego sklepu.
- Jest jeden wyjątek: jeśli FlexigoTech Cloud wstrzyma synchronizację, przebieg dla tego sklepu zatrzymuje się bez pomijania żadnego produktu i nie jest rejestrowany jako nieudany.
W przypadku Casa Olivar główny sklep ma więcej stron produktów niż wynosi limit. Pierwszy przebieg zostaje przerwany, a następny, godzinę później, wznawia od ostatniego widzianego produktu, aż któryś przebieg dojdzie do końca.
Co sprawdzić, gdy nic nie robi
Przejdź przez te kontrole po kolei.
- Zadanie jest wyłączone. Tak jest po instalacji. Dopóki go nie włączysz, nie działa.
- Sklep nie spełnia warunków. Zadanie bierze tylko sklepy aktywne, z włączoną synchronizacją produktów i z zapisanym tokenem dostępu albo sekretem API aplikacji. Sklep z danymi uwierzytelniającymi klienta może nie mieć tokenu aż do pierwszego wywołania, dlatego wystarczą same dane uwierzytelniające. Sklepy otworzysz z
Shopify › Configuration › Stores. - Wykonujący nie jest administratorem. Zadanie zatrzymuje się z komunikatem
Only an administrator can run this scheduled action.. - FlexigoTech Cloud wstrzymał synchronizację. Przebieg dla danego sklepu zostaje przerwany i nie jest rejestrowany jako nieudany. Bez subskrypcji albo przy zawieszonej usłudze zatrzymuje się to, co daje subskrypcja; dane zostają w Twoim Odoo.
- Przebieg przerwał limit stron. Jeśli zostały strony, następny przebieg kontynuuje od ostatniego widzianego produktu.
- Brakuje konkretnego produktu. Jeśli ten produkt nie daje się zapisać, zadanie go pomija, zostawia ostrzeżenie w dzienniku technicznym i idzie dalej.
Czego uczy ten przykład
Produktu z problemami zadanie nie przetwarza, a sklep, który zawodzi, nie blokuje przetwarzania następnego. Zadanie zatrzymuje się natomiast wtedy, gdy nie wykonuje go administrator; wstrzymanie przez FlexigoTech Cloud przerywa przebieg dla danego sklepu. Dlatego gdy „nic nie robi”, najpierw sprawdź, czy zadanie jest włączone i czy sklep spełnia warunki.
Jak pomaga FlexigoTech
Moduł jest płatny jednorazowo za wersję i wymaga subskrypcji FlexigoTech Cloud (plan Konektor: 49 €/mies. albo 490 €/rok, netto (bez VAT)). Połączenie przechodzi przez FlexigoTech Cloud, który przechowuje dane uwierzytelniające w postaci zaszyfrowanej, pilnuje synchronizacji i wysyła e-mail, gdy coś zawiedzie. Moduł jest opublikowany dla Odoo 17, 18, 19 i 20; cena każdej wersji jest w karcie w Odoo Apps i na stronie modułu. Z subskrypcją moduł dla nowych wersji Odoo jest w cenie, jeśli kupiłeś go na flexigotech.com; w Odoo App Store każdą wersję kupuje się tam.
Jeśli wdrażasz Odoo i chcesz sprawdzić, jak wygląda synchronizacja Twojego katalogu, FlexigoTech wdraża Odoo 17, 18, 19 i 20 oraz tworzy konektory i integracje na zamówienie.
Czytaj dalej
Sprawdzone w kodzie źródłowym konektora (wersja 17.0 i 20.0) i w podlinkowanych źródłach
Źródła
- Kod modułu: flexigobe_shopify_seller_connector 20.0 (d7e627b4): data/ir_cron_data.xml
- Kod modułu: flexigobe_shopify_seller_connector 17.0 (437257e3): data/ir_cron_data.xml
- Kod modułu: flexigobe_shopify_seller_connector 20.0 (d7e627b4): models/shopify_instance.py
- Kod modułu: flexigobe_shopify_seller_connector 20.0 (d7e627b4): models/fgt_cloud.py
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_seller_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
