System zarządzania odzieżą roboczą a arkusz kalkulacyjny
Arkusz kalkulacyjny zapisuje stan w chwili, gdy ktoś go uzupełni. System zarządzania odzieżą roboczą zapisuje zdarzenia: przyjęcie na magazyn, wydanie, zwrot, przekazanie do prania. Stan sortu wynika z tych zdarzeń, więc nie można go zmienić bez śladu w historii.
Różnica widoczna jest przy kontroli albo inwentaryzacji. Arkusz podaje, że pracownik ma dwie pary butów, ale nie wskaże, która wydana była pierwsza ani czy zwrócono poprzednią. Historia zdarzeń pozwala odtworzyć każdy z tych faktów na podstawie dokumentów.
| Obszar | Arkusz kalkulacyjny | System zarządzania odzieżą |
|---|---|---|
| Zapis stanu | Wartość wpisana ręcznie w komórkę | Wynik zatwierdzonych dokumentów ruchu sortu |
| Termin wymiany | Data liczona formułą lub z pamięci | Termin wyliczany z normy przydziału i daty wydania |
| Historia zmian | Brak, chyba że plik jest wersjonowany | Każde zdarzenie ma datę i dokument źródłowy |
| Praca kilku osób | Konflikty przy jednoczesnej edycji | Transakcje bazy danych porządkują równoległe wydania |
| Uprawnienia | Dostęp do całego pliku | Role przypisane do operacji, np. wydanie albo wycofanie |
Reguła: stan sortu nie jest polem do ręcznej edycji. Zmienia się wyłącznie dokumentem ruchu sortu, a każdy dokument wskazuje osobę, która go zatwierdziła.
Zasady przydziału i okresy używalności opisuje osobna strona o normach wydawania odzieży i terminach wymiany, a obowiązki pracodawcy wobec odzieży i obuwia roboczego omawia artykuł o ewidencji odzieży roboczej w przedsiębiorstwach. Ta strona zajmuje się mechaniką: jakie stany przyjmuje sztuka odzieży i co je zmienia.
Stany egzemplarza od przyjęcia do wycofania
Model stanów
Sztukę odzieży opisuje niewielki automat stanów. Każdy stan ma dokument, który do niego prowadzi, i wpływa na to, czy sztuka jest widoczna jako dostępna w stanach magazynowych.
| Stan | Znaczenie | Dokument zmieniający stan | Wpływ na dostępność |
|---|---|---|---|
| W magazynie | Sztuka leży na półce i czeka na wydanie | Przyjęcie od dostawcy albo zwrot od pracownika | Wchodzi do stanu dostępnego |
| Wydany | Sztuka jest w użytkowaniu u pracownika | Wydanie pracownikowi | Znika ze stanu dostępnego, startuje okres używalności |
| W praniu | Sztuka jest u usługodawcy zewnętrznego | Przekazanie do pralni | Niedostępna do czasu odbioru |
| W naprawie | Sztuka czeka na krawca albo serwis | Przekazanie do naprawy | Niedostępna do czasu odbioru |
| Wycofany | Sztuka zużyta lub zagubiona | Dokument wycofania z podanym powodem | Trwale poza stanem, ślad zostaje w historii |
Przejście z wycofanego z powrotem do magazynu jest niedozwolone. Jeżeli wycofano sztukę omyłkowo, korektę robi się osobnym dokumentem, a nie edycją stanu.
Reguła: każda zmiana stanu powstaje z dokumentu, a dokument zapisuje się razem ze zmianą stanu w jednej transakcji bazy danych.
Poniższy szkic pokazuje, jak tę regułę zapisuje się w bazie SQL Server. Nazwy tabel i kolumn są przykładowe i nie odwzorowują schematu żadnego produktu.
-- przykładowy schemat egzemplarza
CREATE TABLE dbo.SortEgzemplarz (
EgzemplarzId INT IDENTITY(1,1) PRIMARY KEY,
Kod NVARCHAR(40) NOT NULL UNIQUE,
AsortymentId INT NOT NULL,
Stan TINYINT NOT NULL DEFAULT 1,
PracownikId INT NULL,
DataWydania DATE NULL,
CONSTRAINT CK_SortEgzemplarz_Stan CHECK (Stan BETWEEN 1 AND 5)
);
Wydanie zapisuje się jako jedna transakcja. Warunek Stan = 1 w klauzuli WHERE i zmiana stanu odbywają się w jednej instrukcji, więc dwie sesje nie wydadzą tej samej sztuki dwukrotnie. Gdy żaden wiersz nie spełnia warunku, procedura zgłasza błąd instrukcją THROW w języku T-SQL, a aplikacja pokazuje magazynierowi czytelny komunikat zamiast cichego zapisu.
CREATE PROCEDURE dbo.WydajSort
@Kod NVARCHAR(40),
@PracownikId INT
AS
BEGIN
SET NOCOUNT ON;
BEGIN TRANSACTION;
UPDATE dbo.SortEgzemplarz
SET Stan = 2,
PracownikId = @PracownikId,
DataWydania = CAST(SYSDATETIME() AS DATE)
WHERE Kod = @Kod AND Stan = 1;
IF @@ROWCOUNT = 0
BEGIN
ROLLBACK TRANSACTION;
THROW 50001, N'Sztuka nie jest dostępna do wydania.', 1;
END;
-- w tym miejscu zapis dokumentu wydania w tabeli zdarzeń
COMMIT TRANSACTION;
END;

Identyfikacja sortu - kod kreskowy i RFID
Ewidencja może działać na dwóch poziomach szczegółowości. Poziom asortymentu opisuje typ i rozmiar, na przykład kurtkę w rozmiarze L. Poziom egzemplarza opisuje konkretną kurtkę z własnym identyfikatorem i własną historią.
- Ewidencja ilościowa - system liczy sztuki danego asortymentu w magazynie i u pracowników, ale nie odróżnia dwóch identycznych kurtek.
- Ewidencja egzemplarzowa - każda sztuka ma kod, więc można ją prześledzić przez pralnię i naprawę.
Odzież masowa o krótkim cyklu życia zwykle nie wymaga znakowania indywidualnego. Egzemplarz warto oznaczyć tam, gdzie liczy się termin ważności albo liczba cykli prania. Dotyczy to kasków i odzieży ochronnej z powłokami trudnopalnymi lub odblaskowymi.
Identyfikatorem jest etykieta z kodem kreskowym lub znacznik RFID, o czym mówi także opis tagów RFID w narzędziowni. Kod egzemplarza musi być unikalny i niezmienny przez cały okres życia sztuki. Nie powinien zawierać rozmiaru ani nazwiska użytkownika, bo te dane się zmieniają. Kod służy wyłącznie jako klucz, a atrybuty sztuki przechowuje kartoteka.
| Cecha | Kod kreskowy | Znacznik RFID |
|---|---|---|
| Warunek odczytu | Etykieta widoczna dla skanera | Odczyt radiowy bez kontaktu wzrokowego |
| Odczyt wielu sztuk | Kolejno, jedna po drugiej | Możliwy zbiorczy odczyt całej partii, np. po powrocie z pralni |
| Trwałość przy praniu | Zależy od materiału etykiety | Zależy od typu wszywki, należy sprawdzić deklarację producenta |
| Koszt pojedynczej sztuki | Niższy | Wyższy |
Kanały wydania odzieży i ŚOI
Sposób wydania decyduje o tym, jak potwierdza się pobranie. Studio TCS.net rejestruje wydania w okienku i współpracuje z automatami vendingowymi, a wydania zbiorcze na brygadę wymagają dodatkowej dyscypliny po stronie kierownika.
| Kanał wydania | Przebieg | Ograniczenie |
|---|---|---|
| Okienko wydań | Magazynier skanuje kartę pracownika i kod sortu, a system zapisuje wydanie | Wymaga obsady stanowiska w godzinach pracy zmian |
| Automat vendingowy | Pracownik pobiera sort na kartę identyfikacyjną bez udziału magazyniera | Automat musi przekazywać do systemu zdarzenie pobrania z numerem karty |
| Wydanie zbiorcze na brygadę | Kierownik zmiany odbiera zestaw dla całej grupy | Ewidencja indywidualna jest mniej precyzyjna, dopóki zestawu nie rozpisze się na osoby |
Przy każdym kanale system porównuje liczbę dotychczas wydanych sortów danego rodzaju z limitem przydziału. Limit i harmonogram wydań przypisuje się pracownikowi indywidualnie, a zestaw przysługujący na stanowisku wynika z normy. Więcej o kartotece pracownika opisuje strona o modułach ewidencji pracowników w Studio TCS.net.
Reguła: wydanie ponad limit wymaga wskazania powodu, na przykład zniszczenia sortu w pracy, oraz zatwierdzenia przez osobę z odpowiednią rolą.

Skanowanie na urządzeniu mobilnym działa tak samo jak w innych procesach magazynowych. Zasady pracy na terminalu opisuje strona o aplikacji magazynowej na Androidzie, a przegląd kartotek pracownika i sortu znajduje się w portalu o sortach odzieżowych w programie TCS.net.
Terminy wymiany i powiadomienia
Termin wymiany wynika z kilku źródeł, a system wybiera wcześniejszy z nich. Okres używalności z normy zakładowej liczy się od daty wydania. Termin ważności podaje producent środka ochrony indywidualnej.
| Źródło terminu | Skąd pochodzi data | Przykład sortu |
|---|---|---|
| Okres używalności | Norma przydziału i data wydania | Bluza robocza, obuwie |
| Termin ważności producenta | Data z etykiety lub instrukcji | Kask, filtr do maski |
| Liczba cykli prania | Licznik zdarzeń prania | Odzież trudnopalna lub odblaskowa |
| Stan techniczny | Zgłoszenie uszkodzenia | Dowolny sort |
System rejestruje daty ważności i terminy wymian dla każdego środka ochrony indywidualnej, a o zbliżającym się terminie powiadamia magazyniera i pracownika. Mechanizm da się opisać zapytaniem. Poniższe zestawienie wybiera sztuki wydane, których termin wymiany przypada w ciągu najbliższych 30 dni; długość okna jest parametrem.
SELECT p.Nazwisko, a.Nazwa, e.Kod, w.TerminWymiany
FROM dbo.SortEgzemplarz AS e
JOIN dbo.Pracownik AS p ON p.PracownikId = e.PracownikId
JOIN dbo.Asortyment AS a ON a.AsortymentId = e.AsortymentId
CROSS APPLY (
SELECT MIN(t) AS TerminWymiany
FROM (VALUES (e.TerminWaznosci), (e.TerminUzywalnosci)) AS v(t)
) AS w
WHERE e.Stan = 2
AND w.TerminWymiany <= DATEADD(DAY, 30, CAST(SYSDATETIME() AS DATE))
ORDER BY w.TerminWymiany;
Funkcja MIN pomija wartości NULL, więc sztuka bez terminu ważności producenta dostaje termin z normy. Wynik takiego zestawienia zasila powiadomienia, a w praktyce uruchamia się je cyklicznie, na przykład zadaniem SQL Agent raz na dobę.

Pranie i wycofanie sortu z użycia
Przekazanie do pralni jako dokument
Odzież przekazana do prania jest czasowo niedostępna i musi być tak pokazana w stanach. Przekazanie i odbiór partii dokumentuje się z liczbą sztuk w podziale na asortyment. Rozbieżność wykryta przy odbiorze powinna trafić do zgłoszenia od razu, bo po kilku dniach ustalenie odpowiedzialności bywa niemożliwe.
Przy ewidencji egzemplarzowej rozliczenie jest prostsze, ponieważ system wskaże konkretne kody, które nie wróciły. Przy ewidencji ilościowej różnicę widać tylko jako liczbę, którą trzeba wyjaśnić na podstawie dokumentów przekazania. Partie do prania warto więc zamykać w systemie tego samego dnia, w którym fizycznie opuszczają magazyn.
Liczba cykli prania
Odzież o właściwościach ochronnych, takich jak trudnopalność czy odblaskowość, traci je po określonej liczbie cykli prania. Licznik prowadzi się na poziomie egzemplarza, a jego limit pochodzi z zaleceń producenta. Sposób prania także musi być zgodny z tymi zaleceniami, bo niewłaściwe środki niszczą powłoki szybciej niż eksploatacja; warunek ten warto zapisać w umowie z usługodawcą.
Reguła: licznik cykli prania rośnie dopiero po potwierdzeniu odbioru partii z pralni, a nie w chwili jej wysłania.
Wycofanie i rozliczenie różnic
Wycofanie z użytkowania ma własny dokument z podanym powodem. Bez niego sztuka znika ze stanu bez wyjaśnienia, a różnica trafia do braków. Rozliczenie z pracownikiem, jeżeli w ogóle jest potrzebne, wymaga decyzji pracodawcy zgodnej z obowiązującymi przepisami.
- Zużycie naturalne - sztuka osiągnęła koniec okresu używalności, wycofanie nie wymaga dalszych działań.
- Zniszczenie w pracy - dokument wycofania wskazuje okoliczności, a nowy sort wydaje się poza limitem za zgodą uprawnionej osoby.
- Zagubienie - wymaga decyzji o rozliczeniu sztuki z pracownikiem, zgodnej z przepisami.
- Koniec ważności - dotyczy sortów z terminem producenta, wycofanie następuje niezależnie od stanu wizualnego.
Uprawnienia i ślad audytowy operacji
Ewidencja odzieży zawiera dane osobowe pracowników i informacje, które mogą posłużyć w sporze o rozliczenie sortu. Z tego powodu uprawnienia rozdziela się według czynności, a dziennik zdarzeń traktuje jako zapis tylko do dołączania.
| Rola | Dozwolone operacje | Zakaz |
|---|---|---|
| Magazynier | Wydanie, zwrot, przekazanie do pralni | Wydanie ponad limit bez zatwierdzenia |
| Kierownik wydziału | Zatwierdzenie wydania ponad limit, podgląd raportów swojego zespołu | Wycofanie sortu z magazynu głównego |
| Dział BHP | Zmiana norm przydziału, przegląd terminów ważności | Edycja historii zdarzeń |
| Administrator | Konfiguracja słowników i kont | Usuwanie zapisanych zdarzeń |
W bazie SQL Server niezmienność dziennika wymusza się uprawnieniami. Rola, w której działa aplikacja, może dopisywać wiersze do tabeli zdarzeń, ale nie może ich zmieniać ani kasować.
-- przykład: dziennik zdarzeń tylko do dołączania
GRANT SELECT, INSERT ON dbo.SortZdarzenie TO RolaAplikacji;
DENY UPDATE, DELETE ON dbo.SortZdarzenie TO RolaAplikacji;
Korekta błędnego zdarzenia polega wtedy na dodaniu zdarzenia odwracającego, a nie na usunięciu oryginału. Ślad zostaje w historii, co ułatwia wyjaśnienie różnic przy kontroli oraz przy rozmowie z pracownikiem o rozliczeniu.
Integracja z magazynem i raportami
Sort przyjęty od dostawcy trafia na stan magazynowy z podziałem na rozmiary. Przy współpracy z systemem magazynowym wydania i zwroty odzieży aktualizują stany magazynowe bez wielokrotnego wpisywania tych samych danych. Wymianę stanów i rezerwacji między systemami opisuje strona o integracji systemów magazynowych.
Pracownika ewidencja zna z kartoteki, w której stoi stanowisko oraz historia przydziałów. Przy zmianie stanowiska zmienia się norma przydziału, a przy odejściu z firmy obiegówka powinna zawierać listę sortów do zwrotu. Podobny obieg wydań i zwrotów dla narzędzi opisuje strona o wypożyczaniu narzędzi z magazynu.
| Raport | Pytanie, na które odpowiada | Odbiorca |
|---|---|---|
| Terminy wymiany w wybranym horyzoncie | Kto i kiedy potrzebuje nowego sortu | Dział BHP, kierownik wydziału |
| Pracownicy bez kompletu | Czy norma przydziału jest wypełniona | Kierownik wydziału |
| Zestawienie ilościowo-wartościowe | Ile sortów wydano i za jaką wartość | Zakupy, controlling |
| Sztuki bez dokumentu wycofania | Czy w stanach są luki bez wyjaśnienia | Audyt wewnętrzny |
Przy pierwszym wdrożeniu warto zacząć od ewidencji sortów o krótkim terminie ważności, na przykład filtrów i rękawic, a dopiero potem objąć systemem odzież o dłuższym cyklu życia. Dział BHP szybciej zobaczy wtedy efekt automatycznych powiadomień o wymianie. Konfigurację danych początkowych opisuje strona o systemach do ewidencji odzieży roboczej.




