Program do magazynu wysokiego składowania odpowiada na jedno pytanie: gdzie leży każda paleta i kto ją ostatnio ruszał. Odpowiedź musi być aktualna w każdej sekundzie, także gdy pracuje kilkudziesięciu operatorów. Strona porównuje program WMS z arkuszem i prostym programem magazynowo-księgowym. Opisuje też składniki kosztu oraz kryteria wyboru.
Spis treści
Program WMS a arkusz i program księgowo-magazynowy
Arkusz kalkulacyjny zapisuje stan, który ktoś wpisał. Prosty program księgowo-magazynowy prowadzi ilości i wartości, ale część takich programów nie zna adresów gniazd. Program klasy WMS zapisuje ruch każdej palety razem z adresem i operatorem. Stan lokalizacji wynika wtedy z historii ruchów. W obiekcie z tysiącami gniazd różnica ujawnia się przy pierwszym spisie.
| Cecha | Arkusz | Program księgowo-magazynowy | Program WMS |
|---|---|---|---|
| Ewidencja | ilości wpisywane ręcznie | ilości i wartości na magazyn | ilości i wartości na gniazdo |
| Praca wielu osób | jedna osoba naraz | użytkownicy biurowi | wielu magazynierów z terminali jednocześnie |
| Kontrola operacji | brak | dokument przy wprowadzeniu | skan lokalizacji i towaru przy ruchu |
| Historia | zmieniana wstecz | dokumenty | ruchy palety z czasem i operatorem |
Dwukrotne pobranie tej samej palety
Dwóch magazynierów może w tej samej sekundzie wziąć zadanie pobrania tej samej palety. Program rozstrzyga to w bazie danych, a nie w interfejsie terminala. Poniższy fragment T-SQL jest ilustracyjny i nie pokazuje kodu produktu. Warunkowy UPDATE zmienia status tylko wtedy, gdy paleta nadal leży na stanie. Drugi terminal widzi zero zmienionych wierszy i dostaje komunikat o błędzie.
UPDATE dbo.Palety
SET Status = 'Pobrana', OperatorId = @OperatorId
WHERE PaletaId = @PaletaId AND Status = 'NaStanie';
IF @@ROWCOUNT = 0
THROW 50001, 'Paleta została już pobrana przez innego operatora.', 1;
Instrukcja UPDATE zakłada blokadę na wierszu, więc równoległa sesja czeka na jej zwolnienie. Po zwolnieniu warunek Status = 'NaStanie' przestaje być prawdziwy, a @@ROWCOUNT zwraca zero. Odczyt statusu w aplikacji i późniejszy zapis w osobnym kroku zostawiałyby lukę czasową. W tej luce oba terminale zobaczyłyby status NaStanie, bo odczyt przy domyślnym poziomie READ COMMITTED nie zakłada blokady aktualizacji. Zasady blokad opisuje przewodnik po blokowaniu i wersjonowaniu wierszy.
Reguła: o kolizji dwóch operatorów rozstrzyga baza danych, a nie aplikacja na terminalu. Warunek zapisany w klauzuli WHERE działa tak samo przy dwóch terminalach i przy dwustu.
Funkcje programu magazynowego
Program obsługuje cały cykl towaru, a nie wybrane fragmenty. Pominięty proces wraca do ewidencji ręcznej i przestaje być kontrolowany. Poniższe cztery obszary decydują o tym, czy program zastępuje papier i arkusz, czy tylko je uzupełnia.
- Przyjęcia i wydania. Dokument PZ weryfikuje ilość i zgodność z zamówieniem. Program wskazuje lokalizację według rotacji i gabarytów, z uwzględnieniem nośności. Dokument WZ zamyka wydanie.
- Kompletacja. Lista pobrań układa najkrótszą trasę przez magazyn, a skan potwierdza każde pobranie i od razu pokazuje pomyłkę.
- Inwentaryzacja ciągła. Pracownicy weryfikują wybrane lokalizacje między zadaniami, więc rozbieżności nie czekają na spis roczny.
- Etykiety. Program drukuje etykiety logistyczne z numerem SSCC i GTIN. Każdy skan etykiety aktualizuje stan bez ręcznego wpisywania.
Strefy i lokalizacje w konfiguracji
Program dzieli przestrzeń na strefy o różnym przeznaczeniu. Szybka rotacja leży blisko stref wydań, wolna na wyższych poziomach regałów, a osobna strefa buforowa przyjmuje towar przyjęty, lecz jeszcze niezweryfikowany. System proponuje lokalizację nowo przyjętego towaru według tych reguł, więc magazynier nie decyduje o tym przy każdej dostawie.
Budowę etykiet określa standard etykieta logistyczna GS1. Program wskazuje lokalizację dopiero po poznaniu wymiarów i masy towaru. Te dane zapisuje się w kartotece asortymentu, którą opisuje strona o kartotekach magazynowych.
Baza danych i integracja z ERP
Wszystkie stanowiska korzystają z jednej bazy. Terminal z Androidem pracuje w trybie online, więc zapis operacji następuje w chwili potwierdzenia, a kierownik w biurze widzi ten sam wiersz co operator przy regale. Edycja Express nie zawiera usługi SQL Server Agent, więc harmonogram kopii zapasowych i zadań okresowych trzeba uruchomić poza SQL Server.
Studio WMS.net wymienia dane z systemami ERP, na przykład z SAP, w czasie rzeczywistym. Dział sprzedaży widzi aktualną dostępność towaru bez telefonu do magazynu, a księgowość otrzymuje gotowe dokumenty magazynowe bez przepisywania. Dashboard pokazuje liczbę zrealizowanych zleceń i strukturę dokumentów. Ranking kontrahentów układa się według liczby obsłużonych palet.
Model licencjonowania i koszt programu
Koszt zależy od modelu licencjonowania i liczby stanowisk. Wpływa na niego także zakres integracji, więc jednej ceny nie podaje się bez analizy przypadku. W modelu SaaS koszt rozkłada się na regularne opłaty abonamentowe, bez własnych serwerów. W modelu on-premise firma płaci więcej na starcie za licencje i serwery, ale zachowuje pełną kontrolę nad danymi. Model chmurowy opisuje strona o magazynie w chmurze.
| Składnik kosztu | Od czego zależy | Uwaga |
|---|---|---|
| Licencja lub abonament | model i liczba stanowisk | SaaS to opłaty regularne, on-premise to koszt początkowy |
| Baza danych | edycja SQL Server | Express ogranicza bazę do 10 GB w wersji 2022 |
| Terminale z Androidem | liczba stanowisk w hali | zakup lub wynajem |
| Drukarki etykiet | liczba punktów przyjęć i pakowania | etykiety logistyczne na paletach |
| Sieć Wi-Fi | liczba poziomów regału | zasięg w każdej alejce |
| Czas zespołu | zakres testów i szkoleń | pozycja najczęściej pomijana w kalkulacji |
Studio WMS.net zapisuje dane w relacyjnej bazie SQL Server, a w małych instalacjach może pracować na bezpłatnej edycji Express. Edycja ogranicza rozmiar bazy do 10 GB, więc przy intensywnym ruchu rozważa się wersję Standard. Najszybciej rosną tabele z historią ruchów i pozycjami dokumentów, a najwolniej kartoteki, więc zmianę edycji planuje się przy zajętości około 80 procent limitu. Limity opisuje dokumentacja edycji SQL Server 2022, a skutki dla magazynu strona o SQL Express w WMS.
Poza licencją liczy się praca własnego zespołu przy testach i szkoleniach. Nawet dobrze skonfigurowany program nie przyniesie efektu bez przygotowanych ludzi. Przy SaaS dostawca prowadzi kopie zapasowe i zabezpieczenia serwerów, a przy on-premise robi to dział IT firmy, więc jego czas też wchodzi do rachunku.
Reguła: oferty porównuj jako całkowity koszt na kilka lat, a nie jako cenę licencji. Zbyt prosty program przestaje wystarczać przy wzroście firmy, a migracja po latach oznacza przestój i dodatkowy koszt.
Kryteria wyboru programu
Wybór opiera się na skali operacji, a nie wyłącznie na cenie. Pierwsze kryterium to demo na przykładowych danych. Studio WMS.net udostępnia bezpłatne demo, które opisuje strona demo magazyn WMS. Drugie kryterium to gotowa integracja z ERP, który firma już używa, na przykład z Symfonią albo z Subiektem nexo.
Na demo warto sprawdzić kilka konkretnych rzeczy, a nie tylko wygląd ekranów.
- Dane własne. Wczytaj kilkanaście własnych indeksów z wymiarami i masą, żeby zobaczyć, jak program dobiera gniazda.
- Dwa terminale. Spróbuj pobrać tę samą paletę z dwóch urządzeń naraz i sprawdź komunikat drugiego operatora.
- Integracja. Zapytaj o sposób wymiany dokumentów z ERP i o częstotliwość synchronizacji kartotek.
- Historia. Odtwórz pełną historię ruchów jednej palety z czasem i operatorem.
Trzecie kryterium dotyczy elastyczności konfiguracji lokalizacji. System powinien dostosować się do zmieniającego się asortymentu bez kosztownych modyfikacji na zamówienie. Czwarte dotyczy wsparcia po wdrożeniu: pomocy w języku polskim i czasu reakcji na awarię. Dostawca powinien też rozwijać program, gdy zmieniają się przepisy i potrzeby rynku. Program towarzyszy firmie przez lata, więc relacja z dostawcą liczy się równie mocno jak funkcje w dniu startu.
Wiele firm zaczyna od jednego obszaru, na przykład od kompletacji. Po sprawdzeniu efektów rozszerza program na kolejne procesy. Takie etapowe podejście ogranicza ryzyko i oswaja zespół z nową pracą. Przebieg wdrożenia opisuje strona o wdrożeniu WMS w magazynie wysokiego składowania, a pracę terminali strona o aplikacji WMS na Androida. Ogólny opis obiektu podaje artykuł magazyn wysokiego składowania.
Pytania i odpowiedzi o program do magazynu wysokiego składowania
Cena zależy od modelu licencjonowania, liczby stanowisk i zakresu integracji z ERP. W modelu SaaS płaci się abonament bez własnych serwerów, a w modelu on-premise więcej na starcie za licencje i infrastrukturę. Do kosztu dochodzą terminale, drukarki etykiet i sieć Wi-Fi.
Arkusz pozwala na pracę jednej osobie naraz i nie kontroluje operacji. Program WMS pozwala wielu magazynierom pracować jednocześnie na terminalach, zapisuje ruch każdej palety z adresem i operatorem oraz blokuje sprzeczne operacje.
W małych instalacjach tak. Express ogranicza rozmiar bazy do 10 GB w wersji 2022, więc przy dużym ruchu i długiej historii operacji planuje się przejście na edycję Standard, zanim baza odrzuci zapis.
Wiele firm zaczyna od jednego obszaru, na przykład kompletacji albo kontroli stanów. Po sprawdzeniu efektów rozszerza program na kolejne procesy. Takie podejście ogranicza ryzyko i pozwala zespołowi oswoić się ze zmianą.
Rozstrzyga o tym baza danych. Warunkowy UPDATE zmienia status palety tylko wtedy, gdy nadal leży na stanie, więc drugi terminal dostaje informację o błędzie zamiast duplikatu pobrania.
Glosariusz pojęć związanych z programem magazynowym
- WMS
- Warehouse Management System, czyli system zarządzania magazynem, który prowadzi stany na poziomie lokalizacji.
- SaaS
- Software as a Service, czyli program udostępniany jako usługa abonamentowa, bez własnych serwerów użytkownika.
- On-premise
- Model, w którym firma kupuje licencję i uruchamia program na własnej infrastrukturze.
- SQL Server Express
- Bezpłatna edycja SQL Server z limitem rozmiaru bazy i zasobów, stosowana w małych instalacjach.
- Całkowity koszt posiadania
- Suma wydatków na program, sprzęt, sieć, szkolenia i utrzymanie w całym okresie użytkowania.
- SSCC
- Serial Shipping Container Code, czyli numer jednostki logistycznej w standardzie GS1, nadawany pojedynczej palecie.
- GTIN
- Globalny numer jednostki handlowej, który identyfikuje towar w standardzie GS1 i jest kodowany na etykiecie.
- Lista pobrań
- Zestaw zadań kompletacji ułożony według kolejności lokalizacji, który prowadzi operatora najkrótszą trasą.
- Inwentaryzacja ciągła
- Liczenie wybranych lokalizacji w trakcie pracy magazynu, bez zatrzymywania operacji na czas spisu.