Każde wydanie z magazynu zostawia w systemie zapis. Zapisuje się w nim, co wyszło z magazynu i w jakiej ilości, a następnie skąd i na jakiej podstawie. Zbiór takich zapisów tworzy ewidencję wydań, czyli rejestr zdarzeń, w których towar fizycznie opuszcza strefę magazynową. Proces zaczyna się od zlecenia wydania, którym bywa zamówienie klienta albo wewnętrzna dyspozycja produkcyjna, a kończy w chwili, gdy towar opuszcza strefę i system rejestruje to zdarzenie.
Do prowadzenia ewidencji stosuje się różne metody, od dokumentów papierowych po systemy klasy Warehouse Management System. Ten tekst skupia się na samym rejestrze: zawartości wpisu, sposobie zapisu na terminalu, doborze metody identyfikacji i analizie danych. Skutki wydań dla ilości w kartotekach opisuje strona o stanach magazynowych.
Zawartość pojedynczego wpisu w ewidencji wydań
Pojedynczy wpis zawiera nazwę i indeks towaru (SKU) oraz ilość w jednostce magazynowej. Wskazuje też lokalizację, z której towar pobrano, numer dokumentu źródłowego i pracownika, który wykonał operację. Dochodzą do tego data i godzina zdarzenia oraz odbiorca wraz z podstawą wydania.
| Pole wpisu | Rola w ewidencji |
|---|---|
| SKU i nazwa towaru | Jednoznacznie wskazuje, co opuściło magazyn. |
| Ilość w jednostce magazynowej | Podstawa do zmniejszenia stanu i rozliczenia z odbiorcą. |
| Lokalizacja źródłowa | Pozwala odtworzyć, skąd pobrano towar. |
| Numer dokumentu źródłowego | Łączy wydanie z zamówieniem albo dyspozycją. |
| Identyfikator pracownika | Wskazuje osobę odpowiedzialną za operację. |
| Data i godzina zdarzenia | Umożliwia analizę obciążenia zmian. |
| Odbiorca i podstawa wydania | Rozstrzyga sprawy sporne przy reklamacji. |
Taki zestaw danych tworzy pełny ślad audytowy. Można do niego wrócić podczas kontroli wewnętrznej albo weryfikacji reklamacji zgłoszonej przez odbiorcę. Ślad pozwala ustalić, jaki produkt trafił do którego klienta i w jakim terminie, co ma znaczenie przy wycofaniu partii z rynku. Im dokładniejszy zapis, tym mniej czasu zajmuje później wyjaśnienie rozbieżności.
-- przykładowy schemat rejestru wydań, nie struktura produktu
CREATE TABLE dbo.WydanieZapis (
ZapisId BIGINT IDENTITY PRIMARY KEY,
DokumentId INT NOT NULL,
Sku NVARCHAR(40) NOT NULL,
Ilosc DECIMAL(18,3) NOT NULL,
LokalizacjaId INT NOT NULL,
PracownikId INT NOT NULL,
Zarejestrowano DATETIME2(0) NOT NULL DEFAULT SYSDATETIME()
);
CREATE INDEX IX_WydanieZapis_Sku_Czas
ON dbo.WydanieZapis (Sku, Zarejestrowano)
INCLUDE (Ilosc, DokumentId);
W przykładzie rejestr jest tylko dopisywany, a pomyłkę koryguje nowy zapis, nie edycja starego. Taki model upraszcza audyt, bo historia każdego SKU wynika wprost z kolejności wierszy.
Źródła wydania i dokumenty w ewidencji
Towar można wydać bezpośrednio na podstawie zamówienia, a wtedy wydanie potwierdza dokument WZ, czyli wydanie zewnętrzne odbiorcy spoza firmy. Możliwa jest też droga pośrednia: zlecenie wydania (ZWZ) po skompletowaniu towaru zamienia się w dokument właściwy. Oba warianty opisuje osobny artykuł o dokumentach WZ i ZWZ w ewidencji wydań.
Stan można obniżać także innymi dokumentami, na przykład rozchodem wewnętrznym (RW) albo przesunięciem międzymagazynowym (MM). Rozróżnienie ma znaczenie przy rozliczaniu zapasów, ponieważ każdy typ dokumentu inaczej wpływa na ewidencję księgową. Dobrą praktyką jest równoległa ewidencja nośników, na których towar przemieszcza się między strefami, co omawia strona o ewidencji palet.
Zanim dokument trafi na halę, zwykle przechodzi krótką weryfikację formalną w biurze magazynu. Pracownik sprawdza zgodność zamówienia z dostępnymi zapasami oraz blokady na koncie kontrahenta, po czym zatwierdza dokument do wydruku albo przekazania na terminal. Ten krok ogranicza ryzyko wydania towaru w złej ilości lub do niewłaściwego odbiorcy, zwłaszcza w firmach obsługujących wielu stałych klientów jednocześnie.
Rejestracja wydania na terminalu radiowym
Terminal radiowy z oprogramowaniem magazynowym jest podstawowym narzędziem magazyniera przy realizacji wydań. Praca z nim polega na serii potwierdzeń kolejnych nośników zapisanych w dokumencie WZ, który wcześniej przygotował pracownik biura. Urządzenia i łączność opisuje strona o terminalu radiowym w magazynie.
- Numer dokumentu - magazynier skanuje numer WZ albo wpisuje go z klawiatury urządzenia.
- Numer nośnika - po odszukaniu dokumentu program oczekuje numeru palety lub pojemnika, który podaje się skanem z karty paletowej albo ręcznie.
- Podgląd zawartości - terminal pokazuje, co znajduje się na nośniku i gdzie jest on aktualnie składowany.
- Akceptacja - przycisk akceptacji potwierdza pobranie palety z miejsca składowania.

Reguła: zapis wydania powstaje w chwili potwierdzenia pobrania nośnika na terminalu, a nie w chwili wydruku dokumentu.
Reguła oddziela intencję od faktu. Wydrukowany dokument oznacza tylko, że wydanie zaplanowano, natomiast dopiero potwierdzenie na urządzeniu mówi, że palety faktycznie zniknęły z lokalizacji. Wybór samych urządzeń, na przykład kolektora danych z Androidem, zależy od środowiska pracy i zasięgu sieci.
Zapis wydania jako transakcja
Potwierdzenie na terminalu uruchamia w bazie kilka zmian naraz: zmniejszenie ilości w lokalizacji, dopisanie wiersza do rejestru i aktualizację postępu dokumentu. Wszystkie muszą się udać razem albo wcale, dlatego obejmuje je jedna transakcja. Częściowy zapis, w którym ilość spadła, ale wiersz rejestru nie powstał, zostawiłby stan bez śladu w ewidencji.
Drugim zagrożeniem jest wyścig dwóch operatorów o ostatnie sztuki. Przy domyślnym poziomie izolacji READ COMMITTED oba odczyty mogą zobaczyć tę samą ilość, zanim którykolwiek zapisze zmianę. Wskazówka UPDLOCK przy odczycie zakłada blokadę aktualizacji na wierszu, więc drugi operator poczeka na zakończenie pierwszej transakcji i zobaczy już zmniejszony stan.
-- szkic procedury potwierdzającej pobranie (przykład)
CREATE PROCEDURE dbo.PotwierdzWydanie
@DokumentId INT, @Sku NVARCHAR(40), @LokalizacjaId INT,
@Ilosc DECIMAL(18,3), @PracownikId INT
AS
BEGIN
SET NOCOUNT ON;
SET XACT_ABORT ON;
DECLARE @Dostepne DECIMAL(18,3);
BEGIN TRANSACTION;
SELECT @Dostepne = Ilosc
FROM dbo.StanLokalizacji WITH (UPDLOCK, ROWLOCK)
WHERE LokalizacjaId = @LokalizacjaId AND Sku = @Sku;
IF @Dostepne IS NULL OR @Dostepne < @Ilosc
THROW 50002, N'Za mało towaru w lokalizacji.', 1;
UPDATE dbo.StanLokalizacji
SET Ilosc = Ilosc - @Ilosc
WHERE LokalizacjaId = @LokalizacjaId AND Sku = @Sku;
INSERT dbo.WydanieZapis (DokumentId, Sku, Ilosc, LokalizacjaId, PracownikId)
VALUES (@DokumentId, @Sku, @Ilosc, @LokalizacjaId, @PracownikId);
COMMIT TRANSACTION;
END;
Rejestr i stan zmieniają się w tej samej transakcji, więc raport rotacji i stan lokalizacji nigdy się nie rozjeżdżają. Szczegóły blokad i wersjonowania wierszy opisuje przewodnik Microsoft Learn po blokowaniu i wersjonowaniu wierszy.
Wydania częściowe i korekty w rejestrze
Rzeczywistość rzadko zgadza się ze zleceniem. Magazynier może pobrać mniej, niż zapisano w dokumencie, bo w lokalizacji jest mniej sztuk albo część towaru okazała się uszkodzona. Rejestr zapisuje wtedy ilość faktycznie wydaną, a dokument pozostaje otwarty do czasu uzupełnienia albo decyzji o zamknięciu z brakiem.
| Sytuacja | Zapis w rejestrze | Skutek dla dokumentu |
|---|---|---|
| Pobranie w pełnej ilości | Wiersz z ilością ze zlecenia | Realizacja kolejnej pozycji lub zamknięcie |
| Pobranie części ilości | Wiersz z ilością faktyczną | Dokument otwarty z brakiem |
| Brak towaru w lokalizacji | Brak wiersza, zgłoszenie rozbieżności | Pozycja wstrzymana do wyjaśnienia |
| Zwrot od odbiorcy | Osobny zapis przyjęcia zwrotu | Wydanie pozostaje w historii bez edycji |
| Pomyłka w ilości | Zapis korygujący | Oba zapisy zostają w historii |
Zwrot towaru od odbiorcy nie cofa wydania. Powstaje osobny dokument przyjęcia, a pierwotny zapis zostaje w rejestrze jako część historii. Taka zasada pasuje do śladu audytowego i pozwala rozliczyć reklamację z uwzględnieniem dat wydania i zwrotu oraz stanu towaru po powrocie.
Braki wykryte przy pobraniu warto zgłaszać jako osobne zdarzenie. Dzięki temu inwentaryzacja wybranej lokalizacji może je sprawdzić od razu, zamiast czekać na pełny spis.
Metody zapisu wydań i ich skala
Wybór metody zależy od wielkości magazynu, liczby wydań na dobę i budżetu wdrożenia. Poniższe zestawienie porównuje trzy najczęściej spotykane podejścia w czterech wymiarach.
| Kryterium | Ewidencja manualna | Kody kreskowe i QR | RFID |
|---|---|---|---|
| Szybkość rejestracji | Niska | Wysoka | Bardzo wysoka |
| Ryzyko błędów | Wysokie | Niskie | Bardzo niskie |
| Koszt wdrożenia | Minimalny | Umiarkowany | Wyższy |
| Zalecana skala magazynu | Bardzo mały | Mały i średni | Średni i duży |
Ewidencja manualna opiera się na formularzach papierowych albo arkuszach kalkulacyjnych. Sprawdza się w niewielkich magazynach, ale jest czasochłonna i podatna na pomyłki przy przepisywaniu. Wraz ze wzrostem liczby wydań ręczny zapis przestaje nadążać za tempem pracy.

Skanery kodów kreskowych i QR wprowadzają dane do systemu w chwili wydania, więc stan aktualizuje się od razu. Standard etykiet logistycznych opisuje artykuł o etykiecie GS1. W tym standardzie numer partii albo datę ważności koduje się w identyfikatorach zastosowania, a skaner zwykle sprawdza cyfrę kontrolną numeru GTIN. Błędny odczyt jest więc odrzucany, zanim trafi do rejestru.
Technologia RFID pozwala odczytywać wiele znaczników bez skanowania każdej sztuki osobno, na przykład gdy nośnik przejeżdża przez bramkę z czytnikiem. Odczyt zbiorczy ma jednak swoją cenę: sąsiednie palety mogą zostać odczytane jednocześnie, więc bramkę trzeba skonfigurować tak, żeby przypisywała odczyt do właściwego dokumentu wydania.
Ewidencja wydań w różnych modelach magazynu
Sposób prowadzenia ewidencji zależy od charakteru zamówień. Poniższe cztery modele różnią się przede wszystkim liczbą i wielkością wydań.
- E-commerce - duża liczba niewielkich wydań wymaga szybkiej rejestracji pojedynczych paczek i powiązania wydania z numerem zamówienia oraz przewoźnikiem.
- Produkcja - wydania materiałów na linię rozlicza dokument RW, a zapis wymaga precyzyjnego powiązania ze zleceniem produkcyjnym.
- Magazyn wysokiego składowania - integracja z zarządzaniem lokalizacjami pozwala kontrolować obciążenie stref, jak w opisie aplikacji dla magazynów wysokiego składowania.
- Dystrybucja i logistyka kontraktowa - obsługa wielu odbiorców wymaga przypisania każdego wydania do zamówienia i dokumentu WZ, co dotyczy także kontraktowej logistyki magazynowej.
Analiza danych z ewidencji wydań
Zgromadzone wydania mają wartość zarządczą wykraczającą poza obsługę bieżących zamówień. Raport rotacji wskazuje towary wolno rotujące, które zajmują cenną przestrzeń, oraz te o wysokim obrocie, dla których warto podnieść zapas bezpieczeństwa. Liczba dokumentów wydania w danym miesiącu jest też dobrym wskaźnikiem obciążenia magazynu w kolejnych sezonach, co pomaga planować obsadę.
-- rotacja SKU z ostatnich trzech miesięcy (przykład)
SELECT Sku,
SUM(Ilosc) AS Wydano,
COUNT(DISTINCT DokumentId) AS LiczbaDokumentow
FROM dbo.WydanieZapis
WHERE Zarejestrowano >= DATEADD(MONTH, -3, SYSDATETIME())
GROUP BY Sku
ORDER BY Wydano DESC;
Sama suma ilości bywa myląca, bo towary mają różne jednostki i gabaryty. Z tego powodu raport rotacji zestawia się zwykle z liczbą pozycji i wartością wydań, a wyniki grupuje po klasach, na przykład według analizy ABC. Towary klasy A wymagają wtedy innego poziomu zapasu bezpieczeństwa niż towary klasy C.
Zapytanie korzysta z indeksu z poprzedniego przykładu, bo filtruje po dacie, a kolumny Ilosc i DokumentId są w klauzuli INCLUDE. Zasady budowy indeksów opisuje dokumentacja Microsoft Learn o indeksach w SQL Server.
Prognozowanie zapotrzebowania
Część wdrożeń łączy rejestr wydań z modelami prognostycznymi, które na podstawie historii przewidują zapotrzebowanie na poszczególne indeksy. Ogólne podejście do takich rozwiązań opisuje strona o sztucznej inteligencji w firmie. Jakość prognozy zależy jednak od kompletności zapisu, więc każde wydanie poza systemem obniża jej wartość. Dotyczy to zwłaszcza towarów sezonowych, gdzie brakujące miesiące zafałszowują wzorzec popytu.
Zgodność ewidencji ze stanem i inwentaryzacją
Elektroniczna ewidencja zwiększa bezpieczeństwo obrotu, ponieważ każda transakcja jest zapisana i możliwa do prześledzenia wstecz. Szybko widać nieprawidłowości i ogranicza się straty wynikające z pomyłek albo nadużyć. Dokładna dokumentacja wydań jest też podstawą do wiarygodnego rozliczania się z klientami przy wystawianiu faktur.
Dane o wydaniach są od razu widoczne dla osób odpowiedzialnych za inwentaryzację magazynu. Rozbieżność między stanem systemowym a fizycznym wychwytuje się szybciej, bo punktem odniesienia jest zawsze bieżący zapis operacji, a nie dane odtwarzane z papierowych dokumentów. Spójność ewidencji pozostaje wtedy niezależna od liczby osób obsługujących wydania.
Pełny opis modułu zarządzania magazynem, w którym rejestr wydań jest jedną z funkcji, znajduje się na stronie systemu zarządzania magazynem WMS.




