Łączy się z systemami ERP i MES takimi jak

Integracje / ERP / Odoo

Przewodnik po integracji Odoo ze SkyPlanner APS do harmonogramowania produkcji

Ten przewodnik pokazuje partnerom Odoo, programistom i osobom odpowiedzialnym za IT, jak połączyć Odoo Manufacturing ze SkyPlanner APS. Uzasadnienie biznesowe oraz opis możliwości przycisku Plan w Odoo znajdziesz na stronach Harmonogramowanie produkcji w Odoo i Czy Odoo obsługuje harmonogramowanie produkcji z uwzględnieniem rzeczywistych możliwości maszyn i pracowników?.

Wykres Gantta w SkyPlanner APS z operacjami zaplanowanymi na stanowiskach roboczych i listą zleceń poniżej.

Odoo pozostaje systemem źródłowym dla produktów, zestawień materiałowych, operacji, zleceń wytwarzania, stanów magazynowych i kalkulacji kosztów. SkyPlanner tworzy harmonogram na podstawie tych danych, korzystając z silnika Arcturus. Integracja z Odoo działa w obu kierunkach:

  • Do SkyPlanner trafiają zlecenia wytwarzania, zlecenia produkcyjne, operacje BoM, gniazda produkcyjne i zamówienia zakupu.
  • Planowane terminy rozpoczęcia i zakończenia oraz gniazda produkcyjne są zapisywane z powrotem w mrp.workorder.
  • Postęp prac i zarejestrowany czas wracają do Odoo jako Time Logs.
  • Webhooki SkyPlanner przesyłają zmiany harmonogramu na bieżąco.

Podczas wdrożenia zespół SkyPlanner konfiguruje integrację przez standardowe zewnętrzne API Odoo, dostosowując ją do używanej wersji, hostingu i modyfikacji. Zapewnia też wsparcie po uruchomieniu produkcyjnym. Ten przewodnik jest przeznaczony dla partnerów i programistów, którzy chcą uczestniczyć w tych pracach lub samodzielnie tworzyć rozwiązania oparte na udokumentowanym REST API SkyPlanner (dokumentacja API). Obsługę produktów, materiałów i zamówień zakupu opisuje publiczna dokumentacja SkyPlanner.

Krok zerowy: sprawdź plan Odoo i hosting

Najpierw ustal, z jakiego wariantu Odoo korzysta klient. Od tego zależy sposób integracji.

ŚrodowiskoZewnętrzne APIModuły niestandardoweSposób integracji
Odoo Online, One App Free lub StandardNieNieCSV/XLSX lub przejście na plan Custom
Odoo Online, plan CustomTakNieZewnętrzne API
Odoo.sh (plan Custom)TakTakZewnętrzne API, opcjonalnie moduł
Instalacja lokalna, Community lub EnterpriseTakTakZewnętrzne API, opcjonalnie moduł

Dokumentacja API Odoo podaje, że dostęp do zewnętrznego API jest „only available on Custom Odoo pricing plans” (dostępny tylko w planach Custom Odoo), a nie w One App Free ani Standard. Na stronie z cennikiem plan Standard opisano jako hostowany w Odoo Online „without custom modules” (bez modułów niestandardowych). Ustal to podczas rozpoznania potrzeb, a nie w połowie prac.

Możliwości integracji z Odoo

OpcjaWersjeUwierzytelnianieRola w integracji z systemem harmonogramowania
Zewnętrzne API JSON-2: POST /json/2/<model>/<method>Nowość w wersji 19.0Klucz API w Authorization: bearer <key>, opcjonalnie nagłówek X-Odoo-DatabaseDomyślny wybór dla nowych integracji: search_read do odczytu, write do zapisu terminów z powrotem w Odoo
Zewnętrzne XML-RPC / JSON-RPC: /xmlrpc/2, /jsonrpc, usługi common, objectDo wersji 19.0 włącznie; zaplanowane wycofaniecommon.authenticate z loginem i hasłem lub kluczem API, następnie execute_kwWymagane u klientów korzystających z wersji od 16.0 do 18.0
Własne kontrolery w moduleWszystkieOsobno dla każdej trasy, np. auth='bearer'Łączenie danych: MO wraz ze zleceniami produkcyjnymi w jednym wywołaniu
Reguły automatyzacji: „Send Webhook Notification” (wyślij powiadomienie webhook)W dokumentacji od wersji 17.0Wychodzące żądanie POST pod adres URLWysyłanie danych po utworzeniu lub edycji MO i zleceń produkcyjnych
Import rekordów (CSV, XLSX) i eksportWszystkieSesja użytkownikaDane do testów i jednorazowe wczytywanie danych podstawowych

Już teraz przygotuj się na wycofanie tych interfejsów. Odoo zaplanowało wycofanie XML-RPC i JSON-RPC w Odoo 22 (jesień 2028) i Odoo Online 21.1 (zima 2027). Dla wersji 19.0 buduj integrację na JSON-2, a obsługę RPC dla starszych baz wydziel do jednego adaptera. Dzięki temu aktualizacja będzie wymagała zmiany tylko w jednym miejscu. Wycofanie nie obejmuje własnych kontrolerów z @route(type='jsonrpc').

Uwierzytelnianie

Utwórz osobne konto użytkownika do integracji z prawem odczytu w modułach Manufacturing i Inventory oraz prawem zapisu zleceń produkcyjnych. Wygeneruj dla niego klucz w Preferences > Account Security > New API Key. W wersji 19.0 klucze są ważne najwyżej trzy miesiące, więc warstwa pośrednia musi obsługiwać rotację kluczy i alerty o błędach uwierzytelniania. Bez tego wygaśnięcie klucza niezauważenie zatrzyma synchronizację. Po stronie SkyPlanner REST API korzysta z JWT, dlatego warstwa pośrednia przechowuje dane uwierzytelniające obu systemów.

Każde wywołanie JSON-2 odbywa się w osobnej transakcji SQL, więc zapis rozłożony na kilka wywołań nie jest atomowy. Zapisuj każde zlecenie produkcyjne osobno i rejestruj wynik każdej operacji.

Zdarzenia

Odoo wysyła zmiany za pomocą reguł automatyzacji. Reguła dla mrp.production lub mrp.workorder z wyzwalaczem On create and edit oraz akcją „Send Webhook Notification” (wyślij powiadomienie webhook) wysyła żądanie POST z wybranymi polami pod wskazany adres URL. Utwórz regułę w Studio lub w trybie deweloperskim, w formularzu Automation Rules. Uzupełnij ją o cykliczne odpytywanie przez search_read na podstawie write_date, aby wychwycić importy i wszystko, co pominęła reguła. W przeciwnym kierunku webhooki SkyPlanner wysyłają zmiany harmonogramu i statusów na bieżąco.

Nazwy pól różnią się między wersjami. W wersji 19.0 każda baza udostępnia listę swoich modeli, pól i metod pod /doc; w starszych wersjach wywołaj fields_get. Na tej podstawie przygotuj mapowanie — nie z pamięci.

Mapowanie danych z Odoo do SkyPlanner

Model OdooObiekt SkyPlannerKierunekCzęstotliwość
product.product / product.template (default_code, uom_id, qty_available)Produkt lub materiałOdoo → SkyPlannerWczytanie początkowe, następnie codziennie lub po zmianie
mrp.bom (product_tmpl_id, product_qty, produce_delay), mrp.bom.line (product_id, product_qty, operation_id), mrp.bom.byproductProdukt o strukturze wielopoziomowej, zapotrzebowanie materiałowe dla każdego etapuOdoo → SkyPlannerPo zmianie
mrp.routing.workcenter (zakładka Operations: workcenter_id, sequence, time_mode, time_cycle_manual, blocked_by_operation_ids)Etapy procesu wraz z kolejnością i czasem wykonaniaOdoo → SkyPlannerPo zmianie
mrp.workcenter (resource_calendar_id, time_efficiency, time_start, time_stop, alternative_workcenter_ids)Stanowisko robocze, wydajność, przygotowanie i sprzątanie, alternatywne stanowiska roboczeOdoo → SkyPlanner, następnie utrzymywane w SkyPlannerWczytanie początkowe
mrp.workcenter.capacity (capacity)Liczba sztuk na cykl, czasy przygotowania i sprzątania właściwe dla produktuOdoo → SkyPlannerWczytanie początkowe
resource.calendar, resource.calendar.attendance, resource.calendar.leavesZmiany robocze i nieobecnościOdoo → SkyPlannerWczytanie początkowe, nieobecności po zmianie
mrp.production (product_id, product_qty, date_deadline, priority, state, workorder_ids)Zlecenie z terminem realizacji i priorytetemOdoo → SkyPlannerWebhook po zatwierdzeniu oraz odpytywanie
mrp.workorder (operation_id, workcenter_id, duration_expected, state)Operacja na stanowisku roboczymOdoo → SkyPlannerWebhook oraz odpytywanie
stock.quant, stock.move (ruchy magazynowe komponentów)Stan magazynowy i zapotrzebowanie materiałowe do harmonogramowania według dostępności materiałówOdoo → SkyPlannerCyklicznie, np. w odstępach od 15 do 60 minut
purchase.order (partner_id, state), purchase.order.line (product_id, product_qty, date_planned, qty_received)Zamówienia zakupu i materiały w drodze, dostępne w oczekiwanym terminie dostawyOdoo → SkyPlannerWebhook po zatwierdzeniu lub edycji zamówienia zakupu oraz to samo cykliczne odpytywanie
Planowane terminy rozpoczęcia i zakończenia oraz stanowisko roboczemrp.workorder.date_start, date_finished, workcenter_idSkyPlanner → OdooPo zmianie harmonogramu, przez webhook SkyPlanner
Mobile Confirmations, wpisy czasu pracymrp.workcenter.productivity (Time Logs: workcenter_id, workorder_id, date_start, date_end, loss_id)SkyPlanner → OdooPrzy każdym potwierdzeniu
Wykonana ilość, zakończenie operacjiqty_producing na zleceniu produkcyjnym, następnie button_finish; button_mark_done na MOSkyPlanner → Odoo lub rejestracja w Odoo Shop FloorPrzy każdym potwierdzeniu

Wzorce integracji

Najpierw dane podstawowe.

Wczytaj gniazda produkcyjne i kalendarze, a następnie produkty, BoM i operacje, które odwołują się do gniazd produkcyjnych. Podczas 30-dniowego okresu próbnego te same listy wczytuje się z plików wyeksportowanych do CSV. Narzędzie do importu i eksportu w Odoo działa w każdym widoku listy.

Synchronizacja zleceń.

Pobieraj MO w statusach confirmed i progress wraz z ich zleceniami produkcyjnymi. Pomiń robocze MO lub traktuj je jako wstępne zapotrzebowanie. Podzespoły z własnym BoM mogą trafiać do integracji jako oddzielne podrzędne MO, a Odoo planuje każde MO niezależnie. Zmapuj je na podprodukty w SkyPlanner, aby produkcja podzespołów kończyła się przed rozpoczęciem zlecenia nadrzędnego.

Zapis harmonogramu z powrotem do Odoo.

Po zmianie harmonogramu webhook SkyPlanner uruchamia integrację, która wywołuje metodę ORM write dla każdego objętego zmianą rekordu mrp.workorder. W Odoo 19.0 oznacza to jedno żądanie JSON-2 na zlecenie produkcyjne:

„ POST /json/2/mrp.workorder/write Authorization: bearer <api-key> {"ids": [4711], "vals": {"date_start": "2026-11-03 06:00:00", "date_finished": "2026-11-03 09:30:00", "workcenter_id": 7}} „

JSON-2 przyjmuje każdy argument metody po nazwie, a dodatkowo ids i context, więc argument z write(vals) trafia pod klucz vals. W wersjach od 16.0 do 18.0 to samo wywołanie ma postać execute_kw(db, uid, key, 'mrp.workorder', 'write', [[4711], vals]) przez XML-RPC lub JSON-RPC, a w wersji 16.0 klucze to date_planned_start i date_planned_finished. Daty i godziny przesyłaj w UTC. Kilka zasad pozwala uniknąć błędów przy zapisie:

  • Przesyłaj obie daty w jednym wywołaniu.
  • Dodawaj workcenter_id tylko wtedy, gdy silnik wybrał alternatywną maszynę.
  • Zapisuj tylko pola związane z harmonogramowaniem — nigdy ilości ani BoM.

Zapis dat przesuwa rezerwację gniazda produkcyjnego w Odoo, dzięki czemu widoki planowania w Odoo pokazują plan ze SkyPlanner.

Dane z hali produkcyjnej z powrotem w Odoo. Operatorzy rejestrują pracę w SkyPlanner Mobile Confirmations. Dla każdego potwierdzenia integracja wywołuje create na mrp.workcenter.productivity (JSON-2: POST /json/2/mrp.workcenter.productivity/create z vals_list). Wypełnia pola workorder_id, workcenter_id, date_start, date_end oraz loss_id typu Productive, a czas pracy i koszty są rejestrowane w Odoo.

Po zakończeniu operacji integracja ustawia wyprodukowaną ilość i wywołuje button_finish na zleceniu produkcyjnym. Zakończenie ostatniego zlecenia produkcyjnego przygotowuje MO do wywołania button_mark_done. Każde potwierdzenie jest zapisywane raz, a identyfikator jego rekordu w Odoo jest przechowywany przy wpisie czasu pracy w SkyPlanner. Dzięki temu ponowienie webhooka nigdy nie tworzy drugiego wpisu Time Logs.

W zakładach korzystających z aplikacji Enterprise Shop Floor kierunek jest odwrotny: SkyPlanner odczytuje status zlecenia produkcyjnego i qty_produced, a Autopilot automatycznie aktualizuje harmonogram po zmianach w produkcji.

Odpowiedzialność za dane. Spisz zasady przed uruchomieniem produkcyjnym:

DaneSystem odpowiedzialny
Produkty, BoM, operacje, ilości, status MOOdoo
Kolejność zleceń produkcyjnych, terminy rozpoczęcia i zakończenia, wybór gniazda produkcyjnegoSkyPlanner
Macierz czasów przezbrojeń, wymagania dotyczące narzędzi i operatorów, zasoby alternatywneSkyPlanner
Kalendarze gniazd produkcyjnych i Time OffJeden system, wybrany na etapie określania zakresu
Time Logs, stany magazynowe i kalkulacja kosztówOdoo, zasilane potwierdzeniami ze SkyPlanner

Planiści przestają używać przycisków Plan i Unplan w Odoo dla MO harmonogramowanych przez SkyPlanner. W przeciwnym razie Odoo rezerwuje własne przedziały czasowe, nadpisując terminy ze SkyPlanner.

Typowe etapy projektu

Realizacja zwykle kończy się w ciągu kilku tygodni od rozpoczęcia wdrożenia. Wcześniej można skorzystać z 30-dniowego bezpłatnego okresu próbnego na własnych danych z Odoo wyeksportowanych do CSV. Sam projekt obejmuje:

  1. Mapowanie danych podstawowych: modele i pola Odoo dla danej wersji (sprawdź /doc lub fields_get), jednostki miary oraz ustalenie, który system zarządza kalendarzami i Time Off.
  2. Uporządkowanie danych: uporządkowanie kalendarzy gniazd produkcyjnych i pól Setup Time oraz Cleanup Time, a także ustawienie czasów operacji BoM na Fixed zamiast Computed.
  3. Pierwsze wczytanie danych: produktów, gniazd produkcyjnych z kalendarzami, BoM i ich operacji.
  4. Synchronizacja zleceń i zamówień zakupu: zatwierdzone i realizowane MO wraz z ich zleceniami produkcyjnymi oraz pozycje purchase.order z oczekiwanymi terminami dostawy.
  5. Zapis harmonogramu z powrotem w Odoo: terminy i gniazda produkcyjne w mrp.workorder oraz rotacja kluczy API po stronie Odoo.
  6. Potwierdzenia z hali produkcyjnej: przesyłanie Time Logs i informacji o zakończeniu zleceń produkcyjnych z powrotem do Odoo.
  7. Testy równolegle z bieżącym planem, a następnie uruchomienie produkcyjne.

Pułapki w Odoo

  • Zmiany nazw pól dat. Do wersji 16.0 włącznie pola date_planned_start i date_planned_finished przechowywały plan, a date_start/date_finished — rzeczywiste terminy. Od wersji 17.0 pola date_start i date_finished oznaczają terminy planowane. Mapowanie skopiowane z projektu dla wersji 16.0 w wersjach 17+ odczytuje rzeczywiste terminy jako planowane, nie sygnalizując błędu.
  • Terminy zleceń produkcyjnych są rezerwacjami. W wersji 19.0 pola date_start i date_finished w mrp.workorder są obliczane na podstawie rekordu resource.calendar.leaves (leave_id) w kalendarzu gniazda produkcyjnego. Zapis terminów na zleceniu produkcyjnym aktualizuje tę rezerwację. Nigdy nie zapisuj danych bezpośrednio w tabeli nieobecności.
  • Rozpoczęte zlecenia produkcyjne blokują Unplan. Odoo odmawia wycofania MO z planu, gdy „Some work orders have already started” (niektóre zlecenia produkcyjne zostały już rozpoczęte). Przy zapisie do Odoo pomijaj zlecenia produkcyjne w statusach progress i done. Przesuwaj tylko te, których jeszcze nie rozpoczęto.
  • Czasy trwania się zmieniają. Operacje ustawione na Computed pobierają czas trwania z ostatnich zleceń produkcyjnych (domyślnie 10), z uwzględnieniem współczynnika Time Efficiency. Na czas okresu próbnego ustaw Fixed lub zaakceptuj zmienność danych wejściowych. Operacje są definiowane w każdym BoM osobno, bez wspólnej kartoteki marszrut technologicznych, dlatego każdy BoM wymaga oddzielnego uporządkowania.
  • Błędne kalendarze. Każde gniazdo produkcyjne potrzebuje kalendarza godzin pracy. Mechanizm planowania Odoo szuka wolnego terminu do 700 dni naprzód, a następnie zatrzymuje się z komunikatem „Impossible to plan the workorder” (Nie można zaplanować zlecenia produkcyjnego). Popraw kalendarze przed pierwszym wczytaniem danych.
  • Jednostki miary. mrp.bom.line ma własne pole product_uom_id, które może wskazywać inną jednostkę niż magazynowa jednostka produktu. Przelicz jednostki przed sprawdzeniem dostępności materiałów.

Kto konfiguruje integrację z Odoo

Każdy zakład korzysta z Odoo inaczej: ma własne operacje BoM, kalendarze gniazd produkcyjnych, alternatywne gniazda i moduły niestandardowe. Zespół SkyPlanner wnosi wiedzę potrzebną do prawidłowego dopasowania mapowania do tej konfiguracji.

  1. Zespół SkyPlanner konfiguruje integrację podczas wdrożenia, dopasowując ją do Twojego środowiska Odoo, i zapewnia wsparcie po uruchomieniu produkcyjnym. Integracja korzysta z REST API i webhooków SkyPlanner oraz API JSON-2 lub RPC w Odoo. To standardowy sposób realizacji.
  2. Twój partner Odoo może uczestniczyć w pracach. Zna Twoją konfigurację i moduły niestandardowe, więc może tworzyć rozwiązania oparte na tym samym udokumentowanym REST API. API umożliwia odczyt i zapis zleceń, produktów, materiałów, etapów procesu i zapisów czasu pracy. Korzysta z uwierzytelniania JWT i ma dokumentację Swagger/OpenAPI.
  3. Twoi programiści mogą zrobić to samo — zwykle w postaci niewielkiej warstwy pośredniej obok Odoo albo modułu w Odoo.sh lub instalacji lokalnej. Do rozpoczęcia wystarczy klucz API (poradnik integracji), a zespół SkyPlanner pomaga w razie potrzeby.

Ten sam model działa produkcyjnie z innymi systemami ERP. W Laboratory & Allied wewnętrzny zespół IT zbudował integrację z SAP Business One w dużej mierze samodzielnie, przy wsparciu SkyPlanner. Firma UTU korzysta ze SkyPlanner obok swojego systemu ERP NetSuite.

Dlaczego integracja się opłaca

To zapis danych z powrotem do Odoo sprawia, że integracja przynosi korzyści w codziennej pracy. Gdy już działa:

  • Zlecenia produkcyjne Odoo mają wykonalne terminy. Silnik Arcturus AI w kilka sekund ustala kolejność wszystkich otwartych MO. Wyznaczone terminy i wybrane stanowiska robocze trafiają do mrp.workorder i są widoczne w widokach planowania Odoo.
  • Bez ręcznego przeplanowywania. Autopilot automatycznie zmienia harmonogram, gdy zmienia się sytuacja na produkcji, a webhook przesyła nowe terminy do Odoo.
  • Dane z hali wracają do systemu. Operatorzy rejestrują pracę na telefonie lub tablecie za pomocą Mobile Confirmations, Production Timer i Quick Log Mode, a Time Logs trafiają do Odoo na potrzeby aktualizacji stanów magazynowych i kalkulacji kosztów. Harmonogramowanie i realizacja produkcji odbywają się w jednym narzędziu, zarówno w Community, jak i Enterprise.
  • Harmonogram uwzględnia ograniczenia, których nie obsługuje Odoo. Macierz czasów przezbrojenia określa czas zmiany dla każdej pary produktów, zależnie od ich kolejności. Narzędzia to zasoby produkcyjne o ograniczonej dostępności, współdzielone przez maszyny, a operacja może wymagać kilku operatorów jednocześnie. Gdy podstawowa maszyna lub pracownik są niedostępni, silnik wybiera alternatywne maszyny lub personel. Terminy zapisywane z powrotem w mrp.workorder uwzględniają wszystkie te ograniczenia.
  • Plan uwzględnia dostawy materiałów. Bieżące stany magazynowe i otwarte zamówienia zakupu w Odoo zasilają harmonogramowanie oparte na dostępności materiałów. Zamówione komponenty są uznawane za dostępne w terminie dostawy PO, a stan magazynowy aktualizuje się po oznaczeniu PO jako Delivered. Dla każdej operacji sprawdzane są materiały w magazynie oraz te, które są w drodze.

Możesz ocenić harmonogram jeszcze przed rozpoczęciem prac integracyjnych. Rozpocznij 30-dniowy bezpłatny okres próbny, korzystając z eksportów CSV, i zobacz własne zlecenia produkcyjne z Odoo na wykresie Gantta — do 20 stanowisk, bez karty kredytowej. Ceny zaczynają się od 199 € miesięcznie za 5 stanowisk, z rozliczeniem miesięcznym i możliwością rezygnacji w dowolnym momencie. Integrację wyceniamy z góry, zgodnie z Twoim procesem i potrzebami, razem z wybranym planem. Dzięki temu znasz pełny koszt przed rozpoczęciem. Zobacz funkcje i historie klientów lub umów prezentację.

Opinie producentów o SkyPlanner

Kalle Kalliomäki, specjalista ds. łańcucha dostaw w UTU, na hali produkcji rozdzielnic w Ulvila

2 hoszczędności co tydzień

„Dzięki SkyPlanner przeszliśmy od planowania produkcji w arkuszach Excel do optymalizacji produkcji w czasie rzeczywistym.”

Kalle Kalliomäki, specjalista ds. łańcucha dostaw
UTU · Rozdzielnice i aparatura rozdzielcza

Planowanie produkcji pozwala zaoszczędzić 2 godziny pracy tygodniowo, a nowa kolejka zadań trafia na linię w ciągu kilku sekund.

Przeczytaj opinię UTU

Operatorzy w kombinezonach do pomieszczeń czystych przy linii napełniania butelek w zakładzie farmaceutycznym Laboratory & Allied w Nairobi

+90%wydajności produkcji

„Wydajność produkcji wzrosła o 90%.”

Abdul Rucyinga, szef działu IT
Laboratory & Allied · Produkcja farmaceutyczna

Wydajność produkcji wzrosła o 90%, a przygotowanie zoptymalizowanego planu na trzy miesiące dla wszystkich stanowisk zajmuje mniej niż 30 minut.

Przeczytaj opinię Laboratory & Allied

Hannu Ryynänen, prezes Mamec, w hali produkcyjnej firmy w Lohja

1 000+zleceń produkcyjnych harmonogramowanych automatycznie

„Mamy teraz zupełnie inną kontrolę nad produkcją, a nasza wiedza o zdolnościach produkcyjnych jest na całkiem innym poziomie.”

Hannu Ryynänen, prezes
Mamec · Mieszalniki przemysłowe, pompy i zaawansowana technologicznie produkcja kontraktowa

Tysiące zleceń produkcyjnych są harmonogramowane automatycznie, a cała organizacja ma wgląd w produkcję w czasie rzeczywistym.

Przeczytaj opinię Mamec

Widok z lotu ptaka na fabrykę systemów bezpieczeństwa dachowego Piristeel w Kauhava

99,2%terminowości dostaw

„SkyPlanner pozwolił nam dostrzec wąskie gardła i uporządkował zarządzanie produkcją.”

Toni Tuori, kierownik produkcji
Piristeel · Systemy bezpieczeństwa dachowego i odprowadzania wody deszczowej

Terminowość dostaw osiągnęła w tym roku 99,2%, a harmonogramowanie pozwala zaoszczędzić do czterech godzin pracy dziennie.

Przeczytaj opinię Piristeel

Najczęściej zadawane pytania

Czy integracja działa w Odoo Online?

Tak, w planie Custom, za pośrednictwem zewnętrznego API. Plany One App Free i Standard nie zapewniają dostępu do zewnętrznego API, a Standard nie obsługuje modułów niestandardowych. W tych planach można więc korzystać jedynie z importu i eksportu plików CSV/XLSX.

Wybrać JSON-2 czy XML-RPC?

W Odoo 19.0 i nowszych wersjach należy korzystać z JSON-2. W wersjach od 16.0 do 18.0 nadal potrzebne są XML-RPC i JSON-RPC, ale ich usunięcie zaplanowano na Odoo 22.

Jak harmonogram trafia z powrotem do Odoo?

Przez metodę ORM write dla każdego rekordu mrp.workorder: w wersji 19.0 jest to POST /json/2/mrp.workorder/write z ids i vals, a w wersjach od 16.0 do 18.0 — execute_kw z write przez XML-RPC lub JSON-RPC. Zapisywane pola to date_start, date_finished (date_planned_start i date_planned_finished w wersji 16.0) oraz workcenter_id, jeśli się zmieniło. Odoo przesuwa przy tym rezerwację gniazda produkcyjnego, więc jego widoki planowania pokazują terminy ze SkyPlanner.

Jak potwierdzenia od operatorów trafiają do Odoo?

Jako wpisy Time Logs: integracja tworzy rekordy mrp.workcenter.productivity powiązane ze zleceniem produkcyjnym, z czasem rozpoczęcia i zakończenia oraz przyczyną straty Productive. Następnie, po zakończeniu operacji, wywołuje button_finish. Każde potwierdzenie jest zapisywane raz, więc ponowienia nie powodują podwójnego naliczenia czasu.

Kto utrzymuje integrację po uruchomieniu produkcyjnym?

Zespół SkyPlanner konfiguruje integrację podczas wdrożenia i zapewnia wsparcie po uruchomieniu produkcyjnym, w tym dostosowania do zmian w konfiguracji Odoo. Jeśli integrację tworzy partner lub własny zespół programistów, korzysta z udokumentowanego REST API i dokumentacji SkyPlanner, a zespół SkyPlanner pomaga w razie potrzeby.

Co dzieje się ze zleceniami produkcyjnymi, których realizacja już się rozpoczęła?

Przy zapisie zwrotnym nie należy ich zmieniać. Odoo blokuje usunięcie MO z harmonogramu, gdy zlecenie produkcyjne jest w toku lub zostało zakończone. SkyPlanner odczytuje ich status i postęp, a następnie układa harmonogram pozostałych prac z ich uwzględnieniem.

Ile trwa integracja z Odoo?

Wdrożenie zwykle kończy się w ciągu kilku tygodni od jego rozpoczęcia. Zacznij od 30-dniowego okresu próbnego z danymi wyeksportowanymi do CSV. Dzięki temu sprawdzisz harmonogram na własnych danych z Odoo, zanim rozpoczną się prace nad API.