Zadanie i ekran, który zasila
Zaplanowane zadanie Shopify Refresh Product Analytics istnieje we wszystkich opublikowanych gałęziach modułu: 17.0, 18.0, 19.0 i 20.0. Działa raz dziennie i jest aktywne po instalacji. W Odoo 17.0 jest ponadto skonfigurowane tak, by powtarzać się bez końca. Tak działa zadanie w Odoo 20.0.
Jego wynik otworzysz z menu Shopify › Catalog › Restock Plan. Aby zobaczyć to menu, potrzebujesz uprawnienia Viewer w sekcji Shopify i w sekcji Catalog: jeśli brakuje któregoś z nich, nie zobaczysz tej sekcji.


Chronologia jednego przebiegu
- Przy instalacji modułu Zadanie jest aktywne. W Odoo 17.0 jest skonfigurowane tak, by powtarzać się bez końca.
- Raz dziennie Odoo uruchamia
Shopify Refresh Product Analytics, które wykonuje przeliczenie analityki produktów. - Pierwsza kontrola Sprawdza, czy uruchamia je administrator. Jeśli nie, zatrzymuje się z komunikatem
Only an administrator can run this scheduled action.i nic nie jest liczone. - Wyszukiwanie instancji Szuka aktywnych instancji Shopify. Domyślnie z limitem stu instancji.
- Instancja po instancji Przechodzi przez nie po kolei. Każda jest przetwarzana w bloku przechwytującym błędy: jeśli któraś zawiedzie, zadanie odrzuca oczekujące zmiany i przechodzi do następnej.
- Odczyt sprzedaży Dla każdej instancji sumuje według produktu sprzedane sztuki z ostatnich siedmiu, trzydziestu i dziewięćdziesięciu dni oraz przychody z ostatnich trzydziestu. Liczy tylko pozycje z produktem z zamówień tej instancji, które są w jednym z dwóch statusów uznawanych w kodzie za sprzedane.
- Produkty bez sprzedaży Dodaje produkty z aktywnym powiązaniem z tą instancją, nawet jeśli nic nie sprzedały, aby i one miały wiersz.
- Obliczenia dla produktu Wylicza prędkości, pokrycie, przewidywaną datę braku zapasu i zalecaną ilość (szczegóły niżej).
- Zapis Jeśli dla tej instancji i tego produktu wiersz już istnieje, aktualizuje go; jeśli nie, tworzy go. W każdym wierszu zapisuje moment aktualizacji.
- Koniec Gdy przejdzie przez wszystkie instancje, zadanie kończy działanie.
Co liczy dla każdego produktu
- Sztuki i prędkość. Dla każdego okna (siedem, trzydzieści i dziewięćdziesiąt dni) zapisuje sprzedane sztuki oraz prędkość dzienną, czyli te sztuki podzielone przez liczbę dni okna. Przychody zapisywane są tylko dla okna trzydziestodniowego.
- Prędkość planowania. Jest to prędkość z trzydziestu dni.
- Zapas. Bierze ilość dostępną produktu w firmie instancji.
- Pokrycie w dniach. To zapas podzielony przez prędkość planowania. Jeśli ta prędkość wynosi zero, wartość to 9999, gdy jest zapas, i zero, gdy go nie ma.
- Przewidywana data braku zapasu. Liczona tylko wtedy, gdy jest prędkość planowania i zapas: to dzisiejsza data plus pełne dni pokrycia.
- Zalecana ilość. Jeśli jest prędkość planowania, mnoży tę prędkość przez sumę domyślnego czasu dostawy instancji (zero, jeśli pusty) i docelowych dni pokrycia (trzydzieści, jeśli puste, i co najmniej jeden), odejmuje zapas, zaokrągla i nie schodzi poniżej zera. Bez prędkości wynosi zero.
- Klasa ruchu i status uzupełnienia. Również je wypełnia zadanie: klasę na podstawie prędkości z trzydziestu i z dziewięćdziesięciu dni, a status na podstawie zapasu, prędkości, pokrycia, czasu dostawy i celu.

Co sprawdzić, gdy nic się nie dzieje
Kod tłumaczy kilka przypadków, w których Restock Plan wygląda na nieruchomy lub pełen zer:
- Zadanie jest aktywne. Po instalacji jest aktywne; sprawdź, czy tak pozostało.
- Uruchamia je administrator. Jeśli nie, zatrzymuje się z komunikatem
Only an administrator can run this scheduled action., zanim cokolwiek zmieni. - Instancja jest aktywna. Zadanie przechodzi tylko przez aktywne instancje, a przy wywołaniu z zadania limit wynosi sto.
- Są sprzedaż lub powiązanie. Produkt trafia do przetwarzania, jeśli ma pozycje zamówień tej instancji z ostatnich dziewięćdziesięciu dni w statusach uznawanych w kodzie za sprzedane albo jeśli ma aktywne powiązanie z instancją. Poza tym zadanie nie tworzy dla niego wiersza; jeśli miał już wiersz z poprzedniego przebiegu, nie jest on aktualizowany i zachowuje wartości oraz datę ostatniej aktualizacji.
- Zera mogą być prawidłowe. Powiązany produkt bez niedawnej sprzedaży i bez zapasu ma prędkości, przychody i pokrycie równe zero. Jeśli ma zapas, ale nie sprzedał się w ciągu trzydziestu dni, jego pokrycie wynosi 9999 i nie ma daty braku zapasu.
- Instancja może zawodzić. Jeśli w obrębie instancji wystąpi błąd, zadanie odrzuca oczekujące zmiany i przechodzi do następnej, więc pozostałe są nadal przetwarzane.
- Uprawnienia do podglądu. Bez
ViewerwShopifyi wCatalognie zobaczysz menu, nawet jeśli zadanie się wykonało.
Jak pomaga FlexigoTech
FlexigoTech wdraża Odoo 17, 18, 19 i 20 oraz tworzy konektory i integracje na zamówienie, na wypadek gdybyś chciał dostosować sposób zasilania uzupełnień. Moduł jest opublikowany w Odoo Apps dla 17.0, 18.0, 19.0 i 20.0 (karta, strona modułu). Jest płatny jednorazowo za wersję i wymaga subskrypcji FlexigoTech Cloud, plan Konektor: 49 €/mies. lub 490 €/rok netto (bez VAT). Połączenie przechodzi przez FlexigoTech Cloud, który przechowuje poświadczenia w postaci zaszyfrowanej, pilnuje synchronizacji i wysyła e-mail, jeśli coś zawiedzie.
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_product_analytics.py
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_seller_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
