W skrócie
Wymianę danych między ERP a WMS da się zrealizować zapytaniami do bazy ERP, przez WebAPI albo plikiem, a wybór zależy od tego, co udostępnia ERP. W opisywanym wdrożeniu zlecenia i dokumenty czytają z bazy ERP procedury synchronizacji uruchamiane zadaniem cyklicznym. Wynik realizacji odsyła do WebAPI ERP osobna usługa.
Dlaczego wymiana z ERP rozstrzyga o wdrożeniu
ERP zna zamówienia i faktury, a WMS wie, co fizycznie leży na regałach i kto to przenosi. Dopiero wymiana danych między nimi daje obraz całej firmy. Gdy integracja szwankuje, magazynierzy dostają niepełne zlecenia, a księgowość widzi dokumenty z opóźnieniem. U producenta dochodzą zlecenia produkcyjne i receptury kompletów, więc ERP przekazuje magazynowi więcej niż same zamówienia sprzedaży.
Dlatego w projektach dla firm produkcyjnych wymianę opisuje się już w analizie przedwdrożeniowej, z podziałem na obszary wymiany i metody. Zakres takiego dokumentu pokazuje artykuł o tym, co powinna zawierać analiza przedwdrożeniowa WMS.
Trzy metody wymiany danych z ERP
Metodę wybiera się według tego, co ERP udostępnia, a nie według upodobań wykonawcy. Zestawienie pokazuje trzy rozwiązania, które stosujemy.
| Metoda | Jak działa | Gdzie ma sens |
|---|---|---|
| Zapytania do bazy ERP | Procedury synchronizacji czytają dane z widoków bazy ERP, uruchamiane zadaniem cyklicznym | Gdy klient może udostępnić widoki tylko do odczytu, a ERP nie ma własnego interfejsu |
| WebAPI | WMS i ERP wymieniają komunikaty przez interfejs HTTP, a w standardzie produktu zlecenia przychodzą wywołaniem POST z danymi w formacie JSON na koncie technicznym klienta | Gdy ERP lub system nadrzędny ma stabilny interfejs, jak w gotowych integracjach z SAP i WAPRO WF-MAG |
| Plik | Jedna strona zapisuje plik wymiany, a druga go odczytuje | Gdy żaden interfejs nie jest dostępny albo wymiana ma być prosta |
Gotowe połączenia opisaliśmy na stronach o integracji WMS z SAP oraz o integracji WAPRO WF-mag z WMS.net. Pozostałe ERP łączy się w ramach wdrożenia, wybierając jedną z trzech metod.
Wybór rozkłada też prace po obu stronach. Przy odczycie bazy klient przygotowuje widoki tylko do odczytu. Przy WebAPI udostępnia interfejs i konto techniczne. Wymiana plikowa wymaga uzgodnienia katalogu oraz formatu pliku.
Co wybrano w opisywanym wdrożeniu
U producenta wyrobów wielkogabarytowych zlecenia i dokumenty wchodzą do WMS inaczej niż wynik realizacji wraca do ERP. Import robią procedury synchronizacji, a odsyłanie statusów przejęła osobna usługa. Cały układ przedstawia schemat, a tabela rozpisuje go na obszary.
| Obszar | Kierunek | Jak odbywa się wymiana |
|---|---|---|
| Kartoteki towarowe | ERP do WMS | Zadanie nocne oraz import na żądanie, także pojedynczej kartoteki po identyfikatorze |
| Zlecenia przyjęć | ERP do WMS | Procedura synchronizacji w zadaniu cyklicznym, odczyt z widoku ERP |
| Zlecenia wydań | ERP do WMS | Procedura synchronizacji w zadaniu cyklicznym, odczyt z widoku ERP |
| Zlecenia produkcyjne | ERP do WMS | Procedura synchronizacji w zadaniu cyklicznym |
| Przesunięcia międzymagazynowe | ERP do WMS | Procedura synchronizacji w zadaniu cyklicznym |
| Receptury kompletów | ERP do WMS | Import z ERP, więc zmianę składu wprowadza się tam |
| Wynik realizacji zlecenia | WMS do ERP | Osobna usługa zadań wysyła wynik do WebAPI ERP |
Kartoteki - nocą i na żądanie
Kartoteki zmienia się przeważnie w ERP, więc zadanie nocne importuje nowe i zmienione rekordy. W rejestrze dokumentów są dodatkowo polecenia pobrania i aktualizacji kartotek, z których korzysta się w ciągu dnia. Przydają się, gdy handlowiec założył nowego klienta albo produkt i magazyn nie chce czekać do nocy.
Gdy kartotekę zmieniono po nocnej synchronizacji, WMS pokazuje stare dane do następnego cyklu albo do importu na żądanie. Ten rozjazd jest najczęstszym źródłem pytań w pierwszych tygodniach. W kartotece wdrożenia kod handlowy ma jeden kod bazowy, więc przy imporcie pilnuje się powiązania obu kodów. Strukturę samej kartoteki omawia strona o kartotece magazynowej, a start z danymi z arkusza - tekst o imporcie z Excela.
Zlecenia i statusy zwrotne
Zlecenie z ERP trafia do rejestru WMS przy najbliższym przebiegu zadania cyklicznego. Kierownik lub operator zaczyna wtedy realizację na kolektorze. Wyniku nie odsyła ani kolektor, ani aplikacja WWW, bo zajmuje się tym osobna usługa, która przekazuje dokument i jego pozycje do WebAPI ERP.
Rozdzielenie importu i eksportu daje dwa niezależne punkty kontroli. Rejestr błędów systemowych pokazuje, który rekord odrzucono i dlaczego. Receptury kompletów są importowane z ERP, więc zmianę składu trzeba wprowadzić tam, zanim pojawi się zamówienie.
Najczęstsze problemy integracyjne
| Problem | Gdzie szukać przyczyny |
|---|---|
| Zlecenie nie pojawia się w WMS | Rejestr błędów systemowych, potem dane zlecenia i widok ERP, z którego czyta procedura |
| Rozjazd kartotek po zmianie w ERP | Czas ostatniej synchronizacji nocnej, z możliwością pobrania pojedynczej kartoteki |
| Receptura kompletu nie zgadza się ze składem | Data zmiany receptury w ERP względem daty zamówienia |
| Numery dokumentów z dwóch systemów trudno zestawić | Unikalny numer referencyjny łączący dokument WMS z dokumentem ERP |
Jak projektować bezpieczną integrację
- Zdefiniuj, który system jest źródłem prawdy dla każdego pola.
- Przewidź import pojedynczych rekordów, bo pierwsze tygodnie przynoszą wyjątki.
- Loguj każdą wymianę razem z czasem i wynikiem, żeby serwis szybko ustalił przyczynę.
- Testuj całą ścieżkę w trzech warstwach naraz: na ekranie kolektora, w bazie WMS i w synchronizacji zwrotnej.
Warto też ustalić okno, w którym zadania synchronizacji nie kolidują z intensywną pracą magazynu. Adresy z zamówień, ważne dla przewoźników, opisujemy w artykule o integracji WMS z kurierami. Stany początkowe z ERP wchodzą do magazynu według metody opisanej w tekście o bilansie otwarcia w WMS, a całość projektu pokazuje case study wdrożenia u producenta.
Pytania i odpowiedzi o integracji ERP z WMS
Czy WMS musi współpracować z ERP?
Nie jest to obowiązek, ale w firmie produkcyjnej zwykle się opłaca. Bez integracji te same dokumenty trzeba wprowadzać dwa razy, raz w ERP i raz w magazynie.
Jak często synchronizują się kartoteki?
W opisywanym wdrożeniu odświeża je zadanie nocne. Gdy handlowiec w ciągu dnia założy nowy towar, kartotekę można pobrać na żądanie, także pojedynczo po identyfikatorze.
Jakie metody wymiany z ERP są możliwe?
Można czytać dane zapytaniami do bazy ERP, wymieniać je przez WebAPI albo przesyłać plikiem. Gotowe integracje produktu istnieją dla SAP i WAPRO WF-MAG, a pozostałe systemy łączy się w ramach wdrożenia.
Co zrobić, gdy zlecenie nie dotrze do WMS?
Przyczynę pokazuje rejestr błędów systemowych. Serwis sprawdza potem dane zlecenia i widok ERP, z którego procedura je czyta.
Który system jest źródłem prawdy?
Dane handlowe, czyli kartoteki i zlecenia, prowadzi ERP. WMS ewidencjonuje fizyczny ruch towaru i odsyła do ERP wynik realizacji.
Słownik pojęć o integracji ERP z WMS
Terminy używane przez dział IT, gdy opisuje się wymianę danych między ERP a systemem magazynowym.
- ERP
- System zarządzania firmą, który prowadzi kartoteki i zamówienia. Dla WMS jest źródłem zleceń oraz danych podstawowych.
- WebAPI
- Interfejs udostępniany przez system, przez który inny program wysyła i odbiera dane, bez dostępu do jego bazy.
- Widok bazy danych
- Zapytanie zapisane w bazie jako tabela wirtualna. Procedura synchronizacji czyta z niego dane ERP.
- Zadanie cykliczne
- Zaplanowany proces uruchamiany w ustalonych odstępach, który importuje zlecenia i dokumenty do WMS.
- Synchronizacja kartotek
- Aktualizacja towarów oraz kontrahentów w WMS na podstawie ERP, nocą albo na żądanie.
- Status zwrotny
- Informacja o wykonaniu zlecenia wysyłana z WMS do ERP przez osobną usługę po stronie magazynu.
- Rejestr błędów
- Systemowy dziennik, w którym widać odrzucone rekordy wymiany i przyczynę odrzucenia.
- Źródło prawdy
- System, którego wartość pola jest rozstrzygająca przy rozbieżności między ERP a WMS.
Opisz nam swój system ERP
Podaj, jakie interfejsy udostępnia Twoje ERP, a przygotujemy propozycję zakresu i metody wymiany danych.
