Logistyka obejmuje przepływ towaru od dostawcy do odbiorcy oraz informacje, które ten przepływ opisują. W małej firmie oba wątki prowadzi kilka osób w arkuszach. Gdy rosną liczby lokalizacji i pojazdów, potrzebne jest oprogramowanie, które zapisuje każde zdarzenie w jednym miejscu i pilnuje reguł.
Ten tekst porządkuje pojęcie na cztery obszary i pokazuje, jak wybrać ich zakres dla konkretnej firmy. Nie opisuje jednego produktu, lecz podział odpowiedzialności, który obowiązuje niezależnie od dostawcy.
Co obejmuje oprogramowanie do zarządzania logistyką
Oprogramowanie do zarządzania logistyką rejestruje zasoby i zdarzenia związane z przepływem towaru oraz dokumenty, które je potwierdzają. Zasobem jest lokalizacja w magazynie albo rampa przy bramie. Zdarzeniem jest przyjęcie palety, wyjazd pojazdu lub zmiana statusu zlecenia. Dokument potwierdza zdarzenie wobec kontrahenta i księgowości.
Pojęcie nie oznacza jednego programu. W praktyce składa się z modułów, z których każdy odpowiada za inny rekord podstawowy, czyli obiekt, wokół którego zapisuje się dane. Podział na obszary wynika właśnie z tego rekordu, a nie z nazwy modułu w ofercie.
| Obszar | Zarządza | Rekord podstawowy | Typowa klasa systemu |
|---|---|---|---|
| Magazyn | zapasami i lokalizacjami towaru | stan w lokalizacji | WMS |
| Transport | zleceniami przewozu i trasami | zlecenie transportowe | TMS |
| Plac | wizytami pojazdów i rampami | wizyta z awizacją | YMS |
| Dokumenty | obiegiem dokumentów magazynowych i przewozowych | dokument ze statusem | moduły powyższych oraz ERP |
Reguła: o przynależności funkcji do obszaru rozstrzyga rekord podstawowy. Stan zapasu należy do magazynu, a czas przyjazdu pojazdu do placu, niezależnie od tego, w którym module wyświetla się raport.
Wiele firm ma już ERP, który prowadzi kartoteki i sprzedaż. ERP zwykle nie zarządza lokalizacjami ani nie planuje tras, więc pozostaje źródłem zamówień i odbiorcą rozliczeń. Mapę systemów i ich granice opisuje artykuł o oprogramowaniu logistycznym, a wyliczenie funkcji, których oczekuje się od programu dla logistyki, zawiera tekst o funkcjach oprogramowania dla logistyki.
Magazyn - zapasy i lokalizacje
System magazynowy odpowiada na pytanie, ile czego leży w którym miejscu i co wolno z tym zrobić. Podstawą jest lokalizacja, czyli adres gniazda regałowego lub pola w strefie. Każdy towar ma stan w konkretnej lokalizacji, a każda operacja zmienia ten stan przez zapis ruchu. Przyjęcie zapisuje ruch dodatni, wydanie ujemny.
Stan zapasu jest wtedy wielkością pochodną, którą system liczy, a nie wpisuje. Nie trzyma się go w osobnej kolumnie, którą trzeba ręcznie aktualizować, tylko liczy z ruchów. Poniższe zapytanie pokazuje ten mechanizm. Nazwy tabel są przykładowe i nie odpowiadają schematowi konkretnego produktu.
-- stan towaru w lokalizacji jako suma ruchów magazynowych
SELECT r.LokalizacjaId,
r.TowarId,
SUM(r.Ilosc) AS Stan
FROM dbo.RuchMagazynowy AS r
GROUP BY r.LokalizacjaId, r.TowarId
HAVING SUM(r.Ilosc) <> 0;
Lokalizacja pełni w systemie rolę adresu, ale też źródła reguł. Miejsce może być przeznaczone dla towarów o określonym gabarycie albo wyłączone z użycia do czasu przeglądu regału. System, który zna te ograniczenia, nie zaproponuje operatorowi gniazda, w którym paleta się nie zmieści. Bez takiej wiedzy odkładanie opiera się na pamięci magazyniera, a pamięć nie skaluje się z liczbą adresów.
Reguła: ruch magazynowy zapisuje się w chwili fizycznego wykonania operacji, a nie po jej zakończeniu na koniec zmiany. Opóźnienie zapisu tworzy rozbieżność, której nikt nie potrafi później wyjaśnić.
Przy milionach ruchów takie zapytanie trzeba wspomóc. Stosuje się tabelę stanów aktualizowaną w tej samej transakcji co ruch albo widok indeksowany, a rozbieżności między sumą ruchów a stanem wyłapuje kontrola nocna. Sposób pracy magazyniera wspiera aplikacja na terminalu z Androidem, opisana w artykule o mobilnej aplikacji magazynowej. Zakres modułów i budowę systemu przedstawia tekst o systemie zarządzania magazynem WMS.

Transport - zlecenia i trasy
System transportowy planuje przewóz od załadunku do rozliczenia. Rekordem podstawowym jest zlecenie transportowe z punktem załadunku i punktem rozładunku, każdym z własnym oknem czasowym. Do zlecenia przypisuje się pojazd i kierowcę, a system układa trasę i wylicza przewidywany czas przyjazdu do kolejnych punktów.
Ważną częścią tego obszaru jest rozliczenie. Koszt przewozu obejmuje paliwo oraz opłaty drogowe, a osobną pozycją jest czas pracy kierowcy. Marża zlecenia powstaje po zestawieniu tych kosztów z ceną dla klienta. Dane z telematyki (pozycja GPS, zużycie paliwa) zasilają te obliczenia, ale nie są jedynym źródłem, bo część kosztów pochodzi z faktur. Przegląd klasy TMS zawiera artykuł o programie do zarządzania transportem, a mapę systemów w branży przewozowej - tekst o systemach IT dla branży TSL.
| Składnik kosztu | Źródło danych | Uwaga |
|---|---|---|
| Paliwo | telematyka lub karty paliwowe | zużycie różni się od normy przy jeździe z pustą naczepą |
| Opłaty drogowe | rozliczenia operatorów opłat | przypisuje się do zlecenia po numerze rejestracyjnym i dacie |
| Czas pracy kierowcy | tachograf i grafik | obejmuje postoje w kolejce przed rampą |
Przykładem systemu klasy TMS jest linkway.TMS, opisany na stronie producenta. Firma, która prowadzi tylko magazyn, może w ogóle nie potrzebować tego obszaru. Firma, która zleca przewóz podwykonawcom, potrzebuje go w wersji uproszczonej, obejmującej zlecenie i przewoźnika oraz dokument z rozliczeniem.
Plac i awizacje jako styk obszarów
Plac leży między transportem a magazynem i ta pozycja nadaje mu odrębne miejsce. Pojazd, który przekroczył bramę, jest już w obiekcie, choć jego ładunek nie istnieje jeszcze w stanach magazynowych. System placu obsługuje ten przedział czasu: rezerwuje okno na rampie, odprawia pojazd na bramie i wskazuje miejsce postoju.
Rekordem jest wizyta z awizacją i przydziałem rampy, opisana znacznikami czasu. Zbiera ona dane od przewoźnika (numer rejestracyjny, ETA), od magazynu (pojemność ramp) i od ochrony (czas wjazdu). Sama rezerwacja okna nie rozwiązuje problemu, jeśli na placu nie ma miejsca na oczekujące pojazdy. System placu prowadzi więc także listę stanowisk postojowych z ich statusami. Wolne stanowisko można przydzielić pojazdowi, który przyjechał przed oknem, a zajęte przez pojazd bez awizacji trafia na osobną listę do decyzji logistyka. Zakres funkcji i różnice względem systemu magazynowego omawia artykuł o systemie YMS. Moduł produktowy SoftwareStudio nazywa się Studio VSS.net i obejmuje awizacje oraz mapę placu.

Dokumenty i obieg między obszarami
Dokument jest czwartym obszarem, ponieważ łączy pozostałe trzy z kontrahentem i księgowością. Każdy obszar wystawia własne dokumenty, a ich status pokazuje, na jakim etapie jest przepływ. Przyjęcie towaru kończy dokument PZ, wydanie dokument WZ, a przewóz towarzyszy mu list przewozowy, w ruchu międzynarodowym zwykle CMR.
| Dokument | Powstaje w obszarze | Co potwierdza |
|---|---|---|
| Awizacja | plac | uzgodnione okno przyjazdu pojazdu |
| PZ (przyjęcie zewnętrzne) | magazyn | wprowadzenie towaru na stan lokalizacji |
| WZ (wydanie zewnętrzne) | magazyn | zdjęcie towaru ze stanu na rzecz odbiorcy |
| List przewozowy | transport | przekazanie towaru przewoźnikowi |
Najczęstsze błędy w tym obszarze to dokumenty, które nie mają pary. Wydanie z magazynu bez listu przewozowego oznacza, że towar wyjechał, a nikt nie potwierdził odbioru. Kontrolę tego rodzaju wykonuje zapytanie zestawiające zlecenia ze statusem wydanym z dokumentami przewozowymi.
-- przykładowa kontrola: zlecenia wydane z magazynu bez dokumentu przewozowego
SELECT z.ZlecenieId, z.NumerZlecenia, z.DataWydania
FROM dbo.Zlecenie AS z
WHERE z.Status = 'WYDANE'
AND NOT EXISTS (
SELECT 1
FROM dbo.DokumentPrzewozowy AS d
WHERE d.ZlecenieId = z.ZlecenieId
);
Status dokumentu jest krótką maszyną stanów: szkic, zatwierdzony, zrealizowany, anulowany. Przejścia między stanami zapisują autora i czas, a zmiana wstecz wymaga osobnego uprawnienia. Taki ślad pozwala odpowiedzieć na pytanie, kto i kiedy zmienił dokument, gdy kontrahent kwestionuje ilości albo terminy. Dokument zrealizowany nie podlega edycji, a korekta powstaje jako nowy dokument powiązany z pierwotnym.
Typy dokumentów magazynowych i ich obieg opisuje artykuł o dokumentach magazynowych w WMS. Etykiety na jednostkach logistycznych, które wiążą towar z dokumentem, omawia tekst o etykietach logistycznych GS1.
Jak dobrać zakres oprogramowania
Zakres wybiera się od objawu, a nie od katalogu funkcji. Firma zaczyna od obszaru, w którym traci najwięcej czasu albo pieniędzy, i tam uruchamia pierwszy moduł. Pozostałe obszary dochodzą, gdy pierwszy zostanie opanowany, a dane z niego są wiarygodne.
| Objaw w firmie | Obszar do objęcia | Pierwszy krok |
|---|---|---|
| Rozbieżności stanów po inwentaryzacji | magazyn | adresacja lokalizacji i potwierdzanie ruchów skanem |
| Kolejki pojazdów przed magazynem | plac | rezerwacja okien czasowych na rampach |
| Nieznana marża na zleceniach przewozu | transport | rejestr zleceń z kosztami i przypisanym pojazdem |
| Poszukiwanie dokumentów w skrzynce e-mail | dokumenty | status dokumentu przypisany do zlecenia |
Na wybór wpływa też skala. Od liczby lokalizacji i dziennych wizyt pojazdów zależy, czy wystarczy rozwiązanie proste, czy potrzebne jest wielomodułowe. Do oceny przydają się cztery pytania kontrolne.
- Liczba lokalizacji - powyżej kilkuset adresów ręczna adresacja przestaje być wiarygodna i trzeba ją wymusić skanem.
- Wizyty pojazdów - gdy dziennie przyjeżdża kilkanaście pojazdów, telefon dyspozytora przestaje wystarczać do koordynacji ramp.
- Liczba klientów - obsługa wielu klientów naraz wymaga rozdzielenia danych i osobnych uprawnień.
- Integracje - każdy system zewnętrzny, z którym trzeba wymieniać dane, dodaje interfejs do utrzymania.
Dodatkowym kryterium jest gotowość danych. System nie naprawi kartotek, w których ten sam towar występuje pod trzema symbolami. Przed wdrożeniem należy uporządkować słowniki, a ich zakres i kolejność ustala analiza przedwdrożeniowa. Argumenty za wdrożeniem magazynowego modułu zestawia artykuł o tym, kiedy wdrożyć system WMS. Gdy potrzeby są nietypowe, rozważa się rozwiązanie pisane pod firmę, co opisuje strona o oprogramowaniu na zamówienie.
Pilotaż na jednym obiekcie daje więcej niż plan na papierze. Na małej próbie widać, które słowniki są niekompletne, a które reguły okazują się w praktyce zbyt sztywne. Dopiero po pilotażu ustala się harmonogram dla pozostałych lokalizacji. Wdrożenie, które od razu obejmuje całą firmę, ma jeden punkt awarii: błąd w konfiguracji powiela się we wszystkich obiektach jednocześnie.
Wskaźniki dla każdego obszaru
Oprogramowanie ma sens, gdy jego skutek da się zmierzyć. Każdy obszar ma wskaźniki, które system liczy z zapisanych zdarzeń, bez ręcznej pracy nad zestawieniem. Pomiar zaczyna się przed wdrożeniem, żeby porównanie po zmianie miało punkt odniesienia.
| Obszar | Wskaźnik | Z czego wynika |
|---|---|---|
| Magazyn | zgodność stanów przy inwentaryzacji | różnica między sumą ruchów a policzonym stanem |
| Transport | marża na zleceniu | cena dla klienta pomniejszona o koszt przewozu |
| Plac | czas oczekiwania na rampę | różnica między wjazdem a początkiem obsługi |
| Dokumenty | odsetek zleceń z kompletem dokumentów | zestawienie zleceń z dokumentami powiązanymi |
Wskaźniki obliczane w jednym obszarze warto zestawiać z danymi z innego. Czas oczekiwania pojazdu na rampę wpływa na koszt przewozu, bo kierowca płatny za godzinę stoi w kolejce. Zgodność stanów wpływa na terminowość wydań. Dopiero wspólna baza zdarzeń pozwala policzyć te zależności bez ręcznego łączenia arkuszy z różnych działów.
Granice systemów i wymiana danych
Obszary działają na wspólnych danych, więc granica między nimi jest granicą odpowiedzialności za rekord. Zlecenie pochodzi z ERP lub od klienta i trafia do systemu transportowego, awizacja odwołuje się do zlecenia, a magazyn przyjmuje towar pod numerem tej samej awizacji. Klucz łączący te zdarzenia nadaje się raz i przekazuje dalej bez zmian.
Wymiana danych odbywa się przez interfejs REST albo kolejkę komunikatów. Bezpośredni zapis do bazy innego systemu bywa szybki na starcie, lecz łamie jego reguły i utrudnia aktualizacje. Mechanizmy wymiany między WMS a ERP opisuje artykuł o integracji WMS z ERP przez REST i kolejki.
Reguła: każdy rekord ma jednego właściciela. Pozostałe systemy czytają go lub subskrybują zmiany, ale nie modyfikują własnej kopii bez zwrotnego komunikatu.
Identyfikacja towaru i jednostek logistycznych powinna opierać się na standardach, a nie na kodach lokalnych. Standardy GS1 opisują numery GTIN dla towaru oraz numer SSCC dla palety lub paczki. Organizacja GS1 Polska publikuje ich opis na stronie gs1pl.org.
Oprogramowanie do zarządzania logistyką pozostaje więc zbiorem uzgodnionych granic. Jeśli te granice są zapisane w słowniku danych i w umowach o integracji, wymiana modułu na inny nie wymaga przebudowy całego środowiska. Nowe obszary da się dołączać, ponieważ punkt styku jest znany. Zakres dla firm prowadzących wyłącznie planowanie przyjazdów i placu opisuje osobny tekst o oprogramowaniu dla firm logistycznych.




