WZ z „+” czy z „–” w JPK_MAG?

Ostatnio trafiło do mnie pytanie od zespołu deweloperskiego, który pracuje nad rozwojem funkcjonalności raportowania JPK w jednym z wiodących systemów finansowo-księgowych:

„Marcin, z jakimi znakami powinno się raportować ilości i kwoty w JPK Magazyny?”

Zagadnienie, niby oczywiste, ale czy na pewno? Ja zawsze do tego podchodziłem w jeden sposób, ale to pytanie i argumentacja, jaką przytoczę poniżej zmusiła mnie jednak do przejścia przez portfolio rozwiązań, które wdrożyłem i do metodologii, jaką przyjmowałem, aby się upewnić, kto ma rację – ja, czy producent systemu, który się upierał przy swoim.

Stanowisko zespołu deweloperskiego:

Znak przy ilości i wartościach w JPK Magazyny powinien być taki, jaki wynika ze strony księgowania ruchu magazynowego w systemie finansowo-księgowym.

  • Ruch zwiększający saldo (PZ) księguje się po stronie WINIEN – znak dodatni
  • Ruch zmniejszający saldo (WZ lub RW) księguje się po stronie MA – znak ujemny
  • Patrzymy zawsze z perspektywy raportowanego magazynu, a więc zasada ta obowiązuje również dla dokumentów o typie MM (przesunięć magazynowych)
  • Korekty ruchów księgujemy i raportujemy w JPK ze znakiem przeciwnym, niż ruch podstawowy

Ma sens to co mówił zespół deweloperski – nie sądzicie?

Rzeczywiście ma to sens, ale niestety JPK_MAG rządzi się inną logiką i swoimi prawami. Już bowiem sekcja, do której dany ruch zostanie przypisany wskazuje na to, jaki wpływ będzie miał on na saldo magazynu, czy spowoduje wzrost salda magazynu, czy jego spadek.

Dokumenty PZ będą zawsze zwiększać saldo magazynu, podczas gdy WZ i RW będą zawsze zmniejszać saldo magazynu. Kierunek zmiany salda dla dokumentu MM będzie opisany parametrem Skąd /  Dokąd – w przypadku jeśli raportowany magazyn jest wskazany w polu „skąd”, transakcja będzie zmniejszać saldo magazynu, jeśli w „dokąd”, transakcją zwiększy saldo magazynu.

Znak zatem jest już zaszyty w samej nazwie sekcji, w której ruch jest raportowany i nie powinno się go dodawać na poziomie danego ruchu (z wyjątkiem zapisów korygujących).

Podsumowując, jeśli nie mamy do czynienia z korektą ruchu magazynowego, wszystkie wartości liczbowe opisujące ruch, czyli:

  • Wartość (na poziomie nagłówka)
  • Ilość przyjęta lub wydana (na poziomie wiersza)
  • Cena jednostkowa (na poziomie wiersza)
  • Wartość pozycji (na poziomie wiersza)

powinny mieć zawsze znak dodatni!

Tylko ruchy korygujące ww. ruchy powinny mieć znak odwrotny, czyli ujemny. Tu akurat po części zgadzamy się z zespołem wdrożeniowym 😊