Nieodczytany kod rzadko jest przypadkiem. Zwykle ma powtarzalną przyczynę, która wraca przy każdej dostawie od tego samego kontrahenta albo przy pracy na tym samym urządzeniu. Różnica między magazynem, który traktuje odrzucenia jako zdarzenia losowe, a takim, który je zlicza, sprowadza się do jednego: rejestru odczytów. Sam mechanizm identyfikacji opisuje strona o Auto ID w magazynie.

Najczęstsze przyczyny błędów odczytu

Przyczyny dzielą się na dwie grupy, które wymagają zupełnie różnych działań naprawczych. Pierwsza dotyczy tego, czy czytnik w ogóle zobaczył kod. Druga tego, czy system potrafił zrozumieć, co zobaczył.

GrupaPrzyczynaGdzie szukać rozwiązania
Odczyt optycznyRozmyty druk, zbyt niska rozdzielczość głowicyKonfiguracja drukarki, wymiana taśmy
Zabrudzenie, zagniecenie lub przetarcie etykietySposób pakowania i transportu
Brak wolnego marginesu wokół koduProjekt etykiety u dostawcy
Słaby kontrast lub błyszczące podłożeMateriał etykiety, oświetlenie strefy
Interpretacja danychBrak separatora pól o zmiennej długościKonfiguracja czytnika
Nieistniejący lub przestarzały przedrostek polaSystem dostawcy generujący etykiety
Odwrócony format datySystem dostawcy
Błędna cyfra kontrolna numeruAlgorytm nadający numery u dostawcy

Rozdzielenie tych grup ma znaczenie praktyczne. Problem optyczny rozwiązuje się przy drukarce albo przy urządzeniu, problem z danymi wymaga rozmowy z dostawcą. Wysyłanie serwisu do skanera, który działa poprawnie, kosztuje czas i nie usuwa przyczyny.

Separator pól, który znika po drodze

Osobnego omówienia wymaga separator rozdzielający pola o zmiennej długości. Czytnik przesyła go zwykle jako znak sterujący ASCII 29, ale część urządzeń tego nie robi albo zamienia go na inny znak. Wtedy parser widzi jeden długi ciąg zamiast kilku pól i nie potrafi ustalić, gdzie kończy się numer partii, a zaczyna numer seryjny.

Diagnoza jest prosta: protokół kontroli pokazuje wprost, czy separator został przesłany i ile razy wystąpił. Poprawka sprowadza się do przeprogramowania czytnika kodem z jego instrukcji. Budowę kodów, w których ten problem występuje, opisuje strona o etykietach logistycznych GS1.

Studio WMS.net

Widać, czy czytnik przesłał separator

Ten jeden wiersz protokołu rozstrzyga, czy winę ponosi urządzenie, czy etykieta dostawcy.

Cztery werdykty parsera i co z nich wynika

System nie dzieli odczytów na udane i nieudane. Rozróżnia cztery stany, bo każdy wymaga innej reakcji.

WerdyktCo oznaczaCo zrobić
PoprawnyStruktura, sumy kontrolne i daty zgodne ze specyfikacjąNic, odczyt idzie dalej
Warunkowo zgodnyDane czytelne, ale z odstępstwem od standarduOdnotować i zgłosić dostawcy przy większej skali
BłędnyOdczytu nie da się bezpiecznie użyćOdrzucić i poprawić etykietę u źródła
NierozpoznanyCiąg nie pasuje do żadnego obsługiwanego standarduOpisać osobną regułę parsowania

Rozróżnienie drugiego i trzeciego stanu decyduje o płynności pracy. Traktowanie każdego odstępstwa jako błędu zatrzymuje dostawy przy drobiazgach. Traktowanie wszystkiego jako ostrzeżenia wpuszcza do bazy dane, którym nie można ufać. Sposób ustawienia tej granicy przy wyrobach medycznych opisuje strona o standardzie HIBC.

Etykieta, która tylko wygląda poprawnie

Najgroźniejszy przypadek to kod o prawidłowej budowie i błędnej cyfrze kontrolnej. Struktura się zgadza, pola dają się wyodrębnić, a mimo to numer jest przekłamany - najczęściej wskutek błędu druku albo ręcznego przepisania. Bez sprawdzenia sumy kontrolnej taki odczyt trafiłby do bazy jako poprawny i ujawnił się dopiero przy reklamacji.

Studio WMS.net

Sprawdzenie, którego nie widać gołym okiem

Cyfra kontrolna wychwytuje zamianę pojedynczego znaku i przestawienie sąsiednich, czyli dwa najczęstsze błędy przepisania.

Jak wygląda rejestr odczytów

Rejestr zapisuje każdą próbę odczytu, również tę zakończoną odrzuceniem. To warunek, żeby statystyka miała sens - dziennik obejmujący wyłącznie udane skany pokazywałby stuprocentową skuteczność niezależnie od stanu faktycznego.

Dla każdego zdarzenia zapisywany jest znacznik czasu, identyfikator operatora, surowy ciąg przesłany przez czytnik, werdykt parsera oraz powód odrzucenia. Surowy ciąg jest tu najważniejszy: bez niego analiza sprowadza się do domysłów, a z nim można odtworzyć problem bez szukania palety w hali.

Dziennik ma filtry po okresie, werdykcie i standardzie kodu oraz wyszukiwarkę po numerze wyrobu, partii i operatorze. Cztery liczniki nad tabelą pokazują liczbę odczytów, udział poprawnych, liczbę błędów i liczbę ostrzeżeń w wybranym okresie. Poniżej pracują dwa zestawienia: najczęstszych powodów odrzucenia oraz jakości etykiet w podziale na dostawców.

Studio WMS.net

Od liczby do konkretnego odczytu

Filtr po werdykcie oddziela przypadki wymagające reakcji od zwykłego ruchu, a wyszukiwarka prowadzi do pojedynczego zdarzenia.

Analiza jakości etykiet według dostawcy

Najbardziej wartościowe zastosowanie rejestru wynika z budowy samego numeru wyrobu. Jego początkowa część wskazuje podmiot, który go nadał, więc system potrafi przypisać odrzucenie do konkretnego kontrahenta bez ręcznego mapowania.

Z takiego zestawienia wynikają trzy rodzaje wniosków. Pierwszy to udział poprawnych odczytów w podziale na dostawców. Drugi to charakter problemu: czy dany kontrahent ma kłopot z jakością druku, czy ze strukturą danych. Trzeci to zmiana w czasie, czyli odpowiedź na pytanie, czy zgłoszona uwaga przyniosła skutek.

Twarde dane przenoszą rozmowę z poziomu wrażeń na poziom faktów. Zamiast stwierdzenia, że etykiety kontrahenta sprawiają kłopoty, dział logistyki pokazuje udział odrzuceń wraz z przykładami surowych ciągów. To argument, na który da się odpowiedzieć poprawką, a nie polemiką. Powiązanie takich danych z historią serii opisuje strona o Track and Trace, a wpływ jakości odczytu na proces wejściowy - strona o przyjęciach towaru do magazynu.

Jak wykorzystać dane o błędach

Zbieranie danych ma sens tylko wtedy, gdy prowadzi do decyzji. Poniższa instrukcja porządkuje sześć kroków od włączenia rejestracji po regułę dla formatu nietypowego.

  1. Włączenie rejestracji wszystkich odczytówUstawiamy zapis każdego skanu, także zakończonego odrzuceniem. Rejestr wyłącznie udanych odczytów daje statystykę nieprawdziwą.
  2. Filtrowanie po werdykcie parseraZawężamy dziennik do błędów i ostrzeżeń, aby oddzielić przypadki wymagające reakcji od zwykłego ruchu.
  3. Analiza surowego ciągu znakówOdczytujemy zapis przesłany przez czytnik i porównujemy go ze specyfikacją standardu, żeby ustalić, czy problem leży w druku, w danych czy w urządzeniu.
  4. Zestawienie jakości według prefiksu dostawcyGrupujemy odrzucenia po prefiksie firmy, aby wskazać kontrahentów wystawiających etykiety niezgodne ze specyfikacją.
  5. Rozdzielenie przyczyn sprzętowych od danychSprawdzamy, czy odrzucenia skupiają się na jednym urządzeniu lub jednej strefie. Taki rozkład wskazuje na usterkę, a nie na etykiety.
  6. Wprowadzenie reguły dla formatu nietypowegoDla dostawcy stosującego własny format opisujemy osobną regułę parsowania, zamiast dopuszczać ręczne wpisywanie danych.

Ostatni krok bywa pomijany, a rozwiązuje najbardziej uciążliwe przypadki. Kontrahent stosujący własne oznaczenia nie zmieni ich, bo działają w jego systemie. Opisanie reguły po naszej stronie usuwa blokadę bez otwierania furtki do ręcznego wpisywania numerów. Dobór urządzeń, na których pracuje operator, porządkuje strona o kolektorach danych Android, a poziomy referencyjne dla wskaźników pracy magazynu publikuje badanie DC Measures prowadzone przez WERC.

Błędy odczytu nie są kosztem wpisanym w ryzyko logistyczne. Są mierzalnym zjawiskiem o powtarzalnych przyczynach, a każda z nich ma adresata: drukarkę, czytnik albo system dostawcy. Rejestr odczytów zamienia wrażenie, że coś nie działa, w listę konkretnych rzeczy do naprawienia.

Pytania o błędy odczytu kodów

Dlaczego kod wygląda poprawnie, a system go odrzuca?

Bo poprawna struktura to nie to samo co poprawne dane. Parser sprawdza osobno rozpoznanie standardu, budowę pól, separator, cyfry kontrolne i formaty dat - odrzucenie może wynikać z każdego z tych sprawdzeń.

Czym różni się błąd od ostrzeżenia?

Błąd oznacza, że odczytu nie da się bezpiecznie użyć i zostaje odrzucony. Ostrzeżenie dopuszcza dane dalej, ale odnotowuje odstępstwo od specyfikacji w dzienniku.

Co oznacza status nierozpoznany?

Że ciąg nie pasuje do żadnego obsługiwanego standardu - nie zaczyna się od prefiksu HIBC, nie ma struktury identyfikatorów GS1 ani postaci adresu internetowego. Obsługa wymaga osobnej reguły.

Skąd wiadomo, który dostawca ma wadliwe etykiety?

Z prefiksu firmy zawartego w numerze wyrobu. System wiąże odczyt z prefiksem, dzięki czemu zestawienie jakości etykiet powstaje bez ręcznego przypisywania.

Czy warto zapisywać surowy ciąg znaków?

Tak. Bez niego analiza sprowadza się do domysłów. Zapis surowego odczytu pozwala odtworzyć, co dokładnie przesłał czytnik, bez szukania palety w magazynie.

Jak często przeglądać dziennik parsowania?

Wystarczy stały punkt w przeglądzie operacyjnym, na przykład raz w tygodniu. Wzrost udziału odrzuceń zwykle zapowiada problem sprzętowy albo zmianę po stronie dostawcy.

Baza wiedzy - pojęcia analizy odczytów

Terminy, które pojawiają się przy diagnozowaniu problemów ze skanowaniem.

Parser
Element systemu rozkładający odczytany ciąg znaków na pola danych zgodnie z regułami standardu.
Werdykt parsera
Wynik oceny odczytu: poprawny, warunkowo zgodny, błędny albo nierozpoznany.
Surowy ciąg znaków
Zapis dokładnie tego, co czytnik przesłał do systemu, przed jakąkolwiek interpretacją.
Cyfra kontrolna
Znak wyliczany z pozostałych znaków numeru, służący do wykrycia błędu odczytu lub przepisania.
Separator FNC1
Znak rozdzielający pola o zmiennej długości w kodzie GS1, przesyłany przez czytnik zwykle jako ASCII 29.
Prefiks firmy
Początkowa część numeru wyrobu wskazująca podmiot, który go nadał; podstawa analizy jakości według dostawcy.
Cicha strefa
Wolny margines wokół kodu, bez którego czytnik nie potrafi wyznaczyć granic symbolu.
Wskaźnik poprawności odczytu
Udział odczytów zakończonych werdyktem pozytywnym w łącznej liczbie skanów w danym okresie.

Zobacz analizę odczytów w działaniu

Przekonaj się, jak Studio WMS.net pokazuje wynik każdego sprawdzenia etykiety, rejestruje odrzucenia i zestawia jakość kodów według dostawcy - uruchom bezpłatne demo lub obejrzyj pełną galerię ekranów.