Skany przed zatwierdzeniem na nośnik, czyli sztuki zeskanowane przy przyjęciu, leżą w opisywanym wdrożeniu w osobnej tabeli i nie zmieniają stanu magazynowego. Magazynier na terminalu skanuje kolejne sztuki, wybiera „Zakończ paletę” i skanuje numer nośnika. Dopiero ten skan uruchamia procedurę, która przenosi skany do ruchów magazynowych. Kierownik magazynu widzi skany czekające w osobnym zestawieniu i może je usunąć.
W opisywanym wdrożeniu stan zmienia dopiero zamknięcie palety, bo skan sztuki trafia do osobnej tabeli skanów czekających, a stan sztuki liczy funkcja z samych zatwierdzonych ruchów. Skan nośnika wywołuje procedurę, która w jednej transakcji wstawia czekające skany do ruchów jako zatwierdzone i oznacza je jako nieaktywne.
W opisywanym wdrożeniu jeden numer dokumentu obejmuje wiele nośników, a przerwana sesja nie jest wznawiana. Etykiety i odczyt danych sztuki z programu ERP, które poprzedzają wpis do skanów czekających, opisuje artykuł o przyjęciu jednym skanem. My zaczynamy w chwili, gdy sztuka czeka już w tabeli.
Przyjęcie na terminalu ma dwa kroki na jednym ekranie
Pierwszy krok to skanowanie sztuk w polu skanu. Drugi to skan nośnika w polu numeru nośnika, które pojawia się po przycisku „Zakończ paletę”. Ekran ma trzy przyciski: „Cofnij”, „Zakończ paletę” i „Zakończ”. Numer dokumentu powstaje przy wejściu na ekran jako numer referencyjny i obowiązuje całą sesję. Procedura zamykająca wpisuje go później jako numer dokumentu.
Dopóki magazynier nie wybierze „Zakończ paletę”, pole numeru nośnika się nie pojawia, więc na ekranie jest tylko pole skanu sztuk. Po wyborze tego przycisku ekran przechodzi do skanu nośnika, a skan nośnika uruchamia zamknięcie palety. Skany sztuk i skan nośnika należą więc do jednego przyjęcia, ale tylko drugi z nich zmienia stan.
Skan sztuki trafia do osobnej tabeli i nie zmienia stanu
Skan sztuki trafia do osobnej tabeli skanów czekających, a nie do ruchów magazynowych. Powstaje tam wiersz z ilością i kodem etykiety, z partią i miejscem oraz z numerem dokumentu i loginem, oznaczony jako aktywny. Stan sztuki liczy funkcja z samych zatwierdzonych ruchów magazynowych, więc skan czekający stanu nie zmienia. Tej funkcji używają kontrola na ekranie przyjęcia i weryfikacja etykiety.
Po zamknięciu nośnika wiersze nie są kasowane, tylko oznaczane jako nieaktywne. Tabela skanów czekających nie jest więc dokumentem ani zapisem stanu, tylko miejscem, w którym sztuka czeka na skan nośnika. O stanie decydują wyłącznie zatwierdzone ruchy magazynowe. Nośnik bez sztuk, czyli paletę pustą z własnym adresem, opisuje artykuł o pustej palecie.
| Etap | Gdzie leży wpis | Czy zmienia stan |
|---|---|---|
| po skanie sztuki | tabela skanów czekających | nie |
| po „Cofnij” z kroku nośnika | bez zmian, skany nadal czekają | nie |
| po skanie nośnika | ruchy magazynowe jako zatwierdzone, skany oznaczone jako nieaktywne | tak |
| po przerwaniu sesji i ponownym wejściu | skany oznaczone jako nieaktywne, nie wracają na ekran | nie |
Dwie kontrole sprawdzają stan i skany czekające przed wpisem
Przed wpisem do skanów czekających terminal wykonuje dwie kontrole. Pierwsza dotyczy stanu, czyli zatwierdzonych ruchów magazynowych, a druga skanów czekających wszystkich dokumentów, a nie wyłącznie bieżącego. Niepusty wynik którejkolwiek z nich daje okno z komunikatem. Skan, który już czeka, nie zmienia wyniku kontroli stanu, ale jest widoczny dla drugiej kontroli, która czyta skany czekające.
- Kontrola stanu: czyta zatwierdzone ruchy magazynowe sztuki; niepusty wynik pokazuje okno z komunikatem.
- Kontrola skanów czekających: czyta skany czekające wszystkich dokumentów; niepusty wynik pokazuje okno z komunikatem.
Skan nośnika zamyka paletę jedną procedurą w jednej transakcji
Skany czekają w osobnej tabeli; stan zmienia dopiero zamknięcie palety.
Skan nośnika wywołuje procedurę zamykającą z numerem dokumentu i numerem nośnika. Numer referencyjny wspólny dla wstawianych wierszy procedura przydziela jeszcze przed otwarciem transakcji. W jednej transakcji bazy wstawia do ruchów magazynowych jako zatwierdzone wszystkie aktywne wiersze skanów czekających tego dokumentu z numerem nośnika, a te same wiersze oznacza jako nieaktywne. Procedura dopisuje też wpis historii.
Ekran uznaje zapis za udany, gdy procedura zwróci numer dokumentu większy od zera, i pokazuje podpowiedź „Paleta zapisana!”. W przeciwnym razie pokazuje okno „Komunikat” z tekstem „Błąd zapisu dokumentu!”. Dopóki ten skan nie nastąpi, sztuki czekają w tabeli skanów czekających, więc w tym przyjęciu stan zmienia dopiero skan nośnika.
Przy przyjęciu zewnętrznym miejsce odłożenia wynika z adresu zapisanego przy skanie sztuki, a przy wewnętrznym z adresu istniejącego nośnika. Strefę przyjęcia ekran ustala automatycznie raz, przy wejściu: bierze pierwszą w kolejności adresów lokalizację z flagą strefy przyjęcia, która jest aktywna i niezablokowana, bez filtra magazynu i roli. Gdy takiej lokalizacji nie ma, ekran pokazuje „Brak lokalizacji, która jest strefą przyjęcia!” i po trzech sekundach przeładowuje aplikację. Nośnik magazynowy i nośnik wysyłkowy opisuje artykuł o dwóch rodzajach nośników.
Przykład (dane wymyślone) w sześciu krokach. Nazwy i numery w nim są fikcyjne.
- Magazynier skanuje trzy sztuki o ilościach 30, 40 i 35, a licznik pokazuje trzy.
- Żadna z nich nie zmienia jeszcze stanu, a kierownik widzi je tylko w zestawieniu skanów czekających.
- Magazynier wybiera „Zakończ paletę” i skanuje numer nośnika, a terminal pokazuje „Paleta zapisana!”.
- Dopiero wtedy trzy sztuki trafiają do ruchów magazynowych z numerem nośnika, a licznik wraca do zera.
- Kolejny nośnik w tej samej sesji dostałby ten sam numer dokumentu.
- Gdyby magazynier wyszedł z ekranu przed skanem nośnika i wszedł ponownie, czekające sztuki zostałyby oznaczone jako nieaktywne.
Jeden dokument obejmuje wiele nośników, a przerwana sesja nie jest wznawiana
Jeden numer dokumentu obejmuje wiele nośników. Po zamknięciu nośnika licznik sztuk zeruje się, ekran wraca do skanowania sztuk, a kolejny nośnik dostaje ten sam numer dokumentu. Przycisk „Zakończ” po zamkniętym nośniku pyta „Czy chcesz zakończyć dokument?”. Inny sposób liczenia sztuk do zera opisuje strona o liczniku sztuk do zera.
Przy wejściu na ekran przyjęcia skrypt oznacza jako nieaktywne wszystkie aktywne skany czekające zalogowanego użytkownika. Przerwana sesja nie jest więc wznawiana: po ponownym wejściu skany nie wracają na ekran. Sztuki z sesji, której nie zamknął skan nośnika, nie zmieniają stanu.
- Cofnij: z kroku nośnika wraca do skanowania sztuk i niczego nie kasuje.
- Zakończ paletę: otwiera krok z polem numeru nośnika.
- Zakończ przy niezamkniętej palecie: nie wychodzi z ekranu i pokazuje podpowiedź „Zakończ paletę!” albo „Zeskanuj i zapisz nr palety!”.
- Zakończ po zamkniętym nośniku: pyta „Czy chcesz zakończyć dokument?”.
Kierownik widzi skany czekające osobno i może je usunąć
Kierownik ma dwa zestawienia skanów czekających, osobno dla przyjęć zewnętrznych i wewnętrznych. Zestawienia czytają tylko aktywne wiersze danego trybu. Przycisk „Usuń” z pytaniem „Czy chcesz usunąć pozycję dokumentu?” oznacza skan jako nieaktywny i dopisuje wpis historii. Skan oznaczony w ten sposób przestaje być widoczny w zestawieniu, bo zestawienie czyta tylko wiersze aktywne. Makieta poniżej pokazuje układ takiego zestawienia z przyciskiem „Usuń”.
Pytania do analizy
- Kiedy przyjęcie ma zmieniać stan: przy skanie sztuki czy dopiero przy zamknięciu nośnika?
- Co ma się stać ze skanami, gdy operator przerwie pracę przed zamknięciem nośnika: wznowienie czy skasowanie?
- Czy kierownik ma widzieć skany czekające osobno i móc je usunąć, zanim trafią na stan?
- Czy numer nośnika ma powstawać przy pierwszym skanie, czy dopiero przy zamknięciu?