Program do ewidencji odzieży roboczej - kartoteka egzemplarza
Program do ewidencji odzieży roboczej zastępuje papierowe kartoteki i arkusze jedną bazą danych, w której każdy egzemplarz ma własny rekord. Rekord opisuje wydanie i zwrot oraz pranie i termin wymiany, więc historia sortu jest dostępna bez przeszukiwania segregatorów. Studio TCS.net, produkt SoftwareStudio, prowadzi taką kartotekę w tym samym systemie, w którym pracuje narzędziownia i dział utrzymania ruchu. Ten artykuł pokazuje, co daje to połączenie.
Odzieży roboczej dotyczy kilka osobnych stron serwisu. Przegląd systemów zawiera tekst o systemach do ewidencji odzieży roboczej, obowiązki pracodawcy i gospodarkę sortami omawia ewidencja odzieży roboczej w przedsiębiorstwach, a koszty i zgodność z przepisami - artykuł o systemie do zarządzania odzieżą roboczą. Normy wydawania i terminy wymiany opisuje strona Narzędzia i odzież robocza, a dobór środków ochrony do zagrożeń - tekst o kontroli nad środkami ochrony indywidualnej. Tutaj oś jest inna: powiązanie odzieży z narzędziami i zleceniami utrzymania ruchu.
| Obszar | Metoda tradycyjna | Studio TCS.net |
|---|---|---|
| Rejestracja wydań i zwrotów | papierowe kartoteki lub arkusz kalkulacyjny | kartoteka cyfrowa z historią w czasie rzeczywistym |
| Kontrola terminów ważności | ręczne przeglądanie dokumentacji | automatyczne powiadomienia o zbliżającym się terminie wymiany |
| Raporty i zestawienia | ręczne zliczanie danych z wielu arkuszy | gotowe raporty dostępne na żądanie |
| Ewidencja narzędzi i odzieży | osobne rejestry, ryzyko rozbieżności | wspólna kartoteka pracownika dla obu zasobów |
Termin wymiany jako dana w bazie
Termin wymiany jest kolumną z datą, a nie notatką na karcie. Dzięki temu zapytanie o egzemplarze do wymiany w najbliższym miesiącu zajmuje ułamek sekundy, a powiadomienie wysyła się zadaniem harmonogramu. Poniższy skrypt jest przykładem mechanizmu, a nie schematem produktu.
-- przykładowa kartoteka egzemplarza odzieży z terminem wymiany
CREATE TABLE dbo.EgzemplarzOdziezyPrzyklad (
Id int IDENTITY(1,1) PRIMARY KEY,
PracownikId int NULL, -- NULL oznacza magazyn
Rodzaj varchar(40) NOT NULL,
Rozmiar varchar(10) NOT NULL,
DataWydania date NULL,
TerminWymiany date NULL,
Status varchar(12) NOT NULL DEFAULT 'magazyn'
);
CREATE NONCLUSTERED INDEX IX_EgzemplarzOdziezy_Wymiana
ON dbo.EgzemplarzOdziezyPrzyklad (TerminWymiany)
INCLUDE (PracownikId, Rodzaj)
WHERE Status = 'wydany';
-- egzemplarze do wymiany w ciągu 30 dni
SELECT PracownikId, Rodzaj, TerminWymiany
FROM dbo.EgzemplarzOdziezyPrzyklad
WHERE Status = 'wydany'
AND TerminWymiany <= DATEADD(DAY, 30, CAST(GETDATE() AS date))
ORDER BY TerminWymiany;
Indeks filtrowany obejmuje wyłącznie wiersze ze statusem wydany, więc pozostaje mały nawet przy dużym magazynie odzieży. Zapytanie musi zawierać ten sam warunek Status, żeby optymalizator mógł z indeksu skorzystać. Opis mechanizmu znajduje się w dokumentacji indeksów filtrowanych SQL Server.

Wydanie i zwrot odzieży w jednej transakcji
Wydanie odzieży wymaga kilku kliknięć. Program aktualizuje stany magazynowe i historię pracownika, więc papierowy protokół przestaje być potrzebny. Zapis stanu i zapis ruchu muszą się jednak udać razem: jeśli jeden z nich zawiedzie, drugi powinien się cofnąć, inaczej stan magazynu rozjedzie się z historią.
-- przykładowe wydanie egzemplarza: stan i historia zmieniają się w jednej transakcji
DECLARE @EgzemplarzId int = 3021,
@PracownikId int = 118,
@OkresMiesiecy int = 12; -- wartość z normy wydawania
BEGIN TRY
BEGIN TRANSACTION;
UPDATE dbo.EgzemplarzOdziezyPrzyklad
SET PracownikId = @PracownikId,
DataWydania = CAST(GETDATE() AS date),
TerminWymiany = DATEADD(MONTH, @OkresMiesiecy, CAST(GETDATE() AS date)),
Status = 'wydany'
WHERE Id = @EgzemplarzId AND Status = 'magazyn';
IF @@ROWCOUNT <> 1
THROW 50010, 'Egzemplarz nie jest dostępny na magazynie.', 1;
INSERT INTO dbo.RuchOdziezyPrzyklad (EgzemplarzId, PracownikId, Typ, Czas)
VALUES (@EgzemplarzId, @PracownikId, 'wydanie', SYSDATETIME());
COMMIT TRANSACTION;
END TRY
BEGIN CATCH
IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION;
THROW;
END CATCH;
Warunek Status = 'magazyn' w klauzuli WHERE chroni przed wydaniem egzemplarza, który już ma użytkownika. Gdy liczba zmienionych wierszy nie równa się jeden, instrukcja THROW przerywa transakcję, a blok CATCH ją wycofuje. Składnię omawia dokumentacja instrukcji THROW.
Reguła: wydać można tylko egzemplarz ze statusem magazyn, a każde wydanie zostawia wpis w historii ruchów.
Pranie i czyste komplety
Odzież wraca do obiegu po praniu, więc cykl życia egzemplarza obejmuje więcej stanów niż wydany i zwrócony. Funkcja sortów odzieżowych wspiera logistykę zwrotów i przygotowania czystych kompletów dla załogi. Kartoteka egzemplarza zapisuje pranie jako zdarzenie w historii, co przydaje się przy ocenie zużycia i przy planowaniu zakupów.
Norma wydawania a termin wymiany
Okres w skrypcie pochodzi z normy wydawania, czyli ustaleń pracodawcy o liczbie sztuk i czasie użytkowania odzieży na danym stanowisku. Program przenosi tę wartość do terminu wymiany w chwili wydania, więc kierownik nie liczy dat ręcznie. Sama norma i jej konsekwencje dla zamówień są tematem osobnej strony, do której odsyła artykuł o narzędziach i odzieży w jednej ewidencji. Tutaj ważny jest efekt: termin wymiany staje się daną, którą widzi też zlecenie utrzymania ruchu.
Zwrot do prania i kasacja
Zwrot odzieży ma dwa możliwe skutki: sort wraca do prania i po nim na magazyn albo zostaje wycofany jako zużyty. Oba rozstrzygnięcia zmieniają status egzemplarza, więc stan magazynowy pokazuje tylko sztuki gotowe do ponownego wydania. Egzemplarz skasowany znika ze stanu, ale jego historia zostaje w bazie i tłumaczy, dlaczego dany rodzaj odzieży zużywa się szybciej u jednej grupy stanowisk.
Jedna kartoteka pracownika dla odzieży i narzędzi
Odzież robocza i narzędzia trafiają do tych samych osób, często przy tym samym okienku. Prowadzenie obu obszarów w jednym systemie upraszcza pracę obsługi i skraca szkolenie, bo wystarcza jeden interfejs. Różnice dotyczą szczegółów: rozmiarówka przy odzieży, terminy badań przy narzędziach. Wydanie i zwrot, a także kontrola terminu i sygnalizacja zbliżającej się wymiany działają dla obu grup tak samo.
| Element | Odzież robocza | Narzędzia |
|---|---|---|
| Cecha specyficzna | rozmiar i historia prania | numer ewidencyjny i termin legalizacji |
| Termin kontrolowany | wymiana zużytego sortu | przegląd lub badanie |
| Zwrot | do prania albo do kasacji | na stan narzędziowni |
| Dokument | wydanie i zwrot odzieży | wypożyczenie i zwrot narzędzia |
Sama kartoteka nie zastępuje szkolenia, ale przechowuje jego potwierdzenie obok wydanych środków ochrony. Przy kontroli inspektor dostaje jedno zestawienie: co pracownik otrzymał, w jakim terminie oraz czy przeszedł wymagane szkolenie. Bez wspólnej kartoteki te trzy informacje leżą w różnych miejscach.
Zestawienie wszystkiego, co powierzono pracownikowi, jest potrzebne przy zmianie stanowiska albo przy zakończeniu zatrudnienia. Dwa osobne rejestry oznaczają konieczność sprawdzenia obu i ryzyko pominięcia jednego z nich. Wspólna kartoteka upraszcza też kontrole: zestawienie wydanych środków ochrony wraz z potwierdzeniem przeszkolenia jest dokumentem, o który pytają organy nadzoru.
-- przykładowe zestawienie wszystkiego, co powierzono pracownikowi
DECLARE @PracownikId int = 118;
SELECT 'odzież' AS Grupa, Rodzaj AS Nazwa, DataWydania AS Od
FROM dbo.EgzemplarzOdziezyPrzyklad
WHERE PracownikId = @PracownikId AND Status = 'wydany'
UNION ALL
SELECT 'narzędzie', Nazwa, DataWypozyczenia
FROM dbo.NarzedziePrzyklad
WHERE PracownikId = @PracownikId AND Status = 'wypozyczone'
ORDER BY Grupa, Od;
Jedno zapytanie łączy dwa źródła operatorem UNION ALL i zwraca pełną listę do podpisu przy rozliczeniu. Kolumna Grupa pozwala odróżnić odzież od narzędzi w wydruku. Podobną logikę dla samych narzędzi opisuje artykuł o programie do ewidencji narzędzi, a proces wypożyczeń - strona o wypożyczaniu narzędzi z magazynu.
Zlecenie utrzymania ruchu z listą wymaganego wyposażenia
Zespół techniczny korzysta zarówno z narzędzi, jak i z odzieży ochronnej o określonych parametrach, więc oba obszary łączą się na poziomie zlecenia. Zlecenie prac wymagających szczególnych zabezpieczeń, na przykład przy instalacjach elektrycznych albo na wysokości, wiąże się z określonym wyposażeniem ochronnym. Jego dostępność i ważność trzeba sprawdzić przed rozpoczęciem pracy.
Powiązanie zlecenia z listą wymaganego wyposażenia zamienia tę kontrolę w element procedury. Technik nie musi pamiętać, co zabrać, a kierownik widzi, czy komplet jest gotowy, zanim zespół wyjedzie do zadania. Ogólne zasady organizacji pracy takiego działu opisuje artykuł o utrzymaniu ruchu w przedsiębiorstwie produkcyjnym, a miejsce systemu klasy CMMS - tekst o roli CMMS.
Kontrola przed startem obejmuje cztery pytania, które zadaje się każdemu zleceniu z listą wyposażenia.
- Dostępność - czy komplet leży na magazynie albo jest już wydany wykonawcy.
- Ważność - czy termin badania lub wymiany nie upłynął przed dniem pracy.
- Przydział - czy wyposażenie jest zapisane na osobę, która wykona zadanie.
- Potwierdzenie - czy pracownik ma zapisane przeszkolenie wymagane przy tej pracy.
| Rodzaj zadania | Przykładowe wyposażenie na liście | Kontrola przed startem |
|---|---|---|
| Prace przy instalacjach elektrycznych | rękawice i narzędzia izolowane | ważność badań oraz dostępność u technika |
| Prace na wysokości | środki ochrony przed upadkiem | termin przeglądu i przydział do osoby |
| Przegląd maszyny w hali | odzież ochronna i przyrządy pomiarowe | komplet wydany i legalizacja przyrządu |
Reguła: lista wyposażenia jest częścią zlecenia, a jej kontrola następuje przed rozpoczęciem pracy, nie po niej.
Rozliczenie kosztów zlecenia i pracownika
Przypisanie do zlecenia zużytych materiałów oraz wypożyczonego sprzętu i wydanych środków ochrony daje pełny koszt zadania. Zestawienie bywa potrzebne przy rozliczaniu prac na rzecz innych działów oraz przy ocenie opłacalności własnych służb. Bez takiego powiązania koszty zostają w budżetach ogólnych i nie da się ocenić, ile kosztuje utrzymanie konkretnej maszyny.
-- przykładowy koszt zlecenia utrzymania ruchu w podziale na rodzaje pozycji
SELECT z.Id AS ZlecenieId,
SUM(CASE WHEN k.Rodzaj = 'material' THEN k.Kwota ELSE 0 END) AS Materialy,
SUM(CASE WHEN k.Rodzaj = 'sprzet' THEN k.Kwota ELSE 0 END) AS SprzetWypozyczony,
SUM(CASE WHEN k.Rodzaj = 'ochrona' THEN k.Kwota ELSE 0 END) AS SrodkiOchrony,
SUM(k.Kwota) AS Razem
FROM dbo.ZlecenieUrPrzyklad AS z
JOIN dbo.KosztZleceniaPrzyklad AS k ON k.ZlecenieId = z.Id
GROUP BY z.Id;
Podobnie działa przypisanie wydatków na odzież do działów lub pracowników. Program do rozliczania odzieży pozwala zestawić, ile poszczególne komórki organizacyjne pobrały sortów, więc zakupy planuje się według faktycznego zużycia. Koszt przypisany do działu pozwala porównać komórki o podobnym profilu pracy. Jeśli jeden dział pobiera wyraźnie więcej sortów niż drugi, przyczyną bywa inny charakter zadań albo źle dobrana norma, a system pokazuje samą różnicę. Wskaźniki MTBF i MTTR, czyli średni czas między awariami i średni czas naprawy, uzupełniają ten obraz w części dotyczącej maszyn.
Zapotrzebowanie na odzież w następnym kwartale
W dokumentacji papierowej odpowiedź na proste pytanie, ilu pracowników potrzebuje nowej odzieży w nadchodzącym kwartale, wymagała żmudnego przeglądania kartotek. W bazie to jedno zapytanie z grupowaniem po rodzaju i rozmiarze, a wynik jest gotową listą zakupów.
-- przykładowe zapotrzebowanie na następny kwartał według rodzaju i rozmiaru
SELECT Rodzaj, Rozmiar, COUNT(*) AS DoWymiany
FROM dbo.EgzemplarzOdziezyPrzyklad
WHERE Status = 'wydany'
AND TerminWymiany < DATEADD(QUARTER, 1, CAST(GETDATE() AS date))
GROUP BY Rodzaj, Rozmiar
ORDER BY Rodzaj, Rozmiar;
Zestawienie pokazuje, ile sztuk każdego rozmiaru trafi do wymiany, więc zamówienie u dostawcy opiera się na danych z kartotek, a nie na szacunku. Raport można uruchomić na żądanie, na przykład przed rozmową z dostawcą.

Gospodarka narzędziowa i utrzymanie ruchu w jednym systemie
Program do ewidencji narzędzi śledzi każdy egzemplarz od zakupu przez wydanie pracownikowi aż po zwrot lub likwidację. Moduł wypożyczalni rejestruje, kto i kiedy pobrał sprzęt, co zwiększa odpowiedzialność za powierzone narzędzie i zapobiega gubieniu. Podobnie działa ewidencja sprzętu budowlanego, która w Studio TCS.net pozwala śledzić lokalizację i status drogich maszyn. Zasady ewidencji narzędzi w narzędziowni omawia tekst o ewidencji narzędzi w narzędziowni.
Po stronie utrzymania ruchu system klasy CMMS planuje przeglądy, przyjmuje zgłoszenia awarii i prowadzi historię napraw. Zespół zamiast arkuszy korzysta z jednej bazy, która przypomina o nadchodzących przeglądach i terminach wymiany części, a analiza przyczyn awarii pozwala wprowadzać działania korygujące. Połączenie trzech obszarów w jednej instalacji przedstawia artykuł o jednym systemie dla narzędziowni oraz odzieży i przeglądów maszyn. Informacje o produkcie znajdują się także na stronie tcs.softwarestudio.com.pl, a dobór środków ochrony indywidualnej wspiera Centralny Instytut Ochrony Pracy.




