Magazyn rzadko pracuje sam. Zamówienia powstają w systemie sprzedaży, faktury w księgowości, a towar fizycznie przechodzi przez rampę i regały. Oprogramowanie magazynowe Studio WMS.net łączy te światy przez wymianę dokumentów, więc to, co magazynier potwierdzi skanerem, trafia do ERP bez ponownego wpisywania.

Podział odpowiedzialności między ERP a oprogramowaniem magazynowym

Pierwsza decyzja przy integracji dotyczy tego, który system jest właścicielem której informacji. ERP prowadzi kartoteki oraz dokumenty handlowe. Oprogramowanie magazynowe prowadzi lokalizacje oraz potwierdzenia ruchów. Gdy oba systemy edytują te same dane, rozbieżności pojawiają się po kilku tygodniach.

DaneWłaścicielKierunek wymianySkutek w magazynie
Kartoteka towarówERPERP do WMSnowy indeks jest dostępny do przyjęcia
KontrahenciERPERP do WMSdostawca i odbiorca na dokumencie bez przepisywania
Zamówienie sprzedażyERPERP do WMSzlecenie kompletacji na liście operatora
Lokalizacje i paletyWMStylko w WMSadres gniazda nie obciąża ERP
Potwierdzenie przyjęcia i wydaniaWMSWMS do ERPdokument PZ lub WZ zamyka pozycję w ERP
Przesunięcie między magazynamiWMSWMS do ERPdokument MM aktualizuje stany obu magazynów

Reguła: kartotekę towarów edytuje się w jednym systemie. Druga strona przyjmuje ją w trybie odczytu, a zmiany wprowadza wyłącznie wymiana, bo ręczna poprawka po obu stronach tworzy dwa różne opisy tego samego indeksu.

Podział ról ułatwia też audyt. Księgowy sprawdza dokument w ERP, a kierownik magazynu sprawdza tego samego dokumentu ślad w WMS z czasem skanu i operatorem. Obieg dokumentów opisuje artykuł o dokumentach magazynowych.

Sposoby wymiany danych z systemem ERP

Wybór metody zależy od wersji ERP i od tego, czy dostawca systemu udostępnia interfejs. Dla starszych programów wystarcza wymiana plików, a dla systemów z usługami sieciowymi lepsza jest wymiana bezpośrednia. Poniższe cztery sposoby pokrywają większość wdrożeń.

Szczegóły połączenia z systemem SAP opisuje strona o integracji z SAP. Dla programów księgowych działa osobna ścieżka opisana w artykule o Symfonii ERP i WMS. Wśród obsługiwanych systemów są Enova i Subiekt, a także WAPRO.

Kolejka wymiany w bazie SQL Server

Tabela pośrednia działa jak kolejka. Każdy wiersz ma status oraz numer dokumentu źródłowego, a licznik prób zapisuje się osobno. Proces wymiany pobiera paczkę wierszy oczekujących. Po przetworzeniu zmienia ich status na zakończony albo błędny. Dwa równoległe procesy nie mogą pobrać tego samego wiersza, więc zapytanie używa blokady aktualizacji i pomija wiersze zajęte.

BEGIN TRAN;
WITH paczka AS (
    SELECT TOP (50) *
    FROM dbo.WymianaERP WITH (UPDLOCK, READPAST, ROWLOCK)
    WHERE Status = 'Oczekuje'
    ORDER BY WymianaId
)
UPDATE paczka SET Status = 'WToku', Proby = Proby + 1;
COMMIT;

Przykład jest ilustracyjny i nie pokazuje kodu produktu. Przetwarzanie pojedynczego wiersza warto owinąć w blok TRY...CATCH, bo błąd jednego dokumentu nie powinien zatrzymać całej paczki. Składnię opisuje dokumentacja TRY...CATCH w T-SQL.

Dokumenty PZ, WZ i MM w obiegu między systemami

Zlecenie przyjęcia z ERP staje się w WMS dokumentem ZPZ, a po rozładunku operator zatwierdza dokument PZ. Dopiero zatwierdzenie wysyła do ERP potwierdzenie ilości faktycznie przyjętej. Jeżeli dostawa przyjechała niepełna, do ERP wraca ilość rzeczywista, a nie ilość z zamówienia.

Wydanie działa symetrycznie. Zamówienie sprzedaży tworzy zlecenie ZWZ, kompletacja zdejmuje towar z lokalizacji, a dokument WZ zamyka sprawę w ERP i uruchamia fakturę. Lista dokumentów wydania w WMS pokazuje datę oraz status realizacji dokumentów WZ i WZB.

Studio WMS.net - sekcja Magazyn, lista dokumentów wydania WZ i WZB z datą i statusem realizacji
Lista dokumentów wydania WZ i WZB w Studio WMS.net - przegląd wydań z filtrem statusu i kontrahenta

Wyszukiwarka dokumentów pokazuje obie strony tej wymiany na jednej liście.

Studio WMS.net - sekcja Magazyn, wyszukiwarka dokumentów z filtrami typu, daty i kontrahenta
Wyszukiwarka dokumentów w Studio WMS.net - filtrowanie po typie, dacie, kontrahencie i statusie

Filtr daty i kontrahenta pozwala znaleźć dokument, którego ERP nie przyjął. Takie dokumenty sprawdza się przed zamknięciem dnia, żeby niezaksięgowane wydanie nie przeszło na kolejną zmianę. Proces wydania opisuje artykuł o wydaniu z magazynu.

Terminal Android i dostęp przez przeglądarkę

Magazynier pracuje na terminalu z Androidem i potwierdza operacje skanem. Potwierdzenie trafia do bazy WMS w chwili skanu, a stamtąd do kolejki wymiany z ERP. Operator nie wraca do stanowiska biurowego, więc czas między fizycznym wydaniem a dokumentem w systemie sprzedaży jest krótki. Obsługę urządzeń opisuje strona o aplikacji WMS na Androida.

Kierownik oraz kontrahenci z uprawnieniami widzą stany przez przeglądarkę. Aplikacja działa w modelu internetowym, o którym pisze artykuł o aplikacji magazynowej online. Klient operatora logistycznego sprawdza własne stany bez telefonu do magazynu.

Kontrola zgodności stanów między ERP a WMS

Nawet poprawna wymiana wymaga okresowej kontroli, bo każdy proces wymiany może zostać przerwany w nieoczekiwanym miejscu. Najprostszy test porównuje sumy ilości po indeksach z obu systemów i wskazuje różnice większe od zera. Raport różnic uruchamia się raz dziennie, a wynik trafia do osoby odpowiedzialnej za integrację.

SELECT w.IndeksId,
       SUM(w.Ilosc)               AS StanWMS,
       e.StanERP,
       SUM(w.Ilosc) - e.StanERP   AS Roznica
FROM dbo.StanyLokalizacji AS w
JOIN dbo.StanyERP         AS e ON e.IndeksId = w.IndeksId
GROUP BY w.IndeksId, e.StanERP
HAVING SUM(w.Ilosc) <> e.StanERP;

Zapytanie jest ilustracyjne i zakłada, że stany ERP są wczytywane do osobnej tabeli podglądowej. Różnica zwykle ma jedną z dwóch przyczyn: dokument czeka w kolejce albo został odrzucony przez ERP. W obu przypadkach wiersz kolejki wskazuje, gdzie szukać. Bez tej kontroli rozbieżność wychodzi dopiero na inwentaryzacji.

Instalacja lokalna i usługa w chmurze a integracja

Miejsce uruchomienia WMS wpływa na sposób połączenia z ERP. Przy instalacji w sieci lokalnej oba systemy często stoją w tej samej serwerowni, więc wymiana odbywa się wewnątrz firmy. W usłudze w modelu SaaS połączenie przechodzi przez Internet, dlatego potrzebny jest zabezpieczony kanał oraz uzgodnione okno dostępności ERP.

W obu wariantach zasada pozostaje ta sama: kolejka przechowuje dokumenty, gdy druga strona jest niedostępna, i wysyła je po przywróceniu połączenia. Kierownik magazynu nie traci wtedy potwierdzeń z hali. Model usługi opisuje strona o magazynie w chmurze.

Uruchomienie integracji w projekcie wdrożeniowym

Integracja jest częścią wdrożenia, a nie dodatkiem po uruchomieniu magazynu. Najpierw analizuje się dokumenty, które ERP tworzy dla magazynu, a potem uzgadnia pola, jakie WMS ma odesłać. Test na kopii danych wychwytuje różnice w kodach towarów jeszcze przed pierwszym przyjęciem.

Rozbieżności stanów po uruchomieniu wychodzą na inwentaryzacji. Metodę liczenia bez zatrzymania pracy opisuje artykuł o inwentaryzacji w magazynie. Szerszy opis systemu zarządzania magazynem znajduje się na stronie WMS - system zarządzania magazynem, a ogólne zasady prowadzenia obiektu opisuje strona o zarządzaniu magazynem.

Oprogramowanie magazynowe w obiekcie wysokiego składowania

Magazyn wysokiego składowania dokłada do wymiany z ERP jedno wymaganie. Dokument musi nieść informację o gnieździe, bo zgodność ilości w ERP nie wystarcza, gdy paleta stoi na piątym poziomie w innej alejce. Adres lokalizacji pozostaje w WMS, a do ERP wraca ilość i magazyn.

Obiekty z automatyką dostają od WMS zlecenia transportowe, a ERP widzi tylko efekt biznesowy. Ten podział opisuje strona o tym, dla kogo są automatyczne magazyny wysokiego składowania. Dla małych magazynów bez automatyki wystarcza wymiana arkuszami.

Pytania i odpowiedzi o oprogramowanie magazynowe i integrację z ERP

Nie musi. Samodzielny program magazynowy w pełni wystarcza do ewidencji lokalizacji i stanów. Integracja usuwa podwójne wprowadzanie dokumentów i utrzymuje zgodność stanów między magazynem a systemem sprzedaży i księgowości.

Dane można wymieniać plikami XLS, przez WebService albo przez tabelę pośrednią w bazie. W instalacjach SAP stosuje się RFC, BAPI, IDoc lub REST API, w zależności od wersji systemu i architektury klienta.

Wiersz w kolejce wymiany dostaje status błędny razem z opisem przyczyny. Dokument pozostaje w WMS i trafia na listę do wyjaśnienia, więc nie znika po cichu, a pozostałe dokumenty z paczki są przetwarzane dalej.

Zwykle nie. Lokalizacje i palety prowadzi WMS, a do ERP wraca ilość, indeks i magazyn. ERP nie musi znać struktury regałów, a zmiana układu magazynu nie wymaga zmian w systemie sprzedaży.

Jeden system jest właścicielem kartoteki, zwykle ERP. WMS przyjmuje ją przez wymianę i nie pozwala edytować pól, które pochodzą z ERP, żeby uniknąć dwóch różnych opisów tego samego indeksu.

Glosariusz pojęć związanych z integracją oprogramowania magazynowego

Integracja WMS z ERP
Dwukierunkowa wymiana dokumentów i kartotek między systemem magazynowym a systemem planowania zasobów przedsiębiorstwa.
ERP
Enterprise Resource Planning, system prowadzący sprzedaż, zakupy, finanse i księgowość przedsiębiorstwa.
Dokument PZ
Przyjęcie zewnętrzne, dokument potwierdzający wprowadzenie towaru na stan magazynu.
Dokument WZ
Wydanie zewnętrzne, dokument potwierdzający zdjęcie towaru ze stanu i przekazanie go odbiorcy.
Dokument MM
Przesunięcie międzymagazynowe, które zmniejsza stan jednego magazynu i zwiększa stan drugiego.
WebService
Usługa sieciowa, przez którą dwa systemy wymieniają komunikaty w uzgodnionym formacie.
IDoc
Format dokumentu wymiany danych w systemach SAP, używany do przesyłania dokumentów między systemami.
Tabela pośrednia
Tabela w bazie danych, w której dokumenty czekają na odczyt przez drugi system, razem ze statusem i licznikiem prób.

Warto przeczytać