Program handlowy z obsługą magazynu prowadzi w jednej bazie danych fakturowanie i ewidencję ilościową towaru. Wystawienie dokumentu sprzedaży zmniejsza stan, a przyjęcie dostawy zwiększa ilość dostępną dla handlowca, bez przepisywania danych między dwoma programami.
Na przykładzie modułu Handel w Comarch ERP Optima widać, co taka konstrukcja daje i gdzie się kończy. Zakres funkcji opisano według dotychczasowej treści tej strony, a mechanizmy ogólne, takie jak rezerwacje i warstwy wyceny, są wiedzą inżynierską. Ustawienia konkretnej wersji programu potwierdza dokumentacja producenta.
Program handlowy z obsługą magazynu - co dzieje się w bazie
Każdy dokument handlowy składa się z nagłówka i pozycji. Pozycja wskazuje towar z kartoteki oraz ilość i cenę. Osobno zapisany jest magazyn, z którego towar wychodzi albo do którego trafia. Po zatwierdzeniu dokumentu program zapisuje ruch magazynowy: tworzy lub aktualizuje dokument magazynowy i przelicza stan towaru w wybranym magazynie. Obie warstwy korzystają z tych samych tabel, więc nie ma opóźnienia wynikającego z eksportu i importu plików.
Dla jednego towaru baza przechowuje zwykle dwie liczby. Stan fizyczny opisuje to, co leży na półce według zatwierdzonych przyjęć i wydań. Stan dostępny to stan fizyczny pomniejszony o rezerwacje z zamówień odbiorców, które nie zostały jeszcze zrealizowane. Handlowiec przyjmujący zamówienie patrzy na stan dostępny, a magazynier przy spisie liczy stan fizyczny.
| Zdarzenie handlowe | Dokument magazynowy | Skutek dla ilości | Skutek dla wartości |
|---|---|---|---|
| Faktura sprzedaży towaru | Wydanie zewnętrzne (WZ) | Zmniejsza stan fizyczny | Koszt własny liczony wybraną metodą |
| Zamówienie od odbiorcy | Rezerwacja | Zmniejsza stan dostępny, stan fizyczny bez zmian | Brak |
| Faktura zakupu towaru | Przyjęcie zewnętrzne (PZ) | Zwiększa stan fizyczny | Tworzy warstwę wyceny po cenie zakupu |
| Faktura korygująca | Dokument korygujący wydanie lub przyjęcie | Cofa lub uzupełnia ilość | Przelicza koszt pierwotnego dokumentu |
| Przesunięcie między magazynami | MM | Przenosi ilość z jednego magazynu do drugiego | Bez zmiany wartości zapasu |
Reguła: handlowiec obiecuje klientowi stan dostępny, magazynier liczy stan fizyczny. To dwie różne liczby i nie wolno ich mieszać w jednym zestawieniu.
Tabela pokazuje, że jedno zdarzenie handlowe daje inny skutek ilościowy i wartościowy. Ten sam mechanizm obejmuje korekty: faktura korygująca powinna wskazywać dokument pierwotny, bo od niego zależy, z której warstwy wyceny zwrócony towar wraca do magazynu. Brak takiego powiązania kończy się kosztem policzonym od nowa według bieżącej metody. Podobnie działa historia stanów magazynowych: każda zmiana ilości ma dokument źródłowy, dzięki czemu stan z dowolnego dnia można odtworzyć.
Moduł Handel w Comarch ERP Optima - zakres funkcji
Comarch ERP Optima Handel łączy moduł fakturowania z funkcjami magazynowymi w ramach jednego pakietu księgowo-handlowego. Program trafia głównie do firm handlowych i dystrybucyjnych, w których magazyn wspiera sprzedaż, a nie jest osobnym centrum logistycznym obsługującym wielu klientów jednocześnie. Zakres funkcji dzieli się na dokumenty oraz obsługę urządzeń.
Dokumenty sprzedaży i zakupu
Moduł pozwala wystawiać faktury sprzedaży, w tym zaliczkowe i pro forma, oraz paragony. Po stronie zakupów obsługuje faktury zakupu, także od rolników ryczałtowych. Faktury korygujące porządkują rozliczenia i ograniczają liczbę błędów, które pojawiają się przy ręcznym przepisywaniu danych między dokumentami.
Dokumenty magazynowe i inwentaryzacja
Program obsługuje wydania i przyjęcia zewnętrzne. Obok nich rejestruje przesunięcia międzymagazynowe i rezerwacje dla odbiorców. Zamówienia u dostawców wspierają planowanie zaopatrzenia. Moduł prowadzi wiele magazynów jednocześnie i pozwala przeprowadzić inwentaryzację ze spisem z natury oraz sporządzić bilans handlowy towaru. Historia ruchu zapisuje się w kartotekach magazynowych, a zestawienia można grupować według dostaw.
- Dokumenty sprzedaży - faktury (VAT, pro forma, zaliczkowe) oraz paragony.
- Dokumenty zakupu - faktury zakupu, także od rolników ryczałtowych, oraz zamówienia u dostawców.
- Dokumenty magazynowe - wydania i przyjęcia zewnętrzne oraz przesunięcia międzymagazynowe.
- Kontrola stanu - inwentaryzacja ze spisem z natury oraz bilans handlowy towaru.
Metody rozliczania magazynu na przykładzie liczbowym
Program wspiera rozliczanie magazynu metodami FIFO i LIFO oraz średnią ważoną AVCO. Wybór wpływa na wynik finansowy przy zmiennych cenach zakupu, więc dobiera się go do charakteru asortymentu i uzgadnia z księgowym. Różnicę najłatwiej zobaczyć na jednym przykładzie: firma kupiła 100 sztuk po 10 zł, następnie 100 sztuk po 12 zł, a teraz wydaje 150 sztuk.
| Metoda | Z których warstw schodzi towar | Koszt wydania 150 sztuk | Wartość pozostałych 50 sztuk |
|---|---|---|---|
| FIFO | 100 szt. po 10 zł i 50 szt. po 12 zł | 1600 zł | 600 zł |
| LIFO | 100 szt. po 12 zł i 50 szt. po 10 zł | 1700 zł | 500 zł |
| AVCO | 150 szt. po średniej ważonej 11 zł | 1650 zł | 550 zł |
FIFO pasuje do towarów z ograniczoną trwałością, bo najstarsze partie schodzą pierwsze. AVCO upraszcza rozliczenia przy dużej rotacji asortymentu o zbliżonych cenach zakupu, ponieważ program utrzymuje jedną cenę średnią zamiast historii warstw. Przy rosnących cenach FIFO zawyża marżę, a LIFO ją obniża. Ten sam przychód daje więc inny wynik, zależnie od sposobu wyceny wydań.
Poniższe zapytanie T-SQL ilustruje mechanizm FIFO: sumę narastającą ilości po warstwach przyjęć porównuje się z ilością wydania. Nazwy tabeli i kolumn są przykładowe i nie odzwierciedlają schematu żadnego programu.
DECLARE @ilosc_wydania decimal(18,3) = 150;
WITH w AS (
SELECT id_przyjecia, ilosc, cena,
SUM(ilosc) OVER (ORDER BY data_przyjecia, id_przyjecia
ROWS UNBOUNDED PRECEDING) AS narastajaco
FROM dbo.warstwa_przyjecia
WHERE towar_id = 101 AND ilosc > 0
)
SELECT SUM(
(CASE WHEN narastajaco <= @ilosc_wydania THEN ilosc
ELSE @ilosc_wydania - (narastajaco - ilosc) END) * cena
) AS koszt_fifo
FROM w
WHERE narastajaco - ilosc < @ilosc_wydania;
Dla danych z tabeli zapytanie zwraca 1600, czyli wynik z pierwszego wiersza zestawienia. Funkcje okna opisuje dokumentacja klauzuli OVER w Microsoft Learn.
Urządzenia peryferyjne i sprzedaż internetowa
Comarch ERP Optima Handel współpracuje z urządzeniami, które skracają rejestrację sprzedaży i ruchu towaru. Każde z nich zapisuje dane w tym samym dokumencie, dlatego liczy się poprawna konfiguracja na etapie wdrożenia.
- Drukarki fiskalne - także urządzenia online, które rejestrują sprzedaż paragonową.
- Czytniki kodów kreskowych i kolektory danych - wprowadzają towar do dokumentu skanem zamiast ręcznego wpisu.
- Drukarki etykiet - drukują oznaczenia towaru według kartoteki.
- Terminale płatnicze - łączą płatność kartą z dokumentem sprzedaży.

System integruje się także z platformami e-commerce, co pozwala połączyć sprzedaż stacjonarną z internetową. Sklep pobiera stan dostępny, a nie fizyczny, więc rezerwacje z zamówień stacjonarnych zmniejszają ofertę widoczną w Internecie. Synchronizacja działa w odstępach czasu, dlatego przy szybko rotujących towarach stosuje się bufor bezpieczeństwa: sklep pokazuje o kilka sztuk mniej, niż wynika ze stanu. Jak taką wymianę projektuje się po stronie WMS, opisuje artykuł o integracji WMS z ERP.
Moduł magazynowy w programie handlowym a dedykowany WMS
Moduł wbudowany w program handlowy i dedykowany system WMS realizują część tych samych zadań, ale różnią się głębokością funkcji. Mała firma z jednym magazynem i kilkoma zamówieniami dziennie zwykle nie odczuje różnicy. Wraz z liczbą pracowników i lokalizacji składowania różnice zaczynają wpływać na tempo i dokładność pracy. Ogólne klasy oprogramowania magazynowego omawia artykuł o programie magazynowym WMS.
| Kryterium | Moduł magazynowy w programie handlowym | Dedykowany system WMS |
|---|---|---|
| Główny cel | Wsparcie fakturowania i sprzedaży | Sterowanie ruchem towaru w magazynie |
| Adresowanie | Magazyn jako jedna pozycja stanu, bez rozbicia na miejsca składowania | Lokalizacja z kodem strefy i poziomu regału |
| Praca na urządzeniach mobilnych | Ograniczona lub licencjonowana osobno | Terminale i skanery w pracy ciągłej, także w trybie online |
| Kompletacja | Lista pozycji z dokumentu | Trasy kompletacji i kolejność pobrań |
| Magazyn dla klientów zewnętrznych | Ograniczona | Rozliczenia i dane osobno dla każdego kontrahenta |
| Integracje transportowe i kurierskie | Podstawowe | Etykietowanie przesyłek i wymiana z systemami transportowymi |
Różnicę adresowania widać przy odkładaniu towaru. W programie handlowym przyjęcie zwiększa stan magazynu jako całości, więc magazynier musi pamiętać, gdzie fizycznie położył paletę. W WMS przyjęcie kończy się przypisaniem do lokalizacji, a przy wydaniu terminal prowadzi do tego samego adresu. Zapis ruchu na poziomie miejsca składowania jest też podstawą skutecznego spisu cząstkowego, o którym mowa niżej.
Dla firmy handlowej, w której magazyn wspiera głównie sprzedaż własnego asortymentu, moduł wbudowany zwykle wystarcza. Gdy magazyn przyjmuje zlecenia zewnętrzne, rośnie liczba lokalizacji albo dzienne wydania przekraczają możliwości ręcznej kontroli, opłaca się dołożyć WMS zamiast rozbudowywać sam moduł. Częściej stosowany kierunek to magazyn w chmurze, który ogranicza koszt utrzymania serwerów.
Sygnały, że moduł magazynowy przestaje wystarczać
Ograniczenia modułu widać w codziennej pracy, zanim pojawią się poważne straty. Cztery objawy wskazują, że warto ocenić potrzebę dedykowanego systemu.
- Pomyłki przy kompletacji - pracownicy szukają towaru z pamięci, bo system nie wskazuje dokładnej lokalizacji.
- Brak pracy na kolektorach - operacje opierają się na wydrukach i ręcznym wprowadzaniu danych.
- Długi spis z natury - inwentaryzacja trwa dni zamiast godzin, bo nie ma skanowania ani spisu cząstkowego.
- Trudna obsługa kilku magazynów - przeniesienie towaru wymaga wielu ręcznych operacji zamiast jednego dokumentu MM.
Reguła: wskaźniki mierzy się, a nie szacuje. Czas od skanu do zaksięgowania ruchu i liczba korekt po inwentaryzacji w miesiącu mówią więcej niż wrażenia kierownika magazynu.
Drugi wskaźnik da się policzyć jednym zapytaniem. Poniżej przykład dla tabeli dokumentów magazynowych o przykładowej nazwie, która zawiera typ dokumentu i datę zatwierdzenia.
SELECT FORMAT(data_zatwierdzenia, 'yyyy-MM') AS miesiac,
SUM(CASE WHEN typ = 'KOR_INW' THEN 1 ELSE 0 END) AS korekty_inwentaryzacyjne,
COUNT(*) AS wszystkie_dokumenty
FROM dbo.dokument_magazynowy
GROUP BY FORMAT(data_zatwierdzenia, 'yyyy-MM')
ORDER BY miesiac;
Wybór wskaźników zależy od firmy, ale ich trend jest czytelny: jeśli korekt przybywa szybciej niż obrotów, ewidencja przestaje nadążać za fizycznym ruchem. Wtedy pomaga przeniesienie skanowania i adresowania do osobnej warstwy. Dokumenty, które ta warstwa generuje, opisuje artykuł o dokumentach magazynowych w WMS.
Współpraca ERP i WMS po wdrożeniu magazynu
Dodanie WMS nie oznacza rezygnacji z programu handlowego. ERP zostaje systemem fakturowym i finansowym, a WMS przejmuje fizyczny ruch towaru. Kluczem jest jednoznaczny podział własności danych: każda informacja ma jednego właściciela, a drugi system dostaje jej kopię.
| Dane | Właściciel | Kierunek wymiany |
|---|---|---|
| Kartoteka towarowa i kontrahenci | ERP | Z ERP do WMS |
| Zamówienia odbiorców i dostawców | ERP | Z ERP do WMS |
| Lokalizacje i strefy składowania | WMS | Tylko w WMS |
| Potwierdzone przyjęcia i wydania | WMS | Z WMS do ERP jako PZ i WZ |

Wymianę realizuje się przez interfejs API albo pliki wymiany, a dokumenty potwierdzone w WMS wracają do ERP jako przyjęcia i wydania. Przykład takiego układu dla innego programu księgowo-handlowego pokazuje artykuł o wymianie dokumentów z Wapro, a projekt po stronie Comarch opisuje integracja Comarch WMS z systemami ERP. Studio WMS.net i pozostałe produkty prezentuje serwis magazyn.softwarestudio.com.pl. Sam dostawca ERP udostępnia opis programu na stronie Comarch ERP.
Wdrożenie modułu handlowego - testy równoległe i odbiór
Uruchomienie modułu Handel z obsługą magazynu przebiega według podobnego schematu, niezależnie od wielkości firmy. Cztery etapy decydują o tym, czy pierwszy miesiąc pracy zakończy się zgodnym stanem księgowym i fizycznym.
- Analiza procesów - ustalenie dokumentów oraz liczby magazynów i urządzeń.
- Kartoteki i metoda wyceny - import kartotek z poprzedniego systemu (asortyment i kontrahenci) oraz wybór metody rozliczania magazynu.
- Testy równoległe - praca na starym i nowym systemie przez uzgodniony okres, aby wychwycić rozbieżności przed pełnym przejściem.
- Start i nadzór - monitorowanie pierwszych tygodni, w których ujawniają się błędy konfiguracji.
Najczęstszy błąd polega na pominięciu testów równoległych. Firmy, które przełączają się od razu, częściej znajdują rozbieżności między stanem księgowym a fizycznym niż te, które przez dwa lub trzy tygodnie prowadzą ewidencję w obu systemach. Migrację kartotek z arkusza opisuje artykuł o programie do magazynu i migracji z Excela.
Wdrożenie nie kończy się w dniu startu. Program wymaga aktualizacji zgodnie ze zmianami przepisów podatkowych i księgowych, a rozwój firmy, na przykład nowy magazyn albo kanał sprzedaży, zwykle oznacza dokupienie licencji lub modułów. Przy wyborze dostawcy sprawdza się więc tempo aktualizacji i dostępność wsparcia technicznego. Osobno ocenia się łatwość integracji z platformami e-commerce i przyszłym WMS. Urządzenia mobilne z Androidem, które później obsłużą magazyn, opisuje artykuł o kolektorach danych z Androidem.






