Magazyn z czytnikami produkuje dane bez przerwy. Każde pociągnięcie spustu to wiersz w rejestrze, a po zmianie takich wierszy są tysiące. Sama obecność danych w bazie niczego nie zmienia, dopóki nikt nie patrzy na nie w formie, z której coś wynika. Dashboard Auto ID zbiera rejestry w kilka liczb do oglądania w trakcie zmiany i kilka zestawień na przegląd miesięczny.

Co system liczy

Zestaw wskaźników wynika z danych, które parser zapisuje przy każdym odczycie. Do rejestru trafia werdykt razem ze znacznikiem czasu, a obok nich numer towaru i standard kodu. Z tych informacji powstaje wszystko, co pokazuje panel.

WskaźnikCo pokazujeNa co zwraca uwagę
Skany dziśliczba odczytów od początku dniatempo pracy na tle typowego dnia
Poprawność dziśodsetek odczytów z werdyktem poprawnymjakość etykiet i sprawność czytników
Błędy dziśsuma odczytów błędnych i nierozpoznanychoperacje, które ktoś musiał ratować ręcznie
Ostrzeżenia dziśodczyty warunkowo zgodneskala pracy w trybie awaryjnym parsera
Unikalne numery towaroweliczba różnych numerów GTIN w ciągu dniazróżnicowanie asortymentu i trudność zleceń
Skany 7 dniodczyty w bieżącym tygodniutło dla dzisiejszego wyniku
Jednostki i szablonyliczba jednostek logistycznych i szablonów etykietstan konfiguracji modułu

Zrzuty pochodzą ze środowiska demonstracyjnego, w którym nie zarejestrowano odczytów, więc liczniki stoją na zerze. Widać za to strukturę, a ona odpowiada na pytanie, co da się zmierzyć, zanim padnie pytanie o wartości. Mechanizm, który te dane wytwarza, opisuje strona o weryfikacji etykiet w czasie rzeczywistym.

Poprawność odczytów i jej interpretacja

Poprawność odczytów, czyli udział odczytów udanych przy pierwszej próbie, mierzy jakość całego łańcucha, od druku etykiety po reguły parsera. Spadek oznacza, że ktoś skanuje po kilka razy albo przepisuje numery ręcznie.

Kuszące jest podanie widełek, na przykład dziewięćdziesięciu ośmiu procent, jako poziomu dobrego. Byłaby to liczba wyjęta z kontekstu. Magazyn przyjmujący towar od stałych dostawców, którzy drukują na tych samych urządzeniach, i magazyn obsługujący sto podmiotów o różnej dojrzałości to dwa różne światy.

Zamiast progu z opracowania - własna linia bazowa: przez dwa lub trzy tygodnie po uruchomieniu odczytu tylko obserwuj i notuj wynik. Ta wartość staje się punktem odniesienia, a próg alarmowy ustawia się poniżej niej. Odchylenie od własnej normy jest sygnałem, liczba z cudzego raportu nie jest.

Gdy wskaźnik spada, przyczyn szuka się po kolei i warto trzymać się tej kolejności.

Właściwą kolejność podpowiada zwykle komunikat błędu zapisany w rejestrze.

Wydajność godzinowa i wąskie gardła

Wykres godzinowy rozkłada wynik dnia na kolejne godziny zmiany i dzieli słupki na odczyty poprawne i błędne. Kształt wykresu mówi więcej niż liczba zbiorcza, bo magazyn nie pracuje równo. Szczyty pojawiają się przy przyjęciach porannych i przy kompletacji przed odjazdem transportu.

Zestawienie przydaje się w kilku sytuacjach. Nagły spadek odczytów w jednej strefie przy stałym tempie w pozostałych oznacza zator i wymaga reakcji od razu. Rozkład z poprzednich tygodni pokazuje, kiedy potrzeba więcej rąk przy przyjęciu towaru, a kiedy przy kompletacji zleceń. Porównanie skanerów pierścieniowych z terminalami pistoletowymi pokazuje, czy zmiana narzędzia przyspieszyła pracę.

Liczba skanów na godzinę nie jest sama w sobie miarą wydajności. Pozycja z partią i terminem ważności wymaga innej pracy niż paleta jednorodnego towaru. Dlatego czyta się ją razem z liczbą unikalnych numerów towarowych i z rodzajem realizowanych operacji magazynowych.

Zestawienie wyjątków jako wczesne ostrzeżenie

Najbardziej użyteczna część panelu pokazuje to, co poszło źle. Zestawienie zbiera odczyty bez werdyktu poprawnego i grupuje je według rodzaju. Kierownik widzi narastający problem, póki jest mały, zamiast czekać na zgłoszenie o opóźnionej wysyłce.

Rodzaj wyjątkuTypowa przyczynaPierwszy krok
Błąd struktury kodubrakujący separator albo zły format datysprawdzić szablon etykiety u wystawcy
Niezgodna cyfra kontrolnanumer przepisany ręcznie albo błąd generatorazweryfikować numer w kartotece
Kod nierozpoznanyformat własny dostawcydodać profil parsowania dla prefiksu
Towar spoza zadaniapomyłka przy pobraniu albo błędna awizacjaporównać pozycję z dokumentem
Powtarzane próby odczytuuszkodzona albo słabo wydrukowana etykietaobejrzeć etykietę i wydrukować nową
Odczyt warunkowo zgodnyzadziałał tryb awaryjny parseraustalić, ile etykiet działa dzięki niemu

Ostatni wiersz bywa niedoceniany. Odczyty warunkowe nie zatrzymują pracy, więc łatwo je przeoczyć, a ich liczba mówi, jaka część etykiet jest wadliwa i działa tylko dlatego, że system ją ratuje. Wzrost tego udziału oznacza spadek jakości etykiet, nawet gdy wskaźnik błędów wygląda spokojnie.

Studio WMS.net - dziennik parsowania z filtrami okresu, werdyktu i standardu oraz licznikami odczytów
Filtry dziennika parsowania - okres, werdykt i standard kodu, a pod nimi liczniki odczytów w wybranym zakresie

Panel odpowiada na pytanie, czy dziś jest dobrze. Co dokładnie się wydarzyło, pokazuje dziennik parsowania, czyli rejestr pojedynczych odczytów z filtrami i z eksportem do arkusza.

Wskaźniki dnia w zapytaniu T-SQL

Liczby z panelu da się odtworzyć zapytaniem do rejestru odczytów. Poniższy przykład jest ilustracyjny i nie pokazuje struktury bazy produktu. Nazwy tabeli i kolumn są umowne. Pierwsze zapytanie liczy dzienne skany wraz z odsetkiem poprawnych z ostatnich siedmiu dni, a drugie grupuje odrzucenia według prefiksu.

SELECT CAST(DataOdczytu AS date) AS Dzien,
       COUNT(*) AS Skany,
       100.0 * SUM(CASE WHEN Werdykt = 'Poprawna' THEN 1 ELSE 0 END) / COUNT(*) AS ProcentPoprawnych,
       COUNT(DISTINCT Gtin) AS UnikalneGtin
FROM dbo.DziennikParsowania
WHERE DataOdczytu >= DATEADD(DAY, -7, CAST(SYSDATETIME() AS date))
GROUP BY CAST(DataOdczytu AS date)
ORDER BY Dzien;

SELECT Prefiks, Komunikat, COUNT(*) AS Odrzucenia,
       100.0 * COUNT(*) / SUM(COUNT(*)) OVER () AS UdzialProc
FROM dbo.DziennikParsowania
WHERE Werdykt IN ('Bledna', 'Nierozpoznana')
  AND DataOdczytu >= DATEADD(DAY, -30, SYSDATETIME())
GROUP BY Prefiks, Komunikat
ORDER BY Odrzucenia DESC;

Dziennik rośnie z każdym skanem, więc koszt takich zapytań zależy od indeksu na kolumnie DataOdczytu z dołączonymi kolumnami używanymi w zapytaniach. Bez niego silnik czyta całą tabelę, co plan wykonania pokazuje jako skan zamiast wyszukiwania po indeksie. Składnię opisuje dokumentacja CREATE INDEX w SQL Server, a drugie zapytanie korzysta z funkcji okna z klauzulą OVER.

Analiza według dostawcy

Błędy można ułożyć na dwa sposoby i oba są potrzebne. Grupowanie według komunikatu parsera pokazuje, jaka usterka powtarza się najczęściej, więc kieruje działania techniczne. Grupowanie według prefiksu firmy zapisanego w numerze towaru wskazuje, kto wadliwe etykiety wystawia.

Studio WMS.net - analiza błędów parsowania w podziale na najczęstsze komunikaty oraz na dostawcę i prefiks
Dwie perspektywy analizy błędów - według komunikatu parsera oraz według prefiksu firmy nadającej numery

Druga perspektywa zmienia charakter rozmowy z kontrahentem. Zdanie, że etykiety bywają nieczytelne, jest opinią i łatwo je odeprzeć. Zdanie, że w minionym miesiącu z danego prefiksu odrzucono określoną liczbę odczytów, najczęściej przez brak separatora po polu partii, jest faktem popartym eksportem. Pierwsze kończy się wymianą uprzejmości, drugie poprawą szablonu.

Ta sama informacja pomaga w decyzjach operacyjnych. Jeśli większość wyjątków dnia dotyczy jednego dostawcy, jego transport kieruje się na osobną ścieżkę kontroli, zamiast blokować pozostałe doki. Układ etykiety paletowej opisuje strona o etykietach logistycznych GS1.

Dziennik rejestracji partii i wycofanie z obrotu

Osobna część panelu zestawia dane z etykiet z dokumentami, które na ich podstawie powstały. Wiersz łączy numer towaru i partię z terminem ważności oraz z dokumentem przyjęcia.

Studio WMS.net - dziennik rejestracji partii z numerami GTIN, partii, terminami ważności i dokumentami przyjęcia
Dziennik rejestracji partii - każdy wiersz wiąże numer GTIN, partię i termin ważności z dokumentem przyjęcia

Wartość zestawienia widać w chwili, w której producent wycofuje partię i podaje jej numer. Pytania są dwa: czy partia leży w magazynie i czy część już wyjechała. Bez rejestru odpowiedź wymaga przeglądania dokumentów przyjęcia po kolei, a z rejestrem sprowadza się do wpisania numeru partii. Ewidencję opisuje strona o partiach produkcyjnych i datach ważności.

Zakres przełącza się między siedmioma a dziewięćdziesięcioma dniami, a wynik można wyeksportować. Przy wycofaniu taki eksport bywa załącznikiem do korespondencji z producentem albo z inspekcją.

Jak ustawić własne progi alarmowe

Panel pokazuje liczby, ale nie rozstrzyga, która z nich jest zła. Próg trzeba ustawić samemu, najlepiej w czterech etapach.

  1. Zmierz stan wyjściowy. Przez dwa lub trzy tygodnie obserwuj poprawność odczytów i liczbę wyjątków. Zapisz wynik dla dni typowych i dla dni ze szczytem.
  2. Ustal, co znaczy problem. Próg powinien odpowiadać poziomowi, przy którym praca zaczyna się zacinać, a nie okrągłej liczbie. Ustal go razem z kierownikiem zmiany, który widzi skutki na hali.
  3. Rozdziel obserwację od reakcji. Wskaźniki dnia służą do reakcji w trakcie zmiany, a zestawienia według dostawcy do przeglądu tygodniowego lub miesięcznego.
  4. Sprawdzaj próg po zmianach. Nowy dostawca albo wymiana czytników zmienia warunki, więc pomiar trzeba powtórzyć.

Powiadomienie po przekroczeniu progu ma sens tylko wtedy, gdy próg jest dobrze dobrany. Alert, który odzywa się codziennie, po tygodniu przestaje być alertem. Lepiej zacząć od progu wysokiego i obniżać go stopniowo. Wskaźniki są tyle warte, ile jakość odczytów, które je tworzą, stąd związek ze stanami magazynowymi i z rzetelnością inwentaryzacji.

Pytania i odpowiedzi o wskaźniki skanowania

Nie ma wartości pasującej do każdego magazynu. Poziom zależy od tego, kto drukuje etykiety, w jakich warunkach pracują czytniki i jak zróżnicowany jest asortyment. Punktem odniesienia jest własny pomiar z pierwszych tygodni, a dopiero od niego ustala się próg alarmowy.

Dashboard pokazuje wartości zbiorcze dla bieżącego dnia i tygodnia, więc odpowiada na pytanie, czy dziś jest dobrze. Dziennik zawiera pojedyncze odczyty z werdyktem i analizę błędów według komunikatu oraz dostawcy. Pierwszy służy do obserwacji, drugi do dochodzenia.

Ta sama liczba skanów przy dziesięciu numerach towarowych i przy trzystu oznacza inne obciążenie, bo przy dużym rozproszeniu rośnie liczba przejść między lokalizacjami. Zestawienie obu liczb pokazuje, czy spadek wydajności wynika z tempa pracy, czy ze struktury zleceń.

Prefiks w numerze towaru wskazuje firmę, która go nadała, więc zestawienie prowadzi wprost do źródła wadliwych etykiet. Zamiast ogólnego stwierdzenia można podać liczbę odrzuconych odczytów w okresie i konkretną przyczynę.

Nie, uzupełnia je. Zestawienie wiąże numer towaru, partię i termin ważności z numerem dokumentu przyjęcia. Przy wycofaniu partii z obrotu można w jednym miejscu sprawdzić, którym dokumentem weszła na stan i w jakiej ilości.

Wskaźniki dnia mają sens na bieżąco, bo pozwalają zareagować w trakcie zmiany. Zestawienia okresowe, zwłaszcza analiza według dostawcy, nadają się do przeglądu tygodniowego lub miesięcznego, bo dopiero wtedy widać, czy usterka jest przypadkiem.

Glosariusz pojęć związanych z pomiarem skanowania

Auto ID
Automatyczna identyfikacja towarów, czyli odczyt danych z kodów i etykiet zamiast wprowadzania ich z klawiatury.
Poprawność odczytów
Udział odczytów zakończonych werdyktem poprawnym w łącznej liczbie skanów w danym okresie.
Wydajność godzinowa
Liczba odczytów w kolejnych godzinach zmiany, z podziałem na poprawne i błędne.
Wyjątek
Odczyt bez werdyktu poprawnego: błędny, warunkowo zgodny albo nierozpoznany.
Prefiks firmy
Część numeru towaru przypisana konkretnemu przedsiębiorstwu, pozwalająca powiązać etykietę z jej wystawcą.
Track and trace
Możliwość odtworzenia drogi partii towaru na podstawie zapisanych odczytów i dokumentów.
Linia bazowa
Wynik pomiaru z okresu odniesienia, wobec którego ocenia się późniejsze zmiany wskaźnika.
Funkcja okna
Funkcja T-SQL z klauzulą OVER, która liczy wynik na zbiorze wierszy bez grupowania, na przykład udział w sumie.

Warto przeczytać o skanowaniu i systemie WMS