Wspólne

OPT088 - Pliki JPK_V7 – przygotowanie dokumentów i generacja pliku

Data aktualizacji: 08-03-2024

Szkolenie multimedialne dotyczące obsługi pliku JPK_V7 w Comarch ERP Optima dostępne jest tutaj.

1. Wstęp

Od 1 października 2020 roku Ministerstwo Finansów wprowadziło nowy rodzaj pliku JPK. Są to pliki JPK_V7M dla rozliczeń miesięcznych oraz JPK_V7K dla rozliczeń kwartalnych. Pliki te zawierają część deklaracyjną (na wzór deklaracji VAT-7) oraz ewidencyjną (na wzór pliku JPK_VAT). Nowy rodzaj pliku JPK zastępuje więc zarówno plik JPK_VAT jak i deklarację VAT-7. W przypadku podatników rozliczających podatek VAT kwartalnie, za pierwszy i drugi miesiąc kwartału składają oni tylko część ewidencyjną, a po upływie trzeciego miesiąca – część deklaracyjną rozliczającą podatek VAT za dany kwartał oraz część ewidencyjną za trzeci kwartał. Obowiązek składania plików JPK_V7 dotyczy wszystkich podatników VAT, bez względu na ich wielkość. Inaczej niż w przypadku plików JPK_VAT, podatnicy rozliczający się stawką zryczałtowaną 4%, np. taksówkarze, nie muszą już składać plików JPK_V7. W programie Comarch ERP Optima udostępniona została możliwość opisywania dokumentów nowymi danymi na potrzeby pliku JPK_V7, sporządzenia tego pliku i jego wysyłki dla każdego Użytkownika, bez względu na wielkość firmy. Od wersji programu Comarch ERP Optima 2022.2.1 umożliwiono sporządzenie pliku JPK_V7(2) zgodnie z nowym wzorcem dokumentu elektronicznego obowiązującym za okres rozliczenia VAT od stycznia 2022.
Uwaga
Do sporządzenia i wysłania pliku JPK_V7 wymagane jest pobranie podczas logowania modułów księgowych – Księga Handlowa, Księga Handlowa Plus bądź Księga Podatkowa lub handlowych (Faktury, Handel lub Handel Plus).
Sporządzić plik JPK_V7 mogą wszyscy operatorzy mający dostęp do modułów księgowych, natomiast prawo eksportu plików i odbioru UPO posiadają wyłącznie wybrani operatorzy w programie. Ma to na celu zablokowanie wysłania pliku JPK_V7 przez nieupoważnione do tego osoby. W przypadku zmiany wymaganej struktury plików JPK istnieje możliwość aktualizacji formatów służących do eksportu poprzez pobranie ich z serwerów Comarch w momencie generowania plików.
Uwaga
Funkcjonalność aktualizacji wzorów dokumentu elektronicznego dla plików JPK_V7 jest dostępna tylko dla programów na gwarancji oraz w przypadku pracy na najnowszej dostępnej wersji programu Comarch ERP Optima.

2. Konfiguracja ustawień związanych z JPK_V7

W Konfiguracji Firmy/ Dane firmy/ Deklaracje w sekcji Podatnik składa deklaracje/odprowadza zaliczki z tytułu znajduje się parametr JPK_V7. W przypadku jego zaznaczenia możliwe jest sporządzenie plików JPK_V7 poprzez udostępnienie odpowiedniej opcji w menu programu. Parametr jest domyślnie zaznaczony dla nowo zakładanych baz. Aby móc wysłać plik JPK_V7 oraz odebrać dla niego Urzędowe Poświadczenie Odbioru, na karcie operatora w Konfiguracji Programu/ Użytkowe/ Operatorzy musi zostać zaznaczony parametr Prawo eksportu plików JPK: Tylko Operator z uprawnieniami administratora może zaznaczyć ten parametr sobie bądź innym Operatorom. Początkowo jedynie operator ADMIN ma ten parametr zaznaczony. Poniżej znajduje się parametr Zmiana atrybutów/kodów JPK na zatw. dok. umożliwiający edycję kodów JPK na zatwierdzonej oraz na zaksięgowanej Fakturze Zakupu/Sprzedaży. Jest to istotne w związku z przenoszeniem informacji zawartych w tych kodach do plików JPK (dla rejestrów VAT oraz faktur). Parametr może być edytowany tylko przez operatora z uprawnieniami administratora. Zaznaczenie znajdującego się na karcie operatora parametru Prawo do odblok. Wysłanej e-Deklaracji umożliwia odblokowanie pliku JPK_V7 o statusie Wysłano/odebrano UPO lub Błąd przetwarzania. Służy do tego opcja Odblokuj JPK_V7 dostępna po kliknięciu prawym przyciskiem myszy na pliku. Dotyczy programu Comarch ERP Optima od wersji 2023.1.1. Dodatkowo w Konfiguracji Stanowiska/ Ogólne/ Jednolity Plik Kontrolny musi zostać wskazany katalog przechowywania plików wymiany, do którego będą zapisywane kopie wysyłanych plików w formacie *.xml: Przy eksporcie plików JPK_V7 w ramach wskazanego katalogu tworzony jest podkatalog z nazwą firmy (bazy), więc w przypadku biur rachunkowych dane poszczególnych firm trafiają do własnych katalogów. Nazwy tworzonych plików zawierają informacje o zakresie dat zawartych w nich danych oraz o czasie ich utworzenia, wg wzoru: Jpk_V7_PLN_Data_od_Data_do_Data_i_godzina_utworzenia_Kolejny_plik_w_miesiącu

3. Oznaczanie dokumentów na potrzeby plików JPK_V7

Struktura plików JPK_V7M i JPK_V7K została rozbudowana względem pliku JPK_VAT o dodatkowe informacje, które mają być przesyłane dla każdej faktury. Dlatego też istotne jest aby odpowiednio opisywać przyjmowane oraz wydawane dokumenty od 01.10.2020 dodatkowymi informacjami. Są to: kod kraju kontrahenta, kod towarowy, procedura i typ dokumentu.

3. 1. Kody towarowe, procedury i typy dokumentów – informacje ogólne

Ministerstwo Finansów zdefiniowało listę kodów towarowych, które mają być wysyłane w pliku JPK_V7M/7K dla dokumentu, na którym zarejestrowano sprzedaż danego rodzaju:
  • GTU_01 – dostawa napojów alkoholowych o zawartości alkoholu powyżej 1,2%, piwa oraz napojów alkoholowych będących mieszaniną piwa i napojów bezalkoholowych, w których zawartość alkoholu przekracza 0,5% (CN od 2203 do 2208)
  • GTU_02 – dostawa towarów, o których mowa w art. 103 ust. 5aa ustawy
  • GTU_03 – dostawa olejów opałowych nieujętych w lit. b, olejów smarowych i pozostałych olejów (CN od 2710 19 71 do 2710 19 83 i CN od 2710 19 87 do 2710 19 99, z wyłączeniem smarów plastycznych zaliczonych do kodu CN 2710 19 99), olejów smarowych (CN 2710 20 90) oraz preparatów smarowych (CN 3403, z wyłączeniem smarów plastycznych objętych tą pozycją)
  • GTU_04 – dostawa wyrobów tytoniowych, suszu tytoniowego, płynu do papierosów elektronicznych i wyrobów nowatorskich, w rozumieniu przepisów o podatku akcyzowym
  • GTU_05 – dostawa odpadów – wyłącznie określonych w poz. 79–91 załącznika nr 15 do ustawy
  • GTU_06 – dostawa urządzeń elektronicznych oraz części i materiałów do nich, wyłącznie określonych w poz. 7, 8, 59–63, 65, 66, 69 i 94–96 załącznika nr 15 do ustawy, a także folii typu stretch określonej w poz. 9 tego załącznika
  • GTU_07 – dostawa pojazdów oraz części (CN od 8701 do 8708)
  • GTU_08 – dostawa metali szlachetnych oraz nieszlachetnych – wyłącznie określonych w poz. 1 i 1a załącznika nr 12 do ustawy oraz w poz. 12–25, 33–40, 45, 46, 56 i 78 załącznika nr 15 do ustawy
  • GTU_09 – dostawa produktów leczniczych, środków spożywczych specjalnego przeznaczenia żywieniowego oraz wyrobów medycznych – wyłącznie objętych obowiązkiem zgłoszenia, o którym mowa w art. 37av ust. 1 ustawy z dnia 6 września 2001 r. – Prawo farmaceutyczne (Dz. U. z 2021 r. poz. 974 i 981)
  • GTU_10 – dostawa budynków, budowli i gruntów oraz ich części i udziałów w prawie własności, w tym również zbycia praw, o których mowa w art. 7 ust. 1 ustawy
  • GTU_11 – świadczenia usług w zakresie przenoszenia uprawnień do emisji gazów cieplarnianych, o których mowa w ustawie z dnia 12 czerwca 2015 r. o systemie handlu uprawnieniami do emisji gazów cieplarnianych (Dz. U. z 2021 r. poz. 332 i 1047)
  • GTU_12 –  świadczenie usług o charakterze niematerialnym – wyłącznie: doradczych, w tym doradztwa prawnego i podatkowego oraz doradztwa związanego z zarządzaniem (PKWiU 62.02.1, 62.02.2, 66.19.91, 69.20.3, 70.22.11, 70.22.12, 70.22.13, 70.22.14, 70.22.15, 70.22.16, 70.22.3, 71.11.24, 71.11.42, 71.12.11, 71.12.31, 74.90.13, 74.90.15, 74.90.19), w zakresie rachunkowości i audytu finansowego (PKWiU 69.20.1, 69.20.2), prawnych (PKWiU 69.1), zarządczych (PKWiU 62.03, 63.11.12, 66.11.19, 66.30, 68.32, 69.20.4, 70.22.17, 70.22.2, 90.02.19.1), firm centralnych (PKWiU 70.1), marketingowych lub reklamowych (PKWiU 73.1), badania rynku i opinii publicznej (PKWiU 73.2), w zakresie badań naukowych i prac rozwojowych (PKWiU 72) oraz w zakresie pozaszkolnych form edukacji (PKWiU 85.5)
  • GTU_13 – świadczenia usług transportowych i gospodarki magazynowej – (PKWiU 49.4, 52.1)
Procedury, podobnie jak kody towarowe, opisują dodatkowo dokument wysyłany w pliku JPK_V7. Nie są jednak ściśle powiązane z towarem. Są podzielone na procedury dla dokumentów sprzedaży i zakupu. Procedury dla sprzedaży:
  • SW – dostawa w ramach sprzedaży wysyłkowej z terytorium kraju, o której mowa w art. 23 ustawy (kod obowiązujący do czerwca 2021)
  • EE – świadczenie usług telekomunikacyjnych, nadawczych i elektronicznych, o których mowa w art. 28k ustawy (kod obowiązujący do grudnia 2021)
  • TP – istniejące powiązania między nabywcą a dokonującym dostawy towarów lub usługodawcą, o których mowa w art. 32 ust. 2 pkt 1 ustawy
  • TT_WNT – wewnątrzwspólnotowe nabycie towarów dokonane przez drugiego w kolejności podatnika VAT w ramach transakcji trójstronnej w procedurze uproszczonej, o której mowa w dziale XII rozdział 8 ustawy
  • TT_D – dostawa towarów poza terytorium kraju dokonana przez drugiego w kolejności podatnika VAT w ramach transakcji trójstronnej w procedurze uproszczonej, o której mowa w dziale XII rozdział 8 ustawy
  • MR_T – świadczenia usług turystyki opodatkowanych na zasadach marży zgodnie z art. 119 ustawy
  • MR_UZ – dostawa towarów używanych, dzieł sztuki, przedmiotów kolekcjonerskich i antyków, opodatkowana na zasadach marży zgodnie z art. 120 ustawy
  • I_42 – wewnątrzwspólnotowa dostawa towarów następująca po imporcie tych towarów w ramach procedury celnej 42 (import)
  • I_63 – wewnątrzwspólnotowa dostawa towarów następująca po imporcie tych towarów w ramach procedury celnej 63 (import)
  • B_SPV – transferu bonu jednego przeznaczenia dokonanego przez podatnika działającego we własnym imieniu, opodatkowanego zgodnie z art. 8a ust. 1 ustawy
  • B_SPV_DOSTAWA – dostawa towarów oraz świadczenie usług, których dotyczy bon jednego przeznaczenia na rzecz podatnika, który wyemitował bon zgodnie z art. 8a ust. 4 ustawy
  • B_MPV_PROWIZJA – świadczenie usług pośrednictwa oraz innych usług dotyczących transferu bonu różnego przeznaczenia, opodatkowanych zgodnie z art. 8b ust. 2 ustawy
  • MPP – transakcje objęte obowiązkiem stosowania mechanizmu podzielonej płatności (kod obowiązujący do czerwca 2021)
  • WSTO_EE – wewnątrzwspólnotowa sprzedaż na odległość towarów, które w momencie rozpoczęcia ich wysyłki lub transportu znajdują się na terytorium kraju, oraz świadczenie usług telekomunikacyjnych, nadawczych i elektronicznych, o których mowa w art. 28k ustawy, na rzecz podmiotów niebędących podatnikami, posiadających siedzibę, stałe miejsce zamieszkania lub miejsce pobytu na terytorium państwa członkowskiego innym niż terytorium kraju (kod obowiązujący od stycznia 2022)
  • IED – dostawa towarów, o której mowa w art. 7a ust. 1 i 2 ustawy, dokonana przez podatnika ułatwiającego tę dostawę, który nie korzysta z procedury szczególnej, o której mowa w dziale XII w rozdziale 6a lub 9 ustawy lub w odpowiadających im regulacjach, dla której miejscem dostawy jest terytorium kraju (kod obowiązujący od stycznia 2022)
Procedury dla zakupu:
  • IMP – podatek naliczony z tytułu importu towarów, w tym importu towarów rozliczanych zgodnie z art. 33a ustawy
  • MPP – transakcje objęte obowiązkiem stosowania mechanizmu podzielonej płatności (kod obowiązujący do czerwca 2021)
Oprócz wspomnianych kodów towarowych oraz procedur, do opisu transakcji na potrzeby pliku JPK_V7 służą typy dokumentów. Dokument w pliku JPK_V7 może być oznaczony jednocześnie tylko jednym z wymienionych poniżej kodów. Dostępne typy dokumentów dla sprzedaży to:
  • RO – dokument zbiorczy o sprzedaż z kas rejestrujących
  • WEW – dowód wewnętrzny
  • FP – faktura, o której mowa w art. 109 ust. 3d ustawy
Dla zakupu dostępne są typy:
  • VAT_RR – faktura VAT RR, o której mowa w art. 116 ustawy
  • WEW – dokument wewnętrzny
  • MK – faktura wystawiona przez podatnika będącego dostawcą lub usługodawcą, który wybrał metodę kasową rozliczeń określoną w art. 21 ustawy
  • Znacznik techniczny ZakupVAT_Marza – nabycia towarów i usług związanych ze sprzedażą opodatkowaną na zasadzie marży zgodnie z art. 119 i art. 120 ustawy
  Lista kodów JPK_V7 wyświetlana na dokumentach zależy od daty rozliczenia w VAT określonego dokumentu i wynika z okresu obowiązywania danego kodu. Dla dokumentów rozliczanych w VAT metodą kasową pod uwagę brana jest data bieżąca w programie. W przypadku karty kontrahenta, kategorii oraz pozycji cennika możliwość przypisania konkretnych domyślnych kodów również zależy od ustawionej w programie daty bieżącej. Podobnie jest w przypadku operacji seryjnych dot. dodawania / usuwania kodów JPK_V7 – widoczność poszczególnych kodów uzależniona jest od daty bieżącej.

3.2. Dostosowanie danych słownikowych do sporządzania plików JPK_V7

3.2.1. Formularz kontrahenta

Na karcie kontrahenta na zakładce [Ogólne] znajduje się rozwijalna listę kodów krajów przed numerem NIP. Zawiera ona kody krajów z zgodnie wymaganiami pliku JPK_V7. Dla ułatwienia wyboru właściwego prefiksu, rozwijalna lista obok kodów zawiera również kolumnę z nazwą kraju. 5 najczęściej wybieranych prefiksów krajów wyświetlanych jest początku listy pogrubioną czcionką, bezpośrednio pod wierszem z pustym prefiksem. Ustawienia są zapamiętywane dla każdego Operatora i każdej bazy firmowej. Wymagany przez plik JPK_V7 dla transakcji innych niż krajowe kod kraju kontrahenta, po uzupełnieniu na karcie kontrahenta przenoszony jest na dokumenty w module Handel oraz w Rejestrach VAT, na których ten podmiot został wybrany. Kod kraju może być uzupełniony na formularzu pojedynczego kontrahenta bądź jednocześnie dla wielu kontrahentów za pomocą operacji seryjnej Zmień status dostępnej na liście kontrahentów: Na formularzu kontrahenta dostępna jest zakładka [JPK] umożliwiająca przypisanie domyślnych procedur i kodów towarowych oraz znacznika technicznego ZakupVAT_Marza,, które będą się automatycznie przenosiły na transakcje. Na zakładce znajduje się lista zawierająca trzy kolumny:
  • Kod – kod procedury bądź kodu,
  • Opis – słowny opis procedury lub kodu
  • Rodzaj – wyświetlająca wartość Procedura lub Kod towarowy.
Obok listy dostępne są ikony Dodanie pozycji oraz Usuń pozycję. Po kliknięciu  Dodanie pozycji otwierane jest okno Kody JPK_V7 – Wybierz zawierające listę dostępnych kodów towarowych i procedur pogrupowanych według rodzaju: Użytkownik ma możliwość wyboru jednej bądź wielu pozycji, zaznaczając je na liście. Kliknięcie ikony  Wybierz powoduje przeniesienie na kartę kontrahenta zaznaczonych pozycji. Jeżeli żadna pozycja nie została zaznaczona, kliknięcie ikony powoduje przeniesienie podświetlonej na liście pozycji. Wybór opcji Zamknij okno powoduje zamknięcie listy kodów bez przeniesienia żadnego z nich na kartę kontrahenta. Kliknięcie ikony  Usuń pozycję na zakładce [JPK] powoduje usunięcie z karty kontrahenta zaznaczonych procedur bądź kodów towarowych. Jeżeli żadna pozycja nie została zaznaczona, kliknięcie ikony powoduje usunięcie podświetlonej na liście pozycji. W przypadku wybranych na karcie kontrahenta procedur dla sprzedaży – przenoszone są one na Faktury Sprzedaży oraz dokumenty w Rejestrze Sprzedaży VAT, natomiast procedury dla zakupu lub znacznik techniczny ZakupVAT_Marza przenoszone są na Faktury Zakupu oraz dokumenty w Rejestrze Zakupu VAT dodane dla tego kontrahenta. Podczas kopiowania karty kontrahenta, na nowo tworzoną kartę przenoszone zostają domyślne procedury, kody towarowe i znacznik techniczny ZakupVAT_Marza z kopiowanej karty. Podczas łączenia kart kontrahentów następuje dopisywanie procedur i znaczniku ZakupVAT_Marza z kontrahenta podrzędnego na kartę kontrahenta głównego. Informacje o przypisanych do kontrahenta kodach towarowych, procedurach dla plików JPK_V7 przenoszone są za pomocą pracy rozproszonej. Możliwe jest seryjne dodawanie oraz usuwanie kodów JPK_V7 dla wielu kontrahentów jednocześnie. Po wybraniu na liście kontrahentów w menu Operacje seryjne/ JPK opcji Dodaj kody JPK_V7 otwierane jest okno z listą kodów towarowych, procedur i znacznikiem technicznym ZakupVAT_Marza dla plików JPK_V7: Po zaznaczeniu wybranych kodów i kliknięciu na przycisk Dodaj kody JPK_V7 zostaną one przypisane do kartotek zaznaczonych na liście kontrahentów i będą przenoszone na dokumenty dla tych kontrahentów. Analogicznie po wybraniu Operacje seryjne/ JPK/ Usuń kody JPK_V7 otwierane jest okno z listą kodów towarowych, procedur i znacznikiem technicznym ZakupVAT_Marza dla plików JPK_V7: Po zaznaczeniu wybranych kodów i kliknięciu na przycisk Usuń kody JPK_V7 zostaną one usunięte z kartotek zaznaczonych na liście kontrahentów i nie będą z nich przenoszone na dokumenty tych kontrahentów.

Na liście kontrahentów dostępna jest domyślnie widoczna kolumna Kody JPK_V7 wyświetlająca przypisane do danego kontrahenta domyślne kody.

3.2.2. Formularz kategorii

Na formularzu kategorii znajduje się sekcja Kody JPK_V7. Na kategoriach o typie Koszty istnieje możliwość wskazania typu dokumentu i procedur dotyczących zakupu, dowolnych kodów towarowych oraz znacznika technicznego ZakupVAT_Marza. Na kategoriach o typie Przychody istnieje możliwość wskazania typu dokumentu i procedur dotyczących sprzedaży oraz dowolnych kodów towarowych. Możliwe jest dodanie więcej niż jednego kodu towarowego i więcej niż jednej procedury oraz tylko jednego typu dokumentu. Kody JPK_V7 uzupełnione na formularzu kategorii ogólnej nie są przenoszone na formularz dodanej do niej kategorii szczegółowej. Jeżeli użytkownik chce, aby kody JPK_V7 uzupełnione na formularzu kategorii ogólnej zostały przeniesione na wszystkie dodane do niej kategorie szczegółowe, może skorzystać w menu kontekstowym z operacji seryjnej Kopiuj kody JPK_V7 na podkategorie. Opcja ta dostępna jest tylko dla kategorii ogólnych.
Uwaga
W związku z wprowadzeniem funkcji przenoszenia kodów JPK_V7 z formularza kategorii na dokument w rejestrze VAT zalecamy wybór jednego miejsca uzupełniania domyślnych kodów JPK_V7 – albo kartę kontrahenta albo formularz kategorii.

3.2.3. Pozycja cennika

Na karcie pozycji cennikowej na zakładce [Dodatkowe] znajduje się sekcja JPK_V7 z polem Domyślny kod. Pole jest rozwijalną listą na której można wybrać jeden kod towarowy bądź procedurę znacznik techniczny ZakupVAT_Marza które mają za zadanie dodatkowo opisać dokument przesyłany do pliku JPK_V7. Wyświetlana lista pozycji zawiera te same kody towarowe, procedury i znacznik techniczny ZakupVAT_Marza które dostępne są do wyboru na karcie kontrahenta na zakładce [JPK]. Wskazany w tym miejscu domyślny kod będzie przenosił się na transakcje handlowe, na których wybrana została ta pozycja cennika. Podczas kopiowania pozycji cennika, na nowo tworzoną kartę przenoszony jest domyślny kod z kopiowanej karty. Z poziomu okna Lista zasobów oraz Cennik dostępna jest operacja seryjna Zmiana parametrów karty zawierająca opcję Ustaw domyślny kod JPK_V7. Umożliwia ona seryjne ustawienie wybranego kodu towarowego, procedury bądź znacznika technicznego ZakupVAT_Marza procedury dla zaznaczonych pozycji cennika. Operacja jest aktywowana przyciskiem  Wykonaj.
  • Wykonanie operacji dla towarów, które nie mają przypisanego kodu, będzie skutkowało jego ustawieniem.
  • Wykonanie operacji dla towarów, które już mają przypisany kod, będzie skutkowało jego zmianą.
  • Wykonanie operacji bez wskazania kodu, będzie skutkowało usunięciem kodów JPK_V7 z zaznaczonych pozycji.
Oprócz wspomnianych kodów towarowych oraz procedur, do opisu transakcji na potrzeby pliku JPK_V7 służą typy dokumentów. Typy te uzupełniane są automatycznie na dokumentach w module Handel oraz w Rejestrach VAT.

3.2.4. Dokumenty w module Handel

Na potrzeby pliku JPK_V7 dokumenty handlowe muszą być oznaczone ściśle określonymi procedurami. Dotyczy to następujących typów dokumentów:
  • Sprzedaż:
    • Faktur Sprzedaży,
    • Faktur VAT Marża,
    • Faktur Zaliczkowych, Faktur Finalnych,
    • Paragonów,
    • Faktur do Paragonów,
    • Dowodów Wewnętrznych
  • Zakup:
    • Faktur Zakupu,
    • Korekt do Faktury Zakupu,
    • Dowodów Wewnętrznych

Na zakładce [Atrybuty/JPK] na dokumentach sprzedaży znajduje się tabela z kodami towarowymi i procedurami wymaganymi w pliku JPK_V7. Dla dokumentów zakupu nie ma możliwości wskazania kodu JPK_V7 o rodzaju Kod towarowy.

Na zakładkę [Atrybuty/JPK] przenoszą się automatycznie kody i procedury przypisane do kontrahenta wybranego na dokument. Po zmianie kontrahenta na dokumencie, zostaną usunięte kody poprzedniego kontrahenta i do tabeli kodów JPK_V7 zostaną dodane kody nowego kontrahenta.
Uwaga
Kody towarowe z formularza kontrahenta oraz towaru przenoszone są tylko na dokumenty sprzedażowe, na dokumenty zakupowe kody towarowe nie są przenoszone.
Podobnie dla towarów, przenoszą się tu automatycznie kody przypisane do pozycji cennikowych. Jeśli towary dodane na dokument mają taki sam kod, w tabeli JPK_V7 jest on wyświetlany tylko raz. Po usunięciu towaru z dokumentu, z tabeli JPK_V7 usuwany jest kod tego towaru. Nie są usuwane kody, które zostały na dokument dodane przez Użytkownika. Do czasu zapisania dokumentu na stałe, Użytkownik może modyfikować tabelę z kodami JPK_V7. Po zatwierdzeniu dokumentu na stałe, procedury można modyfikować pod warunkiem, że operator ma zaznaczony parametr: Zmiana atrybutów/ kodów JPK na zatw. Dok. (menu Start/Konfiguracja/ Program/ Użytkowe/ Operatorzy – Karta operatora/ zakładka [Ogólne]).
Uwaga
Faktury Sprzedaży wystawione w procedurze OSS nie są uwzględniane w pliku JPK_V7. Na takie dokumenty nie są przenoszone kody JPK_V7 z towarów i z karty kontrahenta, nie można również wskazać kodów JPK_V7 ręcznie.
Oprócz kodów towarowych i procedur, na dokument można dodać kod JPK przypisany do typu dokumentu:
  • Dla dokumentów sprzedaży:
    • RO – dokument zbiorczy o sprzedaż z kas rejestrujących
    • WEW – dowód wewnętrzny
    • FP – faktura, o której mowa w art. 109 ust. 3d ustawy
  • Dla dokumentów zakupu:
    • VAT_RR – faktura VAT RR, o której mowa w art. 116 ustawy
    • WEW – dowód wewnętrzny
    • MK – faktura wystawiona przez podatnika będącego dostawcą lub usługodawcą, który wybrał metodę kasową rozliczeń określoną w art. 21 ustawy
    • Znacznik techniczny ZakupVAT_Marza – nabycia towarów i usług związanych ze sprzedażą opodatkowaną na zasadzie marży zgodnie z art. 119 i art. 120 ustawy
Uwaga
Na dokumencie należy wskazać jeden kod JPK_V7 opisujący typ dokumentu. Jeśli wskazanych zostanie więcej kodów, wówczas przy próbie zapisu dokumentu pojawi się komunikat: Na dokumencie wybrano zbyt wiele kodów JPK_V7 opisujących typ dokumentu. Wybierz tylko jeden kod opisujący typ dokumentu.
Możliwe jest seryjne dodawanie oraz usuwanie kodów JPK_V7 z poziomu list:
  • Faktury Sprzedaży,
  • Faktury Zakupu,
  • Paragony,
  • Dowody Wewnętrzne Sprzedaży,
  • Dowody Wewnętrzne Zakupu.
Opcja jest dostępna na liście dokumentów, dla zaznaczonych pozycji pod przyciskiem Operacji seryjnych:
Uwaga
Aby zmieniać kody JPK_V7 (w tym seryjnie) na dokumentach zapisanych na stałe, należy w menu Start/Konfiguracja/ Program/ Użytkowe/ Operatorzy – na karcie operatora, na zakładce [Ogólne] zaznaczyć parametr Zmiana atrybutów/ kodów JPK na zatw. dok.
Po wybraniu tej operacji należy zaznaczyć kody, które chcemy dodać do/ usunąć z dokumentów i zatwierdzić wybór przyciskiem Dodaj kody JPK_V7/ Usuń kody JPK_V7 bądź klawiszem <F8>: Procedury przenoszone automatycznie na dokumenty handlowe
Uwaga
Poniżej opisane procedury są dodawane na dokumenty automatycznie. Jeśli zostaną one przypisane przez operatora do kontrahenta oraz do pozycji cennikowych, będą zawsze przenoszone na dokumenty (niezależnie od wymogów ich stosowania).
Faktury podlegające obligatoryjnemu mechanizmowi podzielonej płatności – MPP Na dokumentach wystawionych od lipca 2021 kod MPP nie jest przenoszony na dokumenty. Paragony, zafiskalizowane Faktury Sprzedaży

Dla wszystkich wystawionych w programie Paragonów nadawana jest procedura RO. Dla Faktur Sprzedaży zafiskalizowanych lub powstałych z przekształcenia Paragonu nadawana jest procedura FP. Kod FP nie jest przenoszony na korektę utworzoną do zafiskalizowanej faktury.

Faktura VAT Marża Po wskazaniu na Fakturze VAT Marża procedury marży, do dokumentu zostanie automatycznie dopisana odpowiednia procedura dla JPK_V7:
  • MR_T – Procedura marża dla biur podróży,
  • MR_UZ – Procedura marża – towary używane,
  • MR_UZ – Procedura marży – dzieła sztuki,
  • MR_UZ – Procedura marży – przedmioty kolekcjonerskie i antyki.
Paragon, Faktura Sprzedaży dla kontrahenta powiązanego Na Paragon i Fakturę Sprzedaży wystawioną dla kontrahenta, który na swojej karcie, na zakładce [Handlowe] ma zaznaczony parametr Kontrahent powiązany, automatycznie jest dodawana procedura TP. Faktury Zakupu dla rolnika ryczałtowego
  • Na Fakturze Zakupu dla kontrahenta, który na swojej karcie, na zakładce [Handlowe] ma zaznaczony parametr Rolnik, automatycznie jest dodawana procedura VAT_RR.
  • Po przekształceniu FRR do FZ, Faktura Zakupu automatycznie otrzymuję procedurę VAT_RR.
Faktura Zakupu – metoda kasowa Na Fakturze Zakupu dla kontrahenta, który na swojej karcie, na zakładce [Handlowe] ma zaznaczony parametr Metoda kasowa, automatycznie jest dodawana procedura MK. Faktura zakupu – import Na Fakturze Zakupu dla kontrahenta o statusie Pozaunijny/ Pozaunijny (zwroty VAT), automatycznie jest dodawana procedura IMP. Jeśli na dokumencie znajdują się tylko pozycje o typie Usługa (bez pozycji o typie Towar), przy próbie zapisu pojawi się komunikat: Zapisujesz dokument z kodem IMP. Kod ten powinien być stosowany do importu towarów. Na dokumencie nie ma pozycji z rodzajem towar. Czy chcesz, aby program usunął kod IMP? Zaakceptowanie komunikatu powoduje usunięcie z dokumentu kodu IMP. Wybór opcji Nie skutkuje pozostawieniem kodu IMP na dokumencie. Zaznaczenie w oknie komunikatu opcji Zapamiętaj odpowiedź i nie pokazuj więcej powoduje, że komunikat nie pojawi się ponownie dla danego operatora. Dowody wewnętrzne
  • Procedura WEW dodawana jest automatycznie na dokument Dowodu Wewnętrznego Sprzedaży (FWS) tworzony z poziomu menu Handel/ Inne (Handel)/ Dowody wewnętrzne Sprzedaży. Nie jest dodawana na FWS powstałą z przekształcenia Faktury Zakupu (FZ).
  • Na Dowód Wewnętrzny Sprzedaży powstały z przekształcenia Faktury Zakupu nie są przenoszone kody JPK_V7 z FZ. Kody z FZ są przenoszone tylko na Dowód Wewnętrzny Zakupu.
  Zasady przenoszenia procedur pomiędzy dokumentami handlowymi
  • Na korektę przenoszone są wszystkie kody i procedury z korygowanego dokumentu. Po usunięciu pozycji z korekty, nie jest usuwany powiązany z nią kod. Do czasu zapisania korekty na stałe, Użytkownik może modyfikować tabelę z kodami JPK_V7. Wyjątkiem jest korekta do Faktury Sprzedaży, na którą nie jest przenoszony kod FP.
  • Na Fakturę Sprzedaży powstałą z Paragonu, przenoszone są procedury JPK_V7 z Paragonu. Na Faktury Sprzedaży tworzone za pomocą funkcji Generuj Fakturę na wybrane pozycje, kody JPK_V7 nie są przenoszone z PA (są pobierane ponownie z karty kontrahenta i z pozycji cennikowych, które widnieją na FS).
  • Na skopiowane dokumenty przenoszone są wszystkie kody z kopiowanego dokumentu.

3.2.5. Dokumenty w rejestrze VAT

Na formularzu dokumentu w rejestrze VAT na zakładce [JPK] znajduje się sekcja Kody JPK_V7, w której wyświetlane są:
  • na dokumencie sprzedażowym:
    • kody towarowe,
    • procedury,
    • typy dokumentów.
  • na dokumencie zakupowym:
    • procedury,
    • typy dokumentów,
    • znacznik techniczny.
Mogą one zostać:
  • dodane ręcznie bezpośrednio na formularzu dokumentu w rejestrze VAT,
  • przeniesione z karty kontrahenta,
  • przeniesione z kategorii,
  • przeniesione z modułu Handel,
  • dodane automatycznie na podstawie danych z karty kontrahenta, danych z modułu Handel lub parametrów zaznaczonych bezpośrednio na formularzu dokumentu w rejestrze VAT.
Na dokumentach w rejestrze VAT zakupu istnieje możliwość dodania procedur, typów dokumentów dotyczących zakupu oraz znacznika technicznego ZakupVAT_Marza. Na dokumentach w rejestrze VAT sprzedaży istnieje możliwość dodania procedur i typów dokumentów dotyczących sprzedaży oraz dowolnych kodów towarowych. Na dokumencie można dodać tylko jeden taki sam kod towarowy/ procedurę/ typ dokumentu danego rodzaju. Przykładowo, nie ma możliwości dodania dwóch pozycji o kodzie GTU_02 na jednym dokumencie. Nie można dodać więcej niż jednego kodu JPK_V7 określającego typ dokumentu. Podczas próby dodania na dokumencie w rejestrze VAT zakupu/ sprzedaży więcej niż jednego kodu dotyczącego typu dokumentu pojawia się komunikat: Zaznaczono zbyt wiele kodów dla typów dokumentów. Wybierz jeden kod opisujący typ dokumentu. Jeżeli na dokumencie dodano we wcześniejszej wersji programu jeden lub więcej typów dokumentu to po dodaniu kolejnego typu dokumentu wcześniejsze typy są usuwane i pozostaje tylko jeden typ dokumentu. Jeżeli w wyniku modyfikacji dokumentu dodany zostanie automatycznie typ dokumentu to dodane wcześniej typy dokumentu są również usuwane. Jeżeli na dokumencie z kodem RO dodatkowo wybrane są kody JPK określające procedury dla sprzedaży, są one przenoszone do części ewidencyjnej pliku JPK_V7. Kody towarowe (GTU) wybrane na dokumencie z kodem RO nie są przenoszone do pliku.
Uwaga

W przypadku plików JPK_V7 generowanych za okresy od lipca 2021 do grudnia 2021 nastąpiły zmiany w przenoszeniu kodów.

Kod MPP nie jest już przenoszony do pliku, nawet jeżeli znajduje się na dokumencie w Rejestrze VAT.

Kod SW nie jest już przenoszony do pliku; jeżeli znajduje się na dokumencie w Rejestrze VAT, w pliku JPK_V7 zostanie zamieniony na kod EE.

Kody GTU wskazane na dokumencie nie są przenoszone do pliku JPK_V7 jeżeli na dokumencie wybrany jest również kod WEW.

Jeżeli na dokumencie z kodem RO dodatkowo wybrane są kody JPK określające procedury dla sprzedaży, nie są one przenoszone do części ewidencyjnej pliku JPK_V7.

W przypadku plików JPK_V7(2) generowanych za okresy od stycznia 2022 kod EE nie jest już przenoszony do pliku, nawet jeżeli znajduje się na dokumencie w Rejestrze VAT. Jeżeli na dokumentach z okresem rozliczenia w VAT od stycznia 2022 będą znajdowały się kody WSTO_EE i IED, zostaną przeniesione do pliku JPK_V7(2). Kody JPK znajdujące się na kontrahencie, kategorii lub pozycji cennika są przenoszone na dokument bez względu na jego datę. Również w przypadku importu dokumentów z plików JPK_V7, VAT_R (Comma) oraz za pomocą pracy rozproszonej, przenoszone są wszystkie kody JPK znajdujące się w pliku dla importowanego dokumentu bez względu na jego datę.
Jeżeli w bazie istnieją już dokumenty zawierające jednocześnie więcej niż jeden kod dotyczący typu dokumentu, podczas przeliczania pliku JPK_V7 pojawia się komunikat uniemożliwiający utworzenie pliku: Plik JPK_V7 nie może być naliczony. Istnieją transakcje zawierające więcej niż jeden typ dokumentu na zakładce Kody JPK_V7. Po zatwierdzeniu komunikatu pojawia się Lista dokumentów z więcej niż jednym typem dokumentu JPK_V7. Użytkownik powinien na każdym z tych dokumentów pozostawić tylko jeden kod dotyczący typu dokumentu. Na formularz dokumentu w rejestrze VAT na zakładkę [JPK] do sekcji Kody JPK_V7 automatycznie przenoszone są kody JPK_V7 uzupełnione na formularzu kategorii wybranej w nagłówku dokumentu oraz w pozycjach dokumentu (w kolumnie Kategoria oraz Kategoria 2). Jeżeli na dokumencie dodano wcześniej dany kod JPK_V7,  nie jest on dublowany. Po wyborze kontrahenta na dokumencie, do sekcji Kody JPK_V7 automatycznie przenoszone są kody towarowe, procedury oraz znacznik techniczny ZakupVAT_Marza, uzupełnione na karcie tego kontrahenta na zakładce [JPK]. Jeżeli na formularzu kontrahenta uzupełniono kody JPK_V7 oraz wskazano domyślną kategorię sprzedaży/ zakupu z uzupełnionymi kodami JPK_V7 to po wyborze takiego kontrahenta na dokumencie w rejestrze VAT przenoszone są kody JPK_V7 z karty kontrahenta i formularza kategorii (kody nie są dublowane). Na dokumenty w rejestrze VAT zakupu przenoszone są tylko procedury dotyczące zakupu. Na dokumenty w rejestrze VAT sprzedaży przenoszone są tylko procedury dotyczące sprzedaży. Zmiana kontrahenta lub kategorii na dokumencie powoduje usunięcie kodów towarowych/ procedur przypisanych do kontrahenta/kategorii wybranej pierwotnie na dokumencie i przeniesienie kodów towarowych/ procedur z karty nowo wybranego kontrahenta czy kategorii. W przypadku zmiany kategorii, usuwane są tylko te kody, które nie są przypisane do innych kategorii wybranych na dokumencie. Pozycje dodane ręcznie w sekcji Kody JPK_V7 nie są usuwane przy zmianie kontrahenta lub kategorii. Możliwe jest seryjne dodawanie oraz usuwanie kodów JPK_V7 dla wielu dokumentów jednocześnie. Po wybraniu na liście dokumentów w Rejestrze VAT w menu Operacje seryjne/ JPK opcji Dodaj kody JPK_V7 otwierane jest okno: W przypadku dokumentów w rejestrze VAT zakupu wyświetlana jest lista procedur i typów dokumentów dotyczących zakupu oraz znacznik techniczny ZakupVAT_Marza. W przypadku dokumentów w rejestrze VAT sprzedaży wyświetlana jest lista procedur i typów dokumentów dotyczących sprzedaży oraz wszystkie kody towarowe. Widoczność poszczególnych kodów uzależniona jest od daty bieżącej ustawionej w programie. Istnieje możliwość zaznaczenia więcej niż jednego kodu JPK_V7, z wyjątkiem kodów dotyczącego typu dokumentu (taki kod można wskazać tylko jeden). Jeżeli podczas wykonywania operacji seryjnej Dodaj kody JPK_V7 wskazano kod dotyczący typu dokumentu, to wybrany wcześniej na dokumencie typ dokumentu jest usuwany i pozostaje tylko jeden kod określający typ dokumentu. Po zaznaczeniu wybranych kodów i kliknięciu na przycisk Dodaj kody JPK_V7 zostaną one przeniesione na podświetlony dokument/zaznaczone dokumenty. Analogicznie po wybraniu Operacje seryjne/ JPK/ Usuń kody JPK_V7 otwierane jest okno: Po zaznaczeniu wybranych kodów i kliknięciu na przycisk Usuń kody JPK_V7 zostaną one usunięte z podświetlonego dokumentu/zaznaczonych dokumentów. Istnieje możliwość dodania/ usunięcia kodów JPK_V7 (zarówno z poziomu formularza dokumentu, jak i seryjnie z poziomu listy) na zaksięgowanym dokumencie. W przypadku dokumentów wyeksportowanych dodanie/ usunięcie kodu JPK_V7 jest możliwe jeżeli na karcie operatora zaznaczono parametr Zmiana dokumentów wyeksportowanych. Przenoszenie dokumentów z modułu Handel Podczas przenoszenia faktur sprzedażowych i zakupowych z modułu Handel wszystkie zapisane na nich kody towarowe, procedury i typ dokumentów przenoszone są na formularz dokumentu w rejestrze VAT, gdzie podlegają edycji. Podczas przenoszenia paragonów (zbiorczo lub pojedynczo) na formularz dokumentu w rejestrze VAT sprzedaży przenoszone są procedury i typy dokumentów uzupełnione na paragonie w module Handel. Nie są natomiast przenoszone kody towarowe. Podczas zbiorczego przenoszenia paragonów na dokument w rejestrze VAT przenoszone są wszystkie procedury i typy dokumentów wybrane na zaznaczonych paragonach. Faktury fiskalne Faktury fiskalne nie mające powiązania z Paragonem posiadają oznaczenie FP. Aby zostały uwzględnione również w raporcie fiskalnym, podczas przenoszenia faktury fiskalnej z modułu Handel do Rejestru VAT lub importu za pomocą pracy rozproszonej tworzony jest dokument techniczny z takimi samymi danymi, ale z opisem Zapis techniczny do rozliczenia JPK_V7 i kodem RO. Dokument ten służy do wyliczenia kwot na części deklaracyjnej pliku. Dokumentu technicznego nie można zaksięgować i nie generuje on płatności.
Uwaga
Użytkownicy ewidencjonujący zafiskalizowane Faktury Sprzedaży z pominięciem modułu Handel powinni od 1 października 2020 r. do rejestru VAT sprzedaży wprowadzać dwa dokumenty, odpowiednio z typem dokumentu FP oraz RO, jeśli nie jest on uwzględniany we wprowadzonym do Rejestru VAT raporcie fiskalnym. Zalecamy na jednym z nich zaznaczyć parametr Wewnętrzny aby nie wygenerował on płatności.
Faktura fiskalna z kodem FP uwzględniana jest wyłącznie w części ewidencyjnej pliku JPK_V7. Dokumenty z kodem FP nie są również wyświetlane w rejestrze VAT na zakładce Do VAT/JPK_V7.
Uwaga
Na dokumentach które zostały już we wcześniejszych wersjach programu przeniesione do Rejestru VAT należy zmienić kod z RO na FP oraz dodać ręcznie, zbiorczy zapis z kodem RO na łączną kwotę przeniesionych dokumentów. Innym rozwiązaniem jest usunięcie dokumentów z Rejestru VAT, usunięcie kodu RO i dodanie kodu FP na zafiskalizowanych fakturach w module Handel (można to wykonać za pomocą operacji seryjnej) a następnie ponowne przeniesienie dokumentów do Rejestru VAT.
Po dodaniu na dokumencie kodu FP (bezpośrednio na dokumencie lub za pomocą operacji seryjnej) lub po przeniesieniu z menu Handel faktury zafiskalizowanej z kodem FP, na dokumencie data rozliczenia w VAT ustawiana jest zgodnie z datą wystawienia. Dotyczy to również sytuacji, kiedy w Konfiguracji ustawiono metodę kasową lub na dokumencie zaznaczono parametr Metoda kasowa. Faktury do paragonów Faktury wystawione do paragonów z kodem FP są widoczne w części ewidencyjnej pliku JPK_V7 ale nie są uwzględniane w podsumowaniu podatku należnego. Nie są również uwzględniane przy liczeniu części deklaracyjnej. Uwzględniane są w pliku JPK_V7 za miesiąc zgodny z datą ich wystawienia. W związku z koniecznością wykazywania w odpowiedni sposób faktur do paragonów w pliku JPK_V7, w przypadku ręcznego dodawania dokumentów do Rejestrów VAT bądź importu z pliku VAT_R.txt, oprócz faktur do paragonów z kodem FP musi zostać dodany przez Użytkownika również zapis na łączną kwotę tych dokumentów z kodem RO. Płatność do takiego dokumentu najlepiej ustawić jako niepodlegającą rozliczeniu. Dokument z kodem RO można również oznaczyć jako wewnętrzny – wówczas nie wygeneruje on płatności. W przypadku przenoszenia dokumentów w ramach tej samej bazy z modułu Handel do Rejestru VAT lub importu za pomocą pracy rozproszonej, oprócz faktur do paragonów z kodem FP przenoszone są również paragony z kodem RO. Nie ma więc konieczności w takim przypadku dodawania pojedynczych paragonów lub zbiorczego raportu fiskalnego ręcznie przez Użytkownika. Zbiorcze raporty fiskalne Jeżeli paragony były dodawane w module Handel i przenoszone w ramach jednej bazy zbiorczo do Rejestrów VAT (w Konfiguracji Firmy/ Księgowość/ Parametry nie był zaznaczony parametr Przenoszenie pojedynczych paragonów do rejestru VAT), wówczas w pliku JPK_V7 każdy z takich zbiorczych dokumentów z kodem RO znajdujący się w Rejestrze VAT wykazywany jest jako osobna pozycja. Jeżeli natomiast podczas przenoszenia paragonów z modułu Handel do Rejestrów VAT wspomniany parametr o pojedynczym przenoszeniu paragonów był zaznaczony bądź dokumenty do Rejestrów VAT dodawane były ręcznie, importowane pracą rozproszoną lub z pliku VAT_R, lub jest to dokument techniczny do faktury fiskalnej, to w pliku JPK_V7 wykazywane są jako jedna sumaryczna pozycja oznaczona numerem dokumentu: Detal – dokument zbiorczy sprzedaży oraz z kontrahentem: Raport okresowy sprzedaży zafiskalizowanej. Paragony niefiskalne Paragony wystawione przez podatników zwolnionych z obowiązku posiadania kas fiskalnych powinny być wykazywane w pliku JPK_V7 z kodem WEW (zamiast RO jak w przypadku paragonów fiskalnych). Jeżeli paragony przenoszone są z modułu Handel do rejestrów VAT, należy zmienić na nich domyślnie dodawany kod RO na WEW. Można posłużyć się operacjami seryjnymi dostępnymi w rejestrach VAT (Dodaj kody JPK_V7). Po wybraniu kodu WEW, kod RO zostanie usunięty z dokumentów. Jeżeli paragony były przenoszone pojedynczo do rejestrów VAT, po zmianie kodu wykazywane są w pliku JPK_V7 jako jeden zapis zbiorczy z kodem WEW dla kontrahenta o nazwie Raport okresowy sprzedaży detalicznej oraz numerze dokumentu: Detal – dokument zbiorczy sprzedaży. Dokumenty wprowadzane ręcznie do rejestrów VAT powinny zostać wprowadzone jednym zbiorczym zapisem z kodem WEW, ponieważ nie będą agregowane w części ewidencyjnej pliku. Dokumenty VAT marża W celu poprawnego wykazywania dokumentów VAT marża, faktura sprzedaży w tej procedurze musi mieć uzupełniony kod MR_UZ lub MR_T. Kwoty w stawce NP z takich dokumentów wykazywane są w tagu SprzedazVAT_Marza w pliku JPK_V7 – bez względu na to, czy z takim dokumentem zwykłym istnieje powiązany dowód wewnętrzny sprzedaży rozliczenia marży. Rozliczenie marży jednostkowej, czyli wygenerowany w programie powiązany dowód wewnętrzny nie powinien mieć oznaczenia WEW. Jeśli natomiast wprowadzane jest zbiorcze rozliczenie marży jako zbiorczy dowód wewnętrzny, wówczas taki dokument powinien już posiadać kod WEW. Dokument rozliczenia marży na kwotę ujemną z kodem MR_UZ lub MR_T (dowód wewnętrzny mający zerową kwotę VAT i ujemną kwotę brutto w stawce opodatkowanej) nie jest  uwzględniany przy liczeniu części deklaracyjnej. Wykazywany jest wyłącznie w części ewidencyjnej. W przypadku dokumentu rozliczenia marży, jeżeli podczas generowania tego dokumentu podana zostanie ujemna kwota marży, zamiast domyślnie podpowiadanej dodatniej (czyli na dokumencie rozliczenia marży będzie dodatnia kwota w stawce NP) oraz:
  • suma wartości netto i VAT na dokumencie rozliczenia będzie równa 0,
  • dokument źródłowy będzie miał dodatnią kwotę w stawce NP,
  wówczas taki dokument oznaczany jest na potrzeby pliku JPK_V7 jako marża ujemna. Dokument taki nie jest wykazywany w części deklaracyjnej pliku JPK_V7 (wyłącznie w części ewidencyjnej) i nie pojawia się w Rejestrze VAT na zakładce [Do VAT/JPK_V7]. Każdy inny dokument dodany ręcznie, który nie będzie rozliczeniem marży, nawet jeżeli będzie posiadał pozycje w stawce NP i ujemną pozycję z zerową kwotą VAT, będzie traktowany jako korekta dokumentu pierwotnego, a nie rozliczenie marzy ujemnej. Dokument zakupu związanego ze sprzedażą opodatkowaną na zasadach marży powinien zostać wprowadzony do Rejestru VAT zakupu ze znacznikiem technicznym ZakupVAT_Marza. Powinien mieć zaznaczony parametr Rozliczać w VAT i  wskazany odpowiedni okres, jak również pozycję ze stawką NP z uzupełnioną kwotą brutto dotyczącą zakupu w tej procedurze. Wówczas w pliku JPK_V7 taki dokument wykazywany jest w części ewidencyjnej po stronie zakupu. Znajdują się na nim dane kontrahenta z dokumentu, wraz z jego numerem NIP, numer dokumentu oraz kwota brutto oznaczona jako ZakupVAT_Marza. Taki dokument nie jest uwzględniany przy wyliczaniu kwot na części deklaracyjnej pliku JPK_V7. W przypadku metody kasowej nie ma znaczenia fakt rozliczenia wprowadzonego w Rejestrze VAT zakupu dokumentu ze znacznikiem ZakupVAT_Marza. Jeżeli parametr Rozliczać w VAT jest zaznaczony, dokument taki jest wykazywany w pliku JPK_V7 wg domyślnej daty obowiązku podatkowego jak przy metodzie zwykłej. Odwrotne obciążenie Dokumenty zwykłe z rejestru sprzedaży VAT z rodzajem transakcji Krajowa – podatnikiem jest nabywca ze stawką NP wykazywane są w części deklaracyjnej pliku JPK_V7 w polu P_10 (Sprzedaż krajowa zwolniona od podatku) oraz w polu K_10 części ewidencyjnej. Kwalifikacja ta jest niezależna od zaznaczenia parametru Uwzględniać sprzedaż nie podlegającą VAT na VAT-7 w Konfiguracji Programu/ Księgowość/ Deklaracje. Jeżeli chodzi o transakcje zakupu objęte odwrotnym obciążeniem, dowody wewnętrzne sprzedaży z rodzajem transakcji Krajowa – podatnikiem jest nabywca wykazywane są w części deklaracyjnej pliku w polach P_31 (wartość netto) oraz P_32 (wartość VAT), jak również w części ewidencyjnej, odpowiednio w polach K_31 oraz K_32. W zakresie podatku naliczonego stosowane są ogólne zasady prezentowania odliczenia (dowody wewnętrzne zakupu wykazywane są w polach P_40 – P_43 w części deklaracyjnej pliku, jak również w części ewidencyjnej). Sprzedaż energii i gazu objętych odwrotnym obciążeniem Istnieje możliwość wykazania w pliku JPK_V7 sprzedaży i nabycia energii elektrycznej oraz gazu objętych odwrotnym obciążeniem VAT. W tym celu na dokumencie w rejestrze sprzedaży VAT na zakładce [KSeF/ JPK] w sekcji Atrybuty JPK_VAT i JPK_V7 należy wybrać atrybut JPK o kodzie SPRZ_ENERGIA_GAZ_OO i nazwie JPK_Sprz. i nabycie energii, podleg. oo. Po wybraniu tego atrybutu, kwota netto i VAT z dokumentu jest wykazywana w części deklaracyjnej pliku w polach P_31 oraz P_32 (Dostawa towarów, dla których podatnikiem jest nabywca zgodnie z art. 17 ust. 1 pkt 5 ustawy) oraz w części ewidencyjnej w polach K_31 oraz K_32. Dowody wewnętrzne Dowody wewnętrzne, wprowadzone od wersji Comarch ERP Optima 2021.4.1, w pliku JPK_V7 w polu DowodZakupu / DowodSprzedazy są wykazywane z numerem własnym z dowodu wewnętrznego. Podczas generowania pojedynczych dowodów wewnętrznych w Rejestrze VAT program domyślnie proponuje jako numery dowodów wewnętrznych numer dokumentu pierwotnego. W przypadku transakcji importu Użytkownik powinien wpisać numer dokumentu celnego. Podczas zmiany proponowanego numeru dokumentu pojawia się informacja: Uwaga! Do pliku JPK_V7 utworzone dowody wewnętrzne zostaną przeniesione z numerem dokumentu wskazanym w tym polu. Nie będą pobierane numery dokumentów źródłowych. Wyjątkiem są dowody wewnętrzne przeniesione z modułu Handel i zbiorcze dowody wewnętrzne tworzone w Rejestrach VAT, które przenoszone są do pliku z numerem dokumentu źródłowego. Automatyczne dodawanie kodów JPK_V7 Dowody wewnętrzne Pojedyncze dowody wewnętrzne wygenerowane automatycznie w programie, mające powiązanie z dokumentem z Rejestru VAT zakupu/sprzedaży, nie są oznaczane kodem WEW. Podczas generowania z poziomu Rejestru VAT sprzedaży zbiorczego dowodu wewnętrznego zakupu dla transakcji krajowych, w przypadku uzupełnienia na przynajmniej jednym z dowodów wewnętrznych sprzedaży typu dokumentu WEW, na dowód wewnętrzny zakupu dodawany jest typ dokumentu WEW. W przypadku ręcznie dodawanych dowdów wewnętrznych, niepowiązanych z dokumentem z Rejestru VAT zakupu/sprzedaży, automatycznie dodawany jest typ dokumentu o kodzie WEW. Usunięcie kodu WEW nie powoduje odznaczenia parametru Wwewnętrzny. Na dowód dodawany ręcznie przenoszone są kody towarowe/ procedury/ znacznik techniczny uzupełnione na karcie kontrahenta oraz na formularzu kategorii. Na dowód generowany automatycznie przenoszone są procedury uzupełnione na dokumencie pierwotnym, jeżeli mają zastosowanie dla określonego typu dokumentu sprzedaży/zakupu. Sprzedaż detaliczna Po zaznaczeniu na dokumencie w rejestrze VAT sprzedaży parametru Sprzedaż detaliczna automatycznie dodawany jest typ dokumentu o kodzie RO. Usunięcie kodu RO nie powoduje odznaczenia parametru Sprzedaż detaliczna. Dokument dla kontrahenta powiązanego – sprzedaż Po wyborze na dokumencie w rejestrze VAT sprzedaży kontrahenta na kartotece którego zaznaczono parametr Kontrahent powiązany automatycznie dodawana jest procedura o kodzie TP. Metoda kasowa – zakup Po wyborze na dokumencie w rejestrze VAT zakupu podmiotu na kartotece którego dla parametru Metoda kasowa zaznaczona opcję Zakup lub o zaznaczeniu na dokumencie parametru Metoda kasowa automatycznie dodawany jest typ dokumentu o kodzie MK. Usunięcie kodu MK nie powoduje odznaczenia parametru Metoda kasowa. Jeżeli na dokumencie zaznaczono parametr Metoda kasowa to jest on kwalifikowany do JPK_V7 w miesiącu z daty rozliczenia lub wystawienia (w zależności, która z dat jest późniejsza). Dokument zakupu – Rolnik Po wyborze na dokumencie w rejestrze VAT zakupu podmiotu na kartotece którego zaznaczono parametr Rolnik lub po zaznaczeniu na dokumencie parametru Rolnik automatycznie dodawany jest typ dokumentu o kodzie VAT_RR. W przypadku faktur VAT RR, numer NIP bądź PESEL dostawcy powinien znajdować się w polu NIP na dokumencie w rejestrze VAT zakupu. Dokument zakupu – Import Po wyborze na dokumencie w rejestrze VAT zakupu rodzaju transakcji Import automatycznie dodawana jest procedura o kodzie IMP. Usunięcie kodu IMP nie powoduje zmiany rodzaju transakcji. Jeżeli na dokumencie są wyłącznie pozycje z rodzajem Usługi (brak jest pozycji z rodzajem Towary), wówczas przy zapisie dokumentu pojawia się informacja: Zapisujesz dokument z kodem IMP. Kod ten powinien być stosowany do importu towarów. Na dokumencie nie ma pozycji z rodzajem towar. Czy chcesz aby program usunął kod IMP? Wybór opcji Tak powoduje usunięcie kodu IMP i zapisanie dokumentu. Wybór opcji Nie powoduje zapisanie dokumentu i pozostawienie kodu IMP MPP – podzielona płatność Na dokumentach z datą rozliczenia w VAT od lipca 2021 r. nie jest automatycznie dodawana procedura MPP. Jeżeli na dokumencie z kodem MPP zmieniono datę rozliczenia w VAT na późniejszą niż czerwiec 2021 r. wówczas kod MPP jest usuwany z dokumentu po jego zapisaniu. Jeżeli na dokumencie zmieniono datę rozliczenia w VAT na wcześniejszą niż lipiec 2021 r. wówczas kod MPP jest dodawany na dokument po jego zapisaniu jeżeli na dokumencie zaznaczony jest parametr MPP – Podzielona płatność i kwota dokumentu przekracza 15 tys. zł brutto. Jeżeli kod MPP znajduje się w pliku z którego następuje import do programu to jest on przenoszony na dokument niezależnie od daty rozliczenia w VAT, natomiast w przypadku dokumentu z datą rozliczenia w VAT od lipca 2021 r. kod MPP nie jest przenoszony do pliku JPK_V7. W przypadku metody kasowej kod MPP nie jest dodawany na dokument z datą wpływu (w przypadku rejestru VAT zakupu)/ datą sprzedaży (w przypadku rejestru VAT sprzedaży) od lipca 2021 r. Jeśli kod MPP dodano na dokument z datą wcześniejszą niż lipiec 2021 r., a rozliczenie dokumentu następuje z datą późniejszą niż czerwiec 2021 r. wówczas kod MPP pozostaje na dokumencie, nie jest natomiast przenoszony do pliku JPK_V7.
Uwaga
Procedury o kodach SW, EE, WSTO_EE, IEDTT_WNT, TT_D, I_42, I_63, B_SPV, B_SPV_DOSTAWA i B_MPV_PROWIZJA oraz znacznik technicznyZakupVAT_Marza nie są automatycznie dodawane na dokumencie. Mogą zostać one przeniesione na dokument w rejestrze VAT z karty kontrahenta, z modułu Handel, z kategorii lub dodane ręcznie przez użytkownika.
Uwaga
W przypadku gdy Użytkownik nie korzysta z dostępnego w programie załącznika VAT-ZD lub istnieje potrzeba uwzględnienia dokumentu korygującego ulgę za złe długi z pominięciem VAT-ZD od strony zakupu, wówczas możliwe jest (analogicznie jak w przypadku plików JPK_VAT) skorzystanie z możliwości dodania dokumentów technicznych w rejestrze VAT zakupu i ustawienia na nich atrybutów odpowiednio VAT-ZD ZAKUP NIEZAPŁ i VAT-ZD ZAKUP ZAPŁAC.
W celu ułatwienia weryfikacji jakie kody JPK wybrane zostały na dokumentach w Rejestrze VAT, dostępna jest kolumna Kody JPKV7. W kolumnie tej wyświetlane są kody JPK_V7 wybrane na formularzu dokumentu na zakładce [JPK] w sekcji Kody JPK_V7. Informacje o wybranych na dokumentach (zarówno w Rejestrze VAT jak i w module Handel) kodach JPK_V7 przenoszone są za pomocą pracy rozproszonej.

4. Przygotowanie i eksport plików JPK_V7

4.1. Lista plików JPK_V7

Po kliknięciu w menu JPK pozycji Pliki JPK_V7  otwierane jest okno Pliki JPK_V7 z ulgą na złe długi. Okno to może zostać również wywołane z poziomu menu Rejestry VAT, gdzie również występuje pozycja Pliki JPK_V7. Okno posiada 2 zakładki:
  • JPK_V7,
  • Ulga na złe długi (VAT-ZD).

4.1.1. Zakładka JPK_V7

Na pierwszej zakładce widoczna jest lista utworzonych w programie plików JPK_V7:

Na liście dostępne są następujące informacje w formie kolumn:
  • Miesiąc i Rok którego utworzony plik dotyczy,
  • Korekta (jeżeli plik jest korektą widoczna jest wartość 1),
  • Data obliczenia,
  • Kwota podatku podlegającego wpłacie,
  • Status (w przypadku części deklaracyjnej kolumna przyjmuje wartość obliczona bądź zamknięta, jeżeli plik nie zawiera części deklaracyjnej a wyłącznie ewidencyjną – zawsze ma status zamknięta; w przypadku plików które zostały scalone, w kolumnie wyświetlana jest wartość scalona ),
  • e-Portal (Nie wysłano, Wysłano/nie odebrano UPO, Wysłano/odebrano UPO, Błąd przetwarzania),
  • Zawartość (informacja czy plik zawiera część deklaracyjną i ewidencyjną czy tylko jedną z nich),
  • Scalony (informacja czy plik został scalony),
  • Operator który wysłał plik,
  • Nazwa pliku,
  • Data wysłania – kolumna domyślnie ukryta,
  • PRED (informacja czy dodano predekretację) – kolumna domyślnie ukryta.
  • Typ pliku (informacja czy jest to plik JPK_V7M miesięczny czy JPK_V7K kwartalny oraz czy jest to plik obowiązkowy czy na żądanie) – kolumna domyślnie ukryta,
  • Wersja części deklaracyjnej – kolumna domyślnie ukryta,
Dostępna jest również kolumna służąca do zaznaczania wybranych pozycji na liście. Na dole okna dostępny jest parametr Rok służący do filtrowania listy plików JPK_V7 oraz parametr Pokazuj scalone, po którego zaznaczeniu wyświetlane są również pliki które zostały scalone. Ikona Zmień umożliwia podgląd utworzonego wcześniej pliku (części deklaracyjnej). Po rozwinięciu ikony za pomocą znajdującej się obok niej strzałki możliwe jest podejrzenie Urzędowego Poświadczenia Odbioru: Ikona Usuń  służy do skasowania podświetlonego bądź zaznaczonych plików JPK_V7. Nie można usuwać plików, które uległy scaleniu, plików zatwierdzonych zawierających część deklaracyjną oraz wysłanych do Ministerstwa Finansów. Kliknięcie ikony Zamknij okno  powoduje zamknięcie okna Pliki JPK_V7 z ulgą na złe długi. Pliki JPK_V7 zawierające część deklaracyjną wyświetlane są na liście w kolorze zielonym jeżeli są w buforze (niezatwierdzone), natomiast zatwierdzone pliki wyświetlane są w kolorze czarnym. Pliki zawierające wyłącznie część ewidencyjną wyświetlane są po ich dodaniu w kolorze czarnym (nie podlegają one zatwierdzaniu). Jeżeli do pliku utworzona została korekta lub istnieje później dodany plik za ten sam okres, jest on wyświetlany na liście w kolorze szarym. W menu kontekstowym po kliknięciu prawym przyciskiem myszy na pliku dostępne są opcje Odblokuj JPK_V7 oraz Eksportuj dane w formacie JPK_V7, które zostały opisane w kolejnych punktach biuletynu.

4.1.2. Zakładka Ulga na złe długi (VAT-ZD)

Na drugiej zakładce widoczna jest lista utworzonych w programie zawiadomień VAT-ZD: Jest to analogiczna lista jak ta dotycząca załączników VAT-ZD dla deklaracji VAT-7, nie zawiera tylko kolumn e-Deklaracje i Data wysłania. Również same załączniki VAT-ZD generowane za październik 2020 i okresy późniejsze nie zawierają już zakładki [e-Deklaracje]. Wzorzec dokumentu elektronicznego dla plików JPK_V7 nie przewiduje wysyłania  załącznika VAT-ZD. Jednakże załączniki te nadal są potrzebne w celu utworzenia zapisów korekcyjnych do niezapłaconych faktur, które to powinny w pliku JPK_V7 się znaleźć. Lista zawiera kolumny: Miesiąc, Rok, Korekta, Data obliczenia, Kwota oraz Status. Lista zawiera te same zawiadomienia VAT-ZD, które zostały dodane dla deklaracji VAT-7 (Rejestry VAT/ Deklaracje VAT-7/ zakładka VAT-ZD). Dodanie zawiadomienia na jednej z tych list powoduje wyświetlenie go również w drugim miejscu. Na liście możliwe jest dodanie załącznika VAT-ZD zarówno dla sprzedaży jak i dla zakupu. Na zawiadomieniu VAT-ZD o typie Sprzedaż istnieje możliwość wykazania dokumentów dla podmiotów nie będących podatnikami VAT czynnymi oraz dla osób fizycznych, po zaznaczeniu w sekcji Uwzględniaj dokumenty dla parametrów: podatników VAT nieczynnych i/lub osób fizycznych. Po wygenerowaniu zawiadomienia należy utworzyć do niego zapisy korekcyjne, które zostaną pobrane w momencie generowania pliku JPK_V7. Generowanie zapisów korekcyjnych należy wykonać przed dodaniem pliku JPK_V7 za ten okres lub jego  zatwierdzeniem (dotyczy plików zawierających część deklaracyjną). Po wykonaniu zapisu korekcyjnego należy przeliczyć plik JPK_V7 lub sporządzić jego korektę. Na generowane automatycznie zapisy korekcyjne dotyczące ulgi na złe długi (VAT-ZD) nie są przenoszone kody JPK_V7 uzupełnione na dokumencie pierwotnym. Jeżeli na dokumencie w rejestrze VAT wybrano kontrahenta o kodzie !NIEOKREŚLONY!, wówczas po uwzględnieniu dokumentu na zawiadomieniu VAT-ZD, na zapis korekcyjny przenoszone są dane kontrahenta uzupełnione na dokumencie pierwotnym. Nowy wzorzec dokumentu elektronicznego plików JPK_V7(2) obowiązujący od stycznia 2022 w części ewidencyjnej przewiduje dodatkowe informacje dla dokumentów sprzedażowych. Oprócz oznaczenia, że dokument jest korektą wynikającą z VAT-ZD (w polu KorektaPodstawyOpodt pojawia się wówczas wartość 1) dodane zostały dwa nowe pola: Termin płatności w przypadku korekt dokonanych zgodnie z art. 89a ust. 1 ustawy (pole TerminPlatnosci w pliku XML) – do tego pola przenoszony jest termin płatności dla każdej płatności do dokumentu wykazywanego jako korekta pierwotna (dokument w kolorze czarnym na zawiadomieniu VAT-ZD). Data zapłaty w przypadku korekt dokonanych zgodnie z art. 89a ust. 4 ustawy (pole DataZaplaty) – do tego pola przenoszona jest data dla każdej zapłaty (częściowej bądź całkowitej) dokonanej w tym okresie do dokumentu wykazywanego jako korekta zwrotna (dokument w kolorze zielonym na zawiadomieniu VAT-ZD). Od wersji programu 2023.5.1 na zapisy korekcyjne generowane z zawiadomienia VAT-ZD dla sprzedaży automatycznie dodawane są atrybuty JPK_V7: KOREKTA_ART.89A oraz TERMIN_PLATNOSCI lub DATA_ZAPLATY. Atrybuty te są dodawane również na istniejące już w bazie zapisy korekcyjne podczas konwersji bazy danych.
Uwaga
Jeżeli w danym miesiącu nastąpiło kilka płatności/zapłat do dokumentu i każda z nich ma zostać wykazana w części ewidencyjnej pliku JPK_V7 oddzielnie, należy zmodyfikować wygenerowany automatycznie zbiorczy zapis korekcyjny dla dokumentu i dodać ręcznie zapisy dla każdej płatności/zapłaty z odpowiednim terminem płatności/ datą zapłaty.
W przypadku podglądu pliku JPK_V7 w arkuszu MS Excel, na zakładce JPK_V7_SprzedazWiersz widoczne są kolumny: Korekta art.89a (może przyjmować wartość 1), jak również Termin płatności oraz Data zapłaty uzupełniane datami pobieranymi z pliku. W przypadku korekty pierwotnej dla wykazywanego w pliku dokumentu, uzupełnione są pola Korekta art.89a i Termin płatności, natomiast w przypadku korekty powrotnej – pola Korekta art.89a i Data zapłaty.
Uwaga
W przypadku gdy za określony miesiąc jest już wygenerowane zawiadomienie VAT-ZD i w tym miesiącu następują kolejne zapłaty do dokumentu wykazanego już na zawiadomieniu, wówczas należy usunąć zapisy korekcyjne do tego VAT-ZD, odblokować zawiadomienie i przeliczyć je ponownie. Nie należy w tym przypadku stosować korekt zawiadomienia VAT-ZD, ponieważ może to skutować wykazaniem zduplikowanych pozycji dotyczących zapłat dokumentu w części ewidencyjnej pliku JPK_V7. W przypadku, kiedy plik JPK_V7 wraz z zawiadomieniem VAT-ZD został już złożony i zachodzi potrzeba wykonania jego korekty w związku z uwzględnieniem kolejnej płatności do dokumentu, który już wcześniej wykazany został na zawiadomieniu VAT-ZD za ten sam miesiąc, należy postąpić następująco: 1. Dodać korektę pliku JPK_V7 za ten miesiąc pozostawiając ją w buforze. 2. Usunąć zapisy korekcyjne do zawiadomienia VAT-ZD wygenerowane w tym miesiącu. 3. Odblokować zawiadomienie VAT-ZD i przeliczyć je ponownie. 4. Zablokować VAT-ZD i wygenerować zapisy korekcyjne. 5. Przeliczyć korektę pliku JPK_V7, zablokować ją i wysłać do Urzędu Skarbowego.
Korekta podatku naliczonego i należnego z pominięciem załącznika VAT-ZD W przypadku gdy Użytkownik nie korzysta z dostępnego w programie załącznika VAT-ZD lub istnieje potrzeba uwzględnienia dokumentu korygującego ulgę za złe długi z pominięciem VAT-ZD od strony zakupu, wówczas możliwe jest (analogicznie jak w przypadku plików JPK_VAT) skorzystanie z możliwości dodania dokumentów technicznych w rejestrze VAT zakupu i ustawienia na nich atrybutów odpowiednio VAT-ZD ZAKUP NIEZAPŁ i VAT-ZD ZAKUP ZAPŁAC. W celu wykazania dokumentu w polu P_46 (Korekta podatku naliczonego, o której mowa w art. 89b ust. 1 ustawy) należy dodać w rejestrze zakupu dokument bez pozycji z danymi korygowanego dokumentu: np. numerem faktury oraz danymi kontrahenta i zaznaczoną odpowiednią datą Rozliczać w VAT. Na zakładce [KSeF/JPK] w sekcji Atrybuty JPK_VAT i JPK_V7 należy wybrać atrybut JPK_V7 o nazwie VAT-ZD ZAKUP NIEZAPŁ i uzupełnić odpowiednią wartością na minus. W celu wykazania dokumentu w polu P_47 (Korekta podatku naliczonego, o której mowa w art. 89b ust. 4 ustawy) należy dodać w rejestrze zakupu dokument bez pozycji z danymi korygowanego dokumentu: np. numerem faktury oraz danymi kontrahenta i zaznaczoną odpowiednią datą Rozliczać w VAT. Na zakładce [KSeF/JPK] w sekcji Atrybuty JPK_VAT i JPK_V7 należy wybrać atrybut JPK_V7 o nazwie VAT-ZD ZAKUP ZAPŁAC. i uzupełnić odpowiednią wartością na plus. W przypadku rejestru sprzedaży VAT – jeżeli zachodzi potrzeba wykazania korekty podstawy opodatkowania oraz podatku należnego, o której mowa w art. 89a ust. 1 i 4 Ustawy, a dokumentów sprzedażowych nie ma w programie (np. dotyczą okresu, kiedy księgowość była prowadzona w innym programie lub przez inne Biuro Rachunkowe), możliwe jest oznaczenie wprowadzonych do rejestru sprzedaży VAT dokumentów technicznych jako korekty pierwotnej lub korekty powrotnej z pominięciem załącznika VAT-ZD. Służą do tego atrybuty JPK_V7: KOREKTA_ART.89A, TERMIN_PLATNOSCI oraz DATA_ZAPLATY. Chcąc oznaczyć dokument w rejestrze sprzedaży VAT jako korektę, o której mowa w art. 89a ust. 1 Ustawy (zmniejszenie podstawy opodatkowania, korekta pierwotna), należy dodać na dokumencie na zakładce [KSeF/JPK] w sekcji Atrybuty JPK_VAT i JPK_V7 atrybut KOREKTA_ART.89A, wybierając wartość Tak oraz atrybut TERMIN_PLATNOSCI i uzupełnić na nim oczekiwaną datę. Na zakładce [Ogólne] dokumentu należy wprowadzić pozycję/pozycje z wartością ujemną w odpowiedniej stawce VAT. Parametr Rozliczać w VAT powinien wskazywać na okres zgodny ze sporządzanym plikiem JPK_V7. Dokument powinien mieć zaznaczony parametr Wewnętrzny aby nie wygenerował on płatności do rozliczenia w module Kasa/Bank. Po zaznaczeniu tego parametru należy na dokumencie z zakładki [KSeF/JPK] z sekcji Kody JPK_VAT usunąć kod WEW. Chcąc oznaczyć dokument w rejestrze sprzedaży VAT jako korektę o której mowa w art. 89a ust. 4 Ustawy (zwiększenie podstawy opodatkowania, korekta powrotna), należy dodać na dokumencie na zakładce [KSeF/JPK] w sekcji Atrybuty JPK_VAT i JPK_V7 atrybut KOREKTA_ART.89A, wybierając wartość Tak oraz atrybut DATA_ZAPLATY i uzupełnić na nim oczekiwaną datę. Na zakładce [Ogólne] dokumentu należy wprowadzić pozycję/pozycje z wartością dodatnią w odpowiedniej stawce VAT. Parametr Rozliczać w VAT powinien wskazywać na okres zgodny ze sporządzanym plikiem JPK_V7. Dokument powinien mieć zaznaczony parametr Wewnętrzny aby nie wygenerował on płatności do rozliczenia w module Kasa/Bank. Po zaznaczeniu tego parametru należy na dokumencie z zakładki [KSeF/JPK] z sekcji Kody JPK_VAT usunąć kod WEW. Oznaczenie w ten sposób dokumentów spowoduje odpowiednie ich wykazanie w części ewidencyjnej pliku JPK_V7. Jeżeli chodzi o pola P_68 oraz P_69 znajdujące się na części deklaracyjnej pliku, powinny one zostać uzupełnione przez Użytkownika samodzielnie.

4.2. Generowanie pliku JPK_V7

Po kliknięciu ikony Dodaj  otwierane jest okno Eksport plików JPK_V7: Na oknie tym należy wskazać czy plik JPK_V7 jest plikiem obowiązkowym (domyślna opcja) czy też składanym na żądanie Urzędu Skarbowego podczas kontroli. Możliwe jest dodanie za ten sam okres pliku obowiązkowego oraz na żądanie US. Należy również wskazać okres (rok i miesiąc) za który składany jest plik. Pierwszy plik JPK_V7 można utworzyć dopiero za miesiąc październik 2020. Przy próbie dodania pliku za okresy wcześniejsze pojawia się komunikat: Nie można utworzyć pliku JPK_V7. Za ten okres obowiązuje plik JPK_VAT. Jeżeli w Konfiguracji Firmy/ Księgowość/ Deklaracje i stawki podatkowe zaznaczony jest parametr Kwartalne rozliczenia VAT, w zależności od wyboru miesiąca będzie się generował nowy plik JPK_V7 albo tylko z częścią ewidencyjną (w przypadku wskazania dwóch pierwszych miesięcy kwartału) albo z częścią ewidencyjną za ostatni miesiąc kwartału i deklaracyjną za cały kwartał (w przypadku wskazania ostatniego miesiąca kwartału). Jeżeli wspomniany parametr nie jest zaznaczony (czyli obowiązuje miesięczny okres rozliczania podatku VAT), wygenerowany zostanie plik z częścią ewidencyjną i deklaracyjną za wskazany miesiąc. Na oknie należy wybrać Urząd Skarbowy (obowiązkowe pole do uzupełnienia).  W tym polu podpowiada się Urząd Skarbowy dla deklaracji VAT wskazany w Konfiguracji Firmy/ Dane firmy/ Deklaracje. Wskazany urząd powinien mieć na swojej karcie uzupełniony czterocyfrowy kod urzędu. Jeśli ten kod nie jest uzupełniony, wówczas wyświetlane jest ostrzeżenie: „Na karcie US nie uzupełniono kodu urzędu. Eksport plików JPK będzie możliwy po uzupełnieniu kodu urzędu na karcie US.” Kolejną uzupełnianą informacją jest współczynnik szacunkowy struktury sprzedaży. Wartość współczynnika podpowiada się na podstawie deklaracji za miesiąc poprzedni (jeśli była dodana w danym roku). W przypadku pliku za miesiąc styczeń, współczynnik wyliczany jest na podstawie zapisów z rejestru sprzedaży za poprzedni rok. Wówczas do wyliczenia wartości współczynnika brane są pod uwagę dokumenty, które na pozycji w kolumnie Uwz. w proporcji mają ustawione Uwzględniaj lub Tylko w mianowniku. Proporcja jest wyliczana jako iloraz, gdzie w liczniku znajduje się roczny obrót z tytułu czynności, w związku z którymi podatnik ma prawo do obniżenia podatku należnego, a w mianowniku całkowity roczny obrót podatnika (łącznie np. z subwencjami). W przypadku braku zapisów w rejestrze VAT za poprzedni rok, podpowiada się współczynnik w wartości 100%, natomiast Użytkownik może go ręcznie zmodyfikować zaznaczając parametr. Po zaznaczeniu parametru i wprowadzeniu wartości współczynnika, jest ona zapamiętywana dla kolejnych plików JPK_V7. Według wskazanego współczynnika szacunkowego struktury sprzedaży przeliczana jest część deklaracyjna, jak również zapisy części ewidencyjnej dotyczącej zakupów z odliczeniami warunkowymi. Wartość współczynnika szacunkowego struktury sprzedaży określana jest z dokładnością do 2 miejsc po przecinku. Umożliwia to obsługę prewspółczynnika przez jednostki budżetowe. Z poziomu części deklaracyjnej pliku JPK_V7 za styczeń lub pierwszy kwartał roku dostępne są wydruki Obliczenie korekty VAT dla zakupów 20XX prezentujące wyliczone przez program kwoty korekty podatku naliczonego wynikające ze zmiany wartości współczynnika szacunkowego struktury sprzedaży. Z wydruków mogą skorzystać firmy nie rozliczające VAT prewspółczynnikiem. U dołu okna znajduje się lista najczęściej zadawanych pytań dotyczących plików JPK_V7 wraz z odpowiedziami. Ikona Anuluj  powoduje zamknięcie okna Eksport plików JPK_V7 bez wygenerowania pliku. Po kliknięciu ikony Utwórz plik  następuje wygenerowanie pliku JPK_V7 za wskazany okres.

Jeżeli w bazie istnieją już dokumenty zawierające jednocześnie więcej niż jeden kod dotyczący typu dokumentu, podczas przeliczania pliku JPK_V7 pojawia się komunikat uniemożliwiający utworzenie pliku: Plik JPK_V7 nie może być naliczony. Istnieją transakcje zawierające więcej niż jeden typ dokumentu na zakładce Kody JPK_V7. Po zatwierdzeniu komunikatu pojawia się Lista dokumentów z więcej niż jednym typem dokumentu JPK_V7.

Dokumenty z więcej niż jednym kodem określającym typ dokumentu mogą występować jeżeli zostały dodane we wcześniejszej wersji programu niż 2021.0.1. Mogły również zostać zaimportowane z pliku VAT_R lub za pomocą pracy rozproszonej (w szczególności jeżeli pliki te pochodziły z programów innych producentów). Użytkownik powinien na każdym z wymienionych na liście dokumentów pozostawić tylko jeden kod dotyczący typu dokumentu.

Uwaga
Przed generowaniem pliku JPK_V7, jeżeli ma zostać uwzględniona ulga na złe długi, należy najpierw naliczyć zawiadomienie VAT-ZD, wygenerować zapisy korekcyjne i dopiero wówczas utworzyć plik JPK_V7.
W przypadku rozliczenia VAT miesięcznego i za trzeci miesiąc kwartału dla rozliczenia kwartalnego VAT otwierane jest okno z częścią deklaracyjną pliku:   W zależności od okresu za jaki sporządzany jest plik, otworzona zostanie część deklaracyjna JPK_V7 w wersji formularza 21 (pliki JPK_V7 za okresy do grudnia 2021) lub część deklaracyjna JPK_V7 w wersji 22 (pliki JPK_V7 za okresy od stycznia 2022). Okno to jest bardzo podobne do formularza dostępnej w programie deklaracji VAT-7. Okres za który sporządzany jest plik, jak również wartość szacunkowego współczynnika struktury sprzedaży pobierane są z okna Eksport plików JPK_V7 i na oknie z częścią deklaracyjną nie podlegają edycji. W poszczególnych polach uzupełnione będą automatycznie kwoty na podstawie zapisów w rejestrach VAT. Część pól umożliwia ręczną edycję wartości przez Użytkownika, pozwalając na wpisanie własnych danych. Na podstawie występujących na formularzu danych (wyliczonych automatycznie, jak i wpisanych ręcznie) do pliku JPK_V7 zostaną przeniesione wartości do odpowiednich pól odpowiadających tym z formularza deklaracji.
Uwaga
W przypadku kwartalnego rozliczania podatku VAT, pliki JPK_V7 za 2 pierwsze miesiące kwartału zawierają wyłącznie część ewidencyjną (bez części deklaracyjnej), natomiast plik za ostatni miesiąc kwartału zawiera zarówno część ewidencyjną, jak i deklaracyjną. Dla miesięcznego okresu rozliczania podatku VAT, pliki JPK_V7 zawierają obie części – deklaracyjną i ewidencyjną. W związku z tym w przypadku kwartalnej metody rozliczania podatku VAT, jeżeli plik generowany jest za dwa pierwsze miesiące kwartału, po kliknięciu ikony Utwórz plik  następuje od razu utworzenie części ewidencyjnej pliku JPK_V7 bez otwarcia formularza z częścią deklaracyjną.
  W celu wykazywania w pliku JPK_V7 kwot w polach 33-36 oraz 44-47 należy dodać do rejestru VAT dokument techniczny z odpowiednim atrybutem. Taki sposób kwalifikacji dokumentów umożliwia wykazanie w części ewidencyjnej kwoty podatku należnego oraz korekty podatku naliczonego w innym miesiącu niż jest to wykazywane w części deklaracyjnej pliku. Wykorzystanie atrybutów na dokumentach technicznych jest analogicznym działaniem jak w przypadku plików JPK_VAT. Dotyczy to zarówno miesięcznego, jak i kwartalnego rozliczenia podatku VAT.
Uwaga
W celu wykazania w pliku JPK_V7 kwot w polach 33-36 oraz 44-47 należy na dokumencie wybrać standardowo dostępny w programie atrybut o typie JPK i odpowiedniej nazwie. Nie należy dodawać i wybierać na dokumentach atrybutów o tych samych nazwach jak atrybuty standardowe, ale o niewłaściwym typie (atrybutów kontrahenta bądź dokumentu). Atrybut należy wybrać na dokumencie w Rejestrze VAT na zakładce [KSeF/JPK] w sekcji Atrybuty JPK_VAT i JPK_V7:
Po wprowadzeniu dokumentów technicznych z odpowiednimi atrybutami, na części deklaracyjnej zostaną automatycznie uzupełnione odpowiadające im pola (nie ma potrzeby wpisywania w nich ponownie kwot ręcznie, jak było to w przypadku deklaracji VAT-7). W związku z tym pola 33,34,35,36,46,47 są zablokowane do edycji. Wyjątkiem są pola 44 i 45, które są aktywne do zmiany. Dla tych pól należy dodać dokument techniczny (w celu wykazania w części ewidencyjnej pliku), a dodatkowo na części deklaracyjnej uzupełnić wartość. Wynika to z tego, że te pola są wyliczane automatycznie w pliku JPK_V7 za styczeń bądź pierwszy kwartał jako korekta roczna, w przypadku stosowania szacunkowego współczynnika struktury sprzedaży, i może zaistnieć potrzeba ich ręcznej zmiany. Obok pól 33-36 oraz 44-47 dostępna jest ikona , po najechaniu na którą pojawia się chmurka z informacją jak należy wprowadzić dokument, aby kwota pojawiła się w danym polu. Na dokumencie technicznym wartość atrybutu (kwota) może zostać wpisana z groszami. Poniżej znajdują się informacje dotyczące poszczególnych pól: Aby wartość w polu P_33 (Podatek należny od towarów objętych spisem z natury) została uwzględniona na deklaracji i w części ewidencyjnej pliku należy dodać w rejestrze sprzedaży dokument bez pozycji z atrybutem JPK_V7 o nazwie PODATEK OD SPISU i odpowiednią wartością oraz zaznaczoną datą Rozliczać w VAT. Aby wartość w polu P_34 (Zwrot odliczonej lub zwróconej kwoty wydatkowanej na zakup kas rejestrujących) została uwzględniona na deklaracji i w części ewidencyjnej pliku należy dodać w rejestrze sprzedaży dokument bez pozycji z atrybutem JPK_V7 o nazwie ZWROT ZA KASĘ FISKAL i odpowiednią wartością oraz zaznaczoną datą Rozliczać w VAT. Wartość w polu P_35 (Podatek od wewnątrzwspólnotowego nabycia środków transportu) jest częścią pola P_24 (Wewnątrzwspólnotowe nabycie towarów – kwota VAT dokumentów z wybranym rodzajem Środki transportu). Jeśli wartość w polu P_35 nie wynika z pola P_24, wówczas należy dodać w rejestrze sprzedaży dokument bez pozycji z atrybutem JPK_V7 o nazwie WEWN.NABYCIE ŚR.TRAN i odpowiednią wartością oraz zaznaczoną datą Rozliczać w VAT. Aby wartość w polu P_36 (Podatek od wewn. nabycia towarów art. 103 ust. 5aa) została uwzględniona na deklaracji i w części ewidencyjnej pliku należy dodać w rejestrze sprzedaży dokument bez pozycji z atrybutem JPK_V7 o nazwie WEWN.NAB.PALIW SILN. i odpowiednią wartością oraz zaznaczoną datą Rozliczać w VAT. Aby wartość w polu P_44 (Korekta podatku naliczonego od nabycia środków trwałych) została uwzględniona w części ewidencyjnej pliku należy dodać w rejestrze zakupu dokument bez pozycji z atrybutem JPK_V7 o nazwie KOREKTA ŚR. TRWAŁYCH i odpowiednią wartością oraz zaznaczoną datą Rozliczać w VAT. Aby wartość w polu P_45 (Korekta podatku naliczonego od pozostałych nabyć) została uwzględniona w części ewidencyjnej pliku należy dodać w rejestrze zakupu dokument bez pozycji z atrybutem JPK_V7 o nazwie KOREKTA POZ. NABYĆ i odpowiednią wartością oraz zaznaczoną datą Rozliczać w VAT. Wartość w polu P_46 (Korekta podatku naliczonego, o której mowa w art. 89b ust. 1 ustawy) wynika z zapisów korekcyjnych do VAT-ZD. Jeśli nie ma takich zapisów, wówczas należy dodać w rejestrze zakupu dokument bez pozycji z danymi korygowanego dokumentu: np. numerem faktury oraz danymi kontrahenta, z atrybutem JPK_V7 o nazwie VAT-ZD ZAKUP NIEZAPŁ i odpowiednią wartością na minus oraz zaznaczoną datą Rozliczać w VAT. Wartość w polu P_47 (Korekta podatku naliczonego, o której mowa w art. 89b ust. 4 ustawy) wynika z zapisów korekcyjnych do VAT-ZD. Jeśli nie ,ma takich zapisów, wówczas należy dodać w rejestrze zakupu dokument bez pozycji z danymi korygowanego dokumentu: np. numerem faktury oraz danymi kontrahenta, z atrybutem JPK_V7 o nazwie VAT-ZD ZAKUP ZAPŁAC. i odpowiednią wartością na plus oraz zaznaczoną datą Rozliczać w VAT. Podczas importu dokumentów do rejestrów VAT z plików JPK_V7, dokumenty techniczne z powyższymi atrybutami nie są importowane. W stosunku do wzoru deklaracji VAT-7(20), na części deklaracyjnej JPK_V7 w wersji formularza 21 i 22 dodane zostały pola P_59 – P_61 dotyczące Wniosku o zaliczenie podatku na poczet przyszłych zobowiązań. Ponadto w przypadku części deklaracyjnej JPK_V7 w wersji formularza 22 (pliki JPK_V7 za okresy od stycznia 2022) dostępnych jest 6 terminów zwrotu podatku (w wersji 21 były 4 terminy zwrotu).   Jeżeli w pliku JPK_V7 zaznaczone zostało pole P_59 (Wniosek na zaliczenie podatku na poczet przyszłych zobowiązań), wymagane jest wpisanie w polu P_60 (Wysokość zwrotu do zaliczenia na poczet przyszłych zobowiązań podatkowych) wartości większej od 0. W polu P_60 (Wysokość zwrotu do zaliczenia na poczet przyszłych zobowiązań podatkowych) może zostać wpisana maksymalnie wartość z pola P_54 (Kwota do zwrotu na rachunek bankowy). Dostępne są również pola P_68 i P_69 prezentujące łączną sumę kwot netto i VAT dla zapisów korekcyjnych dla VAT-ZD od sprzedaży uwzględnionych w bieżącym miesiącu/kwartale:   W 22 wersji formularza części deklaracyjnej dostępne jest nowe pole P_660 – Podatnik ułatwiał w okresie rozliczeniowym dokonanie czynności, o których mowa w art. 109b ust. 4 ustawy (pole do ręcznego zaznaczenia). Do pliku JPK_V7 przenoszona jest informacja o dacie jego utworzenia, pobierana jako data systemowa ze stanowiska komputerowego. Dane podatnika (NIP i nazwa pełna) pobierane są z pieczątki firmy. Jeżeli w Konfiguracji Firmy/ Dane firmy/ VAT, AKC-WW, CUK zaznaczono parametr Podatnik jest osobą fizyczną, wówczas wymagane przez plik dane jak Nazwisko i Imię podatnika pobierane są z tej właśnie gałęzi, natomiast adres e-mail, jak również numer telefonu pobierane są z części deklaracyjnej pliku JPK_V7 (jeżeli są tam uzupełnione). W przypadku numeru telefonu, jeżeli nie jest wskazany w części deklaracyjnej pliku, jest pobierany z Konfiguracji Firmy/ Dane firmy/ VAT, AKC-WW, CUK – odpowiednio z danych przedstawiciela, a jeżeli tam jest nieuzupełniony – z danych adresowych firmy. Jeżeli chodzi o adres e-mail, jeżeli nie jest wskazany w części deklaracyjnej pliku JPK_V7, jest pobierany z Konfiguracji Firmy/ Dane firmy/ VAT, AKC-WW, CUK z danych przedstawiciela, a jeżeli tam nie jest wskazany – z Pieczątki firmy.
Uwaga
Do poprawnej wysyłki pliku JPK_V7 wymagane jest uzupełnienie adresu e-mail na 4 zakładce części deklaracyjnej.
Jeżeli podatnik rozlicza VAT metodą struktury zakupów, na oknie dostępna jest ikona  Struktura zakupów służąca do obliczenia podatku należnego dokonując podziału sprzedaży za dany miesiąc w proporcjach wynikających z udokumentowanych zakupów. Po wykonaniu tej operacji należy ponownie przeliczyć część deklaracyjną pliku JPK_V7 za pomocą ikony  Przelicz. Po zweryfikowaniu wyliczonych wartości i ewentualnym uzupełnieniu odpowiednich pól na formularzu Użytkownik może zatwierdzić deklarację klikając na ikonę Zapisz zmiany  co spowoduje wygenerowanie pliku JPK_V7. Wygenerowany plik składa się z dwóch części – deklaracyjnej i ewidencyjnej lub tylko jednej z nich. Zapisy z rejestrów VAT przesyłane są do części ewidencyjnej według daty obowiązku podatkowego. Dla rejestru sprzedaży VAT to data obowiązku podatkowego a dla rejestru VAT zakupu – data prawa do odliczenia.  Wyjątek stanowią faktury wystawione do paragonów posiadające kod JPK_V7 o symbolu FP – trafiają one do pliku zgodnie z datą wystawienia. Podczas eksportu Rejestrów VAT do części ewidencyjnej plików JPK_V7 przenoszone są m.in. następujące dane: Dla Rejestru VAT zakupu:
  • Identyfikator podatkowy podmiotu z zapisu w rejestrze VAT (NIP w przypadku podmiotu gospodarczego, w przypadku osób fizycznych wstawiana jest wartość BRAK); w przypadku nieuzupełnienia numeru NIP na dokumencie do pliku przenoszona jest wartość BRAK
  • Nazwa dostawcy z zapisu w rejestrze VAT; w przypadku nieuzupełnienia pola Nazwa na dokumencie, do pliku przenoszona jest wartość BRAK
  • Data wystawienia
  • Data wpływu (jeżeli jest różna od daty wystawienia)
  • Numer dokumentu
  • Kwoty podzielone według kwalifikacji do VAT
  • Informacje o typie dokumentu, procedurze i oznaczeniu technicznym ZakupVAT_Marza na na podstawie znajdujących się na dokumencie kodach JPK_V7
  • W przypadku zapisów korekcyjnych wygenerowanych z załącznika VAT-ZD przenoszona jest informacja o korekcie zgodnie z art. 89a oraz termin płatności / data zapłaty
Dla Rejestru VAT sprzedaży:
  • Identyfikator podatkowy podmiotu z zapisu w rejestrze VAT (NIP w przypadku podmiotu gospodarczego, w przypadku osób fizycznych wstawiana jest wartość BRAK); w przypadku nieuzupełnienia numeru NIP na dokumencie do pliku przenoszona jest wartość BRAK,
  • Nazwa kontrahenta z zapisu w rejestrze VAT; w przypadku nieuzupełnienia pola Nazwa na dokumencie, do pliku przenoszona jest wartość BRAK; jeżeli dokument jest Paragonem (ma wybrany kod RO), wówczas w polu określającym nazwę kontrahenta pojawia się opis SPRZEDAŻ PARAGONOWA,
  • Data wystawienia,
  • Data sprzedaży (o ile różni się od daty wystawienia)
  • Numer dokumentu
  • Kwoty podzielone według kwalifikacji do VAT
  • Informacje o typie dokumentu, procedurze i kodach towarowych na podstawie znajdujących się na dokumencie kodach JPK_V7
Wszystkie kody JPK_V7 uzupełnione na dokumentach, z wyjątkiem przypadków opisanych w rozdziale 3.2.5, są przenoszone do pliku i możliwe jest podejrzenie jego zawartości w MS Excelu. Pozwala to na weryfikację które kody zostały przypisane do określonego dokumentu (w kolumnach odpowiadającym poszczególnym kodom pojawi się oznaczenia 1 dla kodu, który znajduje się na dokumencie). Dane te są wymagane przez wzór dokumentu elektronicznego i muszą być uzupełnione w programie przed wysyłką plików JPK_V7. W logu z procesu generowania pliku JPK_V7 pojawia się informacja/ostrzeżenie dla jakich dokumentów i do jakich pól wstawiono do pliku wartość BRAK/SPRZEDAŻ PARAGONOWA wraz z sugestią, aby Użytkownik zweryfikował poprawność tych dokumentów. W przypadku raportu dobowego lub faktury dla osoby fizycznej brak numeru NIP nie jest błędem, natomiast w przypadku np. faktury sprzedaży dla podmiotu gospodarczego dane takie jak numer NIP i nazwa kontrahenta powinny zostać uzupełnione na dokumencie a plik JPK_V7 ponownie wygenerowany. Część deklaracyjna pliku JPK_V7 może mieć status obliczona (w buforze) lub zamknięta – analogicznie jak pozostałe typy deklaracji. Jeżeli deklaracja została zamknięta, możliwe jest jej odblokowanie z poziomu listy plików JPK_V7 poprzez kliknięcie na niej prawym przyciskiem myszy i wybranie opcji Odblokuj JPK_V7. W przypadku pliku JPK_V7 który został już wysłany, odblokowanie jest możliwe jeżeli operator ma na swojej karcie zaznaczony parametr Prawo do odblok. Wysłanej e-Deklaracji oraz plik JPK ma status Wysłano/odebrano UPO lub Błąd przetwarzania. Odblokowanie nie jest możliwe dla pliku posiadającego status Wysłano/nie odebrano UPO. Część deklaracyjna pliku (w przypadku obowiązkowych plików JPK_V7) generuje w preliminarzu płatność o kierunku rozchód na kwotę podatku do zapłaty (pole P_51) lub płatność o kierunku przychód na kwotę do zwrotu na rachunek bankowy (pole P_54 w pliku). Stan płatności jest przenoszony z części deklaracyjnej: płatność ma stan bufor jeżeli deklaracja jest niezatwierdzona lub do realizacji jeżeli deklaracja została zablokowana przez zmianami. Korekta części deklaracyjnej pliku generuje płatność na kwotę różnicy podatku do zapłaty (lub kwoty zwrotu na rachunek bankowy) w stosunku do korygowanej deklaracji. W przypadku plików JPK_V7 na żądanie Urzędu Skarbowego – generują one płatności o statusie Nie podlega jeżeli za dany okres nie ma jeszcze dodanego obowiązkowego pliku JPK_V7. W celu zapewnienia prawidłowości rozliczeń płatności wynikających z części deklaracyjnej plików JPK_V7 zaleca się dodawanie pliku na żądanie dopiero wówczas, kiedy wcześniej utworzony już został obowiązkowy plik JPK_V7 (i ewentualne jego korekty). W przeciwnym razie obowiązkowy plik JPK_V7 dodany za okres za który dodano już wcześniej plik na żądanie nie wygeneruje nowej płatności w preliminarzu (lub wygeneruje płatność tylko na kwotę różnicy w stosunku do pliku na żądanie). W przypadku kliknięcia ikony Anuluj zmiany  następuje odrzucenie tworzonego pliku i powrót na listę plików JPK_V7. Wygenerowanie pliku JPK_V7 powoduje utworzenie pliku w formacie XML. Jeżeli folder dla plików JPK nie został wskazany w konfiguracji na danym stanowisku komputerowym, podczas próby utworzenia pliku pojawia się komunikat: W menu Konfiguracja->Stanowisko->Ogólne->Jednolity plik kontrolny nie ustawiono katalogu dla plików z danymi. Czy chcesz skonfigurować teraz? Po wybraniu opcji Tak następuje otwarcie okna Konfiguracji  na którym można wskazać folder zapisu dla plików JPK. Po zapisaniu pliku z częścią deklaracyjną istnieje możliwość edycji tego pliku do czasu kiedy pozostaje on w buforze i ponownego przeliczenia części deklaracyjnej. W takim wypadku jeżeli po utworzeniu pliku użytkownik dokona zmian w części deklaracyjnej, wówczas utworzony zostanie nowy plik XML zawierający plik JPK_V7 w tej lokalizacji na dysku. Istnieje możliwość ponownego wygenerowania pliku XML dla pliku JPK_V7. Dzięki temu, jeżeli plik JPK_V7 jest już wysłany a poprzedni plik XML został usunięty z dysku lub utworzony na innym komputerze, jest możliwe uzyskanie nowego pliku XML zawierającego dane z pliku JPK. W menu podręcznym, po kliknięciu prawym przyciskiem myszy na wybranym pliku JPK, dostępna jest opcja Eksportuj dane w formacie JPK_V7. Po jej wybraniu w folderze zapisu plików JPK wskazanym w Konfiguracji Stanowiska/ Ogólne/ Jednolity plik kontrolny tworzony jest plik XML . Plik JPK_V7 zawierający część deklaracyjną przed wysłaniem musi zostać zatwierdzony poprzez zaznaczenie na nim parametru Zablokuj deklarację przed zmianami. Jeżeli został sporządzony plik JPK_V7 z częścią deklaracyjną i nie został zatwierdzony, a w międzyczasie nastąpiły zmiany w rejestrze VAT wpływające na wykazywane w pliku informacje, podczas próby zablokowania części deklaracyjnej pojawia się informacja: Błąd obliczania deklaracji. Od ostatniego przeliczenia deklaracji nastąpiły zmiany w ewidencji, należy ponownie przeliczyć deklarację. Po pojawieniu się tego komunikatu należy kliknąć ikonę Przelicz na formularzu części deklaracyjnej i zapisać zmiany. Komunikat nie pojawia się jeżeli na części deklaracyjnej uzupełniono wyłącznie pola P_39 lub P_44 – P_47. Jeżeli w Konfiguracji Programu/ Ogólne/ e-Deklaracje/JPK zaznaczony jest parametr Sprawdzaj poprawność plików JPK przed wysłaniem, wówczas weryfikacja zgodności pliku JPK_V7 z wzorcem Ministerstwa Finansów odbywa się zarówno podczas tworzenia pliku, jak również podczas jego wysyłki. Generowany plik jest również weryfikowany pod kątem uzupełnienia pól obowiązkowych. Użytkownik otrzymuje informację jeśli jakieś dane nie zostały prawidłowo uzupełnione, np. brakuje adresu e-mail lub imienia i nazwiska w przypadku podatnika będącego osobą fizyczną. Wyłączenie walidacji jest możliwe w Konfiguracji Programu/ Ogólne/ e-Deklaracje/JPK ale nie jest zalecane. Pliki zawierające błędy bądź niepełne informacje nie są wysyłane. Jeżeli w trakcie sprawdzania poprawności pliku JPK_V7 wystąpią błędy związane z walidacją, wówczas generowany jest komunikat: „Jeżeli plik JPK_V7 zawiera część deklaracyjną należy go odblokować, poprawnie uzupełnić dane, przeliczyć JPK_V7 i ponownie wysłać. W przypadku pliku zawierającego tylko ewidencję należy uzupełnić brakujące dane, dodać nowy plik JPK_V7 i ponownie wysłać. Poprzedni plik można usunąć.” W przypadku gdy plik JPK_V7 z deklaracją został utworzony a nastąpiła zmiana danych na deklaracji (np. uzupełniono kwotę do zwrotu na rachunek bankowy) i w trakcie zapisywania pliku przerwano tę operację lub wystąpił inny błąd uniemożliwiający zapisanie pliku XML, wówczas plik jest aktualizowany o zmienione dane w momencie jego wysyłki na serwery Ministerstwa Finansów.
Uwaga
Występujący w logu podczas generowania plików JPK komunikat: „Nie można sprawdzić poprawności wygenerowanego dokumentu(XML), ponieważ występują problemy z dostępem do serwerów Ministerstwa Finansów. Plik JPK można wysłać, a jego poprawność zostanie sprawdzona przy odbiorze UPO lub wysłać w innym terminie, gdy dostęp do serwerów zostanie przywrócony. (Nie udało się pobrać schematu” może wynikać z braku możliwości połączenia się z serwerem http://crd.gov.pl, na którym znajdują się wzorce dokumentu elektronicznego z którymi Comarch ERP Optima porównuje generowany plik JPK. Należy sprawdzić na stanowisku ustawienia programu antywirusowego, zapory sieciowej, a w przypadku korzystania z serwera proxy – dodać wyjątek na ten adres. Komunikat może również wynikać z czasowej niedostępności tego serwera. Należy również zweryfikować możliwość nawiązania komunikacji z adresem www.mf.gov.pl.

4.3. Wysyłka plików JPK_V7

Znajdująca się na dole okna Pliki JPK_V7 z ulgą na złe długi ikona Wyślij  umożliwia wysłanie zaznaczonych plików JPK_V7 za pomocą:
  • podpisu kwalifikowanego,
  • podpisu niekwalifikowanego (wyłącznie osoby fizyczne)
  • podpisu zaufanego.
Odpowiednią opcję należy wybrać po rozwinięciu ikony Wyślij: Wybranie pierwszej opcji powoduje wywołanie okna Wybierz certyfikat do podpisu zawierającego listę zainstalowanych w systemie Windows certyfikatów służących do elektronicznego podpisywania wysyłanych deklaracji oraz plików JPK_V7.
Uwaga
Jeżeli Użytkownik korzysta z podpisu kwalifikowanego (np. Szafir) podpisując nim w programie Comarch ERP Optima deklaracje, a pomimo to podczas wysyłania pliku JPK_V7 na liście certyfikatów podpis nie jest widoczny, wówczas należy zaktualizować ze strony producenta aplikację do obsługi karty kryptograficznej i zrestartować komputer. Warunkiem widoczności certyfikatu jest jego zainstalowanie w systemie operacyjnym. Certyfikat musi być prawidłowy (zaufany). W celu weryfikacji poprawności certyfikatu należy uruchomić program certmgr.msc. W grupie certyfikatów osobistych należy sprawdzić, czy jest widoczny certyfikat, który ma być wykorzystany do podpisu. Jeżeli go nie ma w tym miejscu, oznacza to że certyfikat nie został zainstalowany w systemie Windows. Po wyświetleniu szczegółów certyfikatu należy na zakładce [Ogólne] upewnić się czy jest on aktualny oraz czy widoczna jest informacja: Masz klucz prywatny, który odpowiada temu certyfikatowi. Dodatkowo na zakładce [Ścieżka certyfikacji] musi być widoczny stan certyfikatu: Ten certyfikat jest prawidłowy – tak jak na poniższych zrzutach ekranu:
Po wybraniu opcji Wyślij podpisem niekwalifikowanym otwierane jest okno z danymi podatnika pobranymi z Konfiguracji Firmy/ Dane firmy/ VAT, AKC-WW: numerem NIP, imieniem i nazwiskiem oraz datą urodzenia. Na oknie należy uzupełnić kwotę przychodu podatnika za dwa lata wstecz. Domyślnie w tym polu wykazywana jest kwota 0,00.
Uwaga
Podpisywanie plików JPK_V7 podpisem niekwalifikowanym możliwe jest jedynie dla osób fizycznych. Wysłanie tym sposobem plików JPK_V7 podatników nie będących osobami fizycznymi nie jest możliwe.
Jeżeli podczas wysyłki pliku JPK_V7 podano niewłaściwą kwotę przychodu (podczas odbioru UPO pojawił się błąd o kodzie 403), wówczas plik JPK_V7 uzyskuje z powrotem status Nie wysłano, umożliwiając ponowną jego wysyłkę. W przypadku podpisu niekwalifikowanego nieprawidłowe dane autoryzacyjne nie blokują możliwości kolejnej próby wysyłki pliku JPK_V7. Możliwe jest ponowne wprowadzenie prawidłowych danych i wysyłka pliku. Korzystając z wysyłki plików JPK_V7 za pomocą podpisu niekwalifikowanego należy upewnić się, że są podane wszystkie wymagane dane. Brak jednej z nich (np. numeru NIP, imienia bądź nazwiska) powoduje wyświetlenie komunikatu: Nieprawidłowy format danych autoryzujących. Po wybraniu opcji Wyślij podpisem zaufanym dla plików o statusie Nie wysłano otwierane jest okno z kreatorem procesu podpisywania pliku JPK podpisem zaufanym: Plik JPK przeznaczony do podpisu za pomocą podpisu zaufanego tworzony jest w katalogu wskazanym w Comarch ERP Optima w Konfiguracji Stanowiska/ Ogólne/ Jednolity Plik Kontrolny w katalogu zgodnym z nazwą firmy w podkatalogu E-PUAP. Informacja o dokładnej ścieżce do pliku znajduje się na oknie Podpisywanie pliku JPK podpisem zaufanym w pierwszym kroku kreatora. Tam również dostępny jest przycisk Skopiuj link do schowka, którego użycie ułatwia wklejenie ścieżki do katalogu, w którym znajduje się przygotowany plik JPK na stronie ePUAP. W drugim kroku należy przejść  na stronę https://moj.gov.pl/uslugi/signer/upload?xFormsAppName=SIGNER i podpisać wygenerowany plik JPK_V7. Po podpisaniu pliku i jego zapisaniu na dysku, należy go wskazać klikając na przycisk Wybierz podpisany plik JPK. Ikona Odbierz UPO służy do odebrania Urzędowego Poświadczenia Odbioru dla zaznaczonych plików JPK_V7. UPO dla podświetlonego na liście pliku można podejrzeć za pomocą ikony  . Ikony Wyślij oraz Odbierz UPO są aktywne dla operatora, który na swojej karcie ma zaznaczony parametr Prawo do eksportu plików JPK.

4.4. Korekta pliku JPK_V7

Dostępna na oknie Pliki JPK_V7 z ulgą na złe długi ikona Korekta  udostępnia po kliknięciu do wyboru 3 opcje:
  • Korekta części deklaracyjnej i ewidencyjnej,
  • Korekta części ewidencyjnej,
  • Korekta części deklaracyjnej.
Wybór rodzaju korekty zależy od zmian jakie mają zostać wykazane. Jeżeli miała miejsce zmiana w rejestrze VAT wpływająca na wyliczenie deklaracji (np. dodanie nowego dokumentu) wówczas należy sporządzić korektę części deklaracyjnej i ewidencyjnej. Jeśli korekta ma dotyczyć np. wyłącznie terminu zwrotu podatku VAT, wówczas należy wybrać korektę części deklaracyjnej. W przypadku kiedy na dokumencie w ewidencji VAT zmianie uległy np. dane adresowe kontrahenta, które nie wpływają na kwoty wykazywane w części deklaracyjnej, wówczas wystarczy sporządzić korektę samej ewidencji. W przypadku kwartalnego rozliczania podatku VAT, jeżeli podświetlony został plik za pierwszy i drugi miesiąc kwartału, wówczas dostępna tylko opcja korekty części ewidencyjnej (pozostałe opcje korekty są wyszarzane). W pozostałych przypadkach wszystkie opcje korekty są aktywne. Korekta powoduje utworzenie nowego pliku JPK_V7. Otwierany jest wówczas formularz Eksport plików JPK_V7, na którym możliwe jest zmodyfikowanie współczynnika struktury sprzedaży (jeżeli tworzona jest korekta zawierająca część deklaracyjną i ewidencyjną). W przypadku korekty tylko części deklaracyjnej lub tylko części ewidencyjnej zmiana współczynnika szacunkowego struktury sprzedaży nie jest możliwa. Okres za który sporządzany jest plik pobierany jest z korygowanej na liście pozycji i nie ma możliwości jego zmiany. Jeśli wykonywana jest korekta części deklaracyjnej, po kliknięciu ikony Utwórz plik  otwiera się formularz z częścią deklaracyjną. Po kliknięciu ikony Zapisz zmiany  następuje wygenerowanie korekty pliku JPK_V7. Jeśli wykonywana jest korekta tylko części ewidencyjnej, po kliknięciu ikony Utwórz plik  od razu generowana jest korekta pliku JPK_V7. Ikona korekty dostępna jest wyłącznie w przypadku pozycji wyświetlanych na liście w kolorze czarnym – zamkniętej części deklaracyjnej bądź części ewidencyjnej.

4.5. Podgląd zawartości pliku JPK_V7

Na wstążce programu z poziomu okna Pliki JPK_V7 z ulgą na złe długi dostępna jest ikona Podgląd pliku  która powoduje otwarcie arkusza MS Excel z zawartością podświetlonego na liście pliku JPK_V7. Arkusz zawiera 5 zakładek prezentujących poszczególne części pliku:
  • JPK_V7_DanePodatnika – nazwa programu, cel złożenia, NIP, telefon, adres email, pełna nazwa podatnika,
  • JPK_V7_Deklaracja – kwoty z części deklaracyjnej,
  • JPK_V7_Agregaty – zagregowane wartości z części ewidencyjnej,
  • JPK_V7_SprzedazWiersz – dokumenty sprzedaży,
  • JPK_V7_ZakupWiersz – dokumenty zakupu.

4.6. Dodawanie plików JPK_V7 z dysku

Za pomocą dostępnej na wstążce programu funkcji  Dodaj plik JPK z dysku na listę możliwe jest zaczytanie pliku JPK_V7 z pliku XML. Umożliwia to import plików wygenerowanych z poziomu innych baz Comarch ERP Optima jak również w programach innych producentów. Po kliknięciu ikony pojawia się okno wyboru pliku: Na otwartym oknie podpowiada się standardowy folder zapisu dla plików JPK dla firmy (określany w Konfiguracji Stanowiska/ Ogólne/ Jednolity Plik Kontrolny, łącznie z podkatalogiem o nazwie zgodnej z nazwą firmy). Po wskazaniu nowego pliku XML zawierającego plik JPK i kliknięciu Otwórz, plik zapisywany jest do bazy i pojawia się na liście plików JPK_V7. Z poziomu okna Pliki JPK_V7 z ulgą na złe długi możliwe jest wczytanie wyłącznie plików JPK_V7. Pliki JPK_VAT należy wczytywać z poziomu okna Pliki JPK. Zaimportowany plik JPK_V7 podlega edycji w zakresie pól możliwych do uzupełnienia ręcznie. Nie można jednak wykonać do niego korekty. Nie generuje również płatności w preliminarzu. Plik można wysłać do Ministerstwa Finansów i odebrać Urzędowe Poświadczenie Odbioru. Jeśli zawiera część deklaracyjną, można ją wydrukować wybierając wydruk JPK_V7M, JPK_V7K z listy plików. Stąd dostępny jest również wydruk UPO. Dla plików wczytanych z dysku nie ma możliwości robienia wydruków z formularza części deklaracyjnej.

4.7. Scalanie plików JPK_V7

Dostępna na wstążce programu ikona  Scal pliki JPK_V7 jest aktywna po zaznaczeniu na liście co najmniej dwóch plików JPK_V7. Po jej kliknięciu otwierane jest okno Łączenie plików JPK_V7: Scalać można ze sobą wyłącznie pliki tego samego typu (z tą samą zawartością), a więc:
  • albo pliki jednocześnie z częścią deklaracyjną i ewidencyjną,
  • albo pliki wyłącznie z częścią deklaracyjną,
  • albo pliki wyłącznie z częścią ewidencyjną.
Na oknie należy wskazać Urząd Skarbowy do którego jest składany plik. Znajdują się na nim również 2 parametry:
  • Oznacz plik JPK_V7 jako korektę – w przypadku zaznaczenia, plik tworzony jest jako korekta
  • Po scaleniu utwórz również plik MS Excel – po wygenerowaniu scalonego pliku otwierany jest arkusz kalkulacyjny z jego zawartością
Należy również określić czy scalony plik JPK_V7 jest plikiem obowiązkowym czy składanym na żądanie Urzędu Skarbowego. Po kliknięciu ikony  Wykonaj połączenie następuje utworzenie scalonego pliku i powrót na listę plików. Nazwa scalonego pliku zaczyna się od: Jpk_V7_SCALONY. Pliki które zostały scalone wyświetlane są (w przypadku kiedy parametr Pokazuj scalone jest zaznaczony) na liście w kolorze szarym, a w kolumnie Status wyświetlany jest opis scalona. Scalony plik zawiera sumę zarówno części deklaracyjnych jak i ewidencyjnych z połączonych plików. Dane podatnika pobierane są z bazy firmowej, podobnie jak w przypadku nowych plików JPK_V7. Po utworzeniu scalonego pliku zawierającego część deklaracyjną możliwe jest podejrzenie go i zmodyfikowanie edytowalnych pozycji.
Uwaga
Po połączeniu plików JPK_V7 należy samodzielnie zweryfikować pola od P_49 do końca formularza. Ponadto sporządzając plik JPK_V7 za kolejny okres, jeśli w poprzednim okresie sporządzono i wysłano plik scalony, należy zweryfikować pole P_39 (Kwota nadwyżki z poprzedniej deklaracji). Wartość do tego pola przenoszona jest z pliku JPK_V7 za poprzedni okres wygenerowanego w programie na podstawie zapisów w rejestrze VAT a nie z pliku scalonego. W związku z tym w razie potrzeby pole P_39 należy zmodyfikować samodzielnie.
Po edycji takiego pliku tworzony jest nowy plik XML już o standardowej nazwie (bez członu SCALONY). Scalony plik nie generuje nowych płatności w preliminarzu. W przypadku kiedy scalany był wygenerowany w danej bazie plik JPK_V7 (który posiadał w preliminarzu płatność) z plikiem dodanym z dysku (który nie posiadał płatności), po połączeniu płatność scalonego pliku pozostaje bez zmian (jest na taką kwotę, jaką miała płatność z pierwotnego pliku wygenerowanego w bazie). Do pliku scalonego nie można wykonać korekty. Nie generuje również płatności w preliminarzu. Plik można wysłać do Ministerstwa Finansów i odebrać Urzędowe Poświadczenie Odbioru. Jeśli zawiera część deklaracyjną można ją wydrukować wybierając wydruk JPK_V7M, JPK_V7K z listy plików. Stąd dostępny jest również wydruk UPO. Dla plików scalonych nie ma możliwości robienia wydruków z formularza części deklaracyjnej. Wybór opcji  Anuluj zmiany powoduje zamknięcie okna Łączenie plików JPK_V7 i powrót na listę plików bez wykonania połączenia plików.

4.8. Wydruk części deklaracyjnej oraz Urzędowego poświadczenia Odbioru

Wydruk części deklaracyjnej pliku JPK_V7 (również z załącznikami UPO i ORD-ZU) oraz samego Urzędowego poświadczenia odbioru dostępne są z poziomu listy plików JPK_V7, jak również z poziomu formularza deklaracji, za wyjątkiem plików wczytanych na listę i scalonych.

4.9. Księgowanie części deklaracyjnej

W przypadku księgowości kontowej na liście plików JPK_V7 dostępna jest ikona  Księgowanie deklaracji służąca do zaksięgowania kwot z części deklaracyjnej pliku, za pomocą schematu księgowego bądź predekretacji.. Dotychczasowe schematy utworzone przez Użytkownika do księgowania deklaracji VAT-7 księgują analogiczne kwoty z części deklaracyjnej plików JPK_V7. Pliki wczytane na listę, scalone oraz zawierające tylko część ewidencyjną nie podlegają księgowaniu.

5. Import plików JPK_V7 do rejestrów VAT

Opcja importu plików JPK_V7 (jak również JPK_VAT) do rejestrów VAT dostępna jest z menu głównego po wyborze JPK/ Import do rej.VAT : Na oknie po kliknięciu ikony  Wybór pliku należy wskazać źródłowy plik XML, z którego mają zostać importowane dane. Warunkiem powodzenia importu jest aby struktura wskazanego pliku była zgodna z wymaganą przez Ministerstwo Finansów strukturą JPK_VAT(2), JPK_VAT(3) lub JPK_V7. W przypadku importu z plików JPK_V7 program pobiera informacje wyłącznie z części ewidencyjnej pliku. Możliwy jest import dokumentów zarówno z obowiązujących do grudnia 2021 plików JPK_V7(1) jak i JPK_V7(2), które obowiązują od stycznia 2022. W przypadku wybrania niewłaściwego typu pliku pojawia się stosowne ostrzeżenie i import danych nie jest możliwy. Parametr Za okres domyślnie jest nieaktywny. Takie ustawienie powoduje, że wszystkie dokumenty z pliku zostaną zaimportowane bez względu na ich daty. Po wskazaniu pliku JPK_V7 zakres dat zostaje uzupełniony na podstawie danych w pliku. Po zaznaczeniu parametru Za okres Użytkownik może wpisać inny zakres dat (zawęzić okres) za jaki zostaną zaimportowane dokumenty ze wskazanego pliku. Dla dokumentów sprzedażowych wskazywane dla parametru daty dotyczą daty wystawienia, natomiast dla dokumentów zakupowych – daty wpływu. Jeżeli w pliku JPK_V7 dla dokumentu importowanego do rejestru zakupu VAT nieuzupełniona jest data wpływu, jest ona uzupełniona jako zgodna z datą zakupu. W przypadku dokumentu importowanego do rejestru sprzedaży VAT, jeżeli nieuzupełniona jest data sprzedaży, jest ona uzupełniona jako zgodna z datą wystawienia. Na oknie istnieje możliwość wskazania rejestrów sprzedaży i zakupów VAT, do których mają zostać zaimportowane dokumenty z pliku. Odznaczenie jednego z typów rejestru VAT (zakupów lub sprzedaży) powoduje, że tego typu dokumenty nie zostaną zaimportowane z pliku. Jeżeli w pliku JPK_V7 występują tylko dokumenty jednego typu (np. tylko rejestr sprzedaży VAT) i ten typ rejestrów został odznaczony przez Użytkownika, przy próbie importu pojawi się informacja o braku danych do zaimportowania. Podczas importu dokumentów, jeśli w pliku JPK_V7 uzupełniony jest numer NIP kontrahenta i w bazie istnieje już kontrahent z takim numerem NIP, wówczas po zaimportowaniu dokument przypisywany jest do tego kontrahenta (podstawiany jest jego kod). Jeżeli istniejący w bazie kontrahent oznaczony został jako zduplikowany podczas operacji łączenia kart kontrahentów, na zaimportowanym dokumencie podstawiony zostanie kontrahent główny. Dane kontrahenta na dokumencie (jego nazwa i adres) przenoszone są zawsze z pliku. Rodzaj transakcji, rodzaj na pozycji dokumentu oraz status kontrahenta na zaimportowanym dokumencie uzupełniane są zgodnie z domyślnymi ustawieniami kwalifikującymi do JPK_V7 dla pola, do którego dany dokument w pliku został zakwalifikowany. Na dokument podstawiana jest kategoria sprzedaży lub zakupu z istniejącej karty kontrahenta (jeżeli domyślne kategorie dla kontrahenta są uzupełnione). W przypadku nie zaznaczonego parametru Załóż karty kontrahentów (na podstawie numeru NIP lub wg autonumeracji ustawionej w konfiguracji) jeżeli kontrahent o takim numerze NIP jak na dokumencie w pliku nie występuje w bazie (lub jest więcej niż jeden kontrahent z takim numerem NIP), wówczas na zaimportowanym dokumencie podstawiany jest kontrahent Nieokreślony. Dane kontrahenta na dokumencie (jego nazwa i adres) przenoszone są z pliku. W przypadku importu dokumentów do rejestru VAT bez zakładania kart kontrahentów, jeżeli na dokumencie w pliku JPK_V7 uzupełniony jest numer NIP kontrahenta, na zaimportowanym dokumencie zaznaczony zostaje parametr Podmiot gospodarczy. Jeżeli w pliku JPK_V7 nie ma numeru NIP dla transakcji (pole z numerem NIP jest puste lub znajduje się w nim znak „-”), w rejestrze VAT na dokumencie zaznaczony zostaje parametr Finalny. Po przeprowadzonym imporcie zaleca się wykonanie dla zaimportowanych dokumentów operacji seryjnej Zweryfikuj status VAT. W przypadku zaznaczonego parametru Załóż karty kontrahentów (na podstawie numeru NIP lub wg autonumeracji ustawionej w konfiguracji) jeżeli kontrahent o takim numerze NIP jak na dokumencie w pliku nie występuje w bazie, wówczas zostanie założona jego karta na podstawie danych w pliku i zostanie on podstawiony na zaimportowanym dokumencie. Jeżeli w Konfiguracji Firmy/ Ogólne/ Parametry zaznaczony jest parametr Autonumeracja kodów kontrahentów przy dodawaniu, wówczas kod zakładanego kontrahenta nadawany jest według wskazanego w Konfiguracji schematu numeracji. W przypadku, gdy podczas automatycznego dodawania kontrahenta, numer w schemacie numeracji kodów przekroczy maksymalną wartość, kontrahent dodawany jest z kodem uzupełnionym zgodnie z jego numerem NIP. Jeżeli parametr Autonumeracja kodów kontrahentów przy dodawaniu nie jest zaznaczony w Konfiguracji, wówczas jako kod nowego kontrahenta wstawiany jest jego numer NIP. Dodatkowo jeżeli w Konfiguracji Firmy/ Ogólne/ Parametry zaznaczony jest parametr Automatyczne pobieranie rachunków bankowych z Wykazu podatników VAT, dla dodawanego automatycznie kontrahenta następuje weryfikacja w Wykazie podatników VAT na podstawie jego numeru NIP i pobierane są numery rachunków bankowych kontrahenta. Jeżeli parametr w konfiguracji nie jest zaznaczony, kontrahent dodawany jest bez importu listy rachunków bankowych. Jeżeli na dokumencie w pliku kontrahent nie ma uzupełnionego numeru NIP (lub w bazie jest więcej niż jeden kontrahent z takim numerem NIP), wówczas karta kontrahenta nie jest zakładana. Na takim dokumencie po imporcie podstawia się kontrahent Nieokreślony z danymi adresowymi takimi, jakie są w pliku JPK_V7. W przypadku braku numeru NIP kontrahenta w pliku JPK_V7, na dokumencie jako rodzaj transakcji podpowie się Krajowa. Jeżeli numer NIP kontrahenta krajowego w pliku JPK_V7 jest niepoprawny, nie jest zakładana karta takiego kontrahenta i nie są importowane jego dokumenty do rejestru VAT. Na oknie importu istnieje możliwość wyboru formy płatności na zaimportowanych dokumentach. Po wybraniu opcji domyślną Użytkownik może wskazać jedną z aktywnych form płatności występujących w bazie. Jeżeli istniejący w bazie kontrahent ma ustawiony na swojej karcie indywidualny termin płatności, taki termin zostanie wyliczony na zaimportowanym dokumencie. Jeżeli istniejący w bazie kontrahent nie ma określonego terminu płatności, wówczas termin płatności na zaimportowanym dokumencie wyliczony zostanie na podstawie terminu ustawionego na wybranej formie płatności. W przypadku wybrania opcji z karty kontrahenta, na dokumencie podstawiana jest forma płatności wskazana na karcie istniejącego kontrahenta. Jeżeli w bazie nie istnieje kontrahent o podanym numerze NIP, na zaimportowanym dokumencie podstawiana jest forma płatności gotówka. Ta forma płatności zostanie również ustawiona jako domyślna forma płatności dla założonego kontrahenta. Jeżeli forma płatności gotówka jest zablokowana, podstawi się kolejna (według kolejności wprowadzania) forma płatności. Jeżeli istniejący w bazie kontrahent ma zaznaczony parametr Nie rozliczaj płatności, płatność z zaimportowanego dokumentu zostanie dodana do preliminarza ze statusem Nie podlega. Jeżeli Użytkownik wybierze dla opcji domyślną formę płatności gotówka (lub kontrahent ma wybraną tę formę płatności jako domyślną), po zaimportowaniu nie będą tworzone automatycznie zapisy K/B rozliczające płatności do importowanych dokumentów. Zaznaczenie na oknie importu parametru Ustaw status płatności na Nie podlega powoduje, że wszystkie płatności z zaimportowanych dokumentów otrzymają status Nie podlega. Jeżeli w Konfiguracji Firmy/ Ogólne/ Parametry zaznaczony jest parametr Kontrola duplikacji zapisów w rejestrze VAT, ewidencji dodatkowej i na fakturach zakupu, podczas importu następuje weryfikacja czy w bazie nie występuje już dokument o parametrach określonych dla kontroli duplikacji. Jeżeli taki dokument już istnieje, dokument z pliku JPK_V7 nie zostanie zaimportowany, a w logu z przebiegu importu pojawi się stosowna informacja. Kliknięcie ikony  Uruchom import powoduje zaczytanie danych z pliku JPK_V7 do bazy. Ikona jest aktywna po wskazaniu poprawnego pliku JPK_V7 lub JPK_VAT oraz zaznaczeniu rejestru sprzedaży i/lub rejestru zakupu do importu. Wybranie opcji  Zamknij okno powoduje rezygnację z importu i zamknięcie okna.
Uwaga
Pliki JPK_V7 nie posiadają wszystkich potrzebnych informacji występujących na dokumentach w rejestrze VAT, dlatego też przy imporcie przyjmowane są pewne uproszczenia np. co do formy płatności, rodzaju transakcji, waluty, stawki VAT, opisu, kolumny KPiR itp. W związku z tym po zaimportowaniu dokumentów należy zweryfikować ich poprawność. W razie potrzeby należy skorzystać z operacji seryjnych dostępnych bezpośrednio w rejestrach VAT.
Na zaimportowanych dokumentach do rejestru zakupu VAT domyślnie ustawiane są odliczenia na TAK.
Uwaga
W pliku JPK_V7 znajdują się tylko wartości z odliczeniami na TAK lub Warunkowo (przeliczone przez szacunkowy współczynnik struktury sprzedaży). Jeżeli więc na dokumencie przed eksportem do pliku JPK_V7 znajdowały się pozycje z odliczeniami na NIE oraz na TAK, wówczas do pliku zostaną wyeksportowane (a tym samym zaimportowane z niego) tylko te pozycje mające odliczenia na TAK. W przypadku odliczeń WARUNKOWO, po eksporcie do pliku te pozycje są mnożone przez szacunkowy współczynnik struktury sprzedaży. W związku z tym wartość brutto na zaimportowanym dokumencie w rejestrze zakupu VAT nie zawsze będzie się zgadzać z wartością brutto dokumentu sprzed eksportu do pliku JPK_V7. Należy więc po imporcie zweryfikować poprawność kwot brutto dokumentów.
W przypadku rejestrów sprzedaży VAT w kolumnie Uwzględniaj w proporcji ustawiane są domyślne wartości dla poszczególnych stawek VAT:
  • Uwzględniaj – dla stawek: 23%, 8%, 5%, 0%
  • Tylko w mianowniku – dla stawki ZW
  • Nie uwzględniaj – dla stawki NP
W przypadku ustawionego w Konfiguracji Firmy/ Księgowość/ Parametry rodzaju księgowości księga podatkowa, na pozycjach  zaimportowanych dokumentów w rejestrze sprzedaży VAT ustawiana jest kolumna KPiR 7.Sprzedaż, natomiast na dokumentach w rejestrze zakupu VAT kolumna 10.Towary. Jeżeli ustawiony jest rodzaj księgowości ewidencja ryczałtowa, na pozycjach  zaimportowanych dokumentów w rejestrze sprzedaży VAT ustawiana jest stawka dla ryczałtu 3,00%. W przypadku plików JPK_V7 nie są importowane do rejestru VAT występujące w pliku dokumenty techniczne wykazywane w polach:
  • P_33 – Podatek należny od towarów objętych spisem z natury,
  • P_34 – Zwrot odliczonej lub zwróconej kwoty wydatkowanej na zakup kas rejestrujących,
  • P_35 – Podatek od wewnątrzwspólnotowego nabycia środków transportu,
  • P_36 – Podatek od wewn. Nabycia towarów art. 103 ust. 5aa,
  • P_44 – Korekta podatku naliczonego od nabycia środków trwałych,
  • P_45 – Korekta podatku naliczonego od pozostałych nabyć,
  • P_46 – Korekta podatku naliczonego, o której mowa w art. 89b ust. 1 ustawy,
  • P_47 – Korekta podatku naliczonego, o której mowa w art. 89b ust. 4 ustawy.
W logu z operacji importu dla takich dokumentów pojawia się informacja: Dokument nie został zaimportowany ponieważ posiada wartości związane z dokumentami technicznymi w pliku JPK_V7. Z pliku JPK_V7 importowane są wykazane w nim dla poszczególnych dokumentów kody JPK i przenoszone są na tworzone dokumenty w rejestrze VAT. Jeżeli w pliku JPK_V7 znajduje się dokument z kodem MK, po zaimportowaniu na dokumencie w rejestrze VAT zaznaczany jest parametr Metoda kasowa. Na zaimportowanych z pliku JPK_V7 do rejestru VAT dokumentach, w polu Rozliczać w VAT ustawiany jest rok i miesiąc zgodny z okresem za jaki wygenerowany został plik JPK_V7. Dotyczy to metody zwykłej rozliczenia podatku VAT.
Uwaga
Na zaimportowanych dokumentach zostanie prawidłowo ustawiona data rozliczenia w VAT jedynie w bazach, które za dany okres czasu rozliczają VAT metodą zwykłą. Jeśli w bazie docelowej wybrana jest metoda kasowa, wówczas należy ponownie zweryfikować datę uwzględnienia w VAT na poszczególnych dokumentach.

OPT079- Jednolity Plik Kontrolny

Data aktualizacji: 26-11-2023

1 Wstęp

Od 1 lipca 2016 roku weszły w życie przepisy mówiące o konieczności generowania plików JPK dla dużych firm. Firmy małe, średnie oraz mikro udostępniają pliki JPK na każde żądanie organu podatkowego od 1 lipca 2018. Proces udostępnienia pliku rozpoczyna się dopiero po otrzymaniu postanowienia o wszczęciu postępowania od organu podatkowego. Jednolite Pliki Kontrolne są wykorzystywane przez Urzędy Skarbowe celem weryfikacji Ksiąg oraz zapisów na podstawie, których powstały. Obowiązkowe comiesięczne pliki JPK_VAT – w przypadku rejestrów VAT dane przesyłane są obowiązkowo co miesiąc. Dla dużych podatników obowiązek ten istnieje od 1 lipca 2016 roku, natomiast w przypadku małych i średnich firm od 1 stycznia 2017. Mikroprzedsiębiorstwa muszą spełniać ten obowiązek od 1 stycznia 2018. Od 1 października 2020 w miejsce plików JPK_VAT zaczęły obowiązywać pliki JPK_V7 opisane w osobnym biuletynie. Na moment publikacji tego biuletynu zostało przygotowanych i opublikowanych 8 struktur plików dotyczących dokumentów handlowych, kasowo/bankowych oraz księgowych, uwzględniając pliki JPK_V7. Struktury plików JPK znajdują się na poniższej stronie: https://www.gov.pl/web/kas/struktury-jpk. W programie Comarch ERP Optima udostępniona została możliwość eksportu wymaganych danych dla każdego Użytkownika bez względu na wielkość firmy.Prawo eksportu posiadają wyłącznie wybrani operatorzy w programie – ze względu na to aby zabezpieczyć dane przed niepowołanym do nich wglądem przez nieupoważnione osoby.W przypadku zmiany wymaganej struktury plików JPK istnieje możliwość aktualizacji formatów służących do eksportu poprzez pobranie ich z serwerów Comarch w momencie generowania plików.
Uwaga
Funkcjonalność aktualizacji wzorów dokumentu elektronicznego dla plików JPK jest dostępna tylko dla programów na gwarancji oraz w przypadku pracy na najnowszej dostępnej wersji programu Comarch ERP Optima.
Wskazówka
Zachęcamy do obejrzenia filmów instruktażowych prezentujących jak wygenerować Jednolity Plik Kontrolny: Jak złożyć obowiązkowy miesięczny plik JPK_VAT Jak wygenerować plik JPK na wezwanie Urzędu Skarbowego Jak scalić pliki JPK_VAT wygenerowane w innych programach
Wskazówka
Wskazówka
Po kliknięciu w menu JPK na pozycję Informacje o JPK otwierana jest strona pomocy dotycząca Jednolitego Pliku Kontrolnego (JPK) w Comarch ERP Optima.

2 Konfiguracja ustawień związanych z JPK

Aby móc wyeksportować dane, na karcie operatora w Konfiguracji Programu/ Użytkowe/ Operatorzy musi zostać zaznaczony parametr Prawo eksportu plików JPK: Tylko Operator z uprawnieniami administratora może zaznaczyć ten parametr sobie bądź innym Operatorom. Początkowo jedynie operator ADMIN ma ten parametr zaznaczony. Poniżej znajduje się parametr Zmiana atrybutów/kodów JPK na zatw. dok. umożliwiający edycję atrybutów na zatwierdzonej oraz na zaksięgowanej Fakturze Zakupu/Sprzedaży oraz na zaksięgowanym dokumencie w rejestrze VAT. Jest to istotne w związku z przenoszeniem informacji zawartych na atrybutach do plików JPK (dla rejestrów VAT oraz faktur). Parametr może być edytowany tylko przez operatora z uprawnieniami administratora. Dodatkowo w Konfiguracji Stanowiska/ Ogólne/ Jednolity Plik Kontrolny musi zostać wskazany katalog przechowywania plików wymiany, do którego będą zapisywane kopie wysyłanych plików w formacie *.xml: Przy eksporcie Jednolitego Pliku Kontrolnego w ramach wskazanego katalogu tworzony jest podkatalog z nazwą firmy (bazy), więc w przypadku biur rachunkowych dane poszczególnych firm trafiają do własnych katalogów. Nazwy plików określają ich zawartość:
      • dla dokumentów z rejestrów VAT – JPK_VAT_PLN_Data_od_Data_do_Data_i_godzina_utworzenia
      • dla Księgi Handlowej – JPK_KR_ Data_od_Data_do_Data_i_godzina_utworzenia
      • dla Księgi Podatkowej – JPK_PKPIR_ Data_od_Data_do_Data_i_godzina_utworzenia
      • dla ewidencji ryczałtowej – JPK_EWP_Data_od_Data_do_Data_i_godzina_utworzenia
      • dla wyciągów bankowych –JPK_WB_Waluta_Rachunek_bankowy_Data_otwarcia_Data_zamknięcia_Data_i_godzina_utworzenia
      • dla dokumentów handlowych – JPK_FA_Data_od_Data_do_Data_i_godzina_utworzenia
      • dla dokumentów magazynowych – JPK_MAG_Magazyn_Waluta_Data_od_Data_do_Data_i_godzina_utworzenia

3 Przygotowanie i eksport plików JPK – informacje ogólne

Przygotowanie plików JPK i eksport danych odbywa się z poziomu menu JPK/ Pliki JPK . Po wybraniu tej opcji otwierane jest okno Pliki JPK: Wygenerowane pliki od wersji 2017.3.1 zapisywane są w katalogu do przechowywania plików JPK wskazanym w Konfiguracji Stanowiska/ Ogólne/ Jednolity Plik Kontrolny, jak również w bazie danych programu Comarch ERP Optima. Na liście prezentowane są takie informacje, jak: operator wysyłający plik JPK, typ pliku, nazwa pliku, numer korekty, data utworzenia, zakres dat danych zawartych w plikach JPK, czy plik został scalony oraz status pliku JPK. Kolumny Okres od i Okres do wyświetlające zakres dat dla danych zawartych w plikach JPK uzupełnione są dla plików JPK wygenerowanych od wersji 2017.3.1. Dla plików wygenerowanych i wysłanych w poprzednich wersjach programu kolumny będą puste. Kolumna Scalony wyświetla dla plików które zostały połączone wartość T, natomiast dla pozostałych wartość N. Istnieje również możliwość dodania domyślnie ukrytej kolumny Czas pokazującej datę i godzinę utworzenia pliku JPK, jak również kolumny JPK_VAT pokazującej czy plik jest obowiązkowy czy na żądanie (po konwersji z wcześniejszych wersji niż 2018.2.1 wszystkie dotychczasowe pliki JPK_VAT otrzymają status Obowiązkowy).
Uwaga
W związku z funkcjonalnością łączenia plików JPK_VAT i możliwością dodania nowych plików JPK, wszystkie pliki wygenerowane w wersjach programu wcześniejszych niż 2017.3.1 ale nie wysłane, po konwersji nie będą widoczne na liście. Istnieje możliwość dodania tych już wygenerowanych plików na listę plików JPK za pomocą ikony  dostępnej na wstążce programu.
Możliwe jest filtrowanie plików JPK po typie pliku – służy temu pole Typ pliku. Jako wartość tego pola można wybrać opcję –wszystkie- (wówczas widoczne będą wszystkie pliki JPK bez względu na ich typ) lub wybrać konkretny typ plików (np. JPK_VAT). Domyślnie na liście ustawia się typ plików JPK_VAT. W obszarze filtra znajduje się pole Rok umożliwiające wyfiltrowanie plików JPK dotyczących wybranego roku. Istnieje możliwość dodania na listę nowych plików JPK (wygenerowanych z poziomu innych baz Comarch ERP Optima lub w programach innych producentów)  – służy do tego ikona Dodaj plik JPK z dysku na listę dostępna na wstążce programu. Po kliknięciu ikony pojawia się okno wyboru pliku: Na otwartym oknie podpowiada się standardowy folder zapisu dla plików JPK dla firmy (określany w Konfiguracji Stanowiska/ Ogólne/ Jednolity Plik Kontrolny, łącznie z podkatalogiem o nazwie zgodnej z nazwą firmy). Po wskazaniu nowego pliku XML zawierającego plik JPK i kliknięciu Otwórz, plik zapisywany jest do bazy i pojawia się na oknie Pliki JPK. U góry okna Pliki JPK znajdują się odnośniki:

3.1    Przygotowanie plików JPK

  Aby dodać pliki JPK na żądanie należy kliknąć ikonę bądź po rozwinięciu ikony plusa wybrać opcję Pozostałe pliki JPK. Otwierane jest wówczas okno: Okno dodania pozostałych plików JPK może zostać wywołane za pomocą skrótu <Insert>. Na oknie istnieje możliwość wyboru spośród wszystkich pozostałych (oprócz JPK_VAT) 6 grup danych dla plików JPK:
      • Księgi Handlowe (z opcją uwzględnienia zapisów w buforze),
      • Zapisy KPiR (z opcją uwzględnienia zapisów w buforze),
      • Ewidencja ryczałtowa (z opcją uwzględnienia zapisów w buforze),
      • Wyciągi bankowe (z opcją bądź „poszczególnymi wyciągami” bądź „za okres”),
      • Faktury sprzedaży i zakupu (z możliwością wyboru rodzaju dat na dokumentach dla podanego powyżej zakresu dat),
      • Dokumenty magazynowe (z możliwością wskazania czy dokumenty maja być wykazane wg kosztu zakupu czy ceny jednostkowej netto).
Na oknie Przygotowanie pliku JPK znajdują się pola, w których należy określić zakres dat za jaki zostaną wyeksportowane dane. Domyślnie po otwarciu okna podpowiada się zakres dat dla poprzedniego miesiąca w stosunku do daty bieżącej, chociaż może on zostać zmieniony przez Użytkownika. Podany zakres dat nie może być szerszy niż jeden rok kalendarzowy dla zapisów KPiR i ewidencji ryczałtowej. W przypadku wyboru zapisów Księgi Handlowej, zakres dat nie może przekraczać jednego okresu obrachunkowego. Dodatkowo do pliku JPK_KR zostaną wyeksportowane tylko zapisy z bieżącego okresu obrachunkowego. Na oknie należy wskazać urząd skarbowy, do którego JPK ma zostać skierowany. Domyślnie po wejściu na okno przygotowania plików JPK urząd skarbowy pobierany jest z Konfiguracji Firmy/ Dane firmy/ Deklaracje z pola U.S.  (VAT). Jeżeli urząd skarbowy dla deklaracji VAT będzie nieuzupełniony, wówczas US zostanie pobrany z pola U.S. (PIT‑4R, CIT-8). W przypadku kiedy w żadnym z tych 2 pól w Konfiguracji nie został wskazany urząd skarbowy, wówczas przy pierwszym otwarciu okna przygotowania plików JPK pole z urzędem skarbowym będzie puste i Użytkownik przed przygotowaniem pliku JPK będzie musiał wybrać odpowiedni US. Wybrany urząd skarbowy zostanie zapamiętany przy kolejnym otwarciu okna. Na karcie wybranego urzędu skarbowego musi być uzupełniony czterocyfrowy kod urzędu. W przeciwnym razie przygotowanie pliku nie będzie możliwe. Istnieje możliwość wysłania do arkusza kalkulacyjnego danych znajdujących się w generowanych plikach JPK celem łatwiejszego ich przeglądania. Na oknie Pliki JPK znajduje się parametr Podczas eksportu utwórz również pliki MS Excel. Po wygenerowaniu pliku JPK z zaznaczonym powyższym parametrem, w zależności od ustawienia parametru Otwieranie wyeksportowanych plików w menu Widok, nastąpi otwarcie arkusza zawierającego wyeksportowane dane (opcja Otwieraj) bądź wyświetlone zostanie pytanie czy plik otworzyć (opcja Pytaj). Tworzony plik arkusza kalkulacyjnego zawiera arkusz dotyczący danych podatnika, agregatów oraz danych poszczególnych dokumentów.
Uwaga
Do eksportu danych JPK do arkusza MS Excel wymagane jest połączenie z Internetem.
Ikona utworzenia pliku JPK  staje się aktywna po zaznaczeniu co najmniej jednej grupy danych oraz wskazaniu urzędu skarbowego. Podczas eksportu danych do pliku (zarówno pozostałych plików JPK, jak i plików JPK_VAT) następuje weryfikacja poprawności wysyłanych danych poprzez porównanie ze wzorcem dokumentu elektronicznego. Generowany plik jest również weryfikowany pod kątem uzupełnienia pól obowiązkowych.
Uwaga
Występujący w logu podczas generowania plików JPK komunikat:
  • „Nie można sprawdzić poprawności wygenerowanego dokumentu(XML), ponieważ występują problemy z dostępem do serwerów Ministerstwa Finansów. Plik JPK można wysłać, a jego poprawność zostanie sprawdzona przy odbiorze UPO lub wysłać w innym terminie, gdy dostęp do serwerów zostanie przywrócony.
  • Nie można odnaleźć informacji schematu dla elementu…
może wynikać z braku możliwości połączenia się z serwerem http://crd.gov.pl, na którym znajdują się wzorce dokumentu elektronicznego z którymi Comarch ERP Optima porównuje generowany plik JPK. Należy sprawdzić na stanowisku ustawienia programu antywirusowego, zapory sieciowej, a w przypadku korzystania z serwera proxy – dodać wyjątek na ten adres. Komunikat może również wynikać z czasowej niedostępności tego serwera. Należy również zweryfikować możliwość nawiązania komunikacji z adresem www.mf.gov.pl.
Możliwe jest wyłączenie sprawdzania poprawności generowanych plików JPK poprzez odznaczenie parametru Sprawdzaj poprawność plików JPK przed wysłaniem, znajdującego się w Konfiguracji Programu/ Ogólne/ e‑deklaracje/JPK. W przypadku braku danych za okres podany podczas eksportu, pliki JPK nie są tworzone a w logu z przebiegu operacji pojawia się stosowny komunikat. Wyjątkiem są pliki JPK_EWP i JPK_VAT, które są tworzone nawet jeśli za dany okres nie ma zapisów w ewidencji ryczałtowej / rejestrze VAT. Jeżeli w Konfiguracji Stanowiska/ Ogólne/ Jednolity Plik Kontrolny nie ustawiono katalogu dla plików z danymi, wówczas podczas próby przygotowania pliku JPK pojawia się okno z odpowiednim komunikatem. Podczas eksportu danych do nagłówka pozostałych plików JPK przenoszone są następujące informacje (wyjątek: JPK_PKPiR(2) – uwaga poniżej):
      • Kod urzędu skarbowego (uzupełniany z poziomu Ogólne/ Inne/ Urzędy)
      • Zakres dat dla eksportowanych danych
      • Dane identyfikacyjne oraz adres podatnika pobierane z Konfiguracji Firmy/ Dane firmy/ Pieczątka firmy (NIP, Pełna nazwa, REGON, Kod Kraju, Województwo, Powiat, Gmina, Ulica, Nr domu, Nr lokalu, Miejscowość, Kod pocztowy, Poczta); dane pobierane są z najnowszej pieczątki firmy.
Uwaga
W przypadku plików JPK_PKPiR(2) (generowanych za okres od stycznia 2017) pola adresowe podatnika oprócz kodu kraju i miasta nie są już obowiązkowe. W związku z tym podczas generowania pliku JPK_PKPiR(2) nie jest sprawdzane uzupełnienie województwa, powiatu, gminy, nr domu, kodu pocztowego i poczty w Pieczątce firmy (w przypadku pozostałych struktur plików JPK te pola nadal są obowiązkowe i powinny zostać uzupełnione).

Dane te są wymagane przez wzór dokumentu elektronicznego i muszą być uzupełnione w programie przed wysyłką plików JPK.

Uwaga
Jeżeli w Konfiguracji Firmy/ Dane firmy/ Pieczątka firmy numer NIP podatnika jest uzupełniony łącznie z kodem kraju (PL), do plików JPK przenoszone są tylko cyfry z numeru NIP.

3.2 Wysyłka plików JPK

Po rozwinięciu na oknie Pliki JPK ikony Wyślij istnieje możliwość wyboru trzech sposobów podpisania wysyłanych plików JPK:
      • Wyślij podpisem kwalifikowanym,
      • Wyślij podpisem niekwalifikowanym,
      • Wyślij podpisem zaufanym.

Wybranie pierwszej opcji powoduje wywołanie listy zainstalowanych w systemie Windows certyfikatów służących do elektronicznego podpisywania wysyłanych deklaracji oraz plików JPK.

Uwaga
Jeżeli Użytkownik korzysta z podpisu kwalifikowanego (np. Szafir) podpisując nim w programie Comarch ERP Optima deklaracje np. VAT, a pomimo to podczas wysyłania pliku JPK na liście certyfikatów podpis nie jest widoczny, wówczas należy zaktualizować ze strony producenta aplikację do obsługi karty kryptograficznej i zrestartować komputer. Warunkiem widoczności certyfikatu jest jego zainstalowanie w systemie operacyjnym. Certyfikat musi być prawidłowy (zaufany). W celu weryfikacji poprawności certyfikatu należy uruchomić program certmgr.msc. W grupie certyfikatów osobistych należy sprawdzić, czy jest widoczny certyfikat, który ma być wykorzystany do podpisu. Jeżeli go nie ma w tym miejscu, oznacza to że certyfikat nie został zainstalowany w systemie Windows. Po wyświetleniu szczegółów certyfikatu należy na zakładce [Ogólne] upewnić się czy jest on aktualny oraz czy widoczna jest informacja: Masz klucz prywatny, który odpowiada temu certyfikatowi. Dodatkowo na zakładce [Ścieżka certyfikacji] musi być widoczny stan certyfikatu: Ten certyfikat jest prawidłowy – tak jak na poniższych zrzutach ekranu:
Po wybraniu drugiej opcji otwierane jest okno z danymi podatnika pobranymi z Konfiguracji Firmy/ Dane firmy/ VAT, AKC-WW: numerem NIP, imieniem i nazwiskiem oraz datą urodzenia. Na oknie należy uzupełnić kwotę przychodu podatnika za dwa lata wstecz. Domyślnie w tym polu wykazywana jest kwota 0,00.
Uwaga
Podpisywanie plików JPK podpisem niekwalifikowanym możliwe jest jedynie dla plików JPK_VAT dla osób fizycznych. Wysłanie tym sposobem innych typów plików JPK bądź plików JPK_VAT podatników nie będących osobami fizycznymi nie jest możliwe.
Jeżeli podczas wysyłki pliku JPK_VAT podano niewłaściwą kwotę przychodu (podczas odbioru UPO pojawił się błąd o kodzie 403), wówczas plik JPK_VAT uzyskuje z powrotem status Nie wysłano, umożliwiając ponowną jego wysyłkę. W przypadku podpisu niekwalifikowanego nieprawidłowe dane autoryzacyjne nie blokują możliwości kolejnej próby wysyłki pliku JPK_VAT. Możliwe jest ponowne wprowadzenie prawidłowych danych i wysyłka pliku. Korzystając z wysyłki plików JPK_VAT za pomocą podpisu niekwalifikowanego należy upewnić się, że są podane wszystkie wymagane dane. Brak jednej z nich (np. numeru NIP, imienia bądź nazwiska) powoduje wyświetlenie komunikatu: Nieprawidłowy format danych autoryzujących. Po wybraniu trzeciej opcji dla plików o statusie Nie wysłano otwierane jest okno z kreatorem procesu podpisywania pliku JPK podpisem zaufanym: Plik JPK przeznaczony do podpisu za pomocą podpisu zaufanego tworzony jest w katalogu wskazanym w Comarch ERP Optima w Konfiguracji Stanowiska/ Ogólne/ Jednolity Plik Kontrolny w katalogu zgodnym z nazwą firmy w podkatalogu E-PUAP. Informacja o dokładnej ścieżce do pliku znajduje się na oknie Podpisywanie pliku JPK podpisem zaufanym w pierwszym kroku kreatora. Tam również dostępny jest przycisk Skopiuj link do schowka, którego użycie ułatwia wklejenie ścieżki do katalogu, w którym znajduje się przygotowany plik JPK na stronie ePUAP. W drugim kroku należy przejść  na stronę www.epuap.gov.pl/wps/portal W górnej części okna widoczny będzie tekst: Masz firmę? Podpisz JPK_VAT profilem zaufanym. Należy wybrać: Podpisz Podpisem Zaufanym. Należy kliknąć na przycisk Podpisz JPK_VAT: Następnie należy wybrać sposób logowania „profil zaufany”: Należy zalogować się za pomocą hasła lub wskazać odpowiedni bank: Po zalogowaniu należy kliknąć w przycisk Wybierz plik z dysku. Skopiowany w Kroku 1 link należy wkleić w polu Nazwa pliku (np. za pomocą skrótu <CTRL> + <V>). Po wskazaniu pliku z wybranego katalogu rozpocznie się wczytywanie i sprawdzanie pliku. Ze względu na obciążenie serwerów może to potrwać nawet kilka minut. Po prawidłowym wczytaniu pliku JPK_VAT, należy kliknąć na przycisk Podpisz podpisem zaufanym W zależności od wybranej formy weryfikacji, na ekranie pojawi się okno na wpisanie kodu autoryzacyjnego, który jest wysyłany SMS-em bądź na adres mailowy. W sytuacji, gdy podpis zaufany zakładany był za pomocą aplikacji bankowej, proces podpisywania pliku wygląda nieco inaczej. Użytkownik po wyborze opcji Podpisz podpisem zaufanym zobaczy swoje dane i ponownie wybiera Podpisz profilem zaufanym. Po tej operacji pojawi się okno autoryzacji podpisania profilem zaufanym i prośba o zalogowanie i potwierdzenie smsem lub kodem ze zdrapki. Po wykonaniu tych czynności można zapisać na dysku plik JPK_VAT za pomocą opcji Zapisz. W ostatnim kroku kreatora podpisywania pliku JPK podpisem zaufanym w Comarch ERP Optima należy zaimportować podpisany plik JPK klikając na przycisk Wybierz podpisany plik JPK. Po wskazaniu pliku pojawia się komunikat: Czy chcesz teraz wysłać podpisany plik? Wybór opcji Tak powoduje wysłanie pliku JPK i zamknięcie okna z kreatorem podpisywania pliku JPK. Plik na liście otrzymuje status Wysłano/Nie odebrano UPO. Wybór opcji Nie zamyka okno kreatora podpisywania pliku JPK. Plik na liście otrzymuje status Podpisany podpisem zaufanym/Nie wysłano. Usunięcie z listy pliku o tym statusie usuwa plik również z podkatalogu EPUAP. Pliku już podpisanego nie można ponownie podpisać. Po wybraniu opcji Wyślij podpisem zaufanym na pliku o statusie Podpisany podpisem zaufanym /Nie wysłano, następuje automatyczna wysyłka pliku bez konieczności ponownego przechodzenia kreatora podpisywania pliku JPK. Pliku JPK o statusie Podpisany podpisem zaufanym/Nie wysłano nie można wysłać za pomocą podpisu kwalifikowanego. Przy próbie takiej wysyłki pojawia się stosowny komunikat. Plik JPK podpisany podpisem zaufanym może zostać wysłany wyłącznie z komputera, na którym został skierowany do podpisu i podpisany. Równoczesna opcja podpisu i wysyłki pliku JPK podpisem zaufanym możliwa jest dla pojedynczego pliku. Jeżeli zaznaczono kilka plików JPK o statusie Podpisany podpisem zaufanym/Nie wysłano możliwa jest ich zbiorcza wysyłka za pomocą opcji podpisu podpisem zaufanym. Wysyłka pliku JPK za pomocą podpisu zaufanego nie jest dostępna z programu Comarch ERP Optima Biuro Rachunkowe. Na oknie Pliki JPK znajduje się również przycisk  Odbierz służący do odbioru UPO. Aby uniemożliwić nadpisywanie daty odebrania Urzędowego Poświadczenia Odbioru dla plików JPK, nie ma możliwości ponownego pobrania UPO dla plików JPK ze statusem Wysłano/ odebrano UPO. Z poziomu tego okna możliwe jest również podejrzenie pobranego Urzędowego Poświadczenia Odbioru za pomocą ikony  Podgląd UPO lub za pomocą funkcji Zmień dostępnej w menu kontekstowym po kliknięciu prawym przyciskiem myszy na pliku JPK. Wydruk UPO dostępny jest z poziomu listy plików JPK. Wybór opcji  Podgląd pliku znajdującej się na wstążce programu powoduje otwarcie arkusza kalkulacyjnego zawierającego dane znajdujące się w podświetlonym na liście pliku JPK celem ich weryfikacji. Otwarcie arkusza MS Excel możliwe jest również po wywołaniu funkcji Podgląd dokumentu w menu kontekstowym. Jeżeli w katalogu jest zapisany arkusz kalkulacyjny to on jest otwierany, jeśli go nie ma wówczas arkusz jest tworzony. Wygenerowanie bądź dodanie na listę pliku JPK powoduje zapisanie go do bazy firmowej, więc podgląd pliku będzie zawsze możliwy bez względu na stanowisko na którym wygenerowano bądź dodano plik JPK. Możliwe jest również usuwanie zaznaczonych plików JPK za pomocą ikony  Usuń. Aby usunięcie pliku JPK było możliwe, musi on mieć inny status niż Wysłano/nie odebrano UPO lub Wysłano/ odebrano UPO. Usunięcie pliku powoduje usunięcie go z listy plików, z bazy danych oraz z katalogu do przechowywania plików JPK.

4 Księgi Handlowe – JPK_KR

W przypadku zaznaczenia opcji Księgi Handlowe na oknie przygotowania plików JPK istnieje możliwość wskazania, czy mają być eksportowane również zapisy znajdujące się w buforze – parametr Uwzględniaj zapisy w buforze. Domyślnie jest on zaznaczony. W pliku JPK zapisy księgowe znajdujące się w buforze rozróżnione są od zapisów zatwierdzonych poprzez oznaczenie numeru dziennika znacznikiem (b). Podczas eksportu zapisów z Ksiąg Handlowych do plików JPK przenoszone są m.in. następujące dane:
      • Dane nagłówka pliku JPK (opisane w Rozdziale 3.1)
      • Dane dotyczące kont księgowych (Numer konta, Typ, Nazwa, Bilans otwarcia dla konta, Obroty konta za podany okres, Obroty narastająco, Saldo konta) W danych dotyczących kont księgowych w polu OpisZespolu umieszczane jest oznaczenie na podstawie pierwszej cyfry z numeru konta: ■ 0 – Aktywa trwałe, ■ 1 – Środki pieniężne, rachunki bankowe oraz krótkoterminowe aktywa finansowe, ■ 2 – Rozrachunki i roszczenia, ■ 3 – Materiały i towary, ■ 4 – Koszty według rodzajów i ich rozliczenie, ■ 5 – Koszty według typów działalności i ich rozliczenie, ■ 6 – Produkty i rozliczenia międzyokresowe, ■ 7 – Przychody i koszty związane z ich osiąganiem, ■ 8 – Kapitały (fundusz) własne, fundusze specjalne, rezerwy i wynik finansowy, ■ 9 – Konta zespołu 9. Jeżeli numer konta nie zaczyna się od cyfry, zarówno do pola KodZespolu jak i OpisZespolu przenoszony jest pierwszy znak z numeru konta.
      • Dane dotyczące nagłówków zapisów księgowych:
        • Nr dziennika cząstkowego
        • Nazwa dziennika
        • Numer dokumentu
        • Data księgowania
        • Data Operacji
        • Data wystawienia
        • Akronim operatora (z pola Zmodyfikował)
        • Opis operacji (wartość wymagana, w przypadku nieuzupełnienia opisu na dekrecie do pliku przenoszona jest wartość BRAK)
      • Dane dotyczące pozycji zapisów księgowych:
        • Numery kont Wn i Ma
        • Symbol waluty na pozycji dekretu
        • Kwota w PLN i w walucie
        • Opis na pozycji dekretu (niewymagany, może być nieuzupełniony)
Dane te są wymagane przez wzór dokumentu elektronicznego i muszą być uzupełnione w programie przed wysyłką plików JPK. Podczas generowania plików JPK_KR w przypadku nieuzupełnionego opisu operacji na zapisie księgowym bądź nieuzupełnionej nazwy konta księgowego, w tworzonym pliku JPK w odpowiednich polach wstawione zostanie słowo BRAK, a stosowna informacja pojawi się w logu z tworzenia pliku z informacją dla Użytkownika o konieczności weryfikacji przyczyny braku tych danych. W przypadku braku zapisów mających daty księgowania za podany podczas eksportu okres, pliki JPK nie są tworzone.

5 Zapisy KPiR – JPK_PKPIR

W przypadku zaznaczenia opcji Zapisy KPiR na oknie przygotowania plików JPK istnieje możliwość wskazania, czy mają być eksportowane również zapisy znajdujące się w buforze – parametr Uwzględniaj zapisy w buforze. Domyślnie jest on zaznaczony. Pliki JPK_PKPiR dla zapisów z księgi podatkowej generowane za okres od stycznia 2017 roku tworzone są nowym wzorcem dokumentu elektronicznego – JPK_PKPiR(2). Zapisy za wcześniejsze okresy są wysyłane poprzednią wersją wzorca. Podczas eksportu zapisów KPiR do plików JPK przenoszone są m.in. następujące dane:
      • Dane nagłówka pliku JPK (opisane w Rozdziale 3.1)
      • Wartość spisu z natury na początek roku podatkowego (wartość z kolumny 15 spisu za miesiąc styczeń roku, z którego dane są eksportowane)
      • Wartość spisu z natury na koniec roku podatkowego (wartość z kolumny 15 spisu za miesiąc grudzień roku, z którego dane są eksportowane)
      • Liczba porządkowa zapisu KPiR
      • Data operacji gospodarczej
      • Numer dowodu
      • Nazwa podmiotu z zapisu KPiR – pole obowiązkowe
      • Dane adresowe podmiotu z zapisu KPiR (Miasto, Ulica, Nr domu/lokalu, Kod pocztowy) – pola obowiązkowe
      • Opis z zapisu KPiR – pole obowiązkowe
      • Kwoty dla poszczególnych kolumn od 7 do 16 na zapisie KPiR
      • Wartość z kolumny Uwagi na zapisie KPiR (pole opcjonalne)
Dane te są wymagane przez wzór dokumentu elektronicznego i muszą być uzupełnione w programie przed wysyłką plików JPK. W przypadku nieuzupełnienia wymaganych pól (Nazwa kontrahenta, Adres kontrahenta, Opis operacji) w pliku umieszczana jest wartość BRAK. Podczas generowania plików JPK_PKPIR w przypadku nieuzupełnionych pól na zapisie księgowym: Nazwa podmiotu, Dane adresowe podmiotu oraz Opis, w tworzonym pliku JPK w odpowiednich polach wstawione zostanie słowo BRAK, a stosowna informacja pojawi się w logu z tworzenia pliku z informacją dla Użytkownika o konieczności weryfikacji przyczyny braku tych danych. Zaznaczenie parametru Korekta nie ma wpływu na generowanie pliku JPK_PKPiR – plik zawsze wysyłany jest jako pierwotnie złożony. Zapisy skreślone nie są eksportowane do plików JPK. W przypadku braku zapisów mających datę księgowania za podany podczas przygotowania plików okres, pliki JPK nie są tworzone.
Uwaga
W związku z wymaganiami wzoru dokumentu elektronicznego, należy uzupełnić spis z natury na koniec roku (nawet jeśli spis na koniec roku jest równy spisowi na początek roku). Jest to niezbędne aby został prawidłowo wyliczony dochód w pliku JPK podczas eksportu danych za cały rok.

6 Ewidencja ryczałtowa – JPK_EWP

W przypadku zaznaczenia opcji Ewidencja ryczałtowa na oknie przygotowania plików JPK istnieje możliwość wskazania, czy mają być eksportowane również zapisy znajdujące się w buforze – parametr Uwzględniaj zapisy w buforze. Domyślnie jest on zaznaczony. W przypadku składania pliku za okresy od 1 stycznia 2022 roku obowiązuje struktura pliku JPK_EWP(3). Za okresy wcześniejsze obowiązują pliki JPK_EWP(2) (rok 2021) i JPK_EWP(1) (lata wcześniejsze). W przypadku pliku JPK_EWP(3) obok uwzględnienia stawek ryczałtu 14% i 12% plik ten obejmuje wykaz środków trwałych i wartości niematerialnych i prawnych. Do pliku przenoszone są zapisy kart środków trwałych i wartości niematerialnych i prawnych z podstawowymi informacjami, m.in. o dacie przyjęcia do używania, numerze KŚT czy wartości początkowej i zaktualizowanej, bez informacji o dokonanych odpisach amortyzacyjnych. Do pliku nie są przenoszone informacje o środkach trwałych w budowie, jak również środkach zbytych bądź zlikwidowanych przed okresem, za który sporządzany jest plik. Nie są również wykazywane środki trwałe z datą przyjęcia do użytkowania późniejszą niż okres, za jaki plik jest sporządzany. Środki trwałe całkowicie zamortyzowane oraz z zerową wartością są przenoszone do pliku JPK_EWP(3). Jedną z wymaganych informacji dla środków trwałych wykazywanych w pliku JPK_EWP(3) jest numer dokumentu zakupu. W programie na karcie środka trwałego na zakładce [Dokumenty] można wskazać więcej niż jeden dokument zakupu. W takim przypadku do pliku przenoszony jest ostatni (najmłodszy) dokument. Jeżeli dokument zakupu na karcie środka trwałego nie jest wskazany, wówczas podczas generowania pliku pojawia się komunikat: „Element tns:KW_5.Element element 'Wykaz’ w przestrzeni nazw 'http://jpk.mf.gov.pl/wzor/2022/02/01/02011/’ ma nieprawidłowy element podrzędny element 'KW_5′ w przestrzeni nazw 'http://jpk.mf.gov.pl/wzor/2022/02/01/02011/’. Lista oczekiwanych możliwych elementów: element 'KW_4′ w przestrzeni nazw 'http://jpk.mf.gov.pl/wzor/2022/02/01/02011/’.’ Należy wówczas dodać na zakładce [Dokumenty] na karcie środka trwałego odpowiedni numer dokumentu zakupu. Numer może zostać uzupełniony ręcznie, bez wskazania dokumentu w Rejestrze zakupów VAT lub Ewidencji dodatkowej kosztów (opcja: Bez wskazania dokumentu). Taka operacja jest możliwa pod warunkiem, że środek trwały nie posiada wygenerowanych odpisów amortyzacyjnych. Jeżeli takie odpisy już są, wówczas możliwe jest wskazanie na karcie środka trwałego na zakładce [Atrybuty] atrybutu o kodzie DOWÓD_ZAKUPU_EWP i wpisanie jako wartości tego atrybutu numeru dokumentu zakupu. Inną informacją przenoszoną do pliku JPK_EWP(3) jest numer Klasyfikacji Środków Trwałych. W przypadku kiedy nie jest on uzupełniony, podczas generowania pliku pojawia się informacja: „Na środku trwałym/wnip [NAZWA] w polu KW_6 (KŚT) zapisano BRAK. Zweryfikuj poprawność.” Wówczas Użytkownik powinien zweryfikować czy faktycznie w tym przypadku brak uzupełnionego numeru KŚT jest poprawną sytuacją (np. w przypadku wartości niematerialnych i prawnych dla których ten numer nie jest uzupełniany) czy jednak należy uzupełnić dane na karcie środka trwałego i ponowić generowanie pliku JPK_EWP(3). Podczas eksportu ewidencji ryczałtowej do plików JPK przenoszone są m.in. następujące dane:
      • Dane nagłówka pliku JPK (opisane w Rozdziale 3.1)
      • Liczba porządkowa zapisu w ewidencji
      • Data wpisu do ewidencji
      • Data uzyskania przychodu
      • Numer dokumentu
      • Kwoty dla poszczególnych stawek
      • Wykaz środków trwałych i wartości niematerialnych i prawnych (pliki JPK_EWP za okresy od 1 stycznia 2022)
Dane te są wymagane przez wzór dokumentu elektronicznego i muszą być uzupełnione w programie przed wysyłką plików JPK. Zapisy skreślone nie są eksportowane do plików JPK. Nie są również przesyłane zapisy związane z ewidencją produktów rolnych (2%).

7 Wyciągi bankowe – JPK_WB

W przypadku wybrania opcji Wyciągi bankowe na oknie przygotowania plików JPK istnieje możliwość określenia w jaki sposób mają być wysyłane dane. Domyślnie zaznaczona opcja poszczególnymi wyciągami spowoduje wygenerowanie tyle plików JPK ile było raportów bankowych w podanym zakresie dat. Dla każdego rejestru bankowego będą generowane oddzielne pliki dla każdego wyciągu. W przypadku kiedy wyciągi będą za inny okres niż miesięczny i ten okres nie będzie się pokrywał z zakresem dat wskazanym przed eksportem, wówczas wyeksportowane zostaną wszystkie wyciągi, które będą miały daty otwarcia bądź zamknięcia zawierające się w tym zakresie dat, nawet jeżeli tylko część dni z wyciągu będzie zawierać się w podanym zakresie dat. Wybór opcji za okres spowoduje wygenerowanie tyle plików ile jest rejestrów o typie Konto bankowe. Dla każdego rejestru bankowego zostanie utworzony jeden plik za cały zakres dat. Na oknie generowania plików JPK dla wyciągów bankowych istnieje możliwość wyboru rejestru bankowego, z którego będą eksportowane operacje do pliku JPK. W polu Rachunek bankowy można wybrać czy mają być eksportowane zapisy z wszystkich, czy z jednego wybranego rejestru bankowego. Eksportowane są tylko wyciągi zawierające zapisy (nie są eksportowane puste raporty). Eksportowane są również otwarte raporty. Podczas eksportu wyciągów bankowych do plików JPK przenoszone są m.in. następujące dane:
      • Dane nagłówka pliku JPK (opisane w Rozdziale 3.1)
      • Numer rachunku wpisany na formularzu rejestru kasowego/bankowego
      • Symbol waluty rachunku bankowego
      • Liczba porządkowa zapisu K/B
      • Data zapisu K/B
      • Nazwa podmiotu z zapisu K/B
      • Opis z zapisu K/B (przenoszonych jest pierwszych 256 znaków)
      • Kwota operacji
Numer rachunku bankowego określany na formularzu rejestru bankowego musi być w formacie IBAN. Zgodnie wymaganiami Ministerstwa Finansów, tylko takie rachunki zostaną wyeksportowane za pomocą pliku JPK_WB. W sytuacji kiedy w systemie numer rachunku zapisany jest jako numer w standardzie IBAN jednak bez kodu kraju PL, kod ten jest automatycznie dodawany podczas wysyłki do pliku. Dane te są wymagane przez wzór dokumentu elektronicznego i muszą być uzupełnione w programie przed wysyłką plików JPK.

8 Faktury – JPK_FA

Do pliku JPK wysyłane są Faktury Sprzedaży, Faktury Zakupu, Faktury Zaliczkowe a także wystawione do nich dokumenty korygujące. Aby dokumenty były uwzględnione w pliku JPK, muszą zostać wcześniej zatwierdzone. Faktury Zaliczkowe, Faktury Sprzedaży oraz korekty do Faktur wystawione w procedurze OSS są uwzględniane w pliku JPK_FA. Do pliku JPK_FA przenoszone są transakcje w różnych walutach. Na dokumentach walutowych wartość netto, kwota VAT oraz wartość brutto wykazywane są w walucie dokumentu. W przypadku wartości VAT, dla dokumentów walutowych przeliczana jest ona na złotówki. Podczas generowania plików JPK_FA istnieje możliwość wyboru waluty. Jeśli w bazie istnieją waluty nieaktywne, wówczas na liście takie waluty widoczne są w kolorze czerwonym. Domyślne ustawienie pola pozwala na eksport dokumentów we wszystkich walutach.
      • JPK_FA nie musi zawierać faktur zakupowych, natomiast struktura JPK_ VAT zawiera faktury zakupowe, z których podatnikowi przysługuje prawo do zmniejszenia podatku należnego,
      • Faktury, na których oprócz standardowych stawek pojawiają się też stawki NP. lub zw dla zakupów będą trafiały do pliku JPK_FA w całości, a na deklarację VAT-7 (w tym do pliku JPK_VAT) bez pozycji w tych stawkach,
      • JPK_FA nie zawiera sprzedaży detalicznej (paragonów), transakcje te natomiast wykazywane są w pliku JPK_VAT,
      • Korekta faktury in minus, której potwierdzenia odbioru od kupującego nie uzyskał podatnik – w pliku JPK_FA zostanie wykazana, natomiast w strukturze JPK_VAT pojawi się wówczas, gdy spełnione zostaną dodatkowe przesłanki dające podatnikowi prawo do obniżenia podstawy opodatkowania,
      • Faktura z oznaczeniem „metoda kasowa” jest wykazana w pliku JPK_VAT w okresie, w którym została ona zapłacona w całości lub części (odliczenie VAT dotyczy wyłącznie tej części). Dokument ten natomiast w pliku JPK_FA będzie wykazywany w całości niezależnie od terminu zapłaty.
Podczas eksportu Faktur do plików JPK przenoszone są m.in. następujące dane:
      • Dane nagłówka pliku JPK (opisane w Rozdziale 3.1)
      • Dane dotyczące nagłówków faktur:
        • Waluta dokumentu
        • Data wystawienia dokumentu
        • Numer dokumentu (dla Faktur Zakupu numer obcy)
        • Nazwa i dane adresowe Nabywcy (dla Faktur Zakupu dane Nabywcy pobierane z Konfiguracji Firmy/ Dane firmy/ Pieczątka firmy
        • Nazwa i dane adresowe sprzedawcy (dla Faktur Zakupu dane Dostawcy)
        • Numer NIP sprzedawcy
        • Numer NIP nabywcy
        • Data zakończenia transakcji (dla Faktur Sprzedaży – data sprzedaży, dla Faktur Zakupu – data zakupu, dla Faktur Zaliczkowych – data wystawienia, dokumenty korygujące – data korekty)
        • Suma kwot netto sprzedaży w danej stawce w walucie dokumentu
        • Kwota podatku VAT w danej stawce w walucie dokumentu
        • W przypadku dokumentów walutowych Kwota podatku VAT przeliczona na złotówki
        • Wartość brutto (kwota netto + wartość podatku VAT) w walucie dokumentu
        • Informacja czy na transakcji wystąpił Mechanizm podzielonej płatności
        • Rodzaj dokumentu (dla Faktur – VAT, dla Faktur Zaliczkowych oraz Końcowych rozliczających zaliczkę – VAT, dla dokumentów korygujących – KOREKTA)
      • W przypadku Faktur VAT Marża uzupełniane jest pole dotyczące procedury marży
      • W przypadku dokumentów korygujących przenoszone są również następujące dane:
        • Cena (jako różnica pomiędzy ceną pierwotną i korektą), wartości oraz ilości zgodnie z danymi na korekcie. Korekty (wartości) do Faktur Zaliczkowych są uwzględniane w pliku w analogicznej formie jak korekty wartości wystawione do zwykłej Faktury Sprzedaży.
        • Przyczyna korekty. Na potrzeby generowania pliku JPK, dla dokumentów korygujących wprowadzono możliwość zmiany przyczyny korekty na zatwierdzonych dokumentach w module Handel / Faktury. Operator może dokonywać takich zmian, jeśli na jego karcie w Konfiguracji/Program/Użytkowe/Operatorzy na zakładce [Parametry] zostanie zaznaczony parametr Zmiana opisu i osoby odbierającej na dok.
        • Numer faktury korygowanej (dla Faktur Zakupu numer obcy korygowanego dokumentu)           W przypadku Korekty Zbiorczej/Rabat jeśli korekta dotyczy większej ilości dokumentów to w pole: Numer faktury korygowanej przenoszony jest opis „Korekta zbiorcza”.
        • Dla dokumentu Korekta Zbiorcza/Rabat przenoszona jest data sprzedaży od – do, czyli okres, do którego odnosi się udzielony rabat (data od – najniższa data sprzedaży, data do – najwyższa data sprzedaży Faktury, której dotyczy korekta). W przypadku pozostałych rodzajów korekt w polu wskazana jest data korekty od – do.
        • Na dokumencie Korekta Zbiorcza/Rabat nie jest ujęta lista towarów, ale wartość sprzedaży za dany okres w poszczególnych stawkach VAT. W związku z tym, w pliku JPK w części dotyczącej szczegółów pozycji z faktur, wartość korekty dla każdej stawki VAT będzie uwzględniona jako osobna pozycja. Ponadto, nie będzie tutaj uzupełniana nazwa towaru / usługi, a pola dotyczące jednostki miary oraz ilości będą uzupełniane wartościami „szt” oraz „1”.
        • W przypadku korekty stawki VAT, jeżeli korekta liczona jest od wartości brutto, cena jednostkowa netto ani wartość netto nie są uzupełniane w pliku, natomiast w polach dotyczących ceny i wartości brutto wpisywane jest 0. Gdy korekta stawki VAT liczona jest od wartości netto, pola dotyczące ceny i wartości brutto nie są uzupełniane, natomiast w polach dotyczące ceny i wartości netto wpisywane jest 0.
      • W przypadku Faktur Zaliczkowych przenoszone są również następujące dane:
        • Otrzymana kwota zapłaty
        • Kwota podatku od tej zapłaty
        • W przypadku kilku Faktur zaliczkowych – Numer Faktury Zaliczkowej
      • Dane podsumowujące listę faktur – sumy kontrolne, gdzie uwzględnione są dane:
        • Liczba faktur w pliku
        • Łączna wartość kwot brutto faktur w pliku
      • Szczegółowe zestawienie pozycji faktur w pliku
        • Numer dokumentu (dla Faktur Zakupu numer obcy)
        • Nazwa towaru lub usługi
        • Jednostka miary z dokumentu
        • Ilość produktu w jednostce z dokumentu
        • Cena jednostkowa netto towaru w walucie dokumentu
        • Cena jednostkowa brutto towaru w walucie dokumentu
        • Wartość sprzedaży netto
        • Wartość sprzedaży brutto
        • Stawka podatku
      • Dane podsumowujące listę wierszy faktur – sumy kontrolne, gdzie uwzględnione są dane:
        • Suma wszystkich wierszy – elementów z faktur w pliku
        • Łączna wartość netto wszystkich wierszy – elementów z faktur w pliku bez względu na walutę
      • Dane dotyczące Zamówienia
        • Numer Faktury Zaliczkowej
        • Wartość zamówienia – wartość brutto Faktury Pro Forma
      • Szczegółowe pozycje dotyczące zamówienia (Faktury Pro Forma)
        • Nazwa towaru/ usługi
        • Jednostka miary
        • Ilość towaru/ usługi
        • Cena jednostkowa netto
        • Wartość pozycji netto
        • Kwota podatku pozycji
        • Stawka podatku pozycji
      • Dane podsumowujące listę zamówień – sumy kontrolne:
        • Liczba zamówień
        • Łączna wartość kolumny: Wartość zamówienia w okresie, którego dotyczy JPK_FA
W przypadku, gdy w Konfiguracji Firmy/ Dane firmy/ Pieczątka firmy – jednostka samorządowa dodana została pieczątka firmy z zakresem dat obejmującym datę wystawienia dokumentu, wówczas do pliku JPK_FA dla faktur sprzedaży jako dane sprzedawcy, a dla zakupu jako dane nabywcy przenoszone są dane z tej pieczątki firmy dla jednostki samorządowej. Dotyczy zarówno dokumentów wystawianych w module Handel/Faktury jak i w Rejestrze VAT. W pliku JPK_FA nie są uwzględniane informacje o kaucjach. Jeżeli zatem na dokumentach FA lub FZ, pobranych do pliku występowały pozycje związane z opakowaniami kaucjonowanymi, dane dotyczące kwot kaucji nie będą zaczytane do pliku JPK. Dla Faktur zaliczkowych, do pliku JPK przenoszone są dane zgodnie z wartościami na Fakturze Zaliczkowej. Wartości w poszczególnych stawkach VAT oraz wartość brutto zaliczki. Do pliku nie są przenoszone  informacje o pozycjach z dokumentu gdyż mają one swoje odzwierciedlenie w sekcji Zamówienie. Dla Faktur Finalnych, do pliku JPK przenoszone są dane zgodnie z wartościami na Fakturze Finalnej. Wartości w poszczególnych stawkach VAT oraz wartość brutto dokumentu ogółem (wartość z faktury pomniejszona o kwotę użytych zaliczek), są więc przeniesione z Faktury Finalnej. Również w części dotyczącej poszczególnych pozycji z dokumentu, w pliku uwzględniane są kwoty i ilości zgodne z fakturą finalną. W celu wykazywania wartości w odpowiednich polach w plikach JPK, dla faktur wprowadzone zostały następujące atrybuty dla dokumentów handlowych:
      • SAMOFAKTUROWANIE (faktury wystawiane metodą samofakturowania) – atrybut o typie tekst bez domyślnej wartości, atrybut należy dodać na dokument wystawiony metodą samofakturowania, aby taki dokument został poprawnie zarejestrowany w pliku JPK
      • POLSKA USTAWA (przyczyna zastosowania zwolnienia na podstawie Art. 43 ust. 1 ustawy o VAT) – atrybut o typie lista, przed użyciem atrybutu należy ręcznie uzupełnić wartości listy, wpisując który punkt z ustawy daje podstawę do zwolnienia
      • DYREKTYWA UNIJNA (przyczyna zastosowania zwolnienia na mocy artykułu 141 dyrektywy 2006/112/WE) – atrybut o typie lista, przyjmuje wartość: Faktura WE uproszczona na mocy artykułu 141 dyrektywy 2006/112/WE
      • INNE ZWOLNIENIA (inna przyczyna zastosowania zwolnienia)
      • FA NA RZECZ DŁUŻNIKA (faktura wystawiona w imieniu, na rzecz dłużnika; jako wartość atrybutu należy wprowadzić kod kontrahenta, który jest organem egzekucyjnym lub komornikiem) – w bazie danych należy założyć kartę kontrahenta dla komornika lub dla organu egzekucyjnego, który będzie wystawiał faktury w imieniu i na rzecz dłużnika. Na karcie kontrahenta należy uzupełnić pola Kod, Nazwa oraz dane adresowe. Dane te są wymagane, ponieważ są one przenoszone do pliku JPK. Kod takiego kontrahenta należy następnie wprowadzić na listę wartości atrybutu. Jego dane zostaną wówczas automatycznie przeniesione do pliku JPK. Jeśli na listę zostanie wprowadzony niepoprawny kod kontrahenta, np. kod kontrahenta, którego nie ma w bazie, pola w pliku dotyczące organu egzekucyjnego lub komornika nie zostaną uzupełnione.
      • PRZEDSTAWICIEL PODAT (faktura wystawiona w imieniu, na rzecz podatnika; jako wartość atrybutu należy wprowadzić kod kontrahenta, który jest przedstawicielem podatkowym) – w bazie danych należy założyć kartę kontrahenta dla przedstawiciela podatkowego, który będzie wystawiał faktury w imieniu i na rzecz podatnika. Na karcie kontrahenta należy uzupełnić pola Kod, Nazwa, dane adresowe oraz numer NIP. Dane te są wymagane, ponieważ są one przenoszone do pliku JPK. Kod takiego kontrahenta należy następnie wprowadzić na listę wartości atrybutu. Jego dane zostaną wówczas automatycznie przeniesione do pliku JPK. Jeśli na listę zostanie wprowadzony niepoprawny kod kontrahenta, np. kod kontrahenta, którego nie ma w bazie, pola w pliku dotyczące przedstawiciela podatkowego nie zostaną uzupełnione.
      • DATA DOPUSZCZ. POJ (data dopuszczenia nowego środka transportu do użytku) – atrybut o typie data, bez domyślnej wartości. Użytkownik uzupełnia datę dopuszczenia nowego środka transportu do użytku.
      • PRZEBIEG POJAZDU (przebieg pojazdu – w przypadku pojazdów lądowych) – atrybut o typie liczba, bez domyślnej wartości. Użytkownik uzupełnia przebieg pojazdu – w przypadku pojazdów lądowych
      • LICZBA GODZ. UŻYW (liczba godzin roboczych używania nowego środka transportu – w przypadku jednostek pływających oraz statków powietrznych) – atrybut o typie liczba, bez domyślnej wartości. Użytkownik uzupełnia liczbę godzin roboczych używania nowego środka transportu.
Wymienione atrybuty należy w razie potrzeby dodać na dokumencie handlowym na zakładce [Atrybuty] w sekcji JPK. W tej sekcji można wskazać atrybut widoczny na liście atrybutów (Ogólne/ Atrybuty) na zakładce [JPK], który ma zaznaczony parametr JPK_FA: FA. Atrybut z zaznaczonym parametrem JPK_FA: FA oraz dodatkowo z parametrem przenosić na transakcje zostanie automatycznie dodany na każdym nowo dodawanym dokumencie handlowym. Na liście Faktur Sprzedaży możliwy jest wybór dodatkowych kolumn odpowiadających atrybutom wykorzystywanym w Jednolitym Pliku Kontrolnym. Podczas księgowania faktur z modułu Handel/Faktury z wybranymi atrybutami JPK do rejestrów VAT, zostaną one przeniesione na dokument w rejestrze VAT do grupy atrybutów JPK_FA pod warunkiem, że będą mieć zaznaczony parametr kopiować przy księgowaniu do rejestru VAT. Przeniesione w ten sposób atrybuty typu JPK_FA będą widoczne na dokumentach w rejestrze VAT nawet jeśli parametr JPK_FA na dokumencie w rejestrze VAT nie będzie zaznaczony. Powyższe atrybuty mogą być również wykorzystywane na dokumentach w rejestrach VAT dla np. faktur kosztowych. Warunkiem, aby dokumenty wprowadzone bezpośrednio do Rejestrów VAT zostały wyeksportowane do plików JPK, jest zaznaczenie na nich parametru JPK_FA. Parametr ten został dodany na dokumentach w Rejestrach VAT Zakupu i Sprzedaży w prawej górnej części okna. W szczególności dotyczy on dokumentów kosztowych, które nie mają odzwierciedlenia w module Handel. Podczas ręcznego dodawania dokumentów do Rejestrów VAT sprzedaży parametr jest automatycznie zaznaczany. Wyjątek stanowią dowody wewnętrzne, dla których parametr nie zaznacza się samoczynnie. Od wersji Comarch ERP Optima 2017.1.1. na ręcznie dodawanych dokumentach w rejestrze VAT zakupu parametr JPK_FA nie jest automatycznie zaznaczany ponieważ do pliku JPK_FA nie ma obowiązku eksportu faktur zakupowych. Dokumenty przeniesione z modułu Handel /Faktury, jak również zaimportowane z pliku VAT_R lub za pomocą Comarch ERP Migrator nie będą miały tego parametru zaznaczonego. Parametr nie będzie również zaznaczany dla istniejących dokumentów podczas konwersji baz danych z poprzednich wersji. Parametr JPK_FA jest przenoszony dla dokumentów zaimportowanych pracą rozproszoną pod warunkiem, eksport odbywa się z rejestrów VAT i na dokumentach w rejestrze VAT w bazie źródłowej parametr JPK_FA jest zaznaczony. Parametr JPK_FA możliwy jest do zaznaczenia również w przypadku dokumentów zaksięgowanych lub posiadających predekretację. Dodatkowo dla dokumentów wprowadzanych bezpośrednio w Rejestrze VAT, z racji braku odpowiednich informacji na dokumencie, wprowadzone zostały poniższe atrybuty:
      • FAVAT MARŻA (wybór odpowiedniej procedury marży – wybierany w przypadku rozliczenia marży) ‑ atrybut typu lista. W programie dostępne są następujące pozycje listy (z możliwością edycji): 1 – Procedura marży dla biur podróży, 2 – Procedura marży – towary używane, 3 – Procedura marży – dzieła sztuki, 4 – Procedura marży – przedmioty kolekcjonerskie i antyki.
      • FA ZALICZKOWA (czy dokument jest fakturą zaliczkową – wybierany w przypadku faktur zaliczkowych) ‑ atrybut o typie lista, z domyślną wartością TAK
      • PRZYCZYNA KOREKTY (wybierany w przypadku faktury korygującej) – atrybut o typie lista. W programie dostępne są następujące pozycje listy (z możliwością edycji): 1 – korekta ilości, 2 – korekta wartości/ceny, 3 – korekta stawki VAT, 4 – korekta zbiorcza
      • OKRES KOREKTY OD (korekta za okres: od) – atrybut o typie data
      • OKRES KOREKTY DO (korekta za okres: do) – atrybut o typie data
Wymienione powyżej atrybuty należy dodać na dokumencie w rejestrze VAT na zakładce [JPK] w sekcji JPK_FA. W tej sekcji można wskazać atrybut widoczny na liście atrybutów (Ogólne/ Atrybuty) na zakładce [JPK], który ma zaznaczony parametr JPK_FA: VAT. Warunkiem jest, aby na dokumencie w rejestrze VAT był zaznaczony parametr JPK_FA. W przeciwnym wypadku jeśli parametr jest nie zaznaczony, na zakładce [JPK] w sekcji JPK_FA nie będzie możliwości wybrania tego typu atrybutów. Dla dokumentów wprowadzonych do rejestru VAT i eksportowanych do pliku JPK_FA,  nazwa towaru pobierana jest z pola Opis na pozycji dokumentu, a w przypadku jego nie uzupełnienia, z kolumny Rodzaj. Jeżeli chodzi o ilość towaru/usługi oraz jednostkę miary – w takim przypadku w pliku JPK_FA przyjmowane są wartości domyślne, czyli 1 szt. W przypadku kiedy dane do pliku JPK_FA pobierane są z rejestru VAT i na dokumencie w walucie obcej zaznaczony jest parametr Inny kurs do księgowania, wówczas do pliku JPK_FA pobierane są kwoty wg kursu do VAT. W przypadku wprowadzania do Rejestru VAT dokumentu korygującego, oprócz zaznaczenia na zakładce [Ogólne] parametru Korekta i wprowadzeniu numeru dokumentu korygowanego, należy dodać atrybut PRZYCZYNA KOREKTY. Daty okresu korekty pobierane są z atrybutów OKRES KOREKTY OD oraz OKRES KOREKTY DO, a w przypadku ich braku – z pola Data wystawienia.
Uwaga
Dodanie na dokumentach odpowiednich atrybutów i uzupełnienie ich wartości, jest konieczne aby w pliku JPK zarejestrować dodatkowe informacje dotyczące szczególnych warunków transakcji.

9 Dokumenty magazynowe – JPK_MAG

Do pliku JPK_MAG wysyłane są Przyjęcia Zewnętrzne, Wydania Zewnętrzne, Rozchody Wewnętrzne oraz Przesunięcia Międzymagazynowe, a także wygenerowane do tych dokumentów korekty. Aby dokumenty zostały zaczytane do pliku, muszą być wcześniej zatwierdzone. Do pliku nie są przenoszone dokumenty anulowane ani WZKK. Wydania Zewnętrzne oraz korekty do WZ wystawione w procedurze OSS są uwzględniane w pliku JPK_MAG. Pliki JPK_MAG generowane są osobno dla każdego magazynu w bazie i każdej waluty, jeżeli dokument generowany jest z cenami z dokumentu. Wartości w tych plikach wykazywane są w walucie, w jakiej zostały wystawione dokumenty. Wybór waluty możliwy jest gdy zostanie wybrana cena jednostkowa netto, w przypadku kosztu zakupu wszystkie wartości w pliku są wykazywane w walucie PLN. Jeśli w bazie istnieją waluty nieaktywne, wówczas na liście takie waluty widoczne są w kolorze czerwonym. Domyślne ustawienie pola pozwala na eksport dokumentów we wszystkich walutach. Po wyborze konkretnej waluty tworzony jest plik zawierający tylko dokumenty w tej walucie. Na oknie generowania plików JPK istnieje również możliwość wyboru magazynu. Jeśli w bazie istnieją magazyny nieaktywne, wówczas na liście wyboru magazynu widoczne są w kolorze czerwonym. Domyślne ustawienie pola pozwala na eksport dokumentów ze wszystkich magazynów.  Po wyborze konkretnego magazynu tworzony będzie plik tylko z dokumentami z tego magazynu. Podczas eksportu dokumentów magazynowych do plików JPK przenoszone są m.in. następujące dane: Następnie dla każdego typu dokumentu przenoszone są dane dotyczące wartości całego dokumentu, szczegóły pozycji oraz wiersz sumy kontrolnej ilości dokumentów danego typu i ich łącznej wartości. Dla dokumentów PZ:
      • Dane wartości dokumentu uwzględniają:
        • Numer obcy
        • Data wystawienia
        • Wartość netto dokumentu
        • Data zakupu
        • Dostawca towaru
        • Numer obcy dokumentu handlowego
        • Data wystawienia Faktury Zakupu powiązanej z PZ
      • Dane dotyczące elementów uwzględniają:
        • Numer obcy
        • Kod towaru / usługi
        • Nazwa towaru / usługi
        • Ilość przyjęta w jednostce miary z dokumentu
        • Jednostka miary z dokumentu
        • Cena netto towaru / usługi
        • Wartość netto
      • Wiersz sumy kontrolnej, gdzie uwzględniono:
        • Liczbę dokumentów PZ w pliku
        • Wartość netto dokumentów PZ w pliku
Dla dokumentów WZ:
      • Dane wartości dokumentu uwzględniają:
        • Numer dokumentu
        • Data wystawienia
        • Wartość netto dokumentu
        • Data wydania WZ
        • Nazwa odbiorcy towaru
        • Numer faktury do WZ
        • Data wystawienia Faktury Sprzedaży powiązanej z WZ
      • Dane dotyczące elementów uwzględniają:
        • Numer dokumentu WZ
        • Kod towaru / usługi
        • Nazwa towaru / usługi
        • Ilość towaru w jednostce miary z dokumentu
        • Jednostka miary z dokumentu
        • Cena netto towaru / usługi
        • Wartość netto
      • Wiersz sumy kontrolnej, gdzie uwzględniono:
        • Liczbę dokumentów WZ w pliku
        • Wartość netto dokumentów WZ w pliku
Dla dokumentów RW:
      • Dane wartości dokumentu uwzględniają:
        • Numer dokumentu RW
        • Data wystawienia
        • Wartość netto dokumentu
        • Data wydania towaru na RW
      • Dane dotyczące elementów uwzględniają:
        • Numer dokumentu RW
        • Kod towaru / usługi
        • Nazwa towaru / usługi
        • Ilość towaru w jednostce miary z dokumentu
        • Jednostka miary z dokumentu
        • Cena netto towaru / usługi w jednostce z dokumentu
        • Wartość netto
      • Wiersz sumy kontrolnej, gdzie uwzględniono:
        • Liczbę dokumentów RW w pliku
        • Wartość netto dokumentów RW w pliku
Dla dokumentów MM:
      • Dane wartości dokumentu uwzględniają:
        • Numer dokumentu
        • Data wystawienia
        • Wartość netto dokumentu
        • Data wydania MM
      • Dane dotyczące elementów uwzględniają:
        • Numer dokumentu MM
        • Kod towaru / usługi
        • Nazwa towaru / usługi
        • Ilość towaru w jednostce miary z dokumentu
        • Jednostka miary z dokumentu
        • Cena netto towaru / usługi
        • Wartość netto
      • Wiersz sumy kontrolnej, gdzie uwzględniono:
        • Liczbę dokumentów MM w pliku
        • Wartość netto dokumentów MM w pliku

10 Rejestry VAT – JPK_VAT

Uwaga
Uwaga: Pliki JPK_VAT obowiązywały do rozliczenia podatku VAT za okresy do września 2020 roku. Od rozliczenia za okresy od października 2020 roku obowiązują pliki JPK_V7 dostępne w programie w menu JPK/ Pliki JPK_V7 i opisane w biuletynie OPT088 – Pliki JPK_V7 – przygotowanie dokumentów i generacja pliku. Obecnie możliwe jest składanie korekt do plików JPK_VAT za okresy, w których tego typu pliki obowiązywały.
Aby dodać w programie plik JPK_VAT należy z rozwijalnej listy przy ikonie plusa wybrać opcję Pliki_JPK_VAT   – spowoduje to otwarcie okna Przygotowanie pliku JPK_VAT: Okno wywoływane jest również z poziomu menu kontekstowego po kliknięciu prawym przyciskiem myszy i wybraniu opcji Dodaj, jak również przy pomocy skrótu <Shift> + <Insert>. Okno zawiera parametry dotyczące plików JPK_VAT. Dla parametru Składam plik JPK istnieje możliwość wyboru dwóch opcji: ■ obowiązkowy (opcja domyślnie zaznaczona), ■ na żądanie Urzędu Skarbowego podczas kontroli.
Uwaga
Uwaga: Opcja dodania plików JPK na żądanie US powinna być wykorzystywana w sytuacji kiedy urząd skarbowy zwróci się o wygenerowanie plików podczas kontroli podatnika.
W polu Za okres wskazywany jest miesiąc i rok za jaki ma zostać wygenerowany plik JPK_VAT. Pole może zostać rozwinięte celem łatwiejszego wybrania odpowiedniego okresu.
Uwaga
Uwaga: Podczas dodawania pliku JPK_VAT program sprawdza okres, za który jest on sporządzany. Jeżeli za ten okres powinien być już sporządzony plik JPK_V7 program informuje o tym Użytkownika stosownym komunikatem: Za okres od października 2020 należy składać pliki JPK_V7. Czy chcesz mimo wszystko wyliczyć plik JPK_VAT? Wybór opcji Tak powoduje utworzenie pliki JPK_VAT za wybrany miesiąc. W przypadku wybrania opcji Nie plik JPK_VAT nie jest tworzony. Plik taki, nawet jeśli zostanie utworzony, nie będzie wysyłany do Ministerstwa Finansów.
Na oknie można zaznaczyć parametr współczynnik szacunkowy struktury sprzedaży i określić jego wartość procentową. Zaznaczenie parametru Korekta powoduje przeniesienie informacji, że generowany plik JPK_VAT jest korektą – pole CelZlozenia w pliku przyjmuje wówczas wartość 2. W przypadku plików JPK_VAT(3) po zaznaczeniu parametru Korekta istnieje możliwość wpisania numeru korekty. Numer korekty jest uzupełniany automatycznie jako numer kolejny, ale może zostać zmodyfikowany przez Użytkownika. W tym polu nie może zostać wpisana wartość mniejsza niż 1. Numer korekty przenoszony jest do pliku JPK_VAT(3).
Uwaga
Uwaga: W polu Korekta należy podać kolejny numer, tj. jeżeli wcześniej w 2017 r. lub w latach poprzednich złożony został tylko plik pierwotny oznaczony cyfrą”1″ (JPK_VAT(1)), a pierwszej korekty dokonuje się w 2018 r. na nowej strukturze, to należy w polu Korekta wpisać cyfrę „2″, a kolejne korekty za ten sam okres oznaczamy 3, 4, 5 itd. Jeżeli w 2017 r. złożony został JPK_VAT z oznaczeniem celu złożenia „1″ i potem były złożone korekty z oznaczeniem celu złożenia „2″, to składając kolejną korektę za ten okres już według nowej struktury w 2018 r. należy wpisać „3″ (niezależnie od tego ile w 2017 r. złożono korekt JPK_VAT z oznaczeniem „2″). Kolejne korekty za ten sam okres oznaczamy 4, 5 itd W 2017 r. przyjęto następującą zasadę oznaczania JPK_VAT 1 – dla pierwotnego JPK_VAT 2 – dla każdej kolejnej korekty JPK_VAT W 2018 r. przyjęto następującą zasadę oznaczania JPK_VAT: 0 – dla pierwotnego JPK_VAT 1, 2, 3, 4…. dla kolejnych korekt JPK_VAT za ten sam okres.
Pod parametrami wyświetlane są podstawowe informacje dotyczące składania pliku JPK_VAT. Istnieje możliwość wysłania do arkusza kalkulacyjnego danych znajdujących się w generowanych plikach JPK celem łatwiejszego ich przeglądania. Na oknie Przygotowanie pliku JPK_VAT znajduje się parametr Podczas eksportu utwórz również pliki MS Excel. Po wygenerowaniu pliku JPK z zaznaczonym powyższym parametrem, w zależności od ustawienia parametru Otwieranie wyeksportowanych plików w menu Widok, nastąpi otwarcie arkusza zawierającego wyeksportowane dane (opcja Otwieraj) bądź wyświetlone zostanie pytanie czy plik otworzyć (opcja Pytaj). Tworzony plik arkusza kalkulacyjnego zawiera arkusz dotyczący danych podatnika, agregatów oraz danych poszczególnych dokumentów.
Uwaga
Uwaga: Do eksportu danych JPK do arkusza MS Excel wymagane jest połączenie z Internetem. Po kliknięciu ikony Utwórz plik, na liście plików JPK dodany zostanie plik JPK_VAT za podany okres.
Podczas eksportu Rejestrów VAT istnieje możliwość zaznaczenia parametru współczynnik szacunkowy struktury sprzedaży. Domyślnie parametr nie jest zaznaczony. Wówczas w polu obok parametru program wylicza wartość współczynnika na podstawie dokumentów w Rejestrze VAT Sprzedaży za rok poprzedni w stosunku do roku określonego w polu Zakres dat od: na oknie przygotowania plików JPK. Do wyliczenia wartości współczynnika brane są pod uwagę dokumenty, które na pozycji w kolumnie Uwz. w proporcji mają ustawione Uwzględniaj lub Tylko w mianowniku. Proporcja jest wyliczana jako iloraz, gdzie w liczniku znajduje się roczny obrót z tytułu czynności, w związku z którymi podatnik ma prawo do obniżenia podatku należnego, a w mianowniku całkowity roczny obrót podatnika (łącznie np. z subwencjami). Współczynnik szacunkowy struktury sprzedaży służy do przemnożenia wartości z pozycji dokumentów z Rejestru VAT Zakupu, które w kolumnie Odliczenia mają ustawione Warunkowo. Po zaznaczeniu parametru pole z wartością współczynnika jest odblokowywane i Użytkownik może wpisać wartość inną niż wyliczona przez program. Możliwe jest wpisanie wartości współczynnika szacunkowego struktury sprzedaży z dokładnością do dwóch miejsc po przecinku. Ma to zastosowanie w związku z centralizacją jednostek budżetowych kiedy jednostki podległe mają obowiązek przesyłania plików JPK do jednostek nadrzędnych (gmin) z niezaokrąglonymi wartościami współczynników i prewspółczynników. Wpisywana wartość szacunkowego współczynnika struktury sprzedaży zapamiętywana jest dla operatora w kontekście każdej firmy osobno. Dzięki temu po zalogowaniu tego operatora do konkretnej bazy i przygotowywania kolejnego pliku JPK_VAT, wpisana poprzednio wartość współczynnika dla tej firmy jest podpowiadana przez program. Pliki JPK_VAT generowane za okres od stycznia 2018 roku, jak również korekty plików JPK_VAT za okresy wcześniejsze, tworzone są wzorcem dokumentu elektronicznego JPK_VAT(3). Dla plików JPK_VAT(3) zastosowanie ma znajdujący się na oknie Przygotowanie pliku JPK_VAT parametr Korekta, którego zaznaczenie powoduje oznaczenie składanego pliku jako korekty. Podczas eksportu danych do nagłówka pliku JPK_VAT(3) przenoszone są następujące informacje: ■ Zakres dat dla eksportowanych danych ■ Dane identyfikacyjne podatnika pobierane z Konfiguracji Firmy/ Dane firmy/ Pieczątka firmy – NIP oraz Pełna nazwa ■ Adres E-mail (pole opcjonalne) pobierany w pierwszej kolejności z deklaracji VAT-7(18); jeżeli nie jest uzupełniony na deklaracji, zostanie pobrany z Konfiguracji Firmy/ Dane firmy/ VAT, AKC-WW, a jeżeli tam również nie będzie uzupełniony – wówczas z Konfiguracji Firmy/ Dane firmy/ Pieczątka firmy ■ Nazwa programu z którego wygenerowano plik JPK_VAT(3) (w pliku widnieje nazwa „Comarch ERP Optima” wraz numerem wersji) W przypadku plików JPK_VAT(3) przenoszone są następujące informacje dotyczące dokumentów: Dla Rejestru VAT zakupu: ■ Nazwa i identyfikator (NIP w przypadku podmiotu gospodarczego, w przypadku osób fizycznych wstawiana jest wartość BRAK) podmiotu z zapisu w rejestrze VAT pola obowiązkowe; w przypadku nieuzupełnienia pól na dokumencie do pliku JPK_VAT(3) przenoszona jest wartość BRAK ■ Dane adresowe podmiotu z zapisu w rejestrze VAT (Miasto, Ulica, Nr domu/lokalu, Kod pocztowy, Poczta (jeżeli jest inna niż Miasto)) – pola obowiązkowe; w przypadku nieuzupełnienia pól na dokumencie do pliku JPK_VAT(3) przenoszona jest wartość BRAK ■ Data wpływu ■ Data wystawienia ■ Numer dokumentu ■ Kwoty podzielone według kwalifikacji na deklaracji VAT-7 Dla Rejestru VAT sprzedaży: ■ Nazwa i identyfikator (NIP w przypadku podmiotu gospodarczego, w przypadku osób fizycznych wstawiana jest wartość BRAK) podmiotu z zapisu w rejestrze VAT pola obowiązkowe; w przypadku nieuzupełnienia pól na dokumencie do pliku JPK_VAT(3) przenoszona jest wartość BRAK; jeżeli dokument jest Paragonem przeniesionym bezpośrednio do rejestru VAT z modułu Handel/Faktury lub ma powiązanie z Paragonem, wówczas w polu określającym nazwę odbiorcy pojawia się opis SPRZEDAŻ PARAGONOWA ■ Dane adresowe podmiotu z zapisu w rejestrze VAT (Miasto, Ulica, Nr domu/lokalu, Kod pocztowy, Poczta (jeżeli jest inna niż Miasto)) – pola obowiązkowe; w przypadku nieuzupełnienia pól na dokumencie do pliku JPK_VAT(3) przenoszona jest wartość BRAK; jeżeli dokument jest Paragonem przeniesionym bezpośrednio do rejestru VAT z modułu Handel/Faktury lub ma powiązanie z Paragonem, wówczas w polu określającym adres odbiorcy pojawia się opis SPRZEDAŻ PARAGONOWA ■ Data wystawienia i data sprzedaży (o ile różni się od daty wystawienia) ■ Numer dokumentu ■ Kwoty podzielone według kwalifikacji na deklaracji VAT-7 Dane te są wymagane przez wzór dokumentu elektronicznego i muszą być uzupełnione w programie przed wysyłką plików JPK. W logu z procesu generowania pliku JPK_VAT(3) pojawia się informacja/ostrzeżenie dla jakich dokumentów i do jakich pól wstawiono do pliku wartość BRAK/SPRZEDAŻ PARAGONOWA wraz z sugestią, aby Użytkownik zweryfikował poprawność tych dokumentów. W przypadku raportu dobowego lub faktury dla osoby fizycznej brak numeru NIP nie jest błędem, natomiast w przypadku np. faktury sprzedaży dla podmiotu gospodarczego dane takie jak numer NIP, nazwa i adres odbiorcy powinny zostać uzupełnione na dokumencie a plik JPK_VAT ponownie wygenerowany. W przypadku faktur VAT RR, numer NIP bądź PESEL dostawcy powinien znajdować się w polu NIP na dokumencie w rejestrze VAT zakupu. W przypadku dowodów wewnętrznych sprzedaży i zakupu rozliczających transakcje (m.in. nabycia wewnątrzunijnego, importu usług, zakupu z odwrotnym obciążeniem) do pliku JPK_VAT jako numer dokumentu przenoszony jest numer dokumentu pierwotnego z rejestru zakupu. Warunkiem jest powiązanie dowodów wewnętrznych z dokumentem źródłowym. W związku z tym kiedy takiego powiązania nie ma (dowody wewnętrzne dodane ręcznie do rejestru VAT bądź zaimportowane mechanizmem pracy rozproszonej), dowody wewnętrzne do pliku JPK_VAT zostaną przeniesione z własnym numerem dokumentu. Dowody wewnętrzne będące korektą paragonów przekształconych do faktur przenoszone są do pliku JPK_VAT z numerem dowodu wewnętrznego. Wykonanie korekty danych z poziomu korekt faktury w module Handel / Faktury nie spowoduje zmiany na dokumencie w Rejestrze VAT – zmiany danych na dokumencie należy dokonać ręcznie. Dokument Faktura korygująca dane nie jest przenoszony do Rejestrów VAT. Do plików JPK_VAT(3) przenoszone są wszystkie zapisy korekcyjne wygenerowane z załącznika VAT-ZD za wskazany okres. Pozycje na tych zapisach z odliczeniami warunkowymi są przeliczane przez określony na oknie przygotowania plików JPK współczynnik szacunkowy struktury sprzedaży. W celu wykazywania wartości w odpowiednich polach w plikach JPK dla Rejestrów VAT, wprowadzone zostały następujące atrybuty dokumentów: ■ KOREKTA ŚR. TRWAŁYCH (Korekta podatku naliczonego od nabycia środków trwałych), ■ KOREKTA POZ. NABYĆ (Korekta podatku naliczonego od pozostałych nabyć), ■ VAT-ZD ZAKUP NIEZAPŁ (Korekta podatku naliczonego, zgodnie z Art. 89b ust. 1), ■ VAT-ZD ZAKUP ZAPŁAC. (Korekta podatku naliczonego, zgodnie z Art. 89b ust. 4), ■ PODATEK OD SPISU (Podatek należny od towarów objętych spisem z natury), ■ ZWROT ZA KASĘ FISKAL (Zwrot odliczonej lub zwróconej kwoty wydatkowanej na zakup kas rejestrujących), ■ WEWN.NAB.PALIW SILN. (Podatek od wewnątrzwspólnotowego nabycia paliw silnikowych); atrybut ten będzie wykorzystany po pojawieniu się wzoru dokumentu elektronicznego dla pliku JPK_VAT zgodnego z deklaracją VAT-7(17), ■ WEWN.NABYCIE ŚR.TRAN (Wewnątrzwspólnotowe nabycie środków transportu). Pierwsze 4 atrybuty powinny być wybierane na dokumentach w rejestrze zakupu VAT, natomiast kolejne 4 na dokumentach w rejestrze sprzedaży VAT.
Uwaga
Uwaga: W przypadku kiedy w programie utworzony został załącznik VAT-ZD o typie zakup i wygenerowany/e z niego zapis/y korekcyjny/e, atrybutów VAT ZD ZAKUP NIEZAPŁ oraz VAT-ZD ZAKUP ZAPŁAC. nie należy dodawać na dokumentach w rejestrze VAT ponieważ spowoduje to duplikację kwot w pliku JPK_VAT. Zapisy korekcyjne z VAT-ZD o typie zakup są wykazywane w pliku JPK_VAT jako korekta zgodnie z Art. 89b, odpowiednio ust. 1 lub 4. Podobnie w przypadku atrybutu WEWN.NABYCIE ŚR.TRAN – jeżeli na przeliczanej w programie Comarch ERP Optima deklaracji VAT-7pole Podatek od wewnątrzwsolnotowego nabycia środków transportu jest uzupełniane automatycznie przez program na podstawie wprowadzonych dokumentów, atrybutu nie należy stosować. Wspomniane atrybuty należy wykorzystywać tylko pod warunkiem, że odpowiadające im pola na deklaracji VAT-7 Użytkownik uzupełnia ręcznie.
Jest to związane z tym, że sumy dla dokumentów z rejestrów VAT w plikach JPK powinny być zgodne z deklaracją VAT-7 za ten sam okres, natomiast m.in. pola 47 Korekta podatku naliczonego od nabycia środków trwałych oraz 48 Korekta podatku naliczonego od pozostałych nabyć (numeracja wg deklaracji VAT-7 wersja 20) mogą być wyliczane na podstawie dokumentów z poprzednich okresów bądź uzupełniane ręcznie. W związku z tym jeżeli na deklaracji VAT-7 pojawiły się wartości w polach 36, 37, 39, 47 lub 48, należy do rejestru VAT zakupu dodać odpowiedni dokument techniczny. Dokument taki nie musi posiadać żadnej pozycji, natomiast należy wybrać na nim odpowiedni wskazany powyżej atrybut (jeden bądź więcej) uzupełniając jego wartość kwotą z odpowiadających im pól na deklaracji. W celu spełnienia wymagań wzorca dokumentu elektronicznego, należy uzupełnić numer dokumentu (np.: Dokument techniczny do deklaracji VAT-7 pod plik JPK_VAT). Zalecamy kontakt z Urzędem Skarbowym celem uzgodnienia jakie dane powinny się na tego typu dokumentach znaleźć. W przypadku korzystania z atrybutów VAT-ZD ZAKUP NIEZAPŁ lub VAT-ZD ZAKUP ZAPŁAC należy na wprowadzonych dokumentach nie dodawać pozycji, natomiast uzupełnić numer dokumentu oraz wskazać kontrahenta jaki występował fakturze która ma zostać skorygowana. Wymienione atrybuty należy w razie potrzeby dodać na dokumencie w Rejestrze VAT na zakładce [JPK] w sekcji JPK_VAT. W tej sekcji można wskazać atrybut widoczny na liście atrybutów (Ogólne/ Atrybuty) na zakładce [JPK], który ma zaznaczony parametr JPK_VAT. Atrybut z zaznaczonym parametrem JPK_VAT oraz dodatkowo zaznaczonym parametrem przenosić na transakcje zostanie automatycznie dodany na każdym nowo dodawanym dokumencie w rejestrze VAT. Podczas eksportu Rejestrów VAT do plików JPK wysyłane są dokumenty mające określony miesiąc kwalifikacji w VAT (parametr Rozliczać w VAT na dokumencie) zgodny z określonym podczas eksportu danych. W przypadku Rejestru VAT zakupu, eksportowane są tylko dokumenty mające na pozycjach w kolumnie Odliczenia ustawione Tak lub Warunkowo oraz stawkę VAT inną niż ZW i NP. Dodatkowo wpływ na eksportowane dane mają ustawienia parametrów w Konfiguracji Programu/ Księgowość/ Deklaracje. Porównując eksportowane dokumenty należy więc korzystać z drugiej zakładki na rejestrze VAT: [Do VAT/JPK_V7]. Dodatkowo w plikach JPK_VAT wykazywane są dokumenty z rejestru sprzedaży VAT zawierające pozycje ze stawką 4% (faktury taksówkarzy). Pozycje wykazywane są w pliku JPK_VAT polach K_17 (wartość netto) oraz K_18 (wartość VAT), natomiast te dokumenty nie są wykazywane w deklaracji VAT-7. W przypadku dokumentów mających dodany atrybut o typie JPK_VAT oraz zapisów korekcyjnych wygenerowanych z załącznika VAT-ZD, do pliku JPK_VAT tego typu dokumenty przenoszone są bez względu na to czy parametr Rozliczać w VAT jest na nich zaznaczony czy nie. W przypadku braku zapisów w rejestrze zakupów bądź rejestrze sprzedaży za podany podczas eksportu okres, tworzony plik JPK będzie zawierał informacje tylko o tym typie rejestru, w którym były zapisy. Jeżeli w określonym podczas przygotowania plików JPK okresie czasu nie ma zapisów w rejestrze VAT zakupu ani sprzedaży, wówczas jest generowany plik JPK_VAT zawierający tylko dane nagłówkowe i dane podatnika.
Uwaga
Uwaga: Znajdujący się na dokumentach w Rejestrze VAT parametr JPK_FA opisany został w rozdziale dotyczącym faktur. Parametr nie dotyczy plików JPK_VAT składanych obowiązkowo co miesiąc. Należy zaznaczyć go w przypadku, gdy na żądanie US podatnik jest zobligowany do złożenia pliku z fakturami (JPK_FA), które wprowadzone zostały ręcznie do rejestru VAT z pominięciem modułu Handel.

11 Scalanie plików JPK_VAT

Istnieje możliwość łączenia plików JPK_VAT w programie Comarch ERP Optima. Użytkownik może wskazać pliki które mają zostać połączone i na podstawie tych plików zostanie utworzony nowy plik zawierający dane z tych wskazanych plików. Proces łączenia plików JPK_VAT wygląda następująco: Użytkownik powinien zaznaczyć wybrane przez siebie pliki na liście plików JPK i kliknąć ikonę Scal pliki JPK_VAT znajdującą się na wstążce programu. Funkcja może zostać również uruchomiona z poziomu menu kontekstowego po kliknięciu prawym przyciskiem myszy na plikach JPK i wybraniu opcji Scal pliki JPK_VAT. Zarówno ikona jak i funkcja w menu kontekstowym jest aktywna po wyfiltrowaniu plików JPK do typu JPK_VAT(wybór w polu Typ pliku wartości JPK_VAT) i zaznaczeniu co najmniej 2 plików. Na oknie Łączenie plików JPK_VAT można wskazać czy plik ma być złożony jako korekta (parametr Oznacz plik JPK_VAT jako korektę). Podczas scalania plików JPK_VAT(3) po oznaczeniu scalonego pliku jako korekty można wpisać numer tej korekty. Scalane pliki JPK_VAT muszą być w tej samej wersji. Na oknie można również zaznaczyć czy po wygenerowaniu pliku JPK_VAT ma zostać również wygenerowany arkusz kalkulacyjny zawierający dane przeniesione do połączonego pliku. Na oknie dostępny jest parametr Składam plik JPK z dwiema opcjami: ■ obowiązkowy (opcja domyślnie zaznaczona), ■ na żądanie Urzędu Skarbowego podczas kontroli. Parametr określa cel złożenia łączonego pliku JPK_VAT. Generowanie pliku rozpoczynane jest po kliknięciu ikony Wykonaj połączenie . Funkcja może zostać również wywołana poprzez naciśnięcie <F8>. Warunkiem połączenia plików jest to, aby były to pliki JPK_VAT wygenerowane w tym samym wzorcu dokumentu elektronicznego – wszystkie pliki we wzorcu JPK_VAT(2) bądź wszystkie we wzorcu JPK_VAT(3) i zawierające dokumenty za ten sam zakres dat (z tym samym rokiem i miesiącem rozliczenia w deklaracji VAT). Dane dotyczące podatnika składającego połączony plik JPK_VAT pobierane są z Pieczątki firmy (Konfiguracja Firmy/ Dane firmy/ Pieczątka firmy). Pozostałe dane zostaną odpowiednio połączone – wszystkie dokumenty sprzedaży ze wszystkich plików zostaną umieszczone w sekcji dotyczącej Rejestrów sprzedaży. Analogicznie dla rejestrów VAT zakupu. Sekcje zawierające zagregowane dane będą zawierały informacje dotyczące wszystkich pozycji z wszystkich plików. Tak więc suma ilości pozycji z wszystkich łączonych plików będzie zgodna z ilością w pliku zbiorczym. Nowy połączony plik zbiorczy otrzymuje nazwę JPK_VAT_SCALONY_PLN_Data_od_Data_do_Data_i_godzina_utworzenia. Po utworzeniu zbiorczego pliku JPK_VAT, pliki cząstkowe które podlegały połączeniu zmieniają status z Nie wysłano na Nie podlega. Dopiero w przypadku usunięcia pliku zbiorczego takie pliki otrzymają z powrotem status Nie wysłano. Nie ma możliwości wysłania plików, które uległy połączeniu – w takim przypadku należy wysłać plik zbiorczy. Nie jest również możliwe usunięcie pliku cząstkowego – należy w pierwszej kolejności usunąć plik wynikowy. Nie jest możliwe ponowne połączenie plików, które już zostały poddane łączeniu. Wysłane pliki JPK_VAT również nie podlegają połączeniu – łączenie plików JPK_VAT możliwe jest tylko dla plików o statusie Nie wysłano. Domyślnie pliki JPK_VAT które zostały połączone są ukrywane, ale można je wywołać na listę plików JPK. Służy temu parametr Pokaż scalone. Pliki cząstkowe, które zostały połączone, wyświetlane są na liście plików w kolorze szarym. W kolejnych rozdziałach biuletynu opisane zostały szczegółowe informacje dotyczące eksportu poszczególnych grup danych do plików JPK.

12 Import plików JPK_VAT do rejestrów VAT

Użytkownicy mogą skorzystać z funkcji importu plików JPK_VAT do rejestrów VAT. Opcja dostępna jest z menu głównego po wyborze JPK/ Import do rej.VAT  : Na oknie po kliknięciu ikony  Wybór pliku należy wskazać źródłowy plik XML, z którego mają zostać importowane dane. Warunkiem powodzenia importu jest aby struktura wskazanego pliku była zgodna z wymaganą przez Ministerstwo Finansów strukturą JPK_VAT(2), JPK_VAT(3) lub JPK_V7. W przypadku wybrania niewłaściwego typu pliku pojawia się stosowne ostrzeżenie i import danych nie jest możliwy. Parametr Za okres domyślnie jest nieaktywny. Takie ustawienie powoduje, że wszystkie dokumenty z pliku zostaną zaimportowane bez względu na ich daty. Po wskazaniu pliku JPK_VAT zakres dat zostaje uzupełniony na podstawie danych w pliku. Po zaznaczeniu parametru Za okres Użytkownik może wpisać inny zakres dat (zawęzić okres) za jaki zostaną zaimportowane dokumenty ze wskazanego pliku. Dla dokumentów sprzedażowych wskazywane dla parametru daty dotyczą daty wystawienia, natomiast dla dokumentów zakupowych – daty wpływu. Jeżeli w pliku JPK_VAT dla dokumentu importowanego do rejestru zakupu VAT nieuzupełniona jest data wpływu, jest ona uzupełniona jako zgodna z datą zakupu. Na oknie istnieje możliwość wskazania rejestrów sprzedaży i zakupów VAT, do których mają zostać zaimportowane dokumenty z pliku. Odznaczenie jednego z typów rejestru VAT (zakupów lub sprzedaży) powoduje, że tego typu dokumenty nie zostaną zaimportowane z pliku. Jeżeli w pliku JPK_VAT występują tylko dokumenty jednego typu (np. tylko rejestr sprzedaży VAT) i ten typ rejestrów został odznaczony przez Użytkownika, przy próbie importu pojawi się informacja o braku danych do zaimportowania. Podczas importu dokumentów, jeśli w pliku JPK_VAT uzupełniony jest numer NIP kontrahenta i w bazie istnieje już kontrahent z takim numerem NIP, wówczas po zaimportowaniu dokument przypisywany jest do tego kontrahenta (podstawiany jest jego akronim). Jeżeli istniejący w bazie kontrahent oznaczony został jako zduplikowany podczas operacji łączenia kart kontrahentów, na zaimportowanym dokumencie podstawiony zostanie kontrahent główny. Dane kontrahenta na dokumencie (jego nazwa i adres) przenoszone są zawsze z pliku. Rodzaj transakcji, rodzaj na pozycji dokumentu oraz status kontrahenta na zaimportowanym dokumencie uzupełniane są zgodnie z domyślnymi ustawieniami kwalifikującymi do deklaracji VAT-7 dla pola, do którego dany dokument w pliku JPK_VAT został zakwalifikowany. Na dokument podstawiana jest kategoria sprzedaży lub zakupu z istniejącej karty kontrahenta (jeżeli domyślne kategorie dla kontrahenta są uzupełnione). W przypadku nie zaznaczonego parametru Załóż karty kontrahentów (na podstawie numeru NIP lub wg autonumeracji ustawionej w konfiguracji)) jeżeli kontrahent o takim numerze NIP jak na dokumencie w pliku nie występuje w bazie (lub jest więcej niż jeden kontrahent z takim numerem NIP), wówczas na zaimportowanym dokumencie podstawiany jest kontrahent Nieokreślony. Dane kontrahenta na dokumencie (jego nazwa i adres) przenoszone są z pliku. W przypadku importu dokumentów do rejestru VAT bez zakładania kart kontrahentów, jeżeli na dokumencie w pliku JPK_VAT uzupełniony jest numer NIP kontrahenta, na zaimportowanym dokumencie zaznaczony zostaje parametr Podmiot gospodarczy. Jeżeli w pliku JPK_VAT nie ma numeru NIP dla transakcji (pole z numerem NIP jest puste lub znajduje się w nim znak „-”), w rejestrze VAT na dokumencie zaznaczony zostaje parametr Finalny. Po przeprowadzonym imporcie zaleca się wykonanie dla zaimportowanych dokumentów operacji seryjnej Zweryfikuj status VAT. W przypadku zaznaczonego parametru Załóż karty kontrahentów (na podstawie numeru NIP lub wg autonumeracji ustawionej w konfiguracji) jeżeli kontrahent o takim numerze NIP jak na dokumencie w pliku nie występuje w bazie, wówczas zostanie założona jego karta na podstawie danych w pliku i zostanie on podstawiony na zaimportowanym dokumencie.. Jeżeli w Konfiguracji Firmy/ Ogólne/ Parametry zaznaczony jest parametr Autonumeracja kodów kontrahentów przy dodawaniu, wówczas kod zakładanego kontrahenta nadawany jest według wskazanego w Konfiguracji schematu numeracji. W przypadku, gdy podczas automatycznego dodawania kontrahenta, numer w schemacie numeracji kodów przekroczy maksymalną wartość, kontrahent dodawany jest z kodem uzupełnionym zgodnie z jego numerem NIP. Jeżeli parametr Autonumeracja kodów kontrahentów przy dodawaniu nie jest zaznaczony w Konfiguracji, wówczas jako kod nowego kontrahenta wstawiany jest jego numer NIP. Dodatkowo jeżeli w Konfiguracji Firmy/ Ogólne/ Parametry zaznaczony jest parametr Automatyczne pobieranie rachunków bankowych z Wykazu podatników VAT, dla dodawanego automatycznie kontrahenta następuje weryfikacja w Wykazie podatników VAT na podstawie jego numeru NIP i pobierane są numery rachunków bankowych kontrahenta. Jeżeli parametr w konfiguracji nie jest zaznaczony, kontrahent dodawany jest bez importu listy rachunków bankowych. Jeżeli na dokumencie w pliku kontrahent nie ma uzupełnionego numeru NIP (lub w bazie jest więcej niż jeden kontrahent z takim numerem NIP), wówczas karta kontrahenta nie jest zakładana. Na takim dokumencie po imporcie podstawia się kontrahent Nieokreślony z danymi adresowymi takimi, jakie są w pliku JPK_VAT. W przypadku braku numeru NIP kontrahenta w pliku JPK_VAT, na dokumencie jako rodzaj transakcji podpowie się Krajowa. Jeżeli numer NIP kontrahenta krajowego w pliku JPK_VAT jest niepoprawny, nie jest zakładana karta takiego kontrahenta i nie są importowane jego dokumenty do rejestru VAT. Na oknie importu istnieje możliwość wyboru formy płatności na zaimportowanych dokumentach. Po wybraniu opcji domyślną Użytkownik może wskazać jedną z aktywnych form płatności występujących w bazie. Jeżeli istniejący w bazie kontrahent ma ustawiony na swojej karcie indywidualny termin płatności, taki termin zostanie wyliczony na zaimportowanym dokumencie. Jeżeli istniejący w bazie kontrahent nie ma określonego terminu płatności, wówczas termin płatności na zaimportowanym dokumencie wyliczony zostanie na podstawie terminu ustawionego na wybranej formie płatności. W przypadku wybrania opcji z karty kontrahenta, na dokumencie podstawiana jest forma płatności wskazana na karcie istniejącego kontrahenta. Jeżeli w bazie nie istnieje kontrahent o podanym numerze NIP, na zaimportowanym dokumencie podstawiana jest forma płatności gotówka. Ta forma płatności zostanie również ustawiona jako domyślna forma płatności dla założonego kontrahenta. Jeżeli forma płatności gotówka jest zablokowana, podstawi się kolejna (według kolejności wprowadzania) forma płatności. Jeżeli istniejący w bazie kontrahent ma zaznaczony parametr Nie rozliczaj płatności, płatność z zaimportowanego dokumentu zostanie dodana do preliminarza ze statusem Nie podlega. Jeżeli Użytkownik wybierze dla opcji domyślną formę płatności gotówka (lub kontrahent ma wybraną tę formę płatności jako domyślną), po zaimportowaniu nie będą tworzone automatycznie zapisy K/B rozliczające płatności do importowanych dokumentów. Zaznaczenie na oknie importu parametru Ustaw status płatności na Nie podlega powoduje, że wszystkie płatności z zaimportowanych dokumentów otrzymają status Nie podlega. Jeżeli w Konfiguracji Firmy/ Ogólne/ Parametry zaznaczony jest parametr Kontrola duplikacji zapisów w rejestrze VAT, ewidencji dodatkowej i na fakturach zakupu, podczas importu następuje weryfikacja czy w bazie nie występuje już dokument o parametrach określonych dla kontroli duplikacji. Jeżeli taki dokument już istnieje, dokument z pliku JPK_VAT nie zostanie zaimportowany, a w logu z przebiegu importu pojawi się stosowna informacja. Kliknięcie ikony  Uruchom import powoduje zaczytanie danych z pliku JPK_VAT do bazy. Ikona jest aktywna po wskazaniu poprawnego pliku JPK_VAT oraz zaznaczeniu rejestru sprzedaży i/lub rejestru zakupu do importu. Wybranie opcji  Zamknij okno powoduje rezygnację z importu i zamknięcie okna.
Uwaga
Pliki JPK_VAT nie posiadają wszystkich potrzebnych informacji występujących na dokumentach w rejestrze VAT, dlatego też przy imporcie przyjmowane są pewne uproszczenia np. co do formy płatności, rodzaju transakcji, waluty, stawki VAT, opisu, kolumny KPiR, stanu dokumentu zwykły/wewnętrzny itp. W związku z tym po zaimportowaniu dokumentów należy zweryfikować ich poprawność. W razie potrzeby należy skorzystać z operacji seryjnych dostępnych bezpośrednio w rejestrach VAT.

Na zaimportowanych dokumentach do rejestru zakupu VAT domyślnie ustawiane są odliczenia na TAK.

Uwaga
W pliku JPK_VAT znajdują się tylko wartości z odliczeniami na TAK lub Warunkowo (przeliczone przez szacunkowy współczynnik struktury sprzedaży). Jeżeli więc na dokumencie przed eksportem do pliku JPK_VAT znajdowały się pozycje z odliczeniami na NIE oraz na TAK, wówczas do pliku zostaną wyeksportowane (a tym samym zaimportowane z niego) tylko te pozycje mające odliczenia na TAK. W przypadku odliczeń WARUNKOWO, po eksporcie do pliku te pozycje są mnożone przez szacunkowy współczynnik struktury sprzedaży. W związku z tym wartość brutto na zaimportowanym dokumencie w rejestrze zakupu VAT nie zawsze będzie się zgadzać z wartością brutto dokumentu sprzed eksportu do pliku JPK_VAT. Należy więc po imporcie zweryfikować poprawność kwot brutto dokumentów.
W przypadku rejestrów sprzedaży VAT w kolumnie Uwzględniaj w proporcji ustawiane są domyślne wartości dla poszczególnych stawek VAT:
      • Uwzględniaj – dla stawek: 23%, 8%, 5%, 0%
      • Tylko w mianowniku – dla stawki ZW
      • Nie uwzględniaj – dla stawki NP
W przypadku ustawionego w Konfiguracji Firmy/ Księgowość/ Parametry rodzaju księgowości księga podatkowa, na pozycjach  zaimportowanych dokumentów w rejestrze sprzedaży VAT ustawiana jest kolumna KPiR 7.Sprzedaż, natomiast na dokumentach w rejestrze zakupu VAT kolumna 10.Towary. Jeżeli ustawiony jest rodzaj księgowości ewidencja ryczałtowa, na pozycjach  zaimportowanych dokumentów w rejestrze sprzedaży VAT ustawiana jest stawka dla ryczałtu 3,00%. Jeżeli w pliku JPK_VAT znajdowały się dokumenty z pozycjami wykazywanymi w deklaracji VAT-7 w polach:
      • 36 – Podatek należny od towarów objętych spisem z natury,
      • 37 – Zwrot odliczonej lub zwróconej kwoty wydatkowanej na zakup kas rejestrujących,
      • 38 – Podatek od wewnątrzwspólnotowego nabycia środków transportu,
      • 39 – Podatek od wewn. nabycia towarów art. 103 ust. 5aa,
      • 47 – Kwota podatku naliczonego od nabycia środków trwałych,
      • 48 – Kwota podatku naliczonego od pozostałych nabyć,
      • 49 – Kwota podatku naliczonego, o której mowa w art.89b ust. 1 ustawy,
      • 50 – Kwota podatku naliczonego, o której mowa w art.89b ust. 4 ustawy,
a więc wynikające z zastosowania na dokumentach atrybutów JPK_VAT, pozycje te nie zostaną zaimportowane do rejestru VAT z pliku JPK_VAT.
Uwaga
Na zaimportowanych z pliku JPK_VAT do rejestru VAT dokumentach, w polu Rozliczać w VAT ustawiany jest rok i miesiąc zgodny z okresem za jaki wygenerowany został plik JPK_VAT. Dotyczy to metody zwykłej rozliczenia podatku VAT. Na zaimportowanych dokumentach zostanie prawidłowo ustawiona data rozliczenia w VAT jedynie w bazach, które za dany okres czasu rozliczają VAT metodą zwykłą. Jeśli w bazie docelowej wybrana jest metoda kasowa, wówczas należy ponownie zweryfikować datę uwzględnienia w VAT na poszczególnych dokumentach.

OPT074 - Dodawanie kolumn użytkownika na listach

Data aktualizacji: 25-01-2024

Spis treści

Wstęp

Przykłady z instrukcją tworzenia

Wstęp

Użytkownik Comarch ERP Optima ma możliwość dodawania na listach dokumentów kolumn o dowolnej definicji z dowolnej tabeli dostępnej w bazie danych. Dodawanie kolumn odbywa się z pomocą mechanizmu personalizacji okna. Możliwe jest wyłączenie personalizacji listy dla danego operatora, zwykła personalizacja kolumn, które zdefiniował użytkownik poprzez dodanie kolejnych instrukcji JOIN, dodanie wyrażeń definiujących nową kolumnę oraz testowanie całego zapytania. Można w dowolny sposób dołączać tabele (również z bazy konfiguracyjnej) do zdefiniowanego zapytania SQL oraz definiować kolumny o dowolnej składni pobierania danych. Dodawanie kolumn może odbywać się w łatwy sposób poprzez „przeciągnięcie” wybranej kolumny na listę Kolumny użytkownika. Dodane kolumny można sortować, grupować oraz wykonywać operacje dostępne z wiersza sum. Po dodaniu kolumn i tabel wydajność pobierania danych na liście może znacznie spaść. Należy rozważyć tutaj dwa przypadki: sama definicja kolumny nie spowoduje żadnego spowolnienia, jeśli kolumna nie będzie widoczna oraz dodatkowa instrukcja LEFT JOIN spowoduje spowolnienie tylko wtedy, gdy będzie widoczna jakaś kolumna wykorzystująca tą instrukcję lub kolumna zostanie użyta w filtrze. Powyższe problemy zostawiamy do rozwiązania wdrożeniowo przez partnera rozszerzającego funkcjonalność listy.

Wygląd okna personalizacji - definiowanie kolumn użytkownika

Funkcjonalność dostępna jest z poziomu personalizacji aktywnego okna <Shift>+<F9> po kliknięciu ikony . Na oknie Personalizacja listy jest możliwość:
  • Dodawania złączeń do kolejnych tabel bazy danych (również z bazy konfiguracyjnej).
  • Dodawania wyrażeń definiujących nową kolumnę danych,  po której będzie można sortować i grupować listę.
  • Testowania całego zapytania.
Okno personalizacji listy podzielone jest na 5 części:
  • Kolumny dostępne z aktualnie wybranych tabel (wraz z dodatkowymi instrukcjami JOIN) – Jest to lista prezentująca wszystkie pola możliwe do pokazania na liście przy aktualnie zdefiniowanej klauzuli FROM wraz z dodatkowymi złączeniami (instrukcjami JOIN) dodanymi przez użytkownika. Lista jest aktualizowana po dołączeniu nowej tabeli przez użytkownika w sekcji Tabele użytkownika. Lista wyświetlana jest w trybie tylko do odczytu, istnieje jednak możliwość „przeciągnięcia” wybranej kolumny na listę Kolumny użytkownika.
  • Kolumny użytkownika – lista kolumn dodanych przez użytkownika. Dla dodanej kolumny można określić jej nazwę dla użytkownika, instrukcję pobierania, typ i format wyświetlania, domyślną widoczność i dostępność kolumny oraz dodatkowy opis.
  • Tabele domyślne – treść zapytania FROM standardowo wysyłanego do serwera SQL – pole do odczytu.
  • Tabele użytkownika – sekcja umożliwiająca dołączenie kolejnych tabel przez użytkownika. Aby dołączyć nową tabelę należy wskazać jej nazwę (wraz z prefixem „CDN”) oraz podać instrukcję łączenia, czyli klauzulę potrzebną do wykonania połączenia tabel (np. TrN_KntID= Knt_KntID).
  • Wynikowe zapytanie SQL – zapytanie utworzone z kolumn zdefiniowanych przez użytkownika i instrukcji FROM z dodanymi złączeniami (instrukcjami JOIN) użytkownika, z możliwością sprawdzenia poprawności wykonania – pole do odczytu.

Rys. Personalizacja listy

Na oknie znajdują się przyciski:
  •  – Sprawdzenie poprawności utworzonego zapytania. Przycisk możliwy do wywołania w dwóch trybach (rozwijalna lista obok przycisku):
  • Sprawdź składnię – weryfikacja poprawności składni zapytań użytkownika, w przypadku poprawnego wykonania testu pojawia się komunikat: Kolumny zostały dodane poprawnie.
  • Sprawdź wydajność – zmierzenie czasu wykonania zapytania użytkownika; pierwsze wykonanie zmienionego zapytania SQL może nie być miarodajne, gdyż Serwer SQL nie będzie jeszcze miał w pamięci cache tego zapytania, w związku z czym pierwsze wykonanie zapytania może być dłuższe, niż kolejne.
  •  Zapis zmian. Jeżeli po wprowadzeniu zmian użytkownik nie sprawdzi poprawności zapytania, zostanie to wykonane w momencie zapisu zmian w dodatkowych kolumnach. Jeżeli zapytanie nie będzie poprawne, okna nie będzie można zapisać. Podczas zapisu okna personalizacji listy sprawdzane jest również, czy modyfikacja zapytania nie spowodowała efektu „rozmnożenia” wierszy na liście (np. faktura pokazuje się na liście tyle razy, ile ma elementów) – taka sytuacja jest błędna i niektóre funkcje programu mogą wówczas nie działać prawidłowo
  •  Eksport ustawień dodatkowych kolumn użytkownika, bez pozostałych ustawień personalizacji. Eksport wykonywany jest do formatu XML.
  •  Import ustawień dodatkowych kolumn użytkownika z pliku XML.

Kolumny użytkownika

Lista umożliwiająca dodanie przez użytkownika nowej kolumny na listę. Zawiera kolumny: Nazwa dla użytkownika – pod jaką nazwą kolumna będzie widoczna na interfejsie. Instrukcja pobrania danych – pole z bazy lub można wpisać treść, która występuje w klauzuli SELECT i dotyczy pojedynczej kolumny. Format wyświetlania – można określić formatowanie zwracanych wartości w kolumnie np. jeżeli do pokazania będzie kolumna typu DateTime, a standardowo część czasowa jest ucinana, potrzebne będzie tu wprowadzenie odpowiedniej wartości formatującej pokazywaną treść. Formatowanie należy ustawić w kolumnie Typ formatu wyświetlania oraz w kolumnie Format wyświetlania. Kolumna Typ formatu wyświetlania przyjmuje 4 wartości:
  • None – dane w definiowanej kolumnie wyświetlane są sposób domyślny
  • Numeric – dane liczbowe
  • DateTime – data/czas
  • Custom – niestandardowy format wyświetlania
Ostatnie 3 opcje definiują w jaki sposób wartości mają być wyświetlane używając formatu z pola Format wyświetlania. Kolumna Format wyświetlania
  • Standardowe formaty wyświetlania dla liczb.
Standardowy format wyświetlania dla liczb składa się z litery (określającej rodzaj formatu) oraz 2 cyfr (określających precyzję). Rodzaj formatu decyduje w jaki sposób wartość jest transformowana.

Rodzaj formatu

Opis

Przykład formatu

Przykładowa wartość

c lub CLiczba jest wyświetlana jako wartość walutowa. Specyfikacja precyzji określa żądaną ilość miejsc dziesiętnych. Jeżeli precyzja nie zostanie wpisana, zostanie użyta domyślna precyzja wartości formatu waluty z ustawień regionalnych.c2$1,234.00
n lub NLiczba jest wyświetlana w formie "-d,ddd,ddd.ddd...", gdzie każde 'd' oznacza cyfrę. Wartość będzie poprzedzona znakiem minus, jeżeli liczba jest ujemna. Separator tysięcy jest wstawiany między każdą grupę 3 cyfr na lewo od kropki dziesiętnej. Specyfikacja precyzji określa żądaną ilość miejsc dziesiętnych. Jeżeli precyzja nie zostanie wpisana, zostanie użyta domyślna precyzja wartości formatu waluty z ustawień regionalnych.n01.234
d lub DWartość jest wyświetlana jako liczba całkowita ze znakiem minus. Jeżeli wyświetlana będzie liczba z częścią dziesiętna, zostanie ona sformatowana domyślnie. Specyfikacja precyzji określa minimalną ilość cyfr, która ma zostać pokazana. Jeżeli będzie to potrzebne, liczba zostanie dopełniona „nieistotnymi” zerami z lewej strony, aby zapewnić odpowiednią długość wartości. Jeżeli precyzja nie zostanie wybrana, pokazane zostanie dokładnie tyle cyfr, ile potrzeba do reprezentowania wartości bez początkowych zer.D800004392
p lub PLiczba mnożona jest przez 100 i wyświetlana ze znakiem %. Specyfikacja precyzji określa żądaną ilość miejsc dziesiętnych. Jeżeli nie zostanie określona, pokazywane są 4 miejsca dziesiętne.P289,48 %
  • Standardowe formaty wyświetlania dla daty i czasu.
Standardowy format daty/czasu składa się z jednej litery, która określa wzorzec, wg którego wartości będą wyświetlane (czy i w jaki sposób wyświetlać lata, miesiące itd.).
FormatOpisPrzykład
dWzorzec daty krótkiej.04-06-2014
DWzorzec daty długiej.4 czerwca 2014
tWzorzec czasu krótkiego.14:08
TWzorzec czasu długiego.14:08:00
fWzorzec daty długiej i czasu krótkiego.4 czerwca 2014 14:08
FWzorzec daty długiej i czasu długiego.4 czerwca 2014 14:08:00
gWzorzec daty krótkiej i czasu krótkiego.04-06-2014 14:08
GWzorzec daty krótkiej i czasu długiego.04-06-2014 14:08:00
m lub MWzorzec miesiąca i dnia.4 czerwca
y lub YWzorzec roku i miesiąca.czerwiec 2014
sWzorzec sortowalny.2014-06-04T14:08:00
  • Niestandardowe formaty dla liczb
Formaty niestandardowe używane są do ręcznego stworzenia odpowiedniego wzorca. Tego sposobu formatowania należy używać tylko wtedy, gdy standardowe formaty nie są wystarczające. Wszystkie formaty składające się z litery, za którą występują jedna lub dwie cyfry, traktowane są jako formaty standardowe. Wszystkie pozostałe są interpretowane jako formaty niestandardowe. Poniżej znajdują się najczęściej używane symbole do konstruowanie niestandardowych formatów.
ZnakZnaczenie
0Cyfra jest wyświetlana zawsze.
#Cyfra jest wyświetlana, gdy jest potrzebna (używane np, aby nie wyświetlać początkowych zer).
.Określa miejsce kropki dziesiętnej. Wygląd symbolu dziesiętnego zależy od ustawień regionalnych.
,Wyznacza użycie separatora tysięcy. Wygląd separatora zależy od ustawień regionalnych.
%Mnoży liczbę przez 100 i wstawia symbol % zgodny z ustawieniami regionalnymi.
\Kolejny znak jest wstawiany literalnie do wyniku.
  • Niestandardowe formaty daty i czasu
Aby stworzyć wzorzec daty i czasu należy połączyć symbole z tabel poniżej, reprezentujące rok, miesiąc, dzień itd. w różnych formatach. Symbole dotyczące dat:
SymbolZnaczenieWynik formatownia przykładowej daty (22.06.2014)
yyOstatnie dwie cyfry roku.14
yyyyCztery cyfry roku.2014
MMNumer miesiąca.06
MMMSkrót nazwy miesiąca.cze
MMMMPełna nazwa miesiąca.czerwiec
ddNumer dnia.22
dddSkrót dnia tygodnia.N
ddddPełna nazwa dnia tygodnia.niedziela
/Separator daty. Pobierany z ustawień regionalnych.
  • Symbole dotyczące czasu:
SymbolZnaczenie
hhGodziny.
mmMinuty.
ssSekundy.
:Separator czasu. Pobierany z ustawień regionalnych.
Szczegółowe informacje na temat formatowania danych można odnaleźć na stronach MSDN w obszarze dotyczącym formatowania wartości (Formatting types: http://msdn.microsoft.com/en-us/library/dwhawy9k(v=vs.100).aspx). Domyślnie Widoczna/Dostępna – domyślne wartości, jakie ustawią się dla tej kolumny na liście. Opis – dodatkowy opis pokazujący się po najechaniu myszką na nagłówek kolumny.

Tabele użytkownika

Lista umożliwiająca dołączenie kolejnych tabel lub innych obiektów dozwolonych przez SQL do wykonywanego już zapytania. Zawiera kolumny: Lp – liczba porządkowa, służy do ustalenia kolejności dołączania tabel w zapytaniu. Nazwa tabeli – nazwa tabeli ze struktury bazy danych. Instrukcja łączenia – klauzula potrzebna do wykonania połączenia tabel np. TrN_KntID= Knt_KntID.

Parametr kolumny użytkownika na oknie personalizacji

Na oknie personalizacji znajduje się kolumna Kolumny użytkownika. Domyślnie każdy operator ma zaznaczoną tę wartość, co oznacza, że dla tego operatora są dostępne do wyboru dodatkowo zdefiniowane kolumny. Jeżeli parametr dla operatora będzie odznaczony – wówczas pomimo dodanych nowych kolumn w personalizacji, lista dla tego operatora będzie miała dostępne tylko standardowe kolumny. Na rozwijanej liście z dostępnymi kolumnami, te dodane przez użytkownika wraz z przeniesionymi domyślnymi ustawieniami w kolumnach Widoczna i Dostępna będą widoczne na końcu listy, dodatkowo pisane kursywą dla łatwego ich odróżnienia od kolumn standardowych.

Rys. Okno personalizacji

Dodawanie kolumn na listach

Podczas uruchamiania okna programu z listą, która ma dodane przez użytkownika niestandardowe tabele, zostanie najpierw wykonane sprawdzenie, czy zapytanie użytkownika nie zwraca większej ilości wierszy, niż zapytanie standardowe. Jeżeli ilość wierszy będzie taka sama, wówczas okno uruchomi się w spersonalizowanym trybie. Jeżeli natomiast ilość wierszy będzie różna, wówczas wygenerowany zostanie komunikat: Dodatkowe tabele dodane w personalizacji powodują powielanie wierszy na liście. Lista zostanie uruchomiona w trybie standardowym., po czym nastąpi uruchomienie okna bez dodatkowych kolumn i tabel.
Uwaga
Dodanie każdej tabeli użytkownika powoduje modyfikację treści FROM zapytania. W związku z tym wskazanie np. tabeli z elementami dokumentu (nawet bez wybrania kolumn z tej tabeli) będzie powodować zduplikowanie wyświetlanych wierszy i generowanie powyższego komunikatu przy otwieraniu listy.
Jeżeli nie uda się pobieranie danych na listę z dodatkowymi kolumnami i/lub tabelami, pokazany zostanie komunikat Błąd pobierania danych na listę. Lista zostanie uruchomiona w trybie standardowym., a następnie okno programu zostanie uruchomione bez dodatkowych kolumn i tabel. W przypadku ustawienia filtrowania lub sortowania wg dodanej przez użytkownika kolumny, wydruki z list mogą nie działać poprawnie, jednakże wydruk bieżącego widoku powinien zawsze działać poprawnie. W menu Narzędzia/ Testy integralności jest dostępny test Okna z dodatkowymi kolumnami sprawdzający, do których okien dodane zostały kolumny lub tabele użytkownika i prezentujący w logu nazwy tych okien.

Przekazywanie zmiennych dynamicznych

W polach Instrukcja wprowadzania danych oraz Instrukcja łączenia istnieje możliwość przekazania wybranych wartości ze zmiennych dynamicznych oraz wartości z panelu filtra. Otrzymujemy możliwość uzależnienia wartości pokazywanych w dodatkowych kolumnach od wartości ze zmiennych dynamicznych (np. uzależnienie od Operatora), czy wartości z panelu filtra (np. uzależnienie od daty aktualności listy). W polach wprowadzania instrukcji, gdzie podajemy konkretne wartości (np. 2017-11-21) mamy możliwość wykorzystania specjalnych aliasów, odpowiadających tym wartościom (np. #CDN_DataBiezaca#), przekazujących wybrane zmienne dynamiczne lub wartości z panelu filtra. Aby ułatwić wstawienie odpowiedniego aliasu menu kontekstowe wyświetla listę dostępnych wartości: Parametry standardowe - przy dodawaniu kolumn udostępnione zostały wybrane wartości ze zmiennych dynamicznych. Po wybraniu opcji Parametry standardowe rozwija się dodatkowe menu z następującymi wartościami: Parametry filtra - po wybraniu opcji Parametry filtra rozwija się dodatkowe menu z wartościami przekazywanymi z panelu filtra danej listy. Między różnymi listami mogą być różne parametry filtra. Poniżej przykład z wartościami przekazywanymi z listy pracowników: Po wybraniu wartości w miejsce kursora zostanie wstawiony odpowiedni alias.

Przykłady z instrukcją tworzenia

Handel

1. Lista zasobów/cennik. Kolumny: kod PLU, nazwa fiskalna oraz waga towaru

Potrzebne pola znajdują się w tabeli CDN.Towary. Na oknie personalizacji listy w sekcji Kolumny dostępne z aktualnie wybranych tabel należy odnaleźć pole Twr_PLU i przeciągnąć do sekcji Kolumny użytkownika oraz nadać nazwę dla kolumny. Tak samo należy postąpić w przypadku pozostałych kolumn czyli Twr_NazwaFiskalna oraz Twr_WagaKG. Dodatkowo dla pola Waga ustawiamy w kolumnie Typ formatu wyświetlania na Numeric a Format wyświetlania na N4 (N- wartość numeryczna, 4 – wyświetlanie do czterech miejsc dziesiętnych).

2. Lista zasobów/cennik. Kolumny: kod CN oraz kraj pochodzenia

Potrzebne pola znajdują się w tabeli CDN.Towary oraz CDN.KodyCN. Na oknie personalizacji listy w sekcji Tabele użytkownika należy połączyć powyższe tabele aby mieć dostęp do pól związanych z kodami CN. W związku z powyższym w kolumnie Nazwa tabeli podajemy tabelę CDN.KodyCN a w kolumnie Instrukcja łączenia wprowadzamy pola klucze łączące obie tabele Twr_KCNId=KCN_KCNId zgodnie ze strukturą bazy danych. Teraz w sekcji Kolumny dostępne z aktualnie wybranych tabel pojawią się pola z tabeli CDN.KodyCN. Należy odnaleźć pole KCN_Kod i przeciągnąć do sekcji Kolumny użytkownika oraz nadać nazwę dla kolumny. Tak samo należy postąpić w przypadku kolumny Twr_KrajPochodzenia.

3. Lista zasobów/cennik. Kolumna marża procentowa dla ceny hurtowa1 - szybkie sprawdzenie przewidywanej marży

Ceny zapisywane są w tabeli CDN.TwrCeny i wiązane z tabelą CDN.Towary po kluczu TwC_TwrId=Twr_TwrId. Ponieważ chcemy uzyskać marżę dla ceny o numerze drugim rozwiązaniem będzie zastosowanie zapytania SQL w kolumnie Instrukcja pobierania danych w sekcji Kolumny użytkownika. Ponieważ dodawanie kolumn odbywa się na oknie towarów należy w zapytaniu aliasować pole Twr_TwrId. Zapytanie będzie mieć następującą postać: (SELECT TwC_Marza From CDN.TwrCeny WHERE TwC_TwrId=A.Twr_TwrId And TwC_TwCNumer=2) Kolumna ta ma pokazywać wartość w procentach w związku z tym ustawiamy w kolumnie Typ formatu wyświetlania typ na Custom oraz w kolumnie Format wyświetlania ustawiamy maskę 00.00”%” (0 – oznacza że cyfra jest zawsze wyświetlana, . – oznacza miejsca dziesiętne, „%” – dodanie na końcu znaku procent).

4. Lista zasobów. Ilość dni zalegania towaru na magazynie/ach na podstawie najstarszej dostawy.

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych:
(SELECT TOP 1 CASE WHEN #filtrMagazynGridLookup_ID# = 0 then 
(SELECT DATEDIFF(DAY, min(TwZ_Data), GETDATE()) AS DateDiff

FROM CDN.TwrZasoby

WHERE Twr_TwrId = TwZ_TwrId)

else (SELECT DATEDIFF(DAY, min(TwZ_Data), GETDATE()) AS DateDiff

FROM CDN.TwrZasoby

WHERE Twr_TwrId = TwZ_TwrId AND TwZ_MagId = #filtrMagazynGridLookup_ID#) end)

5. Lista zasobów/cennik. Kolumna średnia cena zakupu dla dostaw, które nie zostały zdjęte z magazynu

Wyświetla średnią ważoną dla cen, po których dostawy danego towaru zostały wprowadzone do magazynu. Brane pod uwagę są tylko dostawy, które ciągle znajdują się w magazynie. Listę tych dostaw można sprawdzić otwierając formularz towaru i przechodząc na zakładkę Zasoby.
(SELECT CONVERT(DECIMAL(10, 2), AVG(TwZ_Wartosc/TwZ_Ilosc)) FROM CDN.TwrZasoby
WHERE TwZ_TwrId=Twr_TwrId)

6. Lista zasobów/cennik. Kolumna wyświetlająca ‘Tak’ jeśli towar/usługa jest udostępniany w przynajmniej jednym e-Sklepie oraz ‘Nie’ jeśli nie jest udostępniany

CASE WHEN EXISTS 
(SELECT * FROM Cdn.TwrESklep WHERE Twes_TwrID=Twr_TwrId AND Twes_Udostepnij=1) 
THEN 'Tak' ELSE 'Nie' END

7. Lista kontrahentów. Kolumna z listą atrybutów przypisanych do kontrahenta

Atrybuty przedstawiane są w formie Nazwa_atrybutu: Wartość.
STUFF(
(SELECT ', ' + DA.DeA_Kod + ': ' + KA.KnA_WartoscTXT
FROM CDN.KntAtrybuty KA
JOIN CDN.DefAtrybuty DA ON KA.KnA_DeAId=DA.DeA_DeAId
WHERE KA.KnA_PodmiotId=Knt_KntId 
FOR XML PATH (''))
,1,2,'')

8. Lista zestawów promocyjnych. Kolumna z maksymalną liczbą zestawów jakie można utworzyć, biorąc pod uwagę ilości towarów wchodzących w skład zestawu znajdujące się w magazynach

Łączna ilość ze wszystkich magazynów, dla towaru wchodzącego w skład zestawu promocyjnego jest dzielona przez ilość, w jakiej ten towar występuje w składzie zestawu. Kolumna wyświetla najniższy wynik takich obliczeń (zaokrąglony w dół do liczb całkowitych), wykonanych dla wszystkich towarów wchodzących w skład zestawu.
(SELECT FLOOR(MIN(t.sum1)) FROM
(SELECT SUM(TZ.TwZ_Ilosc) sum1 FROM CDN.TwrZasoby TZ 
JOIN CDN.ZestawyTwr ZT ON TZ.TwZ_TwrId=ZT.ZTw_TwrId
WHERE ZT.ZTw_ZTwId=ZTw_ZTwId
UNION
SELECT SUM(TZ.TwZ_Ilosc/ZTS.ZTS_Ilosc) sum1 FROM CDN.TwrZasoby TZ 
JOIN CDN.ZestawyTwrSkladniki ZTS ON TZ.TwZ_TwrId=ZTS.ZTS_TwrId
WHERE ZTS.ZTS_ZTwId=ZTw_ZTwId
GROUP BY TwZ_TwrId) t)

9. Lista dokumentów w module Handel. Kolumna Mail

Jeśli użytkownik korzysta ze skrzynki pocztowej w module CRM i wysyła wydruki faktur do swoich klientów drogą mailową to korzystając z powiązania faktura sprzedaży – mail może na liście faktur wyświetlić informację, czy faktura została wysłana do klienta. Informacja ta jest oparta o sprawdzenie czy z fakturą skojarzony jest jakikolwiek mail. Mail - w sekcji Kolumny użytkownika dodać kolumnę o instrukcji pobierania danych: CASE WHEN EXISTS (SELECT * FROM CDN.DokRelacje WHERE Dor_DokumentId=A.TrN_TrnId AND Dor_ParentTyp=1011 AND DoR_DokumentTyp = 302) THEN 'Tak' ELSE 'Nie' END

10. Lista dokumentów w module Handel. Kolumna Wydruk

Jeśli użytkownik wykonuje kopie elektroniczne wydruków faktur sprzedaży to korzystając z powiązania faktura sprzedaży – wydruk w archiwum może na liście faktur wyświetlić informację czy faktura została wydrukowana. Dla przypomnienia: kopie elektroniczne wydruków są tworzone po zaznaczeniu parametru na definicji wydruku. Wydruk - w sekcji Kolumny użytkownika dodać kolumnę o instrukcji pobierania danych: CASE WHEN EXISTS (SELECT * FROM CDN.WdrKopieElektroniczne WHERE WdKE_ObjId=A.TrN_TrNId AND WdKE_ObjType=A.TrN_typDokumentu) THEN 'Tak' ELSE 'Nie' END

11. Lista dokumentów w module Handel. Kolumna e-mail kontrahenta (Nabywcy)

Należy skorzystać z widoku CDN.PodmiotyView i dostępnego pola Pod_Email. W zapytaniu sql pola z tego widoku muszą być aliasowane. Należy odnaleźć pole Pod_Email i przeciągnąć do sekcji Kolumny użytkownika nadać nazwę dla kolumny, a następnie edytować kolumnę Instrukcja pobierania danych i ustawić alias. Ostateczna postać wyrażenia Pod.Pod_Email.

12. Lista dokumentów w module Handel. Kolumna z informacją o akronimie operatora, który zmodyfikował dokument

Dane o operatorach zapisane są w bazie konfiguracyjnej w tabeli CDN. Operatorzy. Należy wykonać złączenie do bazy konfiguracyjnej i powyższej tabeli. Na oknie personalizacji listy w sekcji Tabele użytkownika w kolumnie Nazwa tabeli podajemy tabelę i nazwę bazy do której jest ona podpięta, obie tabele muszą istnieć na serwerze SQL. Wprowadzamy [CDN_KNF_Konfiguracja].[CDN].[Operatorzy] a w kolumnie Instrukcja łączenia wprowadzamy pola klucze łączące tabele CDN.Operatorzy i CDN.TraNag czyli Ope_OpeId=TrN_OpeModId zgodnie ze strukturą bazy danych. Należy odnaleźć pole Ope_Kod i przeciągnąć do sekcji Kolumny użytkownika oraz nadać nazwę dla kolumny.

13. Lista dokumentów w module Handel. Kolumna z nazwą dnia tygodnia terminu płatności

Należy skorzystać z funkcji sqlowej CDN. NazwaDnia i podać dla niej parametry TrN_Termin oraz tryb 0. W związku z powyższym w sekcji Kolumny użytkownika w kolumnie Instrukcja łączenia wprowadzamy wyrażenie: (SELECT CDN.NazwaDnia(A.TrN_Termin, 0))

14. Lista dokumentów w module Handel. Sumaryczna waga dokumentu

Na karcie towaru można podać jego wagę, a informacja ta jest zapisywana w tabeli CDN.Towary. Aby wyświetlić na liście sumaryczną wagę dla danego dokumentu należy skorzystać z poniższego zapytania: (SELECT CAST(SUM(TRE.TrE_Ilosc * TWR.Twr_WagaKG) as numeric(36,4)) FROM CDN.TraElem TRE LEFT JOIN CDN.Towary TWR on TWR.Twr_TwrId = TRE.TrE_TwrId WHERE TRE.Tre_TrNID = A.Trn_TrnId)

15. Lista dokumentów w module Handel. Kolumna z formą płatności

Kolumna wyświetla nazwę formy płatności, która została wybrana na formularzu dokumentu.
(SELECT FPl_Nazwa FROM CDN.FormyPlatnosci WHERE FPl_FPlId=TrN_FPlId)

16. Lista dokumentów w module Handel. Akronim operatora lub pracownika, który jest opiekunem kontrahenta, dla którego został wystawiony dokument

Wyświetla akronim operatora lub pracownika, który został wskazany na formularzu kontrahenta (zakładka Dodatkowe) wybranego na dokumencie. Dane o operatorach zapisane są w bazie konfiguracyjnej. Zamiast CDN_KNF_Konfiguracja należy wprowadzić nazwę własnej bazy konfiguracyjnej.
(SELECT Ope_Kod 
FROM CDN_KNF_Konfiguracja.CDN.Operatorzy O 
JOIN CDN.Kontrahenci Knt ON TrN_PodID=Knt.Knt_KntId
WHERE Knt.Knt_OpiekunId=O.Ope_OpeID AND Knt.Knt_OpiekunTyp=8
UNION
SELECT Pre_Kod FROM CDN.PracEtaty PE 
JOIN CDN.Kontrahenci Knt ON TrN_PodID=Knt.Knt_KntId
WHERE Knt.Knt_OpiekunId=PE.Pre_PreId AND Knt.Knt_OpiekunTyp=3)

17. Lista dokumentów w module Handel. Kolumna pokazująca łączną wysokość opłaty cukrowej naliczonej dla pozycji danego dokumentu

(SELECT CONVERT(DECIMAL(10,2), SUM(TrE_Ilosc*Tre_OplataCukrowaDoliczDoCeny*
TrE_OplataCukrowaPrzelicznikML/1000)) FROM CDN.TraElem 
WHERE TrE_TrNId=TrN_TrNId)

18. Wyświetlanie na listach dokumentów numerów powiązanych dokumentów Zlecenia Nadania Przesyłek.

  • Kolumna wyświetla wszystkie zlecenia rozdzielone przecinkami.
W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych: Dla dokumentów handlowo-magazynowych:
 (SELECT SZL.SZL_NumerPelny + ', ' FROM CDN.SenditZleceniePrzesylki SZL
WHERE A.Trn_TrnID IN (select [Data] from CDN.SplitString(SZL.SZL_DokZrodlowe,','))
and SZL_DokZrodloweTyp = A.Trn_TypDokumentu
ORDER BY SZL.SZL_SZLID FOR XML PATH (''))
Dla dokumentów Zleceń serwisowych:
 (SELECT SZL.SZL_NumerPelny + ', ' FROM CDN.SenditZleceniePrzesylki SZL
WHERE A.SrZ_SrZId (select [Data] from CDN.SplitString(SZL.SZL_DokZrodlowe,','))
and SZL_DokZrodloweTyp = 900
ORDER BY SZL.SZL_SZLID FOR XML PATH (''))
  • Kolumna wyświetla pierwsze powiązane zlecenie wg ID, a po najechaniu na ten numer wszystkie powiązane.
W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych: Dla dokumentów handlowo-magazynowych:
 (SELECT SZL.SZL_NumerPelny + char(10) FROM CDN.SenditZleceniePrzesylki SZL
WHERE A.Trn_TrnID IN (select [Data] from CDN.SplitString(SZL.SZL_DokZrodlowe,','))
and SZL_DokZrodloweTyp = A.Trn_TypDokumentu
ORDER BY SZL.SZL_SZLID FOR XML PATH (''))
Dla dokumentów Zleceń serwisowych:
(SELECT SZL.SZL_NumerPelny + char(10) FROM CDN.SenditZleceniePrzesylki SZL
WHERE A.SrZ_SrZId IN (select [Data] from CDN.SplitString(SZL.SZL_DokZrodlowe,','))
and SZL_DokZrodloweTyp = 900
ORDER BY SZL.SZL_SZLID FOR XML PATH (''))

19. Lista faktur sprzedaży. Kolumna pozostaje do zapłaty

Należy skorzystać z tabeli CDN.BnkZdarzenia. Kolumna Pozostaje do zapłaty musi zostać wyliczona poprzez odjęcie od pola Razem pola Zapłacono. Trzeba stworzyć wyrażenie, które będzie sprawdzać, czy faktura została utworzona z paragonu, gdyż w przypadku, gdy faktura została przekształcona z paragonu zapisy kasowo/bankowe są tworzone dla paragonu. Do sprawdzenia, czy faktura została utworzona z paragonu, posłuży pole TrN_Rodzaj oraz pole TrN_TrNFaId z tabeli CDN.TraNag. W sekcji Kolumny użytkownika należy dodać kolumnę o nazwie Pozostaje do zapłaty i następującej instrukcji pobierania danych: CASE WHEN TrN_Rodzaj=302006 THEN (SELECT SUM(Bzd_Kwota * BZd_Kierunek) FROM CDN.BnkZdarzenia WHERE Bzd_DokumentTyp=1 AND Bzd_DokumentId=A.TrN_FaId) - (SELECT SUM(Bzd_KwotaRoz * Bzd_Kierunek) FROM CDN.BnkZdarzenia WHERE Bzd_DokumentTyp=1 AND Bzd_DokumentId =A.TrN_FaId) ELSE (SELECT SUM(Bzd_Kwota * BZd_Kierunek) FROM CDN.BnkZdarzenia WHERE Bzd_DokumentTyp=1 AND Bzd_DokumentId=A.TrN_TrNId) - (SELECT SUM(Bzd_KwotaRoz * Bzd_Kierunek) FROM CDN.BnkZdarzenia WHERE Bzd_DokumentTyp=1 AND Bzd_DokumentId =A.TrN_TrNId) END Jeśli płatności do dokumentów są w różnych walutach, to powyższe zapytanie należy zmodyfikować i dostosować do potrzeb użytkownika.

20. Lista Faktur Sprzedaży oraz Faktur Zakupu. Wyświetlanie rozliczających dokumentów KP/KW.

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych:
ISNULL(STUFF((SELECT '# ' + CASE WHEN BRK_LDokTyp=1 AND BRK_LDokID=BZd_BZdID THEN
BRK_PNumer ELSE BRK_LNumer END
FROM cdn.BnkZdarzenia A JOIN
cdn.BnkRozKwoty B ON (B.BRK_LDokTyp=1 AND B.BRK_LDokID=A.BZd_BZdID OR
B.BRK_PDokTyp=1 AND B.BRK_PDokID=A.BZd_BZdID)
WHERE ((((BZd_DokumentTyp = 1 AND BZd_DokumentID = TrN_TrNID)))) FOR XML
PATH('')),1,1,''),'nierozliczony')

21. Lista Faktur Sprzedaży oraz Faktur Zakupu. Wyświetlanie daty rozliczenia dokumentu.

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych:
(ISNULL((Select DataRoz=STUFF( (SELECT ', ' + cast(Bzd_dataRoz as nvarchar(25))
From CDN.BnkZdarzenia T1 WHERE T1.BZd_DokumentID = T2.BZd_DokumentID
FOR XML PATH ('')), 1, 1, '')
FROM CDN.BnkZdarzenia T2 Where BZd_DokumentTyp = 1
And BZd_DokumentId = TrN_TrNId group
by BZd_DokumentID),' nierozliczony'))

22. Lista Faktur Sprzedaży oraz Paragonów. Wyświetlanie powiązanych dokumentów Wydania Zewnętrznego.

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych:
STUFF((select ', ' + POW.TrN_NumerPelny from CDN.Powiazania(A.Trn_TrnId,
A.TrN_TypDokumentu) POW where POW.TrN_TypDokumentu = 306 
FOR XML PATH('')), 1, 2, '')

23. Lista Faktur Sprzedaży oraz Wydań Zewnętrznych. Wyświetlanie powiązanych korekt.

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych:
(select TRN.TrN_NumerPelny + ', ' from cdn.tranag TRN where 
TrN_ZwrId = A.TrN_TrNID AND TRN.TrN_Anulowany = 0 for xml path (''))

24. Lista dokumentów WZ. Kolumna marża

Marża wyliczana jest jako różnica pomiędzy sumą Wartości Netto pozycji dokumentu a sumą ich Wartości Zakupu. Zastosujemy zapytanie SQL w kolumnie Instrukcja pobierania danych w sekcji Kolumny użytkownika. Zapytanie wyliczające marżę dokumentu będzie wyglądać następująco: (SELECT SUM(TrE_WartoscNetto) - SUM(TrE_WartoscZakupu) FROM CDN.TraElem WHERE TrE_TrnId=A.TrN_TrnId)

25. Wyświetlanie na liście Wydań Zewnętrznych informacji, czy do powiązanego z nim zamówienia (Rezerwacji Odbiorcy) ma być wystawiony Paragon/Faktura.

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych:
(SELECT
CASE TRN.TrN_eSklepRodzajDokumentu
       WHEN 1 THEN 'Paragon'
       WHEN 2 THEN 'Faktura'
       ELSE '' END
FROM CDN.Tranag TRN
where TRN.TrN_TrNID = (Select top 1 ISNULL(TrN_TrnID,0) from
cdn.Powiazania(A.Trn_TrnID,306) where TrN_TypDokumentu = 308 
order by Trn_DataOpe))

26. Wyświetlanie na liście Rezerwacji Odbiorcy informacji, czy do zamówienia ma być wystawiony Paragon/Faktura.

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych: (CASE A.TrN_eSklepRodzajDokumentu WHEN 1 THEN 'Paragon' WHEN 2 THEN 'Faktura' ELSE '' END)

27. Lista Faktur Pro Forma. Kolumna wyświetlająca sumę wartości netto wszystkich powiązanych Faktur Zaliczkowych

(SELECT SUM(TN.TrN_RazemNetto) 
FROM CDN.TraNag TN
JOIN CDN.TraNagRelacje TNR ON TNR.TrR_TrNId = TN.TrN_TrNID 
WHERE TNR.TrR_FaId = A.TrN_TrNID AND TN.TrN_Rodzaj=302200)

28. Lista zgłoszeń przewozu towaru SENT – Kod CN.

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych: STUFF( ( SELECT ', ' + CAST(SNEL_KodCN AS VARCHAR(MAX)) FROM CDN.SentElement WHERE SNEL_SentID = Sent_SentID FOR XML PATH('') ) ,1,2,'' )

29. Formularz dokumentu w module Handel. Ostatnia cena zakupu

W pierwszej kolejności należy dołączyć tabelę CDN.TwrCeny – instrukcja łączenia: twc_twrid = tre_twrid Kolejny krok to samo zapytanie wyciągające cenę zakupu z cennika. Będzie to zawsze ostatnia cena zakupu zgodnie z konfiguracją programu (uwzględnianie korekt itp.): (SELECT TwC_Wartosc from CDN.TwrCeny WHERE TwC_TwCNumer =1 AND TwC_TwrId = TrE_TwrId)

30. Formularz dokumentu w module Handel. Sumaryczna waga pozycji

Na karcie towaru można podać jego wagę, a informacja ta jest zapisywana w tabeli CDN.Towary. Aby wyświetlić na formularzu dokumentu sumaryczną wagę dla danej pozycji, należy skorzystać z poniższego zapytania: (SELECT CAST(_DATASOURCE_.TrE_Ilosc * TWR.Twr_WagaKG as numeric(36,4)) FROM cdn.Towary TWR WHERE TWR.Twr_TwrId = _DATASOURCE_.TrE_TwrId)

31. Formularz dokumentu w module Handel. Kolumny: Ilość dostępna i braki towaru, na magazynie z dokumentu i z datą wystawienia dokumentu

Na oknie konfiguracji kolumn dodatkowych dodajemy w obszarze dodatkowych tabel tabelę CDN.TraNag z łączem UsrA.Trn_TrnID = Tre_TrnID Następnie w oknie dodatkowych kolumn dodajemy kolumnę Ilość dostępna: (select case when TwI_Ilosc - TwI_Rezerwacje >0 then TwI_Ilosc - TwI_Rezerwacje else 0 end from CDN.TwrIlosci B where B.TwI_TwrId = Tre_TwrId and B.TwI_MagId = TrE_MagId --MagID And B.TwI_Data = ( Select Top 1 H.TwI_Data From CDN.TwrIlosci H Where H.TwI_TwrId = B.TwI_TwrID --A.Twr_TwrId and H.TwI_MagId = TrE_MagId --magId And H.TwI_Data <= TrN_DataDok --'2016-03-10' Order By H.TwI_Data Desc )) A dla kolumny Braki: (select TwI_Braki from CDN.TwrIlosci B where B.TwI_TwrId = Tre_TwrId and B.TwI_MagId = TrE_MagId --MagID And B.TwI_Data = ( Select Top 1 H.TwI_Data From CDN.TwrIlosci H Where H.TwI_TwrId = B.TwI_TwrID --A.Twr_TwrId And H.TwI_MagId = TrE_MagId --magId And H.TwI_Data <= TrN_DataDok --'2016-03-10' Order By H.TwI_Data Desc ))

32. Formularz dokumentu w module Handel. Ostatnia cena zakupu, data ostatniej dostawy oraz średnia cena zakupu

Ostatnia cena zakupu: Należy dodać tabelę CDN.TwrCeny z łączeniem Tre_TwrId = Twc_TwrId and Twc_TwCNumer = 1 Instrukcja pobierania danych dla kolumny ma postać: TwC_Wartosc Data ostatniej dostawy: Należy dodać tabelę CDN.TraSElem z łączeniem Tre_TwrId = Trs_TwrId Instrukcja pobierania danych dla kolumny ma postać: (select MAX(trs_dataope) from cdn.traselem where trs_typ = 1) Średnia cena zakupu: Należy dodać tabelę CDN.TraSElem z łączeniem Tre_TwrId = Trs_TwrId Instrukcja pobierania danych dla kolumny ma postać: (select CONVERT(decimal(10,2), AVG(trs_cena)) from cdn.traselem where trs_typ = 1)

33. Formularz dokumentu w module Handel. Kolumna wartość atrybutu pozycji

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych: STUFF( (SELECT ', ' + CASE trA_Wartosc WHEN '' THEN '{pusty}' ELSE CASE DEA.DeA_Format WHEN 4 THEN CAST(FORMAT(DATEADD(DAY,CAST(trA_Wartosc AS INT),'1800/12/28'),'yyyy-MM-dd') AS NVARCHAR) ELSE TrA_Wartosc END END FROM cdn.TraElemAtr TRA LEFT JOIN cdn.DefAtrybuty DEA ON TRA.TrA_DeAId = DEA.DeA_DeAId WHERE TRA.TrA_Kod='KOD_ATRYBUTU' AND TRA.TrA_TrEID = TrE_TrEId FOR XML PATH ('')) ,1,2,'') gdzie w miejsce KOD_ATRYBUTU trzeba wprowadzić konkretny kod.

34. Formularz dokumentu w module Handel. Kolumna pokazująca, z którego dokumentu agregowanego pochodzi dana pozycja

W przypadku gdy dokument, którego formularz jest aktualnie otwarty powstał w wyniku przekształcenia więcej niż jednego dokumentu, możliwe będzie zidentyfikowanie z jakiego dokumentu pochodzi dana pozycja.
STUFF(
(SELECT ', ' + TRN.TrN_NumerPelny
FROM CDN.TraNag TRN
JOIN CDN.TraElem TE ON TE.TrE_TrNId=TRN.TrN_TrNId
JOIN CDN.TraElemRelacje TER ON TER.TeR_ParentId=TE.TrE_TrEID
WHERE TER.TeR_ChildId=_DATASOURCE_.TrE_TrEID
FOR XML PATH (''))
,1,2,'')

35. Formularz dokumentu w module Handel. Kolumna z listą atrybutów przypisanych do pozycji dokumentu

Atrybuty przedstawiane są w formie Nazwa_atrybutu: Wartość. Prawidłowe wartości w tej kolumnie będą się wyświetlać dopiero po zapisaniu i ponownym otwarciu dokumentu.
STUFF(
(SELECT ', ' + ATR.TrA_Kod + ': ' + ATR.TrA_Wartosc 
FROM CDN.TrAElemAtr ATR 
WHERE ATR.TrA_TrEId=_DATASOURCE_.TrE_TrEID 
FOR XML PATH (''))
,1,2,'')

36. Formularz Inwentaryzacji. Średnia cena zakupu dostaw znajdujących się w magazynie, dla którego wykonywana jest inwentaryzacja

Kolumna dla każdego z towarów wprowadzonych na Arkusz Inwentaryzacyjny wyświetla średnią cenę zakupu dostaw, które ciągle znajdują się w magazynie, dla którego wykonywana jest inwentaryzacja.
(SELECT CONVERT(DECIMAL(10,2), AVG(TwZ_Wartosc/TwZ_Ilosc)) 
FROM CDN.TwrZasoby 
WHERE TwZ_TwrId=TrE_TwrId AND TrE_MagId=TwZ_MagId)

37. Okno historii Towaru - kolumna opis dokumentu

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych: (Select Trn_Opis from cdn.TraNag TRN where TRN.TrN_TrNId = _DATASOURCE_.TrNId)

Serwis, CRM, Obieg dokumentów

1. Lista zleceń serwisowych. Kolumny: nazwa urządzenia, opis urządzenia, priorytet zlecenia

Nazwa urządzenia - należy skorzystać z dostępnej na liście kolumny: SrU_Nazwa Opis urządzenia - należy skorzystać z dostępnej na liście kolumny: SrU_Opis Priorytet zlecenia - w sekcji „Kolumny użytkownika” dodać kolumnę o instrukcji pobierania danych:CASE SrZ_Priorytet WHEN 1 THEN 'najwyższy' WHEN 2 THEN 'wysoki' WHEN 3 THEN 'niski' WHEN 4 THEN 'najniższy' END

2. Zlecenie serwisowe. Zakładka Części. Kolumna z numerem dokumentu wydającego część

W sekcji Tabele użytkownika należy wykonać złączenie do trzech tabel:
  • CDN.TraElemRelacje po polach TeR_ParentId = SrC_SrCId and TeR_ParentTyp = 902,
  • CDN.TraElem po polach TrE_TrEId = TeR_ChildId,
  • CDN.TraNag po polach TrN_TrNId = TrE_TrNId.
Następnie w sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych TrN_NumerPelny.

3. Lista Ofert Handlowych. Kolumna zawierająca numery dokumentów powiązanych

Kolumna wyświetla dokumenty, które powstały z przekształcenia danej Oferty Handlowej.
STUFF(
(SELECT ', ' + TRN.TrN_NumerPelny
FROM CDN.TraNag TRN
JOIN CDN.DokRelacje DR ON DR.DoR_DokumentId=TRN.TrN_TrNID
WHERE DR.DoR_ParentId = OfD_OfDId AND DR.DoR_ParentTyp=800 
FOR XML PATH (''))
,1,2,'')

4. Oferta Handlowa. Dodanie kolumny zawierającej cenę zakupu w liście elementów

W sekcji Tabele użytkownika należy wykonać złączenie do jednej tabeli : CDN.TwrCeny W polu instrukcja łączenie wpisujemy TwC_TwCNumer=1 and TwC_TwrID =TwrId W obszarze Kolumny użytkownika dodajemy nową kolumnę Cena Zakupu o instrukcji TwC_Wartosc

5. Formularz Oferty Handlowej, zakładka Kontrahent. Kolumna z numerami dokumentów, które zostały wygenerowane dla danego Kontrahenta poprzez przekształcenie aktualnie otwartej Oferty

STUFF(
(SELECT ', ' + TRN.TrN_NumerPelny
FROM CDN.TraNag TRN
JOIN CDN.DokRelacje DR ON TRN.TrN_TrNId=DR.DoR_DokumentId
JOIN CDN.OfertyKnt OK ON DR.DoR_ParentId=OK.OfK_OfDId
WHERE OK.OfK_OfKId=_DATASOURCE_.Ofk_OfkId AND DR.DoR_ParentTyp=800 AND 
TRN.TrN_PodID=_DATASOURCE_.Ofk_PodID
FOR XML PATH (''))
,1,2,'')

6. Lista biblioteki dokumentów. Kolumny: schemat obiegu oraz etap bieżący

Schemat obiegu - należy skorzystać z dostępnej na liście kolumny: DNV_ProcesKod Etap bieżący - Należy w sekcji Tabele użytkownika wykonać złączenie do bazy konfiguracyjnej i tabeli CDN. SekEtapy. W kolumnie Nazwa tabeli należy wprowadzić [CDN_KNF_Konfiguracja].[CDN].[SekEtapy] a w kolumnie Instrukcja łączenia wprowadzić DNV_EtapBiezacyLP=SE_SEID. Teraz w sekcji Kolumny użytkownika skorzystać z dostępnej na liście kolumny: SE_Symbol

Księgowość i Kasa/Bank

1. Rejestr VAT. Kolumna do jakiego dziennika został zapis z rejestru zaksięgowany oraz jaki ma numer w dzienniku

Potrzebne pola znajdują się w tabeli CDN.DekretyNag. Na oknie personalizacji listy w sekcji Tabele użytkownika należy połączyć powyższe tabele aby mieć dostęp do pól związanych z dziennikami. W związku z powyższym w kolumnie Nazwa tabeli podajemy tabelę CDN.DekretyNag a w kolumnie Instrukcja łączenia wprowadzamy pola klucze łączące obie tabele VaN_DekId = DeN_DeNId zgodnie ze strukturą bazy danych. Teraz w sekcji Kolumny dostępne z aktualnie wybranych tabel pojawią się pola dostępne z tabeli CDN.DekretyNag. Należy odnaleźć pole DeN_Dziennik i przeciągnąć do sekcji Kolumny użytkownika oraz nadać nazwę dla kolumny. Tak samo dla kolumny DeN_NrKsiegi.

2. Rejestr VAT. Kolumny: forma płatności, termin, kwota zaksięgowania do KPiR-kwota, data księgowania, numer korekty, numer dziennika cząstkowego

Forma płatności -  należy skorzystać z dostępnej na liście kolumny: Fpl_Nazwa Termin -  należy skorzystać z dostępnej na liście kolumny: VaN_Termin Kwota zaksięgowana do KPiR -  Kwota:   Należy w sekcji Tabele użytkownika wykonać złączenie do tabeli CDN.ZapisyKPR po polach VaN_KPRID=KpR_KPRID. Teraz w sekcji Kolumny użytkownika dodać kolumnę o instrukcji pobierania danych: KPR_Sprzedaz+KPR_Pozostale+KPR_Towary+KPR_Uboczne+KPR_Reklama+KPR_Wynagrodz+KPR_Inne+KPR_Zaszlosci Data księgowania - należy skorzystać z dostępnej na liście kolumny: KPR_DataOpe Numer korekty - należy skorzystać z dostępnej na liście kolumny: VaN_Korekta Numer dziennika cząstkowego - Należy w sekcji Tabele użytkownika wykonać złączenie do tabeli CDN.DekretyNag po polach VaN_DekID=DeN_DeNID. Teraz w sekcji Kolumny użytkownika dodać kolumnę o instrukcji pobierania danych: DeN_Dziennik+'/'+CONVERT(varchar(20),DeN_NrDziennika)

3. Lista środków trwałych. Kolumny: metoda amortyzacji, opis

Metoda amortyzacji - w sekcji Kolumny użytkownika dodać kolumnę o instrukcji pobierania danych: CASE SrT_Metoda WHEN 1 THEN 'Liniowa' WHEN 2 THEN 'Degresywna' WHEN 3 THEN 'Jednorazowy' WHEN 4 THEN 'Naturalna' WHEN 5 THEN 'Nie amortyzowany' ENDOpis - należy skorzystać z dostępnej na liście kolumny: Srt_Opis.

4. Lista dokumentów środków trwałych. Kolumny: osoba przekazująca, osoba przyjmująca, miejsce użytkowania przekazujące, miejsce użytkowania przyjmujące

Osoba przekazująca - należy skorzystać z dostępnej na liście kolumny: SrH_PrcImieNazwisko1 Osoba przyjmująca - należy skorzystać z dostępnej na liście kolumny: SrH_PrcImieNazwisko2 Miejsce użytkowania przekazujące - należy skorzystać z dostępnej na liście kolumny: SrH_MiejsceUzytkowania1 Miejsce użytkowania przyjmujące - należy skorzystać z dostępnej na liście kolumny: SrH_MiejsceUzytkowania2

5. Lista ewidencji dodatkowej. Kolumna kod kategorii

Kod kategorii: Należy w sekcji Tabele użytkownika wykonać złączenie do tabeli CDN. Kategorie po polach EDN_KatID=Kat_KatID. Teraz w sekcji Kolumny użytkownika dodać kolumnę o instrukcji pobierania danych Kat_KodSzczegol

6. Lista not odsetkowych, ponagleń zapłaty, potwierdzeń sald. Kolumna kod podmiotu

Kod podmiotu -  należy skorzystać z dostępnej na liście kolumny: Pod_Kod

7. Lista dokumentów rozliczonych. Kolumna pokazująca czy rozliczenie zostało uwzględnione na dokumencie kompensaty

Należy w sekcji Tabele użytkownika wykonać złączenie do tabeli CDN.KompensatyElem po polach BrK_BrkId=Kpe_BrkId. Teraz w sekcji Kolumny użytkownika dodać kolumnę o instrukcji pobierania danych: CASE Brk_BrkId WHEN Kpe_BrkId THEN 'Tak' ELSE '' END

8. Lista deklaracji. Kolumna z polem kwotowym z deklaracji utworzonej w Comarch Deklaracje Podatkowe

Należy w sekcji Kolumny użytkownika dodać kolumnę o instrukcji pobierania danych: (select convert(decimal (18,2),replace(JSON_VALUE(DkE_WartoscTekst, '$.Deklaracja.PozycjeSzczegolowe.P_66'),',','.') ) AS kwota from cdn.DeklElem where DkE_DkNID= DkN_DkNID and DkE_Numer=50 and DkN_TypDeklar=17 and DkN_Wersja =32)CASE Brk_BrkId WHEN Kpe_BrkId THEN 'Tak' ELSE '' END Jest to przykład, który z deklaracji CIT-8 w wersji 32 zwraca wartość pola 66. Ta definicja działa dla Windows Server 2016 I późniejszych.  

Płace i Kadry

1. Lista pracowników. Kolumna z wartością atrybutu o nazwie Atrybut 1 na dzień bieżący

Potrzebne pola znajdują się w tabeli CDN.OAtrybuty oraz CDN.OAtrybutyHist. Na oknie personalizacji listy w sekcji Tabele użytkownika należy dołączyć powyższe tabele, aby mieć dostęp do ich pól. W związku z tym w kolumnie Nazwa tabeli dodajemy tabelę CDN.OAtrybuty, a w kolumnie Instrukcja łączenia wprowadzamy pola łączące obie tabele oraz dodatkowy warunek dla atrybutu o nazwie Atrybut 1, wprowadzamy zatem: OAT_PrcId = PRI_PraId AND OAT_NazwaKlasy = 'Atrybut 1'Następnie podajemy drugą tabelę CDN.OAtrybutyHist, a w kolumnie Instrukcja łączenia wprowadzamy pola łączące obie tabele oraz dodatkowy warunek filtrujący zakres dat na dzień bieżący, wprowadzamy zatem: ATH_OatId = OAT_OatId AND ATH_DataOd <= GETDATE() AND ATH_DataDo >= GETDATE()Teraz w sekcji Kolumny dostępne z aktualnie wybranych tabel pojawią się pola dostępne z tabeli CDN.OAtrybutyHist. Należy odnaleźć pole ATH_Wartosc i przeciągnąć do sekcji Kolumny użytkownika oraz nadać nazwę dla kolumny.

2. Lista pracowników. Kolumna z wartością atrybutu o nazwie Atrybut 1 na dzień daty aktualności listy

Potrzebne pola znajdują się w tabeli CDN.OAtrybuty oraz CDN.OAtrybutyHist. Na oknie personalizacji listy w sekcji Tabele użytkownika należy dołączyć powyższe tabele, aby mieć dostęp do ich pól. W związku z tym w kolumnie Nazwa tabeli dodajemy tabelę CDN.OAtrybuty, a w kolumnie Instrukcja łączenia wprowadzamy pola łączące obie tabele oraz dodatkowy warunek dla atrybutu o nazwie Atrybut 1, wprowadzamy zatem: OAT_PrcId = PRI_PraId AND OAT_NazwaKlasy = 'Atrybut 1'Następnie podajemy drugą tabelę CDN.OAtrybutyHist, a w kolumnie Instrukcja łączenia wprowadzamy pola łączące obie tabele oraz dodatkowy warunek filtrujący zakres dat na dzień daty aktualności listy, wprowadzamy zatem: ATH_OatId = OAT_OatId AND ATH_DataOd <= #filtr_dtDataAkt# AND ATH_DataDo >= #filtr_dtDataAkt#Teraz w sekcji Kolumny dostępne z aktualnie wybranych tabel pojawią się pola dostępne z tabeli CDN.OAtrybutyHist. Należy odnaleźć pole ATH_Wartosc i przeciągnąć do sekcji Kolumny użytkownika oraz nadać nazwę dla kolumny.

3. Lista pracowników. Kolumna z pełnym kodem ubezpieczenia pracownika na dzień daty aktualności listy

Na oknie personalizacji listy w sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych: CASE WHEN LEN(PRE_UBZTyuId) = 3 THEN '0' + CAST(PRE_UBZTyuId as CHAR(3)) + CAST(PRE_PrawoER as CHAR(1)) + CAST(PRE_StNiepelnosp as CHAR(1)) WHEN PRE_UBZTyuId = 99999 THEN '' ELSE CAST(PRE_UBZTyuId as CHAR(4)) + CAST(PRE_PrawoER as CHAR(1)) + CAST(PRE_StNiepelnosp as CHAR(1)) END

4. Lista pracowników. Kolumna z wyszczególnioną datą ważności badań okresowych, która upłynęła lub upłynie w okresie 30 dni od daty

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych:
(select PRE_WaznoscBadanOkres from cdn.pracetaty a where 
pri_praid = a.pre_praid and year(a.pre_datado) = 2999)
W celu wyróżnienia kolorem daty ważności badań okresowych, która upłynęła lub upłynie w okresie 30 dni od daty aktualności w Stylach wartości należy dodać poniższy warunek:
(select PRE_WaznoscBadanOkres from cdn.pracetaty a where pri_praid = a.pre_praid 
and year(a.pre_datado) = 2999) <= #filtr_dtDataAkt# + 30 AND 
(select PRE_WaznoscBadanOkres from cdn.pracetaty a where 
pri_praid = a.pre_praid and year(a.pre_datado) = 2999) >= #filtr_dtDataAkt# -30

5. Lista pracowników. Kolumna z wyszczególnioną datą zwolnienia, która upłynęła lub upłynie w okresie 5 dni od daty aktualności.

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych:
(select PRE_ZatrudnionyDo from cdn.pracetaty a where pri_praid = a.pre_praid 
and year(a.pre_datado) = 2999)
W celu wyróżnienia kolorem daty zwolnienia, która upłynęła lub upłynie w okresie 5 dni od daty aktualności w Stylach wartości należy dodać poniższy warunek:
(select PRE_ZatrudnionyDo from cdn.pracetaty a where pri_praid = a.pre_praid 
and year(a.pre_datado) = 2999) <= #filtr_dtDataAkt# + 5 AND 
(select PRE_ZatrudnionyDo from cdn.pracetaty a where pri_praid = a.pre_praid 
and year(a.pre_datado) = 2999) >= #filtr_dtDataAkt# -5

6. Lista pracowników. Kolumna z datą rozwiązania nierozliczonej umowy, która zakończyła się 10 dni temu w stosunku do daty aktualności.

W sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych:
(select top 1 umw_datado from cdn.umowy where umw_splacona < UMW_Brutto 
and UMW_Praid = Pra_Praid and UMW_DataDo <= #filtr_dtDataAkt# - 10)

7. Lista pracowników. Kolumna z wyszczególnioną datą ważności uprawnienia Szkolenie BHP (UPR_UprId=52), która upłynęła lub upłynie w okresie 30 dni od daty aktualności.

Potrzebne pole znajduje się w tabeli CDN.Uprawnienia. Na oknie personalizacji listy w sekcji Tabele użytkownika należy dołączyć powyższą tabelę, aby mieć dostęp do jej pól. W związku z tym w kolumnie Nazwa tabeli dodajemy tabelę CDN.Uprawnienia, a w kolumnie Instrukcja łączenia wprowadzamy pola łączące obie tabele oraz dodatkowy warunek dla uprawnienia o Id=52, wprowadzamy zatem:
upr_praid=pra_praid and upr_dkmid=52
W sekcji Kolumny dostępne z aktualnie wybranych tabel pojawią się pola dostępne z tabeli CDN.Uprawnienia. Należy odnaleźć pole UPR_KursTermin i przeciągnąć do sekcji Kolumny użytkownika oraz nadać nazwę dla kolumny. W celu wyróżnienia kolorem daty ważności uprawnienia, która upłynęła lub upłynie w okresie 30 dni od daty aktualności w Stylach wartości należy dodać poniższy warunek:
UPR_KursTermin <= #filtr_dtDataAkt# + 30 AND UPR_KursTermin>= 
#filtr_dtDataAkt# -30

8. Lista wypłat pracowników. Kolumna z sumą naliczonej zaliczki podatku (bez zaokrągleń) w wypłacie pracownika dla wybranej listy płac

Potrzebne pola znajdują się w tabeli CDN.Wyplaty. Należy wykonać złączenie do powyższej tabeli. Na oknie personalizacji listy w sekcji Tabele użytkownika w kolumnie Nazwa tabeli podajemy tabelę CDN.Wyplaty, a w kolumnie Instrukcja łączenia wprowadzamy pola łączące obie tabele oraz dodatkowy warunek przekazujący ID wybranej listy płac, wprowadzamy zatem: WPL_PraId = PRI_PraId and WPL_LplId = #filtr_LookupListaPlac_ID# Następnie w sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych: (SELECT SUM(WPE_NalFis) FROM CDN.WypElementy WHERE WPE_WplId = WPL_WplId)

9. Lista wypłat pracowników. Kolumna z sumą naliczonej zaliczki podatku (bez zaokrągleń) w wypłacie pracownika dla wybranej listy płac – przypadek, gdy dwie wypłaty (np. umowy cywilnoprawne) policzone są w jednej wypłacie

Na oknie personalizacji listy w sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych: (SELECT Suma FROM ( SELECT WPE_WplId, WPE_PraId, SUM(WPE_NalFis) OVER(PARTITION BY WPE_PraID) AS Suma, WPL_LplId, ROW_NUMBER() OVER(PARTITION BY WPE_PraID ORDER BY WPE_NalFis) AS "Row Number" FROM CDN.WypElementy JOIN CDN.Wyplaty ON WPL_WplId = WPE_WplId WHERE WPL_LplId = #filtr_LookupListaPlac_ID# GROUP BY WPL_LplId, WPE_PraId, WPE_NalFis, WPE_WplId, WPE_WpeId) AS T WHERE "Row Number" = 1 AND WPE_PraId = PRI_PraId)

10. Deklaracje PIT pracowników. Kolumna z kwotą przychodu ze stosunku pracy (pozycja 29) z deklaracji PIT-11 za wybrany rok.

Potrzebne pola znajdują się w tabeli CDN.DeklElem. Należy wykonać złączenie do powyższej tabeli. W oknie personalizacji listy, w sekcji Tabele użytkownika w kolumnie Nazwa tabeli podajemy tabele CDN.DeklElem, a w kolumnie Instrukcja łączenia wprowadzamy pola łączące obie tabele oraz dodatkowy warunek dke_numer=1, który wskazuje na wypełnioną deklarację web w formacie JSON: dkn_dknid=dke_dknid and dke_numer=1 Następnie w sekcji Kolumny użytkownika należy dodać kolumnę o instrukcji pobierania danych: (select convert(decimal (18,2),replace(JSON_VALUE(DkE_WartoscTekst, '$.Deklaracja.PozycjeSzczegolowe.P_29'),',','.') )) W przypadku potrzeby odwołania się do innej pozycji z deklaracji PIT należy podać odpowiedni numer pola z pliku JSON.

OPT042 - Dodatkowe możliwości filtrowania list w programie

Data aktualizacji: 20-11-2019

Teoria i przykłady praktyczne

Panel filtra zaawansowanego

Filtr jest narzędziem wspomagającym przeszukiwanie list. W wielu miejscach systemu pojawiają się różnego rodzaju listy, do których można stosować filtry. Filtrowanie listy powoduje zawężenie ilości elementów wyświetlanych na liście do takich, które spełniają warunki filtra. Panel filtra można stosować na dwa sposoby:
  • Proste filtrowanie
  • Filtr zaawansowany
We wszystkich przypadkach list, które mogą być filtrowane, panel filtra zaawansowanego znajduje się na dole listy. Po prawej stronie wiersza filtra znajdują się zawsze przyciski do włączania i wyłączania działania filtra -Filtruj, Wyczyść filtr oraz przycisk do tworzenia warunków filtrujących filtra zaawansowanego Konstruktor filtra. Jeżeli pinezka (widoczna obok ikony filtrowania – lejka) jest: wyłączona – wówczas po zmianie filtrowania na ikonie lejka pojawia się znak zapytania i dopiero po jego kliknięciu uruchomione zostanie filtrowanie. Ten tryb pracy jest efektywniejszy gdy lista zwiera bardzo dużo pozycji. Można wtedy najpierw ustawić wszystkie parametry filtrowania, a dopiero na końcu uruchomić samo przefiltrowanie listy. włączona – wszystkie zmiany filtrowania wykonywane są na bieżąco i od razu widoczne są na liście. Filtr zaawansowany pozwala filtrować listę według stworzonych przez Użytkownika warunków. Filtry zaawansowane są zapamiętywane w systemie. Nazwa filtra zaawansowanego jest poprzedzona znakiem "#". Do tworzenia filtra zaawansowanego służy Konstruktor filtra , uruchamiany z dowolnego okna, w którym istnieje możliwość zastosowania filtra. Praca z konstruktorem filtra wymaga pewnej znajomości struktury baz danych oraz umiejętności formułowania warunków logicznych. Nazwa - nazwa filtra. Po zapisaniu filtra wpisana w tym polu nazwa zostanie poprzedzona znakiem "#". Filtr pod tą nazwą będzie zapisany w zbiorze dostępnych filtrów dla danej listy. Zbiór filtrów przyporządkowanych do danej listy może być dowolnie modyfikowany tzn. można dodawać, poprawiać i usuwać zdefiniowane filtry.

Zakładka [Ogólne]

Zakładka [Ogólne] zawiera mechanizm łatwego konstruowania rozbudowanego wyrażenia logicznego filtrującego listę. W rozbudowanej postaci warunek logiczny może składać się z wielu członów połączonych operatorami logicznymi "oraz" (AND), "lub" (OR), "oraz nie" (AND Not) i "lub nie" (OR Not). W konstruktorze filtra tworzy się proste warunki logiczne, a następnie łączy się je za pomocą dostępnych operatorów.
Konstruktor filtra – zakładka Ogólne
Tworzenie pojedynczego wyrażenia filtra zaczyna się od dodania warunku (po kliknięciu w domyślny operator Oraz wybieramy opcję Dodaj warunek lub obok wciskamy przycisk). Następnie w warunku kliknięcie na domyślnie podstawione pierwsze pole z bazy danych rozwija listę z wyborem dostępnych pól. Nie trzeba znać dokładnie nazw pól czy struktury bazy - po prawej stronie listy znajduje się opis (komentarz).
Konstruktor filtra – lista dostępnych pól z bazy danych
Dostęp do pól zorganizowany jest za pośrednictwem list rozwijanych. W zależności od tego, dla jakiej listy tworzony jest filtr (z poziomu którego okna został wywołany konstruktor filtra), lista dostępnych pól jest różna. Przykładowo, jeżeli konstruktor filtra zostanie wywołany z okna Kontrahenci - wówczas dostępne będą pola związane z kartoteką kontrahenta. Za każdym razem Użytkownik otrzymuje zestaw dostępnych pól odpowiedni do danej listy. Dzięki temu, chcąc tworzyć własne filtry, nie musi znać całej bazy danych. Może się ograniczyć do znajomości struktury kilku tabel, w oparciu o które będzie budował własne filtry. Po wyborze pola należy wybrać odpowiedni operator porównania z listy. Lista pojawi się po kliknięciu na domyślnie wyświetlany operator.
Konstruktor filtra – dostępne operatory warunkujące
Inaczej mówiąc, należy przyrównać wybrane pole do ustalonej z góry wartości stałej lub do parametru, którego wartość będzie pobierana w momencie uruchamiania filtra. Wartość do której będzie odbywało się przyrównanie wpisujemy po kliknięciu w pole . Tworzenie wyrażenia może odbywać się także w oknie Edycja wyrażenia filtra, które uruchamia się po kliknięciu w pole , a następnie przycisku plusa po prawej stronie . Po wywołaniu okna Edycja wyrażenia filtra należy podać wartość szukaną dla tego pola. Jeżeli wartość szukana ma być pobierana w momencie uruchomienia filtra to należy zaznaczyć pole wyboru Pytaj o wartość. Następnie w polu Tytuł należy wpisać opis pobieranej wartości. W ten prosty sposób tworzy się filtry z parametrem. Poniżej przedstawione zostało okno z pytaniem o parametry filtra. Okno pojawia się automatycznie po uruchomieniu filtra z parametrem.
Edycja wyrażenia filtra
Logiczna reprezentacja utworzonego w ten sposób wyrażenia filtrującego jest wyświetlana w dolnej części okna po zaakceptowaniu Edycji wyrażenia filtra.

Zakładka [Zaawansowane]

Zakładka [Ogólne] konstruktora filtra pozwala na łatwe budowanie wyrażeń filtrujących, posiada on jednak pewne ograniczenia. Dla bardziej wymagających Użytkowników została zaprojektowana zakładka [Zaawansowane]. Można tu ręczne tworzyć warunek filtrujący. Zakładka [Zaawansowane] posiada pole, do którego wprowadzany jest filtr w postaci wyrażenia z użyciem składni języka SQL. Praca z konstruktorem filtra wymaga znajomości struktury baz danych oraz umiejętności formułowania warunków logicznych.
Uwaga
Aby zobaczyć listę zdefiniowanych filtrów należy przycisnąć klawisz CTRL razem z LEWYM KLAWISZEM MYSZY na przycisku Konstruktor filtra. Lista ta obsługiwana jest przez standardowe przyciski i klawisze umożliwiające dodawanie, edytowanie i kasowanie filtrów.
Konstruktor filtra - zakładka Zaawansowane
Jeżeli zachodzi potrzeba utworzenia warunku, aby filtr działał jedynie na wybranej bazie firmowej, na początku treści filtra należy wpisać: 'DEMO' = {_QGetSQL('select SYS_Wartosc from cdn.SystemCDN where SYS_ID =1')} po tym warunku po operatorze „AND" należy wprowadzić właściwą treść filtra. W powyższym warunku na początku jako argument (w powyższym przykładzie „DEMO”) należy podać nazwę bazy wyświetlaną na liście firm.

Zakładka [Opcje]

Zakładka [Opcje] zawiera typ filtra. Domyślnym typem jest filtr Stanowiska. Jego definicja jest zapisywana w rejestrze systemowym i filtr stanowiska będzie widoczny dla danego stanowiska. Definicja filtra Globalnego jest zapisywana w bazie danych, dzięki czemu jest on widoczny i dostępny do edycji dla wszystkich Użytkowników. Filtr może być dostępny tylko dla wybranego operatora po zaznaczeniu opcji Operator i wybraniu odpowiedniego operatora. Po zalogowaniu się operator będzie miał możliwość wyboru filtra z listy filtrów. Filtr może być Obowiązkowy dla danego operatora, co oznacza, że po zalogowaniu się tego operatora filtr będzie włączony i nie będzie widoczny (do wyboru) na liście filtrów. Dodatkowo należy zaznaczyć w menu Start/Konfiguracja/ Program/ Użytkowe/ Parametry - parametr Stosuj filtry obowiązkowe. Parametr Chroniony – jeśli zaznaczy go operator z uprawnieniami Administratora, wówczas inni operatorzy nie będą mieli możliwości edycji i usunięcia danego filtra. Parametr Domyślny można zaznaczyć dla danego filtra niezależnie od jego typu (Stanowiska/ Operatora/ Globalny/ Obowiązkowy). Zaznaczenie parametru powoduje, że filtr jest automatycznie stosowany przy wejściu na daną listę. W odróżnieniu od filtra obowiązkowego można go wyłączyć. Filtrów domyślnych dla danej listy może być wiele, ale przy otwieraniu listy zostanie wybrany tylko jeden z nich. Kryterium wyboru wyznacza typ filtra oraz kolejność filtra w ramach typu. Najwyższy priorytet mają filtry Stanowiska, a więc związane z danym komputerem. Jeśli na jednym lub kilku filtrach typu Użytkownika, podłączonych do danej listy, zostanie zaznaczony parametr Domyślny, ostatni z nich zostanie uznany jako domyślny. W przypadku braku domyślnego filtra Stanowiska przeszukiwane są filtry Operatora, a wybór filtra domyślnego następuje analogicznie jak poprzednio. Jeśli na danej liście nie ma zdefiniowanego ani filtra domyślnego Stanowiska ani Operatora - domyślny filtr jest szukany w filtrach Globalnych.
Konstruktor filtra - zakładka Opcje

Zapamiętywanie ustawień filtra

Po zamknięciu listy zapamiętywanie ustawień filtra jest realizowane wg poniższych zasad:
  • zapamiętywane jest czy panel dodatkowy był zwinięty/rozwinięty,
  • zapamiętywane jest czy pinezka była włączona/wyłączona,
  • zapamiętywane są ustawienia pól z panelu podstawowego i rozwijanego,
  • lista otwiera się wyfiltrowana wg zapamiętanych filtrów.
Ponadto przy pierwszym uruchomieniu listy pinezka jest włączona, a dostępna opcja Wyczyść filtr na liście oraz Reset ustawień okien przywraca ustawienia domyślne dla filtrów panelu podstawowego i rozwijanego. Odświeżanie listy odbywa się przy każdorazowym użyciu lejka lub oraz poprzez wciśnięcie F5 w dowolnym miejscu na liście. Filtry zapisywane są do bazy konfiguracyjnej, więc odtworzenie bazy konfiguracyjnej powoduje przywrócenie wszystkich filtrów, które zostały do niej dodane. Inną możliwością przeniesienia filtrów do innej instalacji jest skopiowanie treści filtra z zakładki [Zaawansowane] Konstruktora filtra i wklejenie jej w tym samym miejscu w innej instalacji Comarch ERP Optima. Istotne jest, aby Konstruktor filtra był uruchomiony z poziomu tej samej listy.

Przykłady z instrukcją tworzenia

Moduły Handlowo-Magazynowe

Filtry tworzone z poziomu zakładki [Ogólne]

Na liście Faktur Sprzedaży chcemy wyświetlić tylko te dokumenty, których wartość brutto jest pomiędzy 500 a 1000 PLN. W konstruktorze filtra, zakładka [Ogólne] w pole Nazwa wpisujemy wybraną nazwę filtra, następnie w celu dodania warunków klikamy ikonę plusa i wskazujemy pole TrN_RazemBrutto. Określamy dla niego warunek „Jest większe niż” oraz kwotę 500 Następnie analogicznie dodajemy kolejny warunek, w którym określamy TrN_RazemBrutto „Jest mniejsze niż” 1000. Zapisujemy filtr ikoną . Po zapisie jest on widoczny na liście filtrów dostępnych z poziomu listy Faktur Sprzedaży.

Filtry tworzone z poziomu zakładki [Zaawansowane]

Z poziomu listy Faktur Sprzedaży do bazy danych wysyłane jest automatycznie zapytanie: SELECT [lista kolumn] FROM A.TraNag WHERE … Alias „A” dla tabeli TraNag, który jest widoczny w powyższym przykładzie pozwala na tworzenie bardziej skomplikowanych zapytań przy użyciu wielu tabel. Dla różnych list aliasy mogą być różne – można je podejrzeć za pomocą zaawansowanych narzędzi do obsługi serwera SQL. W treści filtra zaawansowanego wpisujemy wyrażenie SQL, które następuje po WHERE w zapytaniu. Prosty filtr zaawansowany Dla filtra przedstawionego we wcześniejszym przykładzie dla zakładki [Ogólne] można zbudować bezpośrednie zapytanie w zakładce [Zaawansowane], które wyglądałoby tak: (TrN_RazemBrutto > '500.0000' AND TrN_RazemBrutto < '1000.0000') Jest to filtr o analogicznym działaniu, pokazujący Faktury Sprzedaży, których wartość brutto zawiera się między 500 a 1000 PLN. Filtr zaawansowany z parametrem dynamicznym W przykładzie pokażemy jak wyfiltrować dokumenty handlowo-magazynowe, które wystawił określony operator. Id operatora, który wystawił dany dokument znajduje się w bazie w tabeli TraNag w polu TrN_OpeZalID. W filtrze musimy porównać wartość tego pola z ID operatora wybranego. Potrzebny będzie parametr dynamiczny. Stworzymy go klikając prawym przyciskiem myszy w polu Filtr SQL i wybierając opcję Wstaw/edytuj deklarację parametru dynamicznego. Pojawi się kreator, który poprowadzi nas przez kolejne kroki, w których:
  • wskazujemy nazwę parametru, której użyjemy potem w zapytaniu (np. OpeID)
  • wybór typów parametru:
Parametr typu lista wywoływana - jeśli wybierzemy typ - lista wywoływana – dla tego typu parametrów pojawia się pewien zakres gotowych procedur, z których możemy wybrać np. opcje: lista kontrahentów, lista kategorii, lista grup, lista towarów itp. Wybieramy z tej listy procedurę lista operatorów, która wyświetli listę akronimów operatorów, a po wyborze konkretnego operatora zwróci jego ID i przekaże w parametrze OpeID. Po zatwierdzeniu kolejnych okien deklaracja parametru wygląda w ten sposób: @PAR ?@LS20(OP_PROC.DLL|CALLLOOKUPOPELISTA())|OpeID|&OpeID:{}@? PAR@ Wywołanie parametru w zapytaniu wstawiamy jak pokazano poniżej: TrN_OpeZalID = ??OpeID Umożliwi to wybór z listy operatorów wybranego operatora i przefiltrowanie dokumentów po określonym operatorze. Filtr pokazuje dokumenty WYSTAWIONE przez danego operatora. Aby filtr reagował na dokumenty ZMODYFIKOWANE przez operatora należy zmienić TrN_OpeZalID na TrN_OpeModID Parametr typu lista rozwijana Jeśli chcielibyśmy w parametrze zastosować listę rozwijaną, wówczas w kolejnym kroku kreatora pojawi się szablon zapytania, które należy uzupełnić: SELECT ID = 1, Kod = '' W tym miejscu powinno znaleźć się zapytanie, które zwróci nam ID oraz KOD. KOD będzie wyświetlany na liście rozwijanej, natomiast po dokonaniu wyboru z tej listy – do parametru będzie przekazywane ID wyboru. SELECT ID = Ope_OpeId, Kod = Ope_Kod From {OPBK()}.CDN.Operatorzy Order By Ope_Kod Lista operatorów znajduje się w tabeli CDN.Operatorzy w bazie konfiguracyjnej, dlatego konieczne jest odwołanie w podany sposób: {OPBK()}.CDN.Operatorzy Ostatecznie filtr z parametrem z listą rozwijaną będzie wyglądał w ten sposób: @PAR ?@R(SELECT ID = Ope_OpeId, Kod = Ope_Kod From {OPBK()}.CDN.Operatorzy Order By Ope_Kod)|OpeID|&OpeID:{}@? PAR@ TrN_OpeZalID = ??OpeID Należy pamiętać o tym, aby w definicji parametru dynamicznego użyć kolumny liczbowej (w tym przypadku TrN_OpeZalID). Funkcje systemowe Modyfikacją zaprezentowanego filtra może być taki filtr, który pokaże dokumenty aktualnie zalogowanego operatora. W tym celu można wykorzystać funkcje systemowe. Opcja dostępna pod prawym przyciskiem myszy: Spośród listy dostępnych funkcji możemy wybrać funkcję OperatorID, która zwróci ID zalogowanego operatora: Ostatecznie filtr z użyciem funkcji systemowej będzie wyglądał tak: TrN_OpeZalID = {OperatorID}

Moduły Księgowe

Filtry tworzone z poziomu zakładki [Ogólne]

Na liście zapisów kasowych/bankowych chcemy wyświetlić zapisy, na których nie zostało uzupełnione konto przeciwstawne. W konstruktorze filtra, zakładka [Ogólne] w pole Nazwa wpisujemy wybraną nazwę filtra, następnie w celu dodania warunków klikamy ikonę plusa i wskazujemy pole Bzp_KontoPrzeciwstawne. Określamy dla niego warunek „Jest puste”. Następnie zapisujemy filtr ikoną . Po zapisie jest on widoczny na liście filtrów dostępnych z poziomu listy zapisów kasowych/bankowych.

Filtry tworzone z poziomu zakładki [Zaawansowane]

Filtr zaawansowany z parametrem dynamicznym W przykładzie pokażemy jak wyfiltrować dokumenty w rejestrze VAT, które posiadają określoną kategorię w nagłówku dokumentu. Id kategorii, która została wybrana na dokumencie w rejestrze VAT znajduje się w bazie w tabeli VatNag w polu VaN_KatID. W filtrze musimy porównać wartość tego pola z ID operatora wybranego. Potrzebny będzie parametr dynamiczny. Stworzymy go klikając prawym przyciskiem myszy w polu Filtr SQL i wybierając opcję Wstaw/edytuj deklarację parametru dynamicznego. Pojawi się kreator, który poprowadzi nas przez kolejne kroki, w których:
  • wskazujemy nazwę parametru, której użyjemy potem w zapytaniu (np. Kategoria)
  • wybór typów parametru:
Parametr typu lista wywoływana - jeśli wybierzemy typ - lista wywoływana – dla tego typu parametrów pojawia się pewien zakres gotowych procedur, z których możemy wybrać np. opcje: lista kontrahentów, lista kategorii, lista grup, lista towarów itp. Wybieramy z tej listy procedurę lista kategorii, która wyświetli listę kategorii, a po wyborze konkretnej kategorii zwróci jego ID i przekaże w parametrze kategoria. Po zatwierdzeniu kolejnych okien deklaracja parametru wygląda w ten sposób: @PAR ?@LS0(OP_LIST.DLL|CALLLOOKUPKATLISTA())|kategoria|&kategoria:0|@? PAR@ Wywołanie parametru w zapytaniu wstawiamy jak poniżej: VaN_KatId = ??Kategoria Umożliwi to wybór z listy kategorii wybranej kategorii i przefiltrowanie dokumentów po określonej kategorii wybranej w nagłówku dokumentu w rejestrze VAT. Należy pamiętać o tym, aby w definicji parametru dynamicznego użyć kolumny liczbowej (w tym przypadku VaN_KatId).

Moduły Płace i Kadry

Filtry tworzone z poziomu zakładki [Ogólne]

Na liście pracowników w kadrach chcemy wyświetlić osoby, dla których została odnotowana informacja na temat wieloetatowości, a konkretnie posiadają ustawiony etat podstawowy. W konstruktorze filtra, zakładka [Ogólne] w pole Nazwa wpisujemy wybraną nazwę filtra, następnie w celu dodania warunków klikamy ikonę plusa i wskazujemy pole PRI_Nadrzedny. Określamy dla niego warunek „Jest równe” oraz podajemy wartość 1. Następnie zapisujemy filtr ikoną . Po zapisie jest on widoczny na liście filtrów dostępnych z poziomu listy pracowników.

Filtry tworzone z poziomu zakładki [Zaawansowane]

Filtr zaawansowany z parametrem dynamicznym W przykładzie pokażemy jak odfiltrować pracowników, którzy posiadają przypisaną określoną kategorię. Id kategorii, która została przypisana pracownikowi na jego formularzu kadrowym (zakładka 7 [Dodatkowe]) znajduje się w bazie w tabeli PracEtaty w polu PRE_KatId. W filtrze musimy porównać wartość tego pola z wartością wybraną z listy słownikowej wszystkich kategorii. Potrzebny będzie parametr dynamiczny. Stworzymy go klikając prawym przyciskiem myszy w polu Filtr SQL i wybierając opcję Wstaw/edytuj deklarację parametru dynamicznego.
  • wskazujemy nazwę parametru, której użyjemy potem w zapytaniu (np. Kategoria)
  • wybór typów parametru:
Parametr typu lista rozwijana - jeśli wybierzemy typ - lista rozwijana – dla tego typu parametrów należy zdefiniować odpowiednie zapytanie SQL podając w zapytaniu dwa pobierane pola z czego pierwsze musi być numeryczne (identyfikator) a drugie tekstowe (opis). Należy pamiętać o tym, aby w definicji parametru dynamicznego użyć kolumny liczbowej (w tym przypadku PRE_KatId).

Pozostałe przykłady

Uwaga
Nowo dodane przykłady filtrów oznaczone są kolorem zielonym na liście.

Ogólne

Jak ustawić w filtrze datę bieżącą lub zakres dat, np. od pierwszego do ostatniego dnia miesiąca?

Aby po zdefiniowaniu filtrów, w których pada pytanie o datę lub zakres dat podpowiadała się data bieżąca, a nie data z dnia definiowania filtra, należy skorzystać z parametru dynamicznego. Na zakładce [Zaawansowane] w Konstruktorze filtra należy zdefiniować odpowiednie parametry dynamiczne (prawy klawisz myszy na polu z filtrem, Wstaw/edytuj deklarację parametru dynamicznego, potem, żeby go wykorzystać: Wstaw/edytuj odwołanie do parametru dynamicznego). Przykładowy filtr (zakres dat na bieżący miesiąc) w polu Filtr SQL powinien mieć wpisane: @PAR ?@D17|data1|&Data od:{DateClwFirstDay('m')} @? PAR@ @PAR ?@D17|data2|&Data do:{DateClwLastDay('m')} @? PAR@ TrN_DataDok >= ??data1 AND TrN_DataDok <= ??data2

Jak zawęzić listę kontrahentów do tych, których kod rozpoczyna się na zadaną literę?

Taki filtr może być przydatny przy seryjnym generowaniu Not odsetkowych, Ponagleń Zapłaty czy Potwierdzeń Salda, które jest dostępne z menu Ogólne/ Kontrahenci, pod ikoną Generacja na pasku zadań. W Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać w polu Filtr SQL: Knt_Kod LIKE ?@S100|Kod zaczyna się od:'' + '%' Aby odfiltrować dokumenty Ponagleń zapłaty lub Potwierdzeń salda dla kontrahentów, których kod rozpoczyna się od zadanej litery, należy: W Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać w polu Filtr SQL: exists (select * from CDN.Kontrahenci where BDN_PodmiotID=Knt_KntId AND Knt_Kod LIKE ?@S100|Kod zaczyna się od:'' + '%') Dla listy Not odsetkowych w polu Filtr SQL: exists (select * from CDN.Kontrahenci where NON_PodmiotID=Knt_KntId AND Knt_Kod LIKE ?@S100|Kod zaczyna się od:'' + '%')

Jak wyfiltrować kontrahentów, którzy mają wybraną na karcie konkretną kategorię szczegółową (sprzedaży bądź zakupu)?

Aby odnaleźć kontrahentów z określoną kategorią sprzedaży, na liście kontrahentów należy uruchomić konstruktor filtra, a następnie na zakładce [Zaawansowane] w polu Filtr SQL należy wpisać: @PAR ?@LS0(OP_LIST.DLL|CALLLOOKUPKATLISTA())|kategoria|&kategoria:0|@? PAR@ Knt_KatID= ??Kategoria Z kolei, aby odnaleźć kontrahentów z określoną kategorią zakupu należy zastosować filtr: @PAR ?@LS0(OP_LIST.DLL|CALLLOOKUPKATLISTA())|kategoria|&kategoria:0|@? PAR@ Knt_KatZakID= ??Kategoria Przed odfiltrowaniem listy program będzie pytał o kategorię szczegółową. Aby odnaleźć kontrahentów z kategorią zawierającą określoną frazę, to stosując poniższy filtr: Knt_KatID=(select Kat_KatID from cdn.kategorie where Kat_KatID=Knt_KatID and kat_KodSzczegol like ?@S100|Kat szczeg:'') podczas wpisywania kategorii, przed bądź za wpisywaną frazą należy wstawić znak „%” zastępujący dowolny ciąg znaków.

Jak zbudować filtr, który przed odfiltrowaniem listy kontrahentów z danego województwa będzie wyświetlał listę województw do wyboru?

Na liście kontrahentów, w Konstruktorze filtra na zakładce [Zaawansowane] należy wpisać: @PAR ?@R(SELECT Id = 0, Kod = '' UNION SELECT Id = 1, Kod = 'dolnośląskie' UNION SELECT Id = 2, Kod = 'kujawsko-pomorskie' UNION SELECT Id = 3, Kod = 'lubelskie' UNION SELECT Id = 4, Kod = 'lubuskie' UNION SELECT Id = 5, Kod = 'łódzkie' UNION SELECT Id = 6, Kod = 'małopolskie' UNION SELECT Id = 7, Kod = 'mazowieckie' UNION SELECT Id = 8, Kod = 'opolskie' UNION SELECT Id = 9, Kod = 'podkarpackie' UNION SELECT Id = 10, Kod = 'podlaskie' UNION SELECT Id = 11, Kod = 'pomorskie' UNION SELECT Id = 12, Kod = 'śląskie' UNION SELECT Id = 13, Kod = 'świętokrzyskie' UNION SELECT Id = 14, Kod = 'warmińsko-mazurskie' UNION SELECT Id = 15, Kod = 'wielkopolskie' UNION SELECT Id = 16, Kod = 'zachodniopomorskie')|Woj|&Województwo: @? PAR@ Knt_Wojewodztwo = Case ??Woj When 1 Then 'dolnośląskie' When 2 Then 'kujawsko-pomorskie' When 3 Then 'lubelskie' When 4 Then 'lubuskie' When 5 Then 'łódzkie' When 6 Then 'małopolskie' When 7 Then 'mazowieckie' When 8 Then 'opolskie' When 9 Then 'podkarpackie' When 10 Then 'podlaskie' When 11 Then 'pomorskie' When 12 Then 'śląskie' When 13 Then 'świętokrzyskie' When 14 Then 'warmińsko-mazurskie' When 15 Then 'wielkopolskie' When 16 Then 'zachodniopomorskie' Else '' End Pierwsza część (od @PAR do PAR@) jest to deklaracja parametru dynamicznego. Jeżeli zostanie wybrany parametr dynamiczny typu "Lista rozwijana" to zapytanie SQL musi zwrócić wynik dwukolumnowy - w pierwszym ma być wartość numeryczna (która zostanie podstawiona do zmiennej), a w drugim tekst (który zostanie wyświetlony na liście). Najwygodniej jest najpierw napisać sobie takie zapytanie np. w WinSQL-u (łatwo wtedy sprawdzić, czy nie ma w nim błędów), a potem przekleić do "wizarda parametru dynamicznego" w kroku 4 (wizard jest dostępny na zakładce [Zaawansowane] w Konstruktorze filtra w menu kontekstowym). Druga część, to wykorzystanie tego parametru w zapytaniu SQL, które zostanie podstawione do filtra. Pod ??Woj program podstawi liczbę odpowiadającą wybranemu województwu, a konstrukcja Case ... When ... Then ... pozwoli na "przetłumaczenie" z powrotem liczby na tekst.

Jak wyszukać kontrahenta na podstawie numeru rachunku bankowego?

Na liście kontrahentów w Konstruktorze filtra, na zakładce: [Zaawansowane] w polu Filtr SQL należy wpisać: @PAR ?@S30|Numer|&Numer rachunku:''@? PAR@ exists (select * from CDN.SchematPlatnosci where SPL_PodmiotTyp=1 and SPL_PodmiotID=Knt_KntID and SPL_RachunekNr0=replace(replace(??Numer,' ',''),'-',''))

Kasa/Bank

Jak wyfiltrować dokumenty, które zostały rozliczone w styczniu 14 dni po terminie płatności?

Klient wystawiał noty odsetkowe tylko klientom, którzy zapłacili 14 dni po upływie terminu płatności. Zastosowanie filtra w Preliminarzu pozwoliło na wyodrębnienie dokumentów, które odpowiadały ww. zapytaniu. Wynik można wysłać do Excela i posortować wg nazwy kontrahenta. Filtr należy zbudować z poziomu Preliminarza Płatności. W Konstruktorze filtra, na zakładce: [Zaawansowane] należy wpisać w polu Filtr SQL: BZd_DataRoz BETWEEN CONVERT(DATETIME,'2018-01-01',120) AND CONVERT(DATETIME,'2018-01-31',120) And BZd_DataRoz > DateAdd(day, 14, BZd_Termin)

Jak wyfiltrować zdarzenia w Preliminarzu, które mają wybraną przez operatora formę płatności?

Na liście zdarzeń w Preliminarzu, pod ikonką Konstruktor filtra, na zakładce [Zaawansowane], w polu Filtr SQL wpisujemy: @PAR ?@R(SELECT FPl_FPlId, FPl_Nazwa FROM CDN.FormyPlatnosci)|fp|&fp: @? PAR@ BZd_FPlId=??fp Przed odfiltrowaniem pojawi się rozwijana lista z dostępnymi formami płatności.

Jak wyfiltrować z poziomu listy kontrahentów nierozliczone zdarzenia z preliminarza wystawione w zadanym okresie?

Filtr ten sprawdza, czy w Preliminarzu Płatności dla danego kontrahenta są zapisy przychodowe, zatwierdzone, nierozliczone i wystawione w zadanym okresie czasu. Z poziomu listy kontrahentów w Konstruktorze filtra, na zakładce: [Zaawansowane] w polu Filtr SQL należy wpisać: exists ( select * From CDN.BnkZdarzenia where BZd_DataDok>= ?@D10-|Data od: and BZd_DataDok<= ?@D10-|Data do: and Bzd_PodmiotTyp = 1 and Bzd_PodmiotID=Knt_KntID and BZd_Kierunek =1 and BZd_Stan>0 and BZd_KwotaSys<>BZd_KwotaRozSys)

Jak przefiltrować na preliminarzu płatności tylko te FA i FKOR, które nie mają powiązania z dokumentami magazynowymi?

Trzeba wykonać filtr w Preliminarzu płatności, który uwzględni tabelę TraNag, w której jest przechowywana taka informacja. Przykładowy filtr SQL będzie wyglądał tak: exists (select * from CDN.TraNag where Trn_TrNID=Bzd_DokumentID And Bzd_DokumentTyp=1 and TrN_Rodzaj=302000 or Trn_Rodzaj=302001 or Trn_Rodzaj=302002 or Trn_Rodzaj=302002)

Jak wyfiltrować zapisy kasowo/bankowe zawierające kategorię szczegółowe należące do zadanej kategorii ogólnej?

Na liście zapisów kasowo/bankowych, w Konstruktorze filtra, na zakładce [Zaawansowane] w polu Filtr SQL należy wpisać: exists (select Kat_KodOgolny, Kat_KodSzczegol from cdn.kategorie where BZp_KatID=Kat_KatID AND Kat_KodOgolny=?@S100|Kategoria ogólna:'')

Jak wyfiltrować listę kontrahentów, dla których są pary dokumentów do rozliczenia?

Chodzi o to aby użytkownik w menu Kasa/Bank/Rozliczenia, po wywołaniu listy kontrahentów, mógł ją zawęzić do tych, którzy mają nierozliczone dokumenty, które można ze sobą rozliczyć czyli np. Fakturę Sprzedaży i dokument KP lub Fakturę zakupu i dokument KW lub Fakturę Sprzedaży i Fakturę Zakupu lub Dokumenty KP i KW. Można założyć filtr zaawansowany na liście kontrahentów w menu Ogólne/ Kontrahenci, który będzie korzystał z tabeli CDN.DokumentyKBView. W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL można wpisać: Exists (Select * From CDN.DokumentyKBView Where DKB_PodmiotTyp = 1 And DKB_PodmiotId = Knt_KntId And DKB_Rozliczono = 1 And DKB_Kierunek = Case DKB_TypDokumentuKB When 1 Then 1 Else -1 End) And Exists (Select * From CDN.DokumentyKBView Where DKB_PodmiotTyp = 1 And DKB_PodmiotId = Knt_KntId And DKB_Rozliczono = 1 And DKB_Kierunek = Case DKB_TypDokumentuKB When 1 Then -1 Else 1 End) Podobny filtr można stworzyć na liście pracowników podmieniając: DKB_PodmiotTyp = 1 And DKB_PodmiotId = Knt_KntId na DKB_PodmiotTyp = 3 And DKB_PodmiotId = Pra_PraId Filtr nie sprawdza waluty dokumentów.

Jak wyfiltrować w Preliminarzu płatności dokumenty, których termin płatności upłynął więcej niż 30 dni temu?

W Preliminarzu płatności, w Konstruktorze filtra, w polu Filtr SQL należy wstawić: datediff ( d , BZd_Termin , {DateSQL(Today())} ) > 30 Filtr policzy różnicę pomiędzy datą bieżącą i terminem płatności i wyświetli te dokumenty, dla których różnica jest większa niż 30 dni.

Jak wyszukać zduplikowanych kontrahentów i zduplikowane zdarzenia w Preliminarzu?

W słownikach na liście kontrahentów można zastosować filtr, który sprawdzi czy są kontrahenci którym powtarza się numer NIP i dodatkowo pole NIP nie jest puste: Knt_Nip IN (SELECT Knt_Nip FROM CDN.Kontrahenci WHERE Knt_Nip <> '' GROUP BY Knt_Nip HAVING COUNT ( Knt_Nip ) > 1 ) W Preliminarzu płatności filtr wyświetli zdarzenia o takim samym numerze obcym. To pozwoli sprawdzić czy w systemie nie wprowadzono dwa razy tego samego dokumentu: BZd_NumerObcy IN (SELECT BZd_NumerObcy FROM cdn.bnkzdarzenia GROUP BY BZd_NumerObcy HAVING COUNT ( BZd_NumerObcy ) > 1 )

Jak wyfiltrować w Preliminarzu faktury, które w rejestrze VAT znajdują się w konkretnym podrejestrze?

W Preliminarzu należy uruchomić Konstruktor filtra, a następnie na zakładce [Zaawansowane] w polu Filtr SQL należy wpisać: (Bzd_DokumentTyp='2' AND Bzd_DokumentID in (select Van_VanID from CDN.VatNag where Bzd_DokumentID=Van_VanID AND VaN_Rejestr=?@S100|Nazwa rejestru:'')) OR (Bzd_DokumentTyp='1' AND Bzd_DokumentID in (select Van_TrnID from CDN.VatNag where Bzd_DokumentID=Van_TrnID AND VaN_Rejestr=?@S100|Nazwa rejestru:'')) Przed odfiltrowaniem listy program będzie pytał o nazwę rejestru dla którego ma wyświetlić faktury. Inny wariant powyższego filtra, gdzie nazwa rejestru VAT wybierana jest z rozwijalnej listy: @PAR ?@R(SELECT LP=Gru_GruID, KOD=Gru_Nazwa FROM cdn.Grupy WHERE (Gru_Typ=1 OR Gru_Typ=2))|RejVat|&RejVat:0 |@? PAR@ (Bzd_DokumentTyp='2' AND Bzd_DokumentID in (select Van_VanID from CDN.VatNag where Bzd_DokumentID=Van_VanID AND VaN_Rejestr=??_RES2_RejVat)) OR (Bzd_DokumentTyp='1' AND Bzd_DokumentID in (select Van_TrnID from CDN.VatNag where Bzd_DokumentID=Van_TrnID AND VaN_Rejestr=??_RES2_RejVat)) Filtry uwzględniają zarówno faktury wprowadzone bezpośrednio do Rejestrów VAT jak i faktury wystawione w module Faktury i przeniesione do Rejestrów VAT.

Jak wyfiltrować kontrahentów, którzy nie są osobą fizyczną i suma nierozliczonych dokumentów jest większa niż podana przez operatora?

Na liście kontrahentów w menu Ogólne/ Kontrahenci, w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select Knt_KntId from CDN.BnkZdarzenia where Knt_KntId=BZd_PodmiotID AND BZd_PodmiotTyp=1 having SUM(BZd_Kierunek * (BZd_KwotaSys-BZd_KwotaRozSys)) >?@N-15.4|Kwota:0) Wyrażenie: having SUM(BZd_Kierunek * (BZd_KwotaSys-BZd_KwotaRozSys)) pozwoli wyfiltrować różnicę nierozliczonych przychodów i rozchodów. Filtr uwzględni wszystkie dokumenty z Preliminarza Płatności dla danego kontrahenta. Dla zawężonej listy będzie można wygenerować np. Potwierdzenie Salda lub Ponaglenie Zapłaty. Poniżej filtr, który uwzględni również historyczność czyli stan rozliczeń na konkretny dzień podany przez operatora. Na liście kontrahentów w menu Ogólne/ Kontrahenci, w Konstruktorze filtra, na zakładce [Zaawansowane], w polu: Filtr SQL należy wpisać: @PAR ?@D17|Dzien|&Na dzień:{Today()} @? PAR@ @PAR ?@N15.2|Kwota|&Kwota powyżej:0 @? @RH(999999) PAR@ @PAR ?@S3|Waluta|&Waluta:PLN @? @U() PAR@ Knt_Finalny = 0 AND EXISTS ( SELECT BZd_PodmiotId FROM (SELECT BZd_PodmiotId, BZd_Kierunek, BZd_Kwota, BZd_KwotaRoz = SUM(IsNull(BRK_Kwota,0)) FROM CDN.BnkZdarzenia LEFT OUTER JOIN (CDN.BnkRozRelacje JOIN CDN.BnkRozKwoty ON BRR_BRKId = BRK_BRKId) ON BZd_BZdId = BRR_ZDokId AND BRR_ZDokTyp = 1 AND (BRK_DataDok <= ??Dzien OR BRK_DataDok Is NULL) WHERE BZd_Stan > 0 AND BZd_PodmiotTyp = 1 AND BZd_PodmiotID = Knt_KntId AND BZd_DataDok <= ??Dzien AND CASE BZd_Waluta WHEN '' THEN 'PLN' ELSE BZd_Waluta END = ??Waluta AND BZd_Rozliczono <> 0 GROUP BY BZd_PodmiotId, BZd_Kierunek, BZd_Kwota, BZd_BZdId ) As TmpTable GROUP BY BZd_PodmiotId HAVING Sum(BZd_Kierunek * (BZd_Kwota-BZd_KwotaRoz)) > ??Kwota )

Jak wyfiltrować na liście zapisów kasowo bankowych te, które mają uzupełnione konto Wn lub konto Ma w kwotach dodatkowych?

Na liście zapisów kasowo/bankowych pod ikoną konstruktora filtra, na zakładce [Zaawansowane], w polu Filtr SQL wpisujemy: exists (select * from CDN.KwotyDodatkowe where Kdd_DokumentID=Bzp_BzpID AND KDD_DokumentTyp=14 AND (Kdd_Segment1<>'' OR Kdd_Segment2<>'')) Aby wyfiltrować te które mają wpisane określone konto po stronie Wn , możemy użyć: exists (select * from CDN.KwotyDodatkowe where Kdd_DokumentID=Bzp_BzpID AND KDD_DokumentTyp=14 AND Kdd_Segment1=?@S100|KontoWN:'') Analogicznie konto Ma: exists (select * from CDN.KwotyDodatkowe where Kdd_DokumentID=Bzp_BzpID AND KDD_DokumentTyp=14 AND Kdd_Segment2=?@S100|KontoMA :'') lub wyszukując określoną kwotę w kwotach dodatkowych: exists (select * from CDN.KwotyDodatkowe where Kdd_DokumentID=Bzp_BzpID AND KDD_DokumentTyp=14 AND Kdd_Kwota=?@S100|Kwota:'')

Filtr dla zapisów Kasowych/Bankowych, wyświetlający zapisy kontrahentów, którzy są przydzieleni do danego pracownika (ustawienie w Karcie Kontrahenta)

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_PRCW.DLL|CALLLOOKUPPRILISTA())|Pracownik|&Pracownik:0|@? PAR@ BZp_PodmiotTyp=1 and exists (select * from cdn.kontrahenci where BZp_PodmiotID=Knt_KntId and Knt_OpiekunId=??Pracownik and Knt_OpiekunTyp=3)

Filtr wyświetlający zdarzenia w preliminarzu dla dwóch (lub więcej) kontrahentów:

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKNTLISTA())|kod1|&kontrahent1:REG= @? PAR@ BZd_PodmiotID = ??kod1 OR @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKNTLISTA())|kod2|&kontrahent2:REG= @? PAR@ BZd_PodmiotID = ??kod2

Filtr ograniczający listę wyświetlanych w Preliminarzu płatności dokumentów do płatności pochodzących z Faktur Zakupu z modułu Handel i zapisów z Rejestru zakupu VAT:

Filtr może być stosowany wtedy, gdy np. Faktury Zakupu z których towary mają wejść na magazyn wprowadzamy w module Handel, a Faktury Zakupu kosztowe - od razu w Rejestrach VAT. Po zastosowaniu takiego filtra w Preliminarzu możemy widzieć jednocześnie oba te rodzaje dokumentów (i tylko te dokumenty). W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from CDN.TraNag where Trn_TrNID=Bzd_DokumentID And Bzd_DokumentTyp=1 and TrN_TypDokumentu=301) or exists (select * from CDN.VatNag where VaN_VaNID=Bzd_DokumentID And Bzd_DokumentTyp=2 and VaN_Typ=1)

Filtr ograniczający listę wyświetlanych w Preliminarzu płatności dokumentów do płatności pochodzących z Faktur Sprzedaży z modułu Handel i z Rejestru sprzedaży VAT.

Filtr może być stosowany wtedy, gdy np. Faktury Sprzedaży, z których towary mają wyjść z magazynu wprowadzamy w module Handel, a pozostałe faktury - od razu w Rejestrach sprzedaży VAT. W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from CDN.TraNag where Trn_TrNID=Bzd_DokumentID And Bzd_DokumentTyp=1 and TrN_TypDokumentu=302) or exists (select * from CDN.VatNag where VaN_VaNID=Bzd_DokumentID And Bzd_DokumentTyp=2 and VaN_Typ=2)

W jaki sposób w Preliminarzu odnaleźć płatności mające wybrany rachunek bankowy po nazwie tego rachunku, określanego na karcie kontrahenta?

W Preliminarzu płatności w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: @PAR ?@S30|Rachunek|&Rachunek:''@? PAR@ exists (select * from CDN.SchematPlatnosci where BZd_RachunekNr=SPL_RachunekNr and SPL_PodmiotID=BZd_PodmiotID and SPL_PodmiotTyp=1 and SPL_Opis=??Rachunek)

Jak na liście dokumentów rozliczonych odnaleźć te pochodzące z konkretnego rejestru VAT?

Na liście dokumentów rozliczonych w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: @PAR ?@S30|Rejestr|&Rejestr:''@? PAR@ (BRK_LDokTyp=1 and exists (select * from CDN.BnkZdarzenia where BRK_LDokID=BZd_BZdID and BZd_DokumentTyp=2 and exists ( select * from CDN.VatNag where BZd_DokumentID=VaN_VaNID and VaN_Rejestr = ??Rejestr))) OR (BRK_PDokTyp=1 and exists (select * from CDN.BnkZdarzenia where BRK_PDokID=BZd_BZdID and BZd_DokumentTyp=2 and exists ( select * from CDN.VatNag where BZd_DokumentID=VaN_VaNID and VaN_Rejestr = ??Rejestr)))

W jaki sposób w Preliminarzu odnaleźć płatności z faktur sprzedażowych mających konkretny atrybut i wartość atrybutu?

W Preliminarzu płatności w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: @PAR ?@LS20(SELECT [DeA_DeAId], [DeA_Kod], [DeA_Nazwa] FROM [CDN].[DefAtrybuty] WHERE [DeA_Typ]= 4|GENERICLOOKUP(Atrybuty dokumentów, 0, 1))|Atrybut|&Atrybut: @? @MSG(Wybór z listy) @TIP(Wybór z listy) PAR@ @PAR ?@S100|Wartosc|&Wartość: @? @MSG(Wartość atrybutu) @TIP(Wartość atrybutu) PAR@ EXISTS (SELECT * FROM CDN.TraNag JOIN CDN.DokAtrybuty ON DAt_TrNId = TrN_TrNId WHERE TrN_TrNID = BZd_DokumentID AND BZd_DokumentTyp=1 AND TrN_TypDokumentu=302 AND DAt_DeAId=??Atrybut AND DAt_WartoscTxt=??Wartosc)

W jaki sposób odnaleźć dokumenty nierozliczone kontrahentów ze statusem 'Partner’?

Na liście dokumentów nierozliczonych w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: (DKB_TypDokumentuKB=1 And EXISTS (Select * From CDN.BnkZdarzenia JOIN CDN.Kontrahenci ON BZd_PodmiotID=Knt_KntId AND BZd_PodmiotTyp=1 where DKB_DKBId=BZd_BZdID And Knt_Rodzaj_Partner=1)) OR (DKB_TypDokumentuKB=2 And EXISTS (Select * From CDN.BnkZapisy JOIN CDN.Kontrahenci ON BZp_PodmiotID=Knt_KntId AND BZp_PodmiotTyp=1 where DKB_DKBId=BZp_BZpID And Knt_Rodzaj_Partner=1))

W jaki sposób odnaleźć różnice kursowe wygenerowane przez zapisy kasowe/bankowe wprowadzone do konkretnego rejestru?

Na liście różnic kursowych w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: @PAR ?@S30|Rejestr|&Rejestr:''@? PAR@ (BRK_LDokTyp=2 and exists (select * from CDN.BnkZapisy where BRK_LDokID=BZp_BZpID and exists ( select * from CDN.BnkRachunki where BRa_BRaID=BZp_BRaID and BRa_Symbol = ??Rejestr))) OR (BRK_PDokTyp=2 and exists (select * from CDN.BnkZapisy where BRK_PDokID=BZp_BZpID and exists ( select * from CDN.BnkRachunki where BRa_BRaID=BZp_BRaID and BRa_Symbol = ??Rejestr)))

W jaki sposób odnaleźć kontrahentów mających wystawione w module Kasa/Bank potwierdzenia sald w 2018 roku?

Na liście kontrahentów w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: Exists (Select * From CDN.BnkDokNag Where BDN_PodmiotID=Knt_KntID And BDN_PodmiotTyp=1 And BDN_Typ=223 And BDN_NumerPelny Like '%2018%')

W jaki sposób odnaleźć dokument kompensaty na którym wskazano dokument o określonym numerze?

Z poziomu Kasa/Bank/ Dokumenty kompensat w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: @PAR ?@S50|Numer_dok|Numer szukanego dokumentu:''@? PAR@ EXISTS (select * from cdn.KompensatyElem left join cdn.BnkRozKwoty on KPE_BRKID = BRK_BRKID where (BRK_LNumer like ??_QNumer_dok + '%' or BRK_PNumer like ??_QNumer_dok + '%') and KPN_KPNID = KPE_KPNID)

Handel i Faktury

Jak wyfiltrować dokumenty FA, które wystawione są na klienta detalicznego ale nie ‘od netto’?

Trzeba wykonać zapytanie na liście Faktur Sprzedaży w module Faktury, uwzględniając tabelę Kontrahenci, gdzie Knt_Finalny = 1. W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: Exists(select * from CDN.Kontrahenci where Trn_PodID=Knt_KntID AND TrN_PodmiotTyp=1 AND TrN_TypNB=2 AND Knt_Finalny=1)

Jak z listy faktur sprzedaży wyfiltrować te faktury, które są nierozliczone lub rozliczone częściowo?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: Exists (select * from CDN.BnkZdarzenia where TrN_TrNID=BZd_DokumentID AND Bzd_DokumentTyp='1' AND (Bzd_Kwota-Bzd_KwotaRoz<>0)) Filtr można zastosować również na liście faktur zakupu.

Jak wyfiltrować dokumenty handlowo-magazynowe, które wystawił określony operator?

Filtr powinien wyglądać w ten sposób: Filtr SQL @PAR ?@R(SELECT ID = Ope_OpeId, Kod = Ope_Kod From {OPBK()}.CDN.Operatorzy Order By Ope_Kod)|Operator|&Operator:1 @? PAR@ TrN_OpeZalID = ??Operator Umożliwi to wybór z listy operatorów wybranego operatora i przefiltrowanie dokumentów po określonym operatorze. Filtr pokazuje dokumenty WYSTAWIONE przez danego operatora. Aby filtr reagował na dokumenty ZMODYFIKOWANE przez operatora należy zmienić TrN_OpeZalID na TrN_OpeModID

Jak filtrować kontrahentów wg atrybutów podpiętych na karcie kontrahenta?

Filtr SQL dla wyfiltrowania kontrahentów z zadanym kodem atrybutu z listy kontrahentów. Filtr przed odfiltrowaniem listy będzie wyświetlał listę atrybutów dla kontrahentów. W celu dodania filtra należy w Konstruktorze filtra wywołanym z poziomu listy kontrahentów, na zakładce [Zaawansowane], w polu Filtr SQL wpisać: @PAR ?@R(SELECT ID = DeA_DeAId, Kod = DeA_Kod FROM CDN.DefAtrybuty WHERE DeA_Typ=2 ORDER BY DeA_Kod)|KodAtr|&Kod atrybutu:ATR1 @? PAR@ exists(select * from CDN.KntAtrybuty where KnA_PodmiotId=Knt_KntId AND KnA_PodmiotTyp=1 AND KnA_DeAId = ??KodAtr ) Filtr SQL dla wyfiltrowania kontrahentów z określoną wartością atrybutu. W celu dodania filtra należy w Konstruktorze filtra wywołanym z poziomu listy kontrahentów, na zakładce [Zaawansowane], w polu Filtr SQL wpisać: Exists (Select * From CDN.KntAtrybuty Where Knt_KntId=KnA_PodmiotId AND KnA_PodmiotTyp=1 AND KnA_WartoscTxt LIKE '%' + ?@S100|Wartość:'' + '%')

Jak filtrować listę faktur wg atrybutów podpiętych na karcie kontrahenta?

Filtr SQL dla listy faktur pokazujący dokumenty wystawione na kontrahentów mających na swoich kartach przypisany określony atrybut. Filtr przed odfiltrowaniem listy będzie wyświetlał listę atrybutów kontrahentów. W celu dodania filtra należy w Konstruktorze filtra wywołanym z poziomu listy faktur, na zakładce [Zaawansowane], w polu Filtr SQL wpisać: @PAR ?@R(SELECT ID = DeA_DeAId, Kod = DeA_Kod FROM CDN.DefAtrybuty WHERE DeA_Typ=2 ORDER BY DeA_Kod)|KodAtr|&Kod atrybutu:ATR1 @? PAR@ exists(select * from CDN.KntAtrybuty Where KnA_PodmiotId=TrN_PodId AND KnA_PodmiotTyp=TrN_PodmiotTyp AND KnA_DeAId =??KodAtr) Filtr SQL dla listy faktur pokazujący dokumenty wystawione na kontrahentów mających na swoich kartach przypisany atrybut z określoną wartością. W celu dodania filtra należy w Konstruktorze filtra wywołanym z poziomu listy faktur, na zakładce [Zaawansowane], w polu Filtr SQL wpisać: Exists (Select * From CDN.KntAtrybuty Where KnA_PodmiotId=TrN_PodId AND KnA_PodmiotTyp=TrN_PodmiotTyp AND KnA_WartoscTxt LIKE '%' + ?@S100|Wartość:'' + '%')

Jak wyfiltrować faktury, które zostały wystawione na kontrahentów, którzy mają przyporządkowanego opiekuna w formie operatora systemu Comarch ERP Optima?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT ID = Ope_OpeID , Kod = Ope_Kod from {opbk()}.CDN.Operatorzy)|Operator|&Operator: @? PAR@ Exists (Select * From CDN.Kontrahenci Where Knt_OpiekunID = ??Operator and TrN_PodId = Knt_KntId And TrN_PodmiotTyp = 1)

Jak wyfiltrować listę Faktur Sprzedaży po opiekunie, który jest zapisany na karcie kontrahenta i jest to pracownik firmy?

Na liście faktur, w konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT ID = Pra_PraID, Kod = Pra_Kod From CDN.PracKod)|Pracownik|&Pracownik: @? PAR@ Exists (Select * From CDN.Kontrahenci Where Knt_OpiekunID = ??Pracownik and TrN_PodID = Knt_KntID and TrN_PodmiotTyp = 1)

Jak wyfiltrować listę faktur jeśli na fakturze mam wpisaną daną kategorię nagłówka szczegółową?

Na liście faktur w module FA, w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT Kat_KatID, Kat_KodSzczegol From CDN.Kategorie Where Kat_Poziom = 2)|Kategoria|&Kategoria:AAA @? PAR@ TrN_KatID = ??Kategoria

Jak wyfiltrować faktury na liście faktur które są rozliczone po terminie?

Należy założyć filtr zaawansowany na liście faktur, który korzystał będzie z tabeli CDN.BnkZdarzenia. W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from CDN.BnkZdarzenia where TrN_TrNID=BZd_DokumentID and Bzd_DokumentTyp='1' and BZD_dataroz > Bzd_datareal)

Jak wyfiltrować dokumenty RO z listy RO, które są przekształcone do WZ a dodatkowo WZ ma wystawioną Fakturę Sprzedaży?

Na liście RO, po ikoną konstruktora filtra, na zakładce [Zaawansowane], w polu Filtr SQL wpisujemy: EXISTS(Select * from cdn.tranagrelacje rel1 Where rel1.trr_trnid = trn_trnid and rel1.trr_fatyp = 306 and EXISTS(select * from cdn.tranagrelacje rel2 where rel2.trr_trnid = rel1.trr_faid and rel2.trr_fatyp =302))

Jak wyfiltrować dokumenty PA z listy PA, które są przekształcone do FA a FA skojarzone z tymi PA nie ma dokumentów WZ?

Na liście PA, pod ikoną konstruktora filtra, na zakładce [Zaawansowane], w polu Filtr SQL wpisujemy: EXISTS (SELECT * FROM CDN.TraNag FA WHERE A.TrN_FaID = FA.TrN_TrNID AND FA.TrN_FaID IS NOT NULL AND FA.TrN_Rodzaj = 302006 )

Jak wyfiltrować wybrany typ dokumentu z listy FA używając funkcji serwerowej?

Zastosowanie złożonego filtra na liście faktur (np. wyszukujących faktury finalne przekształcone z Faktury Pro Forma i powiązane z dokumentem WZ) nie działa przy księgowaniu dokumentów. Pojawia się komunikat „The multi-part identifier "A.trn_trnid" could not be bound.” W związku z tym filtr z aliasem o postaci: exists (select * from cdn.tranag A1 left join cdn.tranag A2 on A1.trn_trnid = A2.trn_faid left join cdn.tranag A3 on A1.trn_faid = A3.trn_trnid where A2.trn_rodzaj = 302200 and A.trn_trnid = A3.trn_trnid) należy zastąpić filtrem: (select CDN.fn_PrzykladowaNazwa(Trn_trnID))=1, gdzie funkcja serwerowa ma postać: Create Function CDN.fn_PrzykladowaNazwa(@ATrnID int) RETURNS int AS BEGIN Declare @Result int Set @Result = 0 select @Result = count(*) from cdn.tranag A1 join cdn.tranag A2 on A1.trn_trnid = A2.trn_faid join cdn.tranag A3 on A1.trn_faid = A3.trn_trnid where A2.trn_rodzaj = 302200 and A3.trn_trnid = @ATrnID RETURN @Result END GO

Jak wyfiltrować kontrahentów, którzy np. w m-cu styczniu zapłacili po terminie ? Lista może być potrzebna do np. do sporządzenia masowych not odsetkowych dla kontrahentów.

Filtr z poziomu słowników kontrahentów. W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists ( select * from CDN.BnkZdarzenia where BZd_PodmiotID=Knt_KntID and BZd_PodmiotTyp=1 and BZd_Rozliczono=1 and BZd_DataRoz BETWEEN ?@D17|Data od:75609 AND ?@D17|Data do:75609) or exists ( select * from CDN.BnkZdarzenia where BZd_PodmiotID=Knt_KntID and BZd_PodmiotTyp=1 and BZd_Rozliczono=2 and BZd_DataRoz BETWEEN ?@D17|Data od:75609 AND ?@D17|Data do:75609)

Jak wyfiltrować listę kontrahentów aby uzyskać tylko tych kontrahentów z którymi prowadziliśmy transakcje ?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: EXISTS ( SELECT [TrN_TrNID] FROM [CDN].[TraNag] WHERE [TrN_PodmiotTyp] = A.[Knt_PodmiotTyp] AND [TrN_PodID] = A.[Knt_KntId] AND [TrN_TypDokumentu] IN (302) ) Typ dokumentu może przyjąć następujące wartości: 301 - [FZ] Faktura zakupu 302 - [FA] Faktura sprzedaży 303 - [PW] Przyjęcie wewnętrzne 304 - [RW] Rozchód wewnętrzny 305 - [PA] Paragon 306 - [WZ] Wydanie zewnętrzne 307 - [PZ] Przyjęcie zewnętrzne 308 - [RO] Rezerwacja odbiorcy 309 - [ZD] Zamówienie dostawcy 310 - [BOM] Bilans otwarcia magazynu 311 - [AI] Arkusz Inwentaryzacyjny 312 - [MM] Przesunięcie międzymagazynowe 313 - [PKA] Przyjęcie kaucji 314 - [WKA] Wydanie kaucji 317 - [PWP] Przyjęcie wewnętrzne produkcji 318 - [RWS] Rozchód wewnętrzny składników 320 - [FPF] Faktura ProForma 345 - [TF] Dokument TaxFree 350 - [FRR] Faktura RR

Jak wyfiltrować listę kontrahentów z którymi (nie było/lub było) transakcji po np. 01.01.2018r.?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: a) Kontrahenci z którymi nie było transakcji not exists (select * from CDN.TraNag Z where A.Knt_KntId = Z.TrN_PodId and TrN_PodmiotTyp = 1 and TrN_DataOpe >='2018-01-01') b) Kontrahenci z którymi były transakcje exists (select * from CDN.TraNag Z where A.Knt_KntId = Z.TrN_PodId and TrN_PodmiotTyp = 1 and TrN_DataOpe >='2018-01-01')

Jak wyfiltrować listę kontrahentów, z którymi (nie było/lub było) transakcji tylko FA, FZ po np. 01.01.2018r.?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: a) Kontrahenci z którymi nie było transakcji not exists (select * from CDN.TraElem where TrE_PodID=A.Knt_KntID and TrE_PodmiotTyp=A.Knt_PodmiotTyp and TrE_DataOpe >= '2018-01-01' and TrE_TypDokumentu IN (302,301)) b) Kontrahenci, z którymi były transakcje exists (select * from CDN.TraElem where TrE_PodID=A.Knt_KntID and TrE_PodmiotTyp=A.Knt_PodmiotTyp and TrE_DataOpe >= '2018-01-01' and TrE_TypDokumentu IN (302,301)) Typ dokumentu: 301 - [FZ] Faktura zakupu 302 - [FA] Faktura sprzedaży

Jak wyfiltrować na liście zasobów lub cenniku towary uwzględnione z grupy głównej i grup dodatkowych ?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPTWGLISTA())|TwrGrupa|&Grupa towarowa:@? PAR@ Twr_GIDNumer IN (SELECT GIDNumer FROM CDN.TwrInTwG(??TwrGrupa))

Jak wyfiltrować na liście zasobów lub cenniku towary uwzględnione tylko z grupy głównej ?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPTWGLISTA())|TwrGrupa|&Grupa towarowa:@? PAR@ Twr_TwGGIDNumer = ??TwrGrupa

Jak wyfiltrować na liście zasobów lub cenniku towary, które na karcie mają określonego Dostawcę ?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKNTLISTA())|Dostawca|&Dostawca:REG=!NIEOKREŚLONY! @? PAR@ Twr_KntId = ??Dostawca

Jak wyfiltrować na liście zasobów lub cennika towary względem kodu, wartości lub nazwy atrybutu przypisanego na karcie tego towaru ?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: a) potrzeba odfiltrować towary posiadające atrybut o kodzie (bez podawania wartości tego atrybutu) @PAR ?@LS20(SELECT [DeA_DeAId], [DeA_Kod], [DeA_Nazwa] FROM [CDN].[DefAtrybuty] WHERE [DeA_Typ]= 1|GENERICLOOKUP(Atrybuty towarów, 0, 1))|Atrybut|&Atrybut: @? @MSG(Wybór z listy) @TIP(Wybór z listy) PAR@ EXISTS(SELECT [TwA_TwAId] FROM [CDN].[TwrAtrybuty] WHERE [Twr_TwrId] = [TwA_TwrId] AND [TwA_DeAId]= ??Atrybut) b) potrzeba odfiltrować towary posiadające atrybut z określoną wartością @PAR ?@LS20(SELECT [DeA_DeAId], [DeA_Kod], [DeA_Nazwa] FROM [CDN].[DefAtrybuty] WHERE [DeA_Typ]= 1|GENERICLOOKUP(Atrybuty towarów, 0, 1))|Atrybut|&Atrybut: @? @MSG(Wybór z listy) @TIP(Wybór z listy) PAR@ @PAR ?@S100|Wartosc|&Wartość: @? @MSG(Wartość atrybutu) @TIP(Wartość atrybutu) PAR@ EXISTS(SELECT [TwA_TwAId] FROM [CDN].[TwrAtrybuty] WHERE [Twr_TwrId] = [TwA_TwrId] AND [TwA_DeAId]= ??Atrybut AND [TwA_WartoscTxt] = ??Wartosc) c) potrzeba odfiltrować towary po nazwie atrybutu towaru EXISTS (SELECT * FROM CDN.TwRAtrybuty JOIN CDN.DefAtrybuty on TwA_DeAId = DeA_DeaID WHERE Twr_TwrId = TwA_TwrId AND DeA_Nazwa=?@S100|Nazwa atrybutu:'')

Jak wyfiltrować na liście zasobów lub cenniku zasoby po wartościach atrybutów towarów typu lista ?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT DAE_DAEId, DAE_Wartosc from CDN.DefAtrElem)|wart_atr|&wart_atr:REG= @? PAR@ exists (select * from CDN.DefAtrElem, CDN.TwrAtrybuty where Twr_TwrId = TwA_TwrId and TwA_WartoscTxt in (select DAE_Wartosc from CDN.DefAtrElem where DAE_DAEId=??wart_atr))

Jak na liście zasobów lub cenniku wyfiltrować towary które mają jakikolwiek atrybut?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from CDN.TwrAtrybuty where TwA_TwrId = Twr_TwrId)

Jak na liście zasobów lub cenniku wyfiltrować towary które nie maja żadnego atrybutu?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: not exists (select * from CDN.TwrAtrybuty where TwA_TwrId = Twr_TwrId)

Jak na liście zasobów lub cenniku wyfiltrować towary, które w danym dniu były sprzedawane na dokumentach FA lub PA?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|data|&data:REG={Today()} @? PAR@ exists (select * from CDN.TraElem T where A.Twr_TwrId=T.TrE_TwrId and T.TrE_DataDok=??data and (T.TrE_TypDokumentu=302 or T.TrE_TypDokumentu=305)) Wariant filtra w którym podajemy zakres dat: @PAR ?@D17|data_od|&data od:REG={Today()} @? PAR@ @PAR ?@D17|data_do|&data do:REG={Today()} @? PAR@ exists (select * from CDN.TraElem T where A.Twr_TwrId=T.TrE_TwrId and T.TrE_DataDok>=??data_od and T.TrE_DataDok<=??data_do and (T.TrE_TypDokumentu=302 or T.TrE_TypDokumentu=305))

Jak na liście zasobów lub cenniku wyfiltrować towary z którymi nie było transakcji po zadanej dacie?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|data|&Data:REG={Today()} @? PAR@ not exists (select * from CDN.TraElem Z where A.Twr_TwrId = Z.TrE_TwrId and TrE_DataOpe >= ??data)

Jak na liście zasobów lub cenniku wyfiltrować towary, których cena zakupu (ID=1) jest równa zero ?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from CDN.TwrCeny C where A.Twr_TwrID=C.TwC_TwrID and C.TwC_TwCNumer=1 and C.TwC_Wartosc=0)

Jak na liście zasobów lub cenniku wyfiltrować poprzez wybór z listy ceny te towary, które mają tą cenę większą od zera?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT ID = DfC_Lp, KOD = DfC_Nazwa from CDN.DefCeny)|cena|&cena:REG= @? PAR@ exists(select * from CDN.TwrCeny where TwC_TwCNumer=??cena and TwC_Wartosc>0 and TwC_TwrID=TwR_TwrID)

Jak na liście zasobów wyfiltrować towary po ilości, a nie ilości dostępnej przy zaznaczonym parametrze „zerowe”?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: Twi_Ilosc>0

Jak wyfiltrować listę zasobów z którymi (nie było lub było) transakcji po np. 01.01.2018?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: a) Towary z którymi nie było transakcji: not exists (select * from CDN.TraElem Z where A.Twr_TwrId = Z.Tre_TwrId and Tre_DataOpe >= '2018-01-01') b) Towary z którymi były transakcje: exists (select * from CDN.TraElem Z where A.Twr_TwrId = Z.Tre_TwrId and Tre_DataOpe >= '2018-01-01')

Jak wyfiltrować WZ-ki po operatorze, który stworzył dokument źródłowy (FA lub PA)?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT ID = Ope_OpeId, Kod = Ope_Kod From {OPBK()}.CDN.Operatorzy Order By Ope_Kod)|OperatorId|&Operator:1 @? PAR@ EXISTS (SELECT * FROM CDN.TraNag Z WHERE A.TrN_FaId = Z.TrN_TrNID AND Z.TrN_OpeZalId= ??OperatorId)

Jak wyfiltrować na liście dokumenty handlowo-magazynowe po danej kategorii dokumentu?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKATLISTA())|kategoria|&kategoria:REG=-brak- @? PAR@ TrN_KatID = ??Kategoria

Jak wyfiltrować dokumenty WZ utworzone z FPF, do której były wygenerowane zaliczki, ale tylko dla FPF, które nie zostały jeszcze przekształcone do faktur finalnych?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: A.TrN_Rodzaj=306010 and exists (select * from CDN.Tranag Z where Z.TrN_TypDokumentu=320 and A.TrN_FaID=Z.TrN_TrNID and exists (select * from CDN.Tranag t2 where t2.Trn_Rodzaj=302200 and t2.TrN_FaID=Z.TrN_TrNID))

Jak wyfiltrować dokumenty WZ, które są skojarzone z innymi dokumentami ale ich daty wystawienia się różnią?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: Exists (select * from CDN.TraNag Z where A.TrN_FaId = Z.TrN_TrNID and Z.TrN_DataWys != A.TrN_DataWys and A.Trn_Rodzaj=306004)

Jak wyfiltrować listę dokumentów handlowo-magazynowych aby nie wyświetlały się dokumenty, których wartość wynosi zero np. na korektach oraz te które są zaksięgowane do KH? Wtedy dokumenty, które nie są zaksięgowane, a ich wartość zakupu jest równa zero nie będą widoczne.

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: IsNull(TrN_DekId,0)=0 AND TrN_WartoscZakupu<>0

Jak wyfiltrować dokumenty PZ, które zostały skorygowane w całości?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select Z.TrN_ZwrID from CDN.TraNag Z where Z.TrN_ZwrId = A.TrN_TrNID and Z.TrN_Bufor=0 and (Z.TrN_Rodzaj=307001 or Z.TrN_Rodzaj=307002 or Z.TrN_Rodzaj=307003 or Z.TrN_Rodzaj=307004) group by Z.TrN_ZwrID having SUM(Z.Trn_RazemBrutto)*(-1)= A.Trn_RazemBrutto)

Jak wyfiltrować listę tych FA, których elementy mają wskazany przez nas atrybut towaru?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@S50|atrybut|&Kod atrybutu:REG=’’ @? PAR@ exists(select * from CDN.TraElem, CDN.Twratrybuty join CDN.DefAtrybuty on TwA_DeAId = DeA_DeaID where Trn_TrnId = Tre_TrnId and Tre_TwrId = TwA_TwrId and Dea_Kod=??atrybut) Gdy szukamy atrybut towaru o zadanej wartości: @PAR ?@S50|atrybut|&Wartość atrybutu:REG= @? PAR@ exists(select * from CDN.TraElem, CDN.Twratrybuty join CDN.DefAtrybuty on TwA_DeAId = DeA_DeaID where Trn_TrnId = Tre_TrnId and Tre_TwrId = TwA_TwrId and Twa_wartosctxt=??atrybut) Można filtrować też mniej rygorystycznie z zastosowaniem wyrażenia: (LIKE ‘%’+…+’%’)

Jak wyfiltrować na liście Faktur sprzedaży listę faktur zaliczkowych bez faktur finalnych?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: A.Trn_Rodzaj = 302200 and exists (select * from CDN.TraNag Z where A.Trn_Faid = Z.Trn_TrnId and Z.Trn_TypDokumentu = 320 and Z.Trn_Faid is Null) Niestety filtr ten nie będzie działał na standardowym wydruku listy faktur. Proszę w przypadku wydruku tak wyfiltrowanej listy korzystać z wydruku GenRap.

Jak wyfiltrować na liście faktur sprzedaży faktury zaliczkowe do których jest wystawiona faktura finalna?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: EXISTS (SELECT * FROM CDN.TraNag Z WHERE A.TrN_FaId = Z.TrN_TrNID AND Z.TrN_FaId is not null AND A.TrN_Rodzaj = 302200)

Jak wyfiltrować faktury sprzedaży, które są skojarzone z innymi dokumentami, ale ich daty wystawienia się różnią?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: Exists (select * from CDN.TraNag Z where Z.TrN_FaId = A.TrN_TrNID and Z.TrN_DataWys != A.TrN_DataWys and A.Trn_Rodzaj=302004)

Jak wyfiltrować dokumenty handlowe których termin płatności mija w zadanym okresie.

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: TrN_Termin BETWEEN ?@D17|&Od:REG={Today()} @? AND ?@D17|&Do:REG={Today()} @?

Jak wyfiltrować listę dokumentów handlowo-magazynowych po wybranym towarze?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_TWR.DLL|CALLLOOKUPTWRLISTA())|Towar|&Towar:REG= @? PAR@ exists (select * from CDN.TraElem where Trn_TrnId = Tre_TrnId and Tre_TwrId = ??Towar)

Jak wyfiltrować faktury sprzedaży po fragmencie nazwy umieszczonej na zakładce -kontrahent odbiorca faktury? (Np. głównym nabywcą jest Makro W-dwa a odbiorcą faktury Makro Olsztyn).

W konstruktorze filtra wybieramy pole "TRN_OdbNazwa1 (Pierwsza linia nazwy odbiorcy)", następnie po wywołaniu okna Edycja wyrażenia filtra należy z rozwijalnej listy w miejscu operator wybrać zawiera, a następnie zaznaczyć parametr Pytaj o wartość i podać tytuł zapytania np. Podaj nazwę odbiorcy i zatwierdzić wpis. Logiczna reprezentacja utworzonego w ten sposób wyrażenia filtrującego jest wyświetlana w dolnej części okna może wyglądać np. TrN_OdbNazwa1 LIKE '%' + ?@S100|Podaj nazwę:'' + '%'. W oknie Konstruktor filtra podać nazwę filtra.

Jak wyfiltrować dokumenty PA, które zostały skorygowane w całości?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select t.TrN_ZwrID from CDN.TraNag t where t.TrN_ZwrId = A.TrN_TrNID and t.TrN_Bufor=0 and (t.TrN_Rodzaj=305001 or t.TrN_Rodzaj=305005) group by t.TrN_ZwrID having SUM(t.Trn_RazemBrutto)*(-1)= A.Trn_RazemBrutto)

Jak wyfiltrować dokumenty RO, które mają oraz nie mają powiązania z dokumentami PWP?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: a) mają powiązanie z dokumentami PWP: EXISTS(SELECT TrN_TrNId FROM CDN.TraNag WHERE TrN_RelTrNId = A.TrN_TrNId AND TrN_TypDokumentu = 317) b) nie mają powiązania z dokumentami PWP: NOT EXISTS (SELECT TrN_TrNId FROM CDN.TraNag WHERE TrN_RelTrNId = A.TrN_TrNId AND TrN_TypDokumentu = 317)

Jak wyfiltrować na liście RO dokumenty, wg numeru obcego zamówienia?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: TrN_NumerObcy=?@S100|Nr zamówienia:''

Jak wyfiltrować dokumenty wg kontrahentów dla pola Nabywca?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT KnT_KntID, Knt_kod from CDN.kontrahenci)|kontrah|&kontrah:REG= @? PAR@ Trn_PodID=??kontrah

Jak wyfiltrować dokumenty wg kontrahentów dla pola Odbiorca?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKNTLISTA())|kod|&kod:REG=!NIEOKREŚLONY! @? PAR@ TrN_OdbiorcaTyp = 1 AND TrN_OdbId = ??kod

Jak wyfiltrować listę dokumentów zawierających dany atrybut dokumentu?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_TWR.DLL|CALLLOOKUPATRLISTADOK())|atr|&atr:REG= @? PAR@ exists (select * from CDN.DokAtrybuty where DAt_TrNId = TrN_TrNId and DAt_DeAId = ??atr)

Jak wyfiltrować listę dokumentów posiadających dany atrybut dokumentu, którego wartość zawiera podany przez użytkownika tekst?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_TWR.DLL|CALLLOOKUPATRLISTADOK())|atr|&atr:REG= @? PAR@ @PAR ?@S50|tekst_atrybutu|&tekst_atrybutu:REG= @? PAR@ exists (select * from CDN.DokAtrybuty where DAt_TrNId = TrN_TrNId and DAt_DeAId = ??atr and DAt_WartoscTxt Like '%'+??tekst_atrybutu+'%')

Jak wyfiltrować transakcje, gdzie na pozycjach użyto atrybutu (bez podawania wartości tego atrybutu)?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(SELECT [DeA_DeAId], [DeA_Kod], [DeA_Nazwa] FROM [CDN].[DefAtrybuty] WHERE [DeA_Typ]= 1|GENERICLOOKUP(Atrybuty towarów, 0, 1))|Atrybut|&Atrybut: @? @MSG(Wybór z listy) @TIP(Wybór z listy) PAR@ EXISTS( SELECT [TrE_TrNId] FROM [CDN].[TraElem] JOIN [CDN].[TraElemAtr] ON [TrE_TrEID] = [TrA_TrEId] AND [TrE_TrNId] = [A].[TrN_TrNID] WHERE [TrA_DeAId]=??Atrybut)

Jak wyfiltrować transakcje, gdzie na pozycjach użyto atrybutu z określoną wartością?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(SELECT [DeA_DeAId], [DeA_Kod], [DeA_Nazwa] FROM [CDN].[DefAtrybuty] WHERE [DeA_Typ]= 1|GENERICLOOKUP(Atrybuty towarów, 0, 1))|Atrybut|&Atrybut: @? @MSG(Wybór z listy) @TIP(Wybór z listy) PAR@ @PAR ?@S100|Wartosc|&Wartość: @? @MSG(Wartość atrybutu) @TIP(Wartość atrybutu) PAR@ EXISTS( SELECT [TrE_TrNId] FROM [CDN].[TraElem] JOIN [CDN].[TraElemAtr] ON [TrE_TrEID] = [TrA_TrEId] AND [TrE_TrNId] = [A].[TrN_TrNID] WHERE [TrA_DeAId]=??Atrybut AND [TrA_Wartosc]=??Wartosc)

Jak wyfiltrować dokumenty do których nie były wykonane korekty?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: not exists (select t.TrN_ZwrID from CDN.TraNag t where t.TrN_ZwrId = A.TrN_TrNID)

Jak wyfiltrować dokumenty wystawione w dniu dzisiejszym ?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: TrN_DataDok = {DateSQL(Today())}

Jak wyfiltrować dokumenty po wybranej formie płatności?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT ID = FPl_FPlId, Kod = FPl_Nazwa From CDN.FormyPlatnosci)|formy_platnosci|&formy_platnosci:REG= @? PAR@ TrN_FPlId = ??formy_platnosci Jeżeli chodzi nie tyle o konkretną formę płatności co o typ formy płatności to należałoby odwołać się do tabeli CDN.FormyPlatnosci. Wyrażenie: EXISTS(SELECT * FROM CDN.FormyPlatnosci WHERE FPl_FPlId = TrN_FPlId AND FPl_Typ=1) wpisane w polu Filtr SQL wyfiltruje dokumenty, które mają formę płatności o typie "gotówka". FPl_Typ=2 - typ formy płatności "przelew". FPl_Typ=3 - karta kredytowa

Jak wyfiltrować listę dokumentów po kategorii dokumentu ?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKATLISTA())|kategoria|&kategoria:REG=-brak- @? PAR@ TrN_KatID = ??Kategoria

Jak wyfiltrować listę dokumentów po kategorii elementu?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKATLISTA())|Kategoria|&Kategoria:REG= @?TIP(Wybierz kategorię) PAR@ exists (select * from CDN.TraElem where Trn_TrnId=Tre_TrnId and Tre_KatId = ??kategoria)

Jak wyfiltrować listę dokumentów aby wyświetlały się wszystkie dokumenty oprócz tych w buforze, korekt i anulowanych?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: IsNull(TrN_Korekta,0)=0 AND TrN_Bufor=0

Jak wyfiltrować dokumenty, na których występują towary/ usługi z określonej grupy towarowej?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPTWGLISTA())|grupa|&grupa:REG= @? PAR@ exists( SELECT TrE_TrEID FROM CDN.TraElem JOIN CDN.Towary ON TrE_TwrID = Twr_TwrID WHERE TrE_TrNID = A.TrN_TrNID AND Twr_TwGGIDNumer=??grupa )

Jak wyfiltrować dokumenty wg. daty wystawienia oraz dowolnego fragmentu numeru pełnego dokumentu?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|Data|&Data wystawienia:REG=75828 @? PAR@ @PAR ?@S20|wartosc|&Podaj wartosc:REG= @? PAR@ TrN_NumerPelny LIKE '%' + ??wartosc+'%' and TrN_DataWys=??Data

Jak wyfiltrować dokumenty, gdzie występują elementy z określoną cechą i wartością?

Dla cech typu data, do pola wartość należy wpisać datę wg formatu RRRR-MM-DD. Żaden inny format nie będzie rozpoznany przez filtr. Zapytanie należy wpisać z poziomu konstruktora filtra, bezpośrednio na zakładce Zaawansowane, w polu Filtr SQL: @PAR ?@LS20(OP_TWR.DLL|CALLLOOKUPATRLISTATWR())|CechaID|&Cecha: @? @MSG(Wybór z listy) @TIP(Wybór z listy) PAR@ @PAR ?@S255|CechaWartosc|&Wartość: @? @MSG(Wartość cechy) @TIP(Wartość cechy) PAR@ EXISTS( SELECT TrE_TrEID FROM [CDN].[TraElem] JOIN [CDN].[TraSElemDost] ON [TrE_TrEID] = [TsD_TrEID] WHERE TrE_TrNID = A.TrN_TrNID AND ( (ISNULL([TsD_Cecha1_DeAId], 0) = ??CechaID AND CASE WHEN ([TsD_Cecha1_Format] = 4 AND [TsD_Cecha1_Wartosc] <> '') THEN CONVERT(VARCHAR(10), DATEADD("day", CONVERT(INT, [TsD_Cecha1_Wartosc]), '1800-12-28'), 21) ELSE [TsD_Cecha1_Wartosc] END = ??CechaWartosc) OR (ISNULL([TsD_Cecha2_DeAId], 0) = ??CechaID AND CASE WHEN ([TsD_Cecha2_Format] = 4 AND [TsD_Cecha2_Wartosc] <> '') THEN CONVERT(VARCHAR(10), DATEADD("day", CONVERT(INT, [TsD_Cecha2_Wartosc]), '1800-12-28'), 21) ELSE [TsD_Cecha2_Wartosc] END = ??CechaWartosc) OR (ISNULL([TsD_Cecha3_DeAId], 0) = ??CechaID AND CASE WHEN ([TsD_Cecha3_Format] = 4 AND [TsD_Cecha3_Wartosc] <> '') THEN CONVERT(VARCHAR(10), DATEADD("day", CONVERT(INT, [TsD_Cecha3_Wartosc]), '1800-12-28'), 21) ELSE [TsD_Cecha3_Wartosc] END = ??CechaWartosc) OR (ISNULL([TsD_Cecha4_DeAId], 0) = ??CechaID AND CASE WHEN ([TsD_Cecha4_Format] = 4 AND [TsD_Cecha4_Wartosc] <> '') THEN CONVERT(VARCHAR(10), DATEADD("day", CONVERT(INT, [TsD_Cecha4_Wartosc]), '1800-12-28'), 21) ELSE [TsD_Cecha4_Wartosc] END = ??CechaWartosc) OR (ISNULL([TsD_Cecha5_DeAId], 0) = ??CechaID AND CASE WHEN ([TsD_Cecha5_Format] = 4 AND [TsD_Cecha5_Wartosc] <> '') THEN CONVERT(VARCHAR(10), DATEADD("day", CONVERT(INT, [TsD_Cecha5_Wartosc]), '1800-12-28'), 21) ELSE [TsD_Cecha5_Wartosc] END = ??CechaWartosc) OR (ISNULL([TsD_Cecha6_DeAId], 0) = ??CechaID AND CASE WHEN ([TsD_Cecha6_Format] = 4 AND [TsD_Cecha6_Wartosc] <> '') THEN CONVERT(VARCHAR(10), DATEADD("day", CONVERT(INT, [TsD_Cecha6_Wartosc]), '1800-12-28'), 21) ELSE [TsD_Cecha6_Wartosc] END = ??CechaWartosc) OR (ISNULL([TsD_Cecha7_DeAId], 0) = ??CechaID AND CASE WHEN ([TsD_Cecha7_Format] = 4 AND [TsD_Cecha7_Wartosc] <> '') THEN CONVERT(VARCHAR(10), DATEADD("day", CONVERT(INT, [TsD_Cecha7_Wartosc]), '1800-12-28'), 21) ELSE [TsD_Cecha7_Wartosc] END = ??CechaWartosc) OR (ISNULL([TsD_Cecha8_DeAId], 0) = ??CechaID AND CASE WHEN ([TsD_Cecha8_Format] = 4 AND [TsD_Cecha8_Wartosc] <> '') THEN CONVERT(VARCHAR(10), DATEADD("day", CONVERT(INT, [TsD_Cecha8_Wartosc]), '1800-12-28'), 21) ELSE [TsD_Cecha8_Wartosc] END = ??CechaWartosc) OR (ISNULL([TsD_Cecha9_DeAId], 0) = ??CechaID AND CASE WHEN ([TsD_Cecha9_Format] = 4 AND [TsD_Cecha9_Wartosc] <> '') THEN CONVERT(VARCHAR(10), DATEADD("day", CONVERT(INT, [TsD_Cecha9_Wartosc]), '1800-12-28'), 21) ELSE [TsD_Cecha9_Wartosc] END = ??CechaWartosc) OR (ISNULL([TsD_Cecha10_DeAId], 0) = ??CechaID AND CASE WHEN ([TsD_Cecha10_Format] = 4 AND [TsD_Cecha10_Wartosc] <> '') THEN CONVERT(VARCHAR(10), DATEADD("day", CONVERT(INT, [TsD_Cecha10_Wartosc]), '1800-12-28'), 21) ELSE [TsD_Cecha10_Wartosc] END = ??CechaWartosc) )) Filtr można zastosować również na liście zasobów, wówczas należy zmodyfikować w wyrażeniu WHERE relacje po polach TrE_TwrId=A.Twr_TwrId

Jak wyfiltrować listę zasobów/cennik tylko do tych towarów które są powiązane z dostawcą (zdefiniowany kontrahent na karcie towaru zakładka Dodatkowe pole Dostawca)?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKNTLISTA())|KontrahentId|&Kontrahenci:REG=’!NIEOKREŚLONY!’ @? PAR@ Twr_KntId = ??KontrahentId

Jak wyfiltrować na liście dokumentów PZ, dokumenty nie powiązane z FRR?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: not exists (select trr_trrid from cdn.tranagrelacje where trn_trnid = trr_trnid and trr_fatyp = 301) or trn_faid not in (select trn_trnid FROM CDN.TraNag JOIN cdn.TraNagRelacje ON TrN_TrNId = TrR_TrNId where TrR_TrNId = TrN_TrNID and TrR_FaTyp=350)

Jak wyfiltrować na liście dokumentów PZ, dokumenty powiązane z FRR?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select trr_trrid from cdn.tranagrelacje where trn_trnid = trr_trnid and trr_fatyp = 301) and trn_faid in (select trn_trnid FROM CDN.TraNag JOIN cdn.TraNagRelacje ON TrN_TrNId = TrR_TrNId where TrR_TrNId = TrN_TrNID and TrR_FaTyp=350)

Jak wyfiltrować na liście dokumentów RO, dokumenty ze statusem w Realizacji do których wygenerowano dokument FA bez WZ?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from cdn.tranagrelacje where TrR_FaTyp = 302 and trn_trnid = trr_trnid and trn_zwroconocalailosc = 2)

Jak wyfiltrować na liście faktur sprzedaży, dokumenty korekt ilościowych do dokumentów pierwotnych, które nie zostały przekształcone do dokumentu PW?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: not exists (select * from CDN.TraNagRelacje where TrR_TrNId = TrN_TrNID and (TrR_FaTyp=303 or TrR_FaTyp=306) and trn_rodzaj = 302101) and trn_rodzaj = 302101

Jak wyfiltrować na liście faktur, faktury zaliczkowe które nie mają skojarzonych faktur finalnych?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: Trn_TrnId not in ( select A.TrR_FaId from cdn.tranagrelacje B left outer join cdn.Tranag T on TrR_TrNID = T.TrN_TrNID left outer join cdn.TraNagRelacje A on B.TrR_FaId = A.TrR_TrNId where B.TrR_FaTyp = 320 AND TrN_Rodzaj in (302009, 302004)) and trn_rodzaj = 302200

Wyszukiwanie dokumentów z konkretnej dostawy. Filtr działa na liście WZ, wyświetli te dokumenty WZ, które rozchodowują towar z konkretnego (wskazanego w filtrze) PZ.

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@S30|numer|&numer:REG= @? PAR@ exists (select * from CDN.TraNag TRN2, CDN.TraElem TRE1, CDN.TraElem TRE2, CDN.TraSElem TRS1, CDN.TraSElem TRS2 where A.TrN_TrNID=TRE1.TrE_TrNID and TRS1.TrS_TrEId=TRE1.TrE_TrEID and TRS1.TrS_TrSIdDost=TRS2.TrS_TrSId and TRS2.TrS_TrEId = TRE2.TrE_TrEID and TRE2.TrE_TrNId=TRN2.TrN_TrNID and TRN2.TrN_NumerPelny like '%'+??numer+'%')

Wyszukiwanie dokumentów z konkretnych wydań. Filtr dla listy dokumentów PZ, po wskazaniu numeru dokumentu WZ wyświetli dokumenty PZ którymi towar z WZ został przyjęty.

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@S30|numer|&numer:REG= @? PAR@ exists (select * from CDN.TraNag TRN2, CDN.TraElem TRE1, CDN.TraElem TRE2, CDN.TraSElem TRS1, CDN.TraSElem TRS2 where A.TrN_TrNID=TRE1.TrE_TrNID and TRS1.TrS_TrEId=TRE1.TrE_TrEID and TRS1.TrS_TrSId=TRS2.TrS_TrSIdDost and TRS2.TrS_TrEId = TRE2.TrE_TrEID and TRE2.TrE_TrNId=TRN2.TrN_TrNID and TRN2.TrN_NumerPelny like '%'+??numer+'%')

Jak wyfiltrować towary z ceną domyślną w walucie np. EUR?

W menu Ogólne/ Cennik, w Konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from CDN.TwrCeny where TwC_TwrID=Twr_TwrId and TwC_TwCNumer=Twr_TwCNumer and TwC_Waluta='EUR')

Jak wyfiltrować towary z określonym kodem CN na liście cennikowej?

Należy założyć filtr zaawansowany który będzie korzystał z tabeli CDN.KodyCN. Filtr będzie wyglądał tak: @PAR ?@R(SELECT KCN_KcNID, KCN_Kod From CDN.KodyCN)|Kody_CN|&Kody CN: @? PAR@ Twr_KCNID = ??Kody_CN

Jak wyfiltrować towary, które nie mają ustalonego kodu CN?

W menu Ogólne/ Cennik, w Konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: Twr_KCNID is null

Jak wyfiltrować towary, które nie mają ustalonego kraju pochodzenia?

W menu Ogólne/ Cennik, w Konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: Twr_KrajPochodzenia = ''

Jak wyfiltrować towary, które nie mają wprowadzonej wagi lub waga jest zerowa?

W menu Ogólne/ Cennik, w Konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: Twr_WagaKG is null or Twr_WagaKG = 0

Jak wyfiltrować towary z przypisaną jedną grupą?

W menu Ogólne/ Cennik, w Konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select count (TwG_Kod) from CDN.TwrGrupy Where TwG_GIDTyp = 16 and TwG_GIDNumer = Twr_TwrId Group by TwG_Kod Having count (TwG_Kod) =1)

Jak wyfiltrować Dokumenty WZ mające powiązanie (bądź nie mające powiązania) z Fakturą Sprzedaży?

W menu Handel/ Wydania zewnętrzne, w Konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: - w celu znalezienia dokumentów WZ mających powiązanie z fakturą: exists (select * from CDN.TraNagRelacje where TrR_TrNId = TrN_TrNID and TrR_FaTyp=302) - w celu znalezienia dokumentów WZ nie mających powiązania z fakturą: not exists (select * from CDN.TraNagRelacje where TrR_TrNId = TrN_TrNID and TrR_FaTyp=302)

Jak wyfiltrować Dokumenty WZ powiązane z Fakturami Sprzedaży i Paragonami, gdzie daty wystawienia dokumentów handlowych znajdują się w podanym przedziale?

W menu Handel/ Wydania zewnętrzne, w Konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|data_od|&data od:REG={Today()} @? PAR@ @PAR ?@D17|data_do|&data do:REG={Today()} @? PAR@ Exists (select * from CDN.TraNag Z where A.TrN_FaId = Z.TrN_TrNID and Z.TrN_DataWys>= ??data_od and Z.TrN_DataWys <= ??data_do and A.Trn_TypDokumentu=306 and (Z.TrN_TypDokumentu=302 or Z.TrN_TypDokumentu=305)) Druga wersja filtra z wykorzystaniem tabeli CDN.TraNagRelacje: @PAR ?@D17|data_od|&data od:REG={Today()} @? PAR@ @PAR ?@D17|data_do|&data do:REG={Today()} @? PAR@ exists(select * from CDN.TraNagRelacje join CDN.TraNag Z on Trr_faid = z.trn_trnid where TrR_TrNId = A.TrN_TrNID and TrR_FaTyp in (302,305) and Z.TrN_DataWys>= ??data_od and Z.TrN_DataWys <= ??data_do)

Jak na liście dokumentów WZ ukryć te mające powiązania z Fakturą Sprzedaży/Fakturą korygującą, które zostały całkowicie zwrócone?

W menu Handel/ Wydania zewnętrzne, w Konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: TrN_TrNID NOT IN (SELECT TrR_TrNID FROM CDN.TraNagRelacje WHERE TrR_FaTyp IN (302)) AND TrN_TrNID NOT IN ( SELECT Zrd.Tre_TrNID from CDN.TraElem [Kor] LEFT JOIN CDN.TraElem [Zrd] on Kor.TrE_ZwrId = Zrd.TrE_TrEId WHERE Kor.TrE_Aktywny <> 0 AND Zrd.TrE_TypDokumentu = 306 GROUP BY Zrd.TrE_TrNID, Zrd.TrE_Ilosc HAVING Zrd.Tre_Ilosc + SUM(Kor.Tre_Ilosc) <= 0) AND TrN_Korekta = 0 AND TrN_Anulowany = 0

Jak wyfiltrować dokumenty po opisie pozycji?

Na liście dokumentów w module Handel/Faktury w Konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@ABC(' ')@? PAR@ @PAR ?@LS20(SELECT Tre_TrnId, TrE_TwrOpis AS [Opis], TrE_TwrKod AS [Kod], TrE_TwrNazwa AS [Nazwa] FROM CDN.TraElem WHERE REPLACE(REPLACE(REPLACE(REPLACE(TrE_TwrOpis,CHAR(13),''), char(10),''),CHAR(9), ''),' ','') <> '' AND TrE_TypDokumentu = 302 ORDER BY TrE_TwrOpis |GENERICLOOKUP(Towary z opisem na dokumencie, 0, 1))|TwrOpis|&Opis Towaru:| 6@? PAR@ Trn_TrnId = ??TwrOpis

CRM

Jak wyfiltrować listę kontaktów/ zadań aby widoczne były CRM-y zmodyfikowane danego dnia?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|data|&Data:REG={Today()} @? PAR@ FLOOR(CONVERT(DECIMAL(14,4), CRK_TS_MOD)) = FLOOR(CONVERT(DECIMAL(14,4), CONVERT(DATETIME,??data ,120)))

Jak zrobić aby właściciel firmy na liście kontaktów i zadań widział swoje zadania i zadań podwładnych, natomiast podwładni widzą tylko i wyłącznie swoje zadania ?

W Konfiguracji/ Program/ Użytkowe/ Parametry należy zaznaczyć parametr Stosuj filtry obowiązkowe. Na zakładce Opcje w Typie filtra należy zaznaczyć Obowiązkowy oraz z menu wybrać akronim Operatora. Do zadania może być przypisany pracownik lub operator. W bazie danych ID pracownika jak i operatora może być takie samo albo różne, dlatego w filtrze można wykorzystać również pole CRK_OpiekunTyp gdzie typ=8 to operator a typ =3 to pracownik. W polu Filtr SQL można wpisać: CRK_OpiekunId= {OperatorID} and CRK_OpiekunTyp =8 Gdzie {OperatorID} oznacza ID operatora aktualnie zalogowanego. Na zakładce [Opcje] w Typie filtra należy zaznaczyć Obowiązkowy oraz z menu wybrać akronim Operatora.

Obieg dokumentów

Jak wyfiltrować w bibliotece dokumentów wszystkie dokumenty które nie mają powiązań z transakcjami ?

Będą to zarówno dokumenty firmowe, jak i wspólne (te z zasady nie są kojarzone z innymi transakcjami). Tak więc ewentualnie należy dodatkowo zawęzić listę dokumentów tylko do firmowych (parametr na liście). Zapytanie należy wpisać z poziomu konstruktora filtra, bezpośrednio na zakładce [Zaawansowane], w polu Filtr SQL. not exists (select * from CDN.DokRelacje Z where A.Dnv_DonId = Z.Dor_ParentId and Z.Dor_ParentTyp = 750)

Jak wyfiltrować dokumenty z biblioteki dokumentów, które są na zadanym etapie realizacji (etap bieżący) i etap ten jest etapem głównym?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT ID = SE_SEID, Kod = SE_Symbol From {OPBK()}.CDN.SekEtapy Order By SE_Symbol )|EtapID|&Etap:1 @? PAR@ exists (select * from CDN.DokNagProcesEtapy, CDN.DokNagEtapy where DNV_DoNID=DnPr_DoNID and DnPr_DnPrID=DnE_DnPrID and DnE_EtapID=??EtapID and A.DNV_EtapBiezacyLp=DnPr_Lp and DnPr_Poziom=1)

Jak wyfiltrować dokumenty z biblioteki dokumentów, które są na zadanym etapie realizacji (etap bieżący)?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT ID = SE_SEID, Kod = SE_Symbol From {OPBK()}.CDN.SekEtapy Order By SE_Symbol )|EtapID|&Etap:1 @? PAR@ exists (select * from CDN.DokNagProcesEtapy, CDN.DokNagEtapy where DNV_DoNID=DnPr_DoNID and DnPr_DnPrID=DnE_DnPrID and DnE_EtapID=??EtapID and A.DNV_EtapBiezacyLp=DnPr_Lp)

Jak wyfiltrować dokumenty z biblioteki dokumentów, które w schemacie mają zadany etap realizacji?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT ID = SE_SEID, Kod = SE_Symbol From {OPBK()}.CDN.SekEtapy Order By SE_Symbol )|EtapID|&Etap:1 @? PAR@ exists (select * from CDN.DokNagProcesEtapy, CDN.DokNagEtapy where DNV_DoNID=DnPr_DoNID and DnPr_DnPrID=DnE_DnPrID and DnE_EtapID=??EtapID)

Księgowość i Środki Trwałe

Jak wyfiltrować z rejestrów VAT faktury, które mają datę deklaracji VAT-7 inną niż rejestr VAT?

W Rejestrze (zakupu lub sprzedaży) VAT, w Konstruktorze filtra, na zakładce: [Zaawansowane]należy wpisać w polu Filtr SQL: Van_RokMies<>Van_DeklRokMies Filtr zastosowany z zakładki Rejestr VAT, zakres dat: od 2018/01/01 do 2018/01/31 pozwoli wyświetlić np. fakturę wystawioną 5 stycznia 2018, a mającą wejść na deklarację w lutym 2018.

Przeglądam dokumenty RVAT za pierwszy kwartał, chciałbym wyfiltrować te, które są rozliczane w deklaracjach za następne miesiące. Jak mogę to wykonać?

Polem odpowiedzialnym za rozliczenie wpisu w deklaracji za dany miesiąc to pole: VaN_DeklRokMies. Pole to agreguje w postaci liczby całkowitej rok oraz miesiąc, np.: dokument przeznaczony do rozliczenia w deklaracji za kwiecień 2018 będzie w tym polu posiadał wpis : 201804 Możemy, więc wprowadzić filtr zaawansowany , który będzie wykorzystywał to pole wpisując w polu Filtr SQL: @PAR ?@D17|DATA_OD|&Od :{DateClwFirstDay('m')} @? PAR@ @PAR ?@D17|DATA_DO|&Do :{DateClwFirstDay('m')} @? PAR@ YEAR(??DATA_OD ) * 100 + MONTH(??DATA_OD) <=VaN_DeklRokMies and YEAR(??DATA_DO ) * 100 + MONTH(??DATA_DO) >=VaN_DeklRokMies Filtr przed uruchomieniem będzie odpytywał o daty określające przedział - Od i Do. – z wskazanej daty znaczenie będą miały jedynie miesiąc oraz rok.

Czy można utworzyć filtr dla Rejestru VAT po akronimie pracownika wybranego na formatce faktury na zakładce Kontrahent?

W polu Filtr SQL można wpisać: VaN_PodZalId=(select Pre_PreID from cdn.pracetaty where Pre_kod like ?@S100|Akronim pracownika:'') AND VaN_PodmiotZalTyp=3 Przed odfiltrowaniem listy program będzie pytał o akronim pracownika. Można również posłużyć się deklaracją parametru dynamicznego i przekazać do zapytania kod pracownika wyświetlony na liście – w polu Filtr SQL wpisujemy: @PAR ?@LS20(OP_PRCW.DLL|CALLLOOKUPPRILISTA())|pracownik|&pracownik:REG= @? PAR@ VaN_PodZalId=??pracownik AND VaN_PodmiotZalTyp=3

Jak z listy rejestru VAT odfiltrować te faktury, które są nierozliczone lub rozliczone częściowo i dodatkowo forma płatności jest różna od gotówki?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from CDN.BnkZdarzenia where VaN_VaNID=BZd_DokumentID and (Bzd_Kwota<>Bzd_KwotaRoz)) AND VaN_FplID<>1

Jak w Rejestrach VAT wyfiltrować faktury z podaną kategorią tak aby wyfiltrowaną listę można było zaznaczyć i zaksięgować?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKATLISTA())|Kategoria|&Kategoria: @? PAR@ VaN_KatId = ??Kategoria Program będzie pytał o kategorię przed filtrowaniem i dodatkowo będzie ją można wybrać z listy kategorii. Po zawężeniu listy zaznaczamy faktury np. kombinacją klawiszy CTRL + A i księgujemy wybranym schematem.

Jak wyfiltrować faktury w Rejestrach VAT zawierające kategorie szczegółowe należące do zadanej kategorii ogólnej?

a) dla kategorii nagłówka dokumentu: W konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select Kat_KodOgolny, Kat_KodSzczegol from cdn.kategorie where VaN_KatID=Kat_KatID AND Kat_KodOgolny=?@S100|Kategoria ogólna:'') b) dla kategorii wybranych w elementach faktury VAT (kategorie przy poszczególnych stawkach VAT): W konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: Exists (select * from cdn.vattab Join cdn.kategorie on vat_katid = kat_katid where vat_vanid = van_vanid and Kat_KodOgolny=?@S100|Kategoria ogólna:'')

Jak wyfiltrować w Rejestrach VAT listę faktur całkowicie rozliczonych i zakwalifikowanych do danej deklaracji VAT-7?

Taka lista może być potrzebna tym firmom, które potrzebują ustalić wartość zapłaconych Faktur Zakupu dla potrzeb ustalenia kwoty VAT do zwrotu na rachunek bankowy podatnika. Aby zrobić wydruk takich faktur, należy: 1. Zbudować filtr: na zakładce [Zaawansowane] w Konstruktorze filtra w polu Filtr SQL należy wpisać: VaN_DeklRokMies=?@N-15.4|Rok i miesiąc VAT-7:0 2. Na zakładce Rejestr VAT w Rejestrach VAT, zawęzić listę faktur, za pomocą ww. filtra, do tych które są zakwalifikowane tylko do deklaracji np. listopadowej (gdy przed odfiltrowaniem listy program zapyta o rok i miesiąc deklaracji – wpisać: 201811). 3. Wykonać odpowiedni wydruk dokumentów rozliczonych z menu wydruków. Listę faktur można uzyskać również bezpośrednio na ekranie. W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from CDN.BnkZdarzenia where VaN_VaNID=BZd_DokumentID AND BZd_DokumentTyp=2 AND (BZd_KwotaSys=BZd_KwotaRozSys) AND VaN_DeklRokMies=?@N-15.4|Rok i miesiąc VAT-7:0) Przed filtrowaniem program pyta o datę deklaracji VAT-7 – należy wpisać rok i miesiąc w formacie np. 201611. Tak wyfiltrowanej listy nie da się wydrukować ze względu na składnię filtra, ale można ją wysłać do arkusza Excel.

Jak wyfiltrować listę faktur po kolumnie KPiR, do której dokumenty mają być zaksięgowane?

Na liście faktur w rejestrze VAT, w konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT Id = 1, Kod = 'Sprzedaż' UNION SELECT Id = 2, Kod = 'Pozostałe' UNION SELECT Id = 3, Kod = 'Towary' UNION SELECT Id = 4, Kod = 'Uboczne' UNION SELECT Id = 5, Kod = 'Reklama' UNION SELECT Id = 6, Kod = 'Wynagrodzenia' UNION SELECT Id = 7, Kod = 'Inne' UNION SELECT Id = 8, Kod = 'Zaszłości')|Kolumna|&Kolumna: @? PAR@ exists (Select * From CDN.VatTab Where VaT_VaNID = VaN_VaNId And VaT_KolumnaKPR = ??Kolumna ) Filtr ma taką właściwość, że jeśli jest jakiś zapis, który ma być zaksięgowany w części do jednej kolumny, a w części do innej, to na liście widać go w pełnej kwocie, a na wydruku w kwocie do zaksięgowania do wskazanej kolumny.

Jak uzyskać listę transakcji nierozliczonych, pochodzących z Rejestru VAT, na danym koncie rozrachunkowym?

W menu Księgowość/Księgowość/ Dzienniki, zakładka Konto, należy wybrać odpowiednie konto, a w Konstruktorze filtra, na zakładce Zaawansowane, w polu Filtr SQL wpisać: exists(select * from CDN.VatNag join CDN.BnkZdarzenia on VaN_VaNID=BZd_DokumentID where VaN_DekID=DeN_DeNId AND Bzd_DokumentTyp=2 AND (Bzd_Kwota-Bzd_KwotaRoz<>0)) OR exists(select * from CDN.VatNag join CDN.TraNag on TrN_VaNId=VaN_VaNID join CDN.BnkZdarzenia on TrN_TrNID=BZd_DokumentID where VaN_DekID=DeN_DeNId AND Bzd_DokumentTyp=1 AND (Bzd_Kwota-Bzd_KwotaRoz<>0)) Filtr zawęzi listę do tych dekretów, które pochodzą z Rejestru VAT (zostały wprowadzone bezpośrednio do Rejestru VAT lub przesłane z modułu FA i zaksięgowane z Rejestru VAT) i nie są rozliczone lub są rozliczone częściowo.

Jak sprawdzić czy poprawnie wprowadzono Kwoty dodatkowe na fakturach w Rejestrze VAT?

Jeżeli jest jakaś reguła np. zwykle na Fakturach Zakupu rozksięgowujemy kwotę netto na różne konta „czwórek” czy „piątek” i suma księgowań po stronie Wn ma się równać kwocie netto dokumentu, to można zbudować filtr, który będzie wyświetlał faktury nie spełniające tego warunku. W Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: not exists (select * from CDN.KwotyDodatkowe where Kdd_DokumentID=VaN_VaNID AND KDD_DokumentTyp=2 AND Kdd_Segment1<>'' having SUM(Kdd_Kwota) = VaN_RazemNetto) Zostaną wyfiltrowane wszystkie pozycje różne od tych, na których suma kwot dodatkowych WN jest równa kwocie netto faktury.

Jak wyfiltrować środki trwałe aktywne, całkowicie umorzone?

Poniżej przykład filtra, który wyświetli środki trwałe aktywne, których wartość bieżąca bilansowa minus odpisy umorzeniowe = 0. Filtr nie uwzględnia historyczności i bierze pod uwagę tylko amortyzację bilansową. SrT_Stan=0 and SrT_WartoscBilan + ( Select IsNull(Sum( SrH_KwotaBilan - SrH_KwotaUm ), 0) From CDN.TrwaleHist Where SrH_SrTId = SrT_SrTId And SrH_TypDokumentu<>4) = 0

Jak w dziennikach księgowych wyfiltrować dekrety, których dokumenty źródłowe były płatne gotówką?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL można wpisać: exists (select * from CDN.TraNag where DeN_DeNId = TrN_DekId and TrN_FPlId=1) OR exists(select * from CDN.VatNag where DeN_DeNId=VaN_DekID AND VaN_FplID=1) TrN_FPlId=1 i VaN_FplID=1 oznacza formę płatności o ID 1. Standardowo jest to forma płatności o nazwie „gotówka”.

Jak wyfiltrować różnice kursowe, które powstały z rozliczenia dokumentów innych niż te pochodzące z Ewidencji dodatkowej?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: ''=''AND(BRK_LDokTyp='1' AND exists(select*from CDN.BnkZdarzenia where BRK_LDokID=Bzd_BzdID and BZd_DokumentTyp<>12))OR(BRK_PDokTyp='1' AND exists(select*from CDN.BnkZdarzenia where BRK_PDokID=Bzd_BzdID and BZd_DokumentTyp<>12)) Powyższy filtr wyświetli różnice kursowe, na których co najmniej jeden z dokumentów nie pochodzi z Ewidencji dodatkowej. Wyfiltrowane różnice kursowe można zaznaczyć i zaksięgować. BRK_LDokTyp='1' czyli że typ lewego dokumentu to dokument pochodzący z tabeli BnkZdarzenia. BZd_DokumentTyp=1 to typ dokumentu w BnkZdarzenia np. 1 – faktura z modułu Faktury; 12 – faktura z Rejestru VAT; 12 – dokument z Ewidencji dodatkowej;

Jak sprawdzić, która faktura z rejestru zakupów VAT nie została zaksięgowana na konto VAT’u lub została zaksięgowana, ale kwota VAT z faktury nie zgadza się z kwotą VAT na koncie?

W Rejestrze zakupów VAT można stworzyć filtr, który wyświetli te faktury, których suma kwoty VAT nie jest równa kwocie zaksięgowanej na konto VAT’u. W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL można wpisać: VaN_DekId Is Not Null And Not Exists (Select DeK_AccId From CDN.DekretyKonta Join CDN.Konta On DeK_AccId = Acc_AccId Where DeK_DeNId = VaN_DekId And Acc_Numer='221-02' And Year(DeK_DataDok) = Year(VaN_DataZap) And Month(DeK_DataDok) = Month(VaN_DataZap) Group By DeK_AccId Having Sum(DeK_Kwota) = VaN_RazemVat) W pole Acc_Numer='221-2' należy wpisać numer konta VAT. W przypadku faktur – korekt na kwoty ujemne, filtr zadziała prawidłowo wtedy, gdy kwota VAT’u jest księgowana na to samo konto co zwykła faktury i po tej samej stronie tylko ze znakiem „minus”.

Jak wyfiltrować w dziennikach księgowań PK, które zawierają pozycje zawierające zadany opis?

W menu Księgowość/ Dzienniki, zakładka [Dzienniki]. W konstruktorze filtra na zakładce [Zaawansowane] należy wpisać: @PAR ?@S30|Szukaj|&Szukaj: @? PAR@ DeN_Dokument Like '%'+ ??Szukaj +'%' Or DeN_Kategoria Like '%'+ ??Szukaj +'%' Or Exists (Select * From CDN.DekretyElem Where DeE_DeNId = DeN_DeNId And (DeE_Dokument Like '%'+ ??Szukaj +'%' Or DeE_Kategoria Like '%'+ ??Szukaj +'%'))

Jak wyfiltrować listę dokumentów rozliczonych pochodzących z Rejestru VAT lub ewidencji dodatkowej?

Na liście Dokumentów Rozliczonych w menu Kasa/Bank w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from cdn.bnkzdarzenia where (bzd_dokumenttyp=12 and brk_ldoktyp=1 and brk_ldokid = bzd_bzdid) or (bzd_dokumenttyp=12 and brk_pdoktyp=1 and brk_pdokid = bzd_bzdid) or (bzd_dokumenttyp=2 and brk_ldoktyp=1 and brk_ldokid = bzd_bzdid) or (bzd_dokumenttyp=2 and brk_pdoktyp=1 and brk_pdokid = bzd_bzdid))

Jak wyfiltrować Rejestr VAT wg numeru NIP Kontrahenta pod warunkiem, że dokument nie jest zaksięgowany?

Na liście Rejestru VAT w menu Kasa/Bank w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@HO(RY:1|KP:2|KH:3)|TypKsi|&KSI:{GetSql('Select Fir_Wartosc From CDN.Firma Where Fir_Numer=1204', '')} @? PAR@ {CHOOSE ( ??TypKsi, 'IsNull(VaN_RycId,0)=0', 'IsNull(VaN_KPRId,0)=0', 'IsNull(VaN_DekId,0)=0', '1=1')} and VaN_KntNipE LIKE '%' + ?@S100|numer NIP:'' + '%'

Jak wyfiltrować konta w Planie kont, które mają inny numer w przyszłym okresie?

Na Planie kont w konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists ( select * from cdn.konta k2 where A.Acc_NextAccId=k2.Acc_AccId and A.Acc_Numer<>k2.Acc_Numer)

Jak wyfiltrować polecenia księgowania, które zawierają dekrety na konto 404-1 i 501-01?

Przykład takiego filtra dla zakładki [Dzienniki] w menu Księgowość/Księgowość/Dzienniki: exists(select * from CDN.DekretyElem K1 join CDN.DekretyElem K2 on (DeN_DeNID = K2.DeE_DeNID) where DeN_DeNID = K1.DeE_DeNID and K1.DeE_KontoWn = '404-1' and K2.DeE_KontoWn = '501-01')

Na fakturze w Rejestrze VAT wpisuję jako wartość atrybutu numer rejestracyjny samochodu i jako kolejny atrybut – paliwo, jak sprawdzić ile paliwa zakupiono dla danego samochodu?

Na jednym dokumencie uzupełniono atrybuty REJESTRACJA (nr rejestracyjny samochodu) i PALIWO (ilość zakupionego paliwa). Poniższe zapytanie, w Rejestrach VAT, na zakładce [Wg atrybutów], zwróci rekordy zawierające ilość paliwa dla podanego numeru rejestracyjnego samochodu. Przed odfiltrowaniem program zapyta o nr rejestracyjny. exists (select * from CDN.VATAtrybutyView as ATR1 join CDN.VATAtrybutyView as ATR2 on (ATR1.VAV_VaNID=ATR2.VAV_VaNID and ATR2.VAV_DeAKod='REJESTRACJA' AND ATR2.VAV_DAtWartoscTxt =?@S100|Nr rejestracyjny:'') where ATR1.VAV_VaNID=VAN_VaNID and ATR1.VAV_DeAKod = 'PALIWO') W polu Atrybut można wybrać atrybut PALIWO – wtedy będzie można podsumować wyfiltrowane rekordy (ilość paliwa).

Jak wyfiltrować dokumenty w rejestrze VAT według wskazanych grup kontrahentów?

W Rejestrze VAT w konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT Gru_GruID, Gru_Nazwa FROM cdn.Grupy WHERE Gru_Typ=31)|Grupa_kontrahentow|&Grupa_kontrahentow:REG= @? PAR@ exists (select * from cdn.kontrahenci where knt_kntID=van_podId and van_podmiotTyp=1 and knt_grupa=??_Q_RES2_Grupa_kontrahentow)

Jak wyfiltrować faktury z rejestru VAT zaksięgowane pomiędzy podanymi datami, które zakwalifikowane zostały do deklaracji VAT-7 za podany okres?

W Rejestrze VAT w konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|data_od|&Data_zapisu_od:{DateClwFirstDay('m')} @? PAR@ @PAR ?@D17|data_do|&Data_zapisu_do:{DateClwLastDay('m')} @? PAR@ @PAR ?@N4|Rok|&Rok_deklaracji:{Year(Today())} @? PAR@ @PAR ?@N4|Miesiac|&Miesiąc_deklaracji:{Month(Today())} @? @RL(1) @RH(12) PAR@ EXISTS (SELECT * FROM CDN.DekretyNag WHERE VaN_DekId = DeN_DeNId AND VaN_DekId IS NOT NULL AND VaN_DeklRokMies={100 * ??Rok + ??Miesiac} AND DeN_DataDok >=??Data_od AND DeN_DataDok <= ??Data_do) W przypadku stosowania metody kasowej należy użyć poniższego filtra: @PAR ?@D17|data_od|&Data_zapisu_od:{DateClwFirstDay('m')} @? PAR@ @PAR ?@D17|data_do|&Data_zapisu_do:{DateClwLastDay('m')} @? PAR@ @PAR ?@N4|Rok|&Rok_deklaracji:{Year(Today())} @? PAR@ @PAR ?@N4|Miesiac|&Miesiąc_deklaracji:{Month(Today())} @? @RL(1) @RH(12) PAR@ EXISTS (SELECT * FROM CDN.DekretyNag WHERE VaN_DekId = DeN_DeNId AND VaN_DekId IS NOT NULL AND DeN_DataDok >=??Data_od AND DeN_DataDok <= ??Data_do) AND EXISTS ( SELECT * FROM CDN.VatTab7 WHERE Va7_VaNID=VaN_VaNID AND Va7_RokMiesiac={100 * ??Rok + ??Miesiac} AND VaN_MetodaKasowa=1)

Jak wyfiltrować środki trwałe mające określony atrybut?

Na liście środków trwałych w konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT ID = DeA_DeAId, Kod = DeA_Kod FROM CDN.DefAtrybuty WHERE DeA_Typ=3 ORDER BY DeA_Kod)|KodAtr|&Kod atrybutu:ATR1 @? PAR@ EXISTS (SELECT * FROM CDN.TrwaleAtrybuty JOIN CDN.DefAtrybuty ON SrA_DeAId = DeA_DeAId WHERE SrT_SrTID = SrA_SrTId AND DeA_DeAId =??KodAtr)

Jak wyfiltrować dokumenty w rejestrze VAT, które zostały wprowadzone lub zmodyfikowane po konkretnej dacie?

W Rejestrze VAT w konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|data_od|&Data_wprowadzenia_lub_modyfikacji:{DateClwFirstDay('m')} @? PAR@ VaN_TS_Zal >= ??data_od OR VaN_TS_Mod >= ??data_od

Jak wyfiltrować dokumenty w Rejestrze VAT posiadające określony atrybut?

W Rejestrze VAT w konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@LS20(OP_TWR.DLL|CALLLOOKUPATRLISTADOK())|Atrybut|&Atrybut:REG= @? PAR@ exists (select * from CDN.DokAtrybuty where VaN_VaNID = DAt_VaNID and DAt_DeAId = ??Atrybut)

Jak wyfiltrować dokumenty w Rejestrze VAT posiadające określoną wartość atrybutu?

W Rejestrze VAT w konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@S30|Wartosc_atrybutu|&Wartosc_atrybutu:''@? PAR@ exists (select * from CDN.DokAtrybuty where VaN_VaNID = DAt_VaNID and DAt_WartoscTxt = ??Wartosc_atrybutu)

Jak wyfiltrować dokumenty w Rejestrze VAT, które mają nie zaznaczonego parametru Rozliczać w deklaracji VAT?

W Rejestrze VAT w konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: VaN_RozliczacVat7 = 0

Jak znaleźć zapisy w Rejestrze VAT, które pod listą zaliczek mają wybranego jakiegoś pracownika?

W Rejestrze VAT w konstruktorze filtra na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: VaN_PodmiotZalTyp='3’

Jak odnaleźć zapisy księgowe na koncie z daną kategorią w elemencie zapisu?

W menu Księgowość/Dzienniki, zakładka [Konto] w konstruktorze filtra na zakładce [Zaawansowane] należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKATLISTA())|Kategoria|&Kategoria:REG= @?TIP(Wybierz kategorię) PAR@ DeE_KatId =??kategoria

Jak odnaleźć zapisy księgowe na koncie z daną kategorią w nagłówku zapisu?

W menu Księgowość/Dzienniki, zakładka [Konto] w konstruktorze filtra na zakładce [Zaawansowane] należy wpisać: @PAR ?@LS20(OP_LIST.DLL|CALLLOOKUPKATLISTA())|Kategoria|&Kategoria:REG=-brak- @? PAR@ DeN_KatId = ??Kategoria

W jaki sposób wyszukać dokumenty środków trwałych w zależności od osoby odpowiedzialnej przypisanej w zadanym okresie?

Na liście dokumentów środków trwałych w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: @PAR ?@D17|data1|&Data od:{DateClwFirstDay('m')} @? PAR@ @PAR ?@D17|data2|&Data do:{DateClwLastDay('m')} @? PAR@ @PAR ?@R(SELECT distinct Pri_PraId, PRi_nazwisko+' '+pri_Imie1 FROM cdn.Pracidx where PRI_Typ <>2 order by 2 )|PRACOWNIK|&PRACOWNIK:0|@? PAR@ Exists (select * from CDN.TrwaleOsobyOdpowiedzialne where SrH_SrtID=SrOO_SrTID and SrOO_DataOd<=??data1 and (SrOO_DataDo >=??data2 or SrOO_DataDo is null) and SrOO_PrcID =??PRACOWNIK)

W jaki sposób na liście zapisów w rejestrze VAT (bądź na liście faktur) wyszukać dokumenty zaksięgowane na konkretne konto?

Na liście zapisów w rejestrze VAT w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: @PAR ?@S30|Konto|&Konto:''@? PAR@ EXISTS (SELECT * FROM CDN.DekretyNag join CDN.DekretyElem on DeN_DeNId=DeE_DeNId WHERE VaN_DekID = DeN_DeNId AND (DeE_KontoWn=??Konto OR DeE_KontoMa=??Konto)) Filtr do zastosowania na liście faktur: @PAR ?@S30|Konto|&Konto:''@? PAR@ EXISTS (SELECT * FROM CDN.DekretyNag join CDN.DekretyElem on DeN_DeNId=DeE_DeNId WHERE TrN_DekId = DeN_DeNId AND (DeE_KontoWn=??Konto OR DeE_KontoMa=??Konto))

W jaki sposób wyszukać zapisy KPiR zaksięgowane z określonych dokumentów źródłowych?

  Na liście zapisów KPiR w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: @PAR ?@R (SELECT Id = 2, Kod = 'Rejestr VAT' UNION SELECT Id = 3, Kod = 'Samochodówka' UNION SELECT Id = 4, Kod = 'Remanent' UNION SELECT Id = 5, Kod = 'Wynagrodzenia uproszczone' UNION SELECT Id = 7, Kod = 'Dokumenty ŚT' UNION SELECT Id = 10, Kod = 'Wynagrodzenia' UNION SELECT Id = 12, Kod = 'Ewidencja dodatkowa' UNION SELECT Id = 13, Kod = 'Różnice kursowe' UNION SELECT Id = 14, Kod = 'Zapisy k/b' )|Zrodlo|&Zrodlo: @? PAR@ KPR_Zrodlo = ??Zrodlo

W jaki sposób wyszukać zapisy księgowe na koncie mające parę (taką samą kwotę) po obu stronach konta?

Z poziomu Księgowość/ Dzienniki/ zakładka [Konto] w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: @PAR ?@D17|data1|&Data od:{DateClwFirstDay('y')} @? PAR@ @PAR ?@D17|data2|&Data do:{DateClwLastDay('y')} @? PAR@ @PAR ?@S30|Konto|&Konto:''@? PAR@ Exists (Select * From CDN.DekretyElem A Where A.DeE_DeEId=DeK_DeEId And (Exists (Select * From CDN.DekretyElem B Where A.DeE_Kwota=B.DeE_Kwota And A.DeE_KontoMa=??Konto and B.DeE_KontoWn=??Konto AND A.DeE_DataWys between ??data1 And ??data2 AND B.DeE_DataWys between ??data1 And ??data2) OR Exists (Select * From CDN.DekretyElem B Where A.DeE_Kwota=B.DeE_Kwota And A.DeE_KontoWn=??Konto and B.DeE_KontoMa=??Konto AND A.DeE_DataWys between ??data1 And ??data2 AND B.DeE_DataWys between ??data1 And ??data2)))

W jaki sposób na planie kont wyszukać konta rozrachunkowe tego samego podmiotu, na których istnieją nierozliczone rozrachunki po przeciwnych stronach?

Z poziomu Księgowość/ Plan kont w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: EXISTS( Select * From CDN.Konta B Where A.Acc_SlownikId=B.Acc_SlownikId And A.Acc_SlownikTyp=B.Acc_SlownikTyp And A.Acc_Rozrachunkowe = 1 And B.Acc_Rozrachunkowe = 1 AND A.Acc_NumerIdx IN (SELECT Roz.KRo_KontoIdx FROM CDN.KsiRozrachunki AS Roz WHERE Roz.KRo_RozliczenieID IS NULL AND Roz.KRo_Strona=1) AND B.Acc_NumerIdx IN (SELECT Roz.KRo_KontoIdx FROM CDN.KsiRozrachunki AS Roz WHERE Roz.KRo_RozliczenieID IS NULL AND Roz.KRo_Strona=2)) OR EXISTS( Select * From CDN.Konta B Where A.Acc_SlownikId=B.Acc_SlownikId And A.Acc_SlownikTyp=B.Acc_SlownikTyp And A.Acc_Rozrachunkowe = 1 And B.Acc_Rozrachunkowe = 1 AND A.Acc_NumerIdx IN (SELECT Roz.KRo_KontoIdx FROM CDN.KsiRozrachunki AS Roz WHERE Roz.KRo_RozliczenieID IS NULL AND Roz.KRo_Strona=2) AND B.Acc_NumerIdx IN (SELECT Roz.KRo_KontoIdx FROM CDN.KsiRozrachunki AS Roz WHERE Roz.KRo_RozliczenieID IS NULL AND Roz.KRo_Strona=1)) Powyższy filtr zadziała w przypadku, gdy jest nierozliczony rozrachunek po stronie Wn na koncie 201-2-1-ADM i po stronie Ma na koncie 202-2-1-ADM, chociaż równie dobrze może to być to samo konto.

W jaki sposób na liście dokumentów w rejestrze VAT wyfiltrować dokumenty według stanu ich rozliczeń?

Z poziomu rejestru VAT w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać treść filtra odpowiednią dla szukanych dokumentów: - wyłącznie dokumenty nierozliczone całkowicie: not exists (select * from CDN.BnkZdarzenia where VaN_VaNID = BZd_DokumentID and BZd_DokumentTyp = 2 and (Bzd_KwotaRoz > 0)) AND VaN_Wewnetrzna = 0 - wyłącznie dokumenty rozliczone częściowo: exists(select BZd_DokumentID, BZd_DokumentTyp, SUM(BZd_Kwota), SUM(BZd_KwotaRoz) from cdn.BnkZdarzenia where BZd_DokumentID = VaN_VaNID AND BZd_DokumentTyp = 2 GROUP BY BZd_DokumentID, BZd_DokumentTyp HAVING SUM(BZd_Kwota) <> SUM(BzD_KwotaRoz) AND SUM(BzD_KwotaRoz) > 0.00) - dokumenty nierozliczone bądź częściowo rozliczone: exists (select BZd_BZdID FROM CDN.BnkZdarzenia where VaN_VaNID=BZd_DokumentID and BZd_DokumentTyp = 2 and (Bzd_Kwota<>Bzd_KwotaRoz)) - wyłącznie dokumenty rozliczone całkowicie: exists(select BZd_DokumentID, BZd_DokumentTyp, SUM(BZd_Kwota), SUM(BZd_KwotaRoz) from cdn.BnkZdarzenia where BZd_DokumentID = VaN_VaNID AND BZd_DokumentTyp = 2 GROUP BY BZd_DokumentID, BZd_DokumentTyp HAVING SUM(BZd_Kwota) = SUM(BzD_KwotaRoz) AND SUM(BzD_KwotaRoz) > 0.00)

Płace i Kadry

Jak wyfiltrować pracowników, dla których ważność badań upływa w podanym okresie?

Na liście pracowników w menu Kadry/Płace / Kadry, w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|DataOd|Podaj datę:{DateClwFirstDay('m')} @? PAR@ @PAR ?@D17|DataDo|Podaj datę:{DateClwLastDay('m')} @? PAR@ exists (select 1 from CDN.PracEtaty where PRI_PraId=PRE_PraId and PRE_WaznoscBadanOkres between ??DataOd AND ??DataDo) Przed odfiltrowaniem pojawi się pytanie o daty. Domyślnie podpowiada się data pierwszego i ostatniego dnia miesiąca.

Jak odfiltrować listę pracowników niepełnosprawnych po kodzie niepełnosprawności?

Po uruchomieniu filtru pojawi się okno, w którym należy wpisać kod niepełnosprawności (1,2,3 lub 4) datę tj. dzień, na który chcemy sprawdzić listę osób niepełnosprawnych (sprawdzane są daty od-do niepełnosprawności). W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|Data|&Data:{Today()}@? PAR@ exists(select 1 from cdn.pracetaty where pri_praid=pre_praid and PRE_StNiepelnosp LIKE '%' + ?@S100|Stopień niepełnospr:'' + '%' and ??Data between pre_niepelnospod and pre_niepelnospdo)

Jak wyfiltrować listę osób mających zawarte umowy cywilno-prawne o podanym symbolu?

Po uruchomieniu filtru pojawi się okno, w którym należy wpisać zakres dat (sprawdza datę zawarcia umowy we wskazanym okresie) oraz symbol umowy (np. UMW). W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|DataOd|Podaj datę:{DateClwFirstDay('m')} @? PAR@ @PAR ?@D17|DataDo|Podaj datę:{DateClwLastDay('m')} @? PAR@ exists (select 1 from CDN.UMOWY where Pri_PraID = UMW_PraID and umw_numerstring LIKE '%' + ?@S100|Symbol:'' + '%' and UMW_DataOd between ??DataOd AND ??DataDo)

Jak wyfiltrować z listy pracowników osoby z przypisanym Urzędem Skarbowym, na wskazany dzień?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|Data|na dzień:{Today()}@? PAR@ exists (select * from CDN.PracEtaty where PRI_Praid=PRE_PraId and pre_PODUrzSkarbId>0 and ??Data between PRE_DataOd and PRE_DataDo) Ewentualnie zamiast @D17 można wykorzystać @HD17 jeśli parametr z datą ma być ukryty (a więc zawsze jako parametr ma się pojawiać data bieżąca): @PAR ?@HD17|filtr_dtDataAkt|&filtr_dtDataAkt:{Today()}@? PAR@ exists (select * from CDN.PracEtaty where PRI_Praid=PRE_PraId and pre_PODUrzSkarbId>0 and ??filtr_dtDataAkt between PRE_DataOd and PRE_DataDo) Osoby bez przypisanego Urzędu Skarbowego: @PAR ?@D17|Data|na dzień:{Today()}@? PAR@ not exists (select * from CDN.PracEtaty where PRI_Praid=PRE_PraId and pre_PODUrzSkarbId>0 and ??Data between PRE_DataOd and PRE_DataDo)

Jak wyfiltrować pracowników, którym wybrana kwalifikacja kończy się w zadanym zakresie?

Na liście pracowników w menu Kadry/Płace / Kadry, w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT ID = Dkm_DkmID, Kod = DKM_Nazwa from cdn.DaneKadMod where dkm_Rodzaj = 6 order by DKM_Nazwa)|Kwalifikacje|&Kwalifikacje: @? PAR@ @PAR ?@D17|DataOd|&DataOd:REG={DateClwFirstDay('m')} @? PAR@ @PAR ?@D17|DataDo|&DataDo:REG={DateClwLastDay('m')} @? PAR@ exists (select 1 from cdn.Uprawnienia join cdn.DaneKadMod on Upr_DkmId = Dkm_DkmID where Pri_PraID = Upr_PraID and DKM_DkmID = ??Kwalifikacje and upr_KursTermin between ??DataOd and ??DataDo) Przed odfiltrowaniem pojawi się rozwijana lista kwalifikacji oraz pytanie o zakres dat.

Jak zablokować operatorowi dostęp do dokumentów dotyczących rozliczeń z pracownikami z tytułu wynagrodzeń?

Aby operator nie widział: A. Zapisów kasowo/bankowych wystawionych na pracowników, należy założyć filtr w menu: Kasa/bank/Zapisy kasowe/bankowe. Kliknąć na ikonę „Konstruktor filtra” i na zakładce [Zaawansowane], wpisać w polu Filtr SQL: BZp_PodmiotTyp<>3 Na zakładce [Opcje], wybrać: Obowiązkowy i wybrać operatora, który ma mieć załączony ten filtr. Jeżeli jest więcej niż jeden operator, który ma mieć założony taki filtr, należy zbudować drugi identyczny filtr, z tym, że na zakładce Opcje wybrać innego operatora. B. Dla zdarzeń w Preliminarzu pochodzących z list płac, należy założyć filtr w menu: Kasa/Bank / Preliminarz płatności. Kliknąć na ikonę „Konstruktor filtra” i na zakładce [Zaawansowane], wpisać w polu Filtr SQL: BZd_DokumentTyp<>8 Na zakładce [Opcje], wybrać: Obowiązkowy i wybrać operatora, który ma mieć załączony ten filtr. Jeżeli jest więcej niż jeden operator, który ma mieć założony taki filtr, należy zbudować drugi identyczny filtr, z tym, że na zakładce Opcje wybrać innego operatora. C. Aby operator nie mógł wybrać z listy pracownika (np. po to aby podglądnąć listę rozliczonych i nierozliczonych zapisów dla wybranego pracownika w menu Kasa/bank/ Rozliczenia podmiotu. Należy operatorowi dodać blokadę dostępu do listy pracowników. Blokadę zakłada się w menu: Start/Konfiguracja / Program/Użytkowe/Operatorzy. Na formatce danego operatora, na zakładce [Blokady dostępu] należy dodać blokadę: Lista pracowników, wspólników i właścicieli. D. Aby operator nie widział rozliczeń powstałych z dokumentów, z których przynajmniej jeden jest wystawiony na pracownika, należy założyć następujący filtr obowiązkowy dla operatora w menu Kasa/Bank/ Rozliczenia: pole Filtr SQL: not exists (select * from CDN.BnkRozKwotyView where BRKV_BRKId=BRK_BRKId and (BRKV_PodmiotTyp1=3 OR BRKV_PodmiotTyp2=3)) Filtry obowiązkowe włącza się w menu: Start/Konfiguracja/Program/Użytkowe/Parametry: Stosuj filtry obowiązkowe. Operator nadający filtry obowiązkowe musi być Administratorem, pozostali operatorzy nie powinni być administratorami.
Uwaga
Na formatce Operatora (menu: Start/Konfiguracja/Program/Użytkowe/Operatorzy) znajduje się parametr Blokada dostępu do rozliczeń pracowników. Parametr ten blokuje dostęp do dokumentów w module Kasa/Bank, na których jako podmiot jest wybrany pracownik lub wspólnik.

Jak wyfiltrować listę pracowników, którym kończy się ważność badań okresowych?

Na liście pracowników w menu Kadry/Płace/Kadry, w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|DataOd|Podaj datę:{DateClwFirstDay('m')} @? PAR@ @PAR ?@D17|DataDo|Podaj datę:{DateClwLastDay('m')} @? PAR@ exists (select 1 from CDN.PracEtaty where PRI_PraId=PRE_PraId and PRE_WaznoscBadanOkres between ??DataOd AND ??DataDo) Przed odfiltrowaniem pojawi się pytanie o zakres dat.

Jak wyfiltrować listę pracowników zatrudnionych na stanowiskach robotniczych?

Na liście pracowników w menu Kadry/Płace/Kadry, w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|Data|&Data:{Today()}@? PAR@ exists (select 1 from CDN.PracEtaty join CDN.DaneKadMod on PRE_ETADkmIdStanowisko=DKM_DkmId where DKM_Robotnicze=1 and DKM_Rodzaj=1 and PRE_PraId=PRI_PraId and ??Data between PRE_DataOd and PRE_DataDo) Przed odfiltrowaniem pojawi się zapytanie o datę.

Jak wyfiltrować listę pracowników zgłoszonych do wszystkich ubezpieczeń (społeczne i zdrowotne)?

Na liście pracowników w menu Kadry/Płace/Kadry, w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from cdn.pracetaty where pri_praid=pre_praid and pre_ubzzdrowod <> CONVERT(DATETIME,'1899-12-30',120) and PRE_UBZJestEmerytal=1 and PRE_UBZJestRentowe=1 and PRE_UBZJestchorobowe=1 and PRE_UBZJestwypad=1)

Jak wyfiltrować listę pracowników zgłoszonych tylko do ubezpieczenia zdrowotnego?

Na liście pracowników w menu Kadry/Płace/Kadry, w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from cdn.pracetaty where pri_praid=pre_praid and pre_ubzzdrowod <> CONVERT(DATETIME,'1899-12-30',120) and PRE_UBZJestEmerytal=0 and PRE_UBZJestRentowe=0 and PRE_UBZJestchorobowe=0 and PRE_UBZJestwypad=0)

Jak wyfiltrować listę pracowników przypisanych do wybranej kategorii?

Na liście pracowników w menu Kadry/Płace/Kadry, w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(select ID=KAT_KatId, Kat_KodSzczegol from CDN.Kategorie)|Kategoria|&Kategoria:REG=PLACE @? PAR@ exists (select 1 from CDN.PracEtaty where PRI_PraId=PRE_PraId and PRE_KATId= ??Kategoria and ?@D17|Data:{Today()} between PRE_DataOd and PRE_DataDo) Przed odfiltrowaniem pojawi się rozwijana lista słownikowa z kategoriami oraz pytanie o datę.

Jak wyfiltrować listę dokumentów nierozliczonych wystawionych na pracownika?

Na liście Dokumentów Nierozliczonych w menu Kasa/Bank w Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: exists (select * from CDN.PodmiotyView where DKB_PodmiotId=Pod_PodId and Dkb_PodmiotTyp = Pod_PodmiotTyp AND DKb_PodmiotTyp=3)

Jak wyfiltrować pracowników z listy Kadry zwolnionych w zadanym okresie, w aktualnym okresie historycznym?

W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@D17|DataOd|Zwoln. w okresie od:{DateClwFirstDay('m')} @? PAR@ @PAR ?@D17|DataDo|do:{DateClwLastDay('m')} @? PAR@ exists (select 1 from CDN.PracEtaty where PRI_PraId=PRE_PraId and PRE_ZatrudnionyDo between ??DataOd AND ??DataDo and ?@D17|Na datę aktualności:{Today()} between PRE_DataOd and PRE_DataDo)

Jak wyfiltrować pracowników, którzy mają formę płatności „ROR” lub „gotówka”, w aktualnym okresie historycznym?

Filtr działa tak, że sprawdza odpowiedni zapis historyczny pracownika (data ,którą ustawimy jako „Zapis hist. prac” – podpowiada się aktualna) oraz płatność, która ma ustawioną „nadwyżkę”. W Konstruktorze filtra, na zakładce [Zaawansowane], w polu Filtr SQL należy wpisać: @PAR ?@R(SELECT Id = 1, Kod = 'gotówka' UNION SELECT Id = 3, Kod = 'ROR')|platnosc|&platność:REG= @? PAR@ exists(select 1 from CDN.PracEtaty join CDN.SchematPlatnosci on SPL_PodmiotId = PRE_PreId where PRE_PraId=PRI_PraId and SPL_Reszta = 1 and SPL_FplId = ??Platnosc AND ?@D17|Zapis hist. prac:{Today()} between PRE_DataOd and PRE_DataDo)

W jaki sposób wyszukać pracowników z określoną kategorią na wybranej liście płac?

Z poziomu Płace i Kadry/ Wypłaty pracowników w Konstruktorze filtra, na zakładce [Zaawansowane] należy wpisać: @PAR ?@R(SELECT LPL_LplId, LPL_NumerPelny FROM CDN.ListyPlac)|Lista|&Lista plac:REG= @? PAR@ @PAR ?@LS0(OP_LIST.DLL|CALLLOOKUPKATLISTA())|kategoria|&kategoria:0|@? PAR@ EXISTS(SELECT 1 FROM CDN.PracEtaty JOIN CDN.Wyplaty ON WPL_PraId = PRE_PraId JOIN CDN.ListyPlac ON LPL_LplId = WPL_LplId WHERE PRI_PraId = PRE_PraId AND WPL_KatId = ??Kategoria AND LPL_LplId = ??Lista) Można również zastosować wariant filtra, w którym numer listy płac jest automatycznie przekazywany na podstawie wybranej na oknie listy: @PAR ?@HN0|ListaPlacId|&ListaPlacId:0@? PAR@ @PAR ?@LS0(OP_LIST.DLL|CALLLOOKUPKATLISTA())|kategoria|&kategoria:0|@? PAR@ EXISTS(SELECT 1 FROM CDN.PracEtaty JOIN CDN.Wyplaty ON WPL_PraId = PRE_PraId JOIN CDN.ListyPlac ON LPL_LplId = WPL_LplId WHERE PRI_PraId = PRE_PraId AND WPL_KatId = ??Kategoria AND LPL_LplId = ??ListaPlacId)

OPT089 - Pakiet VAT e-commerce (OSS)

Data aktualizacji: 28-06-2022

1. Wstęp

W programie Comarch ERP Optima dostępne są funkcje związane z pakietem VAT e-commerce, który obowiązuje od 1 lipca 2021 roku. W skutek tych zmian w przepisach, w przypadku sprzedaży wysyłkowej (transakcje z konsumentami z innych krajów Unii Europejskiej) po przekroczeniu wartości 10.000 EUR łącznej sprzedaży do krajów UE, dostawca zobowiązany jest do przystąpienia do procedury VAT-OSS lub do rejestracji VAT w kraju przeznaczenia i rozliczania podatku VAT w tym kraju. Poprzez uczestnictwo w nowej procedurze VAT-OSS możliwe jest uniknięcie rejestracji do celów rozliczenia VAT w każdym kraju członkowskim, do którego dostarczane są towary. Procedura VAT-OSS umożliwia również rozliczenie podatku VAT z tego tytułu na jednej deklaracji składanej elektronicznie.

2. Ustawienia ogólne

2.1 Stawki VAT w Konfiguracji Programu

Przy sprzedaży na odległość wobec konsumentów z innych krajów UE należy stosować stawkę VAT obowiązującą w kraju, do którego dostarczane są towary. W związku z tym w Konfiguracji Programu/ Ogólne/ Stawki VAT dostępne są stawki VAT obowiązujące we wszystkich krajach Unii Europejskiej. Lista stawek podzielona jest na poszczególne kraje:

Stawki VAT.

Podczas wprowadzania bądź edytowania stawki VAT, na formularzu stawki znajduje się informacja czy jest to stawka podstawowa czy też obniżona. Wskazywany jest również prefiks kraju (pole obowiązkowe), którego dana stawka VAT dotyczy:

Formularz stawki VAT.

Podczas dodawania nowej stawki domyślnie podpowiada się stawka podstawowa oraz kraj PL. Dostępne do wyboru są kody krajów należących do Unii Europejskiej.

2.2 Karta kontrahenta

Na karcie kontrahenta dostępny jest rodzaj transakcji: Procedura OSS. Ten rodzaj powinien zostać wybrany dla tych kontrahentów będących osobami fizycznymi z innego kraju UE, dla których realizowana jest sprzedaż towarów na odległość. Pozwoli to na skorzystanie z uproszczonej procedury OSS w przypadku przekroczenia limitu 10 tys. EUR.

Formularz kontrahenta – wybór rodzaju transakcji.

Po wybraniu rodzaju transakcji Procedura OSS wymagane jest wskazanie prefiksu kraju UE na zakładce [Ogólne] karty kontrahenta. Jeżeli w programie sporządzana jest deklaracja Intrastat, po wybraniu na karcie kontrahenta rodzaju transakcji Procedura OSS możliwe jest wskazanie domyślnego kodu transakcji (podobnie jak dla rodzaju transakcji: Wewnątrzunijny). Jeżeli kontrahent ma na swojej karcie wybrany rodzaj transakcji Procedura OSS, ten rodzaj przenoszony jest domyślnie na dokument sprzedażowy w module Handel oraz w Rejestrze VAT Sprzedaży. W przypadku wybrania takiego kontrahenta na dokumencie zakupowym, podstawiony zostanie rodzaj transakcji Nabycie wewnątrzunijne. W przypadku konieczności ustawienia nowego rodzaju transakcji dla większej ilości kontrahentów, możliwe jest skorzystanie z operacji seryjnej Zmień status dostępnej na liście kontrahentów:

Operacje seryjne – zmiana statusu kontrahenta.

Po wyborze rodzaju transakcji Procedura OSS wymagane jest wskazanie kodu kraju wewnątrzunijnego. W przeciwnym razie seryjna zmiana statusu kontrahentów nie będzie możliwa.

2.3 Formularz kategorii

Na formularzu kategorii znajduje się sekcja Stawki VAT (procedura OSS) zawierająca tabelę z listą domyślnych stawek VAT dla poszczególnych krajów:

Formularz kategorii – Stawki VAT (procedura OSS)

Tabela zawiera takie informacje, jak: kod kraju, nazwa kraju i stawka VAT. Dla każdego kraju możliwe jest wskazanie tylko jednej stawki VAT dla procedury OSS przenoszonej na dokument z danej kategorii.

3 Zastosowanie procedury OSS w module Handel

3.1 Stawki VAT dla pozycji cennikowych

Na potrzeby ewidencjonowania dokumentów sprzedażowych w systemie procedury OSS, dla towarów i usług należy przypisać stawki VAT obowiązujące w poszczególnych Państwach Unii Europejskiej. Stawki te będą wykorzystywane na dokumentach sprzedażowych, na których zostanie zastosowany rodzaj transakcji: Procedura OSS. Na karcie pozycji cennika (menu Ogólne/ Cennik lub Handel/ Zasoby) na zakładce [Jednostki, EAN, VAT] w tabeli Stawki VAT (procedura OSS) po naciśnięciu przycisku  – Dodaj należy wskazać kod kraju UE, dla którego chcemy przypisać stawkę VAT, a następnie wybrać stawkę VAT, jaką jest opodatkowany towar w danym państwie Do wyboru dostępne są wyłącznie stawki VAT zdefiniowane dla tego kraju w menu Start/Konfiguracja/ Program/ Ogólne/ Stawki VAT. Otwórz – umożliwia zmianę kodu kraju lub zmianę stawki VAT dla danego kraju. – Usuń – umożliwia usunięcie stawki VAT przypisanej to towaru.

Pozycja cennika – Stawki VAT (procedura OSS)

Jeżeli na dokument związany ze sprzedażą zostanie wybrany kontrahent z rodzajem transakcji Procedura OSS, to dla każdej pozycji dokumentu będzie proponowana stawka VAT z karty cennikowej, z zakładki [Jednostki, EAN, VAT], zgodnie z kodem kraju odbiorcy wybranego na dokumencie. Operacje seryjne Dla towarów zaznaczonych na liście można seryjnie dodawać i usuwać stawki VAT dla procedury OSS. Funkcja jest dostępna w menu Ogólne/ Cennik lub Handel/ Zasoby pod przyciskiem   – Operacje seryjne/ Stawki VAT/ Dodaj/ Usuń stawki VAT dla procedury OSS:

Pozycja cennika – Stawki VAT (procedura OSS)

W pierwszym kroku należy określić, czy chcemy dodać czy usunąć stawki VAT dla zaznaczonych na liście pozycji cennikowych.

Podstawowe dla wszystkich państw UE – zaznaczenie tego parametru spowoduje, że dla każdego zaznaczonego towaru zostanie przypisana/ usunięta podstawowa stawka VAT każdego kraju unijnego (zdefiniowana w menu Start/Konfiguracja/ Program/ Ogólne/ Stawki VAT).

Dla wybranego państwa UE – po zaznaczeniu parametru należy wskazać kod kraju i jedną ze stawek VAT obowiązujących w tym kraju, którą chcemy przypisać bądź usunąć z zaznaczonych towarów. W przypadku, gdy jakiś towar ma już dodaną stawkę VAT dla wskazanego kraju i za pomocą operacji seryjnej chcemy dodać dla tego kraju inną stawkę VAT, to w skutek wykonania operacji seryjnej zostanie podmieniona stawka VAT dla tego kraju na karcie towaru zgodnie ze stawką VAT wskazaną w operacji seryjnej.

Operacja seryjna jest wykonywana za pomocą przycisku . Aby zablokować operatorowi możliwość seryjnego ustawiania stawek VAT dla procedury OSS, na karcie operatora (menu Start/Konfiguracja/ Program/ Użytkowe/ Operatorzy), na zakładce [Blokady dostępu] należy zaznaczyć blokadę zmiany procedury Seryjne ustawienie stawki VAT dla procedury OSS.

3.2 Dokumenty handlowe w procedurze OSS

Procedura OSS dotyczy dokumentów sprzedaży. W programie można ją zastosować na:
  • Fakturach Sprzedaży,
  • Wydaniach Zewnętrznych,
  • Rezerwacjach Odbiorcy,
  • Fakturach Pro Forma,
  • Fakturach Zaliczkowych,
  • Fakturach Finalnych,
  • Wydaniach Kaucji,
  • na korektach do powyższych dokumentów.
  Korzystanie z uproszczonej procedury rozliczania VAT (OSS) dotyczy sprzedaży B2C (transakcje pomiędzy przedsiębiorcą a osobą fizyczną). Aby wystawić dokument sprzedaży w procedurze OSS, należy wybrać na dokument kontrahenta (Nabywcę), który na swojej karcie, na zakładce [Handlowe] ma określony rodzaj transakcji: Procedura OSS. Wówczas lista stawek VAT pozycji cennikowych dodawanych na dokument zostanie zawężona do stawek obowiązujących w kraju kontrahenta wskazanego jako Odbiorca na dokumencie. Kraj Odbiorcy jest weryfikowany na podstawie jego prefiksu w NIP. Domyślnie dla pozycji podpowiada się stawka VAT przypisana dla kraju Odbiorcy na karcie towaru. W oknie Pozycja dokumentu można wskazać inną stawkę VAT spośród zdefiniowanych dla kraju Odbiorcy w menu Start/Konfiguracja/ Program/ Ogólne/ Stawki VAT. Jeśli na karcie towaru nie zdefiniowano stawki VAT dla kraju Odbiorcy, podczas dodawania pozycji na dokument, pojawia się informacja: Brak zdefiniowanej stawki VAT obowiązującej w kraju odbiorcy. Uzupełnij stawkę VAT na karcie towaru. W przypadku gdy na dokumencie określono rodzaj transakcji jako Procedura OSS i nie podano kodu kraju Odbiorcy, nie będzie można zapisać dokumentu.
Uwaga
Na Fakturze Sprzedaży do Wydania Zewnętrznego wystawionego w procedurze OSS, nie ma możliwości zmiany Odbiorcy i prefiksu NIP Odbiorcy.
Po wyborze kontrahenta (Nabywcy), który ma domyślny rodzaj transakcji: Procedura OSS, na dokumencie (nie dotyczy WKA) pojawi się parametr: Rozliczam podatek w OSS. Jest on domyślnie zaznaczony i oznacza, że podatek VAT z Faktury jest rozliczany za pomocą procedury OSS (One Stop Shop), czyli ta transakcja będzie rozliczana procedurą uproszczoną w deklaracji VIU-D (zaznaczenie parametru jest przenoszone do rejestrów VAT). Transakcja jest kwalifikowana do deklaracji VIU-D na podstawie daty sprzedaży. Ustawienie parametru Rozliczam podatek w OSS jest przenoszone na powiązane dokumenty:
  • w przypadku przekształcenia Faktury Pro Forma do Wydania Zewnętrznego, na WZ nie ma możliwości zmiany ustawienia tego parametru,
  • w przypadku przekształcenia Faktury Pro Forma do Faktury Zaliczkowej, na Fakturze Zaliczkowej można zmienić ustawienie tego parametru. Jeżeli do tej samej Faktury Pro Forma są tworzone kolejne Faktury Zaliczkowe, to na kolejnych Fakturach Zaliczkowych nie ma możliwości zmiany ustawienia parametru. Jego ustawienie przenoszone jest z pierwszej Faktury Zaliczkowej.
  Odznaczenie parametru Rozliczam podatek w OSS, skutkuje tym, że podatek od tej transakcji nie będzie rozliczany w deklaracji VIU-D. Natomiast stawki VAT są w dalszym ciągu naliczane dla kraju Odbiorcy. Jedynie zmiana rodzaju transakcji na dokumencie spowoduje ustawienie stawek VAT dla pozycji zgodnie z tym jaki zostanie wybrany rodzaj transakcji.

Pozycja cennika – Stawki VAT (procedura OSS)

Opakowania kaucjonowane Na Fakturze Sprzedaży dla opakowań kaucjonowanych z zakładki [Kaucje] ustawiana jest stawka VAT zgodna z krajem Odbiorcy. Na Wydanie Kaucji utworzone do Faktury Sprzedaży przenoszony jest rodzaj transakcji z Faktury: procedura OSS. Na Fakturze Sprzedaży do Wydania Kaucji dla kontrahenta z rodzajem transakcji: Procedura OSS, domyślnie jest zaznaczony parametr Rozliczam podatek w OSS. Jeżeli Wydanie Kaucji nie ma rodzaju transakcji Procedura OSS, to po przekształceniu do Faktury i zmianie na takiej Fakturze rodzaju transakcji na Procedura OSS, stawki VAT zostaną naliczone zgodnie z krajem Odbiorcy. Korekty do dokumentów Ustawienie rodzaju transakcji: Procedura OSS oraz parametru: Rozliczam podatek w OSS jest przenoszone na korektę z dokumentu korygowanego bez możliwości zmiany. Wyjątkiem jest korekta zbiorcza/ rabat, na którą rodzaj transakcji jest pobierany z karty kontrahenta. Na zbiorczej korekcie dla kontrahenta z rodzajem transakcji: Procedura OSS, domyślnie jest zaznaczony parametr: Rozliczam podatek w OSS. Współpraca z modułem Serwis – FS, WZ do Zlecenia Serwisowego Faktury Sprzedaży, Wydania Zewnętrzne wystawione do Zlecenia serwisowego – w zakresie procedury OSS, tworzone są na takich samych zasadach jak dokumenty wystawione w module Handel. Fiskalizacja Nie ma możliwości fiskalizacji Faktur Sprzedaży wystawionych w procedurze OSS. Faktura Sprzedaży do Paragonu Na Fakturę Sprzedaży utworzoną do Paragonu domyślnie jest przenoszony rodzaj transakcji z PA: Krajowy. Na takiej FS nie ma możliwości wyboru rodzaju transakcji: Procedura OSS. W przypadku ręcznego wyboru kontrahenta, który na karcie ma rodzaj transakcji: Procedura OSS, na FS zostanie ustawiony rodzaj transakcji: Wewnątrzunijny. RO, WZ do PA Podczas próby przekształcenia Rezerwacji Odbiorcy, Wydania Zewnętrznego wystawionych w procedurze OSS do Paragonu, wyświetla się komunikat: Nie można utworzyć paragonu do dokumentu o rodzaju transakcji procedura OSS. Przekształć dokument do faktury. Import/ eksport dokumentów w formacie XML Dla dokumentów eksportowanych i importowanych w formacie XML przenoszone jest ustawienie parametru: Rozliczam podatek w OSS oraz rodzaj transakcji: Procedura OSS. Podczas importu:
  • stawki VAT pozycji dokumentu, których nie ma w programie są dodawane do konfiguracji (menu Start/Konfiguracja/ Program/ Ogólne/ Stawki VAT),
  • dla zakładanych kartotek towarowych, stawka VAT z pliku XML jest uzupełniana na zakładce [Jednostki, EAN, VAT] pozycji cennika w sekcji dotyczącej procedury OSS. Na zakładce [Ogólne] jest uzupełniana polska podstawowa stawka VAT.
  Intrastat Dokumenty z procedurą OSS są uwzględniane w wyliczaniu deklaracji Intrastat. JPK_FA Faktury Zaliczkowe, Faktury Sprzedaży oraz korekty do Faktur wystawione w procedurze OSS są uwzględniane w pliku JPK_FA. JPK_MAG Wydania Zewnętrzne oraz korekty do WZ wystawione w procedurze OSS są uwzględniane w pliku JPK_MAG. JPK_V7 Faktury Sprzedaży wystawione w procedurze OSS nie są uwzględniane w pliku JPK_V7. Na takie dokumenty nie są przenoszone kody JPK_V7 z towarów i z karty kontrahenta, nie można również wskazać kodów JPK_V7 ręcznie. MPP, Odwrotne obciążenie Nie ma możliwości zastosowania Mechanizmu Podzielonej Płatności czy Odwrotnego Obciążenia dla transakcji wystawionych w procedurze OSS – transakcje te co do zasady stosowania wykluczają się. SENT Nie można utworzyć zgłoszenia SENT do Faktur Sprzedaży, Wydań Zewnętrznych o rodzaju transakcji Procedura OSS

4 Zastosowanie procedury OSS w rejestrach VAT

4.1 Procedura OSS na dokumentach w rejestrze VAT sprzedaży

Na dokumencie w rejestrze VAT sprzedaży dostępny jest rodzaj transakcji Procedura OSS. Może on zostać przeniesiony z karty kontrahenta lub wybrany bezpośrednio na dokumencie.
Uwaga
W przypadku wyboru na dokumencie w rejestrze VAT zakupu kontrahenta z domyślnym rodzajem transakcji Procedura OSS na dokumencie ustawiany jest rodzaj transakcji Nabycie wewnątrzunijne.
Po wyborze na dokumencie rodzaju transakcji Procedura OSS ukrywany jest parametr Rozliczać w VAT, pole Obow. podat., parametr Metoda kasowa oraz dane dla metody kasowej. Z dokumentu usuwane są kody JPK_V7 i na zakładce [JPK] użytkownik ma możliwość dodania atrybutów tylko w sekcji JPK_FA. Pojawia się natomiast zakładka [OSS], omówiona poniżej. Takie dokumenty nie są uwzględniane w pliku JPK_V7. Na dokumencie pozostaje natomiast możliwość zaznaczenia/odznaczenia parametru JPK_FA. W przypadku wyboru na dokumencie z rodzajem transakcji Procedura OSS kontrahenta i/lub kategorii z uzupełnionymi kodami JPK_V7 nie są one przenoszone na dokument. Po zmianie na dokumencie rodzaju transakcji na inny niż Procedura OSS kody JPK_V7 nie są automatycznie dodawane na dokument. Aby zostały przeniesione, należy dokonać modyfikacji dokumentu (np. dodać nową pozycję z taką kategorią). Do dokumentu z rodzajem transakcji Procedura OSS nie można wygenerować rozliczenia marży. Dokumenty z rodzajem transakcji Procedura OSS nie są wyświetlane na zakładce [Do VAT/JPK_V7] oraz na zakładce [Do deklaracji VAT-UE]. Dokumenty z rodzajem transakcji Procedura OSS przenoszone są za pomocą pracy rozproszonej oraz pliku VAT_R.txt. W przypadku importu takich dokumentów z pliku VAT_R.txt na listę kontrahentów dodawany jest podmiot z rodzajem transakcji Procedura OSS. W przypadku importu z pliku VAT_R.txt do rejestru VAT zakupu dokumentu dotyczącego kontrahenta z rodzajem transakcji Procedura OSS na dokumencie ustawiany jest rodzaj transakcji Nabycie wewnątrzunijne.

4.2 Zakładka OSS

Po wyborze rodzaju transakcji Procedura OSS na dokumencie w rejestrze VAT sprzedaży pojawia się dodatkowa zakładka [OSS], na której automatycznie zaznaczany jest parametr Rozliczam podatek w OSS, co oznacza, że dana transakcja zostanie uwzględniona na formularzu deklaracji VIU-DO Automatycznie ustawia się rok i kwartał, zgodnie z którym dokument zostanie zakwalifikowany na deklarację VIU-DO.  Kwartał ustawiany jest zgodnie z datą sprzedaży na dokumencie. Użytkownik ma możliwość odznaczenia tego parametru (również na dokumencie zaksięgowanym oraz na dokumencie z uzupełnioną Predekretacją). Odznaczenie parametru Rozliczam podatek w OSS powoduje ukrycie wszystkich danych na zakładce [OSS] za wyjątkiem pola Kraj odbiorcy, które to jest potrzebne do prawidłowego ustawienia stawki VAT na pozycjach dokumentu, zgodnej z krajem odbiorcy.

Formularz dokumentu w rejestrze VAT sprzedaży w PLN, zakładka OSS

Prefiks kraju odbiorcy domyślnie przenoszony jest z zakładki [Kontrahent]. Użytkownik ma możliwość jego zmiany. Zmiana prefiksu na zakładce [Kontrahent] powoduje zmianę prefiksu na zakładce [OSS]. Zmiana prefiksu na zakładce [OSS] nie powoduje zmiany prefiksu na zakładce [Kontrahent]. Nie ma możliwości zapisania dokumentu z zaznaczonym parametrem Rozliczam podatek w OSS bez uzupełnionego prefiksu kraju odbiorcy. Podczas próby zapisania takiego dokumentu pojawia się komunikat: Transakcja kwalifikowana do procedury OSS powinna mieć uzupełniony prefiks kraju. Po zaakceptowaniu komunikatu użytkownik jest przenoszony na zakładkę [OSS] z kursorem ustawionym w polu Kraj odbiorcy. Lista krajów na zakładce [OSS] jest analogiczna do listy krajów dostępnej na zakładce [Kontrahent]. W pierwszej kolejności na liście wyświetlane są kody krajów należących do Unii Europejskiej. W przypadku wyboru kraju pozaunijnego nie będzie możliwe dodanie pozycji na dokumencie, ponieważ nie ma zdefiniowanych stawek w Konfiguracji. Z tego względu prefiks kraju odbiorcy powinien być zawsze prefiksem kraju należącego do Unii Europejskiej. W polu Waluta podatku ustawiana jest waluta EUR, bez możliwości zmiany. W przypadku dokumentu dodanego w walucie innej niż EUR widoczna jest sekcja Kurs z ostatniego dnia kwartału, a gdy nieopublikowany z kolejnego dnia. Deklaracja VIU-DO zawiera wartości podatku w walucie EUR w przeliczeniu po kursie Europejskiego Banku Centralnego na koniec kwartału, a jeżeli kurs nie zostanie opublikowany to na kolejny dzień. Stąd na zakładce [OSS] la waluty dokumentu różnej od EUR istnieje możliwość wskazania odpowiedniego kursu. Na dokumencie w walucie PLN jako kurs domyślnie ustawiany jest Kurs EBC (Europejskiego Banku Centralnego) i pobierany jest z ostatniego dnia kwartału wskazanego na zakładce [OSS]. W przypadku braku notowania EBC (Europejskiego Banku Centralnego) na dokumencie ustawiany jest Kurs ręczny z notowaniem 1 EUR = 1,0000 PLN. Użytkownik ma możliwość zmiany na kurs Nieokreślony (również na dokumencie zaksięgowanym oraz na dokumencie z uzupełnioną Predekretacją). W przypadku dokumentu dodanego w walucie obcej innej niż EUR i PLN jako kurs domyślnie ustawiany jest Kurs ręczny z notowaniem 1 EUR = 1,0000 PLN, z możliwością zmiany na Nieokreślony (również na dokumencie zaksięgowanym oraz na dokumencie z uzupełnioną Predekretacją). Każda z pozycji dokumentu przeliczana jest po wskazanym kursie. W przypadku dokumentu dodanego w walucie innej niż EUR w polu Data kursu domyślnie ustawiany jest ostatni dzień kwartału do którego należy data sprzedaży.
Uwaga
Dokumenty w walucie różnej od EUR powinny być przeliczone po kursie na koniec kwartału, więc w przypadku, gdy są to dokumenty wystawione w trakcie kwartału, to kursu Europejskiego Banku Centralnego jeszcze z oczywistych przyczyn nie ma. Z tego względu na dokumencie ustawiany jest Kurs ręczny. Po zakończeniu kwartału użytkownik może skorzystać z operacji seryjnej Przelicz po kursie EBC lub dokonać przeliczenia dokumentów podczas dodawania deklaracji VIU-DO. Po przeliczeniu po kursie EBC jako typ kursu pozostaje Kurs ręczny z ustawionym odpowiednim notowaniem na ostatni dzień kwartału oraz wyliczonymi kwotami.

4.3 Stawki VAT na dokumencie w rejestrze VAT sprzedaży

Podczas dodawania pozycji na dokumencie z rodzajem transakcji Procedura OSS, stawki VAT są ograniczane do tych, które obowiązują w kraju unijnym wskazanym na zakładce [OSS] w polu Kraj odbiorcy. W przypadku braku stawki dla danego kraju unijnego, możliwe do wyboru są stawki obowiązujące w Polsce. Podczas próby dodawania pozycji na dokumencie z rodzajem transakcji Procedura OSS bez uzupełnionego prefiksu kraju na zakładce [OSS] lub z prefiksem kraju nienależącego do Unii Europejskiej pojawia się komunikat: Wskaż prawidłowy kraj unijny odbiorcy na zakładce OSS. Dodanie pozycji na dokumencie jest możliwe po wskazaniu na zakładce [OSS] prefiksu kraju należącego do Unii Europejskiej. Stawki pobierane są z Konfiguracji lub z formularza kategorii. Na dokumencie z rodzajem transakcji Procedura OSS, po wybraniu w pozycji dokumentu kategorii na formularzu której uzupełniono domyślną stawkę w sekcji Stawki VAT (procedura OSS), stawka ta jest ustawiana na pozycji dokumentu pod warunkiem, że obowiązuje ona w kraju wskazanym na zakładce [OSS]. Jeżeli na formularzu kategorii nie wskazano takiej stawki lub w pozycji dokumentu nie wybrano kategorii to ustawiana jest stawka podstawowa dla danego kraju pobierana z Konfiguracji. Na dokumencie z rodzajem transakcji innym niż Procedura OSS do pozycji może zostać przeniesiona stawka wskazana na formularzu kategorii w polu Stawka VAT. Po zmianie na dokumencie rodzaju transakcji na Procedura OSS, jeżeli dodano pozycję w stawce nieobowiązującej w kraju wskazanym na zakładce [OSS], podczas próby zapisania dokumentu pojawia się komunikat: Część stawek VAT na pozycjach dokumentu nie odpowiada stawkom kraju OSS. Czy chcesz zweryfikować stawki VAT? Wybierając Tak możesz zmienić stawki VAT, wybierając Nie zapiszesz dokument. Zaakceptowanie komunikatu powoduje przeniesienie na zakładkę [Ogólne] gdzie użytkownik ma możliwość weryfikacji stawki VAT. Wybór opcji Nie powoduje zapisanie dokumentu. Po zmianie na dokumencie rodzaju transakcji z Procedura OSS na inny, jeżeli na dokumencie dodano przynajmniej jedną pozycję w stawce VAT nieobowiązującej w Polsce, podczas próby zapisania dokumentu pojawia się komunikat: Na dokumencie wskazano stawki VAT różne od polskich. Czy chcesz zweryfikować stawki VAT? Wybierając Tak możesz zmienić stawki VAT, wybierając Nie zapiszesz dokument. Zaakceptowanie komunikatu powoduje przeniesienie na zakładkę [Ogólne] gdzie użytkownik ma możliwość zmiany stawki VAT. Wybór opcji Nie powoduje zapisanie dokumentu. Po zmianie prefiksu kraju na zakładce [OSS], jeżeli na dokumencie dodano przynajmniej jedną pozycję w stawce VAT nieobowiązującej w wybranym kraju, podczas próby zapisania dokumentu pojawia się komunikat: Część stawek VAT na pozycjach dokumentu nie odpowiada stawkom kraju OSS. Czy chcesz zweryfikować stawki VAT? Wybierając Tak możesz zmienić stawki VAT, wybierając Nie zapiszesz dokument. Zaakceptowanie komunikatu powoduje przeniesienie na zakładkę [Ogólne] gdzie użytkownik ma możliwość weryfikacji stawki VAT. Wybór opcji Nie powoduje zapisanie dokumentu.
Uwaga
Na dokumencie w rejestrze VAT zakupu dostępne są tylko stawki VAT obowiązujące w Polsce.

4.4 Przenoszenie Faktur Sprzedaży z modułu Handel

Podczas przenoszenia z modułu Handel Faktury Sprzedaży z rodzajem transakcji Procedura OSS przenoszone są wszystkie ustawienia z formularza Faktury na dokument w rejestrze VAT, gdzie podlegają edycji. Podczas przenoszenia z modułu Handel korekty zbiorczej na dokument w rejestrze VAT sprzedaży przenoszone są te same stawki co na pozycjach faktury zbiorczej, nawet jeśli dotyczą kraju innego niż ten wskazany w polu Kraj odbiorcy.

4.5 Lista dokumentów w rejestrze VAT sprzedaży

Kolumny dodatkowe Na liście dokumentów w rejestrze VAT sprzedaży dostępne są domyślnie ukryte kolumny:
  • Deklaracja OSS – jeżeli na dokumencie zaznaczono parametr Rozliczam podatek w OSS to w kolumnie wyświetlany jest kwartał i rok deklaracji, do którego zakwalifikowany jest dokument. W przypadku odznaczenia parametru Rozliczam podatek w OSS lub w przypadku gdy na dokumencie wybrano rodzaj transakcji inny niż Procedura OSS wyświetlana jest opcja Nie dotyczy.
  • Kraj OSS – w kolumnie wyświetlany jest prefiks widoczny na dokumencie w polu Kraj odbiorcy. Jeżeli nie został on uzupełniony to kolumna pozostaje pusta.
  W kolumnie Rodzaj transakcji uwzględniana jest opcja Procedura OSS.
Uwaga
W celu wyfiltrowania dokumentów dotyczących procedury OSS użytkownik może dodać na listę dokumentów w rejestrze VAT domyślnie ukrytą kolumnę Rodzaj transakcji i w filtrze nagłówka listy wskazać opcję Zawiera i wpisać Procedura OSS. Dodatkowo po dodaniu na listę kolumny Deklaracja OSS użytkownik ma możliwość wyfiltrowania dokumentów za dany kwartał dla konkretnej deklaracji. W celu wyfiltrowania dokumentów, które nie dotyczą procedury OSS, użytkownik może w kolumnie Rodzaj transakcji w filtrze nagłówka wskazać opcję Nie zawiera i wpisać Procedura OSS.
W przypadku dokumentów z rodzajem transakcji Procedura OSS w kolumnie VAT-7 oraz VAT-UE widnieje opcja Nie. Operacje seryjne Na liście dokumentów w rejestrze VAT sprzedaży dostępna jest grupa operacji seryjnych OSS, zawierająca operacje seryjne:
  • Przelicz po kursie EBC – funkcja umożliwia seryjne przeliczenie dokumentów po kursie Europejskiego Banku Centralnego dla dokumentów zakwalifikowanych do deklaracji VIU-DO w danym kwartale.

Parametry seryjnego przeliczenia dokumentów po kursie EBC

Po wybraniu kwartału i roku oraz naciśnięciu przycisku pioruna następuje przeliczenie dokumentów z rodzajem transakcji Procedura OSS, w walucie innej niż EUR i Kursem ręcznym z notowaniem 1=1, dla których w polu Rozliczam podatek w OSS wskazano wybrany w oknie operacji seryjnej rok i kwartał. Użytkownik nie musi zaznaczać na liście żadnych dokumentów. Dokumenty przeliczane są po kursie EBC z ostatniego dnia kwartału do którego należy data sprzedaży.
Wskazówka
Przykład: Data sprzedaży: 01.03.2022. Rozliczam podatek w OSS: 2 kwartał 2022. Dokument zostanie przeliczony po kursie Europejskiego Banku Centralnego opublikowanym na 31.03.2022.
Po przeliczeniu po kursie EBC na dokumencie w walucie innej niż EUR na zakładce [OSS] jako typ kursu pozostaje Kurs ręczny z ustawionym odpowiednim notowaniem oraz wyliczonymi kwotami. Dokumenty z Kursem ręcznym z notowaniem innym niż 1=1 oraz dokumenty z kursem Nieokreślony nie są przeliczane po kursie EBC. Jeżeli na ostatni dzień danego kwartału nie opublikowano jeszcze kursu EBC dla waluty EUR w oknie operacji seryjnej pojawia się ostrzeżenie: Na dzień [data] nie opublikowano kursu waluty. Jeżeli na ostatni dzień danego kwartału nie opublikowano jeszcze kursu EBC dla waluty EUR i w tym kwartale dodano dokumenty w walucie innej niż EUR to po naciśnięciu przycisku pioruna pojawia się komunikat: Nie można przeliczyć dokumentów w walutach innych niż EUR, ponieważ nie ma opublikowanego notowania kursu Europejskiego Banku Centralnego.
  • Zmień datę deklaracji VIU-DO – funkcja umożliwia seryjną zmianę daty deklaracji VIU-DO dla dokumentów z rodzajem transakcji Procedura OSS.

Parametry seryjnej zmiany daty deklaracji

Po wyborze opcji Zmień datę deklaracji VIU-DO pojawia się okno z domyślnie zaznaczonym parametrem Rozliczać w VIU-DO wraz z możliwością wskazania kwartału i roku jaki ma zostać ustawiony na podświetlonym/ zaznaczonych dokumentach. Użytkownik ma również możliwość odznaczenia parametru Rozliczam podatek w OSS na podświetlonym/ zaznaczonych dokumentach. Aby tego dokonać należy w oknie seryjnej zmiany daty deklaracji VIU-DO odznaczyć parametr Rozliczać w VIU_DO. Odznaczenie parametru powoduje, że wskazane dokumenty nie zostaną uwzględnione w deklaracji VIU-DO. Operacja seryjna Zmień rodzaj transakcji dostępna na liście dokumentów w rejestrze VAT sprzedaży umożliwia wybór rodzaju transakcji Procedura OSS. W przypadku wyboru tego rodzaju transakcji konieczne jest uzupełnienie prefiksu NIP. Podczas seryjnej zmiany rodzaju transakcji na Procedura OSS pojawia się komunikat: Zmieniając rodzaj transakcji na „Procedura OSS” zweryfikuj stawki VAT na dokumencie. Użytkownik powinien dokonać weryfikacji stawek na zmienionych dokumentach, ponieważ jeżeli nastąpi zmiana kraju odbiorcy np. z Austrii na Bułgarię to stawki VAT na dokumencie nie zostaną automatycznie zmienione na te obowiązujące w Bułgarii. Stąd konieczności ich weryfikacji przez użytkownika. Jeżeli na dokumencie jako rodzaj transakcji wybrano Procedura OSS to po wyborze operacji seryjnej Zmień kategorię i zaznaczeniu parametrów Zmień kategorię pozycji oraz Aktualizuj stawkę VAT i Uwz. w proporcji na dokument przenoszona jest stawka wskazana na formularzu kategorii w sekcji Stawki VAT (procedura OSS) pod warunkiem, że obowiązuje ona w kraju wskazanym na zakładce [OSS]. Zmianie ulega jedynie stawka VAT, wartości na pozycji się nie aktualizują. Jeżeli na formularzu kategorii nie wskazano takiej stawki lub wybrano stawkę nieobowiązującą w kraju wskazanym na zakładce [OSS] to stawka VAT na dokumencie nie jest zmieniana. Jeżeli na dokumencie jako rodzaj transakcji wybrano Procedura OSS to po wyborze operacji seryjnej: Dodaj kody JPK_V7, Aktualizuj kody JPK_V7 z kategorii, Dodaj atrybut JPK pojawia się komunikat uniemożliwiający wykonanie tej operacji. Ze względu na to, że podczas importu dokumentów z pliku możliwe jest dodanie kodu JPK_V7 na dokumencie z rodzajem transakcji Procedura OSS, istnieje możliwość skorzystania z operacji seryjnej Usuń kody JPK_V7. Wydruk Zestawienie transakcji do VIU-DO W rejestrze VAT sprzedaży z poziomu zakładki [Rejestry VAT] dostępny jest wydruk Klasyfikacja sprzedaży/ Zestawienie transakcji do VIU-DO. W przypadku dokumentów w walucie innej niż EUR prezentowane na wydruku kwoty pobierane są z dokumentu z zakładki [OSS]. Przed wykonaniem wydruku dokumenty powinny zostać przeliczone przez użytkownika po kursie EBC na koniec kwartału. Można do tego wykorzystać dostępną w rejestrze VAT sprzedaży operację seryjną Przelicz po kursie EBC. Przed wykonaniem wydruku pojawia się okno z możliwością wskazania kwartału i roku oraz z parametrem pozwalającym na określenie, czy drukować listę dokumentów czy tylko podsumowania Wydruk składa się z dwóch sekcji, odpowiadających formularzowi deklaracji VIU-DO:
  • C.2. Świadczenie usług z państwa członkowskiego identyfikacji oraz stałego miejsca prowadzenia działalności gospodarczej poza Unią Europejską oraz dostawy towarów wysyłanych lub transportowanych z państwa członkowskiego identyfikacji – do sekcji kwalifikowane są dokumenty z datą sprzedaży należącą do kwartału deklaracji VIU-DO,
  • C.5. Korekty kwot podatku VAT wykazanych w deklaracjach za poprzednie okresy wynikające z korekt dostaw towarów lub świadczonych usług – do sekcji kwalifikowane są dokumenty z datą sprzedaży należącą do innego kwartału niż kwartał deklaracji VIU-DO. Dokumenty są prezentowane na wydruku z podziałem na poszczególne kraje, rodzaj (Towary lub Usługi) oraz w ramach rodzaju z podziałem na poszczególne stawki VAT. Wydruk zawiera osobne podsumowanie dla każdej stawki VAT, rodzaju i kraju.

5 Deklaracja VIU-DO

W programie Comarch ERP Optima dostępny jest formularz Deklaracji dla rozliczania podatku VAT w zakresie procedury unijnej wraz z jej wydrukiem oraz wysyłką do systemu e Deklaracje. Deklaracja VIU-DO składana jest za okresy kwartalne w terminie do końca miesiąca następującego po każdym kolejnym kwartale. Termin nie ulega przesunięciu z uwagi na dni wolne. Nie można złożyć deklaracji przed upływem kwartału. Jeżeli deklaracja VIU-DO za dany kwartał została przeliczona i wysłana do systemu e-Deklaracje, a w tym kwartale pojawiły się kolejne dokumenty to zostaną one uwzględnione w deklaracji za kolejny kwartał. Do sporządzenia deklaracji VIU-DO konieczne jest pobranie modułu Księga Podatkowa lub Księga Handlowa lub Księga Handlowa Plus.

5.1 Konfiguracja

Deklaracja VIU-DO jest dostępna w menu Rejestry VAT/ Inne/ Deklaracje VIU-DO jeżeli Konfiguracji Firmy/ Dane firmy/ Deklaracje w sekcji Podatnik składa deklaracje/odprowadza zaliczki z tytułu zaznaczono opcję VIU DO. Parametr jest domyślnie zaznaczony. Deklaracja VIU-DO składana jest do Drugiego Urzędu Skarbowego Warszawa Śródmieście, w związku z tym w polu US (VIU-DO) domyślnie wskazany jest ten Urząd. Pole podlega edycji. W Konfiguracji dostępna jest również sekcja Numer rachunku do deklaracji VIU-DO wraz z domyślnie uzupełnionym numerem rachunku: 84 1010 1010 0165 9315 1697 8000. Jest to konto bankowe dla wpłat podatku VAT do Urzędu Skarbowego dla płatności dokonywanych z Polski (rachunek prowadzony w walucie EUR). Pole podlega edycji. Numer z tej sekcji pojawia się na płatności do deklaracji VIU-DO.

5.2 Lista deklaracji VIU-DO

Po przejściu do menu Rejestry VAT/ Inne/ Deklaracje VIU-DO dostępna jest Lista deklaracji VIU-DO zawierająca kolumny:
  •  Kwartał – kwartał, za który składana jest deklaracja.
  •  Rok – rok, za który składana jest deklaracja.
  •  Wersja – wersja formularza deklaracji, zgodnie z którą wyliczona została deklaracja.
  •  Data obliczenia – data obliczenia deklaracji.
  •  Kwota – kwota należnego podatku VAT do wpłaty. Kwota prezentowana jest w walucie EUR.
  •  Status – status określający stan deklaracji (obliczona lub zamknięta).
  •  e-Deklaracje – informacje dotyczące statusu e-Deklaracji.
  •  Data wysłania – data wysłania deklaracji do systemu e-Deklaracje.
Istnieje możliwość wyświetlania listy deklaracji tylko za konkretny rok przez zaznaczenie parametru Rok i wybranie konkretnego roku. Wysyłka i odbiór UPO dostępne są z listy deklaracji VIU-D0, a nie jak w przypadku innych deklaracji z samego formularza deklaracji. Przycisk Wyślij umożliwia wysłanie deklaracji VIU-DO do systemu e-Deklaracje za pomocą podpisu kwalifikowanego. Przycisk Odbierz UPO służy do odebrania Urzędowego Poświadczenia Odbioru. Przycisk Zmień umożliwia podgląd utworzonej wcześniej Deklaracji VIU-DO. Po rozwinięciu dodatkowego menu (czarna strzałka obok przycisku ) dostępna jest opcja Podgląd UPO umożliwiająca podgląd Urzędowego Poświadczenia Odbioru.
Uwaga
Uwaga: Podczas edycji deklaracji VIU-DO za pomocą przycisku dane na deklaracji nie są przeliczane na nowo. Jeżeli w rejestrze VAT sprzedaży nastąpi zmiana związana z procedurą OSS to należy usunąć dodaną wcześniej deklarację VIU-DO i dodać ją na nowo.
Deklaracja VIU-DO jest zawsze widoczna na liście w kolorze czarnym. Przycisk  umożliwia usunięcie deklaracji o statusie obliczona. Wysyłka deklaracji do systemu e-Deklaracje powoduje zmianę jej statusu na zamknięta i blokuje możliwość jej usunięcia. W przypadku gdy podczas odbioru UPO w kolumnie e Deklaracje pojawi się Błąd przetwarzania to deklaracja zmienia ponownie status na obliczona i ponownie podlega usunięciu. Odbiór UPO pozostawia status zatwierdzona. Na liście deklaracji VIU-DO w menu kontekstowym pod prawym przyciskiem myszy dostępna jest opcja Odblokuj deklarację, która umożliwia zmianę statusu deklaracji do której odebrano UPO na obliczona. W takim przypadku z Preliminarza płatności usuwana jest płatność utworzona do deklaracji. Z listy deklaracji VIU-DO dostępny jest wydruk Urzędowego Poświadczenia Odbioru (w tym czarno-biały).

5.3 Dodanie deklaracji VIU-DO

Po naciśnięciu przycisku pojawia się okno z możliwością wskazania kwartału i roku, za który ma zostać dodana deklaracja.

 Dodawanie deklaracji VIU-DO

Po wybraniu kwartału i roku i naciśnięciu przycisku Utwórz deklarację następuje przeliczenie dokumentów dodanych do rejestru VAT sprzedaży z rodzajem transakcji Procedura OSS, w walucie innej niż EUR i Kursem ręcznym z notowaniem 1=1, dla których w polu Rozliczam podatek w OSS wskazano wybrany w oknie dodawania VIU-DO rok i kwartał. Poszczególne dokumenty przeliczane są po kursie Europejskiego Banku Centralnego z ostatniego dnia kwartału do którego należy data sprzedaży na dokumencie. Po przeliczeniu dokumentu po kursie EBC na dokumencie w walucie innej niż EUR na zakładce [OSS] jako typ kursu pozostaje Kurs ręczny z ustawionym odpowiednim notowaniem oraz wyliczonymi kwotami. Dokumenty, które zostały wcześniej przeliczone po kursie EBC (z notowaniem różnym od 1=1) nie są ponownie przeliczane po kursie EBC podczas dodawania deklaracji VIU-DO.
Uwaga
Uwaga: Dokumenty z rodzajem transakcji Procedura OSS, w walucie innej niż EUR i Kursem ręcznym z notowaniem 1=1 mogą również zostać przeliczone po kursie EBC na koniec kwartału za pomocą dostępnej w rejestrze VAT sprzedaży operacji seryjnej Przelicz po kursie EBC. Szczegóły funkcjonalności opisane zostały w punkcie nr 4.5.
Jeżeli na ostatni dzień danego kwartału nie opublikowano kursu EBC, a w danym kwartale są dokumenty w walucie innej niż EUR, które kwalifikują się na deklarację VIU-DO lub w przypadku braku połączenia z Internetem po naciśnięciu przycisku Utwórz deklarację pojawia się komunikat uniemożliwiający dodanie deklaracji: Nie można naliczyć deklaracji. Nie można przeliczyć dokumentów w walutach innych niż EUR, ponieważ nie ma opublikowanego notowania kursu Europejskiego Banku Centralnego. Podczas próby dodania deklaracji VIU-DO za okres wcześniejszy niż 3 kwartał 2021 r. pojawia się komunikat: Błąd wyliczania deklaracji. Formularz deklaracji obowiązuje za okres od 01.07.2021. Istnieje możliwość dodania tylko jednej deklaracji VIU-DO za dany kwartał. Jeżeli jest potrzeba korekty już wysłanej deklaracji to należy to zrobić w deklaracji za kolejny kwartał. W momencie przeliczania/ edycji deklaracji VIU-DO w aplikacji Comarch Deklaracje Podatkowe, na liście deklaracji VIU-DO w programie Comarch ERP Optima pojawia się okno z informacją: Trwa edycja deklaracji VIU-DO. Zamknij formularz deklaracji aby wrócić na listę.

5.4 Formularz deklaracji VIU-DO

Formularz deklaracji VIU-DO otwierany jest w aplikacji Comarch Deklaracje Podatkowe. Z programu Comarch ERP Optima przenoszone są następujące dane:
  • NIP podatnika – nie podlega edycji na formularzu deklaracji.
  •  Rok i kwartał, za jaki liczona jest deklaracja – nie podlega edycji na formularzu deklaracji.
  • Urząd Skarbowy, do którego adresowana jest deklaracja – nie podlega edycji na formularzu deklaracji.
  • Rodzaj podatnika (osoba fizyczna lub podmiot niebędący osobą fizyczną) – podlega edycji na formularzu deklaracji.
  • Pełna nazwa firmy lub nazwisko i imię dla osoby fizycznej – podlega edycji na formularzu deklaracji.
  • Dane z dokumentów wprowadzonych do rejestru VAT sprzedaży: kraj, stawki VAT, oznaczenie stawki (podstawowa lub obniżona), rodzaj dostaw (dostawa towarów lub świadczenie usług), podstawa opodatkowania wg danej stawki VAT oraz kwota podatku wg danej stawki VAT – podlegają edycji na formularzu deklaracji.
Do sekcji C.2. Świadczenie usług z państwa członkowskiego identyfikacji oraz stałego miejsca prowadzenia działalności gospodarczej poza Unią Europejską oraz dostawy towarów wysyłanych lub transportowanych z państwa członkowskiego identyfikacji kwalifikowane są dokumenty z rodzajem transakcji Procedura OSS z datą sprzedaży należącą do kwartału deklaracji VIU-DO. Dokument z rodzajem Usługi na deklaracji VIU-DO widoczny jest jako Świadczenie usług. Dokument z rodzajem Towary lub Środki trwałe na deklaracji VIU-DO widoczny jest jako Dostawa towarów. Kwoty przenoszone z programu Comarch ERP Optima na formularz deklaracji VIU-DO są sumą poszczególnych pozycji na dokumencie. Z kolei podstawa opodatkowania uzupełniona ręcznie na formularzu deklaracji VIU-DO jest przeliczana po odpowiedniej stawce. Z tego względu mogą pojawić się różnice w kwocie podatku VAT wynikające z zaokrągleń. Do sekcji C.5. Korekty kwot podatku VAT wykazanych w deklaracjach za poprzednie okresy wynikające z korekt dostaw towarów lub świadczonych usług kwalifikowane są dokumenty z rodzajem transakcji Procedura OSS z datą sprzedaży należącą do innego kwartału niż kwartał deklaracji VIU-DO. Do deklaracji VIU-DO nie są przenoszone pozycje w stawce ZW, NP oraz 0%. Na formularzu deklaracji dla każdego kraju w oddzielnym wierszu wykazana jest każda stawka z oznaczeniem Podstawowa/ Obniżona oraz kwota podatku VAT w danej stawce. Jeżeli na dokumencie w rejestrze VAT sprzedaży dodano pozycję w stawce VAT nieobowiązującej w wybranym na dokumencie kraju to taki dokument trafia na deklarację VIU-DU z Rodzajem stawki VAT jako Podstawowa. Dane przeniesione z dokumentów z programu Comarch ERP Optima podlegają edycji/ usunięciu na formularzu deklaracji VIU-DO. Po zmianie w pozycji stawki VAT, kwota VAT wyliczana jest na nowo. Podczas edycji pozycji w sekcji C.2 następuje weryfikacja, czy dla danego kraju nie dodano już pozycji z takim samym rodzajem dostaw i taką samą stawką VAT. Jeżeli taka pozycja została już dodana to pojawia się informacja uniemożliwiająca edycję pozycji: Taki element został już wybrany. Użytkownik ma również możliwość dodawania/ usuwania własnych pozycji na deklaracji VIU-DO. Za pomocą przycisku Dodaj państwo członkowskiego konsumpcji istnieje możliwość dodania nowego kraju ze zdefiniowanej listy krajów. Za pomocą przycisku Dodaj wiersz/ Usuń wiersz istnieje możliwość dodania/ usunięcia pozycji dotyczącej danego rodzaju dostaw i stawki VAT. W sekcji C.2 oraz C.3 istnieje możliwość dodania pozycji dla kraju, którego jeszcze nie ma na liście lub takiego który już jest, ale z inną stawką VAT lub z innym rodzajem dostaw. Nie ma możliwości dodania takiej samej pozycji, która już istnieje. Podczas próby dodania takiej pozycji pojawia się informacja: Taki element został już wybrany. Użytkownik powinien w takim przypadku dokonać modyfikacji już istniejącej pozycji. W sekcji C.2 i C.3 nie jest również możliwe dodanie pozycji z kwotą ujemną Za pomocą przycisku Usuń sekcję istnieje możliwość usunięcia wszystkich pozycji związanych z danym krajem w danej sekcji. Na formularzu deklaracji VIU-DO nie ma mechanizmu weryfikującego, czy stawka VAT uzupełniona w pozycji odpowiada stawkom danego kraju. W sekcji C.5 następuje walidacja, czy wskazano wcześniejszy kwartał niż ten, za który składana jest deklaracja VIU-DO. Kwoty w sekcji C.6 oraz kwota w sekcji C.7 w poz. 18 Całkowita kwota należnego podatku VAT do wpłaty są wyliczane automatycznie i podlegają modyfikacji. Kwota w poz. 18 jest wyliczana jako suma kwot z sekcji C.6 z pominięciem kwot ujemnych. Wszystkie kwoty na formularzu deklaracji VIU-DO wyświetlane są w walucie EUR. Płatność do deklaracji VIU-DO tworzona jest na kwotę z poz. 18 Całkowita kwota należnego podatku VAT w walucie EUR w momencie odbioru UPO. Kwota w PLN na płatności przeliczana jest po kursie EBC z dnia odbioru UPO. Termin płatności ustawiany jest na ostatni dzień miesiąca, a gdy przypada na dzień wolny to jest przesuwany na kolejny dzień roboczy. Istnieje możliwość zmiany kursu na płatności utworzonej do deklaracji VIU-DO. Jeżeli na dzień odbioru UPO nie opublikowano kursu EBC to na płatności ustawiany jest Kurs ręczny z notowaniem 1=1. Kurs ten podlega edycji. Jeżeli na deklaracji nie uzupełniono wszystkich wymaganych pól to podczas próby zapisania formularza wyświetlany jest komunikat: Niektóre pola nie zostały uzupełnione. Popraw błędy na formularzu. Wydruk deklaracji VIU-DO jest dostępny z poziomu otwartego formularza deklaracji pod przyciskiem . Podgląd wydruku deklaracji VIU-DO jest dostępny z poziomu otwartego formularza deklaracji pod przyciskiem .
Uwaga
Uwaga: Z poziomu formularza deklaracji VIU-DO nie ma możliwości ponownego jej przeliczenia. Jeżeli w rejestrze VAT sprzedaży nastąpi zmiana i deklaracja VIU-DO za ten kwartał nie została jeszcze wysłana do systemu e Deklaracje to należy ją usunąć i dodać ponownie.

5.5 Kwalifikowanie dokumentów do sekcji dotyczącej korekt

Jeżeli na dokumencie w rejestrze VAT sprzedaży z rodzajem transakcji Procedura OSS data sprzedaży należy do poprzedniego kwartału i za ten okres deklaracja VIU-DO została naliczona i wysłana do systemu e-Deklaracje to w polu Rozliczam podatek w OSS domyślnie ustawia się bieżący kwartał. Jeżeli data sprzedaży dokumentu należy do kwartału wcześniejszego niż poprzedni to w polu Rozliczam podatek w OSS domyślnie ustawia się bieżący kwartał. W przypadku dokumentu dodanego w walucie innej niż EUR w polu Data kursu domyślnie ustawiany jest ostatni dzień kwartału do którego należy data sprzedaży.

5.6 Księgowanie deklaracji VIU-DO

Jeżeli pobrano moduł Księga Handlowa lub Księga Handlowa Plus oraz jako rodzaj księgowości wskazano Księgowość kontową to Użytkownik ma możliwość zaksięgowania kwot z deklaracji VIU-DO z poziomu Rejestry VAT/ Inne/ Deklaracje VIU-DO. Deklaracja podlega księgowaniu po odebraniu poprawnego UPO. W schematach księgowych o typie Deklaracje w polu Kwota dostępne jest makro @VIUDODoZaplaty, które umożliwia księgowanie kwoty należnego podatku VAT do wpłaty. Podczas księgowania kwoty podatku, która jest zawsze wyrażona w EUR, następuje jej przeliczenie po średnim kursie NBP z dnia odebrania UPO. W przypadku braku notowania na ten dzień, księgowanie następuje według Kursu ręcznego z notowaniem 1=1. Księgowane kwoty w walucie EUR i po przeliczeniu na PLN są zgodne z kwotami widocznymi na płatności utworzonej do deklaracji VIU-DO. Użytkownik może zmienić kurs na płatności i zaksięgować według innego niż proponowany, wtedy zmieniana jest wartość w przeliczeniu na PLN, kwota w EUR pozostaje bez zmian. W schematach księgowych o typie Deklaracje w pozycji schematu dostępny jest parametr Księgowanie walutowe, umożliwiający księgowanie deklaracji w walucie obcej. Makro @Dokument dostępne w polu Opis (w nagłówku schematu oraz w elemencie schematu) w przypadku księgowania deklaracji VIU-DO generuje opis: DEK/Miesiąc/Rok/VIUDO. Deklaracja VIU-DO jest księgowana z datą ostatniego dnia miesiąca po kwartale, za który została złożona, za wyjątkiem wskazania jako daty księgowania opcji Data bieżąca. Z poziomu listy deklaracji VIU-DO istnieje możliwość dodawania predekretacji, pod przyciskiem Predekretacja lub za pomocą skrótu klawiszowego <Ctrl>+<F8>. Na liście deklaracji VIU-DO w menu kontekstowym pod prawym przyciskiem myszy dostępna jest opcja Usuń zapisy księgowe.  

Handel

OPT048 - Współpraca z urządzeniami zewnętrznymi w Comarch ERP Optima

Data aktualizacji: 04-08-2023

Wprowadzenie

Celem biuletynu jest przedstawienie urządzeń zewnętrznych, z którymi współpracuje program Comarch ERP Optima. W aktualnej wersji możliwa jest współpraca z następującymi urządzeniami zewnętrznymi:

Współpraca z drukarkami fiskalnymi

W aktualnej wersji program Comarch ERP Optima współpracuje z następującymi drukarkami fiskalnymi:
  • POSNET (oparte o protokół DF-3001, Thermal, Thermal HS i FV, HD, HD EJ, XL2 OnLine, Temo, XL2 Online)
  • ELZAB (Omega, Mera, Mera OnLine, ZETA),
  • INNOVA (Profit, Market, DF-1),
  • NOVITUS (Vivo, Vento, Quarto, Delio Prime (E) , Deon(E), Deon OnLine, Bono (E), Bono OnLine, HD Online),
  • TORELL (Duo Pro, Andros),
  • EMAR (Printo, Tempo 3),
  • Epson TM-T801FV.

W przypadku sterowników Elzab, Elzab Online, Novitus od 2.0, Posnet Thermal HS i FV możliwa jest komunikacja po protokole TCP/IP. W zależności od wyboru sterownika drukarki program podpowie domyślną wartość dla portu TCP/IP: Elzab i Elzab Online – 8000, Novitus od 2.0 – 6001, Posnet Thermal HS i FV – 6666.

W przypadku komunikacji po porcie COM niektóre drukarki wymagają ustawienia odpowiedniego sterowania przepływem danych. Użytkownik może wybrać w programie Comarch ERP Optima opcje:
  • ustawienia systemowe (program nie ustawia sterowania przepływem, brane są ustawienia systemu)
  • RTS (do sterowania przepływem jest wykorzystywana w porcie para linii RTS/CTS)
  • Xon / Xoff (sterowanie przepływem odbywa się przez wysłanie znaczników XOn oraz XOff)
  • RTS i Xon / Xoff (wykorzystuje obydwie metody sterowania przepływem)
  • brak (nie jest wykorzystywana żadna metoda kontroli przepływu danych)
Drukarka Posnet Temo podłączona bezpośrednio przez USB do poprawnej komunikacji musi mieć ustawione sterowanie przepływem: RTS. Przy pracy przez port COM parametr ten może być dowolny można ustawić ustawienia systemowe.
Uwaga
Drukarki fiskalne nie są przystosowane do fiskalizacji z wielu stanowisk jednocześnie. W celu zapewnienia poprawnej fiskalizacji należy unikać równoczesnego drukowania z kilku stanowisk.
Uwaga
W przypadku wydruku faktury fiskalnej na drukarce Posnet Temo, długość nazwy i adresu kontrahenta nie mogą przekraczać 40 znaków (zgodnie z dokumentacją drukarki). Jeżeli nastąpi przekroczenie tej wartości, pozycje te nie będą drukowane na fakturze.
W nowych drukarkach Posnet Thermal i Novitus Delio w konfiguracji drukarki można ustawić sterowanie przepływem, w Comarch ERP Optima musi być wybrana taka sama opcje (drukarki te mają domyślne ustawienie "brak"). Drukarka Epson w przypadku, gdy w Comarch ERP Optima dodany zostanie Paragon z towarami i kaucjami, ale nie dodano płatności na kaucje, to nie jest wysyłana żadna forma płatności do drukarki. Na innych drukarkach drukują się towary, kaucje i kwota paragonu. W drukarce Epson w takim przypadku drukuje się domyślna forma płatności gotówka. Również jeśli zostanie dodany Paragon z towarami i kaucjami i dodano płatności na kaucje, ale w ustawieniach drukarki jest zaznaczone nie drukuj form płatności, to wtedy zostanie wydrukowana domyślna forma płatności gotówka.

Ustawienia portów COM

ParametryPosnetElzabInnovaNovitusTORELLEMAR
Szybkość96009600 / 192009600960096009600
Parzystośćbrak (none)parzysta (even)brak (none)brak (none)brak (none)brak (none)
Liczba bitów888888
Bit stopu111111
Sterowanie przepływembrakbrak, xon/xoff, *brakbrakbrakbrak
Uwaga
W przypadku drukarek Elzab starszego typu należy sterowanie przepływem ustawić na: sprzętowe.

Drukarki w usługach terminalowych

Więcej informacji o konfiguracji połączenia drukarek fiskalnych w usługach terminalowych znajdą Państwo w biuletynie technicznym: „OPT060 - Comarch ERP Optima w środowisku terminalowym”.

Najczęściej pojawiające się problemy

Przy próbie wydruku pojawia się komunikat: „Nie zdefiniowano stawki VAT dla zw.”. Taki komunikat może pojawić się dla każdej stawki VAT niezdefiniowanej w konfiguracji programu Remedium
  • Wydrukować raport dobowy.
  • W Konfiguracja programu/ Ogólne/ Symbole stawek VAT należy dla stawki ZW ustawić oznaczenie takie, jakie jest dla niej przypisane na raporcie dobowym.
Przy próbie wydruku pojawia się komunikat: „Błędna interpretacja stawki podatkowej”. Remedium
  • Zmienić nazwę tego towaru (dodając np. kropkę na końcu). Towar kiedyś został sprzedany w innej stawce podatkowej, drukarka fiskalna to pamięta i nie pozwala wysłać takiego towaru z nową stawką.
  • Jeżeli to nie pomoże to może być problem z błędnym przypisaniem stawki. Należy wtedy wydrukować raport dobowy, potem w programie Comarch ERP OptimaKonfiguracja programu/ Ogólne/ Symbole stawek VAT dla odpowiedniej stawki przypisać oznaczenie takie, jakie jest dla niej na raporcie dobowym.
Przy próbie wydruku pojawia się komunikat: „Wydruk niemożliwy. Wybrana drukarka nie jest dostępna. W buforze są znaki do druku. Remedium
  • Z menu Narzędzia wykonać raport dobowy. Spróbować czy teraz paragony się fiskalizują.
  • Zmienić nazwę drukowanego towaru. Towar mógł zostać wysłany wcześniej na drukarkę z inną stawką podatkową.
  • Wyłączyć i włączyć drukarkę ponownie, aby towary dodrukowały się na paragon.
Przy próbie wydruku pojawia się komunikat: „Wydruk niemożliwy. Wybrana drukarka nie jest dostępna. Błąd komunikacji z drukarką”. Remedium
  • Należy sprawdzić w systemie Windows w menedżerze urządzeń ustawienia portu COM.
  • W programie Comarch ERP Optima wejść do Konfiguracji programu/ Ogólne/ Drukarki fiskalne i wybrać odpowiedni sterownik, port COM a następnie zapisać ustawienia dyskietką. Potem ikoną drukarki wykonać test połączenia z drukarką.
W usługach Terminalowych. Przy próbie wydruku pojawia się komunikat: „ODBC Serwer Driver. Serwer SQL nie istnieje lub odmówiono do niego dostępu Błąd sprawdzania licencji” lub „ODBC Server Driver does not exist for access denied for Microsoft OLE ODBC Driver”. Remedium. W momencie uruchomienia Comarch ERP Optima w okienku Rejestracja w programie należy kliknąć na ikonę Pokaż szczegóły i w polu serwer klucza wpisać nazwę serwera SQL do którego wpięty jest klucz HASP, a następnie zapisać wprowadzony wpis ikoną dyskietki.

Dodatkowe informacje

Uwaga
Drukarki w wersjach aptecznych nie są obsługiwane.
Uwaga
Drukarka Torell Andros w numerze paragonu nie drukuje kolejnych znaków „/”. Podczas fiskalizacji za pomocą driverów Comarch ERP Optima nie ma możliwości ingerowania w obsługę wyświetlacza.
Uwaga
W przypadku drukarek Posnet Temo USB, aby była możliwość komunikacji przez USB należy w menu drukarki włączyć obsługę USB. Domyślnie jest wyłączona. Następnie należy wykonać restart drukarki.
Uwaga
Jeżeli w nazwie towaru drukowanej na paragonie występują znaki specjalne, to w niektórych przypadkach może wystąpić problem z wydrukiem na drukarce fiskalnej. W celu uzyskania informacji na temat znaków niedozwolonych przez drukarkę, należy zapoznać się z dokumentacją konkretnego modelu drukarki lub skontaktować się z serwisem technicznym producenta drukarki.
Uwaga
Jednostki miary na paragonie. Comarch ERP Optima obsługuje tylko literowe jednostki miary (maksymalnie 5 liter), gdyż niektóre drukarki fiskalne nie akceptują cyfr w jednostkach miary. W drukarkach Emar Printo 57, Innova Market/Profit, Torell Duo Pro - przyjmowana jest tylko ilość a jednostka miary jest ignorowana. Jednostka miary jest drukowana w drukarkach: Elzab, Novitus, Posnet (z wyłączeniem wersji 1.01, 1.02).

Współpraca z kasami fiskalnymi

System Comarch ERP Optima współpracuje z następującymi rodzajami kas fiskalnych:
  • ELZAB (kasy II generacji: Alfa, Delta, Jota, Teta, Eco, Mini, K10 online, Mini LT online, Jota Online)
  • SHARP (ER-457P, ER-237P, ER-277P, ER-A285P)
  • NOVITUS (zgodne z protokołem Tango: Bravo, Nano , PS-3000, PS-4000E, Soleo, Sento online)

Ustawienia portów COM

Zgodnie z instrukcją użytkownika kasy fiskalnej. Prędkość na porcie COM w systemie Windows powinna być ustawiona tak samo jak w kasie fiskalnej.

Konfiguracja kas fiskalnych

Więcej informacji na ten temat znajdą Państwo w artykule Kasy fiskalne.

Najczęściej pojawiające się problemy

Przy próbie importu paragonów z kasy pojawia się komunikat: „Błąd komunikacji z kasą. Brak towaru []. Zaimportuj PLU z kasy. (Rekord nie został znaleziony.)". Remedium
  • W kasie fiskalnej znajdują się towary, które nie mają założonych odpowiadających im kart cennikowych w bazie Comarch ERP Optima. Należy wykonać import towarów z kasy w menu Ogólne/ Cennik.
  • Źle została przygotowana baza danych. Kody towarów w bazie powinny być wpisane jako cyfry bez zer wiodących, czyli, np. 1,2,3…10,11…100,101… itd. W kasach fiskalnych kody krótkie są to kody, które stosuje się najczęściej do prostej identyfikacji towarów dla sprzedaży ręcznej. Kody te charakteryzują się ograniczoną maksymalną wartością oraz ignorowaniem zer nieznaczących, co oznacza, że podając np. 003 kasa przyjmie kod towaru o nr 3. Ograniczenie wartości jest zależne od modelu kasy (ilości obsadzonej pamięci) i określa maksymalną wartość kodu, który kasa zidentyfikuje jako krótki.
Przy próbie nawiązania komunikacji z kasą pojawia się komunikat: „Błąd komunikacji z kasą. Cena poza zakresem lub programowano cenę zerową, a nie ustawiono flagi „cena otwarta”. Remedium
  • Wysyłany jest na kasę towar o niepoprawnej strukturze kodu EAN, np. w polu EAN jest znak inny niż cyfra np. 39309-75320. Kasy fiskalne akceptują tylko kody składające się z cyfr. Napis w pliku tekstowym musi być konwertowalny do liczby stałoprzecinkowej o określonej długości maksymalnej akceptowanej dla typu kasy fiskalnej.
  • Błędnie podany kanał multipleksera w konfiguracji programu.
Przy próbie wysłania towarów na kasę fiskalną z programu Comarch ERP Optima pojawia się komunikat: „Nie ustawiono stawki VAT ani grupy". Remedium W programie Comarch ERP Optima Konfiguracja programu/ Ogólne/ Działy dla kas fiskalnych należy zdefiniować nazwę działu (grupy) taką jaka jest ustawiona na kasie fiskalnej. Przy próbie wysłania towarów na kasę fiskalną z programu Comarch ERP Optima pojawia się komunikat: „Błąd komunikacji z kasą. Brak w konfiguracji symbolu stawki VAT dla stawki 22%". Taki komunikat może się pojawić w przypadku każdej stawki VAT. Remedium W programie Comarch ERP Optima Konfiguracja programu/ Ogólne/ Działy dla kas fiskalnych jest zdefiniowana nazwa działu, ale w Konfiguracja programu/ Ogólne/ Symbole stawek VAT (Kasy) nie ma przypisanego odpowiedniego symbolu fiskalnego. Przy próbie eksportu cennika do kasy pojawia się komunikat: „Napotkano niedozwolony znak”. Remedium
  • Nazwy działów towarowych nie mogą być jedno znakowe w Konfiguracja/ Program/ Ogólne/ Działy dla kas fiskalnych. Dla kas Novitus – nazwa działu lub towaru ma być od 3 do 18 znaków.
  • W bazie towarowej są takie towary o dłuższej nazwie niż przyjmuje kasa, np. Opakowanie karton 20 szt. oraz Opakowanie karton 100 szt. – z punktu widzenia kasy to są takie same towary (pierwsze 18 znaków jest takie same, nie uwzględniając wielkości liter).
  • przy porównaniu nazw nie są brane pod uwagę znaki spacja,-,*,= itp. czyli dla kasy fiskalnej np. Novitus Soleo towar o nazwie PLANDEKA58M jest tym samym towarem co towar o nazwie PLANDEKA 58M.
  • niedozwolone znaki w nazwach towarów których nie akceptuje kasa fiskalna typu %@* itp.
Przy próbie komunikacji z kasą pojawia się komunikat: „Nie udało się nawiązać połączenia z kasą". Remedium Należy sprawdzić w systemie Windows w menedżerze urządzeń prędkość dla portu COM. Prędkość na porcie COM w systemie Windows powinna być ustawiona taka sama jak na kasie fiskalnej.

Czytniki kodów kreskowych

Comarch ERP Optima współpracuje z każdym czytnikiem kodów kreskowych, który emuluje klawiaturę - ma możliwość wpięcia go do portu klawiatury. Czytnik możemy wykorzystywać do:
  1. Wpisywania kodu EAN na formularz towaru. Karty cennikowe muszą mieć wypełnione pole EAN. Jeśli pozycja nie posiada własnego kodu (pole EAN jest puste) – wciśnięcie przycisku nadaje 13-znakowy kod EAN rozpoczynający się od 201 lub należy ustawić się w polu EAN i odczytać czytnikiem taki kod z towaru.
    Uwaga
    Wpisany tu kod kreskowy jednoznacznie identyfikuje pozycję, tzn. w jednej bazie nie mogą istnieć dwa towary o takim samym kodzie paskowym.
  2. Odszukiwania pozycji w cenniku/ na liście zasobów – operacje można wykonać z poziomu Cennika/Listy zasobów – zakładka Wg EAN.
  3. Dopisywania pozycji na dokument, w tym celu należy w Konfiguracja/ Firma/ Handel/ Parametry zaznaczyć w sekcji Dodawanie pozycji na dokumencie parametr edycja na liście – Wprowadzenie towarów polega na ustawieniu się w dokumencie w tabelce z towarami i odczyt czytnikiem kodu EAN, program szuka na liście zasobów pozycji o zadanym kodzie i jeśli taki kod istnieje pozycja zostanie dopisana. Pozostaje ustalenie ilości i ceny.
  4. Wprowadzania towaru jako składnika na recepturę.
Aby można było korzystać z czytnika kodów należy w Comarch ERP Optima zaznaczyć: w Konfiguracji firmy/ Handel/ Parametry parametr Sprzedaż tylko wg kodów EAN. Jeśli parametr jest zaznaczony to podczas wpisywania pozycji na dokument program najpierw wyszukuje towar wg pola kod EAN, jeśli nie znajdzie towaru o takim kodzie EAN to przeszukuje listę wg kodu towaru, a jeśli nie znajdzie towaru o podanym kodzie – to w ostatniej kolejności przeszukuje listę wg nazwy. Kody wagowe Podczas wystawiania dokumentów w systemie Comarch ERP Optima istnieje możliwość odczytywania tzw. kodów wagowych (zawierających informację o wadze towaru). Kody takie są drukowane przez wagi, natomiast w chwili odczytu program rozpoznaje, że jest to kod wagowy i odpowiednio odczytuje ilość, wprowadzając ją na dokument. Sam towar jest rozpoznawany na podstawie 4-znakowego identyfikatora towaru, wpisanego w polu EAN na karcie towaru.
Uwaga
Funkcja odczytywania kodów wagowych nie działa na dokumentach Przyjęcia Wewnętrznego Produktów (PWP) oraz Rozchodu Wewnętrznego Składników (RWS).
Comarch ERP Optima współpracuje z kodami wagowymi, które zaczynają się od 27 lub 29. Kod wagowy ma określoną strukturę, w związku, z czym:
  • wygenerowany kod wagowy ma mieć 13 znaków i rozpoczynać się prefiksem od 20 do 29 (trzeba zaprogramować poprawnie wagę metkującą).
  • kod EAN w programie Comarch ERP Optima zapisany na karcie towaru musi mieć wpisane 4 znaki (od 3 do 6 znaku z 13 znakowego kodu EAN).
  • waga towaru nie może przekraczać 99.999 kg.
Uwaga
Funkcja odczytywania kodów wagowych działa tylko, jeśli w Konfiguracji firmy/ Handel/ Parametry wybrano parametr: Dodawanie pozycji na dokumencie jako: edycja na liście.
Przykłady:
  1. Towar o wadze 1,525 kg jest oznaczony numerem 29 1234 V 01525 K. Numer 1234 jest numerem tego towaru.
  2. Towar o masie np. 1,52 kg jest oznaczony numerem 27 0001 V 01520 K. Numer 0001 jest numerem danego towaru.

Drukarki etykiet

System Comarch ERP Optima współpracuje z następującymi drukarkami etykiet:
  • Dymo z serii Label Writer: 400 i 450 (Duo i Turbo)
  • Brother: QL-560 i QL-580N
W programie dostępne są wydruki etykiet opracowane w edytorze Generator Raportów dla odpowiednich rozmiarów papieru. Z listy cennikowej i kontrahentów dostępne są następujące wzory wydruków:
  • Dymo – Wzór: 57 x 32mm, 89 x 36 mm
  • Brother – Wzór: 29 x 90 mm, 62 x 100 mm
Uwaga
W przypadku drukarki Dymo dla wydruku wykonywanego bezpośrednio z menu wydruków, konieczne jest ustawienie we właściwościach drukarki w systemie Windows, w preferencjach drukowania (opcje zaawansowane), opcji „99012 Large Address” dla rozmiaru papieru.

Współpraca z kolektorami danych

System Comarch ERP Optima współpracuje z następującymi typami kolektorów:
  • Cipherlab (z serii 8000, 8001, 8300, 8400)
  • Opticon   (z firmy OptiData, np. Opticon PHL-2700)
  • BHT
  • Dolphin
Uwaga
Wymagamy, aby kolektor posiadał wgrane oprogramowanie oryginalne producenta, nie importera. Jeżeli jest inaczej może być konieczność przeprogramowania kolektora odpowiednim oprogramowaniem dostępnym na stronie producenta.
Możliwa jest współpraca z kolektorami z systemem znakowym na standardowych sterownikach Comarch ERP Optima. Kolektory z wbudowanym systemem operacyjnym nie będą działać ze standardowymi sterownikami jednak możliwe jest zastosowanie dodatkowych rozwiązań opracowanych przez innych producentów np. krakowską firmę OPTIDATA – więcej na ten temat w punkcie 6.7. Konfiguracja danych dotyczących współpracy z kolektorem jest możliwa z poziomu Konfiguracji stanowiska/ Ogólne/ Kolektor. Należy tam wskazać przede wszystkim typ kolektora, z którym będzie współpracował program oraz port COM, przez który będzie przebiegała transmisja danych. Należy również wskazać protokół, wg, którego przebiega transmisja oraz inne parametry współpracy. W części Definicja rekordu należy podać specyfikację dotyczącą formatu pliku przesyłającego dane.
Uwaga
Po wybraniu typu kolektora program proponuje domyślne ustawienia parametrów transmisji. Użytkownik powinien jednak skontrolować, czy proponowane ustawienia są zgodne ze specyfikacją producenta kolektora.
W przypadku, gdy kolektor komunikuje się z komputerem przy wykorzystaniu tranceivera należy dodatkowo zaznaczyć parametr Używaj tranceivera. Obsługa kolektorów jest zrealizowana w taki sposób, żeby umożliwić automatyczne dodawanie towarów wprowadzonych do kolektora na dokumenty handlowe i magazynowe oraz na arkusze inwentaryzacyjne. Możliwość importu danych z kolektora dostępna jest z poziomu większości formularzy dokumentów. Import z kolektora następuje automatycznie po wciśnięciu przycisku „Kolektor danych” lub kombinacją klawiszy <CTRL>+<ALT>+<K>. Na podstawie danych z Konfiguracji stanowiska program nawiązuje łączność z kolektorem danych, a następnie wywołuje transmisję. W efekcie na formularz dokumentu zostają wpisane towary wraz z ilościami. Ilości są wyrażone zawsze w jednostkach podstawowych. Ceny na dokumencie są proponowane przez program, zgodnie z obowiązującymi zasadami. W przypadku dokumentów zakupowych (FZ, PZ, PW, ZD) proponowane są ostatnie ceny zakupu. W przypadku dokumentów sprzedażowych (FA, WZ, RO, FPF…) – proponowane są ceny sprzedaży z grupy cenowej skojarzonej z kontrahentem wpisanym na dokument, z uwzględnieniem wszystkich rabatów.
Uwaga
Program Comarch ERP Optima posiada funkcję odbioru danych z kolektora, nie potrafi wysłać danych na kolektor.
Uwaga
Funkcja importu danych z kolektora nie działa w przypadku dokumentów korygujących oraz dokumentów, na których zblokowana jest możliwość dopisywania nowych pozycji (np. Faktura Sprzedaży utworzona na podstawie WZ z różnych magazynów).

Konfiguracja na przykładzie kolektora Cipherlab 8300 dla EAN13

Pobranie odpowiedniej aplikacji ze strony producenta Ze strony WWW producenta http://www.cipherlab.com pobieramy program „Generator Aplikacji” z sekcji Download. Program dostępny również na płytach CD z oprogramowaniem dołączonym do kolektora. Zdefiniowanie długości rekordu w kolektorze W Generatorze Aplikacji należy wybrać z menu kontekstowego opcję Edit zakładka Form i ustawić odpowiednio parametry rekordu (Rys. 1), w naszym przypadku ustawiamy stałą długość dla kodów EAN 13, odpowiednio:
  • #1 – Pole przeznaczone na EAN: Typ danych: tekst; Min długość: 0; Max długość: 13
  • #2 – Pole przeznaczone na ilość: Typ danych: liczbowy; Min długość: 0; Max długość: 10
  • #3 – Pole przeznaczone na cechę (pole opcjonalne): Typ danych: tekst; Min długość: 0; Max długość: 20

Formularz ustawień długości rekordu w kolektorze

Dla każdej linii rekordu w kolumnie Properties należy wcisnąć przycisk More… i ustawić „Fixed data length” na wartość, która jest w polu „Max length” (Rys. 2). Należy również ustawić odpowiednio dopełnienie do określonej ilości znaków. W tym celu w generatorze aplikacji kolektora wybieramy z rozwijalnej listy dopełnienie od lewej strony typu spacja, wybieramy więc „Left alligned (padded with space)”. Opcja ta służy do tego, aby zaczytując kolektorem towar o kodzie EAN krótszym niż 13 znaków program dopełniał go (w naszym przypadku spacjami) do 13 znaków, gdyż taką długość kodów EAN zdefiniowaliśmy w kolektorze (Rys. 2).

Formularz ustawień długości znaków dla danych

Przesłanie ustawień z Generatora Aplikacji do kolektora W kolektorze danych należy wybrać opcje 3. Narzędzia/ 6. Ładuj aplikację i wczytać ustawienia z Generatora aplikacji - polecenie Download Application w menu kontekstowym Generatora Aplikacji. Nastąpi wówczas nawiązanie komunikacji i przesył danych do kolektora. Ustawienie parametrów połączenia w kolektorze W kolektorze danych Wybrać opcje 3. Narzędzia/ 1. Ustawienia programu Ustawić:
  • Download Interface – Cradle-IR
  • Upload Interface – Cradle-IR
  • Transmission Speed – Baud rate – 9600 bps
Ustawienie parametrów dla połączenia z kolektorem w Comarch ERP Optima W programie Comarch ERP Optima Konfiguracja stanowiska/ Ogólne/ Kolektor w sekcji Ustawienia sterownika wybieramy sterownik Cipherlab (Rys. 3). Jeżeli kolektor używa transceivera to zaznaczamy odpowiedni czek, następnie ustawiamy:
  • Protokół – SKKBHT
  • Prędkość transmisji – 9600
  • Parzystość – Brak
  • Bity danych – 8
  • Bity stopu – 1
Ustawienie definicji rekordu kolektora w Comarch ERP Optima W programie Comarch ERP Optima, w Konfiguracji stanowiska/ Ogólne/ Kolektor w sekcji Definicja rekordu ustawiamy w naszym przypadku dla EAN 13 znakowego odpowiednio parametry (Rys. 3):
  • Długość rekordu – 24
  • Początek pola kodu towaru – 0
  • Koniec pola kodu towaru – 12
  • Początek pola ilości – 14
  • Koniec pola ilości – 23

Formularz dla ustawień kolektora Comarch ERP Optima

Import danych z kolektora do Comarch ERP Optima Po ustawieniu powyższych parametrów połączenia oraz zdefiniowaniu prawidłowej długości rekordu w kolektorze, wybieramy w kolektorze funkcję 1. Collect data i zaczytujemy do kolektora kody towarów EAN w odpowiednich ilościach. Następnie w kolektorze wybieramy opcję 2. Upload data a w programie Comarch ERP Optima na formularzu dokumentu ikoną Kolektor danych zaczytujemy dane z kolektora.

Przeprogramowanie frameware kolektora Cipherlab

Jeżeli kolektor posiadał wgrane oprogramowanie importera, a nie oryginalne producenta należy wówczas takiemu kolektorowi przeprogramować jego środowisko programowe, tzw. „frameware”. Pliki zawierające środowisko programowe kolektora mają rozszerzenie .SHX, dostępne do pobrania ze strony producenta. W momencie włączenia kolektora na dole ekranu pod napisem „Welcome” możemy sprawdzić jaka jest jego obecna wersja frameware. Aby przeprogramować kolektor należy wykonać następujące czynności:
  1. Wyłączamy kolektor.
  2. Włączamy kolektor kombinacją klawiszy: 7,9 i przycisk włącz (Power).
  3. Wybieramy: 6. Load Program -> 1. Cradle-IR -> 6. Baud rate: 9600 -> please place In Cradle (odstawiamy kolektor na tranceiver).
  4. Uruchamiamy program ProgLoad.exe. Podajemy typ komunikacji, numer portu COM, prędkość transmisji oraz wskazujemy plik .SHX z frameware, zgodnie z rysunkiem 4.
  5. Wciskamy przycisk OK. Po nawiązaniu połączenia z kolektorem i wykonaniu downloadu wyłączamy kolektor.
  6. Włączamy kolektor i wykonujemy programowanie Generatorem Aplikacji zgodnie z punktem 5.1.

 Formularz programu ProgLoad

Uwaga
Środowisko kolektora z którym poprawnie działa Comarch ERP Optima to starszy frameware w wersji U8000-2600.SHX. Do pobrania ze strony producenta. Przeprogramowanie na tą wersję wykonywać gdy nie można uzyskać komunikacji Comarch ERP Optima z obecną wersją frameware kolektora.

Najczęściej pojawiające się problemy

Przy próbie odczytu danych z kolektora pojawia się komunikat: „Brak danych w kolektorze”. Remedium
  • Sprawdzić czy prędkość transmisji jest ustawiona taka sama w kolektorze jak w konfiguracji w programie Comarch ERP Optima.
  • Sprawdzić w kolektorze, który korzysta z transceivera czy w ustawieniach parametry Upload oraz Download Interface została ustawiona w obu miejscach opcja na Cradle-IR.
  • Źle jest ustawiony rekord w kolektorze lub definicja rekordu w Comarch ERP Optima.
Przy próbie odczytu danych z kolektora CipherLab pojawia się komunikat: „Wielokrokowa operacja wygenerowała błędy”. Remedium Problem związany jest z nieprawidłowym zaprogramowaniem kolektora. Należy sprawdzić jak jest ustawione dopełnienie, czy nie jest zaznaczona opcja konwersji kodu np. 12-znakowego na 13-znakowy kod EAN, a w kolektorze ustawiony jest EAN-14 z dopełnianiem, czy zostały zaznaczone dodatkowe błędne parametry.

Przykład ustawień dla kolektora Cipherlab 8400 (kody EAN13)

Zakładając, że kolektor posiada domyślne ustawienia dystrybutora (Torell) konfiguracja po stronie Comarch ERP Optima wygląda jak poniżej (Konfiguracja stanowiska/ Ogólne/ Kolektor). W sekcji Ustawienia sterownika wybieramy sterownik Cipherlab (C:\Program Files\Comarch ERP Optima\cdn_ciph.dll). Jeżeli kolektor używa transceivera, to zaznaczamy odpowiedni czek, a następnie ustawiamy:
  • Protokół – YMODEM
  • Prędkość transmisji – 115200
  • Parzystość – Brak
  • Bity danych – 8
  • Bity stopu – 1
  • Bity stopu – 1
Ustawienie definicji rekordu kolektora w Comarch ERP Optima: W menu Konfiguracja stanowiska/ Ogólne/ Kolektor w sekcji Definicja rekordu ustawiamy (w tym przypadku dla EAN 13 znakowego) odpowiednio parametry:
  • Długość rekordu – 24
  • Początek pola kodu towaru – 0
  • Koniec pola kodu towaru – 12
  • Początek pola ilości – 14
  • Koniec pola ilości – 23

Przykład ustawień dla kolektora BHT Denso w Comarch ERP Optima

Sterownik: C:\Program Files\Comarch ERP Optima\cdn_coll.dll
  • Protokół: SKKBHT
  • Prędkość transmisji: 19200
  • Parzystość: brak
  • Bit danych: 8
  • Bit stopu: 1
  • Używaj tranceivera: odznaczone
Definicja rekordu:
  • Długość rekordu: 30
  • Pocz. pola towaru: 0
  • Koniec pola tow.:19
  • Pocz. pola ilość: 21
Uwaga
W przypadku gdy z kolektora przesyła się na dokument tylko pierwsza pozycja należy w rejestrze systemowym Windows dodać w gałęzi [HKEY_LOCAL_MACHINE\SOFTWARE\CDN\Kolektory] ciąg o nazwie „Brak zakonczenia linii” i ustawić dla tego wpisu wartość „1”.

Przykład ustawień dla kolektora firmy OPTIDATA

Ustawienie parametrów połączenia w kolektorze
  • Prędkość transmisji – 19200
  • Parzystość – Brak
  • Bity danych – 8
  • Bity stopu – 1
Na urządzeniu należy wybrać profil „ERP XL” co spowoduje automatyczne ustawienie powyższych parametrów. W tym celu należy wejść do menu Parametry następnie wprowadzić odpowiednie hasło odszukać opcję „Profil” i wybrać profil „ERP XL” (jest on zgodny z Comarch ERP Optima). W przypadku niektórych rodzajów kolektorów należy w doku komunikacyjnym – na spodzie podstawki komunikacyjnej odpowiednio ustawić grupę mikroprzełączników na takie same wartości jak na porcie COM. Konfiguracja szerokości pól w kolektorach OptiData jest stała i nie podlega zmianom, przy czym kolektory poprawnie obsługują zarówno 8 jak i 13 znakowe kody kreskowe. Ustawienie parametrów dla połączenia z kolektorem w Comarch ERP Optima W programie Comarch ERP Optima, w Konfiguracji stanowiska/ Ogólne/ Kolektor w sekcji Ustawienia sterownika wybieramy sterownik Cipherlab (Rys. 5). Nie zaznaczamy czeku używaj tranceivera a następnie ustawiamy parametry:
  • Protokół – SKKBHT
  • Prędkość transmisji – 19200
  • Parzystość – Brak
  • Bity danych – 8
  • Bity stopu – 1
Ustawienie definicji rekordu kolektora w Comarch ERP Optima
  • Długość rekordu – 44
  • Początek pola kodu towaru – 0
  • Koniec pola kodu towaru – 19
  • Początek pola ilości – 21
  • Koniec pola ilości – 33

Formularz dla ustawień kolektora w Comarch ERP Optima

Terminale płatnicze

Comarch ERP Optima zapewnia współpracę z następującymi terminalami:
  • Verifone VX 520 dystrybuowanym przez eService
  • Verifone VX 520 dystrybuowanym przez First Data Polcard
  • Ingenico iCT220 ETH dystrybuowanym przez First Data Polcard
  • Ingenico Desk 3200 dystrybuowanym przez First Data Polcard
  • ING
  • Polskie ePłatności
Za pomocą terminali płatniczych obsługiwane są następujące operacje kartą płatniczą:
PolcardeServiceINGPolskie ePłatności
obciążenie karty płatniczej
zwrot środków płatniczych na kartę
Szczegóły współpracy terminala płatniczego z programem Comarch ERP Opima opisane są w artykule terminale płatnicze

OPT009 - Import danych z arkusza Microsoft Excel

Data aktualizacji: 09-07-2021

Eksport /Import - przygotowanie danych

Od wersji 2012 Comarch ERP Optima można zaimportować towary i kontrahentów w takim formacie jak zostały wyeksportowane z programu. Oznacza to, że jeśli wykonamy eksport do MS Excel, zmodyfikujemy dane np. ceny dla towarów to możemy zaimportować taki plik bez konieczności zmian nazw kolumn. Dane można wyeksportować za pomocą ikony , która dostępna jest pod listą odpowiednio kontrahentów (Ogólne/ Kontrahenci) oraz towarów/usług (Ogólne/ Cennik). Dane można zaimportować za pomocą ikony , która dostępna jest obok ikony do eksportu. Import można wykonać również z poziomu menu Narzędzia/ Importy/ Słowników z pliku/ Kontrahenci lub Cennik. Przy imporcie cennika, w oknie Parametry importu cennika należy wybrać: Plik w formacie MS Excel i wskazać plik, w którym znajduje się arkusz z danymi. Pierwszy niepusty wiersz w arkuszu musi zawierać nazwy kolumn. Kolumny mogą występować w dowolnej kolejności. Każdy arkusz musi zawierać dwie lub trzy kolumny obowiązkowe oraz różną ilość kolumn opcjonalnych. Format komórek danej kolumny musi być taki sam. Błędem jest umieszczenie w jednej kolumnie raz wartości 11, a potem w innym wierszu 21,99. Powinno być 11,00 i 21,99. Od wersji 2021.4 opcja importu i eksportu cennika poprzez plik MS Excel umożliwia również dodawanie/aktualizację informacji dla towarów przesyłanych do sklepów internetowych takich jak nazwy i opisy w językach, statusy dostępności, koszty dostaw, a także atrybuty czasowe i jednostki miary.

Importowane dane

Kontrahenci

Arkusz MS Excel – należy zapisać jako skoroszyt programu MS Excel 97-2003. Wymagane są trzy kolumny: Kod, Nazwa, NIP Nazwa arkusza w pliku może być dowolna. Jeśli w pliku jest więcej wypełnionych arkuszy szukany jest pierwszy, który ma kolumnę NIP. Lista form płatności budowana jest w oparciu o pola: FormaPlatnosciTerminPlatnosci Wszystkie płatności przypinane są do kasy gotówkowej. Dla każdego kontrahenta importowane są następujące pola:
Arkusz Kontrahenci
Lp.Nazwa pola w tabeli CDN.KontrahenciNazwa pola w arkuszu KontrahenciWartości wymagane w polu arkusza
1.Knt_KodKodKod kontrahenta – pole obowiązkowe
2.Knt_Nazwa1NazwaNazwa kontrahenta cz.1 – pole obowiązkowe
3.Knt_Nazwa2Nazwa2Nazwa kontrahenta cz. 2
4.Knt_Nazwa3Nazwa3Nazwa kontrahenta cz. 3
5.Knt_TelefonTelefonNumer telefonu
6.Knt_Telefon2Telefon2Drugi numer telefonu
7.Knt_TelefonSmsTelefonSmsTelefon dla SMS
8.Knt_FaxFaxNumer faxu
9.Knt_UlicaUlicaAdres kontrahenta – ulica
10.Knt_NrDomuNrDomuAdres kontrahenta – numer budynku
11.Knt_NrLokaluNrLokaluAdres kontrahenta – numer lokalu
12.Knt_KodPocztowyKodPocztowyKod pocztowy miasta kontrahenta
13.Knt_Poczta PocztaPoczta
14.Knt_Miasto MiastoMiasto
15.Knt_KrajKrajKraj
16.Knt_WojewodztwoWojewodztwoWojewództwo
17.Knt_PowiatPowiatPowiat – pole niedostępne na formularzu kontrahenta, możliwe uzupełnienie z poziomu bazy danych
18.Knt_GminaGminaGmina – pole niedostępne na formularzu kontrahenta, możliwe uzupełnienie z poziomu bazy danych
19.Knt_URLURLAdres strony WWW kontrahenta
20.Knt_GrupaGrupaGrupa kontrahentów
21.Knt_FinalnyOsobaFizyczna0 – podmiot gospodarczy
1 – osoba fizyczna
22.Knt_NIPENIPNumer NIP – pole obowiązkowe
23.Knt_NIPKrajNIPKrajPrzedrostek NIP dla krajów UE
24.Knt_ZezwolenieZezwolenieNumer zezwolenia na działalność gospodarczą
25.Knt_RegonRegonNumer REGON
26.Knt_PeselPeselNumer PESEL
27.Knt_EmailEmailAdres e-mail
28.Knt_RachunekNrBankRachunekNrNumer rachunku kontrahenta
29.Knt_BnkNazwaBankNazwaNazwa banku
30.Knt_OsNazwiskoOsobaNazwisko przedstawiciela
31.Knt_OpisOpisDodatkowy opis kontrahenta
32.Knt_RodzajRodzajO – odbiorca, D – dostawca, K – konkurencja, P – partner, T – klient potencjalny
Jeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowane jest O (odbiorca)
33.Knt_PodatekVATPlatnikVAT0 – (zero) kontrahent nie jest płatnikiem VAT
1 – kontrahent jest płatnikiem VAT
Jeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowane jest 1 (płatnik VAT)
34.Knt_PodatekVatPodatnikVatCzynnyPodatnik VAT czynny
0 – parametr niezaznaczony
1 – parametr zaznaczony
35.Knt_ExportEksport0 – (zero) kontrahent krajowy
1 – kontrahent pozaunijny
2 – pozaunijny (zwrot VAT)
3 – kontrahent UE
4 – wewnątrzunijny trójstronny
5 – podatnikiem jest nabywca
6 – poza terytorium kraju
7 – poza terytorium kraju (stawka np.)
Jeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowane jest 0 – (zero) kontrahent krajowy.
W przypadku kontrahentów wewnątrzunijnych oraz wewnątrzunijnych trójstronnych z kolumny NIPKraj pobierany jest wymagany kod kraju UE.
36.Knt_LimitKredytuLimitKredytuJeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowane jest 0 (zero)
37.Knt_TerminTerminTermin płatności – określany w dniach od daty wystawienia dokumentu.
38.Knt_FplID z CDN.FormyPlatnosciFormaPlatnosciSłownie wyrażona forma płatności. Jeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowane jest gotówka.
39.Knt_CenyCenyCena dla klienta
0 – cena domyślna
1 – cena zakupu
2 – pierwsza cena sprzedaży
3 – druga cena sprzedaży
4 – trzecia cena sprzedaży
5 – czwarta cena sprzedaży
Jeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowane jest 2 (pierwsza cena sprzedaży). Jeśli w bazie, do której importujemy nie ma ceny z arkusza to jako cena domyślna ustawiana jest cena „domyślna”.
40.Knt_CenyCenyNazwaNazwa ceny domyślnej np. hurtowa 2
Cena domyślna jest ustalana na podstawie nazwy, a jeśli nazwa nie zostanie znaleziona w bazie danych to cena domyślna ustalana jest na podstawie numeru z kolumny: Ceny
41.CDN.Rabaty, dla Rab_typ=2 (jeden kontrahent / wszystkie towary)UpustWartość upustu. Jeżeli kontrahent na 10% upustu należy wpisać 10 (bez znaczka procentu).
42.Knt_NieNaliczajOdsetekNieNaliczajOdsetekNie naliczać odsetek dla płatności kontrahenta.
43.Knt_MetodaKasowaMetodaKasowaMetoda kasowa
0 – niezaznaczony żaden parametr
1 – Zakup (parametr zależny od Podatnik VAT czynny)
2 – Sprzedaż
44.Knt_WindykacjaEMailWindykacjaEMailAdres poczty e-mail osoby reprezentującej firmę w sprawach windykacji należności.
45.Knt_WindykacjaTelefonSmsWindykacjaTelefonSmsTelefon dla SMS
46.Knt_AlgorytmAlgorytmNettoBruttoDomyślny algorytm naliczania podatku VAT na dokumentach handlowo – magazynowych
0 – netto
1 – brutto
47.Knt_WalutaWalutaDomyślna waluta kontrahenta
Jeżeli waluty nie ma w programie, wówczas przy imporcie jest ona dodawana w Konfiguracji Programu /Ogólne/Waluty .

Towary

Wymagane są trzy kolumny: Kod, Nazwa, JM Nazwa arkusza w pliku może być dowolna. Jeśli w pliku jest więcej wypełnionych arkuszy szukany jest pierwszy, który ma kolumnę J.M. lub JM W przypadku, gdy towar posiada więcej jednostek miary lub kodów EAN należy dodać odpowiednio arkusz: JednostkiMiary lub KodyKreskowe Dla arkusza JednostkiMiary wymagane pola to: KodTowaru, JMZ Dla arkusza KodyKreskowe wymagane pola to: KodTowaru, Ean, Domyslny W przypadku, gdy mają być importowani producenci lub marki należy dodać odpowiednio arkusz: Producenci lub Marki. Dla arkusza Producenci wymagane pole to: Kod Dla arkusza Marki wymagane pole to: Marka Aby zaimportować kody CN należy dodać arkusz KodyCN, dla którego wymagane jest pole Kod. Aby zaimportować dane towarowe dla sklepów internetowych (od wersji 2021.4) należy dodać odpowiednio arkusze eHandel, eHandelJezyki, eHandelJednostki. Arkusz eHandel zawiera dane dot. udostepnienia towaru w e-Sklep takie jak grupa domyślna do sklepu, statusy dostępności, koszty dostaw oraz atrybuty czasowe Dla arkusza eHandel wymagane pola to: KodTowaru, Grupa Arkusz eHandelJezyki zawiera dane dot. nazw i opisów towarów dla Comarch e-Sklep w językach obcych Dla arkusza eHandelJezyki wymagane pola to: KodTowaru, JęzykID, Nazwa Arkusz eHandelJednostki zawiera dane dot. Jednostek miar wysyłanych do Comarch e-Sklep Dla arkusza eHandelJednostki wymagane pola to: KodTowaru, JednostkaPomocnicza Jeżeli pozycja cennika jest towarem złożonym nie jest przenoszona receptura produktu. Nie są importowane waluty. Jako nazwy kolumn w arkuszu dla tabeli CDN.Towary mogą być stosowane również nazwy kolumn tej tabeli zgodne ze strukturą bazy danych, czyli poprawny zapis nazwy kolumny odpowiedzialnej za kod towaru to: Kod lub Twr_Kod Dla każdej pozycji cennika importowane są następujące pola:
Arkusz Cennik
Lp.Nazwa pola w tabeli CDN.TowaryNazwa pola w arkuszu CennikWartości wymagane w polu arkusza
1.Twr_KodKodKod towaru - pole obowiązkowe
2.Twr_NazwaNazwaNazwa towaru - pole obowiązkowe
3.Twr_JmJMNazwa jednostki miary - pole obowiązkowe
4. Twr_JMWysCmWysokoscCmWysokość dla jednostki podstawowej (zakładka [Jednostki, EAN, VAT] na formularzu towaru
5. Twr_JMSzerCmSzerokoscCmSzerokość dla jednostki podstawowej (zakładka [Jednostki, EAN, VAT] na formularzu towaru
6. Twr_JMDlugCmDlugoscCmDługość dla jednostki podstawowej (zakładka [Jednostki, EAN, VAT] na formularzu towaru
7.Twr_JmZJmZDodatkowa jednostka miary. Jeżeli towar posiada więcej jednostek miary należy dodać arkusz JednostkiMiary.
8.Twr.JMPrzelicznikLPrzelicznik_JmJmZPrzelicznik podstawowej jednostki miary na jednostkę złożoną.
Twr.JMPrzelicznikM
9.Twr_TypTypTP – towar prosty
Twr_ProduktTZ – towar złożony
UP – usługa prosta
UZ – usługa złożona
Jeżeli kolumna nie występuje w arkuszu lub jest nieokreślona, przyjmowana jest wartość TP (towar prosty), jeśli została pobrana licencja na Comarch ERP Optima Handel/ Handel Plus lub UP (usługa prosta), jeśli pobrano licencję tylko na Comarch ERP Optima Faktury.
10.Twr_NumerKatNumerKatalogowyNumer katalogowy
11.Twr_SWWSWWNumer PKWiU
12.Twr_TwGGIDNumerGrupaGrupa towarowa
CDN.TwrGrupy
13.Twr_IloscMinStanMinStan minimalny towaru na magazynie
14.Twr_IloscMaxStanMaxStan maksymalny towaru na magazynie
15.Twr_StawkaVATLiczba całkowita określająca stawkę VAT. Jeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowana jest wartość 23.
16.Twr_StawkaZakVATZakLiczba całkowita określająca stawkę VAT zakupu. Jeżeli kolumny te nie występują to stawka VAT zakupu jest ustawiana na taką samą jak stawka VAT sprzedaży.
17.Twr_FlagaVATFlaga1 - zwolniona
2 - opodatkowana
3 - zaniżona
4 - nie podlega
Jeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowana jest wartość 2.
18.Twr_FlagaZakVatZakFlaga1 - zwolniona
2 - opodatkowana
3 - zaniżona
4 - nie podlega
Jeżeli kolumna nie występuje w arkuszu lub jest nieokreślona to wartość pola jest ustawiana na taką samą jak wartość pola Twr_Flaga.
19.Twr_EANEANKod kreskowy
20.Twr_OpisOpisOpis towaru
21.Twr_KaucjaOpakowanieKaucjaKolumna powinna zawierać 1 jeśli towar jest opakowaniem kaucjonowanym i 0 w pozostałych przypadkach.
22.Twr_OdwrotneObciazenieOdwrotneObciazenieParametr Odwrotne obciążenie (widoczny w oknie Pozycji cennika na zakładce [Ogólne] po zaznaczeniu w menu Start/Konfiguracja/ Firma/ Handel/ Parametry – Odwrotne obciążenie wg karty towaru ):
0 – Nie
1 – Tak
2 – Powyżej limitu
23.Twr_CenaZCzteremaMiejscamiCenaZCzteremaMiejscamiParametr Ceny z czterema miejscami po przecinku (widoczny w oknie Pozycji cennika na zakładce [Ogólne] po zaznaczeniu w menu Start/Konfiguracja/ Firma/ Handel/ Parametry – Ceny z czterema miejscami po przecinku ):
0 – niezaznaczony
1 – zaznaczony
24.Twr_TypMinimumGranica ceny0 – brak granicy ceny,
1 – minimalna marża,
2 – maksymalny rabat.
25.Twr_MinCenaMarzaMinimalna cena/marżaWartość ustalonej granicy ceny (min. marży/ max. rabatu).
26.Twr_Kntid (Id z tabeli CDN.Kontrahenci)DostawcaDostawca (kod dostawcy z zakładki Dodatkowe na karcie towaru), Dostawca musi być wcześniej wprowadzony na listę kontrahentów oraz na swojej karcie musi mieć zaznaczony parametr Dostawca.
27.Twr_KoddostawcyKod u dostawcyKod u dostawcy (kod towaru u dostawcy z zakładki Dodatkowe na karcie towaru).
28.Twr_ProducentKodKod producentaKod producenta (kod towaru producenta z zakładki Dodatkowe na karcie towaru).
29.Twr_KosztUslugiTypKosztUslugiTyp1 - typ kwotowy
2 – typ procentowy
30.Twr_KosztUslugiKosztUslugiKoszt usługi w przeliczeniu na PLN lub procent dla typu procentowego
31. Twr_KosztUslugiWalKosztUslugiWalKoszt usługi w walucie lub procent dla typu procentowego
32. Twr_WalutaWalutaWaluta ostatniej ceny zakupu
33.Twr_KCNId (Id z tabeli CDN.KodyCN)Intrastat - kod CNOśmiocyfrowy kod CN.
W sytuacji kiedy w arkuszu Cennik dla towaru uzupełniono kod CN, ale nie ma go bazie, do której wykonywany jest import i nie uzupełniono go w arkuszu KodyCN , kod ten nie zostanie uzupełniony na importowanej/ aktualizowanej kartotece towarowej.
34.Twr_KrajPochodzeniaIntrastat - kraj pochodzeniaDwuznakowy symbol kraju pochodzenia towaru.
35.Twr_MasaIntrastat - masaMasa netto dla jednostki podstawowej towaru podana w kg.
36.Twr_JmPomPrzelicznikLIntrastat - JmPomPrzelicznikLLicznik przelicznika jednostki miary uzupełniającej przypisanej do kodu CN określającego jej stosunek do podstawowej jednostki miary towaru.
37.Twr_JmPomPrzelicznikMIntrastat - JmPomPrzelicznikMMianownik przelicznika jednostki miary uzupełniającej przypisanej do kodu CN określającego jej stosunek do podstawowej jednostki miary towaru.
38.Twr_SplitPayPodzielona płatnośćParametr MPP - podzielona płatność (widoczny w oknie Pozycji cennika na zakładce [Ogólne]):
0 - niezaznaczony
1 - zaznaczony
39.Prd_KodProducentProducent towaru (zakładka [Dodatkowe] na formularzu towaru)
40.Mrk_NazwaMarkaMarka towaru (zakładka [Dodatkowe] na formularzu towaru)
41.Twc_wartosc dla Twc_TwcNumer=1 dla odpowiedniego towaru Twc_twridCena zakupuCena zakupu
42.TwC_Waluta dla TwcNumer=1 dla odpowiedniego towaru Twc_twridWaluta Cena zakupuWaluta ceny zakupu
43.Twc_wartosc dla Twc_TwcNumer= 2Cena hurtowa 1Cena hurtowa (1)
44.TwC_Waluta dla TwcNumer=2Waluta Cena hurtowa 1Waluta ceny hurtowej (1)
45.Twc_wartosc dla Twc_TwcNumer=3Cena hurtowa 2Cena hurtowa (2)
46.TwC_Waluta dla TwcNumer=3Waluta Cena hurtowa 2Waluta ceny hurtowej (2)
47.Twc_wartosc dla Twc_TwcNumer=4Cena hurtowa 3Cena hurtowa (3)
48.TwC_Waluta dla TwcNumer=4Waluta Cena hurtowa 3Waluta ceny hurtowej (3)
49.Twc_wartosc dla Twc_TwcNumer=5Cena detalicznaCena detaliczna
50.TwC_Waluta dla TwcNumer=5Waluta Cena detalicznaWaluta ceny detalicznej
51.Twc_wartosc dla Twc_TwcNumer=6Cena iSklep24Ewentualna cena dodana przez Użytkownika
52.TwC_Waluta dla TwcNumer=6Waluta Cena iSklep24Waluta ceny iSklep24

Arkusz JednostkiMiary

1.Twr_KodKodTowaruKod towaru - pole obowiązkowe
2.TwJZ_JM (Twr_TwrID = TwJZ_TwrID)JMZNazwa jednostki miary - pole obowiązkowe
3.TwJZ_JMPrzelicznikL ((Twr_TwrID = TwJZ_TwrID)PrzelicznikLJeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowana jest wartość równa 1.
4.TwJZ_JMPrzelicznikM (Twr_TwrID = TwJZ_TwrID)PrzelicznikMJeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowana jest wartość równa 1.
5.TwJZ_WysCmWysokoscCmWysokość dla jednostki pomocniczej (zakładka [Jednostki, EAN, VAT] na formularzu towaru
6.TwJZ_SzerCmSzerokoscCmSzerokość dla jednostki pomocniczej (zakładka [Jednostki, EAN, VAT] na formularzu towaru
7.TwJZ_DlugCmDlugoscCmDługość dla jednostki pomocniczej (zakładka [Jednostki, EAN, VAT] na formularzu towaru

Arkusz KodyKreskowe

1.Twr_KodKodTowaruKod towaru – pole obowiązkowe
2.TwE_EAN (Twr_TwrID = TwE_TwrID)EanKod kreskowy – pole obowiązkowe
3.TwE_JM (Twr_TwrID = TwE_TwrID)JmDlaEanJeżeli kolumna nie występuje w arkuszu lub jest nieokreślona przyjmowana jest wartość z JM.
4.TwE_Domyslny (Twr_TwrID = TwE_TwrID)DomyslnyStatus kodu kreskowego – pole obowiązkowe

Arkusz Producenci

1.Prd_KodKodKod producenta – pole obowiązkowe
2.Prd_NazwaNazwaNazwa producenta
3.Prd_URLURLOdsyłacz do adresu internetowego

Arkusz Marki

1.Mrk_NazwaMarkaNazwa marki – pole obowiązkowe
2.Prd_KodProducentKod producenta

Arkusz Kody CN

1.KCN_KodKodOśmiocyfrowy kod CN – pole obowiązkowe
2.KCN_OpisOpisOpis kodu CN
3.KCN_UzupJMJmDla kodów CN związanych z jednostką miary uzupełniającą należy podać nazwę tej jednostki
4.KCN_MasaMasaPrzyjmuje wartość 1 jeśli dla kodu CN należy określić masę towaru. W przeciwnym wypadku pole należy pozostawić puste bądź uzupełnić wartością 0 .
5.KCN_StawkaVATLiczba całkowita określająca stawkę VAT kodu CN.
6.KCN_FlagaVATFlaga1 - zwolniona
2 - opodatkowana
3 - zaniżona
4 - nie podlega
Jeżeli kolumna nie występuje w arkuszu lub jest nieokreślona, przyjmowana jest wartość 2.

Arkusz eHandel

1.Twr_KodKodTowaruKod towaru – pole obowiązkowe
2.Twes_Udostepnij
(Twr_TwrID = Twes_TwrID)
UdostepnijParametr Udostępnij (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 - zaznaczony
3.Twes_TwGGIDNumer
(Twr_TwrID = Twes_TwrID
CDN.TwrGrupy)
GrupaGrupa Towarowa dla e-Sklep/e-Sale
(wskazana grupa musi być podgrupą dla grupy udostępnianej do sklepu)
4.Twes_ESklepStatus
(Twr_TwrID = Twes_TwrID)
StatusDostepnosciParametr Status dostępności (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – Zapowiedź
1 – Dostępny
2 – Dostępny na zamówienie
3 – Niedostępny
5.Twes_ESklepDostepnosc
(Twr_TwrID = Twes_TwrID)
DostepnoscWartość parametru Dostępność (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – Dostępny od ręki
1 – Dostępny do 24h
2 – Dostępny do 48h
3 – od 3 do 5 dni
4 – do 7 dni
5 – do 14 dni
6 – powyżej 14 dni
Parametr ustawiany jedynie w przypadku gdy w kolumnie StatusDostepnosci ustawiono wartość 1
6.Twes_ESklepNieKontrolujStanow
(Twr_TwrID = Twes_TwrID)
KontrolaStanowParametr Nie kontroluj stanów magazynowych (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 – zaznaczony
Parametr nie zostanie zaznaczony jeśli w kolumnie StatusDostepnosci ustawiono różną od 0 i 1 lub jeżeli karta cennikowa jest usługą
7.Twes_ESklepDostepnyOd
(Twr_TwrID = Twes_TwrID)
DostepnyOdParametr Dostępny od (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 – zaznaczony
Parametr nie zostanie zaznaczony jeśli w kolumnie StatusDostepnosci ustawiono wartość inną niż 0
8.Twes_ESklepDataDostepnosci
(Twr_TwrID = Twes_TwrID)
DataDostepnyOdData od której towar będzie dostępny w przypadku ustawienia statusu Zapowiedź.
Parametr nie zostanie wypełniony jeśli w kolumnie StatusDostepnosci ustawiono wartość inną niż 0
9.Twes_ESklepZapytajOCene
(Twr_TwrID = Twes_TwrID)
ZapytajOCeneParametr Zapytaj o cenę towaru (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 – zaznaczony
10.Twes_ESklepBezRabatu
(Twr_TwrID = Twes_TwrID)
RabatParametr Towar nie podlega rabatowaniu (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 – zaznaczony
11.Twes_ESklepKalkulacjaDostaw
(Twr_TwrID = Twes_TwrID)
KosztDostawyWartość parametru Negocjowalny koszt dostawy (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – ustawienia e-Sklep
1 – negocjowalny koszt dostawy
2 –stały koszt dostawy
12.Twes_ESklepKalkulacjaDostawWartosc
(Twr_TwrID = Twes_TwrID)
KosztDostawyWartoscWartość kosztu dostawy w przypadku ustawienia stałego kosztu dostawy.
Parametr nie zostanie wypełniony jeśli w kolumnie KosztDostawy ustawiono wartość inną niż 2
13.Twes_ESklepFlaga_Nowosc
(Twr_TwrID = Twes_TwrID)
NowoscFlaga dla atrybutu czasowego Nowość (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 - zaznaczony
14.Twes_ESklepFlaga_Promocja
(Twr_TwrID = Twes_TwrID)
PromocjaFlaga dla atrybutu czasowego Promocja (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 - zaznaczony
15.Twes_ESklepFlaga_ProduktzGazetki
(Twr_TwrID = Twes_TwrID)
GazetkaFlaga dla atrybutu czasowego Produkt z gazetki (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 - zaznaczony
16.Twes_ESklepFlaga_ProduktPolecany
(Twr_TwrID = Twes_TwrID)
PolecanyFlaga dla atrybutu czasowego Produkt polecany (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 - zaznaczony
17.Twes_ESklepFlaga_Wyprzedaz
(Twr_TwrID = Twes_TwrID)
WyprzedazFlaga dla atrybutu czasowego Wyprzedaż (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 - zaznaczony
18.Twes_ESklepFlaga_Nagroda
(Twr_TwrID = Twes_TwrID)
NagrodaFlaga dla atrybutu czasowego Nagroda (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 – zaznaczony
Parametr nie zostanie zaznaczony jeśli w kolumnie ZapytajOCene ustawiono wartość 1
19.Twes_ESklepFlaga_SuperJakosc
(Twr_TwrID = Twes_TwrID)
SuperJakoscFlaga dla atrybutu czasowego Super Jakość (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 - zaznaczony
20.Twes_ESklepFlaga_SuperCena
(Twr_TwrID = Twes_TwrID)
SuperCenaFlaga dla atrybutu czasowego Super Cena (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 - zaznaczony
21.Twes_ESklepFlaga_NajlepiejOceniany
(Twr_TwrID = Twes_TwrID)
NajlepiejOcenianyFlaga dla atrybutu czasowego Najlepiej Oceniany (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 - zaznaczony
22.Twes_ESklepFlaga_RekomendacjaSprzedawcy
(Twr_TwrID = Twes_TwrID)
RekomendacjaFlaga dla atrybutu czasowego Rekomendacja Sprzedawcy (widoczny w oknie Pozycji cennika na zakładce [eHandel]):
0 – niezaznaczony
1 - zaznaczony

Arkusz eHandelJezyki (Tylko dla modułu Handel Plus)

1.Twr_KodKodTowaruKod towaru – pole obowiązkowe
2.TwrJ_JezykID
(Twr_TwrID = TwrJ_TwrID)
JezykIDId języka, wg. kolejności na liście wyboru parametru Język
(formularz języka towaru zakładka e-Sklep/e-Sale)
np.:
1 – polski,
2 – angielski,
3 – niemiecki
3.TwrJ_NazwaNazwaNazwa towaru w języku obcym (Formularz języka towaru zakładka [e-Sklep/e-Sale])
4.TwrJ_OpisOpisOpis towaru w języku obcym (Formularz języka towaru zakładka [e-Sklep/e-Sale])
5.TwrJ_MetaTytulTytulTytuł towaru w języku obcym (Formularz języka towaru zakładka [Pozycjonowanie])
6.TwrJ_LinkLinkLink dla pozycjonowania towaru w języku obcym (Formularz języka towaru zakładka [Pozycjonowanie])
7.TwrJ_MetaSlowaKluczoweSlowaKluczoweSłowa kluczowe dla pozycjonowania towaru w języku obcym (Formularz języka towaru zakładka [Pozycjonowanie])
8.TwrJ_MetaOpisMetaOpisMeta Opis dla pozycjonowania towaru w języku obcym (Formularz języka towaru zakładka [Pozycjonowanie])
9.TwrJ_OpisKrotkiOpisSkroconyOpis skrócony dla pozycjonowania towaru w języku obcym (Formularz języka towaru zakładka [Pozycjonowanie])
10.TwrJ_SzukajSzukajSłowa kluczowe wykorzystywane do wyszukiwania przy pozycjonowaniu towaru w języku obcym (Formularz języka towaru zakładka [Pozycjonowanie])

Arkusz eHandelJednostki

1.Twr_Kod
(Twr_TwrID = TwJZ_TwrID)
KodTowaruKod towaru – pole obowiązkowe
2.TwJZ_JM
(Twr_TwrID = TwJZ_TwrID)
JednostkaPomocniczaNazwa jednostki miary dla eSklep
3.TwJZ_eSklepDomyslna
(Twr_TwrID = TwJZ_TwrID)
DomyslnaParametr określający czy wybrana Jednostka miary jest domyślna dla e-Sklep
0 – niezaznaczony
1 – zaznaczony
W przypadku gdy więcej niż jedna jednostka pomocnicza ma w kolumnie Domyslna ustawioną wartość 1 – jako domyślna zostanie ustawiona jedynie oststnia występująca w arkuszu dla danego towaru.
Uwaga
Wszystkie ceny z arkusza będą traktowane wg ustawień w konfiguracji programu Comarch ERP Optima (Start/Konfiguracja Firmy/ Handel/ Ceny towarów i usług). Jeśli przed importem cena np. Cena hurtowa 2 została usunięta z konfiguracji, wówczas podczas importu pomijana jest Cena hurtowa 2 (rozpoznawane są nazwy).
Jeżeli cena w arkuszu jest ceną netto, dla odpowiedniej ceny w Comarch ERP Optima należy ustawić typ: netto. Jeżeli cena w arkuszu jest ceną brutto, dla odpowiedniej ceny w Comarch ERP Optima należy ustawić typ: brutto. Ustawienie to musi być zrobione przed rozpoczęciem importu. Aby zostały zaimportowane ceny z czterema miejscami po przecinku, w menu Start/Konfiguracja/ Firma/ Handel/ Parametry musi by zaznaczony parametr Ceny z czterema miejscami po przecinku i w arkuszu w kolumnie CenaZCzteremaMiejscami musi być wartość 1. Przy aktualizacji cen (kolejne importy) nie jest podmieniany typ karty cennikowej – towar/ usługa, prosty/ złożony. Przy aktualizacji pól tekstowych np. numeru katalogowego, jeśli pola w arkuszu nie są wypełnione, to wartości w Comarch ERP Optima nie są czyszczone (pozostają takie jak przed aktualizacją).

Pliki do pobrania

OPT078 - Uzgadnianie stanów magazynowych

Data aktualizacji: 28-11-2018

Analizy pomocne przy ustalaniu stanów magazynowych

Stan magazynu wykazywany w menu Handel/Zasoby w kolumnie W. Zakupu-PLN  oraz prezentowany na wydruku Spis z natury jest wynikiem operacji ewidencjonowanych za pomocą dokumentów handlowo-magazynowych. Stan wartościowy magazynu powinien być zgodny ze stanem wynikającym z księgowania dokumentów handlowo-magazynowych. Zazwyczaj stany wykazywane na kontach dotyczą stanów poszczególnych magazynów. Jeśli pojawią się w tym zakresie jakiekolwiek niezgodności, wówczas zalecamy wykonanie wyliczenia stanów magazynowych w oparciu o wszystkie dokumenty, które powodują ruch towaru na magazynie. Analiza stanu magazynowego w module handel w danym okresie czasu opiera się na uzgodnieniu rachunku: stan początkowy + przychody – rozchody = stan końcowy Jeśli stan magazynu w module Handel jest poprawny, następstwa ewentualnych różnic wyliczonych w module Księga Handlowa wynikają najczęściej z tego, że:
  • wykorzystano nieprawidłowe raporty do ustalenia wartości,
  • nie uwzględniono wszystkich typów dokumentów przy wykonywaniu obliczeń,
  • nie zaksięgowano wszystkich dokumentów lub zaksięgowano niewłaściwe kwoty.
Uwaga
Przed porównywaniem jakichkolwiek wyników z księgowością należy doprowadzić do sytuacji, by stan w magazynie był uzgodniony.
Jeśli stan wyliczony w module Handel jest niepoprawny, należy poszukać przyczyn niezgodności. Należy pamiętać przy tym o zasadach:
  • dokumenty magazynowe, przychodowe w buforze nie wprowadzają towaru do magazynu, dlatego nie powinny być uwzględniane w analizie,
  • dokumenty magazynowe, rozchodowe w buforze wydają towar z magazynu, dlatego powinny być uwzględniane w analizie,
  • na listach dokumentów oraz na wydrukach widoczne są dokumenty anulowane, jednak ich wartość nie jest uwzględniania w podsumowaniu,
  • na dokumentach magazynowych mogą wystąpić pozycje o statusie usługi – wpływają one na wartość raportów, natomiast nie wpływają na wartość magazynu. W przypadku, gdy na dokumentach magazynowych występują usługi – wartości otrzymane na raportach należy pomniejszyć o wartość usług z dokumentów,
  • w specyficznych sytuacjach, w analizie należy uwzględnić Faktury Sprzedaży i/lub Paragony z zaznaczoną opcją Pobranie (parametr w Konfiguracji Firmy/ Magazyn/ Inicjacja dokumentów).

Stan początkowy i końcowy

W programie pamiętane są stany magazynowe wstecz, dla każdego towaru odrębnie – na każdy dzień, kiedy występowały transakcje tym towarem. Aby ustalić stan początkowy należy na Liście zasobów określić datę oraz potrzebny magazyn. Do ustalenia wartości mogą służyć dwa wydruki:
  • Spis z natury: wzór standard – każda pozycja magazynowa jest opisana w jednej pozycji zawierającej łączną ilość i wartość towaru na dany dzień.
  • Spis z natury: z podziałem na dostawy – każda pozycja jest rozbita na poszczególne dostawy (zasoby) towaru, które były w magazynie na dany dzień.
Obydwa wydruki powinny dać taką samą wartość towaru w magazynie.

Przychody

Przychody ustalamy na podstawie standardowego wydruku listy dokumentów magazynowych, wydruk ten drukuje dokumenty zgodnie z zadanym na liście filtrem (magazyn, okres itp.). W okresie, jaki obejmują obliczenia nie powinno być dokumentów przychodowych w buforze  – ponieważ tylko dokumenty zatwierdzone wprowadzają towar na magazyn. W analizie powinny być uwzględniane:
  • Lista dokumentów PZ
    • podczas obliczeń należy uwzględniać wartość netto dokumentów,
    • wydruk można porównać z analizą zakupów wg towarów – wartości powinny być zgodne. Jeżeli występują różnice, należy sprawdzić czy na dokumentach nie ma usług, będących przyczyną niezgodności.
  • Lista dokumentów PW
    • dokumenty PW nie mogą zawierać pozycji o statusie usługa, więc wykonywanie analiz porównawczych nie jest konieczne.
  • Lista dokumentów MM przychodowych
    • lista MM zawiera wszystkie dokumenty MM niezależnie od magazynów, których dotyczą oraz kierunku przepływu towarów,
    • w przypadku wyliczania przychodów należy listę wyfiltrować w ten sposób, by magazynem docelowym był magazyn, dla którego przeprowadzamy analizę (magazyn źródłowy: wszystkie, magazyn docelowy: magazyn analizowany),
    • czy istnieją dokumenty MM w buforze – dokumenty takie zdejmują towar z magazynu źródłowego, ale nie wprowadzają na magazyn docelowy.
  • Lista dokumentów PWP
    • analiza listy jest podobna jak w przypadku dokumentów PZ,
    • należy sprawdzić, czy przyjmowane produkty nie mają statusu usługi.
  • Lista dokumentów BO
    • jeśli analiza obejmuje całą bazę danych (wszystkie dokumenty od założenia) – należy uwzględnić dokument BO, który wprowadził towar do magazynu w chwili rozpoczęcia pracy,
    • jeśli na liście występują dokumenty BZM (Bilans Zamknięcia Magazynu) – nie powinny być uwzględniane w obliczeniach. Dokumenty BZM rejestrują jedynie stan magazynu na zadany dzień, jednak nie mają żadnego wpływu na zasoby.

Rozchody

Rozchody ustalamy na podstawie wydruków list dokumentów magazynowych. Dokumenty rozchodowe w buforze zdejmują towar z magazynu (wpływają na stan magazynu), więc powinny być uwzględniane w analizie. W analizie powinny być uwzględniane:
  • Lista dokumentów WZ
    • do analizy należy wykorzystać wydruk Dodatkowe: RKZ. Na wydruku widoczna jest kolumna Koszty, która przedstawia koszt zakupu rozchodowanych towarów z danej transakcji i to właśnie dane z tej kolumny wykorzystujemy do wyliczenia wartości rozchodu,
    • należy sprawdzić, czy na dokumentach nie ma wprowadzonych usług. Dla usług można określić koszt własny, jednak nie wpływa on na wartość magazynu a wpływa na zwiększenie kosztu transakcji, stąd mogą wynikać rozbieżności pomiędzy wartością wyliczoną z Listy zasobów a wyliczeniem z poziomu RKZ. Na RKZ w wartości transakcji będzie uwzględniony koszt usługi. Domyślnie koszt jest wyliczany na podstawie danych z karty usługi (zakładka [Dodatkowe]), istnieje też możliwość ręcznego wprowadzenia kosztu zakupu w momencie tworzenia dokumentu, z poziomu zakładki Szczegóły na oknie Podglądu pozycji danej usługi,
    • do porównania może służyć analiza WZ wg towarów (na analizie nie ma podanej wartości w cenach zakupu, jednak jest wartość netto obrotu i marża),
    • do analizy nie należy wykorzystywać listy Faktur Sprzedaży, ponieważ nie są tam uwzględniane dokumenty WZKK!
  • Lista dokumentów RW
    • na dokumencie RW w specyficznej sytuacji mogą wystąpić usługi. Jeżeli składnikiem usługi złożonej wskazanej na FA/PA jest inna usługa, wówczas podczas generowania dokumentów magazynowych zostanie ona przeniesiona na dokument RW (dotyczy to usług złożonych z zaznaczonym parametrem Pobieranie składników na FA/PA). W przypadku, gdy na usłudze określony został koszt zakupu, wartość wyliczona z listy RW powoduje niezgodność pomiędzy wartością wyliczoną z poziomu Listy zasobów.
  • Lista dokumentów MM rozchodowych
    • w przypadku wyliczania przychodów należy listę wyfiltrować w ten sposób, by magazynem źródłowym był magazyn, dla którego przeprowadzamy analizę (magazyn źródłowy: magazyn analizowany, magazyn docelowy: wszystkie).
  • Lista dokumentów RWS
    • dokumenty RWS są tworzone automatycznie na podstawie dokumentów produkcyjnych PWP,
    • jeśli występują dokumenty w buforze, oznacza to, że skojarzone z nim dokumenty PWP również zostały zapisane do bufora. PWP w buforze nie wprowadzają towaru złożonego na magazyn, natomiast istotne jest odnalezienie powiązanego dokumentu PWP w buforze i zweryfikowanie parametrów określających sposób zachowania się składników (pobranie/ rezerwacja). Na dokumencie PWP można zaznaczyć, czy składniki mają być pobierane czy rezerwowane. Jeśli pobierane – dokument RWS w buforze powinien być uwzględniony w analizie, jeśli rezerwowane – dokument RWS należy pominąć w trakcie analizy,
    • jeśli dokument RWS jest zapisany na trwałe – zawsze zdejmuje towar z magazynu i powinien być uwzględniony w analizie,
    • należy sprawdzić, czy pobrane składniki nie mają statusu usługi – można do tego wykorzystać analizę RWS wg towarów.
  • Faktury/ Paragony z pobraniem
    • Standardowo Faktura Sprzedaży/ Paragon nie wydaje towaru z magazynu. Wydanie następuje dopiero po przekształceniu do dokumentu magazynowego WZ/RW. Natomiast istnieje możliwość takiego skonfigurowania programu, żeby FA/PA działały analogicznie jak dokumenty magazynowe i wydawały towar z magazynu. W Konfiguracji Firmy/ Magazyn/ Inicjacja dokumentów można wybrać opcję rezerwacja lub pobranie. W przypadku wybranego pobrania, taki dokument FA/PA należy traktować podobnie jak WZ i uwzględniać w analizach. Należy jednak pamiętać, że raport RKZ generowany z listy dokumentów FA/ PA różni się od RKZ wyliczanego z listy dokumentów WZ. Podstawowe różnice zostały opisane w FAQ.

Opakowania kaucjonowane

W przypadku, gdy firma obsługuje opakowania kaucjonowane należy to również uwzględnić podczas analizy bazy danych. Jeśli analiza ma obejmować opakowania:
  • Spis z natury powinien obejmować opakowania (zaznaczony parametr: Opakowania na Liście Zasobów),
  • dodatkowo uwzględnić dokumenty kaucyjne PKA i WKA, zgodnie z zasadami obowiązującymi dla WZ/PZ.
Jeśli analiza ma dotyczyć tylko towarów handlowych należy:
  • Spis z natury wykonać bez uwzględniania opakowań (parametr: Opakowania na Liście Zasobów odznaczony),
  • nie uwzględniać dokumentów kaucjonowanych WKA i PKA, należy przy tym pamiętać, że opakowania kaucjonowane mogą być powiązane z FA/PA z pobraniem i wtedy nie powodują powstania dokumentu PKA/WKA, natomiast ściągają towar z magazynu i powiększają wartość transakcji,
  • należy pamiętać, że towary kaucjonowane mogą się pojawić jako zwykłe elementy dokumentów magazynowych – mają więc wpływ na wartość poszczególnych raportów, natomiast nie są uwzględniane na spisie z natury,
  • z analizy przychodów i rozchodów wyeliminować wartości związane z opakowaniami kaucjonowanymi (podobnie jak usługi).

Przyczyny niezgodności

W przypadku wystąpienia niezgodności należy dodatkowo sprawdzić:
  • Czy wartości są pobrane z prawidłowych wydruków.
  • Czy na wydrukach Spisu z natury są uwzględnione zarówno towary proste jak i złożone.
  • Czy w bazie nie ma towarów oznaczonych jako nieaktywne, ze stanem różnym od zera.
  • Czy na wszystkich wydrukach są uwzględnione takie same magazyny (istotne w przypadku firm, które na jednej bazie prowadzą kilka magazynów).
  • Jeśli księgowane są dokumenty handlowe bez magazynowych – należy sprawdzić, czy wszystkie dokumenty handlowe zostały przekształcone do dokumentów magazynowych.
  • Czy istnieją FA/PA bez WZ z zaznaczoną opcją pobranie – pobierają towar z magazynu, ale nie są uwzględniane na raportach RKZ tworzonych z listy WZ.
  • Czy w firmie są obsługiwane kaucje i w jaki sposób są uwzględniane w analizie.
  • Czy wszystkie dokumenty zostały prawidłowo zaksięgowane.
W poszukiwaniu dokumentów, które powodują niezgodność, rozpoczynamy od ustalenia określonego przedziału dat. Stopniowo zawężamy zakres dat, tak aby znaleźć konkretne dokumenty, które powodują niezgodności. Należy też zwrócić uwagę na poprawny wybór dat przy filtrowaniu. Skutek magazynowy dla dokumentów WZ/PZ następuje w oparciu o datę wydania/przyjęcia, data ta na listach dokumentów WZ/PZ widnieje pod nazwą data operacji. Dokument WZ/PZ może być wystawiony z inną data niż data wydania/przyjęcia, dlatego przy poszukiwaniu niezgodności na listach należy wziąć pod uwagę możliwość wystąpienia rozbieżności tych dat.
 

OPT032 - Handlowy dokument identyfikacyjny

Data aktualizacji: 20-11-2019

Wstęp

29 czerwca 2003 weszło w życie Rozporządzenie Ministra Rolnictwa i Rozwoju Wsi (Dz. U. nr 106, poz. 1000), w którym podany został wzór handlowego dokumentu identyfikacyjnego (HDI) obowiązujący w obrocie niektórymi artykułami spożywczymi pochodzenia zwierzęcego. Na podstawie tego rozporządzenia mięso rozebrane oraz jego przetwory, podobnie jak inne produkty wymienione w rozporządzeniu, zaopatrywane będą w handlowy dokument identyfikacyjny wystawiany przez firmę wprowadzającą na rynek środki spożywcze pochodzenia zwierzęcego. W Comarch ERP Optima dokument HDI można wydrukować z poziomu formularza faktury. W tym celu należy do wydruków użytkownika podłączyć wydruk załączony do tego biuletynu.
Uwaga
Wydruk dokumentu HDI odbywa się przy pomocy Generatora Raportów.

Handlowy dokument identyfikacyjny – dane o towarze

Aby na dokumencie HDI wydrukowane zostały informacje dotyczące towarów pobranych na Fakturę Sprzedaży, należy najpierw uzupełnić dane na karcie towaru. Niezbędne parametry to:
  • nazwa towaru
  • opis towaru (obligatoryjny)
  • jednostka miary (powinna być to jednostka wagowa np. kg)
  • jednostka pomocnicza (jednostka opakowania zbiorczego)
  • ilość jednostek podstawowych w opakowaniu zbiorczym
Dane pobierane bezpośrednio z Faktury Sprzedaży:
  • nazwa i adres wysyłającego (dane adresowe z Pieczątki Firmy)
  • numer faktury, do której drukowany jest dokument HDI
  • data wysyłki (data wystawienia faktury)
  • ilość towaru
Uwaga
Na dokument HDI nie są przenoszone pozycje, które na karcie towaru mają zdefiniowany typ usługa.

Handlowy dokument identyfikacyjny – wydruk

Po wybraniu opcji wydruku HDI pojawia się dodatkowe okno, w którym należy wprowadzić dane, które wymagane są na dokumencie HDI, a nie ma ich na Fakturze Sprzedaży:
  • numer dokumentu HDI
  • weterynaryjny numer identyfikacyjny zakładu
  • rynek, na który zakład został zakwalifikowany do prowadzenia sprzedaży. Po wyborze opcji inne państwa pojawia się dodatkowe pole, gdzie należy wprowadzić rynki sprzedaży innych państw
  • pochodzenie surowca
  • miejsce pozyskania, przetworzenia lub składowania
  • miejsce przeznaczenia
  • rodzaj transportu i jego numer identyfikacyjny
  • komentarz – dane dotyczące procesu technologicznego, norm jakościowych i produkcyjnych oraz stosowanych przez producenta systemów kontroli jakości
Wprowadzone dane są zapamiętywane i podpowiadają się podczas wykonywania kolejnego wydruku HDI.

Handlowy dokument identyfikacyjny – podłączenie wydruku do Comarch ERP Optima

W załączniku znajduje się przykładowy wydruk dokumentu HDI. Wydruk należy podpiąć na formularzu Faktury Sprzedaży (patrz Rysunek 1, poniżej). W konfiguracji wydruków Formularz Faktury Sprzedaży, zakładka [Ogólne] importujemy definicję z pliku HDI.xml.

Rysunek 1. Import wydruku HDI.

Pliki do pobrania

Księgowość

OPT039 Internetowa Wymiana Danych z Klientem Comarch ERP XT / Comarch Moje BR

Data aktualizacji: 19-09-2023

Jak uruchomić Internetową Wymianę Dokumentów?

Krok 1 – Zarejestruj biuro na portalu iksiegowosc24.pl i skonfiguruj program Comarch ERP Optima do internetowej wymiany dokumentów

Biuro Rachunkowe, które chce wymieniać dokumenty ze swoimi Klientami rejestruje się na stronie: https://www.iksiegowosc24.pl/rejestracja wybierając dowolny pakiet iKsięgowość24. Po rejestracji w Comarch ERP Optima w menu Start/Konfiguracja/ Program/ Ogólne/ Internetowa Wymiana Dokumentów należy zaznaczyć parametr Aktywuj wymianę danych przez serwer Comarch i uzupełnić wymagane pola:
  • Numer Klienta (ID) – numer identyfikacyjny Comarch Biura Rachunkowego (widoczny na certyfikacie rejestracji oprogramowania),
  • PIN – numer PIN Biura Rachunkowego (widoczny na certyfikacie rejestracji oprogramowania),
  • Ustaw hasło – pole uzupełniamy dowolnym własnym hasłem. Hasło należy zapamiętać, ponieważ będzie wymagane przy jakiejkolwiek zmianie ustawień konta na serwerze Comarch,
  • Potwierdź hasło.
Zapisując wprowadzone dane, biuro aktywuje konto Internetowej Wymiany Danych.
Uwaga
Przed opuszczeniem formularza zwróć uwagę, czy ustawiony jest oddział. Oddział o symbolu Centrala ustawiany jest automatycznie. Zmiana oddziału możliwa jest po kliknięciu w Zarządzanie Oddziałami.
Wskazówka
W sytuacji gdy hasło zostanie utracone, jego reset możliwy jest po zalogowaniu do www.iksiegowosc24.pl w zakładce Konto.

Krok 2 – Poproś Klienta aby utworzył konto w aplikacji Comarch ERP XT lub Comarch Moje BR

Klient, jeśli chce wymieniać dokumenty z biurem to powinien utworzyć konto do prowadzenia swojej firmy w aplikacji Comarch ERP XT lub Comarch Moje BR. Do wykonania kolejnych kroków Biuro Rachunkowe będzie potrzebować adresu e-mail, na który utworzono konto oraz NIP Klienta.

Krok 3 – Dodaj Klienta w programie i rozpocznijcie elektroniczną wyminę dokumentów

W sekcji iKsięgowość24 po kliknięciu w ikonkę Klienci biura wypełnij formularz dodawania nowego Klienta, z którym będziesz prowadził wymianę dokumentów.
Uwaga
Dodawanie klientów biura jest możliwe przez operatora, który na karcie będzie miał zaznaczony parametr: Prawo do przeglądania i dodawania klientów.
Sekcja iksiegowość24 widoczna jest w menu: Rejestry VAT, w Kasa/Bank, jak również w Preliminarzu płatności i na liście dokumentów w rejestrze VAT. Zalogowany operator otrzyma listę Klientów biura rachunkowego – tą samą, która widoczna jest również na portalu iKsiegowosc24.pl na zakładce Moi Klienci. Na formularzu uzupełnij NIP i e-mail Klienta, na które założył konto w Comarch ERP XT lub Comarch Moje BR. Po zapisaniu formularza na adres mailowy osoby kontaktowej Biura Rachunkowego oraz Klienta wysyłana jest wiadomość informująca o zgłoszeniu do Internetowej Wymiany Dokumentów dla Klienta.
Uwaga
Po otrzymaniu potwierdzenia o realizacji zamówienia na konto Internetowej wymiany Danych z klientem odczekaj chwilę (do 15 minut) i rozpocznij wymianę.
Wymiana danych z klientem możliwa jest z poziomu programu Comarch ERP Optima po wejściu do firmy, do której będą importowane dokumenty Klienta. W menu: Rejestry VAT oraz Kasa/Bank, jak również w Preliminarzu płatności i na liście dokumentów w rejestrze VAT dostępna jest sekcja Wymiana danych. Sekcja zawiera trzy opcje: Wyślij dane, Odbierz dane i Historia wymiany. Wybór jednej z wymienionych opcji spowoduje automatyczną konfigurację Internetowej Wymiany Danych z Klientem oraz uruchomi procedurę wymiany Wysyłanie i odbieranie możliwe jest również z poziomu Narzędzia/ Praca rozproszona/ Eksport/Import. Biuro rachunkowe może zweryfikować konfigurację z Klientem w menu Start/Konfiguracja/ Program/ Ogólne/ Internetowa Wymiana Dokumentów na zakładce Klienci.
Wskazówka
Gdy operator posiada nadane uprawnienia, a nie korzystał wcześniej z tej możliwości to po kliknięciu w ikonę Klienci biura pojawi się okno logowania do panelu biura na www.iksiegowosc24.pl. Po wprowadzeniu poprawnych danych logowania (tych samych, które używane są na stronie iksiegowość24.pl) wpisany e-mail zostanie zapamiętywany na karcie operatora na zakładce [Ogólne] w sekcji Comarch Cloud w polu e-mail.
Uwaga
W menu Start/Konfiguracja/ Stanowisko/ Praca rozproszona/ Parametry Biuro Rachunkowe wskazuje dowolny folder na dysku, w którym będą przechowywane pliki z wymienianymi dokumentami.

Jak wysyłać i odbierać dokumenty?

Wymiana dokumentów w Comarch ERP XT

Klient pracujący na Comarch ERP XT w dowolnym momencie (np. po zakończeniu miesiąca) przesyła dokumenty do Biura Rachunkowego przyciskiem Wyślij dane do księgowego, który znajduje się na pulpicie aplikacji. W oknie wysyłki Klient wskazuje okres, z którego zostaną przekazane dokumenty. Może również skorzystać z dodatkowej opcji ponownego wysłania wszystkich dokumentów, gdyby pojawiła się taka potrzeba. Szczegółowy opis dostępny Tutaj. Szczegółowy opis informacji o podatkach i opłatach, jakie Klient może odbierać z Biura Rachunkowego, znajduje się Tutaj .

Wymiana dokumentów w Comarch Moje BR

Klient pracujący na Comarch Moje BR na pulpicie swojej aplikacji przed wysyłką pierwszego dokumentu otrzyma komunikat o konieczności potwierdzenia współpracy z Biurem Rachunkowym. Więcej informacji o tym jak rozpocząć współpracę z biurem rachunkowym znajduje się Tutaj.

  Po zaakceptowaniu zostaje uruchomiona automatyczna wymiana danych. Do Biura Rachunkowego od tego momentu przesyłane są:
  • faktury sprzedaży, które zostały zatwierdzone przez Klienta,
  • dokumenty kosztowe, które zostały wprowadzone do aplikacji i wysłane przez Klienta.

Szczegółowy opis informacji o podatkach i opłatach, jakie Klient może odbierać z Biura Rachunkowego, znajduje się tutaj .

Wymiana dokumentów w Comarch ERP Optima

Wysyłanie i odbieranie dokumentów przez Klienta możliwe jest po aktywowaniu przez niego konta Internetowej Wymiany Dokumentów. Klient loguje się u siebie w programie Comarch ERP Optima i w menu Start/Konfiguracja/ Program/ Ogólne/ Internetowa Wymiana Dokumentów na zakładce Konfiguracja zaznacza Aktywuj wymianę danych przez serwer Comarch. Następnie na oknie Podaj dane uzupełnia pola:
  • Numer Klienta (ID) – numer ewidencyjny Comarch (widoczny na certyfikacie rejestracji oprogramowania),
  • PIN – numer PIN klienta (widoczny na certyfikacie rejestracji oprogramowania),
  • Ustaw hasło – pole uzupełnia dowolnym własnym hasłem. Hasło należy zapamiętać, ponieważ będzie wymagane przy jakiejkolwiek zmianie ustawień konta do Internetowej Wymiany Dokumentów.
  • Potwierdź hasło.
  Oddział o symbolu Centrala ustawiany jest automatycznie. Zmiana oddziału możliwa jest po kliknięciu w Zarządzanie Oddziałami. Zapisując wprowadzone dane Klient aktywuje swoje konto do Internetowej Wymiany Dokumentów. Wymiana dokumentów będzie możliwa z poziomu bazy w menu: Rejestry VAT oraz Kasa/Bank, jak również w Preliminarzu płatności i na liście dokumentów w rejestrze VAT dostępna jest sekcja Wymiana danych. Sekcja zawiera trzy batony: Wyślij dane, Odbierz dane i Historia wymiany. Wybór jednej z wymienionych opcji spowoduje automatyczną konfigurację Internetowej Wymiany Dokumentów z Klientem oraz uruchomi procedurę wymiany. Wysyłanie i odbieranie możliwe jest również z poziomu Narzędzia/ Praca rozproszona/ Eksport/Import.

Wysyłka/ Odbiór dokumentów w Biurze rachunkowym

Wskazówka
Aby przesyłać informacje o podatkach i fakturach za usługi Biura, zaznacz na oknie eksportu pozycje: Faktury za usługi księgowe i Płatności do deklaracji.
  • Płatności do deklaracji będą zawierały informacje o podatku VAT, PIT i składkach ZUS.
  • Faktury za usługi księgowe będą eksportowały dokumenty z rejestru zakupu VAT, które mają przypisany atrybut FAKTURA ZA USŁUGI BR z wartością „Tak”.
Szczegółowy opis funkcjonalności znajduje się tutaj .
Biura Rachunkowe w module Comarch ERP Optima Biuro Rachunkowe mogą seryjnie odbierać dokumenty wysłane przez Klientów. W programie Comarch ERP Optima jest możliwość ustawienia automatycznego eksportu i importu danych. Zobacz tę funkcję na filmie  

FAQ - najczęściej zadawane pytania

Co to jest Internetowa Wymiana Dokumentów?

Internetowa Wymiana Dokumentów to model współpracy pomiędzy Biurem rachunkowym a jego Klientem. Klient Biura może pracować na programie Comarch ERP XT, Comarch Moje BR lub Comarch ERP Optima. Biuro Rachunkowe pracuje natomiast na rozwiązaniu Comarch ERP Optima w wersji dla Biur Rachunkowych. Współpraca polega na tym, że Klient wysyła zaszyfrowane i podpisane dokumenty. Wymiana odbywa się elektronicznie poprzez Internet. Dokumenty w postaci zaszyfrowanej paczki trafiają na serwery Comarch skąd Biuro rachunkowe również przez Internet odbiera je i wczytuje do bazy. Biuro może również przesyłać dane do bazy Klienta.

W jaki sposób zabezpieczone są przesyłane dane?

Główne cechy zastosowanego rozwiązania:
  • bezpieczeństwo danych – system został tak zaprojektowany, aby zapewnić jak największe bezpieczeństwo przesyłanych danych,
  • poufność danych – uzyskiwana jest dzięki podwójnemu systemowi szyfrowania (paczki danych są szyfrowane/deszyfrowane asymetrycznie parą kluczy RSA oraz przesyłane szyfrowanym kluczem symetrycznym protokołem opartym o TLS 1.2 / SSL 3.0),
  • integralność danych – jest zapewniona dzięki zastosowaniu podpisu elektronicznego (paczki są podpisywane kluczem prywatnym strony wysyłającej) i strona odbierająca ma pewność, że dane nie zostały zmodyfikowane,
  • zabezpieczenia serwera – (takie jak wymuszanie haseł, czy szyfrowanie całej transmisji uniemożliwiające przechwycenie hasła) uniemożliwiają nieautoryzowane usuwanie danych z serwera oraz wysyłanie na serwer.

Nie można dokonać autoryzacji na serwerze Comarch.

Nie można dokonać autoryzacji na serwerze Comarch
Komunikat pojawia się w sytuacji, gdy dane podane przy aktywacji konta Internetowej Wymiany Dokumentów w Start/Konfiguracja/ Program/ Ogólne/  Internetowa Wymiana Dokumentów są nieprawidłowe lub brak połączenia z serwerem. Biuro powinno sprawdzić wprowadzone dane: Numer Klienta (ID), PIN oraz połączenie z Internetem. Komunikat pojawia się także w przypadku, gdy przy zapisywaniu zmian w ustawieniach Internetowej Wymiany Dokumentów zostanie wprowadzone inne hasło, niż ustawione przy aktywacji konta. Biura Rachunkowe mogą dokonać resetu hasła po zalogowaniu na www.iksiegowosc24.pl w zakładce Konto.  

Konto o ID [ID Klienta] nie istnieje.

Konto o ID [ID Klienta] nie istnieje.
Ostrzeżenie pojawia się w sytuacji gdy Biuro Rachunkowe w Start/Konfiguracja/ Program/ Ogólne/Internetowa Wymiana Dokumentów w kolumnie Numer Klienta (ID), z którym wymieniam dane wpisuje numer Klienta, który:
  • nie ma konta lub nie został zgłoszony do Internetowej Wymiany Dokumentów
  • nie aktywował konta IWD na swojej instalacji programu (dotyczy klientów pracujących w programie Comarch ERP Optima)

Błąd przy imporcie paczki. Wiadomość została zaszyfrowana innym kluczem niż aktualnie posiadany. Usuń oczekujące paczki i wyślij je ponownie.

Błąd przy imporcie paczki. Wiadomość została zaszyfrowana innym kluczem niż aktualnie posiadany. Usuń oczekujące paczki i wyślij je ponownie.
Komunikat pojawia się w Narzędzia/ Praca rozproszona/ Import w sytuacji, gdy obecnie posiadany przez Biuro certyfikat jest inny od tego, obowiązującego w momencie wysyłki dokumentów przez Klienta. Wysłanej na inny certyfikat paczki z dokumentami nie będzie można już odebrać i należy ją usunąć z Narzędzia/ Skrzynka IWD. Klient powinien wysłać paczkę ponownie. Jeśli podczas importu nowej paczki z dokumentami pojawi się ten sam komunikat, należy odświeżyć certyfikat w Start/Konfiguracja/ Program/ Ogólne/ Internetowa Wymiana Dokumentów za pomocą przycisku Odnowienie certyfikatu.  

Konto Klienta Comarch ERP XT pracuje w trybie testowym

Sprawdź, co może być powodem na stronie https://pomoc.erpxt.pl/dokumentacja/komunikat-o-koncie-testowym-dla-uzytkownika-iwd/

Konfiguracja wymiany z Klientem jest niekompletna. Wymagane jest uzupełnienie zgłoszenia Klienta do Internetowej Wymiany Dokumentów. Czy chcesz to zrobić teraz?

Pytanie pojawi się, gdy Klient biura nie będzie miał konta Internetowej Wymiany Dokumentów. Wybierając Tak operator zostanie przekierowany do listy Klientów biura w celu złożenia zamówienia na konto dla Klienta. Wybierając Nie – okno zostanie zamknięte.

OPT043 Zaawansowane schematy księgowe

Data aktualizacji: 16-11-2023

Spis treści

1. Jak można odwoływać się do danych w bazie na poszczególnych elementach schematu?

W polach w nagłówku/pozycjach schematu oprócz standardowo dostępnych makr można odwoływać się do danych w bazie w następujący sposób: Data księgowania - bezpośrednie odwołania do pola w bazie danych, skalarne funkcje serwerowe, Konto Wn/Ma - bezpośrednie odwołania do pola w bazie danych, skalarne funkcje serwerowe, Kwota - bezpośrednie odwołania do pola w bazie danych, wyrażenia SQL (np. CASE), skalarne funkcje serwerowe, Opis - bezpośrednie odwołania do pola w bazie danych, wyrażenia SQL (np. CASE), skalarne funkcje serwerowe, Warunek - bezpośrednie odwołania do pola w bazie danych, zapytania SQL, skalarne funkcje serwerowe.

1. Jakich operatorów logicznych mogę używać w warunku w schemacie księgowym?

Warunek wpisany w schemacie księgowym jest „tłumaczony” na zapytanie SQL poprzez zastąpienie makr (symboli zaczynających się od znaku @) na odwołanie do kolumn bądź funkcji serwerowych. Poszczególne odwołania można łączyć zgodnie z syntaktyką T-SQL – dotyczy to zarówno operatorów porównania (=, >, <, <>, LIKE) jak i operatorów łączących wyrażenia (AND, OR). Dodatkowo możliwe jest używanie funkcji serwerowych. Przykładowo poprawny jest warunek @KategoriaElem LIKE 'POZOST%' OR @KategoriaNag = 'SPR' AND SUBSTRING(@KategoriaElem, 5, 3)= 'TOW'

2. Jak sobie poradzić gdy długi warunek, zawierający wiele kategorii, nie mieści się w schemacie?

W warunku zamiast wersji dłuższej np. @KodPodmiotu='ALA' AND ( @KategoriaElem='MATERIAŁY' OR @KategoriaElem='TOWARY' OR @KategoriaElem='INNE') można użyć operatora serwerowego IN: @KodPodmiotu='ALA' AND @KategoriaElem IN ('MATERIAŁY', 'TOWARY', 'INNE')

3. Czy księgując Fakturę Sprzedaży, można na konto pozabilansowe zaksięgować ilość sprzedanego towaru?

Ilość towaru jest zapisana w tabeli TraElem, żeby zaksięgować liczbę, która znajduje się w tabeli, ale nie istnieje odpowiadające jej makro (tzn. nie można wybrać np. @Ilosc), trzeba w schemacie księgowym odwołać się bezpośrednio do nazwy pola w tabeli. Żeby na jakimś koncie pozabilansowym wyksięgować z faktury ilość sprzedanego towaru, w polu Kwota należy odwołać się do pola TrE_Ilosc. Ze względu jednak na optymalizację parsera analizującego schemat księgowy i "tłumaczącego" go na zapytanie SQL konieczne jest użycie w definicji kwoty przynajmniej jednego makra (tzn. pola zaczynającego się od '@') lub definicja musi rozpoczynać się od znaku apostrofu (‘). Dodatkowo trzeba „zmusić” automat księgujący, żeby użył tabeli TraElem (automat księgujący nie wie, że TrE_Ilosc jest kolumną w tabeli TraElem, więc nie użyje jej automatycznie). W tym celu w definicji kwoty można wpisać np. @PozNetto - @PozNetto + TrE_Ilosc @PozNetto - @PozNetto i tak dadzą w wyniku 0. Makro @PozNetto odwołuje się do pozycji faktury (a więc do tabeli TraElem), więc mamy pewność, że zapytanie zostanie zbudowane poprawnie. Drugą możliwością jest wpisanie: '0' + TrE_Ilosc ’0’ zostanie automatycznie przekonwertowane na liczbę 0 i nie zaburzy wyniku. W tym przypadku trzeba jeszcze „zmusić” automat księgujący, żeby użył tabeli TraElem. W tym celu w pozycji schematu księgowego należy użyć jakiegokolwiek parametru bądź makra odwołującego się do pozycji faktury, np.:
  • zaznaczyć Podział na kategorie
  • lub Podział na słowniki – Towary
  • lub w opisie (bądź w warunku) odwołać się do kategorii pozycji (@KategoriaElem lub @KategoriaOgolnaElem) lub do towaru (@NazwaTowaru)

4. Czy księgując Fakturę Sprzedaży w opisie pozycji dekretu mogę umieścić informację o stawce VAT, jakiej dotyczyła dana pozycja?

Tak, w przypadku opisu jest podobnie jak w przypadku kwoty - można odwołać się do pola (pól) z tabeli, z zastrzeżeniem, co do użycia co najmniej jednego makra i wymuszenia użycia tabeli TraElem. W definicji kwoty używamy np. makra @PozNetto (ponieważ @PozNetto jest to wartość netto, pozycji faktury, to automatycznie mamy zapewnione, że zostanie użyta tabela TraElem) Informacja o stawce Vat jest zapisywana w polach:
  • TrE_Flaga – mówi o tym, czy jest to stawka zwykła (2), zaniżona (3), zwolniona (1), czy nie podlega (4)
  • TrE_Stawka – zawiera wysokość stawki Vat
W definicji opisu pozycji można by więc użyć wyrażenia: @NumerPelny + ': stawka Vat ' + Case TrE_Flaga When 1 Then 'ZW' When 4 Then 'NP' Else STR(TrE_Stawka,5,2) End Spowoduje to wstawienie w dekrecie w polu Opis numeru dokumentu uzupełnionego o stawkę Vat - oczywiście zostanie wygenerowanych tyle pozycji, ile różnych stawek Vat jest na dokumencie.

5. Czy w schemacie księgowym Faktury Sprzedaży mogę w warunku użyć grupy, do której należy sprzedany towar?

Grupa towarowa znajduje się w tabeli Towary (pole Twr_Grupa) – przy czym nie możemy odwołać się do pola Twr_Grupa w taki sposób jak to opisywano poprzednio, ponieważ obecnie żadne makro nie odwołuje się do tabeli Towary (a więc nie ma możliwości w schemacie księgowym połączenia się z tą tabelą). Możemy to natomiast zrobić za pomocą funkcji serwerowej. W tym celu tworzymy funkcję MojaFunkcja_GrupaTowaru – należy poniższy skrypt wykonać za pomocą Query Analyzera lub OSQL-a. Jeżeli teraz chcemy zaksięgować warunkowo sprzedaż towarów z grupy 'AKCESORIA', w warunku wpisujemy wyrażenie: 'AKCESORIA' = dbo.MojaFunkcja_GrupaTowaru (TrE_TwrId)

Oczywiście funkcje mogą być znacznie bardziej skomplikowane, można ich używać zarówno w definicjach warunków, opisów jak i kwot (w ostatnim przypadku funkcja powinna zwracać typ NUMERIC). Podobnie jak w przypadku używania pól z tabel, używając funkcji należy pamiętać o tym, żeby wyrażenie zawierało co najmniej jedno makro, lub zaczynało się od znaku ' (apostrof).

Uwaga
Aby zaksięgować towar w zależności od grupy domyślnej, do której należy (na pierwszej zakładce karty cennika) należy funkcję skonstruować w poniższy sposób: If Exists ( Select * From sysobjects Where name = 'MojaFunkcja_GrupaTowaru' And xtype='FN') Drop Function dbo.MojaFunkcja_GrupaTowaru GO create Function dbo.MojaFunkcja_GrupaTowaru (@TwrId INT) Returns VarChar(20) As Begin Declare @Grupa VarChar(20) select @grupa = twg_kod from cdn.twrgrupy join cdn.towary on twr_twggidnumer = twg_gidnumer AND twg_gidtyp = -16 where twr_twrid = @twrid Return @Grupa End
Uwaga
Aby zaksięgować towar pod warunkiem, że towar należy do grupy podrzędnej należy nieco inaczej zbudować funkcję. If Exists ( Select * From sysobjects Where name = 'MojaFunkcja_GrupaTowaru' And xtype='FN' ) Drop Function dbo.MojaFunkcja_GrupaTowaru GO create Function dbo.MojaFunkcja_GrupaTowaru (@TwrId INT) Returns VarChar(20) As Begin Declare @Grupa VarChar(20) select @grupa = A.twg_kod from cdn.twrgrupy  A join cdn.twrgrupy B on A.twg_gidnumer = B.twg_gronumer join cdn.towary C on C.twr_twggidnumer = B.twg_gidnumer AND C.twr_twggidnumer <> A.twg_gidnumer where B.twg_gidtyp = -16 and A.twg_gidtyp <> 16 and c. twr_twrid = @twrid Return @Grupa End

6. Czy w schemacie księgowym mogę ustawić warunek na sprawdzanie istnienia lub nie kwot dodatkowych na dokumencie?

Można w warunku sprawdzić, czy istnieją kwoty dodatkowe, z tym, że korzystamy tu z pewnych funkcji pozastandardowych. Niestety już w kilku przypadkach okazało się, że korzystanie z tego typu funkcji po zmianie wersji Comarch ERP Optima wymagało drobnych korekt w schematach księgowych. Raporty kasowe/bankowe Jeśli chcemy zaksięgować dokument, na którym NIE ISTNIEJĄ podpięte kwoty dodatkowe, w warunku należy wpisać: '1'='1' AND NOT EXISTS (Select * FROM CDN.KwotyDodatkowe Where KDD_DokumentTyp=14 And KDD_DokumentId=BZp_BZpId) Jeśli chcemy zaksięgować dokument, na którym ISTNIEJĄ podpięte kwoty dodatkowe (przy czym chodzi o księgowanie kwot przychód/rozchód, a nie kwot dodatkowych), w warunku należy wpisać: '1'='1' AND EXISTS (Select * FROM CDN.KwotyDodatkowe Where KDD_DokumentTyp=14 And KDD_DokumentId=BZp_BZpId) Rejestry VAT Jeśli chcemy zaksięgować dokument, na którym NIE ISTNIEJĄ podpięte kwoty dodatkowe, w warunku należy wpisać: '1'='1' AND NOT EXISTS (Select * FROM CDN.KwotyDodatkowe Where KDD_DokumentTyp=2 And KDD_DokumentId=van_vanId) Jeśli chcemy zaksięgować dokument, na którym ISTNIEJĄ podpięte kwoty dodatkowe, w warunku należy wpisać: '1'='1' AND EXISTS (Select * FROM CDN.KwotyDodatkowe Where KDD_DokumentTyp=2 And KDD_DokumentId=van_vanId)

7. Czy w schemacie do zaksięgowania listy płac można zastosować warunek do zaksięgowania wszystkich zasiłków w jednej kwocie (zasiłku rodzinnego, pielęgnacyjny, chorobowy...)?

Przy tworzeniu warunku można skorzystać z makra: @TypWyplaty LIKE 'zas%'

8. W poniższym schemacie księgowania dokumentu PZ z ewidencji dodatkowej występuję błąd księgowania: dokument niezbilansowany. Różnica 0,01 zł wynika z zaokrągleń. Jak sobie z nimi poradzić?

Schemat pierwotny:
Konto WnKonto MaKwotaOpis
zwykłe1(@RazemKwota+@RazemKwota*0.32)*1.23cena brutto z marżą i VAT
zwykłe2@RazemKwotacena netto
zwykłe3@RazemKwota*0.32marża
zwykłe4(@RazemKwota+@RazemKwota*0.32)*0.23VAT

Kwota na dokumencie: 1669,06 zł. (@RazemKwota)

Rozwiązania są dwa: 1.Zastosować w schemacie podwójne dekrety:
Konto WnKonto MaKwotaOpis
zwykłe1zwykłe2@RazemKwotacena netto
zwykłe1zwykłe3@RazemKwota*0.32marża
zwykłe1zwykłe4(@RazemKwota+@RazemKwota*0.32)*0.23VAT

2. Zastosować następujące makra w schematach:

Konto WnKonto MaKwotaOpis
zwykłe1ROUND(@RazemKwota*1.32,2)*1.23cena bto z marżą i VAT
zwykłe2@RazemKwotacena netto
zwykłe3@RazemKwota*0.32marża
zwykłe4ROUND(@RazemKwota*1.32,2)*0.23VAT

9. Jak można zaksięgować wartość zakupu z rej. VAT przeniesioną za pomocą pliku COMMA?

Należy w pozycji Kwota wpisać: '0'+VaN_WartoscZak

10. Jak można podczas księgowania faktury sprzedaży odwołać się do wartości zakupu dla całego dokumentu?

Należy na pozycji schematu księgowego w polu Kwota wpisać: '0'+TrN_WartoscZakupu

11. Jak uzależnić księgowanie dokumentów z ewidencji dodatkowej na poszczególne konta od symbolu użytego w schemacie numeracji?

W przypadku Ewidencji dodatkowej przychodów można użyć w warunku wyrażenia: @Dokument LIKE '%EDP%'  co oznacza, że na konto zostanie zaksięgowany dokument, który ma w schemacie numeracji ciąg znaków EDP (np. EDP/000001/2003). W przypadku Ewidencji dodatkowej kosztów można użyć w warunku wyrażenia: '1'='1' AND EDN_NumerPelny LIKE 'EDK%' Różnica wynika z faktu, że w Ewidencji dodatkowej kosztów, na formatce zapisu są dwa numery: numer nadawany przez program i numer obcy. Makro @Dokument w tym przypadku pobiera numer nadawany przez program jeżeli numer obcy nie jest wypełniony. Jeżeli w warunku jest użyte jakieś makro to wystarczy dodać: AND EDN_NumerPelny LIKE 'EDK%' Patrz też pytania nr:
    1. Jak zaksięgować fakturę zakupu, żeby w schemacie księgowania w warunku zastosować fragment numeru dokumentu np MAGAZYN i SERIA z numeru FZ/99/MAGAZYN/SERIA? 
    1. Jak w warunku schematu dla WZ odwołać się do symbolu/serii w numerze faktury do której zostało wystawione WZ?

12. Jak uzależnić księgowanie poszczególnych KP/KW w raporcie kasowym od rodzaju podmiotu (dostawca, odbiorca, konkurencja, partner)?

W warunku schematu należy użyć wyrażenia: '1'='1' AND EXISTS (Select * FROM CDN.Kontrahenci Where Knt_KntId=BZp_PodmiotID AND Knt_Rodzaj_Odbiorca='1') Wówczas program zaksięguje na podane konta określoną kwotę, jeżeli kontrahent wybrany na KP/KW będzie odbiorcą. Dla dostawcy należy zmienić w powyższym wyrażeniu nazwę pola na Knt_Rodzaj_Dostawca, dla konkurencji na Knt_Rodzaj_Konkurencja, dla partnera na Knt_Rodzaj_Partner, natomiast dla klienta potencjalnego na Knt_Rodzaj_Potencjalny.

13. Jak stworzyć warunek dla zaksięgowania na osobne konta kwot netto: towarów i usług?

Taki warunek można stworzyć w schematach dla Faktur sprzedaży i Faktur zakupu (księgowań z modułu Faktury – ewentualnie księgowań innych dokumentów z modułu Faktury lub Magazyn). Trzeba wybrać księgowanie kwoty @PozNetto (lub @PozBrutto) i w warunku dopisać:
      • Dla usługi (prostej lub złożonej):
'1'='1' AND Exists (Select * From CDN.Towary Where Twr_TwrId=TrE_TwrId And Twr_Typ=0)
      • Dla usługi prostej:
'1'='1' AND Exists (Select * From CDN.Towary Where Twr_TwrId=TrE_TwrId And Twr_Typ=0 And Twr_Produkt=0)
      • Dla usługi złożonej:
'1'='1' AND Exists (Select * From CDN.Towary Where Twr_TwrId=TrE_TwrId And Twr_Typ=0 And Twr_Produkt=1)
      • Dla towaru (prostego lub złożonego):
'1'='1' AND Exists (Select * From CDN.Towary Where Twr_TwrId=TrE_TwrId And Twr_Typ=1)
      • Dla towaru prostego:
'1'='1' AND Exists (Select * From CDN.Towary Where Twr_TwrId=TrE_TwrId And Twr_Typ=1 And Twr_Produkt=0)
      • Dla towaru złożonego:
'1'='1' AND Exists (Select * From CDN.Towary Where Twr_TwrId=TrE_TwrId And Twr_Typ=1 And Twr_Produkt=1)

14. Jakiego wyrażenia należy użyć w warunku pozycji schematu księgowego aby uzależnić księgowanie od grupy, do której należy kontrahent wybrany na fakturze w rejestrze VAT?

'1'='1' AND EXISTS (SELECT* FROM CDN.Kontrahenci where Knt_KntId=VaN_PodID AND VaN_PodmiotTyp = 1 AND Knt_Grupa='DOST') Podana w schemacie kwota, zostanie zaksięgowana na zadane konta jeżeli kontrahent wybrany na fakturze należy do grupy 'DOST'. W schematach księgowych dla księgowania faktur z modułu Faktury warunek powinien być następujący: '1'='1' AND EXISTS (SELECT* FROM CDN.Kontrahenci where Knt_KntId=TrN_PodID AND TrN_PodmiotTyp = 1 AND Knt_Grupa='DOST')

15. Jak uzależnić księgowanie VAT-u z Rejestru VAT na dane konto od tego czy dokument jest rozliczony w danym miesiącu?

Warunek czy dokument jest w ogóle nierozliczony: '1'='1' AND EXISTS (Select * FROM CDN.BnkZdarzenia WHERE BZd_DokumentTyp = 2 And BZd_DokumentId = VaN_VaNId AND BZd_Rozliczono<2) Poniżej warunek sprawdzający przy założeniu, że dla dokumentu jest tylko jedna płatność, czyli płatność na dokumencie nie została podzielona na raty (ale mogła być rozliczana "na raty"). Dokument jest nierozliczony lub został rozliczony w innym miesiącu niż data dokumentu: '1'='1' AND EXISTS (Select * FROM CDN.BnkZdarzenia WHERE BZd_DokumentTyp = 2 And BZd_DokumentId = VaN_VaNId AND (BZd_Rozliczono<2 OR 100 * YEAR(BZd_DataRoz) + MONTH(BZd_DataRoz) <> VaN_RokMies)) Dokument został rozliczony w tym miesiącu, co data dokumentu: '1'='1' AND NOT EXISTS (Select * FROM CDN.BnkZdarzenia WHERE BZd_DokumentTyp = 2 And BZd_DokumentId = VaN_VaNId AND (BZd_Rozliczono<2 OR 100 * YEAR(BZd_DataRoz) + MONTH(BZd_DataRoz) <> VaN_RokMies))

16. Jak uzależnić księgowanie VAT-u z Rejestru VAT na dane konto od tego, w którym miesiącu dokument trafi na deklarację VAT-7?

Aby zaksięgować VAT na zadane konto, jeżeli data deklaracji VAT-7 to 10.2018 należy w warunku użyć wyrażenia: '1'='1' AND VaN_DeklRokMies='201810' Aby zaksięgować na zadane konto, podaną kwotę, jeżeli data deklaracji VAT-7 jest różna od daty rejestru. Czyli mając wyświetloną na ekranie listę faktur za miesiąc 10.2018, program zaksięguje te, które mają datę deklaracji inną niż 10.2018 np. 11.2018. '1'='1' AND Van_RokMies<>Van_DeklRokMies I dla równowagi, warunek gdy data deklaracji jest równa dacie rejestru: '1'='1' AND Van_RokMies=Van_DeklRokMies Aby zaksięgować na zadane konto, podaną kwotę, jeżeli data deklaracji VAT-7 jest różna od daty zakupu faktury zakupu: '1'='1' AND (100 * YEAR(VaN_DataOpe) + MONTH(VaN_DataOpe)) <> Van_DeklRokMies Aby zaksięgować na zadane konto, podaną kwotę, jeżeli data deklaracji VAT-7 jest różna od daty wystawienia faktury zakupu: '1'='1' AND (100 * YEAR(VaN_DataWys) + MONTH(VaN_DataWys)) <> Van_DeklRokMies Dla metody kasowej: '1'='1' AND Exists (Select * From CDN.VatTab7 Where Va7_VaNID=VaN_VaNID And (VAN_RokMies <> Va7_RokMiesiac or (100*Year (VaN_DataOpe) + month (VaN_DataOpe)) <> Va7_RokMiesiac))

17. Jak zaksięgować dokument RWS na konta analityczne w oparciu o grupy towarów?

Kwota netto ma zostać zaksięgowana na konto 311 (niesłownikowe) z podziałem na analityki w oparciu o grupy towarowe, np.: 311-01 - AKCESORIA 311-02 - ROŚLINY 311-03 – SPRZĘT W schemacie księgowym należy utworzyć trzy pozycje z poniższymi odpowiednio warunkami: Pozycja 1: '1'='1' And Exists (Select * From CDN.Towary JOIN  CDN.TwRGrupy on TwR_TwGGIDNumer=TwG_GIDNumer and TwG_GIDTyp=-16 Where Twr_TwrId = TrE_TwrId And TwG_Kod  = 'AKCESORIA') Pozycja 2: '1'='1' And Exists (Select * From CDN.Towary JOIN  CDN.TwRGrupy on TwR_TwGGIDNumer=TwG_GIDNumer and TwG_GIDTyp=-16 Where Twr_TwrId = TrE_TwrId And TwG_Kod  = 'ROŚLINY') Pozycja 3: '1'='1' And Exists (Select * From CDN.Towary JOIN  CDN.TwRGrupy on TwR_TwGGIDNumer=TwG_GIDNumer and TwG_GIDTyp=-16 Where Twr_TwrId = TrE_TwrId And TwG_Kod  = 'SPRZĘT') Można jeszcze skorzystać z innej, prostszej możliwości zaksięgowania. Gdyby 311 było kontem słownikowym (z podpiętym słownikiem Towary i podziałem na grupy), to takiego księgowania można dokonać automatem, zaznaczając w poszczególnych pozycjach schematu - Podział na słowniki: Towary. W takiej sytuacji do analityki konta 311-01 - AKCESORIA będą podpięte subanalityki dla poszczególnych towarów.

18. Jak zaksięgować dokument RWS na konta analityczne w zależności od tego do jakiej grupy towarowej należy towar złożony wybrany na dokumencie PWS?

Sytuacja wygląda następująco:
Dokument: Kompletacja – Przyjęcia produktówDokument: Kompletacja – Rozchody składników
Towar złożony należący do GRUPA1Towar1 – należy do GRUPA2
Towar2 – należy do GRUPA3
Księgujemy dokument: Kompletacja – Rozchody składników: chodzi o to aby zaksięgować kwotę np. @PozNetto, na wybrane konto jeżeli grupa, do której należy towar złożony wybrany na dokumencie: Kompletacja – Przyjęcia produktów, należy do GRUPA1. Takiej operacji można dokonać schematami warunkowymi. W warunku należy wpisać: '1'='1' AND EXISTS ( SELECT * FROM CDN.TraElem B JOIN CDN.Towary C ON B.TrE_TwrId = C.Twr_TwrId JOIN  CDN.TwRGrupy D on C.TwR_TwGGIDNumer=D.TwG_GIDNumer and D.TwG_GIDTyp=-16 WHERE B.TrE_TrEId = CDN.TraElem.TrE_TrEIdProd AND D.TwG_Kod = 'GRUPA1' ) Jeżeli grup jest więcej i każda księgowana jest na inne konto analityczne – należy stworzyć osobną pozycję w schemacie dla każdej z nich. Jeżeli na podane konto chcemy księgować określoną kwotę w sytuacji gdy grupa do jakiej należy towar złożony wybrany na PWP to GRUPA1 i jednocześnie towar na dokumencie RWS należy do grupy GRUPA2 to warunek powinien wyglądać następująco: '1'='1' And Exists (Select * From CDN.Towary JOIN  CDN.TwRGrupy on TwR_TwGGIDNumer=TwG_GIDNumer and TwG_GIDTyp=-16 Where Twr_TwrId = TrE_TwrId And TwG_Kod  = 'GRUPA2') AND EXISTS ( SELECT * FROM CDN.TraElem B JOIN CDN.Towary C ON B.TrE_TwrId = C.Twr_TwrId JOIN  CDN.TwRGrupy D on C.TwR_TwGGIDNumer=D.TwG_GIDNumer and D.TwG_GIDTyp=-16 WHERE B.TrE_TrEId = CDN.TraElem.TrE_TrEIdProd AND D.TwG_Kod = 'GRUPA1' )

19. Jak w opisie dekretu, dla księgowania Rejestru VAT, uzyskać liczbę porządkową faktury oraz rejestr, w którym jest zapisana?

W pozycji schematu dla rejestru VAT, w polu Opis, należy wpisać: @Dokument + ' ' + LTRIM(STR(VaN_Lp)) + ' '+ @Rejestr Makro @Dokument może zostać zastąpione innym istniejącym makrem – chodzi o to, aby program wiedział do jakiej tabeli ma się odwołać. Ponieważ Liczba porządkowa jest liczbą, SQL nie radzi sobie z dodaniem jej do tekstu. Należy wykonać jawną konwersję danych, np: @Dokument + ' ' + STR(VaN_Lp) Ponieważ jednak funkcja STR dodaje spacje na początku liczby, więc żeby się ich pozbyć, można zapisać wyrażenie następująco:

@Dokument + ' ' + LTRIM(STR(VaN_Lp))20. Jak zaksięgować Fakturę Zakupu, żeby w schemacie  księgowania w warunku zastosować fragment numeru dokumentu np MAGAZYN  i SERIA z numeru FZ/99/MAGAZYN/SERIA?

@NumerPelny LIKE '%MAGAZYN/SERIA%' Wówczas podana kwota, zostanie zaksięgowana na wskazane konta jeżeli numer faktury będzie zawierał ciąg znaków: ‘MAGAZYN/SERIA’. Warunek może być zastosowany dla faktury sprzedaży i zakupu księgowanych z modułu Faktury. Czy takiego warunku można też użyć przy księgowaniu faktur zakupu z poziomu rejestru VAT? Tak, warunek księgowania powinien wyglądać tak: '1'='1' AND exists (select * from CDN.TraNag where VaN_VaNID=TrN_VaNId AND TrN_NumerPelny LIKE '%MAGAZYN/SERIA%') Patrz też pytania nr:
    1. Jak uzależnić księgowanie dokumentów z ewidencji dodatkowej na poszczególne konta od symbolu użytego w schemacie numeracji?
    1. Jak w warunku schematu dla WZ odwołać się do symbolu/serii w numerze faktury do której zostało wystawione WZ?
 

21. W jaki sposób, w schemacie księgowania faktury zakupu z rejestrów VAT (pochodzącej z modułu Faktury), umieścić w opisie jej numer pełny (własny)?

Należy zdefiniować funkcję serwerową. Poniżej przykład takiej funkcji: Create Function CDN.MojeFunkcje_Podaj_TrN_NumerPelny (@VaNId Int) Returns VarChar(31) As  Begin Declare @Numer VarChar(31) Set @Numer = IsNull((Select Top 1 TrN_NumerPelny From CDN.TraNag Where TrN_VaNId = @VaNId), '') Return @Numer End Jeżeli chcemy to umieścić w opisie, to musi się znaleźć w "towarzystwie" co najmniej jednego makra, np.: @Dokument + ' ' + CDN.MojeFunkcje_Podaj_TrN_NumerPelny (VaN_VaNId)

22. Jakiego użyć warunku aby zaksięgować fakturę w zależności od terminu płatności?

Dla księgowania faktur z modułu Faktury: '1'='1' AND TrN_Termin BETWEEN Convert(DateTime, '2018-01-01', 120) AND Convert(DateTime, '2018-01-31', 120) Podana w elemencie schematu kwota, zostanie zaksięgowana na zadane konta jeżeli termin płatności faktury będzie zawierał się między 2018-01-01 a 2018-01-31. Dla księgowania faktur z Rejestrów VAT:

'1'='1' AND VaN_Termin BETWEEN Convert(DateTime, '2018-01-01', 120) AND Convert(DateTime, '2018-01-31', 120)23. Jak w schemacie księgowania podzielić wynagrodzenia wg wydziałów przy czym na jedną listę wchodzą pracownicy z kilku wydziałów?

W warunku należy wpisać: '1'='1' and Exists (Select * From CDN.PracEtaty Where WPL_PraId = PRE_PraId AND WPL_DataDok Between PRE_DataOd And PRE_DataDo And CDN.DzialSciezka(PRE_DZLId) = 'FIRMA\WYDZIAŁ1\PODWYDZIAŁ1') WYDZIAŁ1 to nazwa wydziału w którego skład wchodzi PODWYDZIAŁ1. Pracownik ma podpięty na karcie PODWYDZIAŁ1.

24. Jak w schemacie do księgowania listy płac rozksięgować składkę na FP i FGŚP z podziałem na wydziały (składkę wyliczoną i zsumowaną dla każdego z pracowników danego wydziału)?

Wartości FP i FGŚP obliczone dla składników wynagrodzeń poszczególnych pracowników, są umieszczone w tabeli CDN.WypElementy w polach: WPE_SklFP i WPE_SklFGSP. Do ww. tabeli odwołuje się np. makro kwoty @Brutto. Aby zaksięgować kwotę FP i FGŚP obliczoną dla poszczególnych pracowników przypisanych do konkretnego wydziału, należy w elemencie schematu, w polu Kwota, użyć wyrażenia: Dla księgowania FP: @Brutto - @Brutto + WPE_SklFP Dla księgowania FGŚP: @Brutto - @Brutto + WPE_SklFGSP W warunku należy użyć wyrażenia dotyczącego Wydziału (@Wydzial) lub opisanego w pytaniu 30. Jak w schemacie księgowania podzielić wynagrodzenia wg wydziałów przy czym na jedną listę wchodzą pracownicy z kilku wydziałów?

25. Jak zaksięgować KP/KW w zależności od tego czy termin płatności, na fakturze, która jest rozliczona z płatnością, jest różny od daty wystawienia dokumentu i forma płatności to gotówka?

W warunku można użyć następującego wyrażenia: '1'='1' AND exists ( select * from CDN.BnkRozRelacje join CDN.BnkZdarzenia on BRR_DDokID = BZd_BZdID AND BRR_DDokTyp=1 join CDN.FormyPlatnosci on BZd_FPlId = FPl_FPlId where BZp_BZpID=BRR_ZDokID AND BRR_ZDokTyp=2 AND BZd_Termin<>BZd_DataDok AND BZd_DokumentTyp IN (1,2) AND FPl_Typ=1) Warunek sprawdza daty i formę płatności zdarzenia w Preliminarzu. Uwzględnia więc sytuację, w której płatność do faktury została podzielona na raty. Natomiast w sytuacji gdy jest jedna płatność, która rozlicza kilka faktur i co najmniej jedna z nich spełnia powyższy warunek - KP/KW zostanie zaksięgowane. Pole FPl_Typ=1 oznacza, że typ formy płatności to "gotówka" (takich form zdefiniowanych w programie może być wiele i wszystkie zostaną wzięte pod uwagę). Jeżeli warunek ma dotyczyć tylko konkretnej formy płatności, która ma identyfikator np. 1 to zamiast powyższego należy wpisać: FPl_FPlId=1.

26. Jak w schemacie księgowym dla Rejestru VAT połączyć kwotę dodatkową z kwotą brutto i VAT faktury tak aby schemat nie wykazywał błędu użycia makr różnych typów?

W jednej z firm, program fakturujący oblicza wartości detaliczne danej faktury. Wartość ta jest przenoszona do kwot dodatkowych na fakturze w Rejestrze VAT w Comarch ERP Optima. Z wartości detalicznej brutto należy obliczyć jaka kwota marży przypada na wartość netto i jaka na wartość VAT. Wzór na obliczenie tych kwot wygląda następująco: Kwota marży przypadająca na wartość netto: @KwotaDodat-(@VAT*(@KwotaDodat-@Brutto)/@Brutto)-@Brutto Kwota marży przypadająca na wartość VAT: @VAT+(@VAT*(@KwotaDodat-@Brutto)/@Brutto Schemat wygląda następująco: Wn 221 (kwota VAT-u z faktury) 3,06 332 (Kwota dodatkowa) 55,50 Ma 201 (kwota brutto z faktury - konto kontrahenta) 46,81 341 (Kwota marży przypadającej na wartość netto) 8,12 342 (kwota marży przypadającej na wartość VAT) 3,63 Po wprowadzeniu takiej formuły do pozycji schematu, pojawia się komunikat o błędzie połączenia makr z elementów i nagłówka. Problem ten można rozwiązać wykorzystując fakt, że "makra" (symbole kwot zaczynające się od @) są w procesie księgowania "tłumaczone" na nazwy pól w bazie danych. Odpowiednio @VAT odpowiada wartości pola VaN_RazemVAT @Brutto odpowiada wartości pola VaN_RazemBrutto Przy czym w konstrukcji schematu możliwe jest wykorzystanie obok "makr" również nazw pól w bazie. Użycie nazwy pola w bazie skutkuje przy okazji tym, że nie jest ono uwzględniane w sprawdzaniu typów użytych makr. Reasumując – można przygotować schemat:
Konto WnKonto MaKwota
221@Vat
332@KwotaDodat
201@Brutto (z podziałem na podmioty)
341@KwotaDodat - VaN_RazemBrutto - ROUND ( VaN_RazemVAT * ( @KwotaDodat - VaN_RazemBrutto ) / VaN_RazemBrutto, 2 )
342VaN_RazemVat + ROUND ( VaN_RazemVAT * ( @KwotaDodat - VaN_RazemBrutto ) / VaN_RazemBrutto, 2 )
Uwaga
Użycie funkcji ROUND jest tu wskazane - gdyby wynik podziału marży dał w końcówce równe 0.005 to efekcie oba księgowania (na konta 341 i 342) zostałyby zaokrąglone w górę i dostalibyśmy 1 grosz za dużo.
Patrz też pytanie: 28. Jak w schemacie dla Rejestrów VAT zdefiniować kwotę, która jest różnicą pomiędzy kwotą dodatkową i kwotą netto faktury?

27. Jak uzależnić księgowanie odpisów amortyzacyjnych od opisu na karcie danego środka trwałego?

Przypadek dotyczył sytuacji gdy klient księgował używając kategorii na konta zespołu „4” i chciał księgować na konta zespołu „5” w zależności od tego czy opis na karcie środka trwałego zawierał dany ciąg znaków. Na karcie środka trwałego są dwa pola opisowe, które można wykorzystać: Opis kategorii (czyli to pole po prawej stronie od Kategorii) i pole Opis. W schemacie można odwołać się do nich w następujący sposób: Dla opisu kategorii na karcie środka w warunku należy wpisać np.: '1'='1' AND EXISTS (Select * from CDN.Trwale where SrT_SrTID=SrH_SrTID and SrT_Kategoria LIKE '%550%') Dla Opisu na karcie w warunku należy wpisać np.: '1'='1' AND EXISTS (Select * From CDN.Trwale Where SrT_SrTID=SrH_SrTID And  SrT_Opis LIKE '%550%') Warunki oznaczają, że podana kwota zostanie zaksięgowana jeżeli opis zawiera wyrażenie '550'. Aby schemat zadziałał poprawnie w Opisie elementu schematu należy użyć makro, które odwołuje się do karty środka trwałego np. @ST_NrInwent (czyli Numer inwentarzowy).

28 Jak w schemacie dla Rejestrów VAT zdefiniować kwotę, która jest różnicą pomiędzy kwotą dodatkową i kwotą netto faktury?

Dodatkowo istnieje potrzeba wpisania warunku, że jeśli wynik będzie dodatni to kwota ma zostać zaksięgowana na określone konta. Taki warunek można zawrzeć w definicji kwoty:
LpKonto Wn Konto Ma Kwota
1760340CASE WHEN @KwotaDodat > VaN_RazemNetto THEN @KwotaDodat - VaN_RazemNetto ELSE 0 END
2340760CASE WHEN @KwotaDodat < VaN_RazemNetto THEN VaN_RazemNetto - @KwotaDodat ELSE 0 END
Uwaga
Jeśli na liście kwot dodatkowych będzie wpisane więcej niż jedna kwota, to każda z nich będzie porównywana z wartością netto oddzielnie – w szczególności, jeśli jedna z tych kwot będzie większa od netto, a druga mniejsza, to powstaną dwa zapisy.
Patrz też pytanie nr:  26. Jak w schemacie księgowym dla Rejestru VAT połączyć kwotę dodatkową z kwotą brutto i VAT faktury tak aby schemat nie wykazywał błędu użycia makr różnych typów? Jeżeli istnieje konieczność porównania sumy kwot dodatkowych z wartością netto, to można posłużyć się odpowiednią funkcją serwerową. Przykład funkcji dla sumy kwot dodatkowych większej od netto: create function cdn.KwotyDW (@VaNId Int) returns Decimal(15,2) as begin declare @wynik Decimal(15,2) select @wynik = Sum(Kdd_Kwota) - VaN_RazemNetto from CDN.KwotyDodatkowe join cdn.vatnag on Kdd_DokumentID=VaN_VaNID where Kdd_DokumentID = @VaNId AND KDD_DokumentTyp=2 group by VaN_RazemNetto having Sum(Kdd_Kwota) > VaN_RazemNetto return IsNull(@wynik,0) end W schemacie, w polu Kwota należy wpisać: '0' + cdn.KwotyDW(VaN_VaNID) Dla sumy kwot dodatkowych mniejszych: create function cdn.KwotyDM (@VaNId Int) returns Decimal(15,2) as begin declare @wynik Decimal(15,2) select @wynik = VaN_RazemNetto - Sum(Kdd_Kwota) from CDN.KwotyDodatkowe join cdn.vatnag on Kdd_DokumentID=VaN_VaNID  where  Kdd_DokumentID = @VaNId AND KDD_DokumentTyp=2 group by VaN_RazemNetto having  Sum(Kdd_Kwota) < VaN_RazemNetto return IsNull(@wynik,0) end W schemacie, w polu Kwota należy wpisać: '0' + cdn.KwotyDM(VaN_VaNID) Warunku w ww. funkcjach nie uwzględniają sytuacji gdy suma kwot dodatkowych jest równa razem netto. Patrz też pytanie nr: 29. Jak w schemacie księgowym uzyskać kwotę, która jest różnicą pomiędzy sumą kwot dodatkowych Wn minus suma kwot dodatkowych Ma, a wartością netto faktury?

29 Jak w schemacie księgowym uzyskać kwotę, która jest różnicą pomiędzy sumą kwot dodatkowych Wn minus suma kwot dodatkowych Ma, a wartością netto faktury?

W celu uzyskania sumy kwot dodatkowych Wn i Ma należy stworzyć funkcję serwerową. Poniżej przykład funkcji: a) dla sumy kwot dodatkowych Wn create function cdn.SumaKwotyDodWn (@VaNId Int) returns Decimal(15,2) as begin declare @wynik Decimal(15,2) select @wynik = Sum(Kdd_Kwota) from CDN.KwotyDodatkowe where Kdd_DokumentID=@VaNId AND KDD_DokumentTyp=2 AND Kdd_Segment1<>'' return IsNull(@wynik,0) end Kwotę w schemacie należałoby zapisać jako: '0' + cdn.SumaKwotyDodWn(VaN_VaNID) b) dla sumy kwot dodatkowych Ma create function cdn.SumaKwotyDodMa (@VaNId Int) returns Decimal(15,2) as begin declare @wynik Decimal(15,2) select @wynik = Sum(Kdd_Kwota) from CDN.KwotyDodatkowe where Kdd_DokumentID=@VaNId AND KDD_DokumentTyp=2 AND Kdd_Segment2<>'' return IsNull(@wynik,0) end Kwotę w schemacie należałoby zapisać jako: '0' + cdn.SumaKwotyDodMa(VaN_VaNID) Aby uzyskać następującą kwotę: suma kwot dodatkowych Wn minus suma kwot dodatkowych Ma minus razem netto, jako kwotę w schemacie można wpisać: '0' + (cdn.SumaKwotyDodWn(VaN_VaNID) - cdn.SumaKwotyDodMa(VaN_VaNID)) - VaN_RazemNetto Patrz też pytanie nr: 28. Jak w schemacie dla Rejestrów VAT zdefiniować kwotę, która jest różnicą pomiędzy kwotą dodatkową i kwotą netto faktury?

30 Jak zaksięgować fakturę (z rejestru VAT lub z modułu FA) w zależności od form płatności przypisanych na zakładce Kontrahent faktury w Rejestrze VAT lub zakładce Płatności na fakturze w module FA)?

Chodzi o przypadek, gdy kwota płatności jest rozbijana na kilka rat lub będzie płacona kilkoma formami płatności np. część gotówką, a pozostała część przelewem. Należy zdefiniować funkcję serwerową. Przykład takiej funkcji (w przypadku księgowania z poziomu rejestrów VAT) poniżej: if exists (select * from sysobjects where name = 'userKwotaFormyPlatnosci' and xtype = 'FN') drop function CDN.userKwotaFormyPlatnosci GO create function CDN.userKwotaFormyPlatnosci (@vanid int, @nazwa varchar(20)) returns numeric (15,2) as begin declare @wynik numeric (15,2) if exists (select * from cdn.vatnag where van_vanid = @vanid and van_trnid is not null) --- to jest przypadek zapisu zaksięgowanego z listy faktur: select @wynik = isnull(sum(bzd_kwotasys),0) from cdn.bnkzdarzenia join cdn.formyplatnosci on bzd_fplid = fpl_fplid join cdn.tranag on bzd_dokumenttyp = 1 and bzd_dokumentid = trn_trnid where fpl_nazwa = @nazwa and trn_vanid = @vanid else --- to jest przypadek zapisu "ręcznego": select @wynik = isnull(sum(bzd_kwotasys),0) from cdn.bnkzdarzenia join cdn.formyplatnosci on bzd_fplid = fpl_fplid where fpl_nazwa = @nazwa and bzd_dokumenttyp = 2 and bzd_dokumentid = @vanid return @wynik end GO Schemat wyglądałby wówczas np. tak Konto Kwota 201 '0' + CDN.userKwotaFormyPlatnosci (VaN_VaNId, 'PRZELEW') 100 '0' + CDN.userKwotaFormyPlatnosci (VaN_VaNId, 'GOTÓWKA') W tym wypadku funkcji używamy w kwocie, a nie w warunku. W przypadku księgowania dokumentów z poziomu listy faktur w module Handel/Faktury funkcja wygląda następująco: create function CDN.userKwotaFormyPlatnosciFA (@trnid int, @nazwa varchar(20)) returns numeric (15,2) as begin declare @wynik numeric (15,2) select @wynik = isnull(sum(bzd_kwotasys),0) from cdn.bnkzdarzenia join cdn.formyplatnosci on bzd_fplid = fpl_fplid where fpl_nazwa = @nazwa and bzd_dokumenttyp = 1 and bzd_dokumentid = @trnid return @wynik end Przykładowe odwołanie do funkcji w polu Kwota schematu: '0' + CDN.userKwotaFormyPlatnosciFA (TrN_TrNId, 'PRZELEW')

31. W Rejestrze VAT wybieram na dokumencie kategorię szczegółową ale chciałbym rozksięgować dokument na konto przypisane do kategorii ogólnej, czy jest to możliwe?

Jest to możliwe. Należy stworzyć funkcję serwerową, która odczyta segment konta z kategorii ogólnej np. mamy kategorię ogólną ENERGIA, która ma jako segment Wn konta wybrane konto 402 i mamy kategorie szczegółowe do niej:
Kategoria ogólnaKategoria szczegółowaSegment Konto Wn
ENERGIA402
ENERGIA_PRODUKCJA501-02
ENERGIA_HANDEL505-02
ENERGIA_ZARZĄD510-02
Na dokumencie wybieramy kategorie szczegółowe pozycji, za pomocą których będziemy dokonywać księgowań na konta zespołu „5”, natomiast na kategorii ogólnej mamy informację o koncie zespołu „4”. Segment konta Wn z kategorii pozycji szczegółowej, można pobrać za pomocą standardowo dostępnego makra: @KatElemKontoWn. Segment konta z kategorii ogólnej pozycji można poprać za pomocą funkcji serwerowej. Poniżej przykład takiej funkcji: Create Function CDN.A (@VaNID INT) Returns VarChar(50) As Begin Declare @Wynik VarChar(50) Select @Wynik = KatOgol.Kat_KontoSegmentWN From CDN.VatTab Join CDN.VatNag On VaT_VaNID=VaN_VaNID Join CDN.Kategorie KatSzczeg On VaT_KatId = KatSzczeg.Kat_KatId Join CDN.Kategorie KatOgol On KatSzczeg.Kat_KodOgolny = KatOgol.Kat_KodSzczegol Where VaN_VaNId = @VaNId Set @Wynik = IsNull(@Wynik,'') Return @Wynik End W polu Konto Wn należy wpisać: SUBSTRING(@KatElemKontoWn,1,0) +CDN.A(VaN_VaNID) Przykład funkcji pobierającej konto segment Wn z kategorii ogólnej pobieranej na podstawie kategorii szczegółowej wybranej w nagłówku dokumentu: Create Function CDN.B (@VaNID INT) Returns VarChar(50) As Begin Declare @Wynik VarChar(50) Select @Wynik = KatOgol.Kat_KontoSegmentWN From CDN.VatNag Join CDN.Kategorie KatSzczeg On VaN_KatId = KatSzczeg.Kat_KatId Join CDN.Kategorie KatOgol On KatSzczeg.Kat_KodOgolny = KatOgol.Kat_KodSzczegol Where VaN_VaNId = @VaNId Set @Wynik = IsNull(@Wynik,'') Return @Wynik End W polu Konto Wn należy wpisać: SUBSTRING(@KatNagKontoWn,1,0) +CDN.B(VaN_VaNID) Konstrukcja poprzednich funkcji zakłada, że na dokumencie jest tylko jedna pozycja, bądź w przypadku kilku pozycji – że wszystkie pozycje zawierają kategorie szczegółowe należące do jednej kategorii ogólnej. W przypadku kiedy na księgowanym dokumencie znajduje się więcej niż jedna pozycja z różnymi kategoriami ogólnymi, należy zastosować poniższą, bardziej rozbudowaną funkcję: Create Function CDN.AB (@VaNID INT, @KategoriaElem varchar(20)) Returns VarChar(50) As Begin Declare @Wynik VarChar(50) Select @Wynik = KatOgol.Kat_KontoSegmentWN From CDN.VatTab Join CDN.VatNag On VaT_VaNID=VaN_VaNID Join CDN.Kategorie KatSzczeg On VaT_KatId = KatSzczeg.Kat_KatId Join CDN.Kategorie KatOgol On KatSzczeg.Kat_KodOgolny = KatOgol.Kat_KodSzczegol Where VaN_VaNId = @VaNId and KatSzczeg.Kat_KodSzczegol = @KategoriaElem Set @Wynik = IsNull(@Wynik,'') Return @Wynik End Odwołanie do funkcji w pozycji Konto Wn schematu: SUBSTRING(@KatElemKontoWn,1,0) +CDN.AB(VaN_VaNID, Kat_KodSzczegol)

32. Przekształcam Paragon na kontrahenta “nieokreślonego” do Faktury na określonego kontrahenta. Jak zaksięgować KP do paragonu, na którym jest kontrahent nieokreślony, na kontrahenta, który jest na Fakturze?

W tym przypadku również można posłużyć się funkcją serwerową, która pobierze kod kontrahenta z Faktury i zbuduje na tej podstawie odpowiednią analitykę konta np. 201. Poniżej przykład funkcji, która pobierze kod kontrahenta z faktury: Create Function CDN.C (@BZpID INT) Returns VarChar(20) As Begin Declare @Kontr VarChar(20) Select @Kontr = Knt_Kod From cdn.BnkRozRelacje Join CDN.BnkZdarzenia on BRR_DDokID=BZd_BZdID Join CDN.BnkZapisy on BZp_BZpID=BRR_ZDokID Join cdn.tranag A on BZd_DokumentID=A.TrN_TrNID Join cdn.TraNagRelacje on A.TrN_TrNID=TrR_FaId Join cdn.tranag B on TrR_TrNId=B.TrN_TrNID Join cdn.kontrahenci on B.TrN_PodID=Knt_KntId Where BRR_ZDokTyp=2 AND BZd_DokumentTyp=1 AND BRR_DDokTyp=1 AND B.TrN_PodmiotTyp=1 AND TrR_TrNTyp=302 AND BZp_BZpID=@BZpID Return @Kontr End W schemacie księgowym dla raportu kasowo/bankowego, jako konto należy wpisać: SUBSTRING(@KontoRach,1,0) +'201-'+CDN.C(BZp_BZpID) Konto musi istnieć już w planie kont (czyli najpierw sugerujemy księgowanie faktury). Do warunku takiej pozycji schematu można wstawić wyrażenie, które sprawdzi czy dany dokument kasowy jest powiązany z fakturą, która została przekształcona z paragonu. '1'='1' AND EXISTS (select * From cdn.BnkRozRelacje join CDN.BnkZdarzenia on BRR_DDokID=BZd_BZdID join cdn.tranag on BZd_DokumentID=TrN_FaId where BRR_ZDokTyp=2 AND BZd_DokumentTyp=1 AND BRR_DDokTyp=1 AND TrN_PodmiotTyp=1 AND BZp_BZpID=BRR_ZDokID and TrN_TypDokumentu=302)

33. Jak zaksięgować fakturę na konto Odbiorcy, a nie Nabywcy (konta odbiorców tworzone są wg akronimu)?

W tym przypadku również można posłużyć się funkcją serwerową, która pobierze kod kontrahenta (Odbiorcy) z Faktury i zbuduje na tej podstawie odpowiednią analitykę konta np. 201. Dodatkowo funkcja zamienia w akronimie kontrahenta znaki spacji, kropki i myślnika na znak podkreślenia ponieważ konta w planie kont nie mogą zawierać takich znaków. Poniżej przykład funkcji, która pobierze kod Odbiorcy z faktury: Create Function CDN.G (@TrnId Int) Returns VarChar(20) As Begin Declare @Kontr VarChar(20) Select @Kontr = REPLACE(REPLACE(REPLACE(Knt_Kod, ' ', '_'), '.', '_'), '-', '_') FROM CDN.TraNag Join cdn.kontrahenci on TrN_OdbID=Knt_KntId AND TrN_OdbiorcaTyp=1 AND TrN_TrNID=@TrnId Return @Kontr End W schemacie dla księgowania Faktur z modułu Faktury należy wpisać np.: LEFT(@Opis,0)+'201-'+CDN.G(TrN_TrNID) Konto musi istnieć już w planie kont. Przykład dla przypadku gdy faktury są księgowane z Rejestru VAT: Create Function CDN.B (@VaNID INT) Returns VarChar(20) As Begin Declare @Kontr VarChar(20) Select @Kontr = REPLACE(REPLACE(REPLACE(Knt_Kod, ' ', '_'), '.', '_'), '-', '_') From cdn.TraNag Join CDN.VatNag on VaN_VaNID=TrN_VaNId Join cdn.kontrahenci on TrN_OdbID=Knt_KntId AND TrN_OdbiorcaTyp=1 AND VaN_VaNId=@VaNID Return @Kontr End W schemacie dla księgowania Faktur z Rejestru VAT należy wpisać np.: LEFT(@Opis,0)+'201-'+CDN.B(VaN_VaNId)

34. Jak automatycznie zaksięgować dokument na konto kontrahenta gdzie pierwsza analityka to kod kontrahenta, a druga analityka to segment konta pobrany z kategorii dokumentu?

Klient chce rozksięgować dokument na konto 201 wg wzorca: 201-kontrahent-kategoria. Nie da się w takiej sytuacji zastosować podziału na słowniki kontrahentów ponieważ po analityce kontrahenta ma być jeszcze jedna analityka. W takiej sytuacji można posłużyć się makrem @KodPodmiotu, które jest obecne m.in. w schematach dla Rejestrów VAT i Ewidencji dodatkowych. Za pomocą ww. makra pobierzemy kod kontrahenta, natomiast za pomocą dostępnych standardowo makr dotyczących segmentów kont na kategoriach, pobierzemy analitykę przypisaną do kategorii. W polu Konto Wn lub Konto Ma wystarczy więc wpisać np. (dla ewidencji dodatkowej): '201-'+@KodPodmiotu+'-'+@KontoKatWn Konta w planie kont muszą istnieć przed księgowaniem. Ewentualnie musi istnieć konto syntetyczne – jeżeli będzie zaznaczony parametr o automatycznym zakładaniu kont niesłownikowych – konta się założą. Konta będą kontami zwykłymi – nie słownikowymi.

35. Jak skonstruować schemat księgowania deklaracji VAT-7 w rozbiciu na poszczególne stawki VAT?

W schemacie księgowym można posłużyć się istniejącą funkcją, która pobiera dane z poszczególnych pól deklaracji (z tabeli CDN.DeklElem): CDN.KwotaKsiegDekl (DkN_DkNId, DkE_Numer) W funkcji należy podać właściwą wartość dla pola DkE_Numer  i tak np. dla wzoru 18 deklaracji VAT-7 będzie to wartość: 10500 - Dostawa towarów oraz świadczenie usług na terytorium kraju, zwolnione od podatku (poz. 10 na VAT-7) 10550 - Dostawa towarów oraz świadczenie usług, poza terytorium kraju (poz. 11 na VAT-7) 10510 – w tym świadczenie usług, o których mowa w art.100 ust.1 pkt 4 ustawy (poz.12 na VAT-7) 10700 – Dost. towarów oraz świadczenie usług na terytorium kraju, opodatk. stawką 0% (poz. 13 na VAT-7) 10705 – w tym dostawa towarów, o której mowa w art.129 ustawy (poz.14 na VAT-7) 10710 - Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką odpowiednio 3% albo 5% - netto 10720 - Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką odpowiednio 3% albo 5% - VAT 11400 - Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką odpowiednio 7% albo 8% - netto 11500 - Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką odpowiednio 7% albo 8% - VAT 11600 - Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką odpowiednio 22% albo 23% - netto 11700 - Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką odpowiednio 22% albo 23% - VAT 11710 – Wewnątrzwspólnotowa dostawa towarów 10600 – Eksport towarów 11730 – Wewnątrzwspólnotowe nabycie towarów – netto 11740 – Wewnątrzwspólnotowe nabycie towarów – VAT 11742 – Import towarów, podlegający rozliczeniu zgodnie z art. 33a ustawy – netto 11744 - Import towarów, podlegający rozliczeniu zgodnie z art. 33a ustawy – VAT 11750 – Import usług – netto 11760 – Import usług – VAT 11762 – w tym nabycie od podatników podatku od wartości dodanej usług, do których stosuje się art. 28b ustawy – netto 11764 - w tym nabycie od podatników podatku od wartości dodanej usług, do których stosuje się art. 28b ustawy – VAT 11770 – Dostawa towarów oraz świadczenie usług, dla których podatnikiem jest nabywca  - art. 17 ust. 1 pkt 7 lub 8 (pole 31 deklaracji) – kwota netto 11780 – Dostawa towarów, dla których podatnikiem jest nabywca  - art. 17 ust. 1 pkt 5 (pole 32 deklaracji) – kwota netto 11781 – Dostawa towarów, dla których podatnikiem jest nabywca  - art. 17 ust. 1 pkt 5 (pole 33 deklaracji) – kwota VAT 11791 – Dostawa towarów oraz świadczenie usług, dla których podatnikiem jest nabywca  - art. 17 ust. 1 pkt 7 lub 8 (pole 34 deklaracji) – kwota netto 11792 – Dostawa towarów oraz świadczenie usług, dla których podatnikiem jest nabywca  - art. 17 ust. 1 pkt 7 lub 8 (pole 35 deklaracji) – kwota VAT 12000 – Kwota podatku należnego od towarów i usług objętych spisem z natury, o którym mowa w art.14 ust.5 ustawy 12005 - Zwrot odliczonej lub zwróconej kwoty wydatkowanej na zakup kas rejestrujących, o którym mowa w art.111 ust.6 ustawy 12010 – Kwota podatku należnego od wewnątrzwspólnotowego nabycia środków transportu 12011 - Kwota podatku od wewnątrzwspólnotowego nabycia paliw silnikowych Tak więc aby zaksięgować kwotę VAT w stawce 22% albo 23% (pole 20. na deklaracji VAT-7) należy wpisać w polu Kwota elementu schematu księgowego np. takie wyrażenie: @Vat7Nalezny - @Vat7Nalezny + CDN.KwotaKsiegDekl (DkN_DkNId, 11700)

36. Jak zaksięgować różnicę pomiędzy obrotami Ma konta VAT-u a VAT-em należnym z deklaracji VAT-7?

Można to zrobić definiując funkcję, która będzie pobierała obroty Ma odpowiedniego konta za okres, za który przeliczana jest deklaracja. Create Function CDN.ObrotyMa(@Konto VarChar(50), @RokMies Int) Returns Decimal(15,2) As Begin Declare @Wynik Decimal(15,2), @OObId Int, @AccId Int -- Określamy Id bieżacego okresu obarchunkowego Select @OObId = Case When IsNumeric(Fir_Wartosc)=1 Then Cast (Fir_Wartosc As Int) Else Null End From CDN.Firma Where Fir_Numer=244 -- Odczytujemy interesujące nas konto Select @AccId = Acc_AccId From CDN.Konta Where Acc_OObId = @OObId And Acc_Numer=@Konto -- Odczytujemy obroty Ma z uwzględnieniem bufora Select @Wynik = Obr_ObrotyMaBufor From CDN.Obroty Where Obr_AccId = @AccId And Obr_RokMies = @RokMies And Obr_Typ = 0 Return IsNull(@Wynik, 0) End i wykorzystanie w schemacie: CDN.ObrotyMa('221-2', DkN_RokMiesiac) - @Vat7Nalezny

37. Jak w warunku schematu dla WZ odwołać się do symbolu/serii w numerze faktury do której zostało wystawione WZ?

Zarówno dokument Wydania zewnętrznego (WZ) jak i faktura z tym dokumentem powiązana, są zapisane w tej samej tabeli CDN.TraNag. W tej sytuacji warunek można zbudować następująco: '1'='1' And Exists (Select * From CDN.TraNag FA Where CDN.TraNag.TrN_FaId = FA.TrN_TrNId And Fa.TrN_NumerPelny Like 'FA%SERIA') Patrz też pytania nr: 11. Jak uzależnić księgowanie dokumentów z ewidencji dodatkowej na poszczególne konta od symbolu użytego w schemacie numeracji? 20. Jak zaksięgować fakturę zakupu, żeby w schemacie księgowania w warunku zastosować fragment numeru dokumentu np MAGAZYN i SERIA z numeru FZ/99/MAGAZYN/SERIA?

38. Jak w opisie schematu do księgowania dokumentu WZ umieścić numer faktury, z którą powiązane jest WZ?

Należy w tym celu skonstruować funkcję serwerową, która odczyta numer faktury. Funkcja może wyglądać tak: Create Function CDN.NumerFa (@TrNId Int) Returns VarChar(30) As Begin Declare @Numer VarChar(30) Select Top 1 @Numer = TrN_NumerPelny From CDN.TraNag Where TrN_TrNId = @TrNId Return IsNull(@Numer, '') End W opisie schematu księgowań należy podać jakiekolwiek istniejące makro razem z odwołaniem do ww. funkcji, np. w ten sposób: @NumerPelny + ' ' + CDN.NumerFa (TrN_FaId)

39. Jak przenieść kwotę wpisaną w polu Opis na fakturze do pozycji schematu księgowego?

W Opisie faktury wprowadzonej na listę faktur sprzedaży w module Faktury wprowadzono kwotę, która powinna zostać zaksięgowana na konta. Ponieważ pole Opis nie jest polem numerycznym – należy je do takiego przekonwertować i dodatkowo księgować tylko wtedy gdy w polu Opis faktycznie występuje liczba. W pozycji schematu, w polu Kwota można wpisać następujące wyrażenie: @PlatRazem - @PlatRazem + CASE WHEN ISNUMERIC(TrN_Opis)=1 THEN CAST (TrN_Opis AS DECIMAL(15,2)) ELSE 0 END Dla faktur księgowanych z Rejestru VAT można użyć pola opisu kategorii: @PlatRazem - @PlatRazem + CASE WHEN ISNUMERIC(VaN_Kategoria )=1 THEN CAST (VaN_Kategoria AS DECIMAL(15,2)) ELSE 0 END Makra istniejące nie mogą odwoływać się do elementów faktury – muszą odwoływać się do nagłówka (tak jak np. makro @PlatRazem). Jeżeli zostanie użyte makro odwołujące się do elementów np. @PozNetto (dla modułu FA) lub @Netto (dla rejestru VAT) – to księgowana kwota będzie mnożona przez ilość pozycji na fakturze.

40. Jak zaksięgować kwotę „do wypłaty” z listy płac w zależności od rodzaju umowy zlecenia/dzieło i formy płatności?

Od wersji 8.0 systemu zmienił się sposób zapisywania form płatności dla pracowników. Są one zapisywane w osobnej tabeli: CDN.SchematPlatnosci. W związku z czym, o ile w poprzednich wersjach działał warunek: Exists (Select * From CDN.PracEtaty join CDN.FormyPlatnosci on PRE_FplId=FPl_FPlId Where WPL_PraId = PRE_PraId AND WPL_DataDok Between PRE_DataOd And PRE_DataDo AND FPl_Typ=1) AND @TypWyplaty ='dzieło 20%' Od wersji 8.0 warunek powinien wyglądać następująco: Exists (Select * From CDN.PracEtaty join cdn.SchematPlatnosci on PRE_PreId = SPL_PodmiotId join CDN.FormyPlatnosci on SPL_FplId=FPl_FPlId Where SPL_PodmiotTyp = 3 and WPL_PraId = PRE_PraId AND WPL_DataDok Between PRE_DataOd And PRE_DataDo AND FPl_Typ=1) AND @TypWyplaty ='dzieło 20%' FPl_Typ=1 oznacza formę płatności typu „gotówka”.

41. Jak wyksięgować kwotę dotychczasowych zaliczek z faktury finalnej księgowanej przez Rejestr sprzedaży VAT?

Najprościej księgować faktury zaliczkowe przez moduł Faktury ponieważ w schematach do Faktur sprzedaży są dodane odpowiednie makra. Jeżeli faktury zaliczkowe i faktura finalna są wystawiane w module Faktury, a następnie przenoszone do Rejestru VAT to kwotę dotychczasowych zaliczek z faktury finalnej można odczytać stosując istniejącą w programie funkcję i w polu Kwota pozycji schematu wpisać: Dla kwoty zaliczki netto: '0'+CDN.TraKwoty(VaN_TrNId,'ZN',Null,Null) Dla kwoty zaliczki brutto: '0'+CDN.TraKwoty(VaN_TrNId,'ZB',Null,Null) Aby sprawdzić czy faktura jest zaliczkowa można użyć następującego warunku: '1'='1' AND exists (select * from CDN.TraNag where TrN_VaNId = VaN_VaNID AND TrN_Rodzaj In (302200, 302202)) Warunek dla faktury finalnej: '1'='1' AND Exists (Select * From CDN.TraNag join CDN.TraVat on TrN_TrNID = TrV_TrNID Where TrN_VaNId = VaN_VaNID AND TrV_TrNId=TrN_TrNId And TrV_Typ=1) Warunek dla faktury zwykłej: '1'='1' AND Not Exists (Select * From CDN.TraNag join CDN.TraVat on TrN_TrNID = TrV_TrNID Where TrN_VaNId = VaN_VaNID AND TrV_TrNId=TrN_TrNId And TrV_Typ=1) AND Not Exists (select * from CDN.TraNag where TrN_VaNId = VaN_VaNID AND TrN_Rodzaj In (302200, 302202))

42. Jak przy księgowaniu raportu kasowego rozróżnić czy konto przeciwstawne jest walutowe (i księgować w walucie), a jak że jest złotówkowe (i księgować tylko w złotówkach)?

Warunek dla pozycji schematu wykorzystującej konto przeciwstawne gdy jest zaznaczone księgowanie walutowe: '1'='1' and exists (select * from CDN.Konta where Acc_Numer like @KontoPrzeciw + '%' and Acc_Waluta<>'' And Acc_OObID = (select OOb_OObID from CDN.OkresyObrach where OOb_DataOtw < Bzp_DataDok and OOb_DataKoncowa > Bzp_DataDok)) Warunek dla pozycji schematu wykorzystującej konto przeciwstawne gdy nie jest zaznaczone księgowanie walutowe: '1'='1' and not exists (select * from CDN.Konta where Acc_Numer like @KontoPrzeciw + '%' and Acc_Waluta<>'' And Acc_OObID = (select OOb_OObID from CDN.OkresyObrach where OOb_DataOtw < Bzp_DataDok and OOb_DataKoncowa > Bzp_DataDok))  Powyższe warunki sprawdzają walutę konta w okresie obrachunkowym w którym zawierają się daty otwarcia i zamknięcia księgowanego raportu kasowego/bankowego.

43. Jak automatycznie księgować na konta zespołu “4” na podstawie konta zespołu „5” wpisanego w kwotach dodatkowych?

Mamy w planie kont np. konta  501-1-1-401-01 i np. 501-1-1-402-01. Odpowiednikiem tych kont w zespole „4” są 400-401-01 i 400-402-01. W rejestrze VAT wprowadzamy na fakturze w Kwotach dodatkowych konta zespołu „5”. Chcemy żeby „4” podstawiała się automatycznie na podstawie „5”. W schemacie księgowym, jako definicję konta można wpisać: '400-'+SUBSTRING(@KontoDodatWn,9,6) Jeżeli w kwocie dodatkowej wybierzemy konto 501-1-1-401-01, to po zaksięgowaniu otrzymamy konto 400-401-01.

44. Jak w schemacie do księgowania faktur zakupu z Rejestrów VAT rozróżnić zaliczkobiorcę, który jest pracownikiem od zaliczkobiorcy, który jest wspólnikiem?

W warunku schematu dotyczącym księgowania na konto pracowników należy wpisać: '1'='1' AND exists (select * from CDN.PracEtaty where VaN_PodZalId=Pre_PraID AND VaN_PodmiotZalTyp=3 AND PRE_TypPracownika=0) W warunku schematu dotyczącym księgowania na konto wspólnika należy wpisać: '1'='1' AND exists (select * from CDN.PracEtaty where VaN_PodZalId=Pre_PraID AND VaN_PodmiotZalTyp=3 AND PRE_TypPracownika=1)

45. Jak należy wpisać warunek aby zaksięgować fakturę z rejestru VAT na wybrane konto pod warunkiem, że zaliczkobiorcą jest pracownik o akronimie ‘KOWALSKI’?

W warunku można wpisać: '1'='1' AND exists (select * from CDN.PracEtaty where VaN_PodZalId=Pre_PraID AND VaN_PodmiotZalTyp=3 AND PRE_Kod='KOWALSKI')

46. Jak w opisie pozycji schematu dla rejestrów VAT wstawić kod pracownika, który jest zaliczkobiorcą?

Jeżeli pozycja schematu zawiera konto słownikowe pracownika i podział na słowniki: Zaliczkobiorcy to w opisie można wstawić następujące wyrażenie: ''+(select top 1 PRE_Kod from CDN.PracEtaty where Pre_PraID = VaN_PodZalId and VaN_PodmiotZalTyp=3) Jeżeli daną pozycją schematu księgujemy kwotę na konto kontrahenta (czyli jest podział na słowniki: Podmioty) a w opisie chcemy mieć informację o kodzie zaliczkobiorcy, należy użyć funkcji: Create Function CDN.MojeFunkcje_KodZaliczkobiorcy (@VaNId Int) Returns VarChar(31) As  Begin Declare @Kod VarChar(50) Set @Kod = IsNull((select top 1 PRE_Kod from CDN.PracEtaty join cdn.vatnag on Pre_PraID = VaN_PodZalId and VaN_PodmiotZalTyp=3 where Van_Vanid=@VaNId), '') Return @Kod End W definicji Opisu do danej pozycji schematu księgowego wpisujemy: @Dokument + ' ' + CDN.MojeFunkcje_KodZaliczkobiorcy (VaN_VaNId)

47. Jak opisie pozycji dekretu umieścić informację o Imieniu i nazwisku zaliczkobiorcy (pracownika) wybranego na fakturze zakupu w rejestrze VAT?

W schemacie księgowym typu Rejestr zakupów VAT w polu Opis należy wkleić: @TypZaliczkobiorcy + ' ' + CDN.ImieNazwisko (VaN_PodZalId,VaN_PodmiotZalTyp) Operator z uprawnieniami administratora może uruchomić skrypt w menu Narzędzia/ Serwer bazy danych/ Wykonywanie skryptów. Create Function CDN.ImieNazwisko (@VaN_PodZalId Int,@VaN_PodmiotZalTyp Int) Returns VarChar(30) As Begin Declare @ImieNazwisko VarChar(30) Select Top 1 @ImieNazwisko = Pre_Imie1+' '+Pre_Nazwisko From cdn.pracetaty Where @VaN_PodZalId =Pre_PraID AND @VaN_PodmiotZalTyp=3 AND PRE_TypPracownika=0 Return IsNull(@ImieNazwisko, '') End

48. Jak ułożyć warunek dla księgowania zaliczki na PIT-36 aby w miesiącu listopadzie zawsze księgowała się podwójna zaliczka?

Innymi słowy musimy w warunku „wyciągnąć” z pola DkN_RokMiesiac tylko miesiąc. Pole zapisuje rok i miesiąc w postaci 4 cyfr dla roku i 2 cyfr dla miesiąca np. ‘201811’. W warunku trzeba „wyciąć” pierwsze 4 znaki i użyć tylko dwóch ostatnich. Możemy to zrobić tak: SUBSTRING(DkN_RokMiesiac,5,2) Musimy jednak skonwertować liczbę do tekstu poprzez STR i dodatkowo usunąć zbędne spacje poprzez LTRIM. Cały warunek dla księgowania deklaracji, która pochodzi z miesiąca listopada będzie wyglądał tak: '1'='1' AND SUBSTRING(LTRIM(STR(DkN_RokMiesiac)),5,2)=11

49. Czy w schemacie do księgowania dokumentów przesunięć MM można wykorzystać symbol magazynu do identyfikacji konta magazynu źródłowego i docelowego?

Chodzi o to aby przy dużej ilości magazynów nie tworzyć kilkudziesięciu pozycji schematu odpowiadających wszystkim przesunięciom międzymagazynowym. Zakładamy więc, że analitykę magazynu pobieramy z symbolu magazynu. Na przykład, w polu Symbol, na formatce magazynu mamy MAG1, a konto ma postać 311-MAG1. Wtedy dla magazynu źródłowego definicja konta miałaby postać: '311-'+@Magazyn a dla magazynu docelowego: '311-'+@MagDocelowy.

50. Jak wykorzystać atrybuty do przypisania odpowiedniego konta zespołu „5” na karcie środka trwałego?

W Słownikach/ Atrybuty można zdefiniować atrybut o nazwie np. „KONTO_5”, typie „lista”, i pozycjach listy odpowiadających wszystkim kontom zespołu 5, na które jest księgowana amortyzacja np. 501-01, 502-01, 503-01 itp. Na karcie środka trwałego dodajemy atrybut „KONTO_5” i wybieramy wartość odpowiadającą „piątce” np. 501-01. W pozycji schematu księgowego odpowiadającej za księgowanie na konta zespołu „5”, w polu Konto Wn wprowadzamy definicję: @ST_Atrybut('KONTO_5')

W makrach dostępnych pod Kontem Wn i Kontem Ma nie ma pozycji „Wartość atrybutu” więc aby wkleić odpowiednie wyrażenie można skorzystać z pola „Opis” wybierając odpowiedni atrybut, kopiując i wklejając do „Konto Wn/Konto Ma”.

51. Jak można użyć, w schemacie księgowym, atrybutu przypiętego do pozycji faktury?

Od wersji Comarch ERP Optima 2019.5.1 atrybuty pozycji dokumentów z modułu Handel zapisywane są w tabeli CDN.TraElemAtr. Chcąc odwołać się w warunku schematu do kodu bądź wartości atrybutu pozycji dokumentu należy zastosować następujący warunek: '1'='1' AND exists (Select TrA_Kod From CDN.TraElemAtr Where TrA_TrEId = TrE_TrEID and TrA_Kod= 'ATR1' and TrA_Wartosc= 'WART1') W przypadku wersji wcześniejszych niż 2019.5.1 należy zastosować poniższe warunki. Księgując fakturę z modułu Handel są dwie możliwości: 1. Ponieważ atrybuty są zapisywane w tabeli CDN.TraElem w polach: TrE_Atr1_Kod, TrE_Atr2_Kod.... TrE_Atr5_Kod i wartości odpowiednio w polach TrE_Atr1_Wartosc do TrE_Atr5_Wartosc to można się odwołać bezpośrednio do tych pól. Założenie jednak będzie wtedy takie (aby nie komplikować warunku), że atrybut, który nas interesuje jest zawsze np. pierwszy czyli zapisywany w polach TrE_Atr1_Kod i TrE_Atr1_Wartosc. Aby zaksięgować kwotę netto pozycji, pod warunkiem, że pierwszy atrybut to ATR1 i jego wartość to WART1 można użyć kwoty @PozNetto a w warunku: '1'='1' AND TrE_Atr1_kod='ATR1' AND TrE_Atr1_Wartosc='WART1' 2. Jeżeli atrybut, który nas interesuje może być zapisany na różnych miejscach to aby nie tworzyć bardzo złożonego warunku można użyć funkcji, której jako parametry podamy kod atrybutu i wartość. Funkcja będzie użyta w kwocie schematu np. Create Function CDN.userKwotaElementuZAtrybutem (@Treid int, @KodAtrybutu varchar(255), @WartoscAtrybutu varchar(255), @Typ varchar(10)) Returns Decimal (15,2) As Begin Declare @Wynik Decimal(15,2) if exists ( select * from CDN.TraElem where TrE_TrEID = @TrEId and ( TrE_Atr1_Kod = @KodAtrybutu and TrE_Atr1_Wartosc=@WartoscAtrybutu or TrE_Atr2_Kod = @KodAtrybutu and TrE_Atr2_Wartosc=@WartoscAtrybutu or TrE_Atr3_Kod = @KodAtrybutu and TrE_Atr3_Wartosc=@WartoscAtrybutu or TrE_Atr4_Kod = @KodAtrybutu and TrE_Atr4_Wartosc=@WartoscAtrybutu or TrE_Atr5_Kod = @KodAtrybutu and TrE_Atr5_Wartosc=@WartoscAtrybutu ) ) begin set @Wynik = CDN.TraKwoty( @TrEId, @Typ, Null, Null) end Return IsNull( @Wynik, 0 ) End W definicji kwoty wpisujemy: @PozNetto - @PozNetto + CDN.userKwotaElementuZAtrybutem(TrE_TrEId, 'ATRYBUT', 'WARTOŚĆ', 'PN') 'PN' - oznacza kwotę netto. 'PB' oznaczałoby kwotę brutto pozycji.

52.Jak wykorzystać w schemacie księgowym, w definicji konta, wartość atrybutu przypiętego do karty kontrahenta?

Na karcie kontrahenta jest m.in. przypięty atrybut o nazwie KONTO, którego wartość odpowiada symbolowi konta, które ma być użyte do księgowania faktury z Rejestru VAT. Chcemy tak zdefiniować w pozycji schematu Konto Wn aby podstawiała się do niej wartość tego atrybutu przypięta do kontrahenta wybranego na fakturze. W takiej sytuacji trzeba skorzystać z funkcji serwerowej. Dla faktury księgowanej z Rejestru VAT funkcja może wyglądać następująco: Create Function CDN.A (@VaNId int, @AtrybutKod varchar(255)) Returns varchar(255) As Begin Declare @Wynik VarChar(255) Set @Wynik = '' select @Wynik = KnA_WartoscTxt from CDN.KntAtrybuty join CDN.DefAtrybuty on (KnA_DeAId = DeA_DeAId) join CDN.PodmiotyView on (KnA_PodmiotId = Pod_PodId) join CDN.VatNag on (VaN_PodID = Pod_PodId) where VaN_VaNID=@VaNId and DeA_Kod=@AtrybutKod AND KnA_PodmiotTyp = Pod_PodmiotTyp AND Pod_PodmiotTyp = VaN_PodmiotTyp Return IsNull(@Wynik, '') End W definicji Konta Wn wpisujemy: LEFT(@Opis,0)+CDN.A(Van_VaNID,'KONTO') Ponieważ w definicji konta w pozycji schematu jest ograniczona liczba znaków, jeżeli odwoływać się do atrybutów w ten sposób, należy nadawać im krótkie nazwy. Dla faktury księgowanej z modułu Handel: Create Function CDN.B (@TrNId int, @AtrybutKod varchar(255)) Returns varchar(255) As Begin Declare @Wynik VarChar(255) Set @Wynik = '' select @Wynik = KnA_WartoscTxt from CDN.KntAtrybuty join CDN.DefAtrybuty on (KnA_DeAId = DeA_DeAId ) join CDN.PodmiotyView on KnA_PodmiotId = Pod_PodId join CDN.TraNag on Pod_PodId = TrN_PodID where TrN_TrNID=@TrNId and DeA_Kod=@AtrybutKod AND KnA_PodmiotTyp = Pod_PodmiotTyp AND Pod_PodmiotTyp = TrN_PodmiotTyp Return IsNull(@Wynik, '') End W definicji konta: LEFT(@Opis,0)+CDN.B(Trn_TrNID,'KONTO')

53. Jak wykorzystać w schemacie księgowym z rej. VAT kwotę z ewidencji dodatkowej?

Schemat pozwala na wyksięgowanie kwoty z dokumentu ewidencji dodatkowej pod warunkiem, że numer dokumentu i Akronim kontrahenta jest identyczny na rej. VAT i ewidencji dodatkowej. W takiej sytuacji trzeba skorzystać z funkcji serwerowej. Dla faktury księgowanej z Rejestru VAT funkcja może wyglądać następująco: create function cdn.MojaFunkcja_ED (@ID int, @Typ int, @Dok varchar(30)) returns Decimal(15,2) as begin declare @wynik Decimal(15,2) select @wynik = EDN_KwotaRazemSys from CDN.EwiddodNag join cdn.vatnag on VaN_Dokument=EDN_NumerObcy and VaN_PodID=EDN_PodID and VaN_PodmiotTyp=EDN_PodmiotTyp where VaN_Dokument = @Dok AND VaN_PodID=@ID AND VaN_PodmiotTyp= @Typ return IsNull(@wynik,0) end W definicji Kwoty w schemacie rej. VAT wpisujemy: @Brutto-cdn.MojaFunkcja_ED(VaN_PodID,VaN_PodmiotTyp,VaN_Dokument)

54. Jak w schemacie księgowym dokumentów z rejestru VAT w polu Opis wykorzystać np. datę operacji z dokumentu?

@Opis+' '+convert (varchar(10), VaN_DataOpe , 120)

55. Jak w schemacie księgowym Listy płac wyszukać pola opisu analitycznego, które nie mają żadnej wartości czyli NULL?

Jeżeli jako kwota została użyta kwota, która odwołuje się do tabeli CDN.WypElementy to warunek może wyglądać tak: '1'='1' and not exists(select * from CDN.OpisPlace where OpP_WpEId= WpE_WpEId) Taka kwota to np. @WynagrodzenieBrutto, @ZUSEmerPrac, @ZUSEmerFirma itp. Gdyby kwota odwoływała się do innej tabeli np. CDN.Wyplaty to: '1'='1' and not exists(select * from CDN.Wyplaty JOIN CDN.WypElementy ON WPL_WplId = WPE_WplId JOIN CDN.OpisPlace ON OpP_WpEId= WpE_WpEId WHERE WPL_LplId = LPL_LplId) Taka kwota to np. @DoWyplaty.

56. Jak w schemacie do księgowania raportów K/B, w pozycji dekretu uzyskać opis składający się z numerów dokumentów rozliczających dany zapis K/B?

W takim przypadku można wykorzystać istniejącą funkcję CDN.NumeryRozliczonych wstawiając do opisu pozycji schematu następującą definicję: @KategoriaSzczegol + ' ' +CDN.NumeryRozliczonych(Bzp_BzpID,2,0) Zamiast @KategoriaSzczegol można użyć innego istniejącego makra. Jeżeli dany zapis k/b jest rozliczany kilkoma dokumentami - ich numery w opisie będą oddzielone znakiem średnika.

57. Jak w schemacie księgowym dokumentów z rejestru VAT rozróżnić księgowanie dokumentów wystawionych na kontrahentów krajowych i zagranicznych?

W przypadku kiedy korzystamy z informacji zapisanych na karcie kontrahenta: Warunek jaki należy wstawić przy kontrahentach krajowych: '1'='1' AND exists (select * from cdn.kontrahenci where Knt_KntId= VaN_PodID and VaN_PodmiotTyp=1 and Knt_Export=0) Warunek jaki należy wstawić przy kontrahentach zagranicznych: '1'='1' AND exists (select * from cdn.kontrahenci where Knt_KntId= VaN_PodID and VaN_PodmiotTyp=1 and Knt_Export<>0) W przypadku kiedy korzystamy z informacji zapisanych na dokumencie, czyli rodzaj transakcji, wtedy warunek może wyglądać następująco: '1'='1' AND VaN_Export=0 (dla transakcji krajowej) Rodzaj transakcji: 0 - krajowa 1 - eksport/import 2 - eksport - zwrot VAT 3 - dostawa/nabycie wewnątrzwspólnotowa 4 - dostawa/nabycie wewnątrzunijna trójstronna 5 - krajowa - podatnikiem jest nabywca 6 - dostawa poza terytorium kraju 7 - poza terytorium kraju (stawka NP) 8 - wewnątrzunijny - podatnikiem jest nabywca 9 - pozaunijny - podatnikiem jest nabywca

58. Jak z poziomu rejestru VAT zaksięgować dokumenty w zależności od formy płatności na nich wybranej?

Aby zaksięgować fakturę zapłaconą gotówką należy w warunku schematu księgowego wpisać: '1'='1' and exists (select * from CDN.FormyPlatnosci where VaN_FplID=FPl_FPlId and FPl_Nazwa = 'gotówka') A dla dokumentów z pozostałymi formami płatności: '1'='1' and exists (select * from CDN.FormyPlatnosci where VaN_FplID=FPl_FPlId and FPl_Nazwa <> 'gotówka')

59. W jaki sposób sprawdzić czy zapis kasowy został automatycznie wygenerowany przy tworzeniu faktury gotówkowej?

W schemacie księgowań dla zapisów automatycznych należy wpisać warunek: '1'='1' AND BZp_ZapisAutomatyczny=1 Dla pozostałych zapisów: '1'='1' AND BZp_ZapisAutomatyczny=0

60. Jak zaksięgować dokument Przyjęcia Zewnętrznego w zależności od statusu kontrahenta?

Dla kontrahenta krajowego należy w warunku schematu wpisać: '1'='1' AND TrN_Export=0 Dla kontrahenta unijnego: '1'='1' AND (TrN_Export=3 OR TrN_Export=4) Dla kontrahenta pozaunijnego: '1'='1' AND TrN_Export=1 Status: 0 - krajowy 1 - eksport/import 2 - eksport - zwrot VAT 3 - dostawa/nabycie wewnątrzwspólnotowa 4 - dostawa/nabycie wewnątrzunijna trójstronna 5 - krajowy - podatnikiem jest nabywca 6 - dostawa poza terytorium kraju 7 - poza terytorium kraju (stawka NP) 8 - wewnątrzunijny - podatnikiem jest nabywca 9 - pozaunijny - podatnikiem jest nabywca

61. Jak zaksięgować dokument PZ w zależności od fragmentu numeru faktury, do której został utworzony np. numer faktury zakupu zaczyna się od „FA” i kończy się na MG lub EU?”

W warunku schematu księgowego należy wpisać:  '1'='1' And Exists (Select * From CDN.TraNag FA Where CDN.TraNag.TrN_FaId = FA.TrN_TrNId And Fa.TrN_NumerPelny Like 'FA%SERIA') zastępując słowo SERIA na końcu warunku wybraną serią dokumentu np. MG lub EU.

62. Jak podczas księgowania listy płac w polu Konto odwołać się do kategorii na wypłacie pracownika (na zakładce [Ogólne])?

Przykład funkcji: Create Function CDN.A3 (@LplID int, @WPLID int) Returns varchar(255) As Begin Declare @Wynik VarChar(50) Set @Wynik = '' select @Wynik = Kat_KontoSegmentWN from CDN.Kategorie join CDN.Wyplaty on WPL_KatId = Kat_KatID join CDN.ListyPlac on WPL_LplId = LPL_LplId where LPL_LplId=@LplId AND WPL_WPLID=@WPLID Return IsNull(@Wynik, '') End W polu Konto Wn lub Konto Ma należy wstawić: LEFT(@Opis,0)+CDN.A3(Lpl_LplID,WPL_WPLID)

63. Jak zaksięgować kwotę netto z faktury w Rejestrze VAT z podziałem na magazyny?

Na Fakturze Sprzedaży w module Faktury są pozycje pochodzące z różnych magazynów. Chodzi o to aby zaksięgować kwotę netto na różne konta, w zależności od magazynu. Na fakturze w Rejestrze VAT nie ma takiej informacji – informacja jest tylko na fakturze w module Faktury. Najprościej więc księgować fakturę bezpośrednio z modułu Faktury i wykorzystać w schemacie, w warunku pozycji, makro @MagazynElem. Jeżeli natomiast istnieje potrzeba wykonania księgowania z Rejestru VAT można dodać odpowiednią funkcję serwerową i umieścić ją w definicji kwoty schematu: if exists (select * from sysobjects where name = 'userKwotaFaMagazyny' and xtype = 'FN') drop function CDN.userKwotaFaMagazyny GO create function CDN.userKwotaFaMagazyny (@vanid int, @nazwa varchar(20)) returns numeric (15,2) as begin declare @wynik numeric (15,2) select @wynik = isnull(sum(TrE_WartoscNetto),0) from cdn.tranag join cdn.TraElem on TrN_TrNID = TrE_TrNId join CDN.Magazyny ON Mag_MagId = TrE_MagId where Mag_Symbol = @nazwa and trn_vanid = @vanid return @wynik end W definicji kwoty wpisujemy: '0' + CDN.userKwotaFaMagazyny (VaN_VaNId, 'MAGAZYN')

64. Jak z poziomu listy płac zaksięgować na konkretne konto wypłatę pracownika, który jest niepełnosprawny?

W pozycji schematu dla listy płac w polu Warunek należy wpisać: '1'='1' AND EXISTS (select * from CDN.PracEtaty join CDN.PracKod on Pra_Praid = Pre_Praid where Pra_Praid = Wpl_Praid and Wpl_Lplid  = Lpl_Lplid and Pre_StNiepelnosp<>0)

65. Jak w schemacie do księgowania paragonów odwołać się do symbolu magazynu na pozycji paragonu?

W kwocie należy użyć makra odwołującego się do pozycji paragonu, np. @PozNetto. W warunku można użyć następującego zapytania: '1'='1' AND EXISTS(SELECT * FROM CDN.Magazyny WHERE Mag_MagId = TrE_MagId AND Mag_Symbol='MAGAZYN')

66.Jak umieścić funkcję serwerową w polu z datą księgowania? (na przykładzie księgowania faktur za usługi transportowe)

Księgujemy faktury z Rejestru VAT i zakładamy co następuje: 1. jeżeli dokument jest rozliczony całkowicie – pobieramy datę rozliczenia (jeżeli jest rozliczony kilkoma dokumentami, będzie to data ostatniego rozliczenia), 2. jeżeli jest nierozliczony całkowicie i data bieżąca minus data wystawienia jest większa od 30 dni, pobieramy datę o 30 dni późniejszą od daty wystawienia dokumentu, 3. jeżeli jest to inny przypadek niż powyższe warunki (np. całkowicie nierozliczony ale różnica między datą bieżącą i datą wystawienia jest mniejsza niż 30 dni lub dokument jest częściowo rozliczony) funkcja wstawi zero czyli przy księgowaniu pojawi się komunikat o księgowaniu poza bieżącym okresem obrachunkowym i dokument nie zostanie zaksięgowany. Funkcję można oczywiście rozbudować o kolejne warunki. if exists (select * from sysobjects where name = 'F1' and xtype = 'FN') drop function [CDN].[F1] GO CREATE function [CDN].[F1] (@VaNId Int) returns Datetime as begin declare @wynik Datetime select @wynik = case when exists(select * from CDN.BnkZdarzenia join CDN.VatNag on BZd_DokumentId = VaN_VaNId AND BZd_DokumentTyp = 2 WHERE BZd_Rozliczono=2 AND Van_Vanid=@VaNId) then BZd_DataRoz when exists (select * from CDN.BnkZdarzenia join CDN.VatNag on BZd_DokumentId = VaN_VaNId AND BZd_DokumentTyp = 2 WHERE BZd_Rozliczono2=1 AND (GetDate()- VaN_DataWys)>30 AND Van_Vanid=@VaNId) then DateADD(day,30,VaN_DataWys) else 0 end from CDN.BnkZdarzenia join CDN.VatNag on BZd_DokumentId = VaN_VaNId and BZd_DokumentTyp = 2 where Van_Vanid=@VaNId return @wynik end W schemacie, w polu Data ksieg. wpisujemy: @DataWyst-@DataWyst+cdn.F1(VaN_VaNID)

67. Jak w warunku schematu dla faktur zakupu odwołać się do opcji Odliczenia VAT: Tak, Nie, Warunkowo na karcie kategorii wybranej na pozycji dokumentu?

W schemacie księgowym typu Faktura zakupu w warunku wkleić następujące wyrażenie: Dla odliczeń na NIE '1'='1' and exists (select * from CDN.Kategorie where Tre_Katid=Kat_Katid and Kat_Odliczenia=0) Dla odliczeń na TAK '1'='1' and exists (select * from CDN.Kategorie where Tre_Katid=Kat_Katid and Kat_Odliczenia=1) Dla odliczeń WARUNKOWO '1'='1' and exists (select * from CDN.Kategorie where Tre_Katid=Kat_Katid and Kat_Odliczenia=2)

68. Jak uzależnić księgowanie z Rejestru VAT na dane konto od tego czy dokument wpłynął maksymalnie do 20 dnia kolejnego miesiąca?

Poniższy warunek zaksięguje dokumenty, które wpłynęły maksymalnie do 20 dnia kolejnego miesiąca po miesiącu wystawienia faktury. Data księgowania w schemacie musi być ustawiona na datę wystawienia: '1'='1' and VaN_DataZap <= dateadd(day,20,DATEADD(day,-1,DATEADD(month,DATEDIFF(month,-1,Van_DataWys),0))) Poniższy warunek zaksięguje dokumenty, które wpłynęły po 20 dniu kolejnego miesiąca po miesiącu wystawienia faktury. Data księgowania w schemacie musi być ustawiona na datę wpływu: '1'='1' and VaN_DataZap > dateadd(day,20,DATEADD(day,-1,DATEADD(month,DATEDIFF(month,-1,Van_DataWys),0))) Warunki powinny być wklejone w polu Warunek w nagłówku schematu księgowego.

69. Jak rozksięgować dokumenty środków trwałych na podstawie kodu i wartości liczbowej atrybutu?

Przykład: środki trwałe są dzielone na projekty procentowo w danym miesiącu. Czyli środek był wykorzystywany w 20% w projekcie 1, 30% w drugim i 50% w trzecim. Każdy z projektów ma odpowiednie konto księgowe. Na karcie środka trwałego atrybuty w kodzie mają zawarte konto księgowe a wartość to udział procentowy amortyzacji w danym miesiącu. Wygląda to tak: Atrybut Kod          Wartość 501-1-1                 0,30 502-1-1                 0,20 504-2                     0,50 W schemacie księgowym w polu Konto odwołujemy się do numeru konta z kodu atrybutu @ST_AtrybutKod a w Kwocie przeliczamy amortyzację x wartość atrybutu @ST_AtrybutWartosc*@Amortyzacja Ewentualne korekty groszowe można wyksięgować za pomocą wyrażenia: @ST_AtrybutWartosc * @Amortyzacja - convert(decimal(14,2), @ST_AtrybutWartosc * @Amortyzacja)

70. Jak zaksięgować z poziomu rejestrów VAT dokument Tax Free z datą potwierdzenia?

W schemacie księgowym typu Rejestr sprzedaży VAT w polu Data księg. należy wpisać: @DataWyst-@DataWyst+cdn.Data_TF(VaN_VaNID) Operator z uprawnieniami administratora może uruchomić w menu Narzędzia/ Serwer bazy danych/ Wykonywanie skryptów skrypt dodający funkcję serwerową, z której będzie korzystał schemat. CREATE function CDN.Data_TF (@VaNId Int) returns Datetime as begin declare @wynik Datetime select @wynik = (select TrN_DataPtwTaxFree from CDN.TraNag join CDN.VatNag on TrN_VaNId = VaN_VaNId AND TrN_TypDokumentu = 345 WHERE TrN_TaxFreePotwierdzony=1 AND Van_Vanid=@VaNId) return @wynik end Dodatkowo w polu Warunek można wpisać warunek czy zapis w rejestrze VAT ma powiązanie z potwierdzonym dokumentem Tax Free: '1'='1' AND exists(select * from CDN.TraNag join CDN.VatNag on TrN_VaNId = VaN_VaNId AND TrN_TypDokumentu = 345 WHERE TrN_TaxFreePotwierdzony=1)

71. Jak sprawdzić podczas księgowania dokumentu z rejestru VAT zakupu czy był on rozliczony z delegacją?

W schemacie księgowym typu Rejestr zakupów VAT w polu Warunek należy wpisać: '1'='1' AND EXISTS (SELECT * FROM CDN.BnkZdarzenia JOIN CDN.BnkRozRelacje on BRR_DDokID=BZd_BZdID AND BRR_DDokTyp=1 JOIN CDN.BnkZapisy ON BRR_ZDokID=BZp_BZpID AND BRR_ZDokTyp=2 WHERE BZd_DokumentTyp=2 AND BZp_NumerString LIKE '%DLG%' AND BZd_DokumentId=VaN_VaNId)

72. Jak sprawdzić podczas księgowania rozliczonego z delegacją dokumentu z rejestru VAT zakupu na jakiego pracownika została wystawiona delegacja?

W schemacie księgowym typu Rejestr zakupów VAT w polu Opis należy wpisać: @Dokument + ' ' + CDN.Pracownik_DLG(VaN_VaNID) Operator z uprawnieniami administratora może uruchomić w menu Narzędzia/ Serwer bazy danych/ Wykonywanie skryptów skrypt dodający funkcję serwerową, z której będzie korzystał schemat. Create Function CDN.Pracownik_DLG (@VanId Int) Returns VarChar(20) As Begin Declare @Kod VarChar(20) Select @Kod = PRE_Kod FROM CDN.PracEtaty JOIN CDN.BnkZapisy ON BZp_PodmiotID=PRE_PreId AND BZp_PodmiotTyp=3 JOIN CDN.BnkRozRelacje ON BRR_ZDokID = BZp_BZpID AND BRR_ZDokTyp=2 JOIN CDN.BnkZdarzenia ON BRR_DDokID=BZd_BZdID AND BRR_DDokTyp=1 WHERE BZd_DokumentId = @VanId Return @Kod End Do powyższej funkcji można również odwołać się w polu Warunek (podając na początku kod określonego pracownika): 'KOWALSKI'= CDN.Pracownik_DLG(VaN_VaNID)

73. Jak zaksięgować dokument RW na konto księgowe zawierające numer dokumentu powiązanego zlecenia serwisowego?

Załóżmy, że dokument RW chcemy zaksięgować na konto analityczne konta 501, którego numer jest numerem zlecenia serwisowego (np. 501-SRW_1_2016). W schemacie księgowym typu Rozchody wewnętrzne w polu Konto Wn należy wpisać: LEFT(@Opis,0)+'501-'+dbo.MojaFunkcja_Numer_SRW (TrN_TrNID) Operator z uprawnieniami administratora może uruchomić w menu Narzędzia Serwer bazy danych/ Wykonywanie skryptów skrypt dodający funkcję serwerową, z której będzie korzystał schemat. Create Function dbo.MojaFunkcja_Numer_SRW (@TrNID INT) Returns VarChar(20) As Begin Declare @numer VarChar(20) select @numer = REPLACE (SrZ_NumerPelny,'/','_') FROM CDN.SrsZlecenia JOIN CDN.DokRelacje ON DoR_ParentId=SrZ_SrZId AND DoR_ParentTyp=900 JOIN CDN.TraNag ON DoR_DokumentId=TrN_TrNID AND DoR_DokumentTyp=304 WHERE TrN_TrNID= @TrNID Return @numer End Konta w planie kont muszą istnieć przed księgowaniem. Ewentualnie musi istnieć konto syntetyczne – jeżeli będzie zaznaczony parametr Automatyczne zakładanie kont analitycznych niesłownikowych (w Konfiguracji Firmy/ Księgowość/ Księgowość kontowa) – konta się założą.

74. Jak zaksięgować z listy płac kwotę wypłaty w gotówce dla pracownika?

Aby w dekrecie utworzonym z zaksięgowanej listy płac uzyskać kwotę wynagrodzenia wypłaconej w gotówce należy utworzyć odpowiednią funkcję serwerową, z której będzie korzystał schemat dla list płac. Operator z uprawnieniami administratora może uruchomić w menu Narzędzia/ Serwer bazy danych/ Wykonywanie skryptów skrypt dodający tę funkcję. Create Function CDN.MojaFunkcja_wyplaty_gotowka(@LplID int, @WPLID int) Returns Decimal(15,2) As Begin Declare @Kwota Decimal(15,2) Select @Kwota = Sum(BZd_KwotaSys) From CDN.BnkZdarzenia join CDN.Wyplaty on BZd_DokumentID=WPL_WplId join CDN.ListyPlac on WPL_LplId = LPL_LplId Where LPL_LplId=@LplId AND WPL_WPLID=@WPLID and BZd_DokumentTyp=8 and BZd_FPlId=1 Return IsNull(@Kwota, 0) End Wywołanie funkcji w elemencie schematu księgowego w polu Kwota: '0' + CDN.MojaFunkcja_wyplaty_gotowka(Lpl_LplID,WPL_WPLID)

75. Jak zaksięgować listę płac z wykorzystaniem atrybutów pracownika?

Dla poszczególnych pracowników przypisano atrybuty (np. 501, 502,…) z wartościami w formie współczynników określające udziały odpowiednich kosztów wydziałowych. Chcąc zaksięgować listę płac wykorzystując wartości odpowiednich atrybutów przypisanych do pracownika należy z poziomu Narzędzia/ Serwer bazy danych/ Wykonywanie zapytań SQL dodać następującą funkcję: Create Function CDN.Wartosc_Atr_Prac (@WPLId Int, @nazwa varchar(20)) returns decimal (15,2) As Begin Declare @wartosc decimal (15,2) Select @wartosc = REPLACE (ATH_Wartosc,',','.') From CDN.OAtrybutyHist Join CDN.OAtrybuty ON ATH_OatId=OAT_OatId Join CDN.WypElementy On OAT_PrcId = WPE_PraId Join CDN.Wyplaty on WPL_WplId=WPE_WplId Where WPL_WPLId = @WPLId AND OAT_NazwaKlasy = @nazwa And (ATH_DataDo >= WPL_DataDo And WPL_DataOd >= ATH_DataOd) Return CASE WHEN ISNUMERIC(@wartosc)=1 THEN CAST (@wartosc AS DECIMAL(15,2)) ELSE 0 END End Wywołanie funkcji w elemencie schematu księgowego w polu Kwota – przemnożenie kwoty wynagrodzenia brutto przez wartość odpowiedniego współczynnika: @WynagrodzenieBrutto * CDN.Wartosc_Atr_Prac (WPL_WPLId, '501')

76. Jak zaksięgować różnice kursowe od kwoty netto i VAT odpowiednio na konta KUP i NKUP?

Zakładamy, że dokument od kontrahenta krajowego w walucie obcej został wprowadzony z poziomu rejestru VAT i na zakładce [Waluta] dokumentu zaznaczony jest parametr Płatność VAT w PLN. W takim przypadku w Preliminarzu tworzone są 2 płatności z dokumentu – jedna na kwotę netto w walucie obcej, a druga na kwotę VAT w PLN. Jeżeli zapłata za fakturę nastąpiła w walucie obcej na kwotę brutto dokumentu, wówczas (po zmianie na płatności dotyczącej kwoty VAT waluty rozliczenia z PLN na walutę obcą) w Kasa/Bank / Różnice kursowe powstają 2 różnice kursowe. Chcąc zaksięgować je na 2 różne konta należy w schemacie o typie Różnice kursowe dodać osobne pozycje z odmiennymi kontami i warunkami:

a) Zaksięgowanie różnicy od kwoty netto na konta KUP – w polu Konto Wn / Konto Ma należy wskazać odpowiednie konta księgowe, jako kwotę wybrać @RoznicaMinus lub @RoznicaPlus, natomiast w polu Warunek wpisać:

'1'='1' AND (EXISTS (Select * FROM CDN.BnkZdarzenia Join CDN.VatNag On BZd_DokumentID=VaN_VaNID Where ((BRKV_LDokID=BZd_BZdID AND BRKV_LDokTyp=1) OR (BRKV_PDokID=BZd_BZdID AND BRKV_PDokTyp=1)) AND BZd_DokumentTyp=2 AND VaN_TrybNettoVAT=1 AND BZd_WalutaDok <> '' ))

b) Zaksięgowanie różnicy od kwoty VAT na konta NKUP – w polu Konto Wn / Konto Ma należy wskazać odpowiednie konta księgowe, jako kwotę wybrać @RoznicaMinus lub @RoznicaPlus, natomiast w polu Warunek wpisać:

'1'='1' AND (EXISTS (Select * FROM CDN.BnkZdarzenia Join CDN.VatNag On BZd_DokumentID=VaN_VaNID Where ((BRKV_LDokID=BZd_BZdID AND BRKV_LDokTyp=1) OR (BRKV_PDokID=BZd_BZdID AND BRKV_PDokTyp=1)) AND BZd_DokumentTyp=2 AND VaN_TrybNettoVAT=1 AND BZd_WalutaDok = '' ))

77. Jak zaksięgować sumę wypłat wynagrodzeń pracowników z raportu K/B jako pojedynczy zapis?

W raporcie kasowym/bankowym znajdują się zapisy z wypłatami wynagrodzeń poszczególnych pracowników (zawierających w opisie słowo „Wynagrodzenie”) które chcemy zaksięgować jedną zbiorczą kwotą. W tym celu należy z poziomu Narzędzia/ Serwer bazy danych/ Wykonywanie zapytań SQL dodać następującą funkcję: Create Function [CDN].[SumaWynagrodzen] (@BRPid int, @BZPid int) Returns Decimal (15,2) As Begin Declare @Wynik Decimal(15,2) Select @Wynik = CASE WHEN (SELECT min(BZp_BZpID) FROM CDN.BnkZapisy WHERE BZp_BRpID=@BRPid and BZp_PodmiotTyp=3 and BZp_Opis like 'Wynagrodzenie%') = @BZPid THEN isnull (sum(BZp_Kwota),0) Else 0 End From CDN.BnkZapisy Where BZp_BRpID=@BRPid and BZp_PodmiotTyp=3 and BZp_Opis like'Wynagrodzenie%' return IsNull(@wynik,0) End Wywołanie funkcji w elemencie schematu księgowego w polu Kwota: '0'+CDN.SumaWynagrodzen (BRp_BRpID, BZp_BZpID)

78. Jak zaksięgować kwotę VAT w podziale na stawki z dokumentów w procedurze OSS?

Dostępne na schematach księgowych makra dotyczące kwot dla stawek VAT odnoszą się do stawek obowiązujących w Polsce. W celu zaksięgowania z dokumentu w procedurze OSS kwoty VAT w podziale na stawki obowiązujące w innych krajach Unii Europejskiej należy odwołać się do tej stawki w warunku pozycji schematu. W przypadku księgowania Faktur sprzedaży z poziomu modułu Handel/Faktury należy na pozycji schematu wskazać odpowiednie konto księgowe dla VAT-u należnego w danej stawce, w polu Kwota wpisać: @PozBrutto - @PozNetto natomiast w polu Warunek: '1'='1' and TrE_Stawka='13.00' W przypadku księgowania dokumentów z poziomu Rejestru VAT sprzedaży, w polu Kwota pozycji schematu należy wpisać: @Vat natomiast w polu Warunek: '1'='1' and VaT_Stawka='13.00' Chcąc zaksięgować kwoty Netto lub Brutto dla określonej w warunku stawki, w polu Kwota pozycji schematu należy wpisać dla Faktur sprzedaży @PozNetto lub @PozBrutto, natomiast w przypadku księgowania z poziomu Rejestru VAT sprzedaży – odpowiednio @Netto lub @Brutto.

79. Jak zaksięgować z listy płac konkretną wartość kwotową podaną w schemacie księgowym?

Wpisując w schemacie księgowym dla list płac wartość kwotową bez warunku, będzie ona mnożona przez ilość elementów wypłat dla pracowników. Należy więc zastosować warunek: '1'='1' AND (SELECT min(WPE_WpeId) FROM CDN.WypElementy Join CDN.Wyplaty ON WPE_WplId=WPL_WplId WHERE WPL_LplId =LPL_LplId) = WPE_WpeId Kwotę można zdefiniować np. jako: @WynagrodzenieBrutto - @WynagrodzenieBrutto + 100.00

OPT022 - Przykłady schematów księgowych w Comarch ERP Optima

Data aktualizacji: 28-11-2018

Poniższe scenariusze postępowania oraz przykładowe schematy księgowe, można wprowadzić do bazy DEMO i sprawdzić w praktyce ich działanie. Jeżeli baza DEMO nie jest widoczna na liście firm, można ją odtworzyć podając podczas odtwarzania ścieżkę do katalogu, domyślnie jest to Program files/ Comarch ERP Optima.

Prosty schemat dla księgowania raportów kasowych/bankowych

Konto WnKonto MaSłownikKwotaWarunek
@KontoRach@KontoPrzeciwPodmioty@Przychod
@KontoPrzeciw@KontoRachPodmioty@Rozchod
@KontoDodatWn@KontoDodatMaPodmioty@KwotaDodat
@KontoRach – w schemacie dla raportów K/B, można wybrać to makro klikając w strzałkę obok Konto Wn, Konto Ma: Konta -> Konto kasy (rachunku). Program będzie pobierał konto kasy lub rachunku bankowego z pola Konto księgowe na Rejestrze kasowo/bankowym (Kasa/Bank -> Rejestry kasowe/bankowe). @KontoPrzeciw - w schemacie dla raportów K/B, można wybrać to makro klikając w strzałkę obok Konto Wn, Konto Ma: Konta _ Konto przeciwstawne. Program będzie pobierał konto przeciwstawne z pola Konto przeciwstawne, które znajduje się na formatce Zapisu kasowo/bankowego (Kasa/Bank -> Zapisy kasowe/bankowe). @KontoDodatWn/@KontoDodatMa - w schemacie dla raportów K/B, można wybrać to makro klikając w strzałkę obok Konto Wn, Konto Ma: Kwoty dodatkowe -> Konto Wn/Konto Ma. Program będzie pobierał konto z kwot dodatkowych, które znajdują się na formatce Zapisu kasowo/bankowego, pod ikonką Kwoty dodatkowe. Dodatkowo podział na słowniki Podmioty spowoduje, że w Kwotach dodatkowych będzie można użyć kont słownikowych dla podmiotów wybranych na dokumencie. Na Zapisie Kasowo/Bankowym, w polu Konto przeciwstawne, można wpisywać symbol konta słownikowego np. 201-2-1, 202-2-1, 231 bez podawania konkretnej analityki podmiotu np. 201-2-1-ALOZA. Gdy w polu Konto przeciwstawne podamy konto 201-2-1, program zaksięguje na właściwą analitykę 201-2-1-ALOZA jeżeli kontrahent ALOZA zostanie wybrany na zapisie K/B. Pozycja trzecia schematu, umożliwia zaksięgowanie Zapisu K/B na dodatkowe konta poza kontem kasy (rachunku) (100) i kontem do niego przeciwstawnym (461-3) np. na konta zespołu 5 gdy bezpośrednio z kasy księgujemy np. koszty proste. Jeżeli w kwotach dodatkowych Zapisu Kasowo/Bankowego będą wpisywane konta słownikowe, w pozycji schematu dotyczącej księgowań poprzez Kwoty dodatkowe (pozycja trzecia), musi być wybrany Podział na słowniki: Podmioty. Jeżeli na pozycji schematu, gdzie użyto konto rozrachunkowe, zostanie zaznaczony parametr Rozrachunek to po zaksięgowaniu dekret pojawi się w opcji Księgowość/ Rozrachunki, co pozwoli na parowanie ze sobą dekretów na kontach rozrachunkowych.

Prosty schemat dla księgowania walutowych raportów kasowych/bankowych uwzględniający księgowanie zapisów na konta walutowe i PLN

Lp.Konto WnKonto MaSłownikKwotaKsięg. walutWarunek
1@KontoRachbrak@Rozchodtak
2@KontoPrzeciwPodmioty@Rozchodtak@KontoPrzeciw <>'149'
3@KontoRachbrak@Przychodtak
4@KontoPrzeciwPodmioty@Przychodtak@KontoPrzeciw <>'149'
5@KontoPrzeciwbrak@Przychodnie@KontoPrzeciw ='149'
6@KontoPrzeciwbrak@Rozchodnie@KontoPrzeciw ='149'
Pozycja 1 – księguje rozchód w walucie na konto rachunku, które jest walutowe Pozycja 2 – sprawdza czy konto przeciwstawne jest różne od konta np. 149, które jest kontem w PLN i księguje rozchód w walucie Pozycja 3 – księguje przychód w walucie na konto rachunku, które jest walutowe Pozycja 4 – sprawdza czy konto przeciwstawne jest różne od konta np. 149, które jest kontem w PLN i księguje przychód w walucie Pozycja 5 – sprawdza czy konto przeciwstawne to konto np. 149, które jest kontem w PLN i księguje przychód w PLN Pozycja 6 – sprawdza czy konto przeciwstawne to konto np. 149, które jest kontem w PLN i księguje rozchód w PLN.

Schemat księgowy dla raportów kasowych/bankowych uwzględniający księgowanie zapisów w PLN i walucie obcej

Pozycja 1 – sprawdza czy waluta rozliczenia jest w PLN i księguje rozchód w PLN Pozycja 2 – jak wyżej tylko dla przychodu. Pozycja 3 – sprawdza czy waluta dokumentu to PLN, waluta rozliczenia inna od PLN a konto rachunku jest złotówkowe, jeśli tak, księguje rozchód w PLN. Pozycja 4 – sprawdza czy waluta dokumentu oraz waluta rozliczenia jest różna od PLN a konto rachunku jest w walucie, jeśli tak, księguje rozchód w walucie. Pozycja 5 – sprawdza czy waluta dokumentu oraz waluta rozliczenia jest różna od PLN a konto rachunku jest w PLN, jeśli tak, księguje rozchód w PLN. Pozycja 6 – sprawdza czy waluta rozliczenia jest różna od PLN i księguje rozchód w walucie Pozycje 7 – jak wyżej tylko dla przychodu. Pozycja 8 – sprawdza czy waluta dokumentu to PLN, waluta rozliczenia inna od PLN a konto rachunku jest złotówkowe, jeśli tak, księguje przychód w PLN. Pozycja 9 – sprawdza czy waluta dokumentu oraz waluta rozliczenia jest różna od PLN a konto rachunku jest w walucie, jeśli tak, księguje przychód w walucie. Pozycja 10 – sprawdza czy waluta dokumentu oraz waluta rozliczenia jest różna od PLN a konto rachunku jest w PLN, jeśli tak, księguje przychód w PLN.
Lp.Konto WnKonto MaSłownikKwotaKsięg. walutWarunek
1@KontoRach201-1-1Podmioty@Przychodnie@RozliczenieWaluta ='PLN'
2202-1-1@KontoRachPodmioty@Rozchodnie@RozliczenieWaluta ='PLN'
3@KontoRachbrak@Rozchodnie@RozliczenieWaluta <>'PLN' AND @Waluta ='PLN' AND @KontoRach ='131'
4@KontoRachbrak@Rozchodtak@RozliczenieWaluta <>'PLN' AND @Waluta <>'PLN' AND @KontoRach ='135'
5@KontoRachbrak@Rozchodnie@RozliczenieWaluta <>'PLN' AND @Waluta <>'PLN' AND @KontoRach ='131'
6203podmioty@Rozchodtak@RozliczenieWaluta <>'PLN'
7203podmioty@Przychodtak@RozliczenieWaluta <>'PLN'
8@KontoRachbrak@Przychodnie@RozliczenieWaluta <>'PLN' AND @Waluta ='PLN' AND @KontoRach ='131'
9@KontoRachbrak@Przychodtak@RozliczenieWaluta <>'PLN' AND @Waluta <>'PLN' AND @KontoRach ='135'
10@KontoRachbrak@Przychodnie@RozliczenieWaluta <>'PLN' AND @Waluta <>'PLN' AND @KontoRach ='131'
Uwaga
Jeśli w koncie przeciwstawnym zostanie wybrane konto słownikowe, a nie konkretna analityka, i podmiot wybrany na zapisie kasowym/bankowym nie ma założonego konta analitycznego, zostanie założone konto w walucie PLN, niezależnie od waluty dokumentu. Jeżeli istnieje konto walutowe i zapis jest walutowy – dokument zostanie zaksięgowany na to konto
 

Schemat dla księgowania faktur zakupu z Rejestru VAT - z wykorzystaniem segmentów kont na kategoriach

Scenariusz postępowania:
  1. W Ogólne/ Kategorie dodając Kategorię wpisujemy na zakładce Dodatkowe, w polach Konto-segment Wn i/lub Konto-segment Ma, konto księgowe odpowiadające tej kategorii np. kategoria MAT. BIUROWE, Konto-segment Wn: 401-01-03, kategoria: ENERGIA, Konto-segment Wn: 401-01-05
  2. W Rejestry VAT/Rejestry VAT/Rejestr zakupu dodajemy fakturę, na której dodajemy pozycje np. w kolumnie Kategoria: MAT. BIUROWE, odpowiednia stawka VAT, kwota netto itd. i w drugiej pozycji Kategoria: ENERGIA, odpowiednia stawka, kwota netto itd.
Schemat księgowy:
Konto WnKonto MaSłownikKwotaWarunek
202-2-1Podmioty@Brutto
221-1brak@Vat
@KatElemKontoWnbrak@Netto
@KontoDodatWn@KontoDodatMaPodmioty@KwotaDodat
@KatElemKontoWn - w schemacie dla Rejestru zakupu VAT, można wybrać to makro klikając w strzałkę obok Konto Wn, Konto Ma: Kategoria pozycji/Konto Wn kategorii. Konto księgowe zostanie pobrane z kategorii znajdującej się w pozycji faktury zakupu (kategoria pozycji przy stawkach VAT na fakturze). @KontoDodatWn/@KontoDodatMa - w schemacie Rejestru VAT, można wybrać to makro klikając w strzałkę obok Konto Wn, Konto Ma: Kwoty dodatkowe -> Konto Wn/Konto Ma. Program będzie pobierał konto z kwot dodatkowych, które znajdują się na formatce Faktury zakupu, pod ikonką Kwoty dodatkowe. Dodatkowo podział na słowniki Podmioty spowoduje, że w Kwotach dodatkowych będzie można użyć kont słownikowych dla podmiotów wybranych na dokumencie. Pozycja wykorzystująca te makra, pozwala na dodatkowe rozksięgowanie dokumentu np. poza kontem zespołu „4”, które jest pobierane z odpowiedniej kategorii pozycji, równocześnie, na określone przez użytkownika konta zespołu „5”.

Schemat dla księgowania faktur zaliczkowych i zwykłych z modułu Faktury

Poniższe schematy umożliwiają księgowanie zarówno faktur zwykłych jak i faktur zaliczkowych oraz faktur finalnych do zaliczkowych. Ostatnia pozycja w schematach pozwala na automatyczne wyksięgowania dotychczasowych zaliczek netto w celu przeksięgowania ich na konto przychodów ze sprzedaży. Schemat księgowy:
Konto WnKonto MaSłownikKwotaWarunek
201-2-1Podmioty@Brutto
221-2brak@Vat
842-2brak@Netto@CzyZaliczkowa ='TAK'
731-2brak@Netto@CzyZaliczkowa ='FINALNA' OR @CzyZaliczkowa ='NIE'
842-2731-2brak@ZalNetto@CzyZaliczkowa ='FINALNA'
Gdy konto 731-2 jest kontem słownikowym towarów, schemat może wyglądać następująco:
Konto WnKonto MaSłownikKwotaWarunek
201-2-1Podmioty@Brutto
221-2brak@Vat
842-2brak@Netto@CzyZaliczkowa ='TAK'
731-2Towary@PozNetto@CzyZaliczkowa ='FINALNA' OR @CzyZaliczkowa ='NIE'
842-2brak@ZalNetto@CzyZaliczkowa ='FINALNA'

Zaliczki pracowników

Scenariusz postępowania 1: zaliczka jest na kwotę równą fakturze zakupu:
  • pracownik pobiera zaliczkę z kasy np. 150 zł – w menu Kasa/Bank -> Zapisy Kasowe/Bankowe dodajemy dokument rozchodowy (KW), wybierając jako podmiot Pracownika.
  • pracownik przynosi fakturę zakupu (FZ) np. na kwotę 150 zł, która została zapłacona ww. zaliczką 150 zł – dodajemy zapis w menu Rejestry VAT/Rejestry VAT/ zakładka: Rejestr zakupu:
    • na pierwszej zakładce wybieramy kontrahenta, który widnieje na FZ i uzupełniamy pozostałe dane,
    • na zakładce Kontrahent, klikamy na przycisk Pracownik i wybieramy naszego zaliczkobiorcę,
    • w tabelce powyżej pojawi się lista zaliczek, w naszym przykładzie jedno KW na kwotę 150 zł, klikamy dwukrotnie w kolumnę Użyj, wybieramy TAK, w kolumnie Kwota wpisujemy 150 zł.
    • zapisujemy dokument.
Po zapisaniu, faktura zakupu oraz dokument KW zostaną całkowicie rozliczone. Scenariusz postępowania 2: zaliczka jest na kwotę wyższą od faktury zakupu:
  1. pracownik pobiera zaliczkę z kasy np. 250 zł – w menu Kasa/Bank -> Zapisy Kasowe/Bankowe dodajemy dokument rozchodowy (KW), wybierając jako podmiot Pracownika.
  2. pracownik przynosi fakturę zakupu (FZ) np. na kwotę 150 zł, która została zapłacona ww. zaliczką 150 zł, resztę zaliczki pracownik zwraca do kasy (100 zł) – dodajemy zapis w menu Rejestry VAT/Rejestry VAT/ zakładka: Rejestr zakupu:
  • na pierwszej zakładce wybieramy kontrahenta, który widnieje na FZ i uzupełniamy pozostałe dane,
  • na zakładce Kontrahent, klikamy na przycisk Pracownik i wybieramy naszego zaliczkobiorcę,
  • w tabelce powyżej pojawi się lista zaliczek, w naszym przykładzie jedno KW na kwotę 150 zł, klikamy dwukrotnie w kolumnę Użyj, wybieramy TAK, w kolumnie Kwota wpisujemy 150 zł,
  • zapisujemy dokument.
FZ jest całkowicie rozliczona, natomiast KW jest częściowo rozliczone. Pracownik wpłaca do kasy pozostałą część zaliczki:
  • w menu Kasa/Bank -> Zapisy Kasowe/Bankowe dodajemy dokument przychodowy (KP) od pracownika, na kwotę 100 zł.
  • na zakładce Rozliczenia, dokumentu KP, klikamy w strzałkę obok ikony plusa i wybieramy Kompensata,
  • gdy pojawi się lista zapisów kasowych pracownika, wybieramy KW (zaliczkę) i kompensujemy z KP.
Zaliczka pracownika jest całkowicie rozliczona. Scenariusz postępowania 3: zaliczka jest na kwotę niższą od faktury zakupu:
  1. pracownik pobiera zaliczkę z kasy np. 150 zł – w menu Kasa/Bank -> Zapisy Kasowe/Bankowe dodajemy dokument rozchodowy (KW), wybierając jako podmiot Pracownika.
  2. pracownik przynosi fakturę zakupu (FZ) np. na kwotę 250 zł, która została zapłacona ww. zaliczką 150 zł, pozostała część płatności faktury pozostaje do rozliczenia (100 zł) – dodajemy zapis w menu Rejestry VAT/Rejestry VAT/zakładka: Rejestr zakupu:
  • na pierwszej zakładce wybieramy kontrahenta, który widnieje na FZ i uzupełniamy pozostałe dane,
  • na zakładce Kontrahent, klikamy na przycisk Pracownik i wybieramy naszego zaliczkobiorcę,
  • w tabelce powyżej pojawi się lista zaliczek, w naszym przykładzie jedno KW na kwotę 150 zł, klikamy dwukrotnie w kolumnę Użyj, wybieramy TAK, w kolumnie Kwota wpisujemy 150 zł,
  • zapisujemy dokument.
FZ jest częściowo rozliczona: w Preliminarzu płatności 150 zł znajduje się na liście rozliczonych dokumentów, a pozostałe 100 zł na liście dokumentów nierozliczonych. Na zdarzeniu w Preliminarzu znajduje się kontrahent wprowadzony na fakturze. Dokument KW jest całkowicie rozliczony. Schemat księgowy: Przykładowy schemat księgowy pozwala na przeksięgowanie zaliczki z konta kontrahenta na konto pracownika, który pobrał zaliczkę na zakup.
Konto WnKonto MaSłownikKwotaWarunek
@KatElemKontoWn@Netto
221-1@VAT
202-2-1Podmioty@Brutto
202-2-1Podmioty@PlatZaliczka@TypPodmiotu ='kontrahent' AND @TypZaliczkobiorcy ='pracownik'
234Zaliczkobiorcy@PlatZaliczka@TypPodmiotu ='kontrahent' AND @TypZaliczkobiorcy ='pracownik'
Poniższy schemat pozwoli natomiast na zaksięgowanie kwoty brutto na konto kontrahenta lub na konto pracownika (z pominięciem przeksięgowywania z konta kontrahenta na konto pracownika).
Konto WnKonto MaSłownikKwotaWarunek
@KatElemKontoWn@Netto
221-1@VAT
202-2-1Podmioty@Brutto@TypPodmiotu ='kontrahent' AND @TypZaliczkobiorcy <>'pracownik'
234Zaliczkobiorcy@Brutto@TypPodmiotu ='kontrahent' AND @TypZaliczkobiorcy ='pracownik'

Przykładowy schemat do księgowania różnic kursowych

Przykład schematu dla Comarch ERP Optima w wersji 8.5 lub wyższej.
Konto WnKonto MaSłownikKwotaKsięgowanie walutoweWarunek
204Podmioty@RoznicaPlusTAK@TypRozl ='FZK-KP' OR @TypRozl ='FZ-FZK' OR @TypRozl ='FZ-KW'
204Podmioty@RoznicaMinusTAK@TypRozl ='FZK-KP' OR @TypRozl ='FZ-FZK' OR @TypRozl ='FZ-KW'
752-5brak@RoznicaPlusNIE
751-4brak@RoznicaMinusNIE
203Podmioty@RoznicaPlusTAK@TypRozl ='FSK-FS' OR @TypRozl ='FSK-KW' OR @TypRozl ='FS-KP'
203Podmioty@RoznicaMinusTAK@TypRozl ='FSK-FS' OR @TypRozl ='FSK-KW' OR @TypRozl ='FS-KP'
Ten uniwersalny schemat pozwala na zaksięgowanie dodatnich lub ujemnych różnic kursowych wynikających z dokonywanych rozliczeń na dokumentach walutowych. Rozbudowany warunek pozwala na odróżnienie, czy różnica dotyczy rozrachunków z dostawcami (konto 204), czyli mamy do czynienia z rozliczeniem Faktury zakupu z dokumentem KW ('FZ-KW'), korekty faktury zakupu z dokumentem KP ('FZK-KP') lub faktury zakupu z korektą faktury zakupu ('FZ- FZK’), czy rozrachunków z odbiorcami (konto 203) czyli mamy do czynienia z rozliczeniem faktury sprzedaży ('FS-KP'), korekty faktury sprzedaży z dokumentem KW ('FSK-KW') lub fakturą sprzedaży i korekta faktury sprzedaży ('FSK-FS'). Konta rozrachunków z kontrahentami to konta walutowe, konta różnic kursowych to konta złotówkowe. Schemat dotyczy sytuacji gdy na dokumencie rozliczanym i rozliczającym jest ten sam podmiot. Jeżeli rozrachunki walutowe z dostawcami i odbiorcami są księgowane na jedno konto np. konto 203 – nie jest potrzebny warunek rozróżniający typy dokumentów biorących udział w rozliczeniu.

Przykładowy schemat do księgowania kompensat

Schemat obejmuje najbardziej standardową sytuację czyli księgowanie kompensaty (faktura zakupu z fakturą sprzedaży) dla tego samego lub różnych podmiotów i dla dokumentów wystawionych w PLN. Schemat ten dotyczy kompensat księgowanych z poziomu Kasa/Bank/Dokumenty rozliczone (Typ schematu: Rozliczenia). Dla przykładu, przed zaksięgowaniem kompensaty, mamy następującą sytuację na kontach:   Kompensujemy w module Kasa/Bank Fakturę zakupu od kontrahenta ALOZA z Fakturą sprzedaży wystawioną dla kontrahenta ALOZA na kwotę 1000 zł i księgujemy kompensatę schematem:
Konto WnKonto MaSłownikKwotaWarunek
202-2-1Podmioty@KwotaRoz1
201-2-1Podmioty2@KwotaRoz1
  Po zaksięgowaniu mamy następującą sytuację na kontach: Tak prosty schemat jest możliwy ponieważ zawsze dokumentem rozliczanym (lewym) jest dokument rozchodowy, a dokumentem rozliczającym (prawym) dokument przychodowy. Gdybyśmy chcieli rozbudować schemat o księgowanie, poza kompensatą faktury zakupu z fakturą sprzedaży, jeszcze o dokument KW z dokumentem KP to schemat może wyglądać następująco:
Konto WnKonto MaSłownikKwotaWarunek
202-2-1Podmioty@KwotaRoz1@TypRozl ='FZ-FS'
201-2-1Podmioty2@KwotaRoz1@TypRozl ='FZ-FS'
202-2-1Podmioty@KwotaRoz1@TypRozl ='KW-KP'
201-2-1Podmioty2@KwotaRoz1@TypRozl ='KW-KP'
Słownik: Podmioty pobiera kontrahenta z dokumentu rozliczanego (lewego). Słownik: Podmioty2 – z dokumentu rozliczającego (prawego). W warunku uwzględniamy odpowiedni typ kompensaty.
  • Kwota rozliczenia – może być pobrana z dowolnego dokumentu (rozliczanego lub rozliczającego) ponieważ dla rozliczeń dokumentów wystawionych w PLN kwota rozliczona dla obydwóch dokumentów będzie taka sama.
   

OPT077- Automatyczne rozliczenia i rozrachunki

Data aktualizacji: 28-11-2018

Spis treści

1 Informacje ogólne

W Konfiguracji Firmy/ Księgowość/Księgowość kontowa dostępny jest parametr Automatyczne rozliczenia i rozrachunki. Po jego zaznaczeniu oraz po odpowiednim skonfigurowaniu programu będą automatycznie łączone rozliczenia prowadzone w module Kasa/Bank z rozrachunkami dokonywanymi na kontach księgowych w module Księga Handlowa lub Księga Handlowa Plus.
Uwaga
Rozliczenie w module Kasa/Bank skutkować będzie rozrachunkiem w module Księga Handlowa lub Księga Handlowa Plus i analogicznie rozrachunek w module Księga Handlowa lub Księga Handlowa Plus skutkować będzie rozliczeniem w module Kasa/Bank.
Nie ma znaczenia z jakiego poziomu dokonywane są rozliczenia i rozrachunki. Dodanie rozliczenia na poziomie dokumentu, skutkuje tym samym co rozliczenie z Rozliczeń Podmiotu czy z poziomu Listy Dokumentów Nierozliczonych. Również dodanie rozrachunku z poziomu zapisu księgowego skutkuje tym samym, co dodanie rozrachunku z poziomu listy rozrachunków. Automatyczne rozliczenia i rozrachunki opierają się o następujące zasady:
  • Zasada 1: Jeżeli płatności są już rozliczone i następuje księgowanie dokumentów, to ich dekrety rozrachowują się automatycznie.
  • Zasada 2: Po rozliczeniu płatności/ zapisu kasowego/bankowego rozrachowują się związane z nimi dekrety.
  • Zasada 3: Nierozliczone płatności/zapisy K/B do zaksięgowanych dokumentów rozliczą się automatycznie w momencie rozrachowania odpowiadającym im dekretów.

2 Od czego zacząć?

Aby następowało automatyczne rozliczenie i rozrachowanie należy:
  • W Konfiguracji Firmy/Księgowość/Księgowość kontowa zaznaczyć parametr Automatyczne rozliczenia i rozrachunki
  • Odpowiednio zdefiniować schematy księgowe (na pozycji schematu księgowego zaznaczyć opcję Rozrachunek, w Kwocie odwołać się do makra @KwotaPlatnosci)
  • Zdecydować czy różnice kursowe i kompensaty mają być generowane w momencie rozrachowywania z poziomu rozrachunków, czy będą księgowane schematami księgowymi z poziomu modułu Kasa/Bank (w Konfiguracji Firmy/Księgowość/Księgowość kontowa dostępny jest parametr Generowanie zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków)
Uwaga
Przed zaznaczeniem parametru Automatyczne rozliczenia i rozrachunki niezbędne jest uporządkowanie bazy danych poprzez uzgodnienie stanu nierozliczonych dokumentów z nierozrachowanymi dekretami na kontach księgowych, w przeciwnym wypadku stan na kontach i w kasie/banku może nie być spójny. Jeżeli w bazie pozostaną nierozrachowane dekrety powstałe po zaksięgowaniu schematami, w których nie wykorzystano nowo wprowadzonych makr to nie nastąpi automatyczny rozrachunek tych dekretów nawet jeśli powstanie rozliczenie w module Kasa/Bank. Analogicznie jeżeli Użytkownik dokona rozrachunku tych dekretów to nie nastąpi rozliczenie w module Kasa/Bank.
Uwaga
Przy porządkowaniu bazy danych pomocny może być wydruk Rozliczenia/rozrachunki > Zestawienie rozliczeń i rozrachunków, dostępny z poziomu Kasa/Bank/Dokumenty nierozliczone, zakładka Na dzień, który pokazuje stan rozliczeń i rozrachunków danego podmiotu na wybrany dzień.
Uwaga
Przydatna może być również opcja seryjnego zaznaczenia parametru Rozrachunek na wybranych dekretach księgowych oraz pozycjach bilansu otwarcia. Funkcja dostępna jest z poziomu Księgowość/Dzienniki/ zakładka Konto oraz Księgowość/Inne/Dokumenty BO/formularz bilansu otwarcia poprzez wybór z menu kontekstowego opcji Zaznacz rozrachunek/Odznacz rozrachunek.

2.1 Definiowanie schematów księgowych

Automatyczne rozliczenia i rozrachunki dokonują się prawidłowo tylko w sytuacji gdy schematy księgowe użyte do zaksięgowania dokumentów są zbudowane we właściwy sposób. Niezbędne jest zdefiniowanie schematów, w których:
  • w elemencie schematu księgowego zaznaczony jest parametr Rozrachunek,
  • w Kwocie jest odwołanie do makra @KwotaPlatnosci (na pozycji schematu należy wybrać Kwota/ Płatności/ Kwota płatności). Wynika to z zasady, że dokonujemy rozrachunku dekretów odpowiadających rozliczanym płatnościom.
Podział na słowniki: Płatnicy  - odwołuje się do Płatnika wybranego na zdarzeniu w Preliminarzu płatności jeżeli w kwocie jest wybrane makro @KwotaPlatnosci. Jeżeli w pozycji schematu nie ma odwołania do makr związanych z płatnościami (ani w kwocie, ani w koncie) to podział na słowniki działa na płatnika z nagłówka dokumentu. Makro @KwotaPlatnosci można łączyć jedynie z makrami dotyczącymi nagłówka. Nie można łączyć go z makrami odwołującymi się do pozycji dokumentu. Makra dostępne dla Płatnika w polach Konto, Opis i Warunek (zarówno w nagłówku, jak i w elemencie schematu) pobierają wartości z konkretnych płatności, a nie z nagłówka dokumentu. Dodatkowo w schematach służących do księgowania dokumentów posiadających płatności, w pozycji Warunek (w elemencie schematu) dostępna jest opcja: Płatności/Waluta płatności (makro @WalutaPlatnosci), sprawdzająca walutę rozliczenia na zdarzeniu w Preliminarzu płatności.
Uwaga
Aby nastąpiło automatyczne rozliczenie i rozrachowanie waluta rozliczenia wybrana na zdarzeniu w Preliminarzu płatności musi zgadzać się z walutą konta, na które następuje księgowanie dokumentu. W przeciwnym wypadku pojawia się komunikat informujący o tym, że waluta rozliczenia nie zgadza się z walutą rozrachunku i nie następuje automatyczne połączenie rozliczeń z rozrachunkami

Przykład
Schemat księgowy pozwalający na zaksięgowanie dokumentów w Rejestrze VAT sprzedaży

W jaki sposób zostaną zaksięgowane dokumenty? 

  • Jeżeli w polu Konto i/lub Kwota następuje odwołanie do makr związanych z płatnościami oraz wybrany jest Podział na słowniki: Płatnicy to tworzy się tyle pozycji ile jest płatności na Podmiot wybrany na płatności. Jeżeli w polu Kwota następuje odwołanie do makra @Brutto to każdy dekret utworzony zostanie na kwotę brutto z dokumentu.
  • Jeżeli w polu Konto i/lub Kwota następuje odwołanie do makr związanych z płatnościami oraz wybrany jest Podział na słowniki: Podmioty to tworzy się tyle pozycji ile jest płatności na Podmiot wybrany na dokumencie w polu Kontrahent.
  • Jeżeli w polu Konto i/lub Kwota nie następuje odwołanie do makr związanych z płatnościami i wybrany jest Podział na słowniki: Płatnicy to tworzy się jeden dekret na Płatnika wybranego w nagłówku dokumentu w kwocie zależnej od liczby płatności (wartość jest zwielokrotniona gdy występuje więcej niż jedna płatność).
  • Jeżeli w polu Konto i/lub Kwota nie następuje odwołanie do makr związanych z płatnościami i wybrany jest Podział na słowniki: Podmioty to tworzy się jeden dekret na Podmiot wybrany na dokumencie w polu Kontrahent.
Uwaga
W związku z tym, że makro @KwotaPlatnosci odwołuje się do kwoty z preliminarza płatności, która nie może być ujemna a jedynie różni się kierunkiem przepływu pieniędzy (przychód, rozchód), dokumenty wprowadzone do Rejestru VAT księgowane są zawsze ze znakiem „+”. Aby zaksięgować dokumenty w kwocie ujemnej należy odpowiednio zmodyfikować schematy księgowe
Przykład
Schemat księgowy pozwalający na zaksięgowanie dokumentów w Rejestrze VAT sprzedaży z podziałem na kwoty dodatnie i ujemne
Przykład
Schemat księgowy pozwalający na zaksięgowanie dokumentów w Rejestrze VAT zakupu z podziałem na kwoty dodatnie i ujemne.   PREDEKRETACJA Funkcjonalność automatycznych rozliczeń i rozrachunków działa również w przypadku, gdy dokument jest księgowany nie schematem, a wg predekretacji. Warunkiem jest jednak, aby zakładka [Predekretacja] nie była uzupełniana ręcznie, a wygenerowana na podstawie schematu księgowego, który w kwocie ma odwołanie do makra @KwotaPlatnosci (wyjątkiem jest predekretacja raportów kasowych/bankowych, różnic kursowych oraz kompensat). SCHEMATY STOWARZYSZONE Podczas rozliczania dokumentów następuje automatyczne rozrachowanie tylko dekretu „głównego”, tzn. powstałego z księgowania schematem głównym, dekrety powstałe z księgowania schematem stowarzyszonym nie zostaną rozrachowane.

Przykład
Mamy wprowadzone dwa dokumenty: Dok1 i Dok2, nie są rozliczone. Dokument Dok1 jest już zaksięgowany (i widoczny z poziomu Księgowość/ Rozrachunki jako PK1). Dokument Dok2 również jest zaksięgowany, ale schematem z podpiętym schematem stowarzyszonym (z poziomu Księgowość/ Rozrachunki jest więc dekret PK2 powstały z księgowania schematem „głównym” i dekret PK3 powstały z księgowania schematem stowarzyszonym). Następnie z poziomu modułu Kasa/Bank rozliczamy oba dokumenty Dok1 i Dok2. Następuje wówczas automatyczne rozrachowanie dekretu PK1 z PK2. Dekret PK3, jako dekret powstały z księgowania schematem stowarzyszonym, nie zostanie automatycznie rozrachowany.

2.2 Bilans otwarcia i ręcznie wprowadzane zapisy księgowe

Funkcjonalność automatycznych rozliczeń i rozrachunków działa nie tylko dla dekretów powstałych z księgowania schematem księgowym, ale również dla pozycji bilansu otwarcia i dla dekretów ręcznie wprowadzanych z poziomu Księgowość/Dzienniki. Ważne jednak jest aby na pozycjach bilansu otwarcia i/lub ręcznie wprowadzanych dekretach, które mają podlegać funkcji automatycznych rozliczeń i rozrachunków, zaznaczone były parametry Rozrachunek i Generowanie płatności.

3 Automatyczne rozliczenia i rozrachunki – jak to działa?

Funkcjonalność automatycznych rozliczeń i rozrachunków polega na tym, że:
  • Zasada 1: w momencie zaksięgowania dokumentów już ze sobą rozliczonych dekrety automatycznie się rozrachowują
  • Zasada 2: w momencie rozliczenia płatności/ zapisu K/B do zaksięgowanych dokumentów automatycznie rozrachowują się związane z nimi dekrety
  • Zasada 3: w momencie rozrachowania dekretów odpowiadające im nierozliczone płatności/ zapisy kasowe/bankowe rozliczają się automatycznie 
Przykład
Działanie zgodnie z zasadą 1: w momencie zaksięgowania dokumentów już ze sobą rozliczonych dekrety automatycznie się rozrachowują. Dwa dokumenty na tą samą kwotę, rozliczone, tylko jeden z nich zaksięgowany. Mamy wprowadzone dwa dokumenty: Dok1 i Dok2 (np. fakturę sprzedaży i wyciąg bankowy). Dokument Dok1 został już zaksięgowany na konto np. 201-ABC, schematem odwołującym się do makra @KwotaPlatnosci, z zaznaczonym parametrem Rozrachunek. Dokument Dok2 nie jest jeszcze zaksięgowany. Oba dokumenty są już ze sobą rozliczone w module Kasa/Bank. Następnie księgujemy dokument Dok2 (na to samo konto np. 201-ABC, z zaznaczonym parametrem Rozrachunek) – w tym momencie nastąpi automatyczne rozrachowanie dekretów Dek1 i Dek2.
Przykład
Działanie zgodnie z zasadą 2: w momencie rozliczenia płatności/ zapisu K/B do zaksięgowanych dokumentów automatycznie rozrachowują się związane z nimi dekrety. Dwa dokumenty na tą samą kwotę, nierozliczone, zaksięgowane na to samo konto. Mamy wprowadzone dwa dokumenty: Dok1 i Dok2 (np. fakturę sprzedaży i wyciąg bankowy). Następnie oba księgujemy na to samo konto po przeciwnych stronach, np. 201-ABC, z zaznaczonym parametrem Rozrachunek, dokument  Dok1 (faktura sprzedaży) jest księgowany schematem odwołującym się do makra @KwotaPlatnosci. W tym momencie mamy więc sytuację, gdzie oba dokumenty są widoczne w module Kasa/Bank jako nierozliczone i w Księgowość/ Rozrachunki jako nierozrachowane. Następnie rozliczamy dokumenty z poziomu modułu Kasa/Bank (płatność P1 i P2), następuje wówczas automatyczne rozrachowanie dekretów (Dek1 i Dek2).
Przykład
Działanie zgodnie z zasadą 3: w momencie rozrachowania dekretów odpowiadające im nierozliczone płatności/ zapisy kasowe/bankowe rozliczają się automatycznie. Dwa dokumenty na tą samą kwotę, zaksięgowane na to samo konto, nierozliczone i nierozrachowane. Mamy wprowadzone dwa dokumenty: Dok1 i Dok2 (np. fakturę sprzedaży i wyciąg bankowy). Następnie oba księgujemy na to samo konto po przeciwnych stronach, np. 201-ABC, z zaznaczonym parametrem Rozrachunek, dokument Dok1 (faktura sprzedaży) jest księgowany schematem odwołującym się do makra @KwotaPlatnosci. W tym momencie mamy więc sytuację, gdzie oba dokumenty są widoczne w module Kasa/Bank jako nierozliczone i w Księgowość/ Rozrachunki jako nierozrachowane. Następnie z poziomu z poziomu Księgowość/ Rozrachunki/ Rozrachunki zakładka [Nierozrachowane] lub z pozycji dekretu z zakładki Rozrachunki rozrachowujemy dekrety (Dek1 i Dek2), następuje wówczas automatyczne rozliczenie dokumentów w module Kasa/Bank.
Uwaga
Jeżeli dokonujemy tylko częściowego rozliczenia to również dekrety zostaną rozrachowane na taką samą kwotę. Analogicznie w drugą stronę: częściowe rozrachowanie dekretów powoduje częściowe rozliczenie płatności.

4 Kompensaty i różnice kursowe

Możemy zdecydować, czy kompensaty i różnice kursowe mają być generowane w momencie rozrachowywania z poziomu rozrachunków czy będą księgowane schematami księgowymi z poziomu modułu Kasa/Bank – zależne jest to od parametru Generowanie zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków dostępnego w Konfiguracji Firmy/Księgowość/Księgowość kontowa (pod uwagę brane są kompensaty z poziomu Kasa/Bank/Dokumenty rozliczone, a nie Dokumenty kompensat z poziomu Kasa/Bank/ Dokumenty kompensat).

4.1 Zaznaczony parametr Generowanie zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków

Jeżeli w Konfiguracji parametr o generacji zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków jest zaznaczony, to na formularzu okresu obrachunkowego w Konfiguracji Firmy/Księgowość/Okresy obrachunkowe należy wskazać dzienniki księgowań oraz daty księgowania dla dekretu różnicy kursowej oraz dekretu kompensaty generowanych podczas rozliczania rozrachunków w „tle” lub podczas dokonywania rozrachunków z listy rozrachunków nierozrachowanych lub z pozycji dekretu z zakładki Rozrachunki.
Rys. 1. Formularz okresu obrachunkowego
Należy również uzupełnić Domyślne konta dla różnic kursowych poprzez wskazanie na formularzu waluty (Konfiguracja Programu/ Ogóle/ Waluty) konta istniejącego w planie kont w bieżącym okresie obrachunkowym.
Rys 2. Formularz waluty
Uwaga
W sytuacji gdy na planie kont istnieje więcej kont dla danej waluty należy odznaczyć w Konfiguracji parametr Generowanie zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków oraz księgować dokumenty różnic kursowych oraz dokumenty kompensat z poziomu modułu Kasa/Bank
Nieuzupełnienie wyżej wymienionych pól powoduje podczas księgowania dokumentów walutowych rozliczonych wcześniej w module Kasa/Bank lub podczas rozliczania w module Kasa/Bank zaksięgowanych wcześniej dokumentów dokonanie jedynie rozrachunku głównego na kontach księgowych. Nie generuje się natomiast dekret różnicy kursowej (pojawia się odpowiedni komunikat o braku kont i/lub dziennika). Analogicznie w przypadku dokumentów księgowanych na dwa różne konta nie generuje się dekret kompensaty. Jeżeli konto na formularzu waluty nie jest uzupełnione to pojawia się komunikat: Nie zdefiniowano kont dla różnic kursowych w ustawieniach waluty [Symbol waluty]. Jeżeli na formularzu okresu obrachunkowego nie został uzupełniony Dziennik RK lub Użytkownik posiada zakaz do dziennika to pojawia się komunikat: Nie zdefiniowano dziennika dla różnic kursowych w konfiguracji okresu obrachunkowego lub operator ma zakaz do tego dziennika. Jeżeli na formularzu okresu obrachunkowego nie został uzupełniony Dziennik KOMP lub Użytkownik posiada zakaz do dziennika to pojawia się komunikat: Nie zdefiniowano dziennika dla kompensat w konfiguracji okresu obrachunkowego lub operator ma zakaz do tego dziennika. Jeżeli na formularzu okresu obrachunkowego nie został uzupełniony Dziennik RK lub Dziennik KOMP to podczas rozrachowywania z listy rozrachunków (lub z pozycji dekretu z zakładki Rozrachunki) dekretów walutowych dla różnych kont księgowych dekret różnicy kursowej oraz dekret kompensaty generuje się do pierwszego dziennika dostępnego w bieżącym okresie obrachunkowym, do którego Użytkownik nie ma zakazu. Dodatkowo pojawia się komunikat: Nastąpiła zmiana domyślnego dziennika dla kompensaty. Czy ustawić nowy dziennik jako domyślny w konfiguracji? oraz Nastąpiła zmiana domyślnego dziennika dla różnicy kursowej. Czy ustawić nowy dziennik jako domyślny w konfiguracji? Zaakceptowanie komunikatów powoduje zapisanie dzienników na formularzu okresu obrachunkowego. Jeśli na formularzu okresu obrachunkowego uzupełniony został Dziennik RK i Dziennik KOMP i podczas rozrachowywania dekretów walutowych dla różnych kont księgowych Użytkownik wskazuje na dokumencie kompensaty i dokumencie różnicy kursowej inny dziennik to pojawia się komunikat: Nastąpiła zmiana domyślnego dziennika dla kompensaty. Czy ustawić nowy dziennik jako domyślny w konfiguracji? oraz Nastąpiła zmiana domyślnego dziennika dla różnicy kursowej. Czy ustawić nowy dziennik jako domyślny w konfiguracji? Zaakceptowanie komunikatu powoduje zapisanie dekretu dokumentu kompensaty oraz dekretu dokumentu różnicy kursowej do dzienników wskazanych na dokumencie oraz zmianę dzienników na formularzu okresu obrachunkowego. Wybór opcji Nie powoduje zapisanie dekretu kompensaty oraz dekretu różnicy kursowej do dzienników wskazanych na dokumencie, natomiast kolejne dekrety zapisywane będą do dzienników wskazanych na formularzu okresu obrachunkowego.
Uwaga
Przy zaznaczonym parametrze Generowanie zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków w konfiguracji nie ma możliwości księgowania kompensat i różnic kursowych z poziomu Kasa/Bank. Podczas próby księgowania pojawi się komunikat „Nie można rozpocząć księgowania dokumentu. W Konfiguracji Firma/Księgowość/Księgowość kontowa jest ustawiony parametr Generowanie zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków.
Uwaga
Przy zaznaczonym parametrze Wymuszaj zatwierdzanie zapisów księgowych, dekrety różnic kursowych oraz kompensaty nie zostaną wygenerowane jeżeli zapis ten jest wcześniejszy od “najmłodszego” zapisu w buforze (lub jest późniejszy od “najstarszego” zapisu w buforze) o więcej niż 2 miesiące. W takim wypadku dodawanie dokumentu jest blokowane, w logu z operacji pojawia się komunikat: “Nie udało się wygenerować dekretu róźnicy kursowej/kompensaty z powodu błędu. Przekroczono okres dwóch miesięcy dla zapisów w buforze.
Rys 3. Ilustracja na potrzeby przykładów 7-9
Przykład
Działanie zgodnie z zasadą 1: w momencie zaksięgowania dokumentów już ze sobą rozliczonych dekrety automatycznie się rozrachowują Mamy dwa dokumenty walutowe po różnych kursach, wprowadzone na różne podmioty: Dok1 i Dok2, do których są płatności w module Kasa/Bank: P1 (płatność do Dok1), P2 (płatność do Dok2). Dokument Dok1 jest już zaksięgowany (schematem odwołującym się do makra @KwotaPlatnosci), powstał dekret Dek1. Następnie rozliczamy płatności P1 z P2 (w module Kasa/Bank powstaje różnica kursowa RK i kompensata KOMP). Później księgujemy dokument Dok2 (powstaje dekret Dek2), w tym momencie następuje automatyczne rozrachowanie dekretów Dek1 z Dek2 oraz powstaje dekret różnicy kursowej Dek3 RK i dekret kompensaty Dek4 KOMP, które zostają automatycznie powiązane z kompensatą i różnicą kursową z modułu Kasa/Bank. Opis poszczególnych kroków:
  1. Rozliczenie pomiędzy P1 i P2 -> w module Kasa/Bank powstaje dokument różnicy kursowej RK i kompensata KOMP.
  2. Księgowanie Dok2 schematem odwołującym się do makra @KwotaPlatnosci -> tworzy się dekret Dek2.
  3. System automatycznie generuje rozrachunek pomiędzy Dek1 a Dek2.
  4. Powstają dekrety Dek3 RK oraz Dek4 KOMP, które zostają automatycznie powiązane z kompensatą i różnicą kursową wygenerowanymi w module Kasa/Bank. Zarówno różnica kursowa, jak i kompensata na liście dokumentów w Kasa/Bank widnieją w kolorze niebieskim. Podgląd zapisu księgowego wskazuje dekret kompensaty lub dekret różnicy kursowej.
Przykład
Przykład jak powyżej, ale inna kolejność wykonywanych kroków - działanie zgodnie z zasadą 2: w momencie rozliczenia płatności/ zapisu K/B do zaksięgowanych dokumentów automatycznie rozrachowują się związane z nimi dekrety) Mamy dwa dokumenty walutowe po różnych kursach, wprowadzone na różne podmioty: Dok1 i Dok2, do których są płatności w module Kasa/Bank: P1 (płatność do Dok1), P2 (płatność do Dok2). Dokument Dok1 jest już zaksięgowany (schematem odwołującym się do makra @KwotaPlatnosci), powstał dekret Dek1. Opis kolejnych kroków:
  1. Księgujemy Dok2 schematem odwołującym się do makra @KwotaPlatnosci -> tworzy się dekret Dek2.
  2. Rozliczamy płatności P1 i P2 -> w module Kasa/Bank powstaje dokument różnicy kursowej RK i kompensata KOMP. System automatycznie generuje rozrachunek pomiędzy Dek1 a Dek2.
  3. Powstają dekrety Dek3 RK oraz Dek4 KOMP, które zostają automatycznie powiązane z kompensatą i różnicą kursową wygenerowanymi w module Kasa/Bank. Zarówno różnica kursowa, jak i kompensata na liście dokumentów w Kasa/Bank widnieją w kolorze niebieskim. Podgląd zapisu księgowego wskazuje dekret kompensaty lub dekret różnicy kursowej.
Przykład
Przykład jak powyżej, ale inna kolejność wykonywanych kroków - działanie zgodnie z zasadą 3: w momencie rozrachowania dekretów odpowiadające im nierozliczone płatności/ zapisy kasowe/bankowe rozliczają się automatycznie. Mamy dwa dokumenty walutowe po różnych kursach, wprowadzone na różne podmioty: Dok1 i Dok2, do których są płatności w module Kasa/Bank: P1 (płatność do Dok1), P2 (płatność do Dok2). Dokument Dok1 jest już zaksięgowany (schematem odwołującym się do makra @KwotaPlatnosci), powstał dekret Dek1. Opis kolejnych kroków:
  • Księgujemy Dok2 schematem odwołującym się do makra @KwotaPlatnosci -> tworzy się dekret Dek2.
    1. Z poziomu Księgowość/Rozrachunki lub z poziomu zapisu księgowego rozrachowujemy Dek1 z Dek2.
    2. W momencie rozrachowywania pojawia się formatka z propozycją zapisu polecenia księgowania dla powstałej różnicy kursowej i kompensaty.
    3. Po zatwierdzeniu formatki powstają dekrety Dek3 RK oraz Dek4 KOMP, które zostają automatycznie powiązane z kompensatą i różnicą kursową wygenerowanymi w module Kasa/Bank. Zarówno różnica kursowa, jak i kompensata na liście dokumentów w Kasa/Bank widnieją w kolorze niebieskim. Podgląd zapisu księgowego wskazuje dekret kompensaty lub dekret różnicy kursowej.
Rys 4. Automatyczne generowanie zapisu księgowego różnicy kursowej i kompensaty, zakładka [Różnica kursowa]

Uwaga
Każde rozliczenie powoduje identyczne rozrachowanie na dekretach i na odwrót, każdy rozrachunek spowoduje rozliczenie. Jeżeli więc w module Kasa/Bankdokonano kilku częściowych rozliczeń, do których w module Kasa/Bank wygenerowane zostały dokumenty różnicy kursowej i/lub dokumenty kompensaty to w księgowości kontowej podczas rozrachowania dekretów związanych z tymi płatnościami również powstanie tyle samo dokumentów różnicy kursowej i/lub dokumentów kompensaty.

4.2 Odznaczony parametr Generowanie zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków

Jeżeli w Konfiguracji parametr o generacji zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków jest odznaczony, wówczas dekrety RK i KOMP nie powstają w momencie rozrachunku, różnice kursowe i kompensaty wygenerowane w module Kasa/Bank należy księgować schematem księgowym.
Rys 5. Ilustracja na potrzeby przykładów 10-12
Przykład
Działanie zgodnie z zasadą 1: w momencie zaksięgowania dokumentów już ze sobą rozliczonych dekrety automatycznie się rozrachowują. Mamy dwa dokumenty walutowe po różnych kursach, wprowadzone na różne podmioty: Dok1 i Dok2, do których są płatności w module Kasa/Bank: P1 (płatność do Dok1), P2 (płatność do Dok2). Dokument Dok1 jest już zaksięgowany (schematem odwołującym się do makra @KwotaPlatnosci), powstał dekret Dek1. Następnie rozliczamy płatności P1 z P2 (w module Kasa/Bank powstaje kompensata KOMP i różnica kursowa RK). Później księgujemy dokument Dok2 (powstaje dekret Dek2), w tym momencie następuje automatyczne rozrachowanie dekretów Dek1 z Dek2. Należy również z poziomu modułu Kasa/Bank zaksięgować powstałą kompensatę i różnicę kursową. Dekrety RK i KOMP zostaną automatycznie powiązane z rozrachunkami. Opis poszczególnych kroków:
  1. Rozliczenie pomiędzy P1 i P2 -> w module Kasa/Bank powstaje dokument różnicy kursowej RK i kompensata KOMP.
  2. Księgowanie Dok2 schematem odwołującym się do makra @KwotaPlatnosci -> tworzy się dekret Dek2.
  3. System automatycznie generuje rozrachunek pomiędzy Dek1 a Dek2.
  4. Z poziomu Kasa/Bank/ Dokumenty rozliczone księgujemy kompensatę -> powstaje dekret Dek3 KOMP.
  5. Dekret kompensaty zostaje automatycznie powiązany z rozrachunkami.
  6. Z poziomu Kasa/Bank/ Różnice kursowe księgujemy różnicę kursową -> powstaje dekret Dek4 RK.
  7. Dekret różnicy kursowej zostanie automatycznie powiązany z rozrachunkami.
Przykład
Przykład jak powyżej, ale inna kolejność wykonywanych kroków - działanie zgodnie z zasadą 2: w momencie rozliczenia płatności/ zapisu K/B do zaksięgowanych dokumentów automatycznie rozrachowują się związane z nimi dekrety. Mamy dwa dokumenty walutowe po różnych kursach, wprowadzone na różne podmioty: Dok1 i Dok2, do których są płatności w module Kasa/Bank: P1 (płatność do Dok1), P2 (płatność do Dok2). Dokument Dok1 jest już zaksięgowany (schematem odwołującym się do makra @KwotaPlatnosci), powstał dekret Dek1. Opis kolejnych kroków:
  1. Księgujemy Dok2 schematem odwołującym się do makra @KwotaPlatnosci -> tworzy się dekret Dek2.
  2. Rozliczamy płatności P1 i P2 -> w module Kasa/Bank powstaje dokument różnicy kursowej RK i kompensata KOMP.
  3. System automatycznie generuje rozrachunek pomiędzy Dek1 a Dek2.
  4. Z poziomu Kasa/Bank/ Dokumenty rozliczone księgujemy kompensatę -> powstaje dekret Dek3 KOMP.
  5. Dekret kompensaty zostaje automatycznie powiązany z rozrachunkami.
  6. Z poziomu Kasa/Bank/ Różnice kursowe księgujemy różnicę kursową -> powstaje dekret Dek4 RK.
  7. Dekret różnicy kursowej zostaje automatycznie powiązany z rozrachunkami.
Przykład
Przykład jak powyżej, ale inna kolejność wykonywanych kroków - działanie zgodnie z zasadą 3: w momencie rozrachowania dekretów odpowiadające im nierozliczone płatności/ zapisy kasowe/bankowe rozliczają się automatycznie. Mamy dwa dokumenty walutowe po różnych kursach, wprowadzone na różne podmioty: Dok1 i Dok2, do których są płatności w module Kasa/Bank: P1 (płatność do Dok1), P2 (płatność do Dok2). Dokument Dok1 jest już zaksięgowany (schematem odwołującym się do makra @KwotaPlatnosci), powstał dekret Dek1. Opis kolejnych kroków:
  1. Księgujemy Dok2 schematem odwołującym się do makra @KwotaPlatnosci -> tworzy się dekret Dek2.
  2. Z poziomu Księgowość/ Rozrachunki lub z poziomu zapisu księgowego rozrachowujemy Dek1 z Dek2.
  3. System automatycznie rozliczył dokumenty Dok1 i Dok2.
  4. Z poziomu Kasa/Bank/ Dokumenty rozliczone księgujemy kompensatę -> powstaje dekret Dek3 KOMP.
  5. Dekret kompensaty zostaje automatycznie powiązany z rozrachunkami.
  6. Z poziomu Kasa/Bank/ Różnice kursowe księgujemy różnicę kursową -> powstaje dekret Dek4 RK.
  7. Dekret różnicy kursowej zostaje automatycznie powiązany z rozrachunkami.

4.3 Usuwanie od strony rozliczenia

Jeżeli rozliczenie jest połączone z rozrachunkiem to usunięcie rozliczenia z poziomu modułu Kasa/Bank nie jest możliwe, pojawia się komunikat: Nie można usunąć rozliczenia powiązanego z rozrachunkiem. Należy usunąć rozrachunek z poziomu Księgowość/Rozrachunki. Jeżeli na dekrecie zaznaczony jest parametr Rozrachunek bez rozliczenia w K/B to usunięcie rozliczenia jest możliwe ze względu na brak powiązania pomiędzy rozliczonymi płatnościami i rozrachowanymi dekretami. Usunięcie rozliczenia w takim przypadku nie powoduje usunięcia rozrachunku.

4.4 Usuwanie od strony rozrachunku

Możliwość usuwania automatycznie wygenerowanych rozliczeń i rozrachunków istnieje tylko od strony rozrachunków. Przy próbie usunięcia rozrachunku powiązanego z rozliczeniem (zarówno z listy rozrachunków rozrachowanych, jak i z pozycji dekretu z zakładki Rozrachunki) pojawia się komunikat: Rozrachunek połączony z rozliczeniem. Czy usunąć rozliczenie? Zaakceptowanie komunikatu powoduje usunięcie rozrachunku wraz z rozliczeniem. Wybór opcji Nie powoduje usunięcie tylko rozrachunku, rozliczenie w module Kasa/Bank pozostaje.
Uwaga
Jeżeli w Konfiguracji parametr o automatycznych rozliczeniach  i rozrachunkach jest zaznaczony to w przypadku seryjnego usuwania rozrachunków z poziomu Księgowość/ Rozrachunki/ Rozrachunki zakładka [Rozrachowane] komunikat: Rozrachunek połączony z rozliczeniem. Czy usunąć rozliczenie? pojawia się tylko raz. Wybór opcji Tak lub Nie działa na wszystkie dekrety zaznaczone na liście.
Podczas usuwania rozrachunków walutowych automatycznie usunięty zostanie dekret różnicy kursowej, który jest powiązany z tym rozrachunkiem pod warunkiem, że dekret różnicy kursowej nie jest zatwierdzony na czysto, znajduje się w bieżącym okresie obrachunkowym, Użytkownik usuwający rozrachunek nie ma zakazu usuwania dekretów z dziennika, w którym znajduje dekret różnicy kursowej oraz dekret różnicy kursowej nie był wprowadzany ręcznie. Usuwany jest zarówno dekret powstały podczas generacji rozrachunków jak i dekret powstały po zaksięgowaniu dokumentu różnicy kursowej w module Kasa/Bank. Podczas usuwania rozrachunków dla dwóch różnych kont księgowych automatycznie usunięty zostanie dekret kompensaty, który jest powiązany z tym rozrachunkiem pod warunkiem, że dokument kompensaty nie jest zatwierdzony na czysto, znajduje się w bieżącym okresie obrachunkowym oraz Użytkownik usuwający rozrachunek nie ma zakazu usuwania dekretów z dziennika, w którym znajduje się dekret kompensaty. Usuwany jest zarówno dekret powstały podczas generacji rozrachunków jaki i dekret powstały po zaksięgowaniu dokumentu kompensaty w module Kasa/Bank. Jeżeli dokument różnicy kursowej i/lub dokument kompensaty został zaksięgowany na czysto, nie znajduje się w bieżącym okresie obrachunkowym lub Użytkownik usuwający rozrachunek ma zakaz usuwania dekretów z dziennika w którym znajduje się dekret różnicy kursowej i/lub dekret kompensaty to podczas usuwania rozrachunku pojawia się odpowiedni komunikat informujący o przyczynie błędu. Następuje usunięcie rozrachunku między dekretami, natomiast dekret różnicy kursowej i/lub kompensaty pozostaje. Pozostaje również powiązanie tego dekretu z dokumentem różnicy kursowej i/lub dokumentem kompensaty w module Kasa/Bank i rozliczenie w module Kasa/Bank nie zostaje usunięte. Poniższa tabelka pokazuje w jaki sposób następuje usuwanie rozrachunku i dekretów RK/ KOMP, w zależności od tego w jakim są okresie obrachunkowym oraz czy są w buforze czy już zatwierdzone. Z poziomu dekretu różnicy kursowej nie ma możliwości usunięcia rozrachunku. Podczas próby usunięcia pojawia się komunikat: Rozrachunek różnicy kursowej należy usunąć z listy rozrachunków.
Uwaga
Podczas generowania storna dekretów rozrachowanych następuje usunięcie rozrachunku między dekretami natomiast rozliczenie w module Kasa/Bank pozostaje.
W przypadku gdy rozrachunek dokonany został pomiędzy dekretem lub dekretami z zaznaczonym parametrem Rozrachunek bez rozliczenia w K/B to usunięcie rozrachunku nie powoduje usunięcia rozliczenia (więcej informacji na temat działania tego parametru znajduje się w rozdziale Rozrachunek bez rozliczenia w K/B). Podczas usuwania rozrachunku automatycznie usunięty zostanie dekret różnicy kursowej oraz dekret kompensaty pod warunkiem, że dokument nie jest zatwierdzony na czysto, znajduje się w bieżącym okresie obrachunkowym oraz Użytkownik usuwający rozrachunek nie ma zakazu usuwania dekretów z dziennika, w którym znajduje się dekret różnicy kursowej i/lub kompensaty.
Uwaga
Nie można usunąć zapisu księgowego posiadającego rozrachowany rozrachunek. Podczas próby usunięcia zapisu księgowego pojawia sią komunikat: Zapis księgowy [Nr dokumentu] posiada rozliczone dekrety. Rozrachunek należy usunąć z poziomu Księgowość/ Rozrachunki lub bezpośrednio z dekretu z zakładki Rozrachunki.

4.5 Ponowne rozrachowanie wcześniej usuniętych rozrachunków połączonych z automatycznymi rozliczeniami

Jeżeli rozrachunki były połączone z rozliczeniami i dokonano usunięcia rozrachunku, ale nie zostały usunięte rozliczenia (dekret różnicy kursowej i/lub dekret kompensaty jest zatwierdzony na czysto, Użytkownik ma zakaz usuwania dekretów z dziennika lub zakaz do konta lub zrezygnowano z usunięcia rozliczenia podczas usuwania rozrachunku) to podczas ponownego generowania rozrachunku na tę samą kwotę połączą się one z wcześniej wygenerowanymi rozliczeniami pod warunkiem, że nie dokonano modyfikacji dekretów. W przypadku braku zgodności pojawia się komunikat: Wystąpił błąd podczas rozliczania dokumentów kasowych/bankowych. Rozliczenie niemożliwe. Dokument [Nr dokumentu] jest już rozliczony. Podczas ponownego dokonywania rozrachunku należy zrezygnować z generowania dekretu różnicy kursowej i/lub dekretu kompensaty (lub odznaczyć w Konfiguracji parametr o generacji zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków i wskazać podczas dokonywania rozrachunku dekret różnicy kursowej). Po wskazaniu dekret różnicy kursowej połączy się z rozrachunkiem. Nie ma możliwości wskazania dokumentu kompensaty. Użytkownik powinien go wcześniej usunąć.

5 Co jeszcze warto wiedzieć?

5.1 Dokumenty walutowe z VAT w PLN

Dokumenty walutowe z zaznaczonym parametrem Płatność VAT w PLN generują dwie płatności w dwóch różnych walutach (jedna płatność na kwotę netto w walucie obcej i druga na kwotę VAT w walucie PLN). Dlatego też, aby nastąpiło automatycznie rozliczenie i rozrachowanie po zaksięgowaniu takiego dokumentu muszą powstać dwa dekrety na kwotę i w walucie odpowiadającej tym płatnościom. Jeżeli dokument będzie zaksięgowany w kwocie brutto w walucie dokumentu podczas rozliczania nie nastąpi automatyczne rozrachowanie dekretów.
Uwaga
Aby prawidłowo zaksięgować dokument walutowy z zaznaczonym Płatność VAT w PLN, w pozycji schematu księgowego przy wyborze makra @KwotaPlatnosci w warunku należy się odwołać do waluty płatności, np. @WalutaPlatnosci ='PLN'.

5.2 Blokowanie pól na płatnościach/ dekretach

Jeżeli w Konfiguracji firmy jest włączony parametr Automatyczne rozliczenia i rozrachunki, to w celu uniknięcia niezgodności pomiędzy danymi na płatności, a danymi:
  • na dekretach powstałych po zaksięgowaniu makrem @KwotaPlatnosci,
  • na dekretach powstałych po zaksięgowaniu raportów kasowych/bankowych,
  • na dekretach powstałych po zaksięgowaniu dokumentu różnicy kursowej i/lub dokumentu kompensaty z poziomu modułu Kasa/Bank,
  • predekretacji dokumentów w wyżej wymienionych przypadkach,
zablokowane są  następujące pozycje: Kwota, Waluta, Termin rozrachunku oraz pola związane z określeniem notowania waluty. Analogicznie w drugą stronę: po zaksięgowaniu dokumentu makrem @KwotaPlatnosci na zdarzeniu w Preliminarzu płatności zablokowane zostaną następujące pola: Podmiot, Kwota, Termin płatności, Waluta rozliczenia oraz pola związane z określeniem notowania waluty. Dodatkowo taka płatność nie podlega podziałowi.
Uwaga
Makro @KwotaPlatnosci działa w ten sposób niezależnie od zaznaczonego/odznaczonego parametru Automatyczne rozliczenia i rozrachunki dostępnego w Konfiguracji Firmy/Księgowość/Parametry

5.3 Zakładka [Dokumenty]

Na pozycji zapisu księgowego dostępna jest zakładka [Dokumenty]. Na zakładce pokazywane są wszystkie dokumenty powiązane z danym rozrachunkiem. Można podglądnąć nagłówek drugiego dokumentu PK, RK i KOMP. Na pozycji dekretu różnicy kursowej i dekretu kompensaty pokazywane jest powiązanie z nagłówkami dekretów rozliczanych. Jeżeli zapis księgowy różnicy kursowej i/lub zapis księgowy kompensaty powstanie po zaksięgowaniu tych dokumentów z poziomu modułu Kasa/Bank i posiada kilka pozycji to każda z tych pozycji ma widoczne powiązanie z dekretami rozrachunku głównego.
Rys 6. Zakładka [Dokumenty] na pozycji rozliczanego dekretu

5.4 Powiązanie rozliczeń pomiędzy modułami – podgląd

W programie istnieje możliwość podglądu powiązań pomiędzy rozliczeniami prowadzonymi w module Kasa/Bank a rozrachunkami dokonywanymi na kontach księgowych. Jeżeli w Konfiguracji Firmy/ Księgowość/ Parametry wybrano Rodzaj księgowości: Księgowość kontowa oraz w Konfiguracji Firmy/ Księgowość/ Księgowość kontowa zaznaczono parametr Automatyczne rozliczenia i rozrachunki, po dokonaniu rozliczenia w module Kasa/Bank widoczna jest ikona ,  a po wykonaniu rozrachunku na kontach księgowych w module Księga Handlowa lub Księga Handlowa Plus dostępna jest ikona . Podgląd rozliczeń w module Księga Handlowa lub Księga Handlowa Plus jest dostępny z poziomu:
  • Księgowość/ Rozrachunki/ Rozrachunki, zakładka [Rozrachowane],
  • formularza Polecenia Księgowania oraz formularza BO,
  • formularza dekretu, z każdej zakładki oraz pozycji BO.
Po kliknięciu w ikonę Rozliczeń z poziomu formularza Polecenia Księgowania (dla dekretu podświetlonego) lub z poziomu formularza dekretu (zakładka [Ogólne] lub [Dokumenty]), otwierane jest okno Listy dokumentów rozliczających, na której wyświetlane są wszystkie rozliczenia dokonane w module Kasa/Bank związane z dekretem, z poziomu którego uruchamiamy ikonę Rozliczeń. Klikając w ikonę Rozliczenia z poziomu formularza dekretu, z zakładki Rozrachunki, na Liście dokumentów rozliczających domyślnie widoczne jest rozliczenie związane z podświetlonym dekretem rozrachowującym. Pod listą dostępny jest parametr Pokaż rozliczenia dla całego dekretu. Jego zaznaczenie powoduje wyświetlanie rozliczeń dla całego dekretu. Podglądu rozliczeń można również dokonać z poziomu Księgowość/ Rozrachunki/ Rozrachunki, poprzez kliknięcie w ikonę Rozliczenia w zakładce Rozrachowane co pozwoli na wyświetlenie rozliczeń związanych z podświetlonym rozrachunkiem. Jeżeli dekret nie posiada powiązanych rozliczeń w module Kasa/Bank to po kliknięciu w ikonę rozliczeń pojawia się komunikat: Dekret nie posiada skojarzonych rozliczeń. W przypadku dekretu różnicy kursowej po kliknięciu w ikonę rozliczeń z poziomu:
  • formularza zapisu księgowego różnicy kursowej,
  • Księgowość/ Rozrachunki/ Rozrachunki, zakładka [Rozrachowane], jeżeli na liście podświetlony jest dekret podrzędny różnicy kursowej,
  • formularza dekretu różnicy kursowej, z każdej zakładki,
pojawia się komunikat: Rozrachunek związany z różnicą kursową, nie można podglądnąć rozliczeń. Podgląd rozrachunków w module Kasa/Bank dostępny jest z poziomu:
  • Preliminarza płatności,
  • listy zapisów kasowych/bankowych,
  • formularza zdarzenia w Preliminarzu płatności lub formularza zapisu kasowego/bankowego, z każdej zakładki.
Uwaga
Kolumny na Liście rozrachunków związanych z rozliczeniami: Kwota dekretu wal [symbol waluty] oraz Kwota rozrachunku wal [symbol waluty] są widoczne jeżeli pobrano moduł Księga Handlowa Plus oraz w Konfiguracji Firmy/ Księgowość/ Księgowość kontowa zaznaczono parametr Obsługa kont walutowych.
Po kliknięciu w ikonę Rozrachunków z poziomu Preliminarza płatności, listy zapisów kasowych/bankowych, formularza zdarzenia w Preliminarzu płatności (za wyjątkiem zakładki Rozliczenia) lub formularza zapisu kasowego/bankowego (za wyjątkiem zakładki Rozliczenia dokumentów), na Liście rozrachunków związanych z rozliczeniami widoczne są wszystkie rozrachunki dokonane na kontach księgowych związane z dokumentem, z poziomu którego uruchamiamy ikonę Rozrachunków. Po kliknięciu w ikonę Rozrachunków z poziomu formularza zdarzenia w Preliminarzu płatności, z zakładki Rozliczenia lub formularza zapisu kasowego/bankowego, z zakładki Rozliczenia dokumentów domyślnie widoczny jest rozrachunek związany z podświetlonym rozliczeniem. Pod listą dostępny jest parametr Pokaż dla całego dokumentu. Jego zaznaczenie powoduje wyświetlanie rozrachunków dla całego dokumentu. Jeżeli dokument nie posiada powiązanych rozrachunków na kontach księgowych to po kliknięciu w ikonę Rozrachunków pojawia się komunikat: Dokument kasowy/bankowy nie posiada skojarzonych rozrachunków.

5.5 Zapisywanie dekretu w momencie dodawania rozrachunku

Aby można było dokonać rozrachunku z poziomu dekretu księgowego, to na moment generowania rozrachunku zapis księgowy musi się bilansować. W przeciwnym wypadku przy próbie dodania rozrachunku (po kliknięciu na ikonę plusa na zakładce Rozrachunki) pojawi się komunikat: Nie można dokonać rozrachunku. Nie można zapisać dokumentu niezbilansowanego. Kwota niezbilansowana XXXX. Jeżeli na dokument polecenia księgowania wprowadzamy zapis powodujący bilansowanie całego PK i od razu dokonujemy jego rozrachowania na zakładce Rozrachunki, to dekrety zostają zapisane do bazy danych już w momencie ich rozrachowania. Po dokonaniu rozrachunku dokument PK pozostaje otwarty i można wprowadzać na nim kolejne dekrety. Rozrachunek zapisuje się do bazy danych w czasie rzeczywistym stąd zamknięcie okna bez zapisywania zmian nie działa. Rozrachunek należy usunąć za pomocą ikony kosza. Jeżeli na dokumencie PK nie uzupełniono pola Numer dokumentu to w momencie próby dokonania rozrachunku po kliknięciu w ikonę plusa pojawia się komunikat: Nie można dokonać rozrachunku. Brak numeru dokumentu na zapisie księgowym.

5.6 Moduły operatora

W przypadku pracy na bazie danych z włączoną opcją automatycznych rozliczeń i rozrachunków podczas rozliczania dokumentów automatycznie dokonywane są rozrachunki, nawet jeśli zalogowany operator który dokonuje rozliczenia nie ma pobranego modułu Księga Handlowa lub Księga Handlowa Plus.
Przykład
Operator1 loguje się tylko na moduł Kasa/Bank, Operator2 loguje się na moduł Kasa/Bank i Księga Handlowa. Jeżeli Operator1 rozlicza płatności w module Kasa/Bank, wówczas automatycznie „w tle” rozrachowują się również odpowiednie dekrety. Operator2 po zalogowaniu na moduł Księga Handlowa i wejściu w Księgowość/ Rozrachunki widzi już te dekrety jako rozrachowane.
Uwaga
W przypadku, gdy firma posiada tylko moduł Księga Handlowa (bez modułu Księga Handlowa Plus) nie można generować automatycznych rozliczeń/rozrachunków walutowych. Automat działa tylko gdy waluta płatności zgadza się z walutą dekretu. Przy próbie rozliczenia dokumentów walutowych, które są zaksięgowane na konta złotówkowe (moduł Księga Handlowa, a nie Księga Handlowa Plus) pojawi się komunikat Wystąpił problem podczas rozrachowywania dokumentów [Dok1] z [Dok2]. Nie wygenerowano rozrachunku - różna waluta rozliczenia [XXX] i dekretu [PLN].

5.7 Data rozliczenia/ rozrachunku

Dokonanie rozrachunku z odpowiednią datą powoduje wygenerowanie rozliczenia w module Kasa/Bank z tą samą datą. Analogicznie dokonanie rozliczenia powoduje wygenerowanie rozrachunku na kontach księgowych z tą samą datą.
Uwaga
Potwierdzenie salda wygenerowane w module Kasa/Bank będzie zgodne z Potwierdzeniem wygenerowanym w module księgowym jeżeli data zdarzenia w Preliminarzu płatności będzie taka sama jak data księgowania dokumentu. W sytuacji, gdy w Konfiguracji Firmy/ Kasa/Bank/ Daty dokumentów wskazana zostanie data inna niż data wpływu lub wystawienia to mogą wystąpić różnice pomiędzy Potwierdzeniami sald generowanymi w obydwu modułach.
Jeżeli w Konfiguracji Firmy/ Księgowość/ Księgowość kontowa zaznaczony jest parametr Generowanie zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków to na formularzu okresu obrachunkowego (Konfiguracja Firmy/ Księgowość/ Okresy obrachunkowe) należy wskazać dzienniki księgowań oraz daty księgowania dla dekretu różnicy kursowej oraz dekretu kompensaty. Data księgowania domyślnie ustawiana jest jako data rozrachunku, która jest pobierana z Konfiguracji Firmy/ Księgowość/ Księgowość kontowa, parametr Data rozrachunku jako późniejsza z dat. Jeżeli na formularzu okresu obrachunkowego wskazana jest data rozrachunku to podczas księgowania dokumentów rozliczonych wcześniej w module Kasa/Bank lub podczas rozliczania w module Kasa/Bank zaksięgowanych wcześniej dokumentów rozrachunek oraz dekret różnicy kursowej i /lub kompensaty generowane są z datą rozliczenia powstałego w module Kasa/Bank. Jeżeli na formularzu okresu obrachunkowego wskazana jest data bieżąca to podczas księgowania dokumentów rozliczonych wcześniej w module Kasa/Bank lub podczas rozliczania w module Kasa/Bank zaksięgowanych wcześniej dokumentów rozrachunek generowany jest z datą rozliczenia powstałego w module Kasa/Bank natomiast dekret różnicy kursowej i /lub kompensaty generowany jest z datą bieżącą. Podczas generowania rozrachunków z poziomu Księgowość/ Rozrachunki/ Rozrachunki zakładka [Nierozrachowane] lub z pozycji dekretu z zakładki [Rozrachunki] dekret różnicy kursowej i /lub kompensaty generowany jest z datą wskazaną na formularzu okresu obrachunkowego natomiast rozliczenie w module Kasa/Bank generowane jest z datą rozrachunku.
Uwaga
Jeżeli data rozrachunku/bieżąca jest spoza bieżącego okresu obrachunkowego wówczas dekret różnicy kursowej i/lub kompensaty zostanie wygenerowany na pierwszy dzień okresu ustawionego jako bieżący.
Poniższa tabelka pokazuje jaka data jest ustawiana jako data rozliczenia/ rozrachunku oraz jako data różnicy kursowej i kompensaty w zależności od ustawień w Konfiguracji Firmy/ Księgowość/ Okresy obrachunkowe na formularzu okresu obrachunkowego.
Uwaga
Jeżeli usuniemy rozrachunek, a nie usuniemy rozliczenia (na pytanie Zaznaczone rozrachunki są połączone z rozliczeniami. Czy usunąć rozliczenia? odpowiemy Nie), a następnie ponownie rozrachujemy dekrety, to rozrachunek utworzy się z datą ustawioną w Konfiguracji Firmy/ Księgowość/Księgowość kontowa, parametr Data rozrachunku jako późniejsza z dat, a nie z datą rozliczenia.
Księgowanie dokumentów rozliczonych wcześniej w module Kasa/Bank lub rozliczanie w module Kasa/Bank zaksięgowanych wcześniej dokumentówGenerowanie rozrachunków z poziomu Księgowość/ Rozrachunki/ Rozrachunki zakładka [Nierozrachowane] lub z pozycji dekretu z zakładki [Rozrachunki]
Data księgowania RK/KOMP w Konfiguracji jako data ROZRACHUNKU
data rozrachunku = data rozliczenia
data dekretu RK/KOMP = data rozliczenia

data rozliczenia = data rozrachunku
data dekretu RK/KOMP = data rozrachunku
Data księgowania RK/KOMP w Konfiguracji jako data BIEŻĄCA
data rozrachunku = data rozliczenia
data dekretu RK/KOMP = data bieżąca

data rozliczenia = data rozrachunku
data dekretu RK/KOMP = data bieżąca

5.8 Praca rozproszona – import rozliczeń

Funkcjonalność automatycznych rozliczeń i rozrachunków działa również w przypadku importu dokumentów i rozliczeń przez pracę rozproszoną. W momencie importu rozliczeń do zaksięgowanych już dokumentów nastąpi automatyczne rozrachowanie dekretów.
  • Przypadek, gdy dokumenty w bazie docelowej są zaksięgowane i nierozliczone
Do bazy docelowej mamy przeniesione dokumenty, np. FA i raport bankowy, są już zaksięgowane ale jeszcze nierozliczone/ nierozrachowane. Następnie pracą rozproszoną importujemy rozliczenia. Po zaimportowaniu w module Kasa/Bank następuje rozliczenie zdarzeń z zapisami bankowymi, automatycznie nastąpi też rozrachowanie odpowiadających im dekretów. Dodatkowo, gdy importowane rozliczenie dotyczy zapisów walutowych z różnymi kursami lub gdy jest to kompensata, oprócz automatycznego rozrachowania wygenerowane zostaną też dekrety Różnicy kursowej i Kompensaty. Powstanie dekretu RK i/lub KOMP uzależnione jest od parametru Generowanie zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków dostępnego w Konfiguracji Firmy/ Księgowość/ Księgowość kontowa.
  • Przypadek, gdy dokumenty w bazie docelowej są zaksięgowane i rozliczone
Do bazy docelowej mamy przeniesione dokumenty, np. FA i raport bankowy, są już zaksięgowane i rozrachowane. Następnie pracą rozproszoną importujemy rozliczenia. Operacja nie powiedzie się, gdyż w bazie docelowej dokumenty są już rozliczone (w momencie rozrachowania dekretów nastąpiło automatyczne rozliczenie). W logu z przebiegu importu pojawi się komunikat Wystąpił błąd przy imporcie składnika. Rozliczenie niemożliwe. Dokument [Dok1] jest już rozliczony. Wyjątkiem jest sytuacja, gdy rozrachowane dekrety miały zaznaczony parametr Bez rozliczenia w K/B. W takim przypadku w momencie rozrachowywania dekretów nie nastąpiło automatyczne rozliczenie (więcej informacji na temat działania tego parametru znajduje się w rozdziale Rozrachunek bez rozliczenia w K/B). Wówczas w momencie importu rozliczeń pracą rozproszoną import się powiedzie.
  • Przypadek, gdy dokumenty w bazie docelowej nie są zaksięgowane
Do bazy docelowej mamy przeniesione dokumenty, np. FA i raport bankowy, które nie są jeszcze zaksięgowane.
Następnie pracą rozproszoną importujemy rozliczenia, dokumenty zostają więc rozliczone. Jeżeli później zaksięgujemy dokumenty, automatycznie nastąpi rozrachowanie dekretów.

5.9 Filtry i operacje seryjne

W celu dodatkowego ułatwienia i przyspieszenia pracy pewne operacje można wykonywać seryjnie.
  • Zaznacz/Odznacz rozrachunek
Z poziomu Księgowość/ Dzienniki/ zakładka [Konto] oraz na formularzu bilansu otwarcia (Księgowość/ Inne/ Dokumenty BO) jest możliwość seryjnego zaznaczenia/odznaczenia parametru Rozrachunek dla wybranych dekretów księgowych/ pozycji bilansu otwarcia poprzez wybór opcji z menu kontekstowego Zaznacz rozrachunek/Odznacz rozrachunek.
  • Ustaw/Odznacz rozrachunek bez rozliczenia w K/B
Z poziomu Księgowość/ Plan kont jest możliwość seryjnego zaznaczenia/odznaczenia parametru Rozrachunek bez rozliczenia w K/B dla zaznaczonych kont księgowych poprzez wybór opcji Ustaw/Odznacz rozrachunek bez rozliczenia w K/B dostępnej w menu kontekstowym oraz pod ikoną operacji seryjnych.
  • Kompensaty bez rozrachunku
Z poziomu Księgowość/ Dzienniki w filtrze pod listą dostępny jest parametr Kompensaty bez rozrachunku. Po jego zaznaczeniu wyświetlone zostaną dekrety kompensat, które nie zostały automatycznie usunięte przy usuwaniu rozrachunków, ze względu na to że były zatwierdzone na czysto i/lub znajdowały się w okresie obrachunkowym innym niż bieżący i/lub Użytkownik usuwający rozrachunek miał zakaz do usuwania dekretów z dziennika, w którym znajduje się dekret kompensaty.  

6. Nie działa automatyczne rozliczanie/rozrachowywanie – dlaczego?

Jeżeli rozliczamy dokumenty, a mimo to nie nastąpiło automatyczne rozrachowanie dekretów, a także odwrotnie: rozrachowanie nie spowodowało automatycznego rozliczenia, może to wynikać z kilku powodów (wynikających zarówno z zamierzonego działania funkcjonalności, jak i z błędnego skonfigurowania programu).
Na samym początku należy więc sprawdzić:
  • Parametr w konfiguracji
Należy sprawdzić, czy w Konfiguracji Firmy/ Księgowość/ Księgowość kontowa zaznaczony jest parametr Automatyczne rozliczenia i rozrachunki. Parametr musi być zaznaczony, aby działało automatyczne rozliczanie i rozrachowywanie.
  • Schematy księgowe
Należy sprawdzić czy schemat wykorzystywany do księgowania dokumentu jest zdefiniowany prawidłowo. Aby zadziałał mechanizm automatycznych rozliczeń i rozrachunków:
  • w elemencie schematu księgowego musi być zaznaczony parametr Rozrachunek
  • w Kwocie ma być odwołanie do makra @KwotaPlatnosci (na pozycji schematu należy wybrać Kwota/ Płatności/ Kwota płatności).
Jeżeli powyższe opcje są poprawnie skonfigurowane, a mimo to nie działa funkcjonalność automatycznych rozliczeń i rozrachunków, należy jeszcze sprawdzić przypadki wymienione w kolejnych podrozdziałach.

6.1 Sytuacje, w których automat nie zadziała

W niżej wymienionych przypadkach funkcjonalność automatycznych rozliczeń i rozrachunków nie zadziała. Nie pojawią się dodatkowe komunikaty, gdyż funkcjonalność ta wynika z przyjętych w programie zasad działania automatycznych rozliczeń/rozrachunków.

6.1.1 Parametr Rozrachunek

Na dekretach powstałych z księgowania schematem musi być zaznaczony parametr Rozrachunek. Aby funkcjonalność zadziałała dla pozycji bilansu otwarcia i/lub dla dekretów ręcznie wprowadzanych z poziomu Księgowość/ Dzienniki ważne jest, aby były na nich zaznaczone parametry Rozrachunek i Generowanie płatności.

6.1.2 Rozrachunek bez rozliczenia w K/B

Mogą zdarzyć się sytuacje, w których nie chcemy aby rozliczenie dokumentów powodowało automatyczne rozrachowanie ich dekretów (i analogicznie w drugą stronę: aby rozrachowanie spowodowało automatyczne rozliczenie). Można w takich sytuacjach wykorzystać parametr Bez rozliczenia w K/B. Na pozycji zapisu księgowego można zaznaczyć parametr Bez rozliczenia w K/B. Jest on dostępny jeżeli w Konfiguracji Firmy/ Księgowość/ Księgowość kontowa zaznaczony jest parametr Automatyczne rozliczenia i rozrachunki. Parametr na pozycji zapisu księgowego zostanie zaznaczony automatycznie w sytuacji, gdy konto wybrane na dekrecie ma na swoim formularzu w planie kont zaznaczony parametr Rozrachunek bez rozliczenia w K/B. Parametr podlega edycji. Parametr dostępny jest również na formularzu dokumentu BO. W przypadku pozycji BO należy najpierw zaznaczyć parametr Rozrachunek. Po jego zaznaczeniu przenoszą się ustawienia z formularza konta. Parametr podlega edycji. W przypadku dekretu z parametrem Bez rozliczenia w K/B przy rozrachowywaniu dekretów na kontach księgowych nie następuje automatyczne rozliczenie w module Kasa/Bank. Analogicznie po rozliczeniu dokumentów w module Kasa/Bank nie następuje automatyczne rozrachowanie odpowiadających im dekretów.
Rozrachunek dekretu z parametrem Rozrachunek bez rozliczenia w K/B
  • Rozrachowanie dekretów jeżeli płatności w module Kasa/Bank nie są rozliczone
Jeżeli jeden lub oba dekrety biorące udział w rozrachunku mają zaznaczony parametr Bez rozliczenia w K/B to podczas rozrachowania tych dekretów dokonuje się rozrachunek, powstaje ewentualny dekret różnicy kursowej i/lub dekret kompensaty (jeżeli w Konfiguracji jest zaznaczony parametr o generacji zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków), ale nie następuje rozliczenie płatności w module Kasa/Bank.
  • Rozrachowanie dekretów jeżeli płatności module Kasa/Bank są rozliczone
Jeżeli jeden lub oba dekrety biorące udział w rozrachunku mają zaznaczony parametr Bez rozliczenia w K/B to podczas rozrachowania tych dekretów dokonuje się rozrachunek, powstaje ewentualny dekret różnicy kursowej i/lub kompensaty (jeżeli w Konfiguracji jest zaznaczony parametr o generacji zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków), ale nie następuje powiązanie rozrachunku z wygenerowanym wcześniej rozliczeniem. Jeżeli płatności w module Kasa/Bank zostały rozliczone oraz w Konfiguracji parametr o generacji zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków jest odznaczony lub Użytkownik rezygnuje z tych dokumentów podczas generowania rozrachunku to istnieje możliwość wskazania do rozrachunku dokumentu różnicy kursowej zaksięgowanego w module Kasa/Bank. Dekret kompensaty powstały w module Kasa/Bank nie zostanie podłączony do rozrachunku. Jeżeli w Konfiguracji parametr o generacji zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków jest zaznaczony, a dokument różnicy kursowej i/lub dokument kompensaty wygenerowany w module Kasa/Bank nie jest zaksięgowany to nie będzie powiązania pomiędzy tymi dokumentami.
  • Rozrachowanie dekretów w momencie księgowania jeśli płatności w module Kasa/Bank są rozliczone
Jeżeli płatności w module Kasa/Bank zostały rozliczone i Użytkownik księguje drugi dokument, do którego tworzy się dekret z zaznaczonym parametrem Bez rozliczenia w K/B (lub parametr został zaznaczony na dekrecie powstałym do pierwszego dokumentu) to podczas księgowania nie tworzy się rozrachunek.

6.1.3 Storno zapisu księgowego

Podczas generowania storna dekretów rozliczonych i rozrachowanych następuje usunięcie rozrachunku, natomiast rozliczenie w module Kasa/Bank nie jest usuwane. Jeżeli ze stornowanym dekretem jest powiązany dekret różnicy kursowej i/lub kompensaty to rozrachunki również są usuwane, ale sam dekret RK i/lub KOMP pozostaje.
Przykład
Mamy dwa dokumenty, np. fakturę sprzedaży i fakturę zakupu, zaksięgowane (powstały dekrety Dek1 i Dek2), zarówno rozliczone jak i rozrachowane. Powstał do nich dekret kompensaty. Dekrety są już zatwierdzone. Następnie wykonujemy storno dekretu Dek1. Pojawia się komunikat „Zapis księgowy posiada rozliczone dekrety. Po wykonaniu storna rozrachunki zostaną usunięte. Czy wykonać storno dekretu księgowego?”. Po jego zaakceptowaniu pojawia się informacja „Rozliczenie nie zostało usunięte. Z rozrachunkiem związany jest dekret kompensaty [KOMPK/1/2015]. Dekrety należy usunąć ręcznie”. W efekcie rozrachunki między dekretami Dek1 i Dek2 zostały usunięte, natomiast w module Kasa/Bank dokumenty są ciągle rozliczone. Na liście zapisów księgowych ciągle jest widoczny zapis związany z kompensatą, który należy usunąć ręcznie jeżeli znajduje się w buforze lub dokonać storna jeżeli dekret kompensaty jest już zatwierdzony. Jeżeli ponownie zaksięgujemy odksięgowany dokument (tzn. fakturę, której dekret został wcześniej wystornowany) nastąpi automatyczne rozrachowanie nowego dekretu z dekretem Dek2. Powstanie również powiązanie rozrachunków z rozliczeniami. Utworzony zostanie dekret kompensaty, który będzie powiązany z kompensatą w module Kasa/Bank.

W przypadku stornowania dekretu powiązanego z różnicą kursową program działa analogicznie, jak w wyżej opisanym przykładzie dot. kompensaty.

Uwaga
Podczas generowania storna dekretów rozliczonych następuje usunięcie rozrachunku między dekretami, natomiast rozliczenie w module Kasa/Bank pozostaje

6.1.4 Dokument kompensaty

Funkcjonalność automatycznych rozliczeń i rozrachunków i automatyczne wiązanie dekretu kompensaty z dokumentem z modułu Kasa/Bank działa dla kompensat widocznych z poziomu Kasa/Bank/ Dokumenty rozliczone, a nie dla Dokumentów kompensat z poziomu Kasa/Bank/ Dokumenty kompensat.

6.1.5   Bilans otwarcia na podstawie preliminarza i kasy

Funkcjonalność automatycznych rozliczeń i rozrachunków nie działa dla pozycji bilansu otwarcia generowanych w oparciu o płatności w Preliminarzu płatności (tzn. w sytuacji, gdy w pierwszym okresie obrachunkowym najpierw wprowadzamy płatności do modułu Kasa/Bank, a następnie z poziomu Księgowość/ Inne/ Dokumenty BO na formularzu BO naciskamy na ikonę Inicjalizuj b.o. na podstawie preliminarza i kasy oraz na tak wygenerowanych pozycjach zaznaczamy parametr Rozrachunek to pomimo późniejszego rozrachowania takich pozycji bilansu nie nastąpi rozliczenie płatności – i analogicznie: rozliczenie płatności nie spowoduje rozrachowania dekretów).

6.2 Możliwe komunikaty

6.2.1 Różna waluta rozliczenia i dekretu

Komunikat Nie wygenerowano rozrachunku/rozliczenia - różna waluta rozliczenia [XXX] i dekretu [PLN] pojawia się w sytuacji, gdy dokumenty walutowe zostały zaksięgowane na konta złotówkowe. W takiej sytuacji nie ma możliwości automatycznego rozliczania i rozrachowywania.
Przykład
Mamy dwa dokumenty walutowe Dok1 i Dok2, oba zaksięgowane na konta złotówkowe. W module Kasa/Bank rozliczamy je ze sobą, pojawia się komunikat „Wystąpił problem podczas rozrachowywania dokumentów [Dok1] z [Dok2]. Nie wygenerowano rozrachunku - różna waluta rozliczenia [EUR] i dekretu [PLN].”. Rozliczenie dokumentów się udaje, natomiast dekrety Dek1 i Dek2 nie zostają automatycznie rozrachowane. Analogicznie w drugą stronę: Mamy dwa dokumenty walutowe Dok1 i Dok2, oba zaksięgowane na konta złotówkowe. Z poziomu Księgowość/ Rozrachunki lub z poziomu zapisu księgowego rozrachowujemy oba dekrety, pojawia się komunikat „Wystąpił błąd podczas rozliczania dokumentów kasowych/bankowych. Nie wygenerowano rozliczenia - różne waluty rozliczenia i dekretu.”. Dekrety zostają rozrachowane, natomiast płatności w Kasa/Bank nie są automatycznie rozliczane.

6.2.2 Dokument, który nie podlega rozliczeniu

Komunikat Rozliczenie niemożliwe. Dokument [NR DOKUMENTU] nie podlega rozliczeniu pojawia się w sytuacji, kiedy próbujemy rozrachować dekrety do dokumentów, z których przynajmniej jeden ma na płatności ustawiony status: nie podlega rozliczeniu.
Przykład
Mamy dwa dokumenty Dok1 i Dok2, oba zaksięgowane. W preliminarzu płatności zmieniamy płatności do dokumentu Dok1 na: nie podlega. Następnie rozrachowujemy dekrety Dek1 z Dek2, pojawia się komunikat „Wystąpił błąd podczas rozliczania dokumentów kasowych/bankowych. Rozliczenie niemożliwe. Dokument [Dok1] nie podlega rozliczeniu.”. W efekcie dekrety Dek1 i Dek2 zostają rozrachowane, ale nie ma powiązania z rozliczeniami w module Kasa/Bank (status płatności się nie zmienia)

6.2.3 Księgowanie po złej stronie konta

Komunikat Nie udało się wykonać rozrachunku ponieważ rozrachunki są po tej samej stronie konta pojawia się w sytuacji, kiedy dokument jest księgowany po złej stronie konta, a w związku z tym nie można go automatycznie rozrachować z odpowiednimi dokumentami.
Przykład
Mamy np. fakturę sprzedaży, zaksięgowaną, wygenerowany został rozrachunek. Następnie rozliczamy ją z zapisem kasowym. Później księgujemy raport kasowy, ale schemat księgowy jest błędnie zdefiniowany i zapis KP trafia na właściwe konto rozrachunkowe, ale po złej stronie (a w związku z tym nie można go automatycznie rozrachować z dekretem do faktury). Samo księgowanie raportu się udaje, ale w logu z przebiegu księgowania, na końcu, mamy informację Wystąpił problem podczas rozrachowywania dokumentów [KP/1/2015/KASA] z [FS/1/2015]. Nie udało się wykonać rozrachunku ponieważ rozrachunki są po tej samej stronie konta.
Przykład
Parametr „Generowanie zapisu księgowego kompensaty i/lub różnicy kursowej z rozrachunków” w Konfiguracji jest niezaznaczony. Mamy dwa dokumenty walutowe Dok1 i Dok2, z różnymi kursami. Oba są zaksięgowane. Następnie je rozliczamy, powstaje więc różnica kursowa widoczna w Kasa/Bank/ Różnice kursowe. Następnie księgujemy różnicę kursową, jednak schemat jest błędnie zdefiniowany i RK jest księgowana po złej stronie konta, a w związku z tym nie można jej automatycznie rozrachować z dekretami dokumentów Dok1 i Dok2. Samo księgowanie różnicy kursowej się udaje, ale w logu z przebiegu księgowania, na końcu, mamy informację BŁĄD ROZRACHOWYWANIA DOKUMENTU (RKUR/1/2015/EUR) Nie udało się wykonać rozrachunku ponieważ rozrachunki są po tej samej stronie konta.

6.2.4 Rozrachunek na kwotę większą niż pozostająca do rozliczenia

Komunikat Nie można dokonać rozliczenia w module Kasa/Bank ponieważ kwota rozliczenia jest większa niż kwota pozostająca do rozliczenia. Rozrachunek został wygenerowany oznacza, że kwota jaką próbujemy rozrachować jest większa, niż kwota pozostała do rozliczenia na płatności powiązanej z rozrachowywanym dekretem. W takiej sytuacji dekrety zostaną rozrachowane, natomiast nie zmieni się stan rozliczeń w module Kasa/Bank.

Przykład
Mamy dwa dokumenty Dok1 i Dok2 na kwotę 100PLN. Dokument Dok1 jest nierozliczony (N), Dok2 jest częściowo rozliczony z innym dokumentem (C). Oba dokumenty zostały zaksięgowane, powstały dekrety Dek1 i Dek2. Następnie generujemy rozrachunek między Dek1 a Dek2. Pojawia się komunikat „Wystąpił błąd podczas rozliczania dokumentów kasowych/bankowych. Nie można dokonać rozliczenia w module Kasa/Bank ponieważ kwota rozliczenia jest większa niż kwota pozostająca do rozliczenia. Rozrachunek został wygenerowany.” W efekcie dekrety Dek1 i Dek2 zostają rozrachowane, natomiast stan rozliczeń w module Kasa/Bank się nie zmienia.
 
 

OPT067- Ulga na złe długi w pliku JPK_V7

Data aktualizacji: 25-09-2023

1 Informacje ogólne

W celu rozliczenia ulgi na złe długi należy złożyć plik JPK_V7 zawierający część ewidencyjna i deklaracyjną z uwzględnieniem wartości wykazywanych w zakładce [Ulga na złe długi (VAT-ZD)] (Zawiadomienie o skorygowaniu podstawy opodatkowania oraz kwoty podatku należnego).

W programie Comarch ERP Optima z poziomu zakładki Rejestry Vat/Pliki JPK_V7 lub z poziomu zakładki JPK/Pliki JPK_V7 na liście plików JPK_V7 na zakładce [Ulga na złe długi (VAT-ZD)], można dodać zawiadomienie VAT-ZD o typie Sprzedaż lub Zakup.

Lista ta jest analogiczna jak ta dotycząca załączników VAT-ZD dla deklaracji VAT-7, nie zawiera tylko kolumn e-Deklaracje i Data wysłania. Również same załączniki VAT-ZD generowane za październik 2020 i okresy późniejsze nie zawierają już zakładki [e-Deklaracje]. Wzorzec dokumentu elektronicznego dla plików JPK_V7 nie przewiduje wysyłania  załącznika VAT-ZD. Jednakże załączniki te nadal są potrzebne w celu utworzenia zapisów korekcyjnych do niezapłaconych faktur, które to powinny w pliku JPK_V7 się znaleźć. Lista zawiera kolumny: Miesiąc, Rok, Korekta, Data obliczenia, Kwota oraz Status.

Lista zawiera te same zawiadomienia VAT-ZD, które zostały dodane dla deklaracji VAT-7 (Rejestry VAT/ Deklaracje VAT-7/ zakładka VAT-ZD). Dodanie zawiadomienia na jednej z tych list powoduje wyświetlenie go również w drugim miejscu.

Mechanizm obliczania ulgi na złe długi działa tylko w oparciu o dokumenty wprowadzone do rejestrów VAT z zaznaczonym parametrem Rozliczać w VAT.

Uwaga
Przed generowaniem pliku JPK_V7, jeżeli ma zostać uwzględniona ulga na złe długi, należy najpierw naliczyć zawiadomienie VAT-ZD, wygenerować zapisy korekcyjne i dopiero wówczas utworzyć plik JPK_V7.

Na liście możliwe jest dodanie załącznika VAT-ZD zarówno dla sprzedaży jak i dla zakupu. Po wygenerowaniu zawiadomienia należy utworzyć do niego zapisy korekcyjne, które zostaną pobrane w momencie generowania pliku JPK_V7. Generowanie zapisów korekcyjnych należy wykonać przed dodaniem pliku JPK_V7 za ten okres lub jego  zatwierdzeniem (dotyczy plików zawierających część deklaracyjną).

W przypadku, gdy plik JPK_V7 za dany okres zostanie już zablokowany lub wysłany a Użytkownik będzie chciał wykonać zapisy korekcyjne do zawiadomienia VAT-ZD za ten sam okres co utworzony już plik JPK_V7 pojawi się komunikat: Nie można wygenerować korekty. Deklaracja VAT-7/JPK_V7 za ten okres została już zablokowana przed zmianami.

SPRZEDAŻ

Na zawiadomieniu VAT-ZD o typie Sprzedaż wykazywane są faktury, które na dzień złożenia pliku JPK_V7 w postaci ewidencyjnej i deklaracyjnej nie zostały zapłacone, a minęło już 90 dni od ich terminu płatności. Termin płatności dotyczy każdej z części płatności wykazanej na fakturze.

Na zawiadomieniu VAT-ZD o typie Sprzedaż możliwe jest naliczenie zawiadomienia dla podmiotów nie będących podatnikami VAT czynnymi oraz dla osób fizycznych. Na formularzu zawiadomienia VAT-ZD o typie Sprzedaż znajduje się sekcja Uwzględniaj dokumenty dla z możliwością zaznaczenia parametrów: podatników VAT nieczynnych i/lub osób fizycznych.

Na zawiadomieniu pokażą się faktury, których kontrahentem jest podatnik VAT czynny, nieczynny lub osoba fizyczna (w zależności od tego jaki parametr zaznaczony jest na formularzu zawiadomienia w polu Uwzględniaj dokumenty dla:) i transakcja ma status krajowy lub krajowy podatnikiem jest nabywca oraz takie, dla których nie minął okres dwóch lat od końca roku, w którym zostały wystawione (dotyczy rozliczenia za okresy przed październikiem 2021 r.) lub dla których nie minął okres trzech lat od końca roku, w którym zostały wystawione (dotyczy rozliczenia za okresy od października 2021 r.).

Zawiadomienie VAT-ZD o typie Sprzedaż

Nowy wzorzec dokumentu elektronicznego plików JPK_V7(2) obowiązujący od stycznia 2022 w części ewidencyjnej przewiduje dodatkowe informacje dla dokumentów sprzedażowych. Oprócz oznaczenia, że dokument jest korektą wynikającą z VAT-ZD (w polu KorektaPodstawyOpodt pojawia się wówczas wartość 1) dodane zostały dwa nowe pola:

  • Termin płatności w przypadku korekt dokonanych zgodnie z art. 89a ust. 1 ustawy (pole TerminPlatnosci w pliku XML) – do tego pola przenoszony jest termin płatności dla każdej płatności do dokumentu wykazywanego jako korekta pierwotna (dokument w kolorze czarnym na zawiadomieniu VAT-ZD).
  • Data zapłaty w przypadku korekt dokonanych zgodnie z art. 89a ust. 4 ustawy (pole DataZaplaty) – do tego pola przenoszona jest data dla każdej zapłaty (częściowej bądź całkowitej) dokonanej w tym okresie do dokumentu wykazywanego jako korekta zwrotna (dokument w kolorze zielonym na zawiadomieniu VAT-ZD).
 

W przypadku podglądu pliku JPK_V7 w arkuszu MS Excel, na zakładce JPK_V7_SprzedazWiersz widoczne są kolumny: Korekta art.89a (może przyjmować wartość 1), jak również Termin płatności oraz Data zapłaty uzupełniane datami pobieranymi z pliku. W przypadku korekty pierwotnej dla wykazywanego w pliku dokumentu, uzupełnione są pola Korekta art.89a i Termin płatności, natomiast w przypadku korekty powrotnej – pola Korekta art.89a i Data zapłaty.

Zapisy korekcyjne w rejestrze VAT sprzedaży wygenerowane z zawiadomienie VAT-ZD o typie sprzedaż na zakładce KSeF/JPK w sekcji Atrybuty JPK_VAT i JPK_V7 otrzymują dodatkowo oznaczenia odpowiednimi atrybutami:

  • w przypadku korekty pierwotnej TERMIN_PLATNOSCI ze wskazanym terminem płatności z dokumentu oraz KOREKTA_ART.89A z wartością Tak,
  • w przypadku korekty powrotnej DATA_ZAPLATY ze wskazaną datą zapłaty oraz KOREKTA_ART.89A z wartością Tak.
 
Zapis korekcyjny dot. VAT-ZD sprzedaż – zakładka KSeF/JPK

Uwaga
W przypadku gdy Użytkownik nie korzysta z dostępnego w programie załącznika VAT-ZD lub istnieje potrzeba uwzględnienia dokumentu korygującego ulgę za złe długi z pominięciem VAT-ZD od strony sprzedaży, wówczas możliwe jest skorzystanie z możliwości dodania dokumentów technicznych w rejestrze VAT sprzedaży i ustawienia na nich w zakładce [KseF/JPK] w sekcji Atrybuty JPK_VAT i JPK_V7 atrybutów odpowiednio KOREKTA_ART.89 z wartością Tak oraz TERMIN_PLATNOSCI - uzupełnić na nim oczekiwaną datę w przypadku korekty pierwotnej lub DATA_ZAPLATY - uzupełnić na nim oczekiwaną datę w przypadku korekty powrotnej.

Na zakładce [Ogólne] dokumentu należy wprowadzić pozycję/pozycje z wartością ujemną (w przypadku korekty pierwotnej) lub dodatnią (w przypadku korekty powrotnej) w odpowiedniej stawce VAT. Parametr Rozliczać w VAT powinien wskazywać na okres zgodny ze sporządzanym plikiem JPK_V7.

Dokument powinien mieć zaznaczony parametr Wewnętrzny aby nie wygenerował on płatności do rozliczenia w module Kasa/Bank. Po zaznaczeniu tego parametru należy na dokumencie z zakładki [KSeF/JPK] z sekcji Kody JPK_VAT usunąć kod WEW.

ZAKUP

Na zawiadomieniu VAT-ZD o typie Zakup wykazywane są faktury, których 90 dzień od upływu terminu płatności przypada nie później niż z końcem okresu, za który sporządzamy zeznanie. Termin płatności dotyczy każdej z części płatności wykazanej na fakturze. Na zawiadomieniu pokażą się faktury, których kontrahentem jest podatnik VAT czynny i transakcja ma status krajowy lub krajowy - podatnikiem jest nabywca. Dokumenty zakupowe ze stawką ZW i NP nie są wykazywane na VAT-ZD tak samo jak w przypadku pliku JPK_V7.

Uwaga
Jeżeli użytkownik usunie fakturę pierwotną zakwalifikowaną do Ulgi na złe długi (VAT-ZD) to na zawiadomieniu za kolejny miesiąc/kwartał dokument ten nie zostanie wykazany. Natomiast zapłata za fakturę uwzględnioną i skorygowaną wcześnie w Uldze na złe długi (VAT-ZD) pokaże się w miesiącu zapłaty bez względu na datę wykazania faktury pierwotnej na zawiadomieniu VAT-ZD.

Uwaga
W przypadku gdy Użytkownik nie korzysta z dostępnego w programie załącznika VAT-ZD lub istnieje potrzeba uwzględnienia dokumentu korygującego ulgę na złe długi z pominięciem VAT-ZD od strony zakupu, wówczas możliwe jest skorzystanie z możliwości dodania dokumentów technicznych w rejestrze VAT zakupu i ustawienia na nich w zakładce KseF/JPK w sekcji Atrybuty JPK_VAT i JPK_V7 atrybutów odpowiednio VAT-ZD ZAKUP NIEZAPŁ i VAT-ZD ZAKUP ZAPŁAC.

 

Uwaga
W przypadku, gdy termin płatności dokumentu wprowadzonego do rejestru VAT przypada na dzień ustawowo wolny od pracy lub na sobotę, to przy kwalifikowaniu dokumentu na zawiadomienie VAT-ZD brany jest pod uwagę pierwszy dzień roboczy przypadający po dniu wolnym.

Przykład

Termin płatności: 18.07.2020 r. (sobota).

Uwzględnienie w Uldze na złe długi (VAT-ZD): październik 2020 r. – 90 dni liczone jest od 20.07.2020 r. (poniedziałek).

2 Jak w programie wygenerować korektę  podatku należnego/naliczonego?

2.1 Korekta VAT-u należnego

Na liście plików JPK_V7, na zakładce [Ulga na złe długi (VAT-ZD)] dodajemy dokument, wybieramy typ zawiadomienia: Sprzedaż, odpowiedni miesiąc i następnie ikoną przeliczamy zawiadomienie. W polu Na dzień podpowiada się domyślnie 25 dzień kolejnego miesiąca po okresie, za który składane jest zawiadomienie.

Zawiadomienie VAT-ZD o typie Sprzedaż

Po zablokowaniu zawiadomienia przed zmianami za pomocą ikony  generujemy zapisy korekcyjne do wybranego przez Użytkownika rejestru. Program generuje oddzielny zapis korekcyjny dla każdej faktury wykazanej na zawiadomieniu VAT-ZD uwzględniając stawki VAT oraz ustawiając rodzaj na Towary.

Z poziomu formularza VAT-ZD dostępny jest wydruk zawiadomienia oraz wydruk listy dokumentów zakwalifikowanych do korekty VAT.

Uwaga
Na Zawiadomieniu VAT-ZD drukowane są tylko dokumenty ze znakiem plus, prezentowane na czarno. Przykładowo wykazaliśmy niezapłaconą fakturę na zawiadomieniu VAT-ZD w 04-2022. Kwoty z zawiadomienia zostały uwzględnione w pliku JPK_V7, który został wysłany. Kwoty z zawiadomienia zostały uwzględnione w pliku JPK_V7, który został wysłany. Faktura została zapłacona 2022-06-20, za miesiąc czerwiec generujemy zawiadomienie VAT-ZD, na którym dokument pojawi się ze znakiem minus w kolorze zielonym. Tego typu dokumenty nie są  drukowane na zawiadomieniu VAT-ZD. Kwota jest uwzględniana tylko w pliku JPK_V7. 

Uwaga
Od wersji 2023.5.1 umożliwiono ręczne oznaczenie dokumentu jako korekta podstawy opodatkowania oraz podatku należnego, o której mowa w art. 89a ust. 1 i 4 Ustawy. Dzięki temu możliwe jest oznaczenie wprowadzonych do rejestru sprzedaży VAT dokumentów jako korekty pierwotnej lub korekty powrotnej z pominięciem załącznika VAT-ZD.

Dodane zostały nowe atrybuty JPK_V7: KOREKTA_ART.89A, TERMIN_PLATNOSCI oraz DATA_ZAPLATY.

Chcąc oznaczyć dokument w rejestrze sprzedaży VAT jako korektę o której mowa w art. 89a ust. 1  Ustawy (zmniejszenie podstawy opodatkowania, korekta pierwotna), należy dodać na dokumencie na zakładce [KSeF/JPK] w sekcji Atrybuty JPK_VAT i JPK_V7 atrybut KOREKTA_ART.89A, wybierając wartość Tak oraz atrybut TERMIN_PLATNOSCI i uzupełnić na nim oczekiwaną datę.

Chcąc oznaczyć dokument w rejestrze sprzedaży VAT jako korektę o której mowa w art. 89a ust. 4  Ustawy (zwiększenie podstawy opodatkowania, korekta powrotna), należy dodać na dokumencie na zakładce [KSeF/JPK] w sekcji Atrybuty JPK_VAT i JPK_V7 atrybut KOREKTA_ART.89A, wybierając wartość Tak oraz atrybut DATA_ZAPLATY i uzupełnić na nim oczekiwaną datę.

Oznaczenie w ten sposób dokumentów spowoduje odpowiednie ich wykazanie w części ewidencyjnej pliku JPK_V7. Jeżeli chodzi o pola P_68 oraz P_69 znajdujące się na części deklaracyjnej pliku, powinny one zostać uzupełnione przez Użytkownika samodzielnie.

2.2 Korekta VAT-u naliczonego

Postępujemy analogicznie jak w przypadku faktur sprzedaży. Na zawiadomieniu VAT-ZD o typie Zakup domyślnie podpowiada się data na ostatni dzień okresu, za który liczone jest zawiadomienie VAT-ZD. Przykładowo na zawiadomieniu VAT-ZD o typie Zakup liczonym za 2022-06 podpowie się data Na dzień 2022-06-30. Automatyczna korekta generowana jest tylko na wartość VAT-u, bez kwot netto. Podobnie jak w przypadku korekty VAT-u należnego zapisy korekcyjne tworzone są odrębnie dla każdej faktury. Pozycje faktury z rodzajem Towary, Usługi, Paliwo i Inne są ujmowane z rodzajem Towary, natomiast pozycje z rodzajem: Środki trwałe, Środki transportu i Nieruchomości traktowane są jako Środki trwałe. Na zapisach korekcyjnych Odliczenia przenoszone są zawsze z dokumentu pierwotnego niezależnie od tego, czy dokument jest wykazywany jako zapłacony, czy nie zapłacony.

Z poziomu formularza VAT-ZD o typie zakup dostępny jest wydruk listy dokumentów zakwalifikowanych do korekty VAT.

Pod listą dokumentów kwalifikowanych na VAT-ZD widoczna jest informacja o pełnej kwocie korekty wynikającej z tych dokumentów; osobno suma kwot netto i VAT zaokrąglana do pełnych złotych dla faktur sprzedaży oraz tylko VAT w przypadku faktur zakupu. Podsumowanie w polu Suma do korekty dotyczy kwot do korekty, czyli faktur niezapłaconych i korygowanych, natomiast w polu Suma na VAT-ZD widoczne jest podsumowanie do VAT-ZD, gdzie są wykazywane tylko faktury niezapłacone (bez korygowanych po częściowej lub całkowitej zapłacie).

Do pola Suma do korekty-dok. Niezapłacone trafiają wszystkie pozycje na czarno (plusowe) natomiast do pola Suma do korekty - dok. Zapłacone trafiają  wszystkie pozycje w kolorze zielonym (na minus). VAT od dokumentów niezapłaconych jest  wykazany w kwocie na minus a zapłaconych w kwocie na plus.

Na liście plików JPK_V7, na zakładce [Ulga na złe długi (VAT-ZD)] dodajemy dokument, wybieramy typ zawiadomienia: Zakup, odpowiedni miesiąc i następnie ikoną przeliczamy zawiadomienie. W polu Na dzień podpowiada się domyślnie ostatni dzień miesiąca, za który składane jest zawiadomienie.

Zawiadomienie VAT-ZD o typie Zakup

Po zablokowaniu zawiadomienia przed zmianami za pomocą ikony  generujemy zapisy korekcyjne do wybranego przez Użytkownika rejestru.

2.3 JPK_V7K a miesięczne VAT-ZD

W przypadku kwartalnych deklaracji VAT-7K generowane są miesięczne załączniki VAT-ZD, a w związku z tym generowane są również zapisy korekcyjne do poszczególnych miesięcy, w terminie wynikającym z art. 89a oraz 89b Ustawy o podatku od towarów i usług.

Niezależnie od ustawionego w Konfiguracji okresu składania deklaracji VAT-7, zawiadomienie VAT-ZD (zarówno o typie Sprzedaż, jak i Zakup) dodawane jest za okres miesięczny. Zapisy korekcyjne dotyczące poszczególnych faktur generowane są w miesiącu ich ujęcia w zawiadomieniu VAT-ZD i w tym samym miesiącu są uwzględniane w pliku JPK_V7 w części ewidencyjnej natomiast w miesiącu kończącym kwartał w części deklaracyjnej pliku JPK_V7.

Przykład

Korekta podatku należnego

Data wystawienia dokumentu: 20.02.2022 r.

Termin płatności: 27.02.2022 r.

Miesiąc uwzględnienia w VAT-ZD i w pliku JPK_V7 w części ewidencyjnej: maj 2022 r.

Miesiąc uwzględnienia zapisu korekcyjnego na minus w pliku JPK_V7 w części deklaracyjnej: czerwiec 2022 r.

W przypadku zawiadomienia VAT-ZD o typie Sprzedaż dodanego za przynajmniej jeden miesiąc danego kwartału, gdzie wykazywane są faktury niezapłacone i wygenerowano do niego zapisy korekcyjne do rejestru VAT, po przeliczeniu pliku JPK_V7, w części deklaracyjnej pola P_68 oraz P_69 automatycznie uzupełnią się do wysokości kwoty korekty netto i VAT.

3 Ulga na złe długi- najczęściej zadawane pytania

3.1 Faktury częściowo rozliczone, faktury z podzieloną płatnością.

W przypadku faktur częściowo rozliczonych, część niezapłacona z faktury pojawi się na zawiadomieniu VAT-ZD.

Faktury korygujące niezapłacone (nieskompensowane) na zawiadomienie VAT-ZD nie wchodzą. Należy je wcześniej skompensować z fakturą i tylko pozostałą, niezapłaconą cześć faktury wykazać.

Od wersji Programu Comarch ERP Optima 2021 na zawiadomieniu VAT-ZD można również uwzględniać podzielone płatności do dokumentu, mające ten sam termin płatności.

Faktury z zaznaczonym parametrem Płatność VAT w PLN posiadają płatność podzieloną na kwotę netto oraz kwotę podatku VAT i powinny mieć ten sam termin płatności.

3.2 Prezentacja faktur z kilkoma różnymi stawkami.

Na zawiadomieniu VAT-ZD faktury wykazywane są w tylu pozycjach, ile stawek VAT zawierają, natomiast na wydruku VAT-ZD w jednej pozycji.

Użytkownik ma możliwość usunięcia z załącznika VAT-ZD zaznaczonych dokumentów. Jeżeli faktura składa się z kilku pozycji w różnych stawkach, a zaznaczona zostanie pozycja tylko w jednej stawce, to z zawiadomienia usunięte zostaną wszystkie pozycje związane z tą fakturą.

3.3 Plik JPK_V7 wysłany do urzędu, nie zrobiliśmy korekty VAT-u należnego.

Przykładowo plik JPK_V7 został złożony za październik 2022, ale nie zrobiliśmy korekty VAT-u należnego z załącznikiem VAT-ZD. W pierwszej kolejności należy z poziomu JPK/Pliki JPK_V7 dodać korektę pliku JPK_V7 dla części ewidencyjnej i deklaracyjnej za październik 2022. Korekty tej nie należy blokować przed zmianami. Następnie z poziomu JPK/Pliki JPK_V7 na zakładce [Ulga na złe długi (VAT-ZD)] wygenerować załącznik VAT-ZD i zrobić zapisy korekcyjne do rejestru oraz powtórnie przeliczyć korektę pliku JPK_V7. Podatek VAT należny zostanie skorygowany w części deklaracyjnej pliku JPK_V7 natomiast zapisy korekcyjne zostaną wykazane w części ewidencyjnej pliku JPK_V7.

3.4 Plik JPK_V7 został przesłany do systemu e-Deklaracje wraz z informacjami znajdującymi się na załączniku VAT_ZD. Na załączniku VAT-ZD zostały błędnie zakwalifikowane faktury sprzedaży. Jak wygenerować korektę pliku JPK_V7 z poprawnymi danymi ze skorygowanego zawiadomienia VAT ZD?

Z poziomu listy zawiadomień VAT-ZD użytkownik ma możliwość dodania kolejnego załącznika o tym samym typie  w danym miesiącu/kwartale poprzez podświetlenie zablokowanego przed zmianami zawiadomienia, a następnie wciśnięcie przycisku . Na formularzu automatycznie zaznacza się parametr Korekta, bez możliwości odznaczenia. Typ zawiadomienia oraz miesiąc, za który jest ono dodawane przenoszone są z pierwotnego załącznika VAT-ZD, bez możliwości zmiany. Domyślnie przenoszone są pozycje z poprzedniego załącznika VAT-ZD. Pierwotne zawiadomienia VAT-ZD są oznaczone odpowiednio S dla sprzedaży oraz Z dla zakupu, natomiast korekty zawiadomienia przyjmują kolejno numerację S1, S2, Z1, Z2..itd.

Korektę należy przeliczyć za pomocą ikony pioruna. A następnie ikony wykonać zapisy korekcyjne. Po wykonaniu zapisów korekcyjnych należy przeliczyć korektę pliku JPK_V7 dla części deklaracyjnej oraz ewidencyjnej.

3.5 Mechanizm obliczania korekty w programie- przykłady liczbowe

Przykład

Faktura Sprzedaży wystawiona w lutym 2022 na 1000 netto w stawce 23% i na kwotę 400 netto w stawce 8% z terminem płatności 25.02.2022 (na 831 brutto) i terminem 31.03.2022 (na 831 brutto). Uwzględniona na deklaracji za luty 2020. Zapłacona w całości dnia 20.07.2022, czyli 145 dni po pierwszym terminie i 111 dni po drugim terminie.

Ponieważ dokument ma dwa różne terminy płatności pierwsza korekta zostanie wykonana w maju 2022, ponieważ 90 dni od pierwszego terminu płatności (27.02.2022)  mija w maju, więc kwalifikuje się do korekty w maju (łączna korekta podatku należnego : dla stawki 23%: -500 netto i -115 VAT, dla stawki 8%: -200 i -16 VAT). Kolejną korektę należy wykonać gdy mija 90 dni od drugiego terminu płatności (31.03.2022) czyli w czerwcu (w stawce 23%: -500 netto i -115 VAT i w stawce 8% -200 netto i -16 VAT).

W lipcu 2022 zapłacona w całości, więc w pliku JPK_V7 za lipiec robimy kolejną korektę podatku należnego na całość faktury w stawce 23%, czyli 1000 netto i 230 VAT oraz w stawce 8% na 400 netto i 32 VAT.

Zawiadomienie VAT-ZD- faktura sprzedaży-korekta w miesiącu maju 90 dni od pierwszego terminu płatności

Zawiadomienie VAT-ZD- faktura sprzedaży-korekta w miesiącu czerwcu 90 dni od drugiego terminu płatności

Zawiadomienie VAT-ZD- faktura sprzedaży-korekta w miesiącu lipcu

Przykład

Faktura sprzedaży wystawiona 01.03.2022 na 1000,00 netto w stawce 23% z terminem płatności 11.03.2022. Faktura częściowo rozliczona na kwotę 500,00 brutto 08.04.2022. Po przeliczeniu VAT-ZD za miesiąc czerwiec faktura będzie pomniejszona o kwotę rozliczania więc otrzymujemy następujący wynik: Korekta netto 593,50, Korekta VAT 136,50. Suma do korekty: netto -594,00; VAT -137,00.

Zawiadomienie VAT-ZD- faktura sprzedaży częściowo rozliczona

Przykład
Zawiadomienie VAT-ZD za czerwiec 2022 jest już wygenerowane zgodnie z danymi z przykładu 2. Okazuje się, że zabrakło na tym zawiadomieniu VAT-ZD faktury sprzedaży wystawionej 08.03.2022 na kwotę 1000,00 netto w stawce 23% z terminem płatności 30.03.2022. W tym przypadku wykonujemy korektę zawiadomienia VAT-ZD za pomocą przycisku . Po przeliczeniu korekty zawiadomienia VAT-ZD otrzymujemy następujący wynik: korekta netto 1 594,00, korekta VAT 367,00. Suma do korekty: netto - 1 594,00; VAT -367,00. Po wykonaniu zapisu korekcyjnego za pomocą przycisku w Rejestrze VAT sprzedaży pojawia się dodatkowy zapis na kwotę 1000,00 netto i 230,00 VAT.

Korekta zawiadomienia VAT-ZD- faktura sprzedaży

Lista Ulga na złe długi (VAT-ZD) zawierająca pierwotne zawiadomienie VAT_ZD za listopad S oraz korektę do niego S1

Przykład
Faktura Zakupu wystawiona 07.02.2022 na 813,01 netto w stawce 23%z terminem płatności 14.02.2022. Faktura częściowo rozliczona na kwotę 500 brutto 10.03.2022. Po przeliczeniu VAT-ZD otrzymujemy następujący wynik: Korekta netto 406,51, Korekta VAT 93,49. Suma do korekty 93.

Zawiadomienie VAT-ZD- faktura zakupu częściowo rozliczona

Uwaga
Kwoty w polach Suma do korekty i Suma na VAT-ZD mogą się różnić, ponieważ w części deklaracyjnej pliku JPK_V7 każda stawka jest osobno zaokrąglana, a na VAT-ZD zaokrąglana jest całość faktury.

Przykład
Faktura Zakupu wystawiona 07.02.2022 na kwotę 813,01 netto w stawce 23% z terminem płatności 14.02.2022 nierozliczona. Druga faktura zakupu wystawiona 10.01.2022 na kwotę 18 950,00 netto w stawce 23% z terminem płatności 17.01.2022, wykazana najpierw na zawiadomieniu VAT-ZD za kwiecień 2022 jako nierozliczona, a następnie rozliczona w całości z terminem 12.05.2022. Po przeliczeniu VAT-ZD za maj 2022 otrzymujemy następujący wynik: dla pierwszej faktury -Korekta netto 813,01 ; Korekta VAT 189,99 Suma do korekty –dok. Niezapłacone -189,99. W przypadku drugiej faktury- Korekta netto 18 950,00; Korekta VAT 4 358,50; Suma do korekty - dok. Zapłacone 4 358,50.

Zawiadomienie VAT-ZD- faktura zakupu zapłacona i niezapłacona

Przykład
Kwartalne rozliczenie VAT. Do rejestru sprzedaży wprowadzone są trzy faktury: pierwsza z data sprzedaży 03.01.2022 na kwotę 200,00 netto w stawce 23% i terminem płatności 10.01.2022, druga z datą sprzedaży 04.02.2022 na kwotę 500,00 netto w stawce 23% i terminem płatności 10.02.2022 oraz trzecia z datą sprzedaży 10.03.2022 na kwotę 300,00 netto w stawce 23% i terminem płatności 15.03.2022. Płatność dotycząca faktury ze stycznia rozliczona jest częściowo na kwotę 100,00 brutto. Data rozliczenia określona jest na 14.06.2022. Przy kwartalnym rozliczeniu VAT należy przeliczyć zawiadomienia VAT-ZD za miesiące zawierające sie w danym kwartale (w tym przypadku przeliczone są zawiadominia VAT-ZD za kwiecień, maj, czerwiec 2022). Po przeliczeniu VAT-ZD za poszczególne miesiące otrzymujemy następujące wyniki: w kwietniu 2022 Korekta netto 200,00; Korekta VAT 46,00; Suma do korekty -46. W maju 2022 Korekta netto 500,00; Korekta VAT 115,00; Suma do korekty -115. W przypadku zawiadomienia VAT-ZD za czerwiec 2022 dla faktury z terminem płatności 15.03.2022 Korekta netto wynosi 300,00; Korekta VAT 69,00; Suma do korekty – dok. Niezapłacone -69,00. W przypadku faktury z terminem płatności 10.01.2022 - Korekta netto 81,30; Korekta VAT 18,70; Suma do korekty - dok. Zapłacone 18,70.

Zawiadomienie VAT-ZD za kwiecień 2022 - faktura sprzedaży z terminem płatności przypadającym na styczeń 2022

Zawiadomienie VAT-ZD za maj 2022 - faktura sprzedaży z terminem płatności przypadającym na luty 2022

Zawiadomienie VAT-ZD za czerwiec 2022 - faktura sprzedaży z terminem płatności przypadającym na marzec 2022 oraz faktura sprzedaży z terminem płatności przypadającym na styczeń 2022 częściowo rozliczona w czerwcu 2022

Lista zawiadomień VAT-ZD - status zawiadomień

Lista plików JPK_V7 – plik za II kwartał 2022 (część ewidencyjna wraz z częścią deklaracyjną)

OPT070 - Formaty elektronicznej wymiany danych z bankiem (eksport/ import przelewów)

Data aktualizacji: 06-07-2022

O Elektronicznej Wymianie Danych

Program Comarch ERP Optima umożliwia zarówno import zrealizowanych przelewów bankowych do programu z pliku dostarczonego przez bank, jak i eksport poleceń przelewu do pliku, który następnie można zaczytać w aplikacji bankowej. Oprócz eksportu/importu przelewów poprzez pliki istnieje również możliwość wymiany danych bezpośrednio z/do systemu bankowego, bez konieczności ręcznego przenoszenia plików pomiędzy aplikacją bankową a Comarch ERP Optima.

Jak wykonać import poleceń przelewu?

W celu zaimportowania zapisów z pliku z banku należy wejść w Kasa/Bank/ Zapisy kasowe/bankowe, następnie w polu Rejestr wybrać odpowiedni rejestr bankowy i w polu Raport odpowiedni raport, do którego ma być wykonany import zapisów oraz nacisnąć na ikonę „Importuj polecenia przelewu. Po naciśnięciu na ikonę „Importuj polecenia przelewu” pojawi się okno „Import przelewów”, w którym należy uzupełnić następujące dane:
  1. Format wymiany – z listy dostępnych formatów należy wybrać odpowiedni format wymiany danych, zgodny ze strukturą pliku uzyskanego z banku; gdyby żaden z dostępnych formatów nie działał prawidłowo z poziomu Ogólne/ Inne/ Formaty przelewów można dodać nowy lub zmodyfikować już istniejący.
  2. Plik źródłowy – należy wskazać właściwy plik do zaczytania. Służy do tego ikona  (pole pokazuje ścieżkę dostępu do pliku, z którego wykonywany jest import)
  3. Definicja KP – symbol numeracji dla dokumentów typu przychód
  4. Definicja KW – symbol numeracji dla dokumentów typu rozchód
Jeżeli jako format wymiany wybierzemy format MT940 pojawią się 2 dodatkowe parametry:
  • Dodawaj zapisy dotyczące innych rachunków – wyciąg w formacie MT-940 może zawierać dane dotyczące wielu rachunków, jednak jest on importowany do raportu dotyczącego jednego rejestru, czyli jednego rachunku bankowego. W związku z tym istnieje możliwość zaznaczenia parametru Dodawaj zapisy dotyczące innych rachunków. Jeżeli przed importem zaznaczymy parametr, zostaną wczytane wszystkie przelewy znajdujące się w importowanym pliku. Jeżeli parametr będzie odznaczony ‑ zaimportowane zostaną tylko przelewy powiązane z rachunkiem dotyczącym rejestru, do którego importowane są dane.
  • Strona kodowa – określenie strony kodowej – wybór spośród następujących możliwości: Windows (1250), Latin II, iso-8859-2, Mazovia, UTF8 (ustawienie właściwego kodowania ma wpływ na prawidłowe rozpoznawanie polskich znaków przy imporcie).
Po uzupełnieniu wszystkich pól należy nacisnąć na ikonę  aby wczytać plik. Po wczytaniu pliku, tabela tymczasowa wypełniana jest informacjami odczytanymi z pliku. Pozycje znajdujące się w tabeli nie podlegają edycji. Import zapisów do bazy następuje po naciśnięciu na ikonę Uruchom import.
Uwaga
Identyfikacja podmiotu odbywa się w pierwszej kolejności po Akronimie podmiotu oraz w drugiej kolejności po numerze rachunku bankowego (taki numer jaki jest w przelewie w pliku musi być wpisany na karcie kontrahenta, na zakładce [Płatności]). Jeżeli kontrahent nie zostanie rozpoznany zapis trafia na !Nieokreślonego!

Jak wykonać eksport poleceń przelewu do pliku?

W celu wyeksportowania poleceń przelewu do pliku, który następnie można zaczytać w aplikacji bankowej, należy wejść w Kasa/Bank/ Preliminarz płatności, w polu Rejestr wybrać odpowiedni rejestr bankowy, z którego ma być wykonany eksport i nacisnąć na ikonę  Eksportuj polecenia przelewu. Aby ikona Eksportuj polecenia przelewu była aktywna w polu Rejestr musi być wybrany rejestr bankowy i lista wyświetlanych zapisów musi być zawężona do pozycji nierozliczonych i/lub rozliczonych częściowo  (należy odznaczyć opcje Rozliczone: Całkowicie i Nie podlega). Dodatkowo można zaznaczyć parametr "Przelewy do wysłania", co spowoduje zawężenie listy tylko do tych zdarzeń, które mogą zostać wysłane do banku. Przelewy do wysłania muszą mieć:
  • status nierozliczone lub częściowo rozliczone,
  • stan zatwierdzone do realizacji,
  • kierunek przepływu – rozchód,
  • poprawnie wypełnione pola podmiot, bank oraz numer rachunku podmiotu.
Po naciśnięciu na ikonę  Eksportuj polecenia przelewu pojawia się okno Eksport przelewów do pliku, w którym należy uzupełnić następujące dane: 1. Eksport poleceń - do wyboru eksport tylko zaznaczonych lub wszystkich zatwierdzonych do realizacji 2. Format wymiany - z listy dostępnych formatów należy wybrać odpowiedni format wymiany danych, zgodny ze strukturą pliku, jaki zaczytuje bank; gdyby żaden z dostępnych formatów nie działał prawidłowo z poziomu Ogólne/ Inne/ Formaty przelewów można dodać nowy lub zmodyfikować już istniejący. Domyślnie podpowiadany jest format, który jest przypisany jako domyślny dla banku związanego z rejestrem, z którego wykonywany jest eksport (na formularzu banku, na zakładce [Dodatkowe], pole: Format eksportu dla przelewów zwykłych). 3. Format wymiany dla MPP – rozwijalna lista ze zdefiniowanymi w programie formatami eksportu przelewów. Program proponuje format, który został wskazany na formularzu banku, do którego przygotowujemy zlecenie przelewów. Wskazane formaty wymiany powinny mieć ten sam rodzaj. Nie wykonamy eksportu jeśli jeden z formatów będzie typu webservice a drugi nie. Rodzaje formatów wymiany muszą być z sobą zbieżne. Jeśli w danej organizacji nie stosujemy metody podzielonej płatności nie ma konieczności wskazywania formatu wymiany dla Mechanizmu podzielonej płatności. 
Uwaga
Mechanizm eksportu działa w taki sposób, że program próbuje wysyłać 3 rodzaje przelewów za każdym razem (przelewy zwykłe, do US i do ZUS), a do każdego z takich przelewów wymagana jest inna struktura plików, stąd inny format wymiany. W polu Format wymiany wybierany jest format dla przelewów zwykłych, natomiast format służący do eksportu przelewów do ZUS i US pobierany jest z karty banku związanego z rejestrem (na formularzu banku, na zakładce [Dodatkowe], pole: Format eksportu dla przelewów do US/ ZUS).
4. Katalog docelowy – należy wskazać katalog, w którym ma być zapisany plik z przelewami 5. Nazwa pliku – nazwa pliku, do którego chcemy wyeksportować zdarzenia 6. Dopisz do pliku – możliwość dopisania przelewów do już istniejącego pliku. Aby dopisać przelewy do pliku należy zaznaczyć parametr, a następnie w polu Plik docelowy wskazać plik, do którego informacje powinny być dopisane. Jeśli podczas eksportu przelewów wskażemy istniejący plik i nie zaznaczymy parametru Dopisz do pliku ‑ spowoduje to wykasowanie dotychczasowej zawartości pliku i nadpisanie nowych informacji. 7. Data przelewu - domyślnie wybrana jest data realizacji, istnieje również możliwość wybrania terminu płatności, daty bieżącej lub innej - z możliwością wpisania daty. Data wybrana w polu Data przelewu zostanie zapisana w eksportowanym pliku, jeżeli w formacie wymiany znajduje się pozycja Data operacji. (Jeżeli w formacie jest wybrana „Data dokumentu” eksportowana jest zawsze data dokumentu ze zdarzenia w preliminarzu płatności.) 8. Aktualizuj przy eksporcie informacje na zdarzeniach - zaznaczenie tego parametru powoduje, iż informacje Opis do banku pobierane są bezpośrednio z deklaracji DRA i dodatkowo aktualizowane są również na zdarzeniu w Preliminarzu. Odznaczony parametr sprawia, iż informacje do pliku pobierane są ze zdarzenia w Preliminarzu. 9. Przelewy zbiorczo dla poszczególnych podmiotów - zaznaczenie parametru spowoduje, iż w momencie eksportu kilku zdarzeń dla tego samego podmiotu w pliku powstanie jeden zbiorczy przelew na tego kontrahenta, na łączną kwotę. Przelewy te zostaną pogrupowane według podmiotu, numeru rachunku bankowego oraz waluty.
  • Grupuj wg dat- po zaznaczeniu tej opcji utworzonych zostanie tyle zbiorczych przelewów, ile jest różnych dat (terminów płatności/ dat realizacji/ dat dokumentu).
  • Eksportuj wszystkie linie opisu do banku- zaznaczenie tego parametru spowoduje, że w zbiorczym przelewie będziemy starali się umieścić wszystkie uzupełnione linie opisu do banku odczytane z agregowanych przelewów.
  • Dziel przelewy wg długości opisu- zaznaczenie tego parametru spowoduje, że program utworzy dla danego podmiotu kilka przelewów zbiorczych, przy czym na każdym z nich będzie umieszczony pełny opis do banku z przelewów cząstkowych. Może on być stosowany razem z pozostałymi parametrami dotyczącymi przelewów zbiorczych.
10. Wysyłaj przelewy w jednym pliku – zaznaczenie tego parametru powoduje, że wysyłając kilka przelewów tworzymy jeden plik xml, w którym zapisujemy wszystkie pojedyncze przelewy. Jeśli parametr nie jest zaznaczony to każdy z tych przelewów zapisywany jest w osobnym pliku. Parametr dostępny do zaznaczenia przy eksporcie do plików XML oraz webservice.   Eksport przelewów do pliku następuje po naciśnięciu na ikonę  Uruchom eksport.

Tworzenie formatów przelewów

Formaty wykorzystywane przy imporcie/eksporcie przelewów dostępne są w menu Ogólne/ Inne/ Formaty przelewów. Z tego poziomu można zarówno dodawać nowe, jak i modyfikować istniejące formaty - Użytkownik może sam zdefiniować format w oparciu o informacje dostarczane przez bank. Aby skopiować format należy go zaznaczyć (podświetlić) na liście, a następnie wcisnąć <CTRL>+<INSERT> lub <CTRL> i ikona plusa, a następnie zapisać.
Uwaga
Program umożliwia import przelewów z plików MT940, jednak jest to mechanizm zaszyty w programie, nie ma możliwości jego edycji/ modyfikacji, stąd też te formaty nie są dostępne na liście formatów przelewów.

Tworzenie formatów – informacje ogólne

Dodanie nowego formatu otwiera okno Format elektronicznej wymiany danych z bankami, składające się z czterech zakładek: [Ogólne], [Nagłówek], [Pozycje], [Stopka].
Uwaga
Przy tworzeniu nowego/dostosowywaniu istniejącego formatu przelewów należy zwrócić uwagę na to, aby wszystkie ustawienia były zgodne z dokumentacją banku (ze strukturą plików wyeksportowanych z banku/ do zaimportowania do aplikacji bankowej).

Zakładka [Ogólne]

Zakładka ta zawiera parametry wspólne dla wszystkich pozycji definiowanego formatu. Poszczególne pola należy uzupełnić zgodnie z wymaganiami banku, np. w oparciu o przykładowe pliki z przelewami lub dokumentację banku opisującą strukturę takich plików.
  1. Nazwa formatu - nazwa, która będzie widoczna na liście dostępnych do wyboru formatów – zarówno na formatce banku, jak i na formatce eksportu/importu. Pole obowiązkowe.
  2. Format do - informacja o tym czy dany format będzie wykorzystywany przy eksporcie przelewów, imporcie wyciągów bankowych lub będzie służył do eksportu i importu. Jedno z pól musi być zaznaczone.
  3. Rozszerzenie pliku - należy podać rozszerzenie pliku udostępnianego/ wymaganego przez bank, np. csv, txt, pli.
  4. Kodowanie - określenie strony kodowej dokumentu; do wyboru są opcje: Windows (1250), Latin II, ISO 8859-2, Mazovia, UTF8 i Flat (bez polskich znaków)
  5. Oddzielaj pola - jeżeli parametr jest odznaczony oznacza to, że format nie posiada separatorów pól. Zazwyczaj jednak w plikach są separatory pól, a w taki przypadku parametr należy zaznaczyć.
  6. Separator pól - wybór znaku, którym są od siebie oddzielane poszczególne pola w pliku, np. przecinek (,), spacja, Tab, Enter. Oprócz wyboru z dostępnej listy istnieje również możliwość ręcznego wpisania np. średnika (;) czy pipe (|)
  7. Separator wierszy - wybór znaku końca wiersza, którym są od siebie oddzielane poszczególne wiersze w pliku. Najczęściej jest to „<Enter>”. Oprócz wyboru z dostępnej listy (spacja, przecinek (,), Tab, Enter) istnieje również możliwość ręcznego wpisania innego separatora. Obsługiwany jest również import z pliku ze znacznikiem końca wiersza w formacie Unix (LF). W przypadku wybrania w formacie, jako separator wiersza <ENTER>, program automatycznie rozpozna odpowiednią sekwencję CR+LF czy LF.
  8. Ograniczniki tekstu - pola tekstowe w pliku będą otaczane tym znakiem, najczęściej jest nim cudzysłów.
  9. Zamiana ograniczników w tekście na - pole aktywne po zaznaczeniu „Ograniczniki tekstu". Jeżeli pola tekstowe są otaczane znakiem ogranicznika tekstu np. cudzysłowem to cudzysłów wpisany w środku pola zostanie zamieniony na znak wpisany w tym polu.
  10. Zmienna szerokość pola - parametr należy zaznaczyć, jeżeli szerokość pól w pliku jest zmienna (poszczególne pola są różnej długości). Zazwyczaj parametr powinien być zaznaczony.
  11. Format daty - określenie formatu daty, w jakim jest ona zapisywana w pliku. Oprócz wyboru z dostępnej listy (DD-MM-RR, DD-MM-RRRR, RR-MM-DD, RRRR-MM-DD, RRRRMMDD, DD/MM/RR, MM/RR/DD) istnieje również możliwość ręcznego wpisania np. DD/MM/RRRR.
  12. Separator dziesiętny - znak jakim w pliku oddzielana jest część całkowita od części ułamkowej liczby, np. złoty od groszy. Do wyboru: kropka (.), przecinek (,) i puste (brak separatora).
  13. Separator dziesiętny dla kwoty VAT - znak jakim w pliku oddzielana jest część całkowita od części ułamkowej liczby w kwocie VAT. Do wyboru: kropka (.), przecinek (,) i puste (brak separatora). Domyślnie ustawiony jest przecinek.
  14. Separator tysięcy - separator grupujący. Dostępne opcje do wyboru to: puste (brak separatora), kropka (.), przecinek (,).
  15. Sekwencja podziału pola na części - to znak, który jest używany w celu oddzielenia poszczególnych części w ramach danego pola. Wykorzystywany głównie w formatach służących do eksportu, np. w polach z opisem do banku.
  16. Separator w opisie przelewów zbiorczych - parametr ma znaczenie przy zbiorczym eksporcie przelewów. Oprócz wyboru z dostępnej listy (spacja, średnik (;), przecinek (,)) istnieje również możliwość ręcznego wpisania innego separatora.

Zakładki [Nagłówek] i [Stopka]

W przypadku, gdy plik importowany przez Użytkownika posiada nagłówek niezbędne jest odpowiednie uzupełnienie zakładki. Jeżeli w pliku nie ma nagłówka, zakładka powinna pozostać pusta. Jako każdą z pozycji można wybrać „Stałą wartość”. Należy tylko zwrócić uwagę, aby ilość pozycji odpowiadała ilości pól w nagłówku w pliku oraz odpowiednio ustawić typ: Tekst (dla pól zapisanych w ograniczniku tekstu, np. w cudzysłowie) lub Liczba (dla pól zapisanych bez ogranicznika tekstu).
Uwaga
Program Comarch ERP Optima obsługuje tylko jedną linijkę nagłówka. W przypadku gdy w pliku z banku nagłówek jest bardziej rozbudowany, przed wykonaniem importu niezbędna jest modyfikacja pliku.
Uwaga
Format służący do importu nie może zawierać stopki. W przypadku gdy w pliku z banku jest stopka, przed wykonaniem importu niezbędna jest modyfikacja pliku.

Zakładka [Pozycje]

Na tej zakładce definiujemy poszczególne pozycje formatu. Bardzo ważne jest, aby ilość pozycji zgadzała się z ilością pól przelewu w pliku z banku. Należy także zachować odpowiednią kolejność pozycji oraz ustawić prawidłowy Typ pozycji: Tekst (dla pól zapisanych w ograniczniku tekstu, np. w cudzysłowie) lub Liczba (dla pól zapisanych bez ogranicznika tekstu). Jeżeli liczba pozycji formatu, ich kolejność czy typ nie będą się zgadzać z tym co jest zapisane w pliku z banku, import przelewów do programu się nie powiedzie. Podobnie w przypadku eksportu przelewów z programu do pliku i próbie zaczytania ich w aplikacji bankowej. Kolejne pozycje formatu dodajemy ikoną .
  1. Nazwa pola - z rozwijalnej listy należy wybrać odpowiednią opcję, np. Data dokumentu, Kwota płatności, Nazwa podmiotu, Pełny numer rachunku podmiotu.
  2. Typ pola - opcje do wyboru: Tekst, Liczba <#, Liczba <#.##, Liczba <#.####. Konsekwencją wybrania typu pola Tekst, w formatach służących do eksportu, będzie otoczenie go w pliku ogranicznikiem tekstu (np. zapisanie w cudzysłowie). Podobnie w formatach służących do importu przelewów – jeżeli w pliku z banku pole jest zapisane w ograniczniku tekstu, jako typ należy wybrać: Tekst, w pozostałych przypadkach: Liczba.
  3. Wartość - pole ma znaczenie w formatach służących do eksportu przelewów; jest aktywne przy wyborze takich pól jak: „Inne informacje”, „Stała wartość”, „Zapytanie SQL”
  4. Szerokość - ilość znaków przewidziana na dane pole, pole wykorzystywane głównie w formatach do eksportu przelewów
  5. Opcje pola - określają, czy dane pole będzie nowym polem, czy ma zostać połączone z poprzednim na jeden z trzech sposobów. Najczęściej wybierane jest „nowe pole”. Opcja „łącz z poprzednim (…)” ma znaczenie w formatach służących do eksportu przelewów, przykładowo bank może wymagać, aby w pliku opis przelewu był zapisany jako jedno pole składające się z kilku podpól oddzielonych od siebie znakiem „|”.
  6. Usuwaj znaki rozdzielające w numerze rachunku - parametr jest aktywny tylko w przypadku wybrania pola związanego z numerem rachunku, np. numer rozliczeniowy banku, pełny numer rachunku podmiotu. Zaznaczenie parametru powoduje, iż numer rachunku będzie zapisany w pliku jako ciąg cyfr, bez znaków rozdzielających.
  7. Wymagane - parametr ma znaczenie przy formatach do eksportu przelewów. Zaznaczenie tego pola oznacza, iż brak danej wartości na przelewie będzie powodował błąd i w konsekwencji dany przelew nie zostanie wyeksportowany.

Przykład tworzenia formatu służącego do importu danych z pliku z banku

Jeżeli okaże się, że żaden z dostępnych w programie formatów przelewów nie umożliwia prawidłowego importu danych z pliku należy odpowiednio zmodyfikować istniejący format lub dodać nowy. Na podstawie pliku otrzymanego z banku (np. pliku w formacie *.csv, *.txt) lub dokumentu z opisem struktury takich plików Użytkownik może zdefiniować w programie własny format celem zaczytania w/w pliku.
Uwaga
Wyjątek stanowią pliki MT940 - program umożliwia import z takich plików, jednak jest to mechanizm zaszyty w programie i nie ma możliwości jego edycji/ modyfikacji.
Użytkownik może spotkać się z różnymi dokumentami o odmiennej strukturze, które mogą wymagać ręcznej modyfikacji. Spowodowane to jest faktem, iż każdy zapis jest zróżnicowany i żaden „uniwersalny” format nie jest w stanie wczytać wszystkich dokumentów. Ponadto zdarza się, że banki zmieniają strukturę generowanych plików, a w wielu przypadkach pliki nawet z tego samego banku potrafią się diametralnie od siebie różnić.
Uwaga
Każdy Bank posiada inny format wymiany danych. Przed próbą zaimportowania pliku zalecane jest dokładne sprawdzenie i porównanie go z danym formatem.
W poniższym ćwiczeniu na podstawie otrzymanego z banku pliku z przelewami zdefiniujemy format dla importu przelewów. Pliki w formatach *.csv, *.pli, *.txt Użytkownik może otworzyć za pomocą zwykłego edytora tekstowego (notatnik, WordPad) bądź poprzez MS Excel. Załóżmy, że nasz plik z przelewami z banku wygląda następująco (na zrzucie znajdują się dane testowe, np. numery rachunków bankowych): Analizując zamieszczony wyżej plik można wywnioskować, że:  
  • Format do: importu wyciągów bankowych
  • ,,Oddzielaj pola”: parametr zaznaczony
  • Separator pól: ; (średnik – bo widzimy, że w pliku poszczególne pola są od siebie oddzielone średnikiem)
  • Separator wierszy: <Enter>
  • Ograniczniki tekstu: ” (cudzysłów – bo widać, że w pliku część pól jest zapisana w cudzysłowie)
  • Zamiana ograniczników w tekście na: zostawić puste
  • Zmienna szerokość pola: zaznaczone (widać, że poszczególne pola w pliku różnią się długością)
  • Format daty: RRRR-MM-DD (przykładowa data z pliku to: 2013-01-03)
  • Separator dziesiętny: , (przecinek – bo przykładowa kwota w pliku zapisana jest jako: 297,49)
  • Separator tysięcy: puste
  • Sekwencja podziału pola na części: zostawić puste
  • Separator w opisie przelewów zbiorczych: może zostać ustawienie domyślne
Dodatkowo:
  • Rozszerzenie pliku to: txt
  • Kodowanie: Windows (1250)
  Pierwsza zakładka [Ogólne] naszego formatu musi więc wyglądać następująco: Dodatkowo w pliku jest Nagłówek, w związku z tym w formacie przelewów również trzeba zdefiniować pozycje nagłówka. Ważne jest, aby ilość pozycji na zakładce [Nagłówek] odpowiadała ilości pól w nagłówku w pliku (w tym przykładzie jest ich 7). Należy również zwrócić uwagę na to, że w pliku żadne z pól nagłówka nie jest zapisane w ograniczniku tekstu (w cudzysłowie), w związku z tym w formacie przelewów w każdym polu należy wybrać typ: Liczba. Jako każdą z pozycji można wybrać „Stałą wartość”. Liczba pozycji w formacie powinna zgadzać się z liczbą pól w przelewie w pliku - w naszym przykładzie jest ich 7, są to kolejno: data, inne informacje, nazwa podmiotu, numer rachunku podmiotu, opis do banku, kwota płatności, inne informacje. Należy również zwrócić uwagę, aby pola zapisane w pliku w cudzysłowie w formacie miały typ: Tekst (w naszym przykładzie są to pola 4) numer rachunku podmiotu i 5) Opis do banku), pozostałe mają mieć typ: Liczba. Zakładka [Pozycje] powinna więc wyglądać następująco: Tak zdefiniowanym formatem bez problemu uda się zaczytać przelewy z analizowanego pliku.
Uwaga
Program Comarch ERP Optima obsługuje tylko jedną linijkę nagłówka. Format służący do importu nie może również zawierać stopki. W przypadku gdy w pliku z banku nagłówek jest bardziej rozbudowany i/lub jest uzupełniona stopka, przed wykonaniem importu niezbędna jest modyfikacja pliku
Załóżmy, że przykładowy plik z banku wygląda następująco (na zrzucie plik *.csv otworzony w MS Excel): Jak widać w pliku jest bardzo rozbudowany nagłówek, przed wykonaniem importu należy zatem odpowiednio zmodyfikować plik tak, aby zostały w nim tylko dane związane z przelewami i maksymalnie jedna linijka nagłówka. (Można np. zaznaczyć linijki z przelewami, skopiować je, otworzyć Notatnik, wkleić dane przelewów i zapisać plik. W momencie importu wskazywać już ten „nowy” plik txt.).

Przykład tworzenia formatu służącego do eksportu przelewów do pliku

Jeżeli okaże się, że żaden z dostępnych w programie formatów przelewów nie umożliwia eksportu do pliku, którego struktura jest zgodna z tym, co zaczytuje bank należy odpowiednio zmodyfikować istniejący format lub dodać nowy. Na podstawie przykładowego pliku z banku lub dokumentu z opisem struktury takich plików użytkownik może zdefiniować w programie własny format służący do eksportu przelewów. W poniższym ćwiczeniu na podstawie dokumentu z opisem struktury plików otrzymanego z banku zdefiniujemy przykładowy format do eksportu przelewów. Przykładowe informacje z banku: Opis formatów plików - Struktura pliku przesyłki płatności krajowych: Standard polskich liter - CP 852 ( LATIN II ). Polecenia płatnicze można podzielić wg typu operacji na trzy grupy. W zależności od tego, do której grupy należą polecenia umieszczane w przesyłce, program nadaje dla pliku przesyłki odpowiednie rozszerzenie: - przelewy, wypłaty gotówkowe i płatności ZUS: ".PLI" - specjalne i specjalne ZUS: ".PLE" - polecenia zapłaty: ".PLD" W pliku przesyłki nie ma wiersza nagłówkowego z nazwami pól danych. W jednym pliku mogą być zapisane dane kilku poleceń płatniczych; każdy wiersz zawiera dane innego polecenia. Każdy wiersz kończy się znakiem końca wiersza <CR><LF> (Hex 0D0A) i rozpoczyna się kodem oznaczającym typ operacji: 110 = Przelew, wypłata gotówkowa, płatność US, 120 = Płatność ZUS, 210 = Polecenie zapłaty. Pola alfanumeryczne (tekstowe) są zapisane w cudzysłowach (" ") (Hex 22). Długość pól podana w tabeli nie uwzględnia cudzysłowów. Poszczególne dane są oddzielone przecinkiem "," (Hex 2C). Pola: dane zleceniodawcy, dane kontrahenta, szczegóły płatności oraz informacje Klient-Bank składają się z kilku linii (podpól). W tych przypadkach znakiem oddzielającym poszczególne linie jest "|" (Hex 7C). Pola: dane zleceniodawcy, dane kontrahenta składają się z czterech podpól: pierwsze i drugie zawiera nazwę zleceniodawcy lub kontrahenta, trzecie – nazwę ulicy oraz nr domu/nr lokalu, czwarte – kod pocztowy i miejscowość. Wszystkie pola danych obowiązkowe powinny być wypełnione. Wyjątek stanowi pole „informacje Klient-Bank”, które nie jest obowiązkowe. Jeśli w poleceniu płatniczym nie są wypełnione szczegóły płatności to w pliku przesyłki pole „szczegółów płatności” będzie puste, rozpoczynające się znakiem ” (Hex 22) i kończące się znakiem ” (Hex 22). W polu numer banku zleceniodawcy należy umieścić 8 cyfrowy numer rozliczeniowy banku. W polu numer rachunku zleceniodawcy należy umieścić 26 cyfrowy numer rachunku zleceniodawcy Numer rachunku bankowego jest ciągiem o stałej liczbie znaków 26 cyfr. Opis formatu pliku płatności krajowych PLI (PLD,PLE,PLS) Struktura pliku przesyłki, Wykaz zastosowanych skrótów: O / F = Rodzaj pola: O = obowiązkowe F = fakultatywne D / F = Długość i format pola: a = alfanumeryczne n = numeryczne (0 – 9) d = data w formacie RRRRMMDD S = pole stałej długości Z = pole zmiennej długości Przykładowy plik przesyłki z danymi jednego polecenia przelewu: 110,20000121,555500,12401066,0,"27124010661111222233339999","79106000761234123412341234", "1_PODPOLE-NAZWA_ZLECENIODAWCY|2_PODPOLE-NAZWA_ZLECENIODAWCY|3_PODPOLE-ULICA_ZLECENIODAWCY|4_PODPOLE-MIEJSCOWOSC_ZLECENIODAWCY","1_PODPOLE-NAZWA KONTRAHENTA|2_PODPOLE-NAZWA_KONTRAHENTA|3_PODPOLE-ULICA KONTRAHENTA|4_PODPOLE-MIEJSCOWOSC_KONTRAHENTA",0,10600076,"1_PODPOLE-SZCZEGOLY PLATNOSCI|2_PODPOLE-SZCZEGOLY_PLATNOSCI|3_PODPOLE-SZCZEGOLY PLATNOSCI|4_PODPOLE-SZCZEGOLY_PLATNOSCI","","","51","1_PODPOLE-INFORMACJE_KLIENT-BANK|2_PODPOLE-INFORMACJE_KLIENT-BANK|3_PODPOLE-INFORMACJE_KLIENT-BANK|4_PODPOLEINFORMACJE_KLIENT-BANK|5_PODPOLE-INFORMACJE_KLIENT-BANK|6_PODPOLE-INFORMACJE_KLIENT-BANK"   Analizując zamieszczone wyżej informacje można wywnioskować, że:
  • Format do: eksportu przelewów
  • Rozszerzenie pliku to: pli
  • „Oddzielaj pola”: zaznaczone
  • Separator pól: , (przecinek – wynika to z informacji udostępnionych przez bank: „Poszczególne dane są oddzielone przecinkiem „,” (Hex 2C)”)
  • Separator wierszy: <Enter> (zgodnie z informacją „Każdy wiersz kończy się znakiem końca wiersza <CR><LF>”)
  • Ograniczniki tekstu: ” (cudzysłów – zgodnie z informacją „Pola alfanumeryczne (tekstowe) są zapisane w cudzysłowach (” „)”)
  • Zamiana ograniczników w tekście na: zostawić puste
  • Zmienna szerokość pola”: zaznaczone (poszczególne pola są różnej długości)
  • Kodowanie: LATIN II
  • Format daty: RRRRMMDD (zgodnie z informacją podaną w tabelce, w polu 2)
  • Separator dziesiętny: brak (zgodnie z informacją podaną w tabelce, w polu 3)
  • Separator tysięcy: puste (zgodnie z informacją podaną w tabelce, w polu 3)
  • Sekwencja podziału pola na części: | (zgodnie z informacją „(…)znakiem oddzielającym poszczególne linie jest „|””)
  • Separator w opisie przelewów zbiorczych: może zostać ustawienie domyślne
Pierwsza zakładka [Ogólne] naszego formatu musi więc wyglądać następująco: W pliku nie ma być żadnego nagłówka (zgodnie z informacją „W pliku przesyłki nie ma wiersza nagłówkowego z nazwami pól danych”), w związku z tym zakładka [Nagłówek] w naszym formacie ma pozostać nieuzupełniona. Następnie należy dokładnie przeanalizować informacje niezbędne do prawidłowego uzupełnienia zakładki [Pozycje]. Wszystkie pola, które w pliku mają być zapisane w cudzysłowie powinny mieć wybrany typ: Tekst, wszystkie pozostałe: Liczba.
NrNazwa polaO/FD/FPozycja w formacie przelewów w programie
1Typ operacji
110 = Polecenie przelewu, wypł. gotówk.
120 = Płatność ZUS
210 = Polecenie zapłaty
O3 n SPozycja „stała wartość”, w polu wartość: 110
2Data płatności RRRRMMDDO8 d SData operacji
3Kwota bez kropek tysięcznych i przecinka oddzielającego wartość groszyO15 n ZKwota płatności
4Numer banku zleceniodawcy (NRB)O8 n ZNumer rozliczeniowy banku własnego
5Pole zerowe (wypełnione cyfrą "0")O1 n ZPozycja „stała wartość”, w polu wartość: 0
6Numer rachunku zleceniodawcyO34 a ZPełny numer rachunku własnego
7Numer rachunku kontrahentaO34 a ZPełny numer rachunku podmiotu
8Dane zleceniodawcyO4*35 a Z4 pozycje w formacie:
Poszczególne podpola są oddzielone znakiem "|" (Hex 7C).1) Nazwa własna 1
2) Nazwa własna 2
3) Adres własny – ulica
4) Adres własny – kod i miasto
Poz. 1 ustawiona jako „nowe pole”, poz. 2-4 jako „łącz z poprzednim (znak podziału pola na części)”
9Dane kontrahentaO4*35 a Z4 pozycje w formacie:
Poszczególne podpola są oddzielone znakiem "|" (Hex 7C).1) Nazwa podmiotu 1
2) Nazwa podmiotu 2
3) Adres podmiotu – ulica
4) Adres podmiotu – kod i miasto
Poz. 1 ustawiona jako „nowe pole”, poz. 2-4 jako „łącz z poprzednim (znak podziału pola na części)”
10Pole zerowe (wypełnione cyfrą "0")O1 n ZPozycja „stała wartość”, w polu wartość: 0
11Numer banku kontrahenta.O8 n ZNumer rozliczeniowy banku podmiotu
12Szczegóły płatnościO4*35 a Z4 pozycje w formacie:
Poszczególne podpola są oddzielone znakiem "|" (Hex 7C).1) opis do banku (pierwsza linijka)
2) opis do banku (druga linijka)
3) opis do banku (trzecia linijka)
4) opis do banku (czwarta linijka)
Poz. 1 ustawiona jako „nowe pole”, poz. 2-4 jako „łącz z poprzednim (znak podziału pola na części)”
13Niewykorzystane : wartość pusteOS aStała wartość
14Niewykorzystane : wartość pusteOS aStała wartość
15Kod "51" dla przelewów i poleceń specjalnych, natomiast kod "01" dla poleceń zapłaty, ”71” dla płatności podatkowych USO1*2 a SPozycja „stała wartość”, w polu wartość: 51
16Informacje klient-BankF6*35 a Z6 pozycji w formacie – wszystkie pozycje to „stała wartość”
Poszczególne podpola są oddzielone znakiem "|" (Hex 7C).Poz. 1 ustawiona jako „nowe pole”, poz. 2-6 jako „łącz z poprzednim (znak podziału pola na części)”
Zakładka [Pozycje] naszego formatu powinna więc wyglądać następująco:

Wskazówki praktyczne

  • Ilość pozycji w formacie, ich kolejność i typ muszą się zgadzać z danymi w pliku z banku.
  • W pozycjach formatu należy odpowiednio wybierać typ pola: Tekst/ Liczba. Konsekwencją wybrania typu pola Tekst, w formatach służących do eksportu, będzie otoczenie go w pliku ogranicznikiem tekstu (np. zapisanie w cudzysłowie). Podobnie w formatach służących do importu przelewów – jeżeli w pliku z banku pole jest zapisane w ograniczniku tekstu, jako typ należy wybrać: Tekst, w pozostałych przypadkach: Liczba (niezależnie od tego, czy w danej pozycji pliku wpisana jest data, kwota przelewu, numer rachunku czy np. dane adresowe kontrahenta).2013-01-03;przelew zewnętrzny; ABC sp. z o.o.;”02124011121111222233334444″;”za FV/02/01/2013″; „252,53”;370,39
  • w formacie przelewów pozycje 4, 5 i 6 muszą mieć ustawiony typ Tekst (ponieważ w pliku są one zapisane w cudzysłowie – „02124011121111222233334444”;”za FV/02/01/2013″;”252,53″); pozostałe pozycje w pliku nie są zapisane w ograniczniku tekstu, więc w formacie muszą mieć typ Liczba.
  • Przykładowo, dla pliku:
  • Program obsługuje tylko jedną linijkę nagłówka. W przypadku gdy w pliku z banku nagłówek jest bardziej rozbudowany, przed wykonaniem importu niezbędna jest modyfikacja pliku.
  • Format służący do importu nie może zawierać stopki.
  • Identyfikacja podmiotu odbywa się w pierwszej kolejności po Akronimie podmiotu oraz w drugiej kolejności po numerze rachunku bankowego (taki numer jaki jest w przelewie w pliku musi być wpisany na karcie kontrahenta, na zakładce Płatności). Jeżeli kontrahent nie zostanie rozpoznany zapis trafia na !Nieokreślonego!.
  • Jeżeli kwota w pliku zapisana jest w groszach (np. 18450 zamiast 184,50) w formacie przelewów należy zostawić puste pole z Separatorem dziesiętnym, a w pozycji z kwotą płatności wybrać typ: Liczba<#.##
  • W formatach służących do importu przelewów muszą znajdować się pozycje Data dokumentu oraz Kwota płatności.
  • W przypadku, gdy eksportujemy przelewy na pracowników i chcemy, aby w pliku oprócz nazwiska było również imię pracownika w formacie przelewów należy dodać pozycję „Nazwa podmiotu 2” (Nazwa podmiotu 2 odpowiada za eksport imienia, Nazwa podmiotu 1 za nazwisko pracownika).
  • Opis wszystkich pól możliwych do wyboru w pozycjach formatu przelewów można znaleźć w podręczniku do modułu Kasa/Bank (podręczniki są dostępne np. na Indywidualnych Stronach Klienta/Partnera)
  • W programie dostępnych jest 5 formatów MT940 (MT940 – standard, MT940 (BGŻ), MT940 (BRE), MT940 (PBS), Citi Handlowy – MT940 i MT942 (standardowy)), są one niedostępne do edycji. Formaty te obsługują import plików MT940 z większości banków. Jeżeli jednak okaże się, że żaden z nich nie importuje prawidłowo zapisów z pliku najlepiej skontaktować się z Asystą Comarch ERP Optima i przesłać dokument z opisem struktury takiego pliku (takie dokumenty są udostępniane przez banki).
  • W formatach służących do eksportu przelewów można używać bezpośrednich odwołań do pól zapisanych w bazie danych poprzez wykorzystanie składni SQL. W tym celu jako pozycję formatu należy wybrać „Zapytanie SQL”, a w polu Wartość wpisać odpowiednie zapytanie; Aby np. pobrać tylko miasto z adresu podmiotu i aby to miasto było pobierane dla podmiotu, który znajduje się na aktualnie wysyłanym zdarzeniu, w części WHERE zapytania należy umieścić odwołanie do wysyłanego zdarzenia: Bzd_BzdId={ZdarzenieID}
  • Przykładowo aby pobrać miasto z adresu kontrahenta, w wartości należy wkleić: Select Pod_Miasto FROM CDN.PodmiotyView JOIN CDN.BnkZdarzenia ON BZd_PodmiotID = Pod_PodId WHERE BZd_PodmiotTyp = Pod_PodmiotTyp AND Bzd_BzdId={ZdarzenieID}

Najczęstsze komunikaty błędów przy eksporcie/imporcie

Problemy przy eksporcie przelewów

  • Przelew [fz 10/2013] nie został wyeksportowany z powodu błędów.
W polu Nazwa pliku zastosowano niedozwolone znaki, np. \/:*?<>|
  • Przelew [fz 10/2013] nie został wyeksportowany z powodu błędów. Właściwość [Opis do banku (pierwsza linijka)] jest wymagana i musi zostać wypełniona.
Pewne pola oznaczone w formacie przelewów jako wymagane nie są uzupełnione (w powyższym komunikacie mowa dokładnie o polu: Opis do banku (pierwsza linijka)). Należy uzupełnić odpowiednie dane lub zmodyfikować format (Ogólne/ Inne/ Formaty przelewów/ na konkretnym formacie, zakładka [Pozycje] i tam pole „Wymagane”)
  • Brak domyślnego formatu eksportu dla US. Wybierz format na karcie banku.
Na karcie banku należy ustawić domyślny format eksportu dla przelewów do US. (Można wejść w Kasa/Bank/ Rejestry, na formularz rejestru z którego jest wykonywany eksport, nacisnąć na przycisk Bank, edytować formularz danego banku i przejść na zakładkę „Dodatkowe”.) Mechanizm eksportu działa w taki sposób, że program próbuje wysyłać 3 rodzaje przelewów za każdym razem (przelewy zwykłe, do US i do ZUS), a do każdego z takich przelewów wymagana jest inna struktura plików, stąd inny format wymiany. Jeżeli na liście przelewów będą zarówno przelewy zwykłe, jak również do US i ZUS wówczas utworzone zostaną 3 oddzielne pliki.
  • Brak domyślnego formatu eksportu dla ZUS. Wybierz format na karcie banku.
Analogicznie jak w poprzednim komunikacie – na karcie banku należy ustawić domyślny format eksportu dla przelewów do ZUS.

Problemy przy imporcie przelewów

  • Błąd analizy struktury formatu: Format nie zawiera pozycji określającej datę dokumentu
W formacie służącym do importu przelewów musi być pozycja Data dokumentu.
  • Nie można odczytać wartości pola – niespodziewany koniec pliku
Np. niezaznaczony parametr „zmienna szerokość pola”.
  • Błąd analizy struktury formatu: Nie ustawiony ogranicznik tekstu przy zmiennej szerokości kolumn.
Jeżeli w formacie przelewów zaznaczone jest „Zmienna szerokość pola” należy również podać „Ogranicznik tekstu”.
  • Błąd analizy struktury formatu: Separator dziesiętny ma wartość identyczną jak separator pól przy zmiennej szerokości kolumn.
W formacie przelewów wybrano taki sam separator pól jak separator dziesiętny – muszą być różne.
  • Błąd w importowanym wierszu – brak separatora pól.
W formacie przelewów wybrano błędny separator pól, niezgodny z danymi w pliku; lub w formacie zdefiniowano za dużo pozycji (więcej niż rzeczywiście jest w pliku).
  • Błąd w importowanym wierszu – brak prawego ogranicznika tekstu.
W formacie przelewów ustawiono błędny typ pozycji (tekst/liczba), niezgodny z danymi w pliku.
  • Błąd analizy struktury formatu: Format zawiera stopkę.
Format do importu przelewów nie może zawierać stopki.
  • Przelew Lp [] nie został zaimportowany z powodu błędów. Brak notowania podanego kursu waluty [waluta] na [data].
W programie nie ma wprowadzonego kursu waluty na wybrany dzień. Należy sprawdzić jakie typy kursów są ustawione na formularzu rejestru, do którego wykonywany jest import – Kasa/Bank/ Rejestry k/b/ na formularzu rejestru pola „Typ kursu sprzedaży” i „Typ kursu zakupu”. (Przy imporcie sprawdzane jest, czy w programie jest wprowadzony kurs na dany dzień dla typu kursu wybranego na formularzu rejestru bankowego.)
  • Przelew Lp [] nie został zaimportowany z powodu błędów. Niepoprawna data zapisu. Zapis nie może być dodany po dacie zamknięcia raportu.
Data na importowanym zapisie jest późniejsza niż data zamknięcia raportu. Przed wykonaniem importu należy wybrać odpowiedni raport (za odpowiedni okres – data otwarcia/zamknięcia raportu), do którego ma być wykonany import.
  • Przelew Lp [] nie został zaimportowany z powodu błędów. Niepoprawna data zapisu. Zapis nie może być dodany przed datą otwarcia raportu.
Data na importowanym zapisie jest wcześniejsza niż data otwarcia raportu. Przed wykonaniem importu należy wybrać odpowiedni raport (za odpowiedni okres – data otwarcia/zamknięcia raportu), do którego ma być wykonany import.

Automatyczna wymiana danych z bankami

Wymiana danych przez usługę sieciową umożliwia pobieranie wyciągów bankowych oraz historii operacji, a także eksport przelewów bezpośrednio z/do systemu bankowego, bez konieczności ręcznego przenoszenia plików pomiędzy aplikacją bankową a programem. Możliwe jest również pobieranie dla każdego wysłanego przelewu jego aktualnego statusu w banku (przelew może oczekiwać na realizację, zostać zrealizowany, odrzucony, anulowany itp.). Szczegółowe informacje na temat wymiany danych poprzez usługę sieciową można znaleźć w dedykowanych biuletynach. Dostępne są również filmy instruktażowe, w których przedstawiony został proces konfiguracji oraz obsługi wymiany danych z bankiem za pomocą usługi sieciowej.

OPT066 - Szybki import i eksport przelewów przez bankowość internetową ING

Data aktualizacji: 06-07-2022

https://youtu.be/F_kT2d1Ayc8

Informacje ogólne

System Comarch ERP Optima obsługuje wymianę danych z bankiem (eksport i import przelewów) za pomocą usługi sieciowej opartej o standard Comarch Data Connect 2.0. Ten sposób wymiany danych umożliwia pobieranie wyciągów bankowych oraz historii operacji, a także eksport przelewów bezpośrednio z/do systemu bankowego, bez konieczności ręcznego przenoszenia plików pomiędzy aplikacją bankową oraz Comarch ERP Optima. Możliwe jest również pobieranie dla każdego wysłanego przelewu jego aktualnego statusu w banku (przelew może oczekiwać na realizację, zostać zrealizowany, odrzucony, anulowany itp.). Wymiana danych pomiędzy bankiem a klientem w usłudze sieciowej odbywa się przez wymianę komunikatów w formacie plików XML (standard ISO 20022) przy wykorzystaniu technologii web-services. Całość komunikacji jest zabezpieczona przez bezpieczny kanał HTTPS z wykorzystaniem dwustronnego SSL. Dzięki tym technologiom komunikacja pomiędzy Bankiem a klientem jest szyfrowana i nikt niepowołany nie ma dostępu do przesyłanych informacji. Dodatkowo dzięki dwustronnemu SSL Bank otrzymuje możliwość wstępnej weryfikacji klienta, a klient może zweryfikować, czy faktycznie podłączył się do serwera Banku. Do zabezpieczenia wymiany informacji zastosowane zostały: certyfikat transportowy, który weryfikuje Klienta i pozwala zweryfikować jego prawo do danego rachunku (rachunków) oraz certyfikat autoryzacyjny (podpis elektroniczny), którym mogą być podpisywane wysyłane do banku przelewy. Gdy przelewy nie zostaną podpisane lub zostaną podpisane przez nieuprawnioną osobę – zlecenia będą oczekiwały w banku na akceptację uprawnionej osoby. Na liście Ogólne/Inne/Formaty przelewów dostępny jest format ING WebService (standardowy) do wymiany danych z ING Bank Śląski. Na stronie http://www.ingbank.pl/ing-businessonline/webservice można dowiedzieć się więcej o tej usłudze oraz sposobie jej zamawiania. W przypadku innych banków należy zweryfikować możliwość wymiany danych poprzez usługę sieciową kontaktując się z danym bankiem. Jeżeli bank wdrożył standard Comarch Data Connect 2.0, Użytkownik może samodzielnie dodać format przelewu, za pomocą którego będzie możliwa wymiana. Na formularzu formatu przelewu na zakładce [Ogólne] trzeba zaznaczyć parametr Bezpośrednia wymiana danych za pomocą usługi sieciowej oraz wpisać adres usługi sieciowej.

Eksport za pomocą usługi sieciowej

Możliwy jest eksport przelewów krajowych (w tym do Urzędu Skarbowego i ZUS) oraz przelewów walutowych. Przelewy walutowe wysyłane są jako przelewy zagraniczne. Jest możliwość wysyłania przelewów euroregulowanych (SEPA). Jako przelewy euroregulowane wysyłane są zdarzenia rozchodowe w walucie EUR, na których zaznaczony został parametr Przelew SEPA Na formularzu banku w polach Format eksportu dla przelewów zwykłych oraz Format importu wyciągów bankowych można wskazać format obsługujący wymianę za pomocą usługi sieciowej (ING WebService (standardowy)). Format ten będzie podpowiadał się jako domyślny podczas eksportu i importu przelewów.
Rys.1 - Formularz banku, zakładka "Import/ Eksport"
Po wybraniu takiego formatu na formularzu banku pojawia się zakładka [Ustawienia usługi sieciowej]. Na zakładce tej Użytkownik wprowadza ustawienia dotyczące przelewów walutowych oraz podpina certyfikat do komunikacji. Został przygotowany już dla Państwa prosty kreator do generowanie certyfikatu komunikacyjnego, który umożliwi wymianę danych za pomocą usługi sieciowej. Kreator jest pod tym linkiem.
Rys. 2 - Formularz banku, zakładka Ustawienia usługi sieciowej
W przypadku przelewów walutowych istotne jest uzupełnienie pól: Opłatę ponosi, Osoba kontaktowa oraz Kontakt. W przypadku pola Opłatę ponosi jest możliwość wyboru trzech opcji: Zleceniodawca, Zleceniobiorca, Po równo. W przypadku niektórych rachunków opcja Zleceniobiorca może być zablokowana. Pokaże się wtedy odpowiedni komunikat przy próbie eksportu z wybraną tą opcją. W przypadku Osoba kontaktowa oraz Kontakt należy wprowadzić imię i nazwisko oraz np. numer telefonu przedstawiciela Klienta, z którym można się kontaktować. Jest to pole wymagane gdy wysyłane są przelewy walutowe. Eksport przelewów za pomocą usługi sieciowej jest możliwy z poziomu preliminarza płatności dla wybranego konkretnego rejestru. Jeżeli wybrany rejestr ma na formularzu banku przypisany format obsługujący wymianę danych za pomocą usługi sieciowej, wtedy ikona Eksportuj polecenia przelewu ma rozwijalne menu z dwoma opcjami: Eksportuj przelewy  oraz Aktualizuj stany przelewów  . Domyślnie kliknięcie w ikonę powoduje wywołanie okna Eksport przelewów do pliku.

Rys.3 - Okno eksportu przelewu poprzez usługę sieciową

W konfiguracji Stanowiska/ Kasa/Bank/ Parametry znajdują się parametry: Zapisuj dane wymieniane z bankiem do plików XML oraz Zapisuj szczegółowe logi z komunikacji z bankiem. Domyślnie te parametry są odznaczone. Zaznaczenie ich spowoduje zapisywanie plików w których znajdą się informacje związane z komunikacją z bankiem. Wygenerują się one w katalogu z logami programu, w ścieżce: %appdata%\Comarch\Optima\Logs\WebserwisyBankowe. Po wybraniu opcji Eksportuj przelewy pokazuje się okno, na którym można ustawić wybrane opcje eksportu. Po ustawieniu parametrów, eksport uruchamiamy ikoną pioruna. Eksportowane są zarówno przelewy w PLN jak również w walucie obcej. Jest możliwy również eksport przelewów zbiorczych. Jest również możliwość podpisania przelewów za pomocą podpisu kwalifikowanego. Pojawia się okno z możliwością wyboru właściwego certyfikatu. Jeżeli okno z wyborem certyfikatu zostanie anulowane – przelewy zostaną wysłane i będą oczekiwały na akceptację po stronie banku. W preliminarzu płatności jeżeli wybrany zostanie rejestr, który obsługuje wymianę danych poprzez usługę sieciową wśród kolumn na liście dostępne są kolumny: Data wysłania WebService, Komunikat WebService, Data komunikatu WebService. W kolumnach tych zapisywane są informacje przy eksporcie do usługi sieciowej oraz każdorazowym sprawdzeniu stanu przelewów w banku. Jest również możliwość sprawdzenia aktualnego statusu przelewów w banku. Opcja Aktualizuj stany przelewów sprawdza stan przelewów w banku oraz aktualizuje informacje na liście w preliminarzu płatności oraz na formularzu zdarzenia.

Import za pomocą usługi sieciowej

W systemie jest również dostępny import przelewów za pomocą usługi sieciowej. Jest możliwość importu wyciągów bankowych bądź historii operacji, jeżeli za dany okres nie jest jeszcze dostępny wyciąg bankowy. Zalecamy aby okres raportów kasowych/bankowych w systemie Comarch ERP Optima był taki sam jak okres raportów w systemie bankowym. Jeżeli okres raportu się nie pokrywa to przy imporcie pojawi się odpowiedni komunikat wraz z pytaniem czy wykonać import historii operacji. Jeżeli wykonany został import historii operacji i następnie potem wykonywany jest ponowny import historii bądź import wyciągu wtedy importowane są tylko te przelewy, które nie zostały jeszcze zaimportowane. Duplikaty są odrzucane. Duplikaty sprawdzane są wg następujących kryteriów:
  • Data księgowania,
  • Numer rachunku kontrahenta,
  • Kwota,
  • Opis przelewu.
Podczas importu sprawdzany jest stan początkowy raportu i porównywany ze stanem początkowym wyciągu bankowego. Jeżeli stany będą niezgodne w logu pokaże się odpowiednie ostrzeżenie. Po zakończeniu importu aktualizowany jest stan końcowy raportu i porównywany ze stanem końcowym w wyciągu. W przypadku braku zgodności również pokazywane jest odpowiednie ostrzeżenie. Na liście raportów kasowych/bankowych dla rejestru, który obsługuje import przelewów poprzez usługę sieciową, wśród kolumn (ukrytych) na liście jest kolumna [Wyciąg z banku], w której zapisywana jest informacja, czy wyciąg bankowy został pobrany.

Eksport i import przelewów za pomocą usługi sieciowej - najczęściej zadawane pytania

  • Co należy ustawić w programie Comarch ERP Optima, aby móc skorzystać z Eksport i import przelewów za pomocą usługi sieciowej?
Odpowiedź: Na formularzu banku (Ogólne/Inne/Banki) w polach Format eksportu dla przelewów zwykłych oraz [Format importu wyciągów bankowych] (druga zakładka) należy wskazać format obsługujący wymianę za pomocą usługi sieciowej (ING WebService (standardowy)). Następnie na 3 zakładce [Ustawienia usługi sieciowej] Użytkownik wprowadza ustawienia dotyczące przelewów walutowych oraz podpina certyfikat do komunikacji otrzymany z banku.
  • Jakie warunki powinny spełniać certyfikaty wykorzystywane podczas wysyłki aby odbyła się ona prawidłowo?
Odpowiedź: Certyfikat komunikacyjny i autoryzacyjny powinny znajdować się w sekcji osobiste, mieć aktualną datę ważności oraz posiadać informację o obsługujących je kluczach prywatnych. Ponadto w przypadku certyfikatu autoryzacyjnego należy poprawnie zainstalować sterowniki urządzenia obsługującego certyfikat po stronie systemu operacyjnego. Jeśli bank wymaga dodatkowych certyfikatów należy upewnić się czy znajdują się one we właściwych magazynach certyfikatów oraz czy posiadają aktualną datę ważności.

Pliki do pobrania

OPT056-Eksport e-Deklaracji oraz import UPO

Aktualizacja  01-06-2022

1 e-Deklaracje – informacje ogólne

Funkcjonalność Comarch ERP Optima umożliwiająca składanie deklaracji elektronicznych opiera się na modelu, w którym w pierwszym etapie tworzony jest plik XML zgodny ze schematem XSD opublikowanym przez Ministerstwo Finansów. Następnie tak wygenerowany plik Użytkownik podpisuje podpisem elektronicznym i przesyła na serwer Ministerstwa  Finansów. W programie Comarch ERP Optima jest możliwy eksport do systemu e-Deklaracje:
  • deklaracji VAT-9M wraz z załącznikami: ORD-ZU
  • deklaracji VAT-UE
  • deklaracji VIU-DO
  • deklaracji rocznej PIT-28 wraz z załącznikami: PIT-28/B, PIT/O, PIT/D, PIT-2K, PIT/WZR, ORD-ZU
  • deklaracji rocznej PIT-36 wraz z załącznikami: PIT/BPIT/O, PIT/D, PIT-2K, PIT/ZG, PIT/Z, PIT/BR, PIT/IP, PIT/PM, PIT/MIT, PIT/WZ, ORD-ZU
  • deklaracji rocznej PIT-36L wraz z załącznikami: PIT/B, PIT/ZG, PIT/Z, PIT/BR, PIT/O, PIT/IP, PIT/PM, PIT/MIT, PIT/WZ, ORD-ZU
  • deklaracji rocznej PIT-37 wraz z załącznikami: PIT/O, PIT/D, PIT-2K, ORD-ZU
  • deklaracji rocznej CIT-8 wraz z załącznikami: CIT-8/O, CIT-D, CIT-ST, CIT-ST/A, CIT-BR, CIT/IP, CIT/PM, CIT/MIT, CIT/WZ, ORD-ZU, CIT/8S
  • deklaracji rocznych PIT-11 wraz z załącznikiem PIT-R, IFT-1R, PIT-8C
  • deklaracji rocznych PIT-4R, PIT-8AR
oraz ich korekt.
Uwaga
W związku z likwidacją deklaracji VAT-7 i VAT-7K (od października 2020 r.), VAT-27 (od listopada 2019 r.) oraz VAT-7D (od stycznia 2017 r.), Użytkownik nadal ma możliwość wyliczenia oraz eksportu do systemu e-Deklaracji korekt deklaracji VAT-7, VAT-7K, VAT-27 i VAT-7D wraz z załącznikami za okres rozliczeniowy zgodnie z wzorem i datą ich obowiązywania.
Uwaga
W związku z likwidacją od stycznia 2018 r. deklaracji PIT-40, Użytkownik nadal ma możliwość wyliczenia oraz eksportu do systemu e-Deklaracji korekt deklaracji PIT-40 wraz z załącznikiem PIT-R za okres rozliczeniowy wcześniejszy niż styczeń 2017 r.
Aby wysłać e-Deklarację z programu Comarch ERP Optima należy:
  • Dysponować podpisem elektronicznym.
Uwaga
Podczas wysyłania e-Deklaracji w imieniu innego podatnika (płatnika) należy posiadać podpis z ważnym upoważnieniem. Wymagane jest zatem wcześniejsze złożenie, we właściwym urzędzie skarbowym w formie papierowej formularza UPL-1 (pełnomocnictwo do podpisywania deklaracji składanej za pomocą środków komunikacji elektronicznej).
Uwaga
W przypadku podatników będących osobami fizycznymi, deklaracje można również składać elektronicznie bez konieczności stosowania bezpiecznego podpisu elektronicznego weryfikowanego za pomocą ważnego kwalifikowanego certyfikatu. Podpis niekwalifikowany może być wykorzystywany przy następujących formularzach dokumentów: VAT-7, VAT‑7K, VAT-9M, VAT-27, VAT-UE, PIT-36, PIT-36L, PIT-37, PIT-28, PIT‑11, PIT-8C, IFT-1R, PIT-4R, PIT-8AR.
  • Wskazać katalog przechowywania plików xml. 
W menu Start/Konfiguracja/ Stanowisko/ Ogólne/ e-Deklaracje w polu: „Katalog przechowywania plików wymiany:” należy wskazać katalog, w którym mają być zapisane pliki xml. Podczas wysyłania e-Deklaracji tworzony jest katalog o nazwie takiej jak nazwa bazy danych, a następnie podkatalog o nazwie RokMiesiąc deklaracji i w nim są umieszczane pliki z deklaracją oraz odebrane UPO (Urzędowe Poświadczenie Odbioru).
Uwaga
Jeżeli informacja o katalogu nie była uzupełniona w Konfiguracji stanowiska, od wersji 2021.4.1 katalog przechowywania plików wymiany uzupełnia się automatycznie. W przypadku e-Deklaracji tworzona jest ścieżka %ProgramData%\Comarch ERP Optima\Deklaracje
  • Sprawdzić adres usługi Web Service e-Deklaracje.
Adres usługi serwisu jest zapisany z poziomu Start/Konfiguracja/ Program /Ogólne/ e-Deklaracje / JPK/ CUK, powinien być: https://bramka.e-deklaracje.mf.gov.pl/
  • Uzupełnić listę Urzędów Skarbowych wraz z kodami urzędów.
W menu Ogólne/ Inne/ Urzędy – znajduje się lista urzędów. Na formularzu urzędu skarbowego należy wpisać dane adresowe oraz niezbędny do wysyłania e-Deklaracji kod Urzędu Skarbowego. Lista kodów Urzędów Skarbowych dostępna jest np. na stronie Ministerstwa Finansów pod  linkiem: http://crd.gov.pl/xml/schematy/dziedzinowe/mf/2020/07/06/eD/KodyUrzedowSkarbowych/KodyUrzedowSkarbowych_v7-0E.xsd
  • Uzupełnić indywidualny rachunek podatkowy firmy i/lub właściciela
W menu Start/Konfiguracja/ Firma/ Dane firmy/ Deklaracje należy uzupełnić indywidualny rachunek podatkowy firmy, który dotyczy deklaracji: CIT-8, VAT-7, JPK_V7, VAT-8, VAT-9M i CUK-1. Na formularzu danych kadrowych uzupełnia się indywidualny rachunek podatkowy właściciela, który dotyczy deklaracji: PIT-36, PIT-36L i PIT-28.         
  • Poprawnie wypełnić wymagane dane adresowe i identyfikacyjne oraz wyliczyć i zablokować deklarację.
Obowiązkowe jest uzupełnienie poniższych pól:
  • dane i adres podatnika (Start/Konfiguracja/ Firma/ Dane firmy/ PIT-28; PIT-36, PIT-36L; PIT-4R, CIT-8, ZUS DRA; VAT, AKC-WW, CUK):
Jeśli podatnikiem jest osoba fizyczna:
  1. Numer NIP podatnika
  2. Pierwsze imię oraz nazwisko podatnika
  3. Data urodzenia
  4. Adres podatnika,  pola:  Województwo,  Powiat,  Gmina,  Numer  domu,  Miejscowość,  Kod pocztowy, Poczta (dane adresowe są wymagane tylko dla deklaracji wyliczanych na formularzach starszych niż VAT-7(14), VAT-7D(5), VAT-7K(8)).
Jeżeli podatnikiem jest osoba prawna:
  1. Numer NIP podatnika
  2. REGON (z poziomu Start/Konfiguracja/ Firma/ Dane firmy/ Pieczątka firmy)
  3. Pełna nazwa
  4. Adres siedziby: Województwo, Powiat, Gmina, Numer domu, Miejscowość, Kod pocztowy, Poczta (dane adresowe są wymagane tylko dla deklaracji wyliczanych na formularzach starszych niż VAT-7(14), VAT-7D(5), VAT-7K(8)).
  • urzędy skarbowe z wypełnionymi kodami (z poziomu Start/Konfiguracja/ Firma/ Dane firmy/ Deklaracje)
Ponadto w przypadku: Deklaracji VAT-7:
  • Jeżeli wysyłana jest korekta deklaracji – na zakładce ORD-ZU można uzupełnić uzasadnienie przyczyny złożenia korekty
Uwaga
Od wersji 2016.1.1 Comarch ERP Optima na korektach deklaracji składanych od 01.01.2016 wyłączono konieczność składania załącznika ORD-ZU, jego uzupełnienie nie jest już konieczne do zatwierdzenia deklaracji i wysłania jej drogą elektroniczną
  • Jeżeli wysyłane jest zawiadomienie o skorygowaniu podstawy opodatkowania oraz kwoty podatku należnego – informacja o załączniku VAT-ZD zaznacza się automatycznie na podstawie wcześniej przygotowanego zawiadomienia VAT-ZD
Deklaracji PIT-11, PIT-8C:
  • Na formularzu danych kadrowych pracownika:
  1. PESEL, Data urodzenia
  2. Pełne dane adresowe pracownika (Województwo, Powiat, Gmina, Numer domu, Miejscowość, Kod pocztowy , Poczta)
  3. Urząd skarbowy pracownika (z wypełnionym kodem urzędu)
  • Jeżeli wysyłana jest korekta deklaracji – na zakładce ORD-ZU należy uzupełnić przyczynę złożenia korekty
Deklaracji IFT-1R/IFT-1:
  • Na formularzu danych kadrowych:
  1. NIP - numer NIP można wpisać na formularzu danych kadrowych na zakładce 1 Ogólne. Inny identyfikator można wpisać na zakładce 2 ident. /Podatki po wcześniejszym zaznaczeniu parametru Ograniczony obowiązek podatkowy (nierezydent) w sekcji Rodzaj numeru indentyfikacyjnego. Inny identyfikator można wpisać również bezpośrednio na formularzu deklaracji IFT
  2. Miejscowość
  3. Kod kraju
  4. Miejsce urodzenia
  • Jeżeli wysyłana jest korekta deklaracji – na zakładce ORD-ZU należy uzupełnić przyczynę złożenia korekty
Uwaga
Od wersji 2015.0.1 Comarch ERP Optima konieczne jest przed naliczeniem deklaracji uzupełnienie pola Kod kraju w adresach tych pracowników, dla których będą liczone deklaracje IFT-1/IFT-1R i wysyłane elektronicznie do systemu e-Deklaracje.
Uwaga
W przypadku pracowników, którzy mają kilka zapisów historycznych związanych z aktualizacją danych – po zaznaczeniu pracownika na liście w Kadrach należy kliknąć w menu górnym w ikonę ‘Zapisy historyczne’, otworzyć/wyedytować zapis/formularz aktualny na koniec roku za który generowana jest deklaracja i uzupełnić wymagane dane a następnie ponownie przeliczyć deklarację.
Uwaga
Numer NIP nie jest już obowiązkowym identyfikatorem w przypadku pracowników. Na formularzu pracownika na zakładce ‘Nr ident./podatki’ został dodany parametr NIP zamiast PESEL na deklaracji PIT (domyślnie nie zaznaczony) – co oznacza, że program wykazuje obecnie na deklaracji numer PESEL, jeżeli jednak (w przypadku  osób prowadzących działalność) na deklaracji powinien się pojawić numer NIP – należy ten parametr zaznaczyć.
Uwaga
Na deklaracji może być wykazany adres zamieszkania lub adres zameldowania danego pracownika. Odpowiada za to parametr na formularzu pracownika na zakładce ‘Nr ident./podatki’ Adres zamieszkania zamiast adresu zameldowania na deklaracji PIT – zaznaczenie parametru powoduje wstawienie na deklaracjach PIT adresu zamieszkania pracownika. W przeciwnym przypadku (domyślne ustawienie) na deklaracjach pojawia się adres zameldowania.
Deklaracji PIT-36, PIT-36L:
  • Na formularzu danych kadrowych właściciela/wspólnika
  1. NIP
  2. Data urodzenia
  3. Adres zamieszkania podatnika: Województwo, Powiat, Gmina, Numer domu, Miejscowość, Kod pocztowy (dane adresowe wymagane są tylko dla PIT-36)
  4. Indywidualny rachunek podatkowy
  • Pola liczbowe powiązane z opisem wymagają łącznego uzupełnienia, aby deklaracja została wysłana do systemu e-Deklaracje (np. Straty z lat ubiegłych – uwzględniając kwotę straty na PIT-36/PIT-36L należy uzupełnić również jej źródło).
  • Jeżeli wysyłana jest korekta deklaracji – na zakładce ORD-ZU można uzupełnić przyczyny złożenia korekty (załącznik ORD-ZU jest wymagany dla rodzaju korekty: korekta zeznania składana w toku postępowania podatkowego w sprawie unikania opodatkowania, o której mowa w art. 81b § 1a Ordynacji podatkowej).
  • Jeżeli jest składany załącznik PIT/B, gdzie podatnik posiada udział w spółce – należy uzupełnić: Nazwa spółki, Udział (w %) oraz NIP
  • W przypadku rozliczenia PIT-36 wspólnie z małżonkiem istnieje możliwość wskazania na formularzu właściciela (podatnika) Współwłaściciela – wówczas dane małżonka podstawią się automatycznie na deklaracji PIT-36. Wymagane dane to:
  1. NIP/ PESEL małżonka
  2. Imię i nazwisko małżonka
  3. Data urodzeniaAdres zamieszkania małżonka nie jest wymagany, jeśli taki sam jak w części B.1. dotyczącej podatnika. W innym przypadku należy uzupełnić: Województwo, Powiat, Gmina, Numer domu, Miejscowość, Kod pocztowy.
Deklaracji PIT-37:
  • Dane podatnika oraz małżonka w przypadku wspólnego rozliczenia na PIT-37:
  1. NIP/ PESEL
  2. Imię i nazwisko
  3. Data urodzenia
  4. Adres zamieszkania: Województwo, Powiat, Gmina, Numer domu, Miejscowość, Kod pocztowy. Adres zamieszkania małżonka nie jest wymagany, jeśli taki sam jak w części B.1. dotyczącej podatnika.
  • Jeżeli wysyłana jest korekta deklaracji – na zakładce ORD-ZU można uzupełnić przyczyny złożenia korekty (załącznik ORD-ZU jest wymagany dla rodzaju korekty: korekta zeznania składana w toku postępowania podatkowego w sprawie unikania opodatkowania, o której mowa w art. 81b § 1a Ordynacji podatkowej).
Uwaga
Deklaracja PIT-37 dostępna jest w programie od wersji 2016.1.1, jeżeli w Konfiguracji/ Firma/ Dane firmy/ Deklaracje zaznaczono parametr PIT-37 oraz pobrano moduł Księga Handlowa lub Księga Handlowa Plus lub Księga Podatkowa. Typ deklaracji dostępny jest dla wszystkich rodzajów księgowości. Kwoty na deklaracji PIT-37 Użytkownik powinien uzupełnić ręcznie, nie są one pobierane z żadnego miejsca w programie. Dla deklaracji PIT-37 nie są generowane płatności w Preliminarzu płatności.
Deklaracji PIT-28:
  • Na formularzu danych kadrowych właściciela/wspólnika
  1. NIP
  2. Data urodzenia
  3. Adres zamieszkania podatnika: Województwo, Powiat, Gmina, Numer domu, Miejscowość, Kod pocztowy
  4. Indywidualny rachunek podatkowy
  • Jeżeli wysyłana jest korekta deklaracji – na zakładce ORD-ZU można uzupełnić przyczyny złożenia korekty (załącznik ORD-ZU jest wymagany dla rodzaju korekty: korekta zeznania składana w toku postępowania podatkowego w sprawie unikania opodatkowania, o której mowa w art. 81b § 1a Ordynacji podatkowej).
  • W przypadku PIT-28/B wymaganymi polami są: Nazwa pełna spółki oraz Identyfikator podatkowy NIP spółki
Uwaga
W celu sprawdzenia, które pola są wymagane do uzupełnienia na generowanej deklaracji PIT lub VAT należy wejść na stronę Ministerstwa Finansów, gdzie są dostępne zarówno formularze interaktywne jak i struktura dokumentów XML: https://www.podatki.gov.pl/ oraz https://www.podatki.gov.pl/e-deklaracje/dokumentacja-it/struktury-dokumentow-xml/
Uwaga
Od wersji 2016.0.1 Comarch ERP Optima udostępniono możliwość walidacji  poprawności wysyłanych e-Deklaracji. Działanie funkcji zależne jest od parametru dostępnego w menu Start/Konfiguracja/ Program/ Ogólne/ e‑Deklaracje / JPK/ CUK Sprawdzaj poprawność e-Deklaracji przed wysłaniem (domyślnie zaznaczony). Podczas wysyłki deklaracji drogą elektroniczną następuje porównanie wysyłanego dokumentu ze schematem dokumentu elektronicznego, który udostępnia Ministerstwo Finansów. Weryfikacja odbywa się po kliknięciu na ikonę Wyślij deklarację do systemu e-Deklaracje. Deklaracja zweryfikowana jako niezgodna ze schematem nie będzie wysłana. Weryfikowana jest kompletność zarówno danych automatycznie pobieranych na deklarację (np. danych adresowych firmy bądź właściciela/pracownika), jak i wprowadzanych bezpośrednio na formularzu deklaracji.

2 Eksport e-Deklaracji

Do systemu e-Deklaracji można wysłać deklaracje, które zostały wcześniej zablokowane przed zmianami i widnieją na liście w kolorze czarnym (w tym celu należy otworzyć formularz deklaracji i zaznaczyć Zablokuj deklarację przed zmianami’ (nie dotyczy deklaracji VIU-DO)). Aby wysłać zatwierdzoną deklarację należy kliknąć na ikonę Wyślij deklarację do systemu e-Deklaracje . Deklaracja VIU-DO do czasu wysyłki jest widoczna na czarno, odmiennie niż inne deklaracje. Deklaracja VIU-DO nie ma statusu bufor/zatwierdzona. Wysyłka do systemu następuje z listy deklaracji VIU-DO.
Uwaga
W przypadku deklaracji VAT-7, VAT-7K, VAT-27, VAT-9M, VAT-8, VAT-UE, PIT-36, PIT-36L, PIT-37, PIT-28, PIT-11, PIT-8C, IFT-1R, PIT-4R, PIT-8AR Użytkownik może dokonać wyboru z menu przy ikonie  jednego z następujących rodzajów podpisu
Po wciśnięciu ikony   pojawia się log z przebiegu eksportu, który kolejno będzie wskazywał jakie czynności są wykonywane:
  1. Przygotowanie deklaracji
  2. Walidacja e-Deklaracji (porównanie wysyłanej deklaracji ze schematem dokumentu elektronicznego, który udostępnia Ministerstwo Finansów. Podczas pierwszej wysyłki deklaracji po każdorazowym uruchomieniu programu następuje sprawdzenie i pobranie aktualizacji schem e-Deklaracji z serwera COMARCH)
    Uwaga
    Jeżeli weryfikacja nie powiedzie się z powodu błędów istniejących na deklaracji należy: odblokować deklarację, uzupełnić/poprawić dane, a następnie przeliczyć i wyeksportować ją ponownie.
  3. Podpisanie deklaracji - w przypadku podpisu kwalifikowanego pojawi się okno z listą dostępnych i jednocześnie ważnych certyfikatów (certyfikat musi być zarejestrowany w systemie, aby pojawił się w oknie wyboru), następnie pojawi się okno komponentu do podpisywania, w którym będzie należało podać PIN
  4. Wysłanie deklaracji
  5. Odebranie statusu deklaracji – zwykle będzie to komunikat „Dokument w trakcie przetwarzania, sprawdź wynik następnej weryfikacji dokumentu”
Po poprawnym zakończeniu eksportu, w logu z przebiegu eksportu będą następujące informacje:

Rys.1 Log z przebiegu operacji – wysyłanie deklaracji

Na liście deklaracji, w kolumnie e-Deklaracje, pojawi się status „Wysłano/Nie odebrano UPO”, a w kolumnie Data wysłania pojawi się data wysłania deklaracji. Na formularzu deklaracji dostępna jest zakładka e-Deklaracje, w której znajdują się szczegółowe informacje (do odczytu) o statusie deklaracji, dacie i godzinie wysłania/odebrania oraz dane osoby, która te zmiany wykonała.
Uwaga
Jeżeli podczas wysyłki najnowszych wersji formularzy deklaracji do systemu e‑Deklaracje pojawi się podczas weryfikacji komunikat o treści: Nie udało się zwalidować e-deklaracji z powodu błędów. Brak schematu dokumentu elektronicznego na stronach e-PUAP. Poprawność deklaracji zostanie sprawdzona podczas odbioru UPO. [-2146232832], to świadczyć o przejściowych problemach z dostępem do serwera e-Deklaracji. Należy w takim wypadku wstrzymać się z wysyłką deklaracji i ponowić próbę za jakiś czas. Jeżeli Użytkownik zdecyduje się na wysyłkę, powinien od razu spróbować pobrać UPO, aby mieć pewność poprawności wysłanej deklaracji.
Uwaga
W sytuacji, gdy weryfikacja e-Deklaracji nie nastąpi podczas wysyłki, wówczas po wysłaniu deklaracji należy odebrać UPO. Jeżeli serwer Ministerstwa Finansów  podczas odbierania UPO zgłosi błąd w deklaracji, wówczas można cofnąć deklarację do  bufora (prawy przycisk myszy ‑ „Odblokuj deklarację”) i po wprowadzeniu zmian ponowne ją wysłać.
Uwaga
Od wersji 2015.1.1 dostępny jest mechanizm automatycznego pobierania aktualizacji umożliwiających wysyłanie deklaracji drogą elektroniczną w przypadku, gdy w czasie udostępnienia wersji nie był znany schemat dokumentu elektronicznego. Przy pierwszej wysyłce w danej sesji pracy następuje łączenie się z serwerem Comarch i sprawdzanie, czy aktualizacja jest dostępna. Jeżeli tak, zostanie ona pobrana. Funkcja jest dostępna tylko dla programów na gwarancji.
Uwaga
W związku ze zmianą na serwerze Ministerstwa Finansów stosowanego do uwierzytelniania protokołu TLS (Transport Layer Security) do wersji 1.2, od wersji 2017.2.1 umożliwiono obsługę tego protokołu podczas wysyłki deklaracji drogą elektroniczną z programu Comarch ERP Optima. Wiąże się to z koniecznością zainstalowania na stanowisku komponentu .NET Framework w wersji co najmniej 4.5.
Deklaracja PIT-36 Naciśnięcie ikony  Wyślij deklarację do systemu e-Deklaracje, aktywnej na zatwierdzonym formularzu PIT‑36, rozpoczyna eksport deklaracji do systemu e-Deklaracje.
Uwaga
Do systemu e-Deklaracje można wysłać deklarację PIT-36 wraz z załącznikami: PIT/B, PIT/O, PIT/D, PIT-2K, PIT/ZG, PIT/Z, PIT/BR, PIT/IP, PIT/PM, PIT/MIT, PIT/WZ, ORD‑ZU. Nie są przesyłane pozostałe załączniki wymienione w sekcji „Informacje o załącznikach”. Jeżeli istnieje potrzeba wypełnienia któregoś z tych załączników należy złożyć deklarację poprzez stronę systemu e‑Deklaracje lub w formie papierowej.
Uwaga
Od wersji 2018.6.1 Comarch ERP Optima udostępniono możliwość seryjnego naliczania/zatwierdzania uproszczonych zaliczek na podatek dochodowy od osób fizycznych PIT-36. W zależności jaki typ zaliczki zostanie wybrany dla podatnika na liście zaliczek PIT-36 (menu spod ikony plusa), w programie wyliczone zostaną zaliczki uproszczone bądź zwykłe i obowiązywać będą do końca roku kalendarzowego. Od wersji 2020.5.1, w ramach tzw. tarczy antykryzysowej związanej z pandemią COVID-19, w okresie od marca 2020 umożliwiono rezygnację ze stosowania zaliczek uproszczonych w trakcie roku podatkowego. Podatnik pomimo wyboru formy uproszczonej ma możliwość naliczenia zaliczek zwykłych (wg zasad ogólnych).
Deklaracja PIT-36L Naciśnięcie ikony  Wyślij deklarację do systemu e-Deklaracje, aktywnej na zatwierdzonym formularzu PIT-36L, rozpoczyna eksport deklaracji do systemu e-Deklaracje.
Uwaga
Do systemu e-Deklaracje można wysłać deklarację PIT-36L wraz z załącznikami: PIT/B, PIT/ZG, PIT/Z, PIT/BR, PIT/O, PIT/IP, PIT/PM, PIT/MIT, PIT/WZ, ORD-ZU. Nie są przesyłane pozostałe załączniki wymienione w sekcji „Informacje o załącznikach”. Jeżeli istnieje potrzeba wypełnienia któregoś z tych załączników należy złożyć deklarację poprzez stronę systemu e‑Deklaracje lub w formie papierowej.
Uwaga
Od wersji 2018.6.1 Comarch ERP Optima udostępniono możliwość seryjnego naliczania/zatwierdzania uproszczonych zaliczek na podatek dochodowy od osób fizycznych PIT-36L. W zależności jaki typ zaliczki zostanie wybrany dla podatnika na liście zaliczek PIT-36L (menu spod ikony plusa), w programie wyliczone zostaną zaliczki uproszczone bądź zwykłe i obowiązywać będą do końca roku kalendarzowego. Od wersji 2020.5.1, w ramach tzw. tarczy antykryzysowej związanej z pandemią COVID-19, w okresie od marca 2020 umożliwiono rezygnację ze stosowania zaliczek uproszczonych w trakcie roku podatkowego. Podatnik pomimo wyboru formy uproszczonej ma możliwość naliczenia zaliczek zwykłych (podatek liniowy).
Deklaracja PIT-37 Naciśnięcie ikony   Wyślij deklarację do systemu e-Deklaracje, aktywnej na zatwierdzonym formularzu PIT-37, rozpoczyna eksport deklaracji do systemu e-Deklaracje.
Uwaga
Do systemu e-Deklaracje można wysłać deklarację PIT-37 wraz z załącznikami: PIT/O, PIT/D, PIT-2K, ORD-ZU. Jeżeli  istnieje potrzeba wypełnienia Certyfikatu rezydencji należy złożyć deklarację poprzez stronę systemu e‑Deklaracje lub w formie papierowej.
Deklaracja PIT-28 Naciśnięcie ikony  Wyślij deklarację do systemu e-Deklaracje, aktywnej na zatwierdzonym formularzu PIT‑28, rozpoczyna eksport deklaracji do systemu e-Deklaracje.
Uwaga
Do systemu e-Deklaracje można wysłać deklarację PIT-28 wraz z załącznikami: PIT-28/B, PIT/O, PIT/D, PIT-2K, PIT/WZR, ORD-ZU.
Deklaracja CIT-8 Naciśnięcie ikony   Wyślij deklarację do systemu e-Deklaracje, aktywnej na zatwierdzonym formularzu CIT-8, rozpoczyna eksport deklaracji do systemu e-Deklaracje.
Uwaga
Do systemu e-Deklaracje można wysłać deklarację CIT-8 wraz z załącznikami CIT-8/O, CIT-D, CIT-ST, CIT-ST/A, CIT-BR, CIT/IP, CIT/PM, CIT/MIT, CIT/WZ, CIT/8S,ORD-ZU. Jeżeli istnieje potrzeba dołączenia innych załączników należy przesłać deklarację ze strony systemu e‑Deklaracje.
Uwaga
Od wersji 2018.1.1 Comarch ERP Optima udostępniono możliwość seryjnego naliczania/zatwierdzania uproszczonych zaliczek na podatek dochodowy od osób prawnych CIT-8. W zależności czy na formularzu okresu obrachunkowego w Konfiguracji/ Firma/ Księgowość/ Okresy obrachunkowe zaznaczony zostanie parametr Zaliczki uproszczone na CIT, w programie wyliczone zostaną zaliczki uproszczone bądź zwykłe. Od wersji 2020.5.1, w ramach tzw. tarczy antykryzysowej związanej z pandemią COVID-19, w okresie od marca 2020 umożliwiono rezygnację ze stosowania zaliczek uproszczonych w trakcie roku podatkowego. Podatnik pomimo wyboru formy uproszczonej ma możliwość naliczenia zaliczek zwykłych.
Deklaracja PIT-4R Naciśnięcie ikony  Wyślij deklarację do systemu e-Deklaracje, aktywnej na zablokowanym formularzu PIT-4R, rozpoczyna eksport deklaracji do systemu e-Deklaracje.
Uwaga
Od  2007  roku  Płatnik  nie  składa  deklaracji  PIT -4,  ale zobowiązany jest do comiesięcznej wpłaty zaliczki na podatek dochodowy. W celu ustalenia kwoty zaliczki podatku do odprowadzenia do Urzędu Skarbowego należy naliczać co miesiąc deklarację PIT-4 (wersja 18). Na podstawie tych miesięcznych zaliczek można przygotować deklarację roczną PIT -4R.
Deklaracja PIT-8AR Z  poziomu Płace i Kadry / Podatek na PIT-8AR dostępna jest ‘Lista podatku na PIT-8AR’ z  naliczonymi zaliczkami za każdy miesiąc, na podstawie których można przygotować deklarację roczną PIT-8AR (wybierając z menu dostępnych opcji przy przycisku ‘plusa’). Naciśnięcie przycisku  Wyślij deklarację do systemu e‑Deklaracje, aktywnego na zablokowanym formularzu PIT-8AR, rozpoczyna eksport  deklaracji do systemu e‑Deklaracje. Seryjne e-Deklaracje PIT-11/PIT-8C/ IFT-1/IFT-R Z poziomu Płace i Kadry / Deklaracje PIT pracowników otwiera się okno z listą pracowników, dla których obliczono PIT. Domyślnie wyświetlana jest lista deklaracji PIT-11, z możliwością zmiany w filtrze (pole Lista deklaracji) na PIT-8C/IFT-1R/IFT-1. Zaznaczenie pracowników i naciśnięcie przycisku   powoduje seryjne zablokowanie deklaracji, niezbędne w celu wysłania deklaracji. Zaznaczając pracowników, dla których deklaracje mają być wysłane i naciśnięcie  przycisku   Wyślij  deklarację  do  systemu  e-Deklaracje  (dla zablokowanych formularzy), rozpoczyna eksport deklaracji.
Uwaga
W zależności od ustawień komponentu do obsługi podpisu elektronicznego program poprosi o podanie PIN’u tylko raz i podpisze wszystkie deklaracje lub będzie prosił o podanie PIN’u dla każdej deklaracji osobno. Komponent UNIZETO domyślnie wymaga wybrania certyfikatu i podpisania PIN’u tylko jeden raz w danej sesji. Komponent KiR’u i Sigillum wymaga ustawienia opcji „Trwały PIN” i podania np. na jaki czas ma być zapamiętany PIN.
Uwaga
W przypadku Comarch ERP Optima w modelu usługowym (iComarch24) program zapyta o certyfikat i poprosi o potwierdzenie każdej kolejnej wysyłanej deklaracji (ze względu na bezpieczeństwo – każda eksportowane deklaracja jest przesyłana jako plik xml zarówno na komputer Użytkownika, jak i na serwer Ministerstwa Finansów).
Uwaga
Możliwość ponownego przesłania deklaracji, do której już odebrano UPO dostępne jest tylko z formularza konkretnej deklaracji. Wysyłka e‑Deklaracji jest wykonywana tylko dla tych deklaracji, które są zablokowane. Nie można wyeksportować deklaracji ze statusem „Wysłano/Nie odebrano UPO”. W przypadku deklaracji PIT, CIT oraz VAT posiadających status „Wysłano/obebrano UPO” - przed powtórną ich wysyłką Użytkownik otrzyma komunikat “Deklaracja została już wysłana i zostało odebrane Urzędowe Poświadczenie Odbioru. Ponowna wysyłka spowoduje rozbieżność między nr referencyjnym na deklaracji a wydrukiem UPO. Czy chcesz kontynuować?” z możliwością wyboru: TAK/NIE.
Deklaracja VIU-DO Z poziomu Rejestry VAT/ Inne/ Deklaracje VIU-DO otwiera się okno Lista deklaracji VIU-DO. Dodanie deklaracji jest możliwe za pomocą plusa. Następnie pojawia się okno z wyborem odpowiedniego okresu, za który sporządzana jest deklaracja. Naciśnięcie w przycisk „Utwórz deklarację” powoduje wygenerowanie deklaracji VIU-DO. Deklaracje VIU-DO można edytować. Prawidłowym urzędem skarbowym dla deklaracji VIU-DO jest Drugi Urząd Warszawa-Śródmieście, powinien być uzupełniony w Konfiguracja/Firma/Dane firmy/Deklaracje. Po naciśnięciu przycisku „Zapisz”, deklaracja za dany okres pojawia się na Liście deklaracji VIU-DO.

Rys 2. Lista deklaracji VIU-DO – status obliczona

Po zaznaczeniu odpowiedniego wiersza z obliczoną deklaracją VIU-DO istnieje możliwość jej wysyłki deklaracji do systemu e-Deklaracje. Naciśnięcie ikony Wyślij deklarację do systemu e-Deklaracje, rozpoczyna eksport. deklaracji. Wysyłka możliwa jest tylko przy użyciu podpisu kwalifikowanego.  

3 Odbieranie UPO

Po wysłaniu deklaracji należy odebrać UPO (Urzędowe Poświadczenie Odbioru). UPO powinno być dostępne do odbioru do 24 godzin od wysłania. W celu odebrania UPO dla deklaracji CIT-8, VAT-7, VAT-7K, VAT-27, VAT-9M, VAT-8, VAT-UE, PIT-36, PIT-36L, PIT-37, PIT-28, PIT-8C, IFT-1R, PIT-4R, PIT-8AR, należy otworzyć formularz deklaracji za pomocą ikony Pobierz UPO  i zainicjować pobranie UPO. Poprawne pobranie UPO zakończy się komunikatem:

Rys 2. Log z przebiegu operacji – pobieranie UPO

Urzędowe Poświadczenie Odbioru można wydrukować z poziomu formularza deklaracji. Dla deklaracji VIU-DO, PIT-11, IFT1-R i PIT-8C odebranie UPO jest możliwe z listy deklaracji. Po zaznaczeniu/podświetleniu wybranej deklaracji o statusie zamknięta, mającej w kolumnie e-Deklaracje „Wysłano/nie odebrano UPO” należy za pomocą ikony Pobierz UPO zainicjować pobranie Urzędowego Poświadczenia Odbioru.

Rys 4. Lista deklaracji VIU-DO odebranie UPO

4 Korekta deklaracji

W przypadku konieczności złożenia korekty deklaracji należy dodać nowy formularz deklaracji i zaznaczyć na nim cel złożenia – korekta, bądź dla wskazanego okresu uruchomić ikonę Korekta deklaracji .  Kolejnym krokiem jest jej przeliczenie (przycisk Przelicz ) wraz z możliwością wypełnienia zakładki ORD-ZU. Stanowi ona załącznik z uzasadnieniem przyczyny korekty. Na korektach deklaracji składanych od 01.01.2016 wyłączono konieczność uzupełniania załącznika ORD-ZU. Podczas wykonywania korekt wybranych deklaracji, zakładka ORD-ZU jest widoczna, ale jej uzupełnienie nie jest już konieczne do zatwierdzenia deklaracji i wysłania jej drogą elektroniczną. Mechanizm wysyłki i odbierania UPO jest identyczny jak przy składaniu deklaracji pierwotnej. Z poziomu formularza deklaracji można wydrukować samą deklarację, jak również formularz UPO czy pozostałe załączniki, tj. ORD-ZU, VAT-ZZ czy VAT-ZT.
Uwaga
Korektę deklaracji można naliczyć i zapisać w sytuacji, gdy deklaracja korygowana zostanie wcześniej zablokowana przed zmianami (na liście nie może ona widnieć w kolorze zielonym).
Uwaga
Zanim zostanie wysłana korekta danej deklaracji należy wcześniej odebrać UPO do deklaracji pierwotnej (czyli upewnić się, że pierwotna deklaracja została złożona poprawnie).
Uwaga
Korekty wybranych deklaracji, tj. VAT-UE czy PIT-37 można wyliczyć wyłącznie za pomocą ikony Korekta deklaracji .
Uwaga
Uwaga: Deklaracja VIU-DO nie posiada korekty. Jeśli po wysłaniu deklaracji występuje potrzeba zmian wartości na niej uwzględnionych należy to zrobić na deklaracji za kolejny kwartał w części dotyczącej korekt.

5 Comarch ERP Optima Biuro Rachunkowe ‑ eksport e-Deklaracji oraz import UPO

W  module Comarch ERP Optima Biuro Rachunkowe istnieje możliwość eksportu e-Deklaracji oraz importu  Urzędowego Poświadczenia Odbioru (UPO). Funkcja ta usprawnia pracę doradców podatkowych oraz biur rachunkowych poprzez umożliwienie seryjnego wykonywania wspomnianych wcześniej operacji dla wybranych baz firmowych. Obecnie można dokonać eksportu następujących deklaracji: VAT-7, VAT-7K, VAT-UE, VAT-9M, VAT-8,VAT‑27, PIT-36, PIT-36L, PIT-28, CIT-8, PIT-4R, PIT-8AR, PIT-11. Funkcja widoczna jest na liście operacji seryjnych w menu pod nazwą e-Deklaracje / Wyślij JPK i składa się z dwóch pozycji: Wyślij deklaracje, Odbierz UPO. W gałęzi tej dostępne są również opcje związane z seryjną wysyłką plików JPK_VAT/ JPK_V7: Wyślij JPK_VAT oraz Odbierz UPO dla JPK_VAT, więcej informacji opisane zostało w biuletynie OPT088 – Pliki JPK_V7 – przygotowanie dokumentów i generacja plików.

Rys 3. Widok funkcji w dostępnym menu e-Deklaracje / JPK

Po wyborze funkcji Wyślij deklaracje pojawi się okno dialogowe zawierające rozwijalną listę, za pomocą której Użytkownik ma możliwość dokonania szybkiego wyboru rodzaju deklaracji, którą chce wysłać.

Rys 4. Okno dialogowe z rozwijalną listą deklaracji, podczas wywoływania funkcji „Wyślij deklaracje”

Po wybraniu rodzaju deklaracji pojawi się okno z wyborem certyfikatu i podaniem PIN’u. W zależności od ustawień komponentu do obsługi podpisu elektronicznego program poprosi o podanie PIN’u tylko raz i podpisze wszystkie deklaracje lub będzie prosił o podanie PIN’u dla  każdej deklaracji osobno. Komponent UNIZETO domyślnie wymaga wybrania certyfikatu i podpisania PIN’u tylko jeden raz w danej sesji. Komponent KiR’u i Sigillum wymaga ustawienia opcji „Trwały PIN” i podania np. na jaki czas ma być zapamiętany PIN. Po podpisaniu deklaracji  następuje jej wysłanie do systemu e-Deklaracje. Jeżeli Użytkownik dokonał eksportu wybranych deklaracji np. VAT-8 lub VAT-UE, wówczas w bazie danych klienta wyświetlana jest informacja o wysyłce elektronicznej, która znajduje się w atrybucie „Deklaracja VAT-8” lub „Deklaracja VAT-UE”, w  zależności od tego jaki rodzaj deklaracji został wysłany.
Uwaga
Należy pamiętać, aby wysyłane deklaracje zostały wcześniej zatwierdzone. W przeciwnym razie program nie pozwoli na ich wyeksportowanie i pojawi się odpowiedni komunikat: „W bazie [nazwa bazy] deklaracja nie została zatwierdzona. Deklaracja [formularz] nie została wysłana.” W takiej sytuacji należy zatwierdzić daną deklarację i ponownie wysłać.
Podczas seryjnej wysyłki e-Deklaracji z poziomu Biura Rachunkowego w przypadku wystąpienia nieprawidłowości wynik walidacji zwróci dla każdej z deklaracji informację o pierwszym znalezionym błędzie. Mechanizm ten różni się od tego, który istnieje z poziomu programu Comarch ERP Optima, gdzie w treści walidacji otrzymujemy pełną listę napotkanych niezgodności. Po wysłaniu deklaracji i odebraniu UPO zablokowana jest możliwość ponownej wysyłki deklaracji z poziomu Biura Rachunkowego. Chcąc dokonać importu Urzędowego Poświadczenia Odbioru należy wybrać z menu funkcję Odbierz UPO. Następnie, podobnie jak przy eksporcie deklaracji, pojawi się okno dialogowe z rozwijalnym menu pozwalające na  wybór rodzaju deklaracji dla której Użytkownik chce dokonać importu. Po wybraniu rodzaju  deklaracji rozpocznie się proces pobierania UPO. Analogicznie jak przy eksporcie deklaracji  VAT-8 oraz VAT-UE, po zakończeniu operacji importu UPO pojawia się informacja o odbiorze UPO w atrybucie „Deklaracja VAT-8” lub „Deklaracja VAT-UE”.

Rys 5. Okno dialogowe z rozwijalną listą deklaracji, podczas wywoływania funkcji „Odbierz UPO”

Przy eksporcie e-Deklaracji oraz imporcie UPO w Panelu Wyników będą wyświetlane odpowiednie komunikaty informujące o przebiegu danych operacji.
Uwaga
Aby funkcja eksportu deklaracji oraz importu UPO w module Comarch ERP Optima Biuro Rachunkowe mogła poprawnie działać, należy pamiętać o ustawieniu odpowiednich parametrów w konfiguracji programu Comarch ERP Optima (pkt 1).
W przypadku wysłanych deklaracji, dla których pobrano Urzędowe Poświadczenie Odbioru program umożliwia seryjny wydruk UPO.

Rys 6. Widok funkcji w dostępnym menu Wydruki

6 Najczęstsze komunikaty przy wysyłaniu e-Deklaracji

Komunikat przy wysyłaniuPrzyczyna
Błąd wysyłania e-Deklaracji: nie został nadany numer referencyjny (Połączenie podstawowe zostało zakończone: Nie można ustanowić relacji zaufania dla bezpiecznego kanału SSL/TLS.|).Brak certyfikatu Ministerstwa Finansów “ROOT MINFIN SERVERS CA” – należy go dodać do „Zaufane główne urzędy certyfikacji” – z poziomu Windows Internet Explorer / Narzędzia / Opcje internetowe / zakładka Zawartość / Certyfikaty.
Błąd wysyłania e-Deklaracji: nie został nadany numer referencyjny (Nie można rozpoznać nazwy zdalnej: 'bramka.edeklaracje.gov.pl').Błędny adres usługi serwisu e-Deklaracji wpisany z poziomu: Start/Konfiguracja / Program / Ogólne / e-Deklaracje - prawidłowa ścieżka to:
https://bramka.e-deklaracje.mf.gov.pl/
PIT-11
Komunikat przy wysyłaniuPrzyczyna
Deklaracja nie została wyeksportowana z powodu błędów. Nieznany błąd czasu wykonywania. wiersz = 130, kolumna = 4 (wiersz jest przesunięciem od początku bloku skryptu). Zwrócono błąd z wywołania właściwości lub metody. [-2147352567]”Typ wypłaty będący potrąceniem w Konfiguracji / Firma / Płace / Typy wypłat ma uzupełnioną ‘Pozycję na deklaracji PIT’ – PIT-11 1a. Wynagrodzenia ze stosunku… - wówczas pojawia się na deklaracji z MINUSEM w pozycji ‘Dochód zwolniony od podatku’. Należy zmienić tą pozycję na ‘Nie dotyczy’ i przeliczyć deklarację PIT-11.

7 Najczęstsze komunikaty błędów podczas walidacji i/lub przy odbiorze UPO

Komunikat podczasPrzyczyna
Walidacji Comarch ERP OptimaOdbioru UPO z systemu e-Deklaracje
Niepoprawna wartość '0001' w polu KodUrzedu (TKodUS: dopuszczalne wartości [0202, 0203, 0204, 0205, 0206, 0207, 0208, 0209, 0210, 0211, 0212, 0213, 0214, 0215, 0216, 0217, 0218, 0219, 0220, 0221, 0222, 0223, 0224, 0225, 0226, 0227, 0228, 0229, 0230, 0231, 0232, 0233, 0234, 0271, 0402, 0403, 0404, 0405, 0406, 0407, 0408, 0409, 0410, 0411, 0412, 0413, 0414, 0415, 0416, 0417, 0418, 0419, 0420, (…)])Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-enumeration-valid: Value '0001' is not facet-valid with respect to enumeration '[0202, 0203, 0204, 0205, 0206, 0207, 0208, 0209, 0210, 0211, 0212, 0213, 0214, 0215, 0216, 0217, 0218, 0219, 0220, 0221, 0222, 0223, 0224, 0225, 0226, 0227, 0228, 0229, 0230, 0231, 0232, 0233, 0234, 0271, 0402, (…)]'. It must be a value from the enumeration.]Błędny kod urzędu skarbowego przypisanego do deklaracji w Konfiguracji Firmy/ Dane Firmy/ Deklaracje.

Należy poprawić Kod na karcie urzędu (Ogólne/ Inne/ Urzędy), następnie ponownie przeliczyć, zablokować i wysłać deklarację.
Nieprawidłowa wiadomość UPO. The filename, directory name, or volume label syntax in correct.
Nieprawidłowa wiadomość UPO. Nazwa pliku, nazwa katalogu lub składnia etykiety woluminu jest niepoprawna.
Próba pobrania UPO nieaktualną wersją programu Comarch ERP Optima np. 17.3
Zamknięcie programu Comarch ERP Optima - Runtime errorW przypadku seryjnego pobierania UPO, gdy brak sieci lub serwer Ministerstwa Finansów jest niedostępny.
Błąd wysyłania e-Deklaracji: nie został nadany numer referencyjny (Połączenie podstawowe zostało zakończone: Nie można ustanowić relacji zaufania dla bezpiecznego kanału SSL/TLS.|).Brak aktualnego pełnomocnictwa/upoważnienia do podpisywania deklaracjiJeżeli wygasł certyfikat – należy sprawdzić UPL-1 (upoważnienie do składania deklaracji) jaka jest na nim data obowiązywania.
Nie udało się zwalidować e-deklaracji z powodu błędów. Brak schematu dokumentu elektronicznego na stronach e-PUAP. Poprawność deklaracji zostanie sprawdzona podczas odbioru UPO. [-2146232832]Błąd odbierania UPO. Informacje dodatkowe: Błąd komunikacji z serwerem e-Deklaracji:
Connector:Connection time out. HRESULT=0x800A1527 - Connector:Unspecified HTTP error. HRESULT=0x800A1518 lub
Błąd wysyłania e-Deklaracji: nie został nadany numer referencyjny (Żądanie nie powiodło się. Odpowiedź jest pusta.|)
Problem z serwerem e-Deklaracji występujący np. w okresie wzmożonej wysyłki deklaracji. Utrudnienia w dostępie do usługi systemu e-Deklaracje niezależne i niezwiązane z programem Comarch ERP Optima. Komunikaty świadczyć mogą o przejściowych problemach z dostępem do serwera e-Deklaracji. Należy w takim wypadku wstrzymać się z wysyłką deklaracji i ponowić próbę za jakiś czas. Jeżeli Użytkownik zdecyduje się na wysyłkę, powinien od razu spróbować pobrać UPO, aby mieć pewność poprawności wysłanej deklaracji.
Deklaracja VAT-7, VAT-8, VAT-9M, VAT-27:
Komunikat podczasPrzyczyna
Walidacji Comarch ERP OptimaOdbioru UPO z systemu e-Deklaracje
Nieuzupełnione pole PelnaNazwaWeryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type
'#AnonType_PelnaNazwa TIdentyfikatorOsobyNiefizycznej'.]
Niewypełnione pole Nazwa pełna w Konfiguracji/ Firma/ Dane Firmy/ VAT, AKC-WW, CUK.
Nieuzupełnione pole ImiePierwsze (Imię: minimalna długość 1 znaków, maksymalna długość 30 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TImie'.]Niewypełnione pole Imię, jeżeli podatnik jest osobą fizyczną, w Konfiguracji/ Firma/ Dane Firmy/ VAT, AKC-WW, CUK.
Nieuzupełnione pole Nazwisko (Nazwisko: minimalna długość 1 znaków, maksymalna długość 81 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TNazwisko'.]Niewypełnione pole Miasto i/lub Poczta w Konfiguracji/ Firma/ Dane Firmy/ VAT, AKC-WW, CUK.
Nieuzupełnione pole DataUrodzenia (Data: wartość musi być większa lub równa: 1900-01-01)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-datatype-valid.1.2.1: '' is not a valid value for 'date'.]Niewypełnione pole Data urodzenia, jeżeli podatnik jest osobą fizyczną, w Konfiguracji/ Firma/ Dane Firmy/ VAT, AKC- WW, CUK.
Niepoprawna wartość '20' w polu 49 (Wartość: wartość musi być mniejsza lub równa: 0, ilość cyfr: 14)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-maxInclusive-valid: Value '20' is not facet-valid with respect to maxInclusive '0' for type '#AnonType_P_49PozycjeSzczegolowe'.]Błędna wartość w polu 49 deklaracji VAT-7 składanej od sierpnia/3 kwartału 2016. Pole 49 od wersji 17 formularza musi być wypełnione wartością ujemną.
Niepoprawna wartość '-20' w polu 50 (Wartość: wartość musi być większa lub równa: 0, ilość cyfr: 14)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minInclusive-valid: Value '-20' is not facet-valid with respect to minInclusive '0' for type 'TKwotaCNieujemna'.]Błędna wartość w polu 50 deklaracji VAT-7 składanej od sierpnia/3 kwartału 2016. Pole 50 od wersji 17 formularza musi być wypełnione wartością nieujemną.
Niepoprawna wartość '12345678' w polu NIP (NIP)
Nieuzupełnione pole P_BC w załączniku Wniosek_VAT-ZD (NIP)
Niepoprawna wartość ‘wartość’ w polu P_BC w załączniku Wniosek_VAT-ZD (NIP)
Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-pattern-valid: Value '12345678' is not facet-valid with respect to pattern '[1-9]((\d[1-9])|([1-9]\d))\d{7}' for type 'TNrNIP'Błędnie wpisany NIP w Konfiguracji/ Firma/ Dane Firmy/ VAT, AKC-WW , CUK (w komunikacie zamiast '12345678' jest podawany błędnie wpisany NIP)
i/lub wraz z deklaracją wysyłany jest załącznik VAT-ZD (dla sprzedaży), ale dokumenty w rejestrze VAT, które są uwzględniane na VAT-ZD mają błędny NIP (w komunikacie zamiast '12345678' jest podawany błędnie wpisany NIP).
Należy poprawić NIP na dokumencie w rejestrze VAT, następnie odblokować deklarację VAT-7, usunąć z rejestru VAT zapis korekcyjny wygenerowany do załącznika
VAT-ZD, odblokować i ponownie przeliczyć VAT-ZD. Następnie ponownie zablokować VAT-ZD i wygenerować zapis korekcyjny oraz przeliczyć i ponownie wysłać deklarację.
Deklaracja VAT-UE:
Komunikat podczasPrzyczyna
Walidacji Comarch ERP OptimaOdbioru UPO z systemu e-Deklaracje
Niepoprawna wartość '123.456.7890' w polu P_Db (NIP UE)
Niepoprawna wartość 'PL' w polu P_Da/P_Na (TKodKrajuUE: dopuszczalne wartości [AT, BE, BG, CY, CZ, DK, DE, EE, EL, ES, FI, FR, GB, HR, HU, IE, IT, LV, LT, LU, MT, NL, PT, RO, SE, SI, SK, XI])
Niepoprawna wartość 'PL' w polu P_Ua (TKodKrajuUEUslugi: dopuszczalne wartości [AT, BE, BG, CY, CZ, DK, DE, EE, EL, ES, FI, FR, GB, HR, HU, IE, IT, LV, LT, LU, MT, NL, PT, RO, SE, SI, SK])
Nieuzupełnione pole P_Db/P_Nb/P_Ub (NIP UE)
Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-pattern-valid: Value '123.456.7890' is not facet- valid with respect to pattern '(\d|[A-Z]|\+|\*){1,12}' for type'TNrVatUE'.]
Status deklaracji: Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-enumeration-valid: Value 'PL' is not facet-valid with respect to enumeration '[AT, BE, BG, CY, CZ, DK, DE, EE, EL, ES, FI, FR, GB, HR, HU, IE, IT, LV, LT, LU, MT, NL, PT, RO, SE, SI, SK, XI]'. It must be a value from the enumeration.]
Błędny NIP na dokumencie w rejestrze VAT (w komunikacie zamiast '123.456.7890' jest podawany błędnie wpisany NIP).
Błędny Kod Kraju UE na dokumencie w rejestrze VAT (w komunikacie zamiast 'PL' jest podawany błędny prefiks NIP).
Nieuzupełnione (puste) pole NIP.
Należy poprawić NIP na dokumencie, następnie odblokować, przeliczyć i ponownie wysłać deklarację.
Deklaracja PIT-36, PIT-36L, PIT-37, PIT-28, PIT-11, PIT-8C, IFT:
Komunikat podczas
Walidacji Comarch ERP OptimaOdbioru UPO z systemu e-DeklaracjePrzyczyna
Nieuzupełnione pole P_C11 w załączniku PIT_B
Nieuzupełnione pole element P_C7/P_C8 w załączniku PIT-28_B
Nieuzupełnione pole P_189_1/33
Nieuzupełnione pole 35/49 w załączniku PIT_O
Nieuzupełnione pole 17 w załączniku PIT_D
Nieuzupełnione pole P_B9 w załączniku PIT_MIT
Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TZnakowy'.Na PIT/B niewypełniona pozycja Nazwa spółki.
Na PIT28/B niewypełniona pozycja Nazwa spółki i/lub identyfikator NIP.
Jeśli jest wpisana kwota Straty z lat ubiegłych należy uzupełnić również Źródła strat.
i/lub na PIT/O wpisana jest kwota Innych ulg, a nie jest uzupełniony Rodzaj ulgi
i/lub na PIT/D wpisana jest kwota odliczenia, a nie jest uzupełniony Rodzaj wydatków mieszkaniowych i/lub Nazwa środka trwałego na PIT/MIT
Nieuzupełnione pole Wojewodztwo/Powiat/Gmina (Nazwa województwa, nazwa powiatu lub nazwa gminy: minimalna długość 1 znaków, maksymalna długość 36 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respekt to minLength '1' for type 'TJednAdmin'.Niewypełnione pola Województwo i/lub Powiat i/lub Gmina na karcie właściciela/wspólnika/pracownika i/lub niewypełnione województwo/powiat/gmina w danych małżonka (w przypadku rozliczania PIT-36 lub PIT-37 wspólnie z małżonkiem).
Deklaracja nie została wyeksportowana z powodu błędów. Na karcie właściciela nie wpisano daty urodzenia. [-2147467259] lub
Nieuzupełnione pole DataUrodzenia (Data: wartość musi być większa lub równa: 1900-01-01, wartość musi być mniejsza lub równa: 2030-12-31)
Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minInclusive-valid: Value '1899-12-30' is not facet- valid with respect to minInclusive '1900-01-01' for type 'TData'Niewypełnione pole Data urodzenia na formularzu właściciela/wspólnika/pracownika i/lub data urodzenia małżonka (w przypadku rozliczania PIT-36 lub PIT-37 wspólnie z małżonkiem).
Nieuzupełnione pole NrDomu (Nr budynku: minimalna długość 1 znaków, maksymalna długość 9 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respekt to minLength '1' for type 'TNrBudynku'.Niewypełnione pole Nr domu na formularzu właściciela/wspólnika/pracownika i/lub w danych małżonka (w przypadku rozliczania PIT-36 lub PIT-37 wspólnie z małżonkiem).
Nieuzupełnione pole Miejscowosc/MiejsceUrodzenia (Miejscowość: minimalna długość 1 znaków, maksymalna długość 56 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respekt to minLength '1' for type 'TMiejscowosc'.Niewypełnione pole Miejscowość na formularzu właściciela/wspólnika/pracownika i/lub w danych małżonka (w przypadku rozliczania PIT-36 lub PIT-37 wspólnie z małżonkiem) i/lub na PIT/O, w części D (informacja o przekazanych darowiznach i obdarowanych) niewypełniona Miejscowość przy uzupełnionych innych polach i/lub niewypełniona Miejscowość/Poczta w danych firmy w Konfiguracji/ Firma/ Dane firmy/ PIT-4R,CIT-8, ZUS DRA.
W przypadku deklaracji IFT niewypełnione pole Miejsce urodzenia na formularzu pracownika.
Nieuzupełnione pole KodPocztowy (Kod pocztowy: minimalna długość 1 znaków, maksymalna długość 8 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TKodPocztowy'.Niewypełnione pole Kod pocztowy na formularzu właściciela/wspólnika/pracownika i/lub w danych małżonka (w przypadku rozliczania PIT-36 lub PIT-37 wspólnie z małżonkiem)
Nieuzupełnione pole Nazwisko lub
Nieuzupełnione pole Nazwisko w załączniku PIT_O/PIT_D (Nazwisko: minimalna długość 1 znaków, maksymalna długość 81 znaków)
Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respekt to minLength '1' for type 'TNazwisko'.Niewypełnione pole Nazwisko małżonka na deklaracji rocznej i/lub załączniku PIT/O/PIT/D (w przypadku rozliczania PIT-36 lub PIT-37 wspólnie z małżonkiem).
Nieuzupełnione pole ImiePierwsze (Imię: minimalna długość 1 znaków, maksymalna długość 30 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TImie'.Niewypełnione pole Pierwsze Imię małżonka (w przypadku rozliczania PIT-36 lub PIT-37 wspólnie z małżonkiem)
Zaznaczono w Konfiguracji/ Firma/ Dane firmy/ PIT-4R, CIT-8, ZUS DRA że podatnik jest osobą fizyczną ale nie zostały uzupełnione dane właściciela.
Nieuzupełnione pole P_D3 w załączniku PIT_O lub
Nieuzupełnione pole P_F64A w załączniku PIT_BR lub
Nieuzupełnione pole KodKraju/KodKrajuWydania (Kod kraju: dopuszczalne wartości [AF, AX, AL, DZ, AD, AO, AI, AQ, AG, AN, SA, AR, AM, AW, AU, AT, AZ, BS, BH, BD, BB, BE, BZ, BJ, BM, BT, BY, BO, BA, BW, BR, BN, IO, BG, BF, BI, XC, CL, CN, HR, CY, TD, ME, DK, DM, DO, DJ, EG, EC, ER, EE, ET
Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-enumeration-valid: Value '' is not facet-valid with respect to enumeration '[AF, AX, AL, DZ, AD, AO, AI, AQ, AG, AN, SA, AR, AM, AW, AU, AT, AZ, BS, BH, BD, BB, BE, BZ, BJ, BM, BT, BY, BO, BA, BW, BR, BN, IO, BG, BF, BI, XC, CL, CN, HR, CY, TD, ME, DK, DM, DO, DJ, EG, EC, ER, EE, ET, FK, (…)]'. It must be a value from the enumeration.]Niewypełnione pole Kod kraju na załączniku PIT/O, w części dot. informacji o przekazanych darowiznach i obdarowanych.
Niewypełnione pole Kod kraju na załączniku PIT/BR, w części dot. danych jednostki naukowej.
Niewypełnione pole Kod kraju na formularzu pracownika i/lub formularzu deklaracji.
Nieuzupełnione pole NrLokalu (Nr lokalu: minimalna długość 1 znaków, maksymalna długość 10 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TNrLokalu'.]W pliku xml jest pusta sekcja z numerem lokalu. Taki efekt powstaje po imporcie danych kadrowych z arkusza MS Excel, jeżeli w arkuszu w kolumnie ‘Nr Lokalu’ została wpisana spacja. Normalnie w przypadku nie wypełnionego pola z numerem lokalu na formularzu danych kadrowych ta sekcja się w ogóle nie generuje. W takiej sytuacji należy edytować formularz danych kadrowych pracownika/właściciela/wspólnika, wpisać w pole numer lokalu np. 1, zapisać zmianę/formularz, ponownie go edytować, usunąć całą zawartość pola z numerem lokalu i zapisać. Po tak wykonanych czynnościach plik z deklaracją jest wysyłany poprawnie.
Niepoprawna wartość '0' w polu RodzajNrId (TRodzajId: dopuszczalne wartości [1, 2, 3, 4, 8, 9])Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-enumeration-valid: Value '0' is not facet-valid with respect to enumeration '[1, 2, 3, 4, 8, 9]'. It must be a value from the enumeration.]Niewypełnione pole Rodzaj numeru identyfikacyjnego na formularzu pracownika na zakładce 2. Nr ident./podatki.
Nieuzupełnione pole NrId (Numer dokumentu stwierdzającego tożsamość: minimalna długość 1 znaków, maksymalna długość 50 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TNrDokumentu StwierdzajacegoTozsamosc'.Niewypełnione pole Zagraniczny numer identyfikacyjny podatnika na formularzu pracownika na zakładce 2. Nr ident./podatki.
Niepoprawna wartość '123456789' w polu 472/163/132/175 (KRS)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-pattern-valid: Value '123456789' is not facet-valid with respect to pattern '\d{10}' for type 'TNrKRS'.]Błędny numer KRS, wpisany w sekcji „Wniosek o przekazanie 1% podatku” (w komunikacie zamiast '123456789' jest podawany błędnie wpisany numer KRS odpowiednio na deklaracji PIT-36/PIT-36L/PIT-37/PIT-28)
Niepoprawna wartość '0' w polu 23 w załączniku PIT_IP (Rok: wartość musi być większa lub równa: 2015, wartość musi być mniejsza lub równa: 2030)Status deklaracji: Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-datatype-valid.1.2.1: '0' is not a valid value for 'gYear'.]Należy uzupełnić rok w polu 23 w którym podatnik korzystał ze zwolnienia dochód wykazanych w polu 24 w załączniki PIT/IP
Niepoprawna wartość '0' w polu P_B10 w załączniku PIT_MIT (Wartość: wartość musi być większa lub równa: 0, wartość musi być większa niż: 0, ilość cyfr: 16, ilość cyfr po przecinku: 2)Status deklaracji: Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minExclusive-valid: Value '0' is not facet-valid with respect to minExclusive '0.0' for type '#AnonType_P_B10P_BPozycjeSzczegoloweZalacznik_PIT_MIT'.]Niewypełnione pole dotyczące liczby środków trwałych na PIT/MIT
Deklaracja CIT-8:
Komunikat podczasPrzyczyna
Walidacji Comarch ERP OptimaOdbioru UPO z systemu e-Deklaracje
Nieuzupełnione pole PelnaNazwaWeryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type
'#AnonType_PelnaNazwa TIdentyfikator OsobyNiefizycznej'.]
Niewypełnione pole Nazwa pełna w Konfiguracji/ Firma/ Dane Firmy/ PIT-4R, CIT-8, ZUS DRA
Niepoprawna wartość '12345' w polu NIP (NIP)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-pattern-valid: Value '12345' is not facet-valid with respect to pattern '[1-9]((\d[1-9])|([1-9]\d))\d{7}' for type 'TNrNIP'Błędny numer NIP wpisany w Konfiguracji/ Firma/ Dane Firmy/ Pieczątka Firmy (w komunikacie zamiast '12345' jest podawany błędnie wpisany NIP).
Nieuzupełnione pole Wojewodztwo/Powiat/Gmina lub Nieuzupełnione pole P_A/P_B/P_C w załączniku CIT-ST (Nazwa województwa, nazwa powiatu lub nazwa gminy: minimalna długość 1 znaków, maksymalna długość 36 znaków) Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TJednAdmin'.Niewypełnione pola Województwo i/lub Powiat i/lub Gmina w Konfiguracji/ Firma/ Dane Firmy/ PIT-4R, CIT-8, ZUS DRA i/lub niewypełnione pola Województwo i/lub Powiat i/lub Gmina w części dot. zakładów/ oddziałów na załączniku CIT/ST.
Nieuzupełnione pole NrDomu (Nr budynku: minimalna długość 1 znaków, maksymalna długość 9 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TNrBudynku'.Niewypełnione pole Nr domu w Konfiguracji/ Firma/ Dane Firmy/ PIT-4R, CIT-8, ZUS DRA.
Nieuzupełnione pole Miejscowosc lub Nieuzupełnione pole 33 w załączniku CIT-D lub Nieuzupełnione pole 13 w załączniku CIT-ST_A - załącznik do załącznika CIT-ST (Miejscowość: minimalna długość 1 znaków, maksymalna długość 56 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TMiejscowosc'.Niewypełnione pole Miejscowość w Konfiguracji/ Firma/ Dane Firmy/ PIT-4R, CIT-8, ZUS DRA i/lub
niewypełnione pole Miejscowość w danych darczyńcy/ informacji o obdarowanym na CIT-D i/lub w danych Zakładu (oddziału) na CIT-ST/A.
Nieuzupełnione pole KodPocztowy (Kod pocztowy: minimalna długość 1 znaków, maksymalna długość 8 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TKodPocztowy'.Niewypełnione pole Kod pocztowy w Konfiguracji/ Firma/ Dane Firmy/ PIT-4R, CIT-8, ZUS DRA.
Nieuzupełnione pole 71/151/167/172/173 w załączniku CIT-8_O lub
Nieuzupełnione pole 25/75 w załączniku CIT-D lub
Nieuzupełnione pole P_E1 w załączniku CIT-ST lub
Nieuzupełnione pole P_1 w załączniku CIT-ST_A - załącznik do załącznika CIT-ST
Nieuzupełnione pole P_B8 w załączniku CIT_MIT
Nieuzupełnione pole P_G41 w załączniku CIT_IP
Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TZnakowy'.]Na CIT-8/O wpisana jest Kwota innych dochodów wolnych i/lub Kwota innych odliczeń, a nie jest uzupełnione pole Tytułem i/lub wpisana jest Kwota Zwolnienia, a nie jest uzupełniony Numer decyzji Ministra Finansów i/lub wpisana jest Kwota zaniechania poboru podatku i Data rozporządzenia, a nie jest uzupełniony Tytuł Rozporządzenia i/lub wpisana jest Kwota obniżki z innych tytułów, a nie jest uzupełniony Tytuł obniżki
i/lub na CIT/D w Danych darczyńcy/ Informacji o obdarowanym nie jest uzupełnione pole Nazwa Pełna
i/lub na CIT-ST nie jest uzupełnione pole Nazwa zakładu (oddziału)
i/lub na CIT-ST/A nie jest uzupełniona Nazwa pełna zakładu (oddziału) i/lub Nazwa środka trwałego na CIT/MIT i/lub Numeru wydania zezwolenia lub decyzji o wsparciu na CIT/IP.
Niepoprawna wartość '1899-12-30' w polu 169/170 w załączniku CIT-8_O (Data: wartość musi być większa lub równa: 1900-01-01)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-datatype-valid.1.2.1: '00:00:00' is not a valid value for 'date'.]Na CIT-8/O wpisany jest Numer decyzji Ministra Finansów i Kwota Zwolnienia, a nie jest uzupełniona Data decyzji Ministra Finansów i/lub wpisana jest Kwota zaniechania poboru podatku, a nie jest uzupełniona Data rozporządzenia.
Nieuzupełnione pole P_26A/74/P_76A w załączniku CIT-D lub Nieuzupełnione pole P_F63A w załączniku CIT-BR (Kod kraju: dopuszczalne wartości [AF, AX, AL, DZ, AD, AO, AI, AQ, AG, AN, SA, AR, AM, AW, AU, AT, AZ, BS, BH, BD, BB, BE, BZ, BJ, BM, BT, BY, BO, BA, BW, BR, BN, IO, BG, BF, BI, XC, (…)])Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-enumeration-valid: Value '' is not facet-valid with respect to enumeration '[AF, AX, AL, DZ, AD, AO, AI, AQ, AG, AN, SA, AR, AM, AW, AU, AT, AZ, BS, BH, BD, BB, BE, BZ, BJ, BM, BT, BY, BO, BA, BW, BR, BN, IO, BG, BF, BI, XC, CL, CN, HR, CY, TD, ME, DK, DM, DO, DJ, EG, EC, ER, EE, ET, FK, FJ, PH, FI, FR, TF, GA, GM, GH, GI, GR, GD, GL, GE, GU, GG, GY, GF, GP, GT, (…)]'. It must be a value from the enumeration.]Na CIT-D w części dot. danych darczyńcy i/lub
w Informacji o obdarowanym nie jest wypełnione pole Kod kraju.
Na CIT-BR w części dot. danych jednostki naukowej nie jest wypełnione pole Kod kraju.
Nieuzupełnione pole 74 w załączniku CIT-D (Numer identyfikacji podatkowej: minimalna długość 1 znaków, maksymalna długość 30 znaków)Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'TNrIdentyfikacjiPodatkowej'.]Niewypełnione pole Identyfikator podatkowy w części dot. Informacji o obdarowanym na załączniku CIT-D.
Niepoprawna wartość '1234567' w polu P_D w załączniku CIT-ST (Kod gminy: http://www.stat.gov.pl/broker/access/showSearch.jspa )Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-enumeration-valid: Value '1234567' is not facet-valid with respect to enumeration '[0201011, 0201022, 0201032, 0201043, 0201052, 0201062, 0202011, 0202021, 0202031, 0202041, 0202052, 0202062, 0202073, 0203011, 0203022, 0203032, 0203042, 0203052, 0203062, (…)]'. It must be a value from the enumeration.]Niepoprawny Kod gminy w części dot. zakładów/ oddziałów na załączniku CIT/ST (w komunikacie zamiast '1234567' jest podawany błędnie wpisany Kod).
Nieuzupełnione pole P_G42 w załączniku CIT_IP (Data: wartość musi być większa lub równa: 1900-01-01, wartość musi być mniejsza lub równa: 2030-12-31)
Niepoprawna wartość 'PL999' w polu P_G43 w załączniku CIT_IP (String)
Status deklaracji: Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-pattern-valid: Value '' is not facet-valid with respect to pattern '((\d{4})-(\d{2})-(\d{2}))' for type 'TData'.]
Status deklaracji: Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-pattern-valid: Value 'PL999' is not facet-valid with respect to pattern 'PL[24-9]{1}[1-4]{1}[1-9]{1}|PL[2]{2}[ABC]{1}|PL21A|PLZZZ' for type '#AnonType_P_G43P_GPozycjeSzczegoloweZalacznik_CIT_IP'.]
Niewypełnione pole dotyczące Daty wydania zezwolenia lub decyzji o wsparciu na CIT/IP.
Niepoprawny lub pusta jednostka terytorialna realizacji inwestycji w ‘PL’
Niepoprawna wartość '0' w polu P_B9 w załączniku CIT_MIT (Wartość: wartość musi być większa lub równa: 0, wartość musi być większa niż: 0, ilość cyfr: 16, ilość cyfr po przecinku: 2)Status deklaracji: Weryfikacja negatywna – dokument niezgodny ze schematem xsd [cvc-minExclusive-valid: Value '0' is not facet-valid with respect to minExclusive '0.0' for type '#AnonType_P_B9P_BPozycjeSzczegoloweZalacznik_CIT_MIT'.]Niewypełnione pole dotyczące liczby środków trwałych na CIT/MIT
 
Uwaga
Powyższe komunikaty zwracające numer pola podczas walidacji w programie Comarch ERP Optima odwołują się do najnowszych formularzy deklaracji składanych za rok 2021. W przypadku składania deklaracji bądź ich korekt za inny okres,numeracja pól w treści komunikatów dla poprzednich wzorów może nieznacznie się różnić.

OPT085 Szybki import i eksport przelewów przez bankowość internetową mBank CompanyNet

Data aktualizacji: 04-04-2024

https://www.youtube.com/watch?v=HUp4Ga0LgCc

Informacje ogólne

Dla Użytkowników Comarch ERP Optima korzystających z systemu mBank CompanyNet wprowadziliśmy możliwość bezpośredniej wymiany danych z bankiem mBank. W celu uruchomienia usługi najlepiej skontaktować się z infolinią mBanku (tel 801 273 273). Automatyczna komunikacja z bankiem umożliwia eksport przelewów bezpośrednio z/do systemu bankowego, autoryzację wysłanych przelewów oraz import wyciągów bez konieczności ręcznego przenoszenia plików pomiędzy aplikacją bankową oraz Comarch ERP Optima. Możliwe jest również pobieranie dla każdego wysłanego przelewu jego aktualnego statusu w banku (przelew może oczekiwać na realizację, być częściowo lub całkowicie autoryzowany, zostać zrealizowany, odrzucony, anulowany itp.). Automatyczna wymiana danych pomiędzy bankiem a klientem odbywa się przez wymianę komunikatów w formacie plików XML (standard ISO 20022) przy wykorzystaniu technologii web-services. Całość komunikacji jest zabezpieczona przez bezpieczny kanał HTTPS z wykorzystaniem dwustronnego SSL. Dzięki tym technologiom komunikacja pomiędzy Bankiem a klientem jest szyfrowana i nikt niepowołany nie ma dostępu do przesyłanych informacji. Dodatkowo dzięki dwustronnemu SSL Bank otrzymuje możliwość wstępnej weryfikacji klienta, a klient może zweryfikować, czy faktycznie podłączył się do serwera Banku. Do zabezpieczenia wymiany informacji zastosowane zostały: token mobilny lub certyfikat kwalifikowany użytkownika, który weryfikuje Klienta i pozwala zweryfikować jego prawo do danego rachunku (rachunków). Na liście Ogólne/ Inne/ Formaty przelewów dostępny jest format mBank WebService (standardowy) do wymiany danych z bankiem mBank.

Jak skonfigurować wymianę danych z bankiem mBank?

Wymiana danych z bankiem mBank dostępna jest w systemie Comarch ERP Optima od wersji 2019.5.1. W systemie Comarch ERP Optima należy:
  • ustawić format wymiany danych
  • podać informację o numerze identyfikacyjnym firmy (DIK)
  • określić typ logowania: certyfikat lub token mobilny (i jeżeli jest to certyfikat, to podpiąć certyfikat kwalifikowany użytkownika)
  • dla przelewów walutowych wskazać kto ponosi opłaty związane z takimi przelewani
Na formularzu banku na zakładce [Import/Eksport] w polach:
  • Format eksportu dla przelewów zwykłych
  • Format importu wyciągów bankowych
wybieramy właściwy dla banku format obsługujący wymianę za pomocą usługi sieciowej. W naszym przypadku dla banku mBank dostępny jest format mBank Webservice. Wybrany przez nas format będzie się później podpowiadał jako domyślny format podczas eksportu i importu przelewów.
Formularz banku, zakładka [Import/Eksport]
Po wybraniu formatu mBank Webservice na formularzu banku pojawia się dodatkowa zakładka [3 Ustawienia usługi sieciowej]. Na tej zakładce:
  • wprowadzamy ustawienia dotyczące przelewów walutowych
  • w części Sposoby logowania operatorów podajemy login (ID) Użytkownika w banku i typ logowania. Logowanie może odbywać się z wykorzystaniem certyfikatu lub tokena mobilnego. W przypadku tokena mobilnego potwierdzenie operacji wykonywane jest w aplikacji mobilnej zainstalowanej na telefonie.
  • jeżeli logowanie odbywa się za pomocą certyfikatu a nie tokena mobilnego, to w części Certyfikaty komunikacyjne dla operatorów podpinamy certyfikat kwalifikowany użytkownika. Certyfikat ten powinien mieć aktualną datę ważności, posiadać informacje o obsługujących go kluczach prywatnych. Należy upewnić się czy certyfikat znajduje się we właściwym magazynie certyfikatów. Certyfikat kwalifikowany musi być zaimportowany do systemu mBank CompanyNet, w razie problemów z importem należy się kontaktować z infolinią mBanku tel. 801 273 273
Formularz banku, zakładka [Ustawienia usługi sieciowej]
W przypadku przelewów walutowych istotne jest uzupełnienie pól:
  • Opłatę ponosi – mamy tutaj do wyboru trzy opcje: Zleceniodawca, Zleceniobiorca, Po równo.
  • Osoba kontaktowa – nasz przedstawiciel wybrany do kontaktu z bankiem.
  • Kontakt numer telefonu, adres e-mail.
Na formularzu rejestru bankowego związanego z mBankiem należy uzupełnić informację o identyfikatorze firmy (DIK). Jest to unikalny identyfikator klienta banku w mBank CompanyNet. Brak tej informacji lub błędne dane (istotna jest wielkość liter) uniemożliwi wymianę danych z bankiem.
Rejestr bankowy – identyfikator firmy

Eksport płatności

Możliwy jest eksport przelewów krajowych (w tym do Urzędu Skarbowego i ZUS) oraz przelewów walutowych. Przelewy walutowe wysyłane są jako przelewy zagraniczne lub przelewy SEPA. W celu wysłania przelewu SEPA zdarzenie w preliminarzu płatności musi być:
  • zdarzeniem rozchodowym
  • waluta zdarzenia to EURO
  • na zdarzeniu zaznaczono parametr „Przelew SEPA”
Eksport przelewów z wykorzystaniem automatycznej wymiany danych z bankiem, wykonujemy z poziomu preliminarza płatności. W preliminarzu płatności należy:
  • wybrać rejestr, który dotyczy mBank i ma ustalony format wymiany obsługujący automatyczną komunikację z bankiem (w naszym przypadku mBank WebService)
  • na liście powinny wyświetlać się tylko zdarzenia nierozliczone lub rozliczone częściowo.
Po spełnieniu tych warunków w preliminarzu płatności będzie dostępna ikona Eksportuj polecenia przelewu . Wymiana danych z mBankiem pozwala na:
  • wysłanie przelewu, który oczekuje w banku na jego autoryzację (zatwierdzenie)
  • wysłanie podpisanego przelewu, który zostanie w banku przekazany do realizacji
  • autoryzację (zatwierdzenie częściowe/finalne) wysłanych wcześniej przelewów
W mBanku możliwa jest wieloosobowa autoryzacja transakcji. Dzięki tej usłudze istnieje możliwość autoryzacji przelewów przez więcej niż 1 osobę (w banku można ustalać limity do autoryzacji samodzielnej i dwuosobowej oraz nadać uprawnienia do wykonywania zleceń bez ich autoryzacji). W Comarch ERP Optima na zdarzeniu w preliminarzu płatności możemy:
  • podpisać przelew – podpisujemy przelewy o statusie Do realizacji, które nie zostały wysłane do banku. Jeśli wymagają tego ustalenia z bankiem przelew może być podpisany przez kilka osób. Na liście wyświetlamy informacje o tym kto, kiedy i jakim certyfikatem podpisał dany przelew. Podpisanego przelewu nie możemy już modyfikować. Każda zmiana częściowe rozliczenie czy zmiana dat uniemożliwi jego wysłanie. Konieczne będzie usunięcie istniejącego podpisu/podpisów i ponowne podpisanie przelewu. Wysłanie podpisanego przelewu spowoduje, że w banku zostanie on skierowany do weryfikacji a później do realizacji.
Formularz zdarzenia – Podpisy
  • autoryzować przelew – przelewy możemy autoryzować na stronie banku lub bezpośrednio w Comarch ERP Optima. W Comarch ERP Optima autoryzacji może dokonać tylko ten operator, który korzysta z tokena mobilnego. Autoryzacja (zatwierdzanie) dotyczy przelewu, który został wysłany do banku. W systemie mamy zarówno możliwość autoryzacji częściowej, jak i finalnej (pełnej). Przed autoryzacją przelewu zalecamy uruchomienie na telefonie aplikacji bankowej, gdyż pojawi się w niej wiadomość prezentująca szczegóły zatwierdzanej dyspozycji (data przelewu, kwota). Ostateczna akceptacja lub odrzucenie dyspozycji wykonywane są za pomocą przycisku na telefonie. Na formularzu przelewu zapisujemy historię autoryzacji, która została wykonana z poziomu Comarch ERP Optima.
Formularz zdarzenia – Historia autoryzacji
Podpisanie i autoryzacja pojedynczego przelewu możliwe są z poziomu formularza płatności. Operacje te można też wykonać seryjnie dla zaznaczonych zdarzeń. W tym celu będąc w Preliminarzu płatności należy wybrać strzałkę obok przycisku . Pojawi się dodatkowe menu: Podpisz przelewy – podpisujemy zaznaczone zdarzenia o statusie Do realizacji. Eksportuj przelewy – wysyłamy do banku zaznaczone przelewy. Po wybraniu opcji Eksportuj przelewy pojawi się okno Eksportuj przelewy do pliku na którym określamy parametry eksportu. Format wymiany przepisuje się z formularza banku, format wymiany dla MPP nie podlega edycji i jest taki sam jak format wymiany. Data przelewu – jako data przelewu zawsze wstawiana jest data realizacji przelewu. Przelewy zbiorczo wg podmiotów – po zaznaczeniu tej opcji przelewy które nie zostały podpisane zostaną pogrupowane wg podmiotu, numeru rachunku bankowego (wypełnionego na zdarzeniu) oraz waluty i wysyłane jako jeden, zbiorczy przelew. Podpisane przelewy zawsze wysyłane są pojedynczo, nie są grupowane. Po zaznaczeniu opcji Grupuj wg dat utworzonych zostanie tyle zbiorczych przelewów, ile jest różnych dat (terminów płatności/ dat realizacji/ dat dokumentu. Eksportuj wszystkie linie opisu do banku – parametr jest widoczny po zaznaczeniu Przelewy zbiorczo wg podmiotów. Parametr ten spowoduje, że w zbiorczym przelewie będziemy starali się umieścić wszystkie uzupełnione linie opisu do banku odczytane z agregowanych przelewów. Dziel przelewy wg długości opisu – parametr jest widoczny po zaznaczeniu Przelewy zbiorczo wg podmiotów. Spowoduje on, że program utworzy dla danego podmiotu kilka przelewów zbiorczych, przy czym na każdym z nich będzie umieszczony pełny opis do banku z przelewów cząstkowych. Parametr Dziel przelew wg długości opisu może być stosowany razem z pozostałymi parametrami dotyczącymi przelewów zbiorczych. Wysyłaj przelewy w jednym pliku – zaznaczenie tego parametru powoduje, że wysyłając kilka przelewów tworzymy jeden plik xml, w którym zapisujemy wszystkie pojedyncze przelewy. Jeśli parametr nie jest zaznaczony to każdy z tych przelewów zapisywany jest w osobnym pliku. Eksport uruchamiamy ikoną pioruna . Eksportowane są zarówno przelewy w PLN jak również w walucie obcej. Jeżeli w preliminarzu płatności wybierzemy rejestr, który obsługuje automatyczną wymianę danych z bankiem, wśród kolumn na liście dostępne są kolumny:
  • Data wysłania do banku,
  • Komunikat do banku,
  • Data komunikatu do banku.
W kolumnach tych zapisywane są informacje przy eksporcie do banku oraz przy każdorazowym sprawdzeniu stanu przelewów w banku.
Preliminarz płatności – kolumny związane z WebServicem
Autoryzuj przelewy częściowo – operacja dostępna jest dla Użytkownika, który korzysta z tokena mobilnego i dotyczy przelewów wysłanych do banku. W sytuacji, gdy przelewy zostały wysłane w jednym pliku autoryzacja dotyczy wszystkich przelewów wchodzących w skład tego pliku (paczki). W banku przelewy będą miały status zautoryzowane częściowo i będą czekały na ostateczne zatwierdzenie. Autoryzuj przelewy finalnie – operacja dostępna jest dla Użytkownika, który korzysta z tokena mobilnego i wykonywana jest dla przelewów wysłanych do banku. W sytuacji, gdy przelewy zostały wysłane w jednym pliku autoryzacja dotyczy wszystkich przelewów wchodzących w skład tego pliku (paczki). W banku przelewy zostaną skierowane do realizacji. Aktualizuj stany przelewów – sprawdzenia aktualnego statusu przelewów w banku.

Import danych

W Comarch ERP Optima mamy możliwość importu danych z mBanku. Import dotyczy:
  • stanu rachunku bankowego
  • historii operacji (wyciągów)
Import informacji o stanie rachunku bankowego  można wykonać z poziomu:
  • listy rejestrów kasowych/bankowych
  • listy zapisów kasowych/bankowych
  • preliminarza płatności.
Wyciągi importujemy z listy zapisów kasowych/bankowych. Na liście zapisów wybieramy rejestr bankowy związany z rachunkiem w mBanku i wskazujemy raport bankowy.
Lista zapisów kasowych\bankowych – Import przelewów
Import uruchamiamy przyciskiem Importuj polecenia przelewu . Na oknie Import przelewów ustalamy parametry importu, czyli:
  • wybieramy format wymiany (domyślnie podpowie się format importu ustalony na formularzu banku)
  • określamy definicję dla zapisów KP i KW
  • ustalamy okres za jaki będą importowane przelewy (domyślnie jest to okres odczytany z raportu bankowego)
  • możemy zaznaczyć opcję automatycznego rozliczania płatności przy imporcie
Po ustaleniu parametrów przyciskiem  uruchamiamy pobranie danych z banku. W tym momencie na oknie Import danych wyświetli się lista przelewów, które za pomocą  przenosimy do Comarch ERP Optima. Jeżeli wykonany został import wyciągów i potem wykonywany jest ponowny import wtedy importowane są tylko te przelewy, które nie zostały jeszcze zaimportowane. Duplikaty są odrzucane. Duplikaty sprawdzane są wg następujących kryteriów:
  • Data księgowania,
  • Numer rachunku kontrahenta,
  • Kwota,
  • Opis przelewu.

Automatyczna wymiana danych z bankami - najczęściej zadawane pytania

  1. Co należy ustawić w programie Comarch ERP Optima, aby móc skorzystać z automatycznej współpracy z bankiem?
Odpowiedź: Na formularzu banku (Ogólne/ Inne/ Banki) w polach Format eksportu dla przelewów zwykłych oraz Format importu wyciągów bankowych (druga zakładka) należy wskazać format obsługujący automatyczną wymianę danych z bankiem. Następnie na 3 zakładce [Ustawienia usługi sieciowej] Użytkownik wprowadza ustawienia dotyczące przelewów walutowych oraz określa identyfikator użytkownika w mBanku i sposób logowania (token mobilny lub certyfikat). W przypadku wybrania certyfikatu podpina również odpowiedni certyfikat kwalifikowany użytkownika do komunikacji z bankiem. Na formularzu rejestru bankowego mBanku podajemy również numer identyfikacyjny firmy (DIK).       2. Czy można zobaczyć w pliku dane które zostały wyeksportowane/zaimportowane z banku? Odpowiedź: Tak, mamy taką możliwość. W Konfiguracji Stanowiska/ Kasa/Bank/ Parametry możemy zaznaczyć parametry
  • Zapisuj dane wymieniane z bankiem do plików XML – w pliku XML zapisywane będą dane wysyłane/importowane z banku.
  • Zapisuj szczegółowe logi z komunikacji z bankiem – w pliku tekstowym zapisywane będą informacje związane z komunikacją z bankiem. Informacje te mogą być pomocne przy ustalaniu przyczyny nieprawidłowej komunikacji z bankiem.
Pliki zapisywane będą w katalogu z logami programu Comarch ERP Optima, w podkatalogu WebserwisyBankowe (%appdata%\Comarch\Opt!ma\Logs). Domyślnie parametry nie są zaznaczone.

OPT082 - Delegacje krajowe i zagraniczne

Data aktualizacji: 07-12-2020

Informacje ogólne

Pracodawcy delegujący swoich pracowników w podróż służbową mają w stosunku do nich określone obowiązki. Rozliczenie delegacji powinno zawierać pokrycie kosztów pracownika związanych z wyjazdem służbowym takich jak np. diety czy koszty przejazdu i noclegów. Funkcjonalność rozliczania należności za podróże służbowe odbywane przez pracowników dostępna jest w module Kasa/Bank Plus z poziomu listy Delegacje . Użytkownik ma możliwość wprowadzania i rozliczania zarówno podróży służbowych krajowych w walucie systemowej, jak i delegacji zagranicznych. Delegacje mogą być dodawane z poziomu Comarch ERP Optima lub w aplikacji Comarch HRM.
Lista delegacji
Na liście delegacji dostępne są następujące kolumny: Numer dokumentu, Data, Podmiot, Kwota, Status, Rodzaj, Comarch HRM. W kolumnie Rodzaj wyświetlana jest opcja Krajowa lub Zagraniczna. W kolumnach ukrytych (dostępnych po wyborze opcji Wybór kolumn) dostępna jest również kolumna Kategoria (z wyświetlaną kategorią z nagłówka delegacji) i Zakład (widoczna dla firm z ustawioną wielozakładowością). W kolumnie Kwota widoczna jest suma Kwot do wypłaty w PLN z sekcji Podsumowanie rozliczenia z pracownikiem, ze wszystkich etapów delegacji. Listę obsługują standardowe przyciski ,, i . Dodatkowo dostępne są następujące przyciski:  - Rozlicz zaznaczone dokumenty – służący do rozliczenia delegacji; rozliczać można tylko delegacje o stanie Zaakceptowane wydatki  - Usuń rozliczenia z zaznaczonych dokumentów – do usunięcia rozliczeń delegacji  - Księguj - służąca do zaksięgowania delegacji (zarówno w przypadku pełnej księgowości, jak i książki przychodów i rozchodów); księgować można tylko delegacje o stanie Zatwierdzona Szczegółowy opis rozliczania i księgowania delegacji zamieszczony jest w kolejnych rozdziałach biuletynu.
Uwaga
W aplikacji Comarch HRM istnieje możliwość zgłaszania delegacji. Delegacja taka jest odpowiednio oznaczona w kolumnie Comarch HRM. Dodatkowo delegacja zgłoszona w ten sposób po podniesieniu formularza w Comarch ERP Optima będzie automatycznie przeliczana.
W Konfiguracji Programu/ Kasa/Bank/ Diety i ryczałty widoczna jest lista krajów wraz z odpowiadającą im walutą i kwotami diet, ryczałtów noclegowych i limitów na nocleg. Lista jest domyślnie uzupełniona wartościami wynikającymi z załącznika do rozporządzenia Ministra Pracy i Polityki Społecznej z dnia 29 stycznia 2013 roku (Rozporządzenie MPiPS z dnia 29 stycznia 2013 r. w sprawie należności przysługujących pracownikowi zatrudnionemu w państwowej lub samorządowej jednostce sfery budżetowej z tytułu podróży służbowej (Dz. U. 2013, poz. 167)). W Konfiguracji Firmy/ Kasa/Bank/ Diety i ryczałty również wyświetlana jest lista krajów wraz z walutą i kwotami diet i ryczałtów. Lista jest uzupełniona wartościami domyślnymi. Kwoty diet, ryczałtów noclegowych i limitów na nocleg można zmienić wpisując indywidualne wartości. Kwoty są zapamiętywane historycznie. Z listy delegacji dostępny jest wydruk Lista delegacji > Wzór standard. Z formularza delegacji dostępne są wydruki Polecenie wyjazdu > Delegacja – polecenie wyjazdu, Rozliczenie delegacji > Delegacja – Rozliczenie oraz Rozliczenie delegacji > Delegacja – Udokumentowane wydatki. Z poziomu formularza elementu delegacji dostępne są wydruki Rozliczenie > Rozliczenie etapu krajowego delegacji oraz Rozliczenie > Rozliczenie etapu zagranicznego delegacji. W przypadku modyfikowania wartości na etapie, wydruk będzie aktualny dopiero po zapisaniu formularza delegacji.

Delegacje krajowe

Formularz delegacji – zakładka Ogólne

Na formularzu delegacji na zakładce [Ogólne] dostępny jest parametr Delegacja zagraniczna, jeżeli on nie będzie zaznaczony delegacja traktowana jest jako delegacja krajowa.

Formularz delegacji

Jest również możliwość wpisania Miejsca docelowego, Celu delegacji oraz wybór Kategorii. Po wybraniu pracownika, automatycznie podpowiadana jest kategoria z jego karty, z możliwością zmiany. Kategorie można również przypisać na każdym z elementów delegacji, na zakładce [Podsumowanie rozliczenia]. Na formularzu delegacji użytkownik ma do dyspozycji 4 opcje: Bufor, Zaakceptowane polecenie wyjazdu, Zaakceptowane wydatki oraz Zatwierdzona delegacja. Na formularzu delegacji domyślnie zaznaczony jest Bufor, co daje możliwość uzupełniania podstawowych informacji takich jak: nazwisko pracownika, czas trwania delegacji, cel podróży, datę rozliczenia delegacji oraz zaliczki na wydatki (tylko jako zapis na liście bez generowania zapisu KW do raportu kasowego). Rozliczyć można tylko delegacje o stanie Zaakceptowane wydatki. Zatwierdzenie delegacji powoduje zablokowanie jej do edycji. Aktywna jest jedynie sekcja z podsumowaniem kosztów delegacji na etapach zagranicznych, gdzie można zmienić kurs po jakim będą księgowane koszty delegacji. Księgować można wyłącznie delegacje zatwierdzone.
Uwaga
W konfiguracji programu /Użytkowe /Operatorzy znajduje się parametr Akceptowanie poleceń wyjazdu i rozliczenia. Po jego zaznaczeniu operator będzie mógł zaznaczyć na formularzu delegacji opcje: Zaakceptowane polecenie wyjazdu,  Zaakceptowane wydatki Zatwierdzona.
Na formularzu delegacji widoczne są następujące kolumny: Data od, Data do, Kraj, Waluta (pokazująca walutę danego etapu, w przypadku delegacji krajowych jest to zawsze PLN) i Zaliczka. W kolumnach ukrytych jest dostępna również kolumna Status rozliczenia, w której wykazywane są statusy rozliczenia danego etapu delegacji: N – nie rozliczono, C – rozliczono częściowo, R – rozliczono całkowicie.

Element delegacji - Zakładka zaliczki

Na elemencie delegacji, na zakładce [Zaliczki] widoczne są pola Kraj (z domyślną wartością: Polska) i Waluta (z domyślną wartością: PLN). Wartości w tych polach są wyszarzane i niemożliwe do zmiany. Na delegacji o statusie Bufor, przy próbie dodania zaliczki z listy istniejących zapisów KW, pojawi się komunikat Operacja nie jest możliwa. Operacja będzie możliwa po zmianie stanu na 'Zaakceptowane polecenie wyjazdu'. Zaakceptowanie polecenia wyjazdu, poprzez zaznaczenie tej opcji na formularzu delegacji, umożliwi wybór zaliczki z raportu lub dodanie jej poprzez wygenerowanie zapisu KW. Po naciśnięciu na ikonę  można:
  • wybrać zaliczkę z istniejących już zapisów kasowych/bankowych – w tym celu należy nacisnąć na ikonę w kolumnie Numer dokumentu KW
  • lub utworzyć nową zaliczkę, poprzez wpisanie kwoty w kolumnie Kwota (na liście zapisów kasowych/bankowych zostanie wówczas automatycznie utworzony odpowiedni zapis)

Rys. 3. Formularz elementu delegacji - zakładka Zaliczki

W części Zapisy kasowe z rozliczenia delegacji dostępna jest ikona plusa  umożliwiająca użytkownikowi ręczne podpinanie zapisu kasowego/ bankowego do delegacji. Ikona jest aktywna dla delegacji o statusie Zaakceptowane wydatki i nierozliczonej lub rozliczonej częściowo. Dostępna jest również ikona kosza do usuwania zapisów z listy. Zarówno w sekcji z zaliczkami, jak i z zapisami kasowymi z rozliczenia delegacji dostępna jest kolumna Kwota do rozliczenia, w której można wpisać kwotę jaka ma zostać rozliczona ze wskazanego dokumentu.

Element delegacji - Zakładka Wydatki

Na zakładce [Wydatki] jest możliwość wskazania kosztów za noclegi, bilety i inne wydatki, wprowadzonych bezpośrednio w ewidencjach pomocniczych takich jak: rejestry VAT czy ewidencja dodatkowa Dokumenty wprowadzone w module Faktury i przesłane do rejestru VAT nie mogą być podpinane.

Rys. 4. Formularz elementu delegacji - zakładka Wydatki

Uwaga
Przy zaznaczonych parametrach: Automatyczna generacja kasy dla ewidencji dodatkowej oraz Automatyczna generacja kasy dla rejestru VAT w Konfiguracji firmy /Kasa/Bank, przy dodawaniu z poziomu formularza delegacji dokumentów z formą płatności gotówka, nie zostanie automatycznie wygenerowany zapis kasowy rozliczający tą płatność.
W sytuacji, gdy dokument kosztowy powinien zostać podzielony np. pomiędzy dwie delegacje jest możliwość ograniczenia kwoty wydatku w kolumnie Kwota rozliczenia. Wpisana tu kwota zostanie automatycznie przeniesiona do podsumowania. Natomiast w przypadku ręcznej zmiany kwot w podsumowaniu, należy je również ręcznie przepisać do kolumny Kwota rozliczenia na liście dokumentów Koszty jednego noclegu w podsumowaniu zostaną automatycznie ograniczone do wysokości limitu, tj. 600,00 zł. Takie automatyczne ograniczenie kwoty nastąpi wyłącznie w części z podsumowaniem, dlatego odpowiednią wartość należy także przepisać na listę dokumentów do kolumny Kwota rozliczenia. Na podpiętej pozycji kosztu użytkownik ma dodatkowo do dyspozycji parametr Rozliczać zaliczką. Domyślnie parametr jest zaznaczony, co oznacza że w momencie rozliczenia delegacji nastąpi rozliczenie podpiętego dokumentu z podpiętą do delegacji zaliczką. Rozliczenie zostanie wykonane na kwotę wpisaną w kolumnie Kwota rozliczenia. Gdy parametr Rozliczać zaliczką zostanie odznaczony wówczas dokument kosztowy nie zostanie rozliczony z delegacją. Nie ma możliwości podpięcia tego samego dokumentu do kilku sekcji. Przy próbie wskazania np. w sekcji z innymi wydatkami tego samego dokumentu, który jest już wskazany np. w sekcji z noclegami, pojawi się komunikat Dokument FZ/12345/2020/VAT został już dodany do listy Noclegi.

Element delegacji - Zakładka Rozliczenie delegacji

Zakładka [Rozliczenie delegacji] składa się z kilku sekcji. U góry okna dostępne są pola Kraj (z domyślną wartością: Polska) i Waluta (z domyślną wartością: PLN). Wartości w tych polach są wyszarzane i niemożliwe do zmiany. Następnie wprowadza się trasy, z określeniem dat i godzin odjazdu/przyjazdu.

Rys. 5. Formularz rozliczenia delegacji - zakładka Rozliczenie delegacji

Liczba godzin w delegacji jest wyliczana w oparciu o daty i godziny odjazdu/ przyjazdu uzupełnione w sekcji z trasami. Wartość można ręcznie zmienić. W polu Stawka diety podstawiana jest domyślna wartość stawki diety z konfiguracji. Wartość podpowiadanej stawki diety można ręcznie zmienić. W Konfiguracji Firmy/ Kasa/Bank/ Diety i ryczałty można określić czy delegacje mają być wyliczane w oparciu o ustawowe (pobierane z Konfiguracji Programu/ Kasa/Bank/ Diety i ryczałty) czy indywidualne (pobierane z Konfiguracji Firmy/ Kasa/Bank/ Diety i Ryczałty) stawki diet i ryczałtów. Jeżeli w Konfiguracji Firmy/ Kasa/Bank/ Diety i Ryczałty jest zaznaczona opcja indywidualnie i na delegacji dodatkowo jeszcze ręcznie zmienimy stawkę diety na jakąś inną, to przy wprowadzaniu kolejnej delegacji dla tego samego pracownika, domyślnie podpowiadana jest stawka diety wpisana na poprzedniej delegacji. Diety, ryczałty za dojazdy oraz ryczałty za noclegi są domyślnie wyliczane na podstawie daty rozpoczęcia i zakończenia delegacji, ale z możliwością zmiany. Domyślnie parametr Wyliczaj ryczałt nie jest zaznaczony, z możliwością ręcznego uzupełnienia ryczałtów za dojazdy i noclegi. Po zaznaczeniu parametrów wartości są pobierane z Konfiguracji, a następnie automatycznie wyliczane na podstawie czasu trwania delegacji. Po zmianie wysokości diet i ryczałtów w konfiguracji, wartości na wyliczonych już delegacjach nie są automatycznie zmieniane. Aby je zaktualizować należy edytować delegację i ponownie wpisać np. liczbę diet na Rozliczeniu delegacji. Jeśli jest potrzeba zmodyfikowania zarówno ilości, jak i kwot należy odznaczyć parametr Wyliczaj ryczałt i ręcznie wprowadzić właściwe dane. Wyliczona kwota diety jest automatycznie pomniejszana o koszt zapewnionego wyżywienia, przy czym każdy posiłek stanowi odpowiednio: śniadanie 25% diety, obiad 50% diety, kolacja 25% diety. W przypadku, gdy pracownik będzie podróżował samochodem prywatnym, należy mu się zwrot kosztów przejazdu, na podstawie przejechanych kilometrów. Istnieje możliwość uzupełnienia tych informacji w sekcji Koszty używania pojazdu.

Element delegacji - Zakładka Podsumowanie rozliczenia

Na zakładce [Podsumowanie rozliczenia] jest możliwość przypisania kategorii, domyślnie jest tu podpowiadana kategoria wybrana w nagłówku delegacji. Poniżej znajduje się sekcja Podsumowanie rozliczenia z pracownikiem, a w niej wyliczone wartości ryczałtów, diet i innych wydatków, łączna suma wydatków, łączna wartość pobranych zaliczek oraz wyliczona kwota do wypłaty.

Rys. 6. Formularz elementu delegacji - zakładka Podsumowanie rozliczenia

Po zaznaczeniu parametru Generowanie płatności aktywne stają się pola do wyboru formy płatności i wskazania terminu płatności. Dostępny jest również parametr Generowanie zapisu k/b. Po jego zaznaczeniu aktywne staje się pole Rejestr, z możliwością wskazania rejestru, do którego zapis ma trafić. Domyślnie podpowiada się rejestr związany z formą płatności wybraną na delegacji, jeżeli zostanie wybrany jakiś inny rejestr to wybór zostaje zapamiętany. Zapamiętywana jest również ostatnio wybrana forma płatności oraz zaznaczenie/ odznaczenie parametru Generowanie zapisu k/b. Parametr Generowanie zapisu k/b jest zależny od parametru Generowanie płatności. Jeżeli użytkownik odznaczy parametr Generowanie płatności to Generowanie zapisu k/b również jest niemożliwe do zaznaczenia. Dokładne działanie parametrów Generowanie płatności i Generowanie zapisu k/b zostało opisane w dalszej części biuletynu, w rozdziale Ogólne zasady rozliczania delegacji. W polu Stan rozliczenia wykazywany jest stan rozliczenia delegacji: Nie rozliczono, Rozliczono częściowo lub Rozliczono. Stany rozliczenia są wyświetlane dla delegacji rozliczonych od wersji 2017.5.1 Comarch ERP Optima. Dla delegacji rozliczonych na wcześniejszych wersjach, wartość w tym polu nie jest wyświetlana. Parametr Generowanie zapisu k/b można zaznaczyć/odznaczyć tylko na delegacjach nierozliczonych. Dla delegacji o stanie Rozliczono częściowo lub Rozliczono parametr jest wyszarzany.

Formularz delegacji – zakładka Dokumenty

Drugą zakładką dostępną na formularzu delegacji jest zakładka [Dokumenty]. Zawiera ona listę dokumentów znajdujących się w Bibliotece dokumentów związanych z daną delegacją. Załącznikami na tych dokumentach mogą być zapisane w formie elektronicznej np. faktury, bilety, opłaty za autostradę czy inne dokumenty. Dokumenty te możemy dodawać w programie Comarch ERP Optima lub w aplikacji Comarch HRM.
  • Opcja Dodaj nowy – wywołuje nowy formularz dokumentu firmowego. Nowy dokument można dodać używając klawisza <INSERT> lub wykorzystując metodę drag&drop (przeciągania pliku).
  • Opcja Dodaj istniejący – wywołuje listę dokumentów zapisanych w Bibliotece, skąd Użytkownik może wskazać odpowiedni dokument.
Dokumenty mogą być dodawane/usuwane przez Użytkowników, którzy posiadają moduł Obieg dokumentów. Pozostali Użytkownicy mają możliwość podglądu znajdujących się na tej zakładce dokumentów. Podgląd pliku możliwy jest bezpośrednio z listy dokumentów delegacji po kliknięciu prawym przyciskiem myszy na danym dokumencie i wybraniu z menu kontekstowego opcji Archiwum plików. Dokumenty dodane w programie Comarch ERP Optima mogą być udostępnione w aplikacji Comarch HRM lub usunięte z Comarch HRM. W celu udostępnienia dokumentu lub jego zablokowania należy skorzystać z menu kontekstowego.
Uwaga
W aplikacji Comarch HRM widoczne będą tylko załączniki zapisane w bazie danych. Załączniki będące linkami nie zostaną udostępnione.
W przypadku korzystania z aplikacji Comarch HRM każdy dodany w aplikacji załącznik powoduje utworzenie dokumentu w Bibliotece dokumentów.

Delegacje zagraniczne

Na formularzu delegacji dostępny jest parametr Delegacja zagraniczna. Jest on aktywny tylko na delegacjach, które nie mają jeszcze zdefiniowanego żadnego etapu. Jeżeli dodany jest już przynajmniej jeden etap, opcja Delegacja zagraniczna jest wyszarzana, bez możliwości zmiany. Po zaznaczeniu wspomnianego parametru na delegacji można dodawać zarówno etapy krajowe, jak i zagraniczne  :
  • Opcja Dodaj etap krajowy (klawisz <Insert>) powoduje otwarcie formularza elementu delegacji, który jest etapem krajowym
  • Opcja Dodaj etap zagraniczny (klawisz <Shift>>+<Insert>) powoduje otwarcie formularza elementu delegacji, który jest etapem zagranicznym
Jeżeli parametr Delegacja zagraniczna nie jest zaznaczony, delegacja jest traktowana jako krajowa i nie można na niej dodać etapów zagranicznych. Na formularzu delegacji jest również możliwość wpisania Miejsca docelowego, Celu delegacji oraz wyboru kategorii. Po wybraniu pracownika automatycznie podpowiadana jest kategoria z jego karty, z możliwością zmiany. Kategorie można również przypisać na każdym z elementów delegacji, na zakładce [Podsumowanie rozliczenia]. Po zaksięgowaniu delegacji do księgowości kontowej, kategoria wpisana w nagłówku delegacji jest przenoszona jako kategoria nagłówka i pozycji na powstały zapis księgowy. Aby móc wprowadzić etapy delegacji najpierw należy wybrać pracownika, dla którego delegacja ma być wprowadzona. Na formularzu delegacji dostępne są następujące kolumny: Data od, Data do (w których widoczne są: najwcześniejsza data odjazdu i najpóźniejsza data przyjazdu z listy tras, z zakładki [Rozliczenie delegacji]), Kraj (z nazwą kraju wybranego na etapie delegacji), Zaliczka (z sumą wszystkich zaliczek w walucie etapu), Waluta (z walutą danego etapu). W kolumnach ukrytych jest dostępna również kolumna Status rozliczenia, w której wykazywane są statusy rozliczenia danego etapu delegacji: N – nie rozliczono, C – rozliczono częściowo, R – rozliczono całkowicie. Statusy są wyświetlane dla delegacji rozliczonych od wersji 2017.5.1 Comarch ERP Optima. Dla delegacji rozliczonych na wcześniejszych wersjach wartość w tej kolumnie nie jest wyświetlana. Lista etapów domyślnie sortowana jest wg daty w kolumnie Data od. Nie ma możliwości kopiowania etapów. Po przejściu na listę rozliczeń podmiotu z poziomu etapu delegacji (ikona  Rozliczenia podmiotu w menu głównym), lista rozliczeń jest domyślnie wyfiltrowana do waluty zgodnej z walutą edytowanego etapu.

Etap krajowy

Etap krajowy na delegacji zagranicznej jest zbliżony do etapu na delegacji krajowej, który został dokładnie opisany w poprzednim rozdziale. Zakładki [Zaliczki], [Wydatki] i [Podsumowanie rozliczenia] są identyczne. Nieco inna jest natomiast zakładka [Rozliczenie delegacji]. Na zakładce [Rozliczenie delegacji] w tabelce z trasami dostępna jest dodatkowa kolumna Wyjazd, w której możemy wskazać czy dana trasa jest częścią wyjazdu (opcja zaznaczona) czy przyjazdu (opcja niezaznaczona). Pole Liczba godzin w delegacji jest wyszarzane – liczba godzin jest wyliczana w oparciu o godziny odjazdu/ przyjazdu wprowadzone w tabelce z trasami (jest to suma godzin wyjazdów i godzin powrotów). Obok pola z liczbą godzin w delegacji dostępny jest parametr Sumuj wyjazdy z powrotami, który ma wpływ na wyliczenie liczby diet i ryczałtów. W sytuacji gdy parametr ten jest zaznaczony, liczba diet jest wyliczana dla łącznej liczby godzin (tzn. dla sumy godzin wyjazdów i przyjazdów). W sytuacji, gdy parametr nie jest zaznaczony liczba diet jest wyliczana osobno dla wyjazdów i osobno dla przyjazdów.
Przykład
Na elemencie delegacji wprowadzone są 2 trasy:
  • pierwsza, trwająca 10 godzin, oznaczona jako Wyjazd
  • druga, trwająca 7 godzin, bez zaznaczonej opcji Wyjazd (czyli będąca przyjazdem)
W polu Liczba godzin w delegacji widoczne jest więc: 17 (10h+7h) Jeżeli parametr Sumuj wyjazdy z powrotami będzie zaznaczony, to w Liczbie diet będzie widoczne: 1. (Godziny wyjazdów i przyjazdów są sumowane, tj. 10h+7h=17h; a dla 17 godzin przysługuje 1 dieta.) Jeżeli parametr Sumuj wyjazdy z powrotami nie będzie zaznaczony, to w Liczbie diet będzie widoczne: 0,5000. (Jest 10 godzin wyjazdu, którym przysługuje 0,5 diety oraz 7 godzin przyjazdu, którym nie przysługuje dieta. Łącznie więc pracownikowi przysługuje 0,5 diety.)
Liczba diet wynikająca z liczby godzin w delegacji wyliczana jest tak samo, jak na delegacjach krajowych. Jeżeli delegacja trwała od 8 do 12 godzin wyliczana jest połowa diety, jeżeli trwała ponad 12 godzin wyliczana jest cała dieta. W przypadku rozpoczęcia każdej kolejnej doby delegacji: do 8 godzin to połowa diety, ponad 8 godzin to już cała dieta.

Etap zagraniczny

Na formularzu etapu zagranicznego również dostępne są cztery zakładki: [Zaliczki], [Wydatki], [Rozliczenie delegacji] i [Podsumowanie rozliczenia].

Zakładka Zaliczki

Na zakładce [Zaliczki] jest możliwość wybrania Kraju, związanego z danym elementem delegacji. Domyślnie podpowiadany jest Kraj, który był ostatnio wybierany dla danego pracownika. Po wyborze kraju automatycznie podpowiadana jest odpowiednia Waluta. Pola Kraj i Waluta są wyszarzane, jeżeli na elemencie delegacji jest już dodana przynajmniej jedna zaliczka lub dokument na zakładce Wydatki.

Rys.7. Etap zagraniczny delegacji, zakładka Zaliczki

Jeżeli na delegacji ciągle jest ustawiony status Bufor, przy próbie dodania zaliczki pojawi się komunikat Operacja nie jest możliwa. Operacja będzie możliwa po zmianie stanu na 'Zaakceptowane polecenie wyjazdu'. Zaakceptowanie polecenia wyjazdu, poprzez zaznaczenie tej opcji na formularzu delegacji, umożliwi dodawanie zaliczek. Po naciśnięciu na ikonę  można:
  • wybrać zaliczkę z istniejących już zapisów kasowych/bankowych – w tym celu należy nacisnąć na ikonę w kolumnie Numer dokumentu KW
  • lub utworzyć nową zaliczkę, poprzez wpisanie kwoty w kolumnie Kwota (na liście zapisów kasowych/bankowych zostanie wówczas automatycznie utworzony odpowiedni zapis)
Dodawać można zapisy wprowadzone w walucie zgodnej z walutą danego etapu delegacji. Po zaznaczeniu parametru Wypłata zaliczki w PLN można również dodawać zaliczki wprowadzone z walutą dokumentu PLN i walutą rozliczenia zgodną z walutą danego etapu delegacji. Jeżeli dodana jest już przynajmniej jedna zaliczka parametr Wypłata zaliczki w PLN jest wyszarzany. W kolumnie Kwota jest widoczna kwota zaliczki w walucie obcej (kwota jest przenoszona z zaliczki i nie można jej zmienić). W kolumnie Kwota do rozliczenia można wskazać jaka część zaliczki ma być rozliczona w ramach danego etapu. W kolumnie Kwota w PLN jest widoczna wartość zaliczki w przeliczeniu na PLN po kursie z dokumentu. Analogiczne kolumny dostępne są w sekcji Zapisy kasowe z rozliczenia delegacji. W części Zapisy kasowe z rozliczenia delegacji dostępna jest ikona plusa  umożliwiająca użytkownikowi ręczne podpinanie zapisu kasowego/ bankowego do delegacji. Ikona jest aktywna dla delegacji o statusie Zaakceptowane wydatki i nierozliczonej lub rozliczonej częściowo. Dostępna jest również ikona kosza do usuwania zapisów z listy. Przy dodawaniu zapisu na etapach częściowo rozliczonych kwota w kolumnie Kwota do rozliczenia domyślnie jest ograniczana do wartości pozostającej do rozliczenia. Lista zaliczek może być modyfikowana tylko na delegacjach nierozliczonych.

Zakładka Wydatki

Na zakładce [Wydatki] jest możliwość wskazania kosztów za noclegi, bilety i innych wydatków wprowadzonych bezpośrednio w ewidencjach pomocniczych takich jak rejestry VAT czy ewidencja dodatkowa.

Rys. 8. Etap zagraniczny delegacji, zakładka Wydatki

W sytuacji, gdy dokument kosztowy powinien zostać podzielony np. pomiędzy dwie delegacje jest możliwość ograniczenia kwoty wydatku w kolumnie Kwota rozliczenia. Wpisana tu kwota zostanie automatycznie przeniesiona do podsumowania. W kolumnie Kwota w PLN widoczna jest kwota dokumentu w przeliczeniu na złotówki (wartość jest przeliczona po kursie z dokumentu). W przypadku podpięcia dokumentu z Rejestru VAT z zaznaczoną opcją Inny kurs do księgowania, w kolumnie Kwota w PLN prezentowana jest wartość przeliczona po kursie do księgowania. Na podpiętej pozycji kosztu użytkownik ma dodatkowo do dyspozycji parametr Rozliczać zaliczką. Domyślnie parametr jest zaznaczony, co oznacza że w momencie rozliczenia delegacji nastąpi rozliczenie podpiętego dokumentu z podpiętą do delegacji zaliczką. Rozliczenie zostanie wykonane na kwotę wpisaną w kolumnie Kwota rozliczenia. Gdy parametr Rozliczać zaliczką zostanie odznaczony wówczas dokument kosztowy nie zostanie rozliczony z delegacją. W sekcji Podsumowanie widoczna jest informacja o ilości noclegów, biletów oraz innych wydatków. Wartość w polu Kwota noclegów jest automatycznie ograniczana do wysokości limitu przypisanego do danego kraju, wybranego na elemencie delegacji. Kwota limitu na nocleg pobierana jest z Konfiguracji Programu/ Kasa/Bank/ Diety i ryczałty (jeżeli w Konfiguracji Firmy/ Kasa/Bank/ Diety i Ryczałty jest zaznaczona opcja ustawowe) lub z Konfiguracji Firmy/ Kasa/Bank/ Diety i Ryczałty (jeżeli jest zaznaczona opcja indywidualne). Podpowiadaną kwotę można ręcznie zmienić.

Zakładka Rozliczenie delegacji

Na zakładce [Rozliczenie delegacji] jest możliwość wybrania Kraju, związanego z danym elementem delegacji. Po wyborze kraju automatycznie podpowiadana jest odpowiednia Waluta, w której wypłacane są diety w danym kraju. Wybór Kraju i Waluty na zakładce [Rozliczenie delegacji] powoduje ustawienie takiego samego Kraju i takiej samej Waluty na zakładce [Zaliczki]. Pola Kraj i Waluta są wyszarzane, jeżeli na elemencie delegacji jest już dodana przynajmniej jedna zaliczka lub dokument na zakładce Wydatki.

Rys. 9. Etap zagraniczny delegacji, zakładka Rozliczenie delegacji

W polu Data rozpoczęcia etapu domyślnie podstawiana jest data i godzina z pierwszego przejazdu, a w polu Data zakończenia etapu data i godzina z ostatniego przejazdu z tabelki z przejazdami. Pola te są aktywne/ możliwe do edycji. Poniżej tabelki z przejazdami znajduje się sekcja Kalkulacja, a w niej m.in. informacje na temat liczby godzin w delegacji i wyliczonych kwot diet i ryczałtów. Liczba godzin w delegacji wyliczana jest automatycznie w oparciu o wartości wpisane w polach Data rozpoczęcia etapu i Data zakończenia etapu. Pole to jest aktywne do edycji. W polu Stawka diety dla kraju wybranego na elemencie delegacji domyślnie pobierana jest stawka diety z Konfiguracji Programu/ Kasa/Bank/ Diety i ryczałty (jeżeli w Konfiguracji Firmy/ Kasa/Bank/ Diety i Ryczałty jest zaznaczona opcja ustawowe) lub z Konfiguracji Firmy/ Kasa/Bank/ Diety i Ryczałty (jeżeli jest zaznaczona opcja indywidualne). Wartość podpowiadanej stawki diety można ręcznie zmienić. Jeżeli w Konfiguracji Firmy/ Kasa/Bank/ Diety i Ryczałty jest zaznaczona opcja indywidualnie i na delegacji dodatkowo jeszcze ręcznie zmienimy stawkę diety na jakąś inną, to przy wprowadzaniu kolejnej delegacji dla tego samego pracownika i tego samego kraju, domyślnie podpowiadana jest stawka diety wpisana na poprzedniej delegacji. Liczba diet wyliczana jest w oparciu o pole Liczba godzin w delegacji. Jeżeli delegacja trwała nie więcej niż 8 godzin, wyliczana jest 1/3 Diety. Jeżeli delegacja trwała więcej niż 8, ale nie więcej niż 12 godzin, to przysługuje 0,5 Diety. Jeżeli delegacja trwała ponad 12 godzin – przysługuje cała dieta. Dieta przysługująca za każdą kolejną dobę wyliczana jest w ten sam sposób. Wyliczoną liczbę diet można ręcznie zmienić. Kwota diety wyliczana jest jako iloczyn liczby diet i stawki diety. Wyliczona kwota diety jest automatycznie pomniejszana o koszt zapewnionego wyżywienia, przy czym każdy posiłek stanowi odpowiednio: śniadanie 15% diety, obiad 30% diety, kolacja 30% diety. Parametr Wyliczaj ryczałt dla ryczałtów za dojazdy, noclegi, dojazdy z/do dworca, lotniska i za pobyt w szpitalu domyślnie nie jest zaznaczony. Po jego zaznaczeniu automatycznie wyliczana jest liczba i kwota ryczałtów. Stawka ryczałtu za dojazdy to 10% stawki diety dla danego kraju za każdą rozpoczętą dobę pobytu. Stawka ryczałtu za noclegi to 25% limitu noclegowego dla danego kraju (wartość jest pobierana z konfiguracji firny). Stawka ryczałtu za dojazdy z/do dworca, lotniska to 100% stawki diety dla danego kraju. Stawka za pobyt w szpitalu to 25% stawki diety. Po wpisaniu liczby dni pobytu w szpitalu, widoczna kwota przysługującej diety jest odpowiednio pomniejszana. Po zaznaczeniu opcji Wyliczaj ryczałt dla ryczałtów za dojazdy/ za noclegi liczba ryczałtów wyliczana jest automatycznie, w oparciu o liczbę godzin w delegacji. Po zaznaczeniu opcji Wyliczaj ryczałt dla ryczałtów za dojazdy z/do dworca, lotniska oraz za pobyt w szpitalu należy ręcznie uzupełnić liczbę ryczałtów. W przypadku, gdy pracownik będzie podróżował samochodem prywatnym, wówczas należy mu się zwrot kosztów przejazdu, na podstawie przejechanych kilometrów. Istnieje możliwość uzupełnienia tych informacji w sekcji Koszty używania pojazdu. W tym miejscu wpisywana jest wartość w PLN.
Przykład
Pracownik poleciał w delegację z Krakowa do Monachium.
  • Samolot wystartował z Krakowa 05.06 o godzinie 10:00, w Monachium był o 11:15.
  • Samolot powrotny wystartował z Monachium 08.06 o godzinie 17:00, w Krakowie był o 18:15.
  • Pracownik miał zapewniony nocleg w hotelu, wraz z wyżywieniem (pierwszego dnia obiad i kolację, drugiego i trzeciego pełne wyżywienie, ostatniego dnia śniadanie i obiad).
  • Dla pracownika ma być również wyliczona kwota ryczałtów za dojazdy.
Etap zagraniczny delegacji trwał więc od godz. 10:00 05.06, do godz. 18:15 08.06, czyli 80 godzin i 15 minut, tj. 3 pełne doby, 8 godzin i 15 minut. Za taką liczbę godzin przysługuje 3,5 diety. Pracownik miał zapewnione wyżywienie (3x śniadanie, 4x obiad, 3x kolacja) co spowoduje pomniejszenie przysługującej diety odpowiednio o 3*0,15 (za śniadania), 4*0,30 (za obiady) i 3*0,30 (za kolacje). Zamiast 3,5 diety pracownikowi przysługuje więc pomniejszona liczba diet: 3,5 - (3x0,15 + 4x0,30 + 3x0,30), tj. ostatecznie 0,95 diety. Stawka diety dla Niemiec to 49 Euro, wobec tego wyliczona kwota diety przysługującej pracownikowi to 46,55 Euro (0,95*49 Euro). Po zaznaczeniu parametru Wyliczaj ryczałt przy Ryczałcie za dojazdy automatycznie zostanie wyliczona liczba 4 ryczałtów o wartości 19,60 Euro. (Ryczałt za dojazdy to 10% stawki diety dla danego kraju za każdą rozpoczętą dobę pobytu – tak więc program automatycznie wylicza 10% x 4 rozpoczęte doby x 49 Euro stawki diety, co daje 19,60 Euro.)
Dla delegacji rozliczonych wszystkie pola na zakładce [Rozliczenie delegacji] (z wyjątkiem pola Uwagi) są nieaktywne.

Zakładka Podsumowanie rozliczenia

Na zakładce [Podsumowanie rozliczenia] jest możliwość przypisania kategorii, domyślnie jest tu podpowiadana kategoria wybrana w nagłówku delegacji.

Rys. 10. Etap zagraniczny delegacji, zakładka Podsumowanie rozliczenia

Poniżej znajdują się dwie sekcje: Podsumowanie rozliczenia z pracownikiem i Podsumowanie kosztów delegacji. W sekcji Podsumowanie rozliczenia z pracownikiem, w polu Kurs do rozliczenia z pracownikiem są do wyboru cztery możliwe opcje:
  • Data zaliczki
  • Data rozliczenia delegacji
  • Data zakończenia delegacji
  • Inna
Po wyborze daty odpowiednio ustawiana jest data kursu oraz sam kurs, wg którego będzie następowało przeliczenie kwot diet i ryczałtów na walutę PLN przy rozliczeniu z pracownikiem. Dla opcji Inna w polu data kursu ustawiana jest data bieżąca. Domyślne ustawienie daty w polu Kurs do rozliczenia z pracownikiem zależy od tego, czy na delegacji są podpięte zaliczki oraz czy zaznaczona jest opcja wypłaty zaliczki/ rozliczania w PLN:
  • jeżeli na delegacji nie ma podpiętych zaliczek, to domyślnie ustawiana jest data rozliczenia delegacji, a w polu Data kursu: dzień poprzedni w stosunku do Daty rozliczenia
  • jeżeli na delegacji są zaliczki, ale parametry Wypłata zaliczki w PLN i Rozliczaj w PLN nie są zaznaczone, to domyślnie ustawiana jest Data zaliczki, a w polu Data kursu: data kursu z najwcześniejszej zaliczki
  • jeżeli na delegacji są zaliczki oraz parametry Wypłata zaliczki w PLN i/lub Rozliczaj w PLN są zaznaczone, to domyślnie ustawiana jest Data zaliczki, a w polu Data kursu: data dokumentu z najwcześniejszej zaliczki
Jako typ kursu ustawiany jest ten sam typ kursu, jaki jest wybrany na najwcześniejszej zaliczce. Wyjątkiem jest sytuacja, gdy na zaliczce jest ustawiony kurs Nieokreślony, wówczas jako typ kursu ustawiany jest Średni NBP. W polu Waluta widoczna jest waluta danego etapu (ta sama, która jest widoczna na zakładkach [Zaliczki] [Rozliczenie delegacji]). Parametr Rozliczaj w PLN domyślnie nie jest zaznaczony. Jego zaznaczenie oznacza, że pomimo tego iż zaliczka była wypłacona w walucie obcej to rozliczenie będzie następowało w PLN. Płatność na kwotę diet i ryczałtów wygenerowana podczas rozliczania delegacji będzie miała walutę dokumentu i walutę rozliczenia zgodną z walutą etapu, natomiast wygenerowany zapis kasowy/bankowy będzie miał walutę dokumentu PLN, a walutę rozliczenia jako walutę obcą. W polu Ryczałt za dojazdy widoczna jest suma Ryczałtu za dojazdy oraz Ryczałtu za dojazdy z/do dworca, lotniska z zakładki [Rozliczenie delegacji]. W polu Diety widoczna jest suma kwoty Diet i za Pobyt w szpitalu z zakładki [Rozliczenie delegacji]. W polu Inne wydatki widoczna jest suma wydatków z zakładki [Wydatki] oraz kosztów używania pojazdów. Jest to wartość w walucie etapu. Kwota kosztów używania pojazdów (która na zakładce [Rozliczenie delegacji] jest podawana w PLN) jest najpierw dzielona przez kurs podany na zakładce [Podsumowanie rozliczenia] i dopiero taka wartość walutowa jest sumowana do pola Inne wydatki. Wartości widoczne w polach Ryczałt za dojazdy, Ryczałt za noclegi, Diety, Inne wydatki, Suma wydatków, Pobrana zaliczka i Do wypłaty wykazywane są w walucie etapu. W polu Do wypłaty w PLN widoczna jest kwota do wypłaty przeliczona po kursie wskazanym w polu Kurs do rozliczenia z pracownikiem. Po zaznaczeniu parametru Generowanie płatności aktywne stają się pola do wyboru formy płatności i wskazania terminu płatności. Dostępny jest również parametr Generowanie zapisu k/b. Po jego zaznaczeniu aktywne staje się pole Rejestr, z możliwością wskazania rejestru, do którego zapis ma trafić (wyświetlana jest lista wszystkich rejestrów kasowych/bankowych, złotówkowych i walutowych, do których dany operator nie ma zakazu). Domyślnie podpowiada się rejestr związany z formą płatności wybraną na delegacji, jeżeli zostanie wybrany jakiś inny rejestr to wybór zostaje zapamiętany. Zapamiętywana jest również ostatnio wybrana forma płatności oraz zaznaczenie/ odznaczenie parametru Generowanie zapisu k/b. Parametr Generowanie zapisu k/b jest zależny od parametru Generowanie płatności. Jeżeli użytkownik odznaczy parametr Generowanie płatności to Generowanie zapisu k/b również jest niemożliwe do zaznaczenia. Dokładne działanie parametrów Generowanie płatności i Generowanie zapisu k/b zostało opisane w dalszej części biuletynu, w rozdziale Ogólne zasady rozliczania delegacji. W polu Stan rozliczenia wykazywany jest stan rozliczenia delegacji: Nie rozliczono, Rozliczono częściowo lub Rozliczono. Stany rozliczenia są wyświetlane dla delegacji rozliczonych od wersji 2017.5.1 Comarch ERP Optima. Dla delegacji rozliczonych na wcześniejszych wersjach Stan rozliczenia nie jest widoczny Parametr Generowanie zapisu k/b można zaznaczyć/odznaczyć tylko na delegacjach nierozliczonych. Dla delegacji o stanie Rozliczono częściowo lub Rozliczono parametr jest wyszarzany. W sekcji Podsumowanie kosztów delegacji, w polu Data poniesienia kosztu są do wyboru trzy możliwe opcje:
  • Data rozliczenia delegacji
  • Data zakończenia delegacji
  • Inna
Po wyborze daty odpowiednio ustawiana jest data kursu oraz sam kurs, wg którego będzie następowało przeliczenie kwot diet i ryczałtów na walutę PLN przy księgowaniu delegacji. Domyślnie ustawiana jest zawsze opcja Data rozliczenia delegacji, a w dacie kursu dzień poprzedni w stosunku do daty rozliczenia delegacji. W momencie wyboru opcji Data zakończenia delegacji, w dacie kursu ustawiany jest dzień poprzedni w stosunku do daty zakończenia delegacji. Dla opcji Inna w polu data kursu ustawiana jest data bieżąca. Domyślne ustawione daty można ręcznie zmienić. Jako data poniesienia kosztu najczęściej stosowana jest data rozliczenia lub data zakończenia delegacji. W polu Różnica kursowa wykazywana jest różnica kursowa wynikająca z tego, że dla wyliczenia kwoty księgowanej w koszty stosuje się inne przepisy niż do księgowania rozliczenia z pracownikiem. Różnica kursowa wyliczana jest jako łączna kwota diet i ryczałtów pomnożona przez różnicę między kursem poniesienia kosztu a kursem rozliczenia z pracownikiem. Ta różnica kursowa nie jest nigdzie dodatkowo zapisywana w programie, służy jedynie do księgowania kosztów delegacji. Jeżeli na delegacji są już wprowadzone etapy zagraniczne i w nagłówku delegacji zostanie zmieniona data zakończenia/ rozliczenia delegacji, to odpowiednie daty zostaną zaktualizowane również na etapie delegacji.

Rozliczenie delegacji

Ogólne zasady rozliczania delegacji

Rozliczenie delegacji wykonywane jest z listy delegacji, ikoną  . Rozliczać można tylko delegacje z zaznaczoną opcją Zaakceptowane wydatki. Jeżeli parametr Generowanie zapisu k/b, na elemencie delegacji na zakładce [Podsumowanie rozliczenia], zostanie zaznaczony, to podczas rozliczania delegacji zostanie wygenerowany zapis KP/KW na kwotę pozostającą do rozliczenia i delegacja zostanie całkowicie rozliczona. Jeżeli parametr Generowanie płatności zostanie odznaczony, to podczas rozliczania delegacji ikoną pioruna program nie wygeneruje żadnego zdarzenia do preliminarza. Zostanie jedynie rozliczona zaliczka pobrana przez pracownika z dokumentami podpiętymi na zakładce [Wydatki], tymi które mają zaznaczony parametr Rozliczać zaliczką. Jeżeli parametr Generowanie płatności będzie zaznaczony, a Generowanie zapisu k/b będzie odznaczony, to rozliczenie delegacji spowoduje wygenerowanie do Preliminarza płatności zdarzenia na łączną kwotę: diet, ryczałtów za noclegi, ryczałtów za dojazdy oraz kosztów używania samochodu. Zdarzenie będzie generowane w rejestrze kasowym/bankowym związanym z formą płatności wybraną na formularzu delegacji. Zdarzenie to od razu zostanie rozliczone z pobraną zaliczką oraz z dokumentami wskazanymi na zakładce Wydatki, które mają zaznaczony parametr Rozliczać zaliczką. Nie zostanie jednak wygenerowany żaden dodatkowy zapis KP/KW, który powodowałby całkowite rozliczenie delegacji. Pozwoli to na obsłużenie sytuacji kiedy wypłaty z rozliczenia delegacji są dokonywane za pomocą przelewów, a zapisy bankowe są importowane z plików generowanych z systemów bankowych. W takiej sytuacji, w celu całkowitego rozliczenia delegacji, taki zapis bankowy należy wskazać na zakładce [Zaliczki] w części Zapisy kasowe z rozliczenia delegacji. Wówczas, w momencie rozliczania delegacji, zostanie on odpowiednio rozliczony. Przy rozliczaniu delegacji, w logu z przebiegu rozliczania, wyświetlany jest numer delegacji i kwota do wypłaty, a w kolejnej linii kwota faktycznie rozliczona, przykładowo: W logu z przebiegu rozliczania informacje dla każdego etapu delegacji wyświetlane są osobno. Kwoty wyświetlane są w walucie etapu. Z poziomu listy delegacji, ikoną  , jest możliwość usunięcia rozliczenia delegacji wraz ze wszystkimi zainicjalizowanymi zdarzeniami i zapisami kasowymi/bankowymi, pod warunkiem że raport kasowy/bankowy, w którym znajduje się automatycznie wygenerowany z delegacji zapis kasowy nie został zamknięty. W przypadku zamkniętego raportu tylko rozliczenia zostaną usunięte, a pozostaną: wygenerowane z delegacji zdarzenie w preliminarzu oraz automatyczny zapis kasowy. W celu ich usunięcia należy otworzyć raport, w którym znajduje się wygenerowany z delegacji zapis kasowy/bankowy – usunąć go, następnie ponowić usuwanie rozliczenia delegacji.

Rozliczenie etapów zagranicznych

Ogólne zasady rozliczania w przypadku etapów zagranicznych:
  • jeżeli została pobrana zaliczka w walucie obcej, to rozliczenie następuje w tej samej walucie obcej, chyba że zaznaczony zostanie parametr Rozliczaj w PLN wtedy rozliczenie następuje w PLN
  • jeżeli została pobrana zaliczka w PLN, to rozliczenie danego etapu będzie następowało w PLN lub w walucie etapu
  • jeżeli nie została pobrana zaliczka, to rozliczenie następuje w walucie etapu, chyba że zaznaczony zostanie parametr Rozliczaj w PLN wtedy rozliczenie następuje w PLN.
  • do każdego etapu delegacji generowana jest oddzielna płatność w Preliminarzu płatności oraz oddzielny zapis kasowy/bankowy
Uwaga
Dokumenty z rejestru VAT/ ewidencji dodatkowej, podpięte pod delegację, rozliczane są po kursach wprowadzonych na tych dokumentach.

Przykład 1: Zaliczka pobrana w walucie obcej i rozliczenie również w walucie obcej

W sytuacji, gdy została pobrana zaliczka w walucie obcej i rozliczenie/zwrot do kasy również następuje w walucie obcej, to na zakładce [Podsumowanie rozliczenia], w sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawiana jest opcja Data zaliczki, jako data kursu podstawi się data kursu z najstarszej zaliczki, a jako notowanie podpowie się kurs z najstarszej zaliczki. Zarówno płatność w preliminarzu na kwotę diet i ryczałtów, jak i zapis kasowy/bankowy na kwotę wypłaty pracownikowi/ zwrotu do kasy zostaną wygenerowane z kursem z najstarszej zaliczki (czyli kursem z dnia poprzedniego w stosunku do daty zaliczki). Jeżeli Użytkownik, na zakładce [Podsumowanie rozliczenia], zmieni domyślny Kurs do rozliczenia z pracownikiem, to ten kurs zostanie przeniesiony zarówno na płatność, jak i na zapis kasowy/bankowy. Zarówno płatność w preliminarzu, jak i zapis kasowy/bankowy zostaną wygenerowane na datę zgodną z datą rozliczenia delegacji. W tym przypadku, w związku z tym że kurs do rozliczenia z pracownikiem (czyli kurs z najstarszej zaliczki) jest inny niż kurs do księgowania (czyli kurs z dnia poprzedzającego dzień rozliczenia), wyliczona zostanie różnica kursowa delegacyjna.
Przykład
Pracownikowi została wypłacona zaliczka w walucie obcej, rozliczenie delegacji następuje również w walucie obcej:
  • 09.05.2017 wypłacono zaliczkę w kwocie 1000 Euro (średni kurs NBP z dnia 08.05.2017 to 4,2059)
  • 19.05.2017 pracownik rozliczył się z kosztów delegacji, łączna kwota diet i ryczałtów wyniosła 600 Euro (średni kurs NBP z dnia 18.05.2017 to 4,2200)
  Rozliczenie delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia], w sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawi się opcja Data zaliczki, a jako data kursu kurs z najstarszej zaliczki, czyli 08.05.2017 (średni kurs NBP wynoszący 4,2059). Na delegacji jest zaznaczone zarówno Generowanie płatności, jak i Generowanie zapisu k/b. W momencie rozliczenia delegacji powstaną następujące dokumenty:
  • w Preliminarzu płatności płatność rozchodowa, z datą 19.05.2017, na kwotę kosztów, tj. 600 Euro, po kursie z dnia 08.05.2017 (czyli 4,2059)
  • w zapisach kasowych/bankowych zapis przychodowy (pracownik musi dokonać zwrotu nadpłaconej zaliczki), z datą 19.05.2017, na kwotę 400 Euro, po kursie z dnia 08.05.2017 (czyli 4,2059)
Wszystkie trzy dokumenty (tj. wypłacona pracownikowi zaliczka, powstała płatność w preliminarzu oraz powstały zapis kasowy/bankowy) zostaną ze sobą rozliczone. Wszystkie dokumenty są wprowadzone po tym samym kursie, więc nie powstaną żadne różnice kursowe z rozliczeń.   Koszty delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia], w sekcji Data poniesienia kosztu domyślnie ustawi się Data rozliczenia delegacji, a jako data kursu kurs z dnia poprzedzajacego dzień rozliczenia, czyli 18.05.2017 (średni kurs NBP wynoszący 4,2200). W związku z tym, że kurs do rozliczenia z pracownikiem jest inny niż kurs poniesienia kosztu, automatycznie zostanie wyliczona Różnica kursowa delegacyjna, którą następnie można zaksięgować. Różnica kursowa zostanie wyliczona na kwotę 8,46 (tj. 600*(4,2200-4,2059)).

Przykład 2: Zaliczka pobrana w walucie obcej, a rozliczenie następuje w PLN

W sytuacji, gdy została pobrana zaliczka w walucie obcej, a rozliczenie/zwrot do kasy następuje w PLN, to na zakładce [Podsumowanie rozliczenia] należy zaznaczyć parametr Rozliczaj w PLN. W sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawiana jest opcja Data zaliczki, a jako data kursu podpowie się data najstarszej zaliczki. Zarówno płatność w preliminarzu na kwotę diet i ryczałtów, jak i zapis kasowy/bankowy na kwotę wypłaty pracownikowi/ zwrotu do kasy zostaną wygenerowane z kursem z dnia wypłaty zaliczki. Jeżeli Użytkownik, na zakładce [Podsumowanie rozliczenia], zmieni domyślny Kurs do rozliczenia z pracownikiem, to ten kurs zostanie przeniesiony zarówno na płatność, jak i na zapis kasowy/bankowy. Zarówno płatność w preliminarzu, jak i zapis kasowy/bankowy zostaną wygenerowane na datę zgodną z datą rozliczenia delegacji. Płatność zostanie wygenerowana w walucie etapu, natomiast na zapisie kasowym/bankowym walutą dokumentu będzie PLN, a walutą rozliczenia waluta etapu. W tym przypadku, w związku z tym że kurs do rozliczenia z pracownikiem (czyli kurs z dnia zaliczki) jest inny niż kurs do księgowania (czyli kurs z dnia poprzedzającego dzień rozliczenia), wyliczona zostanie różnica kursowa delegacyjna.
Przykład
Pracownikowi została wypłacona zaliczka w walucie obcej, ale rozliczenie delegacji następuje w PLN:
  • 09.05.2017 wypłacono zaliczkę w kwocie 1000 Euro (średni kurs NBP z dnia 08.05.2017 to 4,2059)
  • 19.05.2017 pracownik rozliczył się z kosztów delegacji, łączna kwota diet i ryczałtów wyniosła 1300 Euro (średni kurs NBP z dnia 18.05.2017 to 4,2200)
  Rozliczenie delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia] należy zaznaczyć parametr Rozliczaj w PLN. W sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawi się opcja Data zaliczki, a jako data kursu data najstarszej zaliczki, czyli 09.05.2017 (średni kurs NBP wynoszący 4,2253). Na delegacji jest zaznaczone zarówno Generowanie płatności, jak i Generowanie zapisu k/b. W momencie rozliczenia delegacji powstaną następujące dokumenty:
  • w Preliminarzu płatności płatność rozchodowa, z datą 19.05.2017, na kwotę kosztów, tj. 1300 Euro, po kursie z dnia 09.05.2017 (czyli 4,2253)
  • w zapisach kasowych/bankowych zapis rozchodowy (zaliczki nie wystarczyło na pokrycie wszystkich kosztów, pozostałą kwotę należy więc wypłacić pracownikowi), z datą 19.05.2017, na kwotę 300 Euro, po kursie z dnia 09.05.2017 (czyli 4,2253), co daje 1267,59PLN. Na zapisie ustawiona jest waluta dokumentu PLN i waluta rozliczenia EUR.
Wszystkie trzy dokumenty (tj. wypłacona pracownikowi zaliczka, powstała płatność w preliminarzu oraz powstały zapis kasowy/bankowy) zostaną ze sobą rozliczone. W zwiazku z tym, że na wypłaconej zaliczce był inny kurs niż na powstałej płatności w Preliminarzu, automatycznie została wygenerowane różnica kursowa z rozliczenia, dostępna na liście różnic kursowych.   Koszty delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia], w sekcji Data poniesienia kosztu domyślnie ustawi się Data rozliczenia delegacji, a jako data kursu kurs z dnia poprzedzajacego dzień rozliczenia, czyli 18.05.2017 (średni kurs NBP wynoszący 4,2200). W związku z tym, że kurs do rozliczenia z pracownikiem jest inny niż kurs poniesienia kosztu, automatycznie zostanie wyliczona Różnica kursowa delegacyjna, którą następnie można zaksięgować. Różnica kursowa zostanie wyliczona na kwotę -6,89 (tj. 1300*(4,2200-4,2253)).

Przykład 3: Zaliczka pobrana w PLN i rozliczenie również następuje w PLN

W sytuacji, gdy została pobrana zaliczka w PLN i rozliczenie/zwrot do kasy również następuje w PLN, to na zakładce [Zaliczki] należy zaznaczyć parametr Wypłata zaliczki w PLN, a na zakładce [Podsumowanie rozliczenia] parametr Rozliczaj w PLN. W sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawiana jest opcja Data zaliczki, a jako data kursu podpowie się data najstarszej zaliczki. Zarówno płatność w preliminarzu na kwotę diet i ryczałtów, jak i zapis kasowy/bankowy na kwotę wypłaty pracownikowi/ zwrotu do kasy zostaną wygenerowane z kursem z dnia zaliczki. Jeżeli Użytkownik, na zakładce [Podsumowanie rozliczenia], zmieni domyślny Kurs do rozliczenia z pracownikiem, to ten kurs zostanie przeniesiony zarówno na płatność, jak i na zapis kasowy/bankowy. Zarówno płatność w preliminarzu, jak i zapis kasowy/bankowy zostaną wygenerowane na datę zgodną z datą rozliczenia delegacji. Płatność zostanie wygenerowana w walucie etapu, natomiast na zapisie kasowym/bankowym walutą dokumentu będzie PLN, a walutą rozliczenia waluta etapu. W tym przypadku, w związku z tym że kurs do rozliczenia z pracownikiem (czyli kurs z dnia zaliczki) jest inny niż kurs do księgowania (czyli kurs z dnia poprzedzającego dzień rozliczenia), wyliczona zostanie różnica kursowa delegacyjna.
Przykład
Pracownikowi została wypłacona zaliczka w PLN i rozliczenie delegacji również następuje w PLN:
  • 09.05.2017 wypłacono zaliczkę w kwocie 4225,30 PLN (tj. równowartość 1000 Euro)Na zaliczce ustawiona jest waluta dokumentu PLN i waluta rozliczenia EUR (średni kurs NBP z dnia 09.05.2017 to 4,2253)
  • 19.05.2017 pracownik rozliczył się z kosztów delegacji, łączna kwota diet i ryczałtów wyniosła 1300 Euro (średni kurs NBP z dnia 18.05.2017 to 4,2200)
  Rozliczenie delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia] należy zaznaczyć parametr Rozliczaj w PLN. W sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawi się opcja Data zaliczki, a jako data kursu data najstarszej zaliczki, czyli 09.05.2017 (średni kurs NBP wynoszący 4,2253). Na delegacji jest zaznaczone zarówno Generowanie płatności, jak i Generowanie zapisu k/b. W momencie rozliczenia delegacji powstaną następujące dokumenty:
  • w Preliminarzu płatności płatność rozchodowa, z datą 19.05.2017, na kwotę kosztów, tj. 1300 Euro, po kursie z dnia 09.05.2017 (czyli 4,2253)
  • w zapisach kasowych/bankowych zapis rozchodowy (zaliczki nie wystarczyło na pokrycie wszystkich kosztów, pozostałą kwotę należy więc wypłacić pracownikowi), z datą 19.05.2017, na kwotę 300 Euro, po kursie z dnia 09.05.2017 (czyli 4,2253), co daje 1267,59PLN. Na zapisie ustawiona jest waluta dokumentu PLN i waluta rozliczenia EUR.
Wszystkie trzy dokumenty (tj. wypłacona pracownikowi zaliczka, powstała płatność w preliminarzu oraz powstały zapis kasowy/bankowy) zostaną ze sobą rozliczone. Wszystkie dokumenty są wprowadzone po tym samym kursie, więc nie powstaną żadne różnice kursowe z rozliczeń.   Koszty delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia], w sekcji Data poniesienia kosztu domyślnie ustawi się Data rozliczenia delegacji, a jako data kursu kurs z dnia poprzedzajacego dzień rozliczenia, czyli 18.05.2017 (średni kurs NBP wynoszący 4,2200). W związku z tym, że kurs do rozliczenia z pracownikiem jest inny niż kurs poniesienia kosztu, automatycznie zostanie wyliczona Różnica kursowa delegacyjna, którą następnie można zaksięgować. Różnica kursowa zostanie wyliczona na kwotę -6,89 (tj. 1300*(4,2200-4,2253)).

Przykład 4: Zaliczka pobrana w PLN, a rozliczenie następuje w walucie obcej

W sytuacji, gdy została pobrana zaliczka w PLN, a rozliczenie/zwrot do kasy następuje w walucie obcej, to na zakładce [Zaliczki] należy zaznaczyć parametr Wypłata zaliczki w PLN. Na zakładce [Podsumowanie rozliczenia], w sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawiana jest opcja Data zaliczki, a jako data kursu podpowie się data najstarszej zaliczki. Zarówno płatność w preliminarzu na kwotę diet i ryczałtów, jak i zapis kasowy/bankowy na kwotę wypłaty pracownikowi/ zwrotu do kasy zostaną wygenerowane z kursem z dnia zaliczki. Jeżeli Użytkownik, na zakładce [Podsumowanie rozliczenia], zmieni domyślny Kurs do rozliczenia z pracownikiem, to ten kurs zostanie przeniesiony zarówno na płatność, jak i na zapis kasowy/bankowy. Zarówno płatność w preliminarzu, jak i zapis kasowy/bankowy zostaną wygenerowane na datę zgodną z datą rozliczenia delegacji i w walucie etapu. W tym przypadku, w związku z tym że kurs do rozliczenia z pracownikiem (czyli kurs z dnia zaliczki) jest inny niż kurs do księgowania (czyli kurs z dnia poprzedzającego dzień rozliczenia), wyliczona zostanie różnica kursowa delegacyjna.
Przykład
Pracownikowi została wypłacona zaliczka w PLN, a rozliczenie następuje w walucie obcej:
  • 09.05.2017 wypłacono zaliczkę w kwocie 4225,30 PLN (tj. równowartość 1000 Euro)Na zaliczce ustawiona jest waluta dokumentu PLN i waluta rozliczenia EUR (średni kurs NBP z dnia 09.05.2017 to 4,2253)
  • 19.05.2017 pracownik rozliczył się z kosztów delegacji, łączna kwota diet i ryczałtów wyniosła 600 Euro (średni kurs NBP z dnia 18.05.2017 to 4,2200)
  Rozliczenie delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia], w sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawi się opcja Data zaliczki, a jako data kursu data najstarszej zaliczki, czyli 09.05.2017 (średni kurs NBP wynoszący 4,2253). Na delegacji jest zaznaczone zarówno Generowanie płatności, jak i Generowanie zapisu k/b. W momencie rozliczenia delegacji powstaną następujące dokumenty:
  • w Preliminarzu płatności płatność rozchodowa, z datą 19.05.2017, na kwotę kosztów, tj. 600 Euro, po kursie z dnia 09.05.2017 (czyli 4,2253)
  • w zapisach kasowych/bankowych zapis przychodowy (pracownik musi dokonać zwrotu nadpłaconej zaliczki), z datą 19.05.2017, na kwotę 400 Euro, po kursie z dnia 09.05.2017 (czyli 4,2253)
Wszystkie trzy dokumenty (tj. wypłacona pracownikowi zaliczka, powstała płatność w preliminarzu oraz powstały zapis kasowy/bankowy) zostaną ze sobą rozliczone. Wszystkie dokumenty są wprowadzone po tym samym kursie, więc nie powstaną żadne różnice kursowe z rozliczeń.   Koszty delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia], w sekcji Data poniesienia kosztu domyślnie ustawi się Data rozliczenia delegacji, a jako data kursu kurs z dnia poprzedzajacego dzień rozliczenia, czyli 18.05.2017 (średni kurs NBP wynoszący 4,2200). W związku z tym, że kurs do rozliczenia z pracownikiem jest inny niż kurs poniesienia kosztu, automatycznie zostanie wyliczona Różnica kursowa delegacyjna, którą następnie można zaksięgować. Różnica kursowa zostanie wyliczona na kwotę -3,18 (tj. 600*(4,2200-4,2253)).

Przykład 5: Zaliczka nie została pobrana, a rozliczenie następuje w walucie obcej

W sytuacji, gdy zaliczka nie została pobrana, a rozliczenie/zwrot do kasy następuje w walucie obcej, to na zakładce [Podsumowanie rozliczenia], w sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawiana jest opcja Data rozliczenia, a jako data kursu podpowie się dzień wcześniejszy w stosunku do daty rozliczenia. Zarówno płatność w preliminarzu na kwotę diet i ryczałtów, jak i zapis kasowy/bankowy na kwotę wypłaty pracownikowi/ zwrotu do kasy zostaną wygenerowane z kursem z dnia poprzedniego w stosunku do daty rozliczenia delegacji. Jeżeli Użytkownik, na zakładce [Podsumowanie rozliczenia], zmieni domyślny Kurs do rozliczenia z pracownikiem, to ten kurs zostanie przeniesiony zarówno na płatność, jak i na zapis kasowy/bankowy. Zarówno płatność w preliminarzu, jak i zapis kasowy/bankowy zostaną wygenerowane na datę zgodną z datą rozliczenia delegacji. W tym przypadku, w związku z tym że kurs do rozliczenia z pracownikiem jest taki sam, jak kurs do księgowania (czyli kurs z dnia poprzedzającego dzień rozliczenia), nie powstanie różnica kursowa delegacyjna.
Przykład
Pracownikowi nie została wypłacona zaliczka, a rozliczenie następuje w walucie obcej:
  • 19.05.2017 pracownik rozliczył się z kosztów delegacji, łączna kwota diet i ryczałtów wyniosła 600 Euro (średni kurs NBP z dnia 18.05.2017 to 4,2200)
  Rozliczenie delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia], w sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawi się opcja Data rozliczenia delegacji, a jako data kursu dzień wcześniejszy w stosunku do daty rozliczenia, czyli 18.05.2017 (średni kurs NBP wynoszący 4,2200). Na delegacji jest zaznaczone zarówno Generowanie płatności, jak i Generowanie zapisu k/b. W momencie rozliczenia delegacji powstaną następujące dokumenty:
  • w Preliminarzu płatności płatność rozchodowa, z datą 19.05.2017, na kwotę kosztów, tj. 600 Euro, po kursie z dnia 18.05.2017 (czyli 4,2200)
  • w zapisach kasowych/bankowych zapis rozchodowy (należy wypłacić kwotę pracownikowi), z datą 19.05.2017, na kwotę 600 Euro, po kursie z dnia 18.05.2017 (czyli 4,2200)
Oba dokumenty (tj. powstała płatność w preliminarzu oraz powstały zapis kasowy/bankowy) zostaną ze sobą rozliczone. Dokumenty są wprowadzone po tym samym kursie, więc nie powstaną żadne różnice kursowe z rozliczeń.   Koszty delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia], w sekcji Data poniesienia kosztu domyślnie ustawi się Data rozliczenia delegacji, a jako data kursu kurs z dnia poprzedzajacego dzień rozliczenia, czyli 18.05.2017 (średni kurs NBP wynoszący 4,2200). W związku z tym,że kurs do rozliczenia z pracownikiem jest taki sam, jak kurs do księgowania (czyli kurs z dnia poprzedzającego dzień rozliczenia), nie powstanie różnica kursowa delegacyjna.

Przykład 6: Zaliczka nie została pobrana, a rozliczenie następuje w PLN

W sytuacji, gdy zaliczka nie została pobrana, a rozliczenie/zwrot do kasy następuje w PLN, to na zakładce [Podsumowanie rozliczenia], w sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawiana jest opcja Data rozliczenia, a jako data kursu podpowie się dzień wcześniejszy w stosunku do daty rozliczenia. Zarówno płatność w preliminarzu na kwotę diet i ryczałtów, jak i zapis kasowy/bankowy na kwotę wypłaty pracownikowi/ zwrotu do kasy zostaną wygenerowane z kursem z dnia poprzedniego w stosunku do daty rozliczenia delegacji. Jeżeli Użytkownik, na zakładce [Podsumowanie rozliczenia], zmieni domyślny Kurs do rozliczenia z pracownikiem, to ten kurs zostanie przeniesiony zarówno na płatność, jak i na zapis kasowy/bankowy. Zarówno płatność w preliminarzu, jak i zapis kasowy/bankowy zostaną wygenerowane na datę zgodną z datą rozliczenia delegacji. Płatność zostanie wygenerowana w walucie etapu, natomiast na zapisie kasowym/bankowym walutą dokumentu będzie PLN, a walutą rozliczenia waluta etapu. W tym przypadku, w związku z tym że kurs do rozliczenia z pracownikiem jest taki sam, jak kurs do księgowania (czyli kurs z dnia poprzedzającego dzień rozliczenia), nie powstanie różnica kursowa delegacyjna.
Przykład
Pracownikowi nie została wypłacona zaliczka, a rozliczenie następuje w PLN:
  • 19.05.2017 pracownik rozliczył się z kosztów delegacji, łączna kwota diet i ryczałtów wyniosła 600 Euro (średni kurs NBP z dnia 18.05.2017 to 4,2200)
  Rozliczenie delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia] należy zaznaczyć parametr Rozliczaj w PLN. W sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawi się opcja Data rozliczenia delegacji, a jako data kursu dzień wcześniejszy w stosunku do daty rozliczenia, czyli 18.05.2017 (średni kurs NBP wynoszący 4,2200). Na delegacji jest zaznaczone zarówno Generowanie płatności, jak i Generowanie zapisu k/b. W momencie rozliczenia delegacji powstaną następujące dokumenty:
  • w Preliminarzu płatności płatność rozchodowa, z datą 19.05.2017, na kwotę kosztów, tj. 600 Euro, po kursie z dnia 18.05.2017 (czyli 4,2200)
  • w zapisach kasowych/bankowych zapis rozchodowy (należy wypłacić kwotę pracownikowi), z datą 19.05.2017, na kwotę 600 Euro, po kursie z dnia 18.05.2017 (czyli 4,2200), co daje 2532 PLN. Na zapisie ustawiona jest waluta dokumentu PLN i waluta rozliczenia EUR.
Oba dokumenty (tj. powstała płatność w preliminarzu oraz powstały zapis kasowy/bankowy) zostaną ze sobą rozliczone. Dokumenty są wprowadzone po tym samym kursie, więc nie powstaną żadne różnice kursowe z rozliczeń.   Koszty delegacji: Na etapie delegacji, na zakładce [Podsumowanie rozliczenia], w sekcji Data poniesienia kosztu domyślnie ustawi się Data rozliczenia delegacji, a jako data kursu kurs z dnia poprzedzajacego dzień rozliczenia, czyli 18.05.2017 (średni kurs NBP wynoszący 4,2200). W związku z tym,że kurs do rozliczenia z pracownikiem jest taki sam, jak kurs do księgowania (czyli kurs z dnia poprzedzającego dzień rozliczenia), nie powstanie różnica kursowa delegacyjna.

Przykład 7: Delegacja zarówno z etapem krajowym jak i zagranicznym

W sytuacji, gdy na delegacji podpiętych jest kilka etapów, np. krajowy i zagraniczne, do każdego z nich osobno podpinane są zaliczki i dokumenty kosztowe. W momencie rozliczenia delegacji, rozliczany jest każdy z etapów. Poniższy przykład przedstawia sytuację, gdzie na delegacji dodany jest zarówno etap krajowy, jak i zagraniczny. Do każdego z etapów została wypłacona zaliczka w walucie etapu, pracownik dostarczył również faktury potwierdzające poniesione koszty.
Przykład
Delegacja składa się zarówno z etapu krajowego, jak i zagranicznego. Pracownikowi zostały wypłacone zaliczki w walutach etapu:
  • 09.05.2017 wypłacono zaliczkę KW1 w kwocie 100 PLN
  • 09.05.2017 wypłacono zaliczkę KW2 w kwocie 1000 Euro (średni kurs NBP z dnia 08.05.2017 to 4,2059)
Rozliczenie delegacji następuje również w walutach etapów:
  • 19.05.2017 pracownik rozliczył się z kosztów delegacji, łączna kwota diet i ryczałtów wyniosła 60 PLN (dla etapu krajowego) i 600 Euro (dla etapu zagranicznego) (średni kurs NBP z dnia 18.05.2017 to 4,2200)
Pracownik dostarczył również dokumenty potwierdzające poniesione koszty:
  • faktura za przejazd taksówką FZ1 na 30 PLN
  • faktura kosztowa FZ2 z dnia 17.05.2017, na kwotę 250 Euro (średni kurs NBP z dnia 16.05.2017 to 4,1902)
  Rozliczenie delegacji: Na etapie krajowym, na zakładce [Podsumowanie rozliczenia], w sekcji Kurs do rozliczenia z pracownikiem, widać wartość pobranej zaliczki: 100 PLN oraz sumę wydatków: 90 PLN (60PLN+30PLN). Tak więc w polu Do wypłaty pozostaje: -10 PLN. Na etapie zagranicznym, na zakładce [Podsumowanie rozliczenia], w sekcji Kurs do rozliczenia z pracownikiem, domyślnie ustawi się opcja Data zaliczki, a jako data kursu kurs z najstarszej zaliczki, czyli 08.05.2017 (średni kurs NBP wynoszący 4,2059). Widać wartość pobranej zaliczki: 1000 Euro oraz sumę wydatków: 850 Euro (600Euro+250Euro). Tak więc w polu Do wypłaty pozostaje: -150 Euro. Na delegacji jest zaznaczone zarówno Generowanie płatności, jak i Generowanie zapisu k/b. W momencie rozliczenia delegacji powstaną następujące dokumenty:
  • w Preliminarzu płatności płatność rozchodowa, z datą 19.05.2017, na kwotę kosztów z etapu krajowego, tj. 60 PLN
  • w Preliminarzu płatności płatność rozchodowa, z datą 19.05.2017, na kwotę kosztów z etapu zagranicznego, tj. 600 Euro, po kursie z dnia 08.05.2017 (czyli 4,2059)
  • w zapisach kasowych/bankowych zapis przychodowy KP1 (pracownik musi dokonać zwrotu nadpłaconej zaliczki z etapu krajowego), z datą 19.05.2017, na kwotę 10 PLN
  • w zapisach kasowych/bankowych zapis przychodowy KP2 (pracownik musi dokonać zwrotu nadpłaconej zaliczki z etapu zagranicznego), z datą 19.05.2017, na kwotę 150 Euro, po kursie z dnia 08.05.2017 (czyli 4,2059)
Wszystkie dokumenty zostaną ze sobą rozliczone, tj.: Pobrana zaliczka KW1 na 100 PLN zostanie rozliczona z płatnością na kwotę kosztów (60PLN), fakturą za przejazd taksówką FZ1 (30PLN) oraz powstałym zapisem kasowym/bankowym KP1 (10PLN). Pobrana zaliczka KW2 na 1000 Euro zostanie rozliczona z płatnością na kwotę kosztów (600Euro), fakturą kosztową FZ2 (250Euro) oraz powstałym zapisem kasowym/bankowym KP2 (150Euro). W zwiazku z tym, że na wypłaconej zaliczce KW2 był inny kurs niż fakturze kosztowej FZ2, automatycznie została wygenerowane różnica kursowa z rozliczenia, dostępna na liście różnic kursowych. Powstała również różnica kursowa na kwotę grosza, z rozliczenia wypłaconej zaliczki KW2 z powstałym zapisem przychodowym KP2. Różnica wynika z zaokrągleń.   Koszty delegacji: Na etapie zagranicznym delegacji, na zakładce [Podsumowanie rozliczenia], w sekcji Data poniesienia kosztu domyślnie ustawi się Data rozliczenia delegacji, a jako data kursu kurs z dnia poprzedzajacego dzień rozliczenia, czyli 18.05.2017 (średni kurs NBP wynoszący 4,2200). W związku z tym, że kurs do rozliczenia z pracownikiem jest inny niż kurs poniesienia kosztu, automatycznie zostanie wyliczona Różnica kursowa delegacyjna, którą następnie można zaksięgować. Różnica kursowa zostanie wyliczona na kwotę 8,46 (tj. 600*(4,2200-4,2059)).

Księgowanie delegacji

Do księgowania delegacji służy ikona  dostępna na liście delegacji. Księgować można tylko delegacje zatwierdzone.

Księgowanie do KPiR

Dla baz z ustawioną wielozakładowością, na formularzu delegacji, obok pola z wyborem pracownika, istnieje możliwość wyboru Zakładu. Po wybraniu pracownika, domyślnie przenoszony jest zakład z jego karty. Na liście delegacji, w menu kontekstowym (pod prawym klawiszem myszy) dostępna jest opcja Ustaw zakład. Na formularzu etapu delegacji dostępna jest ikona  Kwoty dodatkowe, gdzie wykazywane jest jakie kwoty mają być zaksięgowane do poszczególnych kolumn książki przychodów i rozchodów. Ikona Kwot dodatkowych dostępna jest zarówno na etapach krajowych, jak i zagranicznych.

Rys. 11. Kwoty dodatkowe na etapie krajowym

Rys. 12. Kwoty dodatkowe na etapie zagranicznym

W przypadku etapów krajowych widoczne są następujące rodzaje wydatków: Diety, Ryczałty za dojazdy, Ryczałty za noclegi i Koszty używania pojazdu. W przypadku etapów zagranicznych widoczne są następujące rodzaje wydatków: Diety, Ryczałty za dojazdy, Ryczałty za noclegi, Ryczałty za dojazdy z/do dworca, lotniska i Koszty używania pojazdu. Dla każdego rodzaju wydatku domyślnie ustawiana jest kolumna 13.Inne, z możliwością zmiany. Wartości w kolumnie Kwota są uzupełniane automatycznie, z możliwością zmiany. Jeżeli na etapie delegacji nastąpi zmiana wartości, np. kwoty diet, wartości w Kwotach dodatkowych zostaną automatycznie zaktualizowane. W kwocie Diet wykazywana jest suma wartości diet i za pobyt w szpitalu. Na etapach zagranicznych kwoty wykazywane są w PLN, przeliczone po kursie poniesienia kosztu. W polu Kwota dokumentu (widocznym w prawym górnym rogu) jest widoczna kwota z pola Suma wydatków na zakładce [Podsumowanie rozliczenia] pomniejszona o kwotę wydatków podpiętych na zakładce [Wydatki], przemnożona przez kurs poniesienia kosztu. W momencie księgowania delegacji ikoną  tworzony jest zapis KPiR z datą księgowania równą dacie rozliczenia delegacji. Powstaje jeden zbiorczy zapis KPiR na łączną kwotę kosztów (sumowane są koszty z wszystkich etapów delegacji, w ramach danej kolumny KPiR). W numerze dowodu wpisywany jest numer delegacji, a w Opisie Rozliczenie delegacji: [Numer delegacji].

Księgowanie do księgowości kontowej

W przypadku baz z księgowością kontową istnieje możliwość księgowania delegacji zarówno według predekretacji, jak i schematem księgowym. W nagłówku schematu księgowego dostępny jest parametr Pobierz datę księgowania z Konfiguracji. Jego zaznaczenie powoduje, że data z jaką delegacja zostanie zaksięgowana jest pobierana z Konfiguracji firmy/ Księgowość/ Parametry – Księgowanie dokumentów z datą. Przy wybranej w konfiguracji opcji Bieżącą, delegacja zostanie zaksięgowana z datą bieżącą. Przy wybranej opcji Wystawienia, Operacji lub Zapisu, delegacja zostanie zaksięgowana zgodnie z datą dokumentu delegacji. Jeżeli parametr Pobierz datę księgowania z Konfiguracji zostanie odznaczony, przycisk Data księg. jest aktywny i użytkownik ma do wyboru następujące opcje:
  • Data dokumentu – symbol @DataDok
  • Data bieżąca – symbol @DataBiezaca
  • Data rozpoczęcia delegacji – symbol @DataRozpoczeciaDelegacji
  • Data zakończenia delegacji – symbol @DataZakonczeniaDelegacji
  • Data rozliczenia delegacji – symbol @DataRozliczeniaDelegacji
Warunkiem może być:
  • Kategoria dokumentu – w ramach, której dostępne są następujące parametry:
    • Kategoria szczegółowa – symbol @KategoriaNag
    • Kategoria ogólna – symbol @KategoriaOgolnaNag
    • Opis kategorii – symbol @KategoriaOpisNag
    • Konto Wn kategorii – konto Wn wprowadzone na kategorii w segmencie księgowym – symbol @KatNagKontoWn
    • Konto Ma kategorii – konto Ma wprowadzone na kategorii w segmencie księgowym – symbol @KatNagKontoMa
  • Dokument delegacji – numer dokumentu delegacji, symbol @Dok
  • Cel – cel delegacji, symbol @Cel
  • Miejsce – miejsce docelowe, symbol @Miejsce
  • Płatnik – w ramach, którego dostępne są następujące parametry:
    • Konto płatnika 1 – konto wprowadzone na karcie płatnika (na karcie pracownika, widocznego na Płatności, która powstała w momencie rozliczania delegacji), na zakładce Dodatkowe w polu Konto 1 – symbol @KontoPlatnikaOdb
    • Konto płatnika 2 – konto wprowadzone na karcie płatnika (na karcie pracownika, widocznego na Płatności, która powstała w momencie rozliczania delegacji), na zakładce Dodatkowe w polu Konto 2 – symbol @KontoPlatnikaDost
    • Kod – kod płatnika, symbol @KodPlatnika
    • Typ – symbol @TypPlatnika
  • Podmiot – kod podmiotu, symbol @KodPodmiotu
Opisem może być:
  • Kategoria dokumentu – w ramach, której dostępne są następujące parametry:
    • Kategoria szczegółowa – symbol @KategoriaNag
    • Kategoria ogólna – symbol @KategoriaOgolnaNag
    • Opis kategorii – symbol @KategoriaOpisNag
  • Dokument delegacji – numer dokumentu delegacji, symbol @Dok
  • Cel – cel delegacji, symbol @Cel
  • Miejsce – miejsce docelowe, symbol @Miejsce
  • Płatnik – w ramach, której dostępne są:
    • Kod – kod płatnika, symbol @KodPlatnika
    • Typ – symbol @TypPlatnika
  • Podmiot – kod podmiotu, symbol @KodPodmiotu
Na pozycji schematu księgowego obok pól Konto Wn, Konto Ma można rozwinąć podmenu z następującymi makrami:
  • Kategoria dokumentu – w ramach, której dostępne są następujące parametry:
    • Konto Wn kategorii – symbol @KatNagKontoWn
    • Konto Ma kategorii – symbol @KatNagKontoMa
  • Kategoria pozycji – w ramach, której dostępne są następujące parametry:
    • Konto Wn kategorii – symbol @KatElemKontoWn
    • Konto Ma kategorii – symbol @KatElemKontoMa
  • Płatnik – w ramach, którego dostępne są:
    • Konto płatnika 1 – konto wprowadzone na karcie płatnika (na karcie pracownika, widocznego na Płatności, która powstała w momencie rozliczania delegacji), na zakładce Dodatkowe w polu Konto 1 – symbol @KontoPlatnikaOdb
    • Konto płatnika 2 – konto wprowadzone na karcie płatnika (na karcie pracownika, widocznego na Płatności, która powstała w momencie rozliczania delegacji), na zakładce Dodatkowe w polu Konto 2 – symbol @KontoPlatnikaDost
  • Podmiot – w ramach, którego dostępne są:
    • Konto 1 pracownika – konto wprowadzone na karcie pracownika wybranego na delegacji, na zakładce Dodatkowe w polu Konto 1 – symbol @KontoPracownika
    • Konto 2 pracownika – konto wprowadzone na karcie pracownika wybranego na delegacji, na zakładce Dodatkowe w polu Konto 2 – symbol @Konto2Pracownika
W Kwocie dostępne są następujące makra:
  • Płatności – symbol @KwotaPlatnosci
  • Kwota – w ramach, której dostępne są następujące parametry (tymi makrami księgowane są kwoty po kursie do rozliczenia z pracownikiem, z zakładki [Podsumowanie rozliczenia] na elemencie delegacji):
    • Kwota diety – symbol @Dieta
    • Kwota ryczałtu za nocleg – symbol @RyczaltNocleg
    • Kwota ryczałtu za dojazdy – symbol @RyczaltDojazdy
    • Kwota kosztów używania pojazdu – symbol @KosztyUzywPojazdu
    • Kwota ryczałtu za dojazdy z/do dworca, lotniska – symbol @RyczaltDojazdyDworzec
    • Kwota razem – symbol @Razem. Makro Kwota razem (@Razem) księguje kwotę widoczną w polu Suma wydatków na zakładce [Podsumowanie rozliczenia] pomniejszoną o kwotę wydatków podpiętych na zakładce [Wydatki].
  • Kwota kosztu – w ramach, której dostępne są następujące parametry (tymi makrami księgowane są kwoty po kursie poniesienia kosztu, z zakładki [Podsumowanie rozliczenia] na elemencie delegacji):
    • Kwota diety – symbol @KDieta
    • Kwota ryczałtu za nocleg – symbol @KRyczaltNocleg
    • Kwota ryczałtu za dojazdy – symbol @KRyczaltDojazdy
    • Kwota kosztów używania pojazdu – symbol @KKosztyUzywPojazdu
    • Kwota ryczałtu za dojazdy z/do dworca, lotniska – symbol @KRyczaltDojazdyDworzec
    • Kwota razem – symbol @KRazem. Makro Kwota razem (@KRazem) księguje kwotę widoczną w polu Suma wydatków na zakładce [Podsumowanie rozliczenia] pomniejszoną o kwotę wydatków podpiętych na zakładce [Wydatki].
  • Różnica kursowa – w ramach, której dostępne są następujące parametry (tymi makrami księgowana jest różnica kursowa delegacyjna, widoczna na zakładce [Podsumowanie rozliczenia] na elemencie delegacji):
    • Różnica kursowa dodatnia – symbol @RoznicaPlus
    • Różnica kursowa ujemna – symbol @RoznicaMinus
Uwaga
Makr @RoznicaPlus/ @RoznicaMinus dotyczących różnicy kursowej nie należy łączyć z innymi makrami dotyczącymi kwoty. Różnice kursowe powinny być księgowane w osobnej pozycji schematu.
W Opisie dostępne są następujące opcje:
  • Kategoria dokumentu – w ramach, której dostępne są następujące parametry:
    • Kategoria szczegółowa – symbol @KategoriaNag
    • Kategoria ogólna – symbol @KategoriaOgolnaNag
    • Opis kategorii – symbol @KategoriaOpisNag
  • Kategoria pozycji – w ramach, której dostępne są następujące parametry:
    • Kategoria szczegółowa – symbol @KategoriaElem
    • Kategoria ogólna – symbol @KategoriaOgolnaElem
    • Opis kategorii – symbol @KategoriaOpisElem
  • Płatności – waluta płatności, symbol @WalutaPlatnosci
  • Waluta – waluta etapu, symbol @WalutaEtapu
  • Dokument delegacji – numer dokumentu delegacji, symbol @Dok
  • Cel – cel delegacji, symbol @Cel
  • Miejsce – miejsce docelowe, symbol @Miejsce
  • Płatnik – w ramach, którego dostępne są:
    • Kod – symbol @KodPlatnika
    • Typ – symbol @TypPlatnika
  • Podmiot – w ramach, którego dostępne są:
    • Konto 1 pracownika – symbol @KontoPracownika
    • Konto 2 pracownika – symbol @Konto2Pracownika
    • Kod podmiotu – symbol @KodPodmiotu
W Warunku dostępne są następujące opcje:
  • Kategoria dokumentu – w ramach, której dostępne są następujące parametry:
    • Kategoria szczegółowa – symbol @KategoriaNag
    • Kategoria ogólna – symbol @KategoriaOgolnaNag
    • Opis kategorii – symbol @KategoriaOpisNag
    • Konto Wn kategorii – symbol @KatNagKontoWn
    • Konto Ma kategorii – symbol @KatNagKontoMa
  • Kategoria pozycji – w ramach, której dostępne są następujące parametry:
    • Kategoria szczegółowa – symbol @KategoriaElem
    • Kategoria ogólna – symbol @KategoriaOgolnaElem
    • Opis kategorii – symbol @KategoriaOpisElem
    • Konto Wn kategorii – symbol @KatElemKontoWn
    • Konto Ma kategorii – symbol @KatElemKontoMa
  • Płatności – waluta płatności, symbol @WalutaPlatnosci
  • Waluta – waluta etapu – symbol @WalutaEtapu
  • Dokument delegacji – numer dokumentu delegacji, symbol @Dok
  • Cel – cel delegacji, symbol @Cel
  • Miejsce – miejsce docelowe, symbol @Miejsce
  • Płatnik – w ramach, którego dostępne są:
    • Konto płatnika 1 – konto wprowadzone na karcie płatnika (na karcie pracownika, widocznego na Płatności, która powstała w momencie rozliczania delegacji), na zakładce Dodatkowe w polu Konto 1 – symbol @KontoPlatnikaOdb
    • Konto płatnika 2 – konto wprowadzone na karcie płatnika (na karcie pracownika, widocznego na Płatności, która powstała w momencie rozliczania delegacji), na zakładce Dodatkowe w polu Konto 2 – symbol @KontoPlatnikaDost
    • Kod – symbol @KodPlatnika
    • Typ – symbol @TypPlatnika
  • Podmiot – w ramach, którego dostępne są:
    • Konto 1 pracownika – konto wprowadzone na karcie pracownika wybranego na delegacji, na zakładce Dodatkowe w polu Konto 1 – symbol @KontoPracownika
    • Konto 2 pracownika – konto wprowadzone na karcie pracownika wybranego na delegacji, na zakładce Dodatkowe w polu Konto 2 – symbol @Konto2Pracownika
    • Kod podmiotu – symbol @KodPodmiotu

OPT073 - Szybki import i eksport przelewów przez bankowość internetową Pekao

Data aktualizacji: 06-07-2022

Informacje ogólne

System Comarch ERP Optima obsługuje wymianę danych z bankiem (eksport przelewów i import wyciągów) za pomocą usługi sieciowej opartej o standard Comarch Data Connect 2.0. Ten sposób wymiany danych umożliwia pobieranie wyciągów bankowych oraz historii operacji, a także eksport przelewów bezpośrednio z/do systemu bankowego, bez konieczności ręcznego przenoszenia plików pomiędzy aplikacją bankową oraz Comarch ERP Optima. Możliwe jest również pobieranie dla każdego wysłanego przelewu jego aktualnego statusu w banku (przelew może oczekiwać na realizację, zostać zrealizowany, odrzucony, anulowany itp.). Wymiana danych pomiędzy bankiem a klientem w usłudze sieciowej odbywa się przez wymianę komunikatów w formacie plików XML (standard ISO 20022) przy wykorzystaniu technologii web-services. Całość komunikacji jest zabezpieczona przez bezpieczny kanał HTTPS z wykorzystaniem dwustronnego SSL. Dzięki tym technologiom komunikacja pomiędzy Bankiem a klientem jest szyfrowana i nikt niepowołany nie ma dostępu do przesyłanych informacji. Dodatkowo dzięki dwustronnemu SSL Bank otrzymuje możliwość wstępnej weryfikacji klienta, a klient może zweryfikować, czy faktycznie podłączył się do serwera Banku. Do zabezpieczenia wymiany informacji zastosowane zostały: certyfikat transportowy, który weryfikuje Klienta i pozwala zweryfikować jego prawo do danego rachunku (rachunków) oraz certyfikat autoryzacyjny (podpis elektroniczny), którym mogą być podpisywane przelewy wysyłane do banku. Gdy przelewy nie zostaną podpisane lub ilość złożonych podpisów będzie niewystarczająca do zrealizowania – zlecenia będą oczekiwały w banku na podpis/uzupełnienie podpisu. Na liście Ogólne/Inne/Formaty przelewów dostępny jest format Pekao WebService (standardowy) do wymiany danych z bankiem Pekao. W przypadku innych banków należy zweryfikować możliwość wymiany danych poprzez usługę sieciową kontaktując się z danym bankiem. Jeżeli bank wdrożył standard Comarch Data Connect 2.0, Użytkownik może samodzielnie dodać format przelewu, za pomocą którego będzie możliwa wymiana. Na formularzu formatu przelewu na zakładce Ogólne trzeba zaznaczyć parametr Bezpośrednia wymiana danych za pomocą usługi sieciowej oraz wpisać odpowiedni adres usługi sieciowej.

Eksport za pomocą usługi sieciowej

Możliwy jest eksport przelewów krajowych (w tym do Urzędu Skarbowego i ZUS) oraz przelewów walutowych. Przelewy walutowe wysyłane są jako przelewy zagraniczne. Jest możliwość wysyłania przelewów euroregulowanych (SEPA). Jako przelewy euroregulowane wysyłane są zdarzenia rozchodowe w walucie EUR, na których zaznaczony został parametr "Przelew SEPA" Na formularzu banku w polach Format eksportu dla przelewów zwykłych oraz Format importu wyciągów bankowych można wskazać format obsługujący wymianę za pomocą usługi sieciowej. Format ten będzie podpowiadał się jako domyślny podczas eksportu i importu przelewów.

Rysunek 1. Formularz banku, zakładka "Import/ Eksport"

Po wybraniu takiego formatu na formularzu banku pojawia się zakładka Ustawienia usługi sieciowej. Na zakładce tej Użytkownik wprowadza ustawienia dotyczące przelewów walutowych oraz podpina certyfikat do komunikacji (transportowy). Został przygotowany już dla Państwa prosty kreator do generowanie certyfikatu komunikacyjnego, który umożliwi wymianę danych za pomocą usługi sieciowej. Kreator jest dostępny pod tym linkiem.

Rysunek 2. Formularz banku, zakładka "Ustawienia usługi sieciowej"

W przypadku przelewów walutowych istotne jest uzupełnienie pól: Opłatę ponosi, Osoba kontaktowa oraz Kontakt. W przypadku pola Opłatę ponosi jest możliwość wyboru trzech opcji: Zleceniodawca, Zleceniobiorca, Po równo. W przypadku niektórych rachunków opcja Zleceniobiorca może być zablokowana. Przy próbie eksportu z wybraną tą opcją pokaże się wówczas odpowiedni komunikat. W przypadku Osoba kontaktowa oraz Kontakt należy wprowadzić imię i nazwisko oraz np. numer telefonu przedstawiciela Klienta, z którym Bank będzie mógł się kontaktować. Jest to pole wymagane, gdy wysyłane są przelewy walutowe. Eksport przelewów za pomocą usługi sieciowej jest możliwy z poziomu preliminarza płatności dla wybranego konkretnego rejestru. Jeżeli wybrany rejestr ma na formularzu banku przypisany format obsługujący wymianę danych za pomocą usługi sieciowej, wtedy ikona Eksportuj polecenia przelewu ma rozwijalne menu z dwoma opcjami: Eksportuj przelewy  oraz Aktualizuj stany przelewów  . Domyślnie kliknięcie w ikonę powoduje wywołanie okna Eksport przelewów do pliku.

Rysunek 3. Okno eksportu przelewów poprzez usługę sieciową.

W konfiguracji Stanowiska/ Kasa/Bank/ Parametry znajdują się parametry: Zapisuj dane wymieniane z bankiem do plików XML oraz Zapisuj szczegółowe logi z komunikacji z bankiem. Domyślnie te parametry są odznaczone. Zaznaczenie ich spowoduje zapisywanie plików w których znajdą się informacje związane z komunikacją z bankiem. Wygenerują się one w katalogu z logami programu, w ścieżce: %appdata%\Comarch\Optima\Logs\WebserwisyBankowe. Po wybraniu opcji Eksportuj przelewy pokazuje się okno, na którym można ustawić wybrane opcje eksportu. Po ustawieniu parametrów, eksport uruchamiamy ikoną pioruna. Eksportowane są zarówno przelewy w PLN, jak również w walucie obcej. Jest możliwy również eksport przelewów zbiorczych. Istnieje także możliwość podpisania przelewów za pomocą podpisu kwalifikowanego. Pojawia się okno z możliwością wyboru właściwego certyfikatu. Jeżeli okno z wyborem certyfikatu zostanie anulowane – przelewy zostaną wysłane i będą oczekiwały na akceptację po stronie banku. W preliminarzu płatności jeżeli wybrany zostanie rejestr, który obsługuje wymianę danych poprzez usługę sieciową, wśród kolumn na liście dostępne są kolumny: Data wysłania WebService, Komunikat WebService, Data komunikatu WebService. W kolumnach tych zapisywane są informacje przy eksporcie do usługi sieciowej oraz każdorazowym sprawdzeniu stanu przelewów w banku. Jest również możliwość sprawdzenia aktualnego statusu przelewów w banku. Opcja Aktualizuj stany przelewów sprawdza stan przelewów w banku oraz aktualizuje informacje na liście w preliminarzu płatności oraz na formularzu zdarzenia.

Import za pomocą usługi sieciowej

W systemie jest również dostępny import wyciągów za pomocą usługi sieciowej. Jest możliwość importu wyciągów bankowych bądź historii operacji, jeżeli za dany okres nie jest jeszcze dostępny wyciąg bankowy. Zalecamy aby okres raportów kasowych/bankowych w systemie Comarch ERP Optima był taki sam jak okres raportów w systemie bankowym. Jeżeli okres raportu się nie pokrywa, to przy imporcie pojawi się odpowiedni komunikat wraz z pytaniem czy wykonać import historii operacji. Jeżeli wykonany został import historii operacji i następnie potem wykonywany jest ponowny import historii bądź import wyciągu, wtedy importowane są tylko te przelewy, które nie zostały jeszcze zaimportowane. Duplikaty są odrzucane. Duplikaty sprawdzane są wg następujących kryteriów:
  • Data księgowania,
  • Numer rachunku kontrahenta,
  • Kwota,
  • Opis przelewu.
Podczas importu sprawdzany jest stan początkowy raportu i porównywany ze stanem początkowym wyciągu bankowego. Jeżeli stany będą niezgodne w logu pokaże się odpowiednie ostrzeżenie. Po zakończeniu importu aktualizowany jest stan końcowy raportu i porównywany ze stanem końcowym w wyciągu. W przypadku braku zgodności również pokazywane jest odpowiednie ostrzeżenie. Na liście raportów kasowych/bankowych dla rejestru, który obsługuje import przelewów poprzez usługę sieciową, wśród kolumn (ukrytych) na liście jest kolumna [Wyciąg z banku], w której zapisywana jest informacja, czy wyciąg bankowy został pobrany.

Eksport i import przelewów za pomocą usługi sieciowej - najczęściej zadawane pytania

  • Co należy ustawić w programie Comarch ERP Optima, aby móc skorzystać z Eksportu i importu przelewów za pomocą usługi sieciowej?
Odpowiedź: Na formularzu banku (Ogólne/ Inne/ Banki) w polach Format eksportu dla przelewów zwykłych oraz Format importu wyciągów bankowych (druga zakładka) należy wskazać format obsługujący wymianę za pomocą usługi sieciowej. Następnie na 3 zakładce (Ustawienia usługi sieciowej) Użytkownik wprowadza ustawienia dotyczące przelewów walutowych oraz podpina certyfikat do komunikacji otrzymany z banku.
  • Jakie warunki powinny spełniać certyfikaty wykorzystywane podczas wysyłki aby odbyła się ona prawidłowo? 
Odpowiedź: Certyfikat komunikacyjny i autoryzacyjny powinny znajdować się w sekcji osobiste, mieć aktualną datę ważności oraz posiadać informację o obsługujących je kluczach prywatnych. Ponadto w przypadku certyfikatu autoryzacyjnego należy poprawnie zainstalować sterowniki urządzenia obsługującego certyfikat po stronie systemu operacyjnego. Jeśli bank wymaga dodatkowych certyfikatów należy upewnić się czy znajdują się one we właściwych magazynach certyfikatów oraz czy posiadają aktualną datę ważności.

Pliki do pobrania

OPT087 - Praktyczne wykorzystanie Opisu analitycznego w Księdze Handlowej

https://youtu.be/o_X3gphSgc0

Wstęp

Funkcjonalność opisu analitycznego pozwala na dokładniejsze opisanie dokumentu. Obecny opis na dokumencie lub wskazanie kategorii czasem bywa niewystarczające zwłaszcza w firmach gdzie są mocno rozbudowane koszty. Również właściciel firmy może na podstawie opisanych dokumentów analizować wszelkie koszty i przychody z nimi związane oraz robić dowolne analizy.

Wykorzystanie opisu analitycznego

W dziale księgowym przy księgowaniu dokumentów

Możemy założyć, że np. firma budowlana posiada plan kont mocno rozbudowany pod kątem kosztów. Występują konta zespołu „4” jak i zespołu „5”. Konta „5” dzielą się na poszczególne budowy a w ramach budowy jeszcze odpowiedniki kont zespołu „4”. W planie kont są konta: 401- amortyzacja 411 – zużycie materiałów 419 – energia … W menu Ogólne w kategoriach założono kategorie, które będą poszczególnymi budowami, np.: 1_19 – kolejny numer budowy w roku 2_19 Konto „5” ostatecznie powinno wyglądać tak: „5”-Kategoria-„4”, np. 501-1_19-411 501-2_19-411 … Aby uzyskać taką sytuację można właśnie wykorzystać opis analityczny oraz kategorie – gdzie wymiarami będą wymiar o typie kategoria (BUDOWY) i drugi wymiar o typie z planu kont (KONTA_4).   Przykładowo dokument w rejestrze VAT zakupu może dotyczyć dwóch różnych budów a dotyczyć tych samych kosztów zużycia energii. Na dokumencie można również wykorzystać kategorię nagłówka, która byłaby np. numerem konta „5”. Czyli na liście kategorii pojawiłyby się również „5”. Ewentualnie zamiennie kategoria, która jest „4” a wymiar „5”. Opis analityczny takiego dokumentu mógłby wyglądać następująco: Budowa 1 – 45% kosztów a Budowa 2 pozostałe 55% kosztów. W schemacie księgowym w pozycji Konto można wpisać następujące wyrażenie: @KategoriaNag+’-’+@OpisAnalitycznyElement(’BUDOWY’)+’-’+@OpisAnalitycznyElement(’KONTA_4′) W pozycji Kwota należy wybrać opcję Opis analityczny – Kwota opisu – @OpisAnalitycznyKwota Jeśli mamy w Konfiguracji Firmy – Księgowość – Księgowość kontowa ustawione automatyczne zakładanie kont niesłownikowych to po zaksięgowaniu pojawi się w planie kont konto: 501-1_19-411 W powyższym przykładzie w schemacie odwołujemy się do nazwy elementu wymiaru @OpisAnalitycznyElement – 1_19 i 411. Można również odwołać się do segmentu konta podpiętego na kategorii konkretnej budowy wykorzystanym później w wymiarze BUDOWY jak i bezpośrednio do konta księgowego „4”. Wtedy w schemacie w koncie można wpisać poniższą formułę: @KategoriaNag+’-’+@OpisAnalitycznyKonto1(’BUDOWY’)+’-’+@OpisAnalitycznyKonto1(’KONTA_4′) Można również zamiast zakładania poszczególnych kategorii dla każdej budowy zdefiniować wymiar o typie Opisowy o nazwie BUDOWY i do niego dodawać kolejne elementy, które będą poszczególnymi budowami. Schemat księgowy pozostanie taki sam.

Analiza kondycji firmy albo poszczególnych projektów prowadzonych przez firmę

  Firma zaangażowana jest w realizacje różnych projektów, które są z kolei realizowane przez różne zespoły w różnych oddziałach. Załóżmy, że nad projektem1 pracuje zespół1 w Lublinie i 2 zespoły (zespół2 i zespół 3) w Krakowie. Nad projektem2 tylko zespół1 i zespół3 w Krakowie. Część osób z zespołu1 pracuje w Krakowie a część w Lublinie.   W takim przypadku można utworzyć wymiary: PROJEKTY – typ opisowy – elementy P1, P2 ODDZIAŁ – typ opisowy – elementy LUBLIN, KRAKÓW ZESPÓŁ – typ opisowy – elementy Z1, Z2, Z3   Firma zakłada poniższy podział kosztów na projekty, zespoły i oddziały: – podział na zespoły: Z1 40%, Z2 50%, Z3 10%, – podział na projekty: P2 10%, P1 90% – podział na lokalizacje: Kraków 65%, Lublin 35%.   Aby rozpisać przytoczony przykład można zastosować następujące rozbicie: Zespół      Projekt      Oddział           Procent Z1              P1                LUBLIN          35% Z2              P1                KRAKÓW       50% Z3             P1              KRAKÓW       5% Z1              P2                KRAKÓW       5% Z3              P2                KRAKÓW        5%   Po wykonaniu analizy z poziomu Analiz BI lub po zaksięgowaniu dokumentu na poszczególne konta odpowiedzialne za zespoły, projekty czy lokalizacje możemy stwierdzić jaka wartość kosztów zespołu1 pracującego w Krakowie przypada na np. projekt 2. Mając fakturę na 35000 możemy ją rozpisać następująco: W naszym przypadku 5% kosztów dotyczy Z1 z Krakowa pracującego nad P2, czyli po wyliczeniu będzie to 1750.

Jak zdefiniować opis analityczny w programie Optima?

W tym rozdziale zostaną opisane podstawowe funkcje opisu analitycznego. W menu Ogólne po naciśnięciu przycisku  użytkownik ma możliwość dodania wymiarów służących do opisania słowników oraz dokumentów. W programie dostępne są predefiniowane wymiary:
Lista predefiniowanych wymiarów analitycznych
Lista wymiarów może składać się z dowolnej liczby poziomów, gdzie pierwszy poziom to wymiar, kolejne to podwymiary, a ostatni poziom w przypadku wymiarów opisowych to elementy. Każdy wymiar może posiadać dowolną ilość podwymiarów, a w ramach podwymiarów opisowych dowolną ilość elementów. Istnieje możliwość zwijania listy  oraz rozwijania listy. Kod wymiaru analitycznego/ podwymiaru/ elementu wymiaru powinien być unikalny w obrębie jednego poziomu. Kod wymiaru analitycznego nie może zaczynać się od cyfry, wyrażeń typu AND, OR, ALL itp. Po wpisaniu w kodzie znaków: , ,, -, ‘,’’,<>, [], (), ^, ~, !, ?, @, #, %, &, $, *, |, /\, +, = lub spacji, są one zamieniane na znak podkreślenia dolnego. Kod wymiaru będzie nieaktywny jeżeli jego element zostanie wybrany na dokumencie/słowniku. Jeżeli wymiar będzie miał podwymiar i dopiero ten podwymiar będzie miał element to zablokowany będzie kod podwymiaru a wymiar będzie ciągle aktywny do zmiany. Po rozwinięciu strzałki obok przycisku plusa oraz w menu kontekstowym dostępnym pod prawym przyciskiem myszy widoczne są opcje:
  • Dodaj wymiar pozwala na dodanie formularza wymiaru analitycznego,
  • Dodaj podwymiar opcja aktywna jeżeli na liście wskazano wymiar lub podwymiar,
  • Dodaj element – opcja aktywna jeżeli na liście wskazano wymiar lub podwymiar opisowy.

Wymiar

Formularz wymiaru analitycznego
Na formularzu wymiaru należy określić typu wymiaru:
  • Opisowy– w przypadku wymiaru opisowego istnieje możliwość dodania elementu bezpośrednio do wymiaru (z pominięciem podwymiaru).
  • Z planu kont – pozwala na wskazanie konta z planu kont bieżącego okresu obrachunkowego (zarówno syntetyki, jak i analityki). Jeżeli wybrane zostanie konto syntetyczne to na dokumencie/słowniku lista elementów zostanie zawężona do tego konta syntetycznego i wszystkich jego analityk. Jeżeli użytkownik nie wskaże żadnego konta to na dokumencie/słowniku widoczne będą wszystkie konta z bieżącego okresu obrachunkowego.odpoczynku dobowego i tygodniowego,
  • Kategoria – pozwala na wskazanie kategorii ogólnej lub szczegółowej z listy kategorii. Jeżeli wybrana zostanie kategoria główna to na dokumencie/słowniku lista elementów zostanie zawężona do tej kategorii i jej kategorii podrzędnych. Jeżeli użytkownik nie wskaże żadnej kategorii to na dokumencie/słowniku widoczna będzie pełna lista kategorii. Nie można usunąć z programu kategorii użytej w definicji wymiaru.zakazu pracy w niedziele i święta (a gdy jest dozwolona praca w niedzielę – wyznaczenie jednej na 4 tygodnie niedzieli wolnej od pracy).
  • Słownik – pozwala na wybór jednego ze słowników: Kontrahent, Bank, Pracownik, Wspólnik, Środek trwały, Towar lub Urząd. Jeżeli wybrany zostanie konkretny element słownika to na dokumencie/słowniku lista elementów zostanie zawężona do tej konkretnej pozycji. Jeżeli użytkownik nie wskaże żadnego elementu słownika to na dokumencie/słowniku widoczna będzie pełna lista elementów danego słownika.
Zmiana typu wymiaru nie jest możliwa jeżeli wykorzystano jego element do opisania dokumentu/słownika, a w przypadku wymiaru o typie Opisowy nie jest również możliwa jeżeli dodano do niego podwymiar/element. Na formularzu wymiaru użytkownik powinien wskazać, na jakich dokumentach/słownikach wymiar może zostać wykorzystany. Użytkownik ma możliwość oznaczenia wymiaru jako wymaganego. Powoduje to konieczność wybrania jego elementu podczas dodawania opisu analitycznego na dokumencie/słowniku. Jeżeli wymiar oznaczony został jako wymagany to podczas próby zapisania pozycji bez wskazanego elementu pojawia się komunikat: Opis analityczny jest niepełny. Nie wybrano elementu dla wymiaru [Kod wymiaru].  Podczas próby dodania wymiaru o kodzie WYDZIAŁ pojawia się komunikat: Nie można dodać wymiaru o kodzie [WYDZIAŁ], gdyż jest zarezerwowany dla opisu analitycznego w płacach.Analogicznie dla wymiaru o kodzie PROJEKT i LOKALIZACJA pojawia się odpowiedni komunikat.

Podwymiar

Podczas dodawania podwymiaru domyślnie zaznaczany jest typ Opisowy. Do wymiarów o typie Opisowy można dodawać kolejnej podwymiary nawet jeżeli wymiar/podwymiar posiada elementy.

Elementy wymiaru

Elementy wymiaru można dodawać tylko dla wymiarów/podwymiarów o typie Opisowy. Na formularzu elementu istnieje możliwość wskazania konta księgowego, które istnieje w bieżącym okresie obrachunkowym oraz możliwe jest wpisanie „z ręki” konta, które nie istnieje w planie kont, a może posłużyć do przyszłego księgowania.
Formularz elementu wymiaru opisowego
Użytkownik ma możliwość seryjnego usunięcia z listy wymiarów tych pozycji, które nie zostały wykorzystane w programie do wygenerowania opisu analitycznego. Nie ma możliwości usunięcia domyślnie zdefiniowanych wymiarów/podwymiarów. W przypadku pozycji wykorzystanych do opisania dokumentów/słowników można oznaczyć je jako nieaktywne. Jeżeli na formularzu wymiaru/ podwymiaru/ elementu zaznaczono parametr Nieaktywny to jest on widoczny na liście w kolorze czerwonym pod warunkiem wskazania w filtrze opcji Nieaktywne. Zaznaczenie/odznaczenie parametru przenosi się z gałęzi nadrzędnej na podrzędną. Nie ma możliwości odznaczenia parametru na gałęzi podrzędnej, jeżeli został on zaznaczony na gałęzi nadrzędnej. Możliwe jest zaznaczenie parametru na gałęzi podrzędnej, bez zaznaczenia na gałęzi nadrzędnej.

Generowanie opisu analitycznego

Opis analityczny dla słownika/dokumentu można wprowadzić z listy dokumentów/słowników lub z poziomu otwartego formularza dokumentu/słownika po naciśnięciu przycisku  lub za pomocą skrótu klawiaturowego <Ctrl>+<F7> . Na oknie opisu analitycznego nie można usunąć żadnej kolumny.

Opis analityczny na słownikach

Opis analityczny na formularzu konta księgowego Dodając opis analityczny na słowniku należy wskazać co najmniej jeden element dla dowolnego wymiaru. Nie można zapisać pozycji bez wskazanych elementów. Wprowadzając opis na słowniku program pilnuje poprawności opisu, tzn. słownik musi być opisany w 100% – czyli suma procentów na słowniku musi wynosić 100%. W przeciwnym wypadku nie będzie możliwości zapisania opisu na słowniku. Przy próbie zapisu opisu pojawi się odpowiedni komunikat. Opis analityczny dodany na koncie syntetycznym przenoszony jest na wszystkie jego konta analityczne (w tym na konta dodane już po uzupełnieniu opisu analitycznego na koncie nadrzędnym). Istnieje możliwość jego edycji. Opis analityczny przenosi się podczas dodawania nowego okresu obrachunkowego na podstawie kont z poprzedniego okresu oraz podczas aktualizacji planu kont z poprzedniego okresu, ale tylko w stosunku do kont nowo dodawanych. Dla kont analitycznych nowo dodawanych opis przenoszony jest zawsze z syntetyki danego konta. Zmiana opisu analitycznego na koncie syntetycznym powoduje zmianę opisu na wszystkich jego kontach analitycznych (ewentualne indywidualne ustawienia konta analitycznego są usuwane). Opis analityczny nadawany jest również w momencie zakładania konta poprzez grupę kont – przenosi się z konta syntetycznego, do którego dodano analitykę. Opis analityczny dodany na grupie towarowej przenosi się na jej podgrupy oraz na wszystkie towary znajdujące się w danej grupie. Podczas dodawania nowego towaru opis analityczny przenosi się z grupy wskazanej jako domyślna dla towaru. Jeżeli towar należy do wielu grup towarowych to opis na towar przenosi się z ostatnio modyfikowanej grupy, do której towar należy. Usunięcie opisu z grupy towarowej usuwa opis z jej podgrup towarowych oraz z towarów należących do danej grupy.

Opis analityczny na dokumentach

W programie Comarch ERP Optima istnieje możliwość dodania opisu analitycznego do następujących dokumentów:
  • Dokument TaxFree,
  • Dokument wewnętrzny sprzedaży,
  • Dokument wewnętrzny zakupu,
  • Ewidencja kosztów,
  • Ewidnecja przychodów,
  • Faktury sprzedaży,
  • Faktury zakupu,
  • Kompletacja przyjęcie produktów,
  • Kompletacja rozchód składników
  • Paragony,
  • Przesunięcia międzymagazynowe,
  • Przyjęcie kaucji,
  • Przyjęcie wewnętrzne,
  • Przyjęcie zewnętrzne,
  • Rejestr sprzedaży,
  • Rejestr zakupu,
  • Rozchód wewnętrzny,
  • Wydanie kaucji,
  • Wydanie zewnętrzne.
Aby „ręcznie” opisać dokument należy:
  1. Dodać pozycję opisu wybierając w kolumnie Pozycja odpowiednią wartość, którą użytkownik chce opisać z dokumentu.
  2. Uzupełnić wymiary elementami.
  3. Określić, jaki procent danej pozycji ma zostać w ten sposób opisany – wyliczy się wartość lub:
  4. Wpisać wartość pozycji, co spowoduje automatyczne wyliczenie procentu.
Aby wygenerować opis analityczny na podstawie słownika należy nacisnąć ikonę    lub przycisk <F8>. Okno opisu analitycznego na dokumencie zawiera domyślne kolumny: Pozycja, Procent oraz Wartość. Dla każdego typu dokumentu w kolumnie Pozycja do wyboru są inne wartości. Nie można zapisać opisu analitycznego na dokumencie bez uzupełnienia kolumny Pozycja. W programie istnieje kontrola 100% oraz wartości dokumentu lub pozycji – sumarycznie musi się zgadzać z wartością dokumentu lub pozycji. Jeżeli ze wskazanego procentu podczas podziału kwoty wyniknie różnica groszowa to różnica groszowa jest dodawana do ostatniej pozycji z kwotą. Analogicznie jeżeli ze wskazanej wartości podczas podziału procentu wyniknie konieczność zaokrąglenia procentu to jest on aktualizowany w ostatniej pozycji. Po zmianie kwot na pozycji, dodaniu nowej pozycji lub usunięciu pozycji na dokumencie należy ponownie wprowadzić opis analityczny. Opis analityczny na dokumencie zapisywany jest w bazie danych w momencie zapisywania dokumentu. Jeżeli dokument został zablokowany przed zmianami to opis analityczny można dodać tylko z poziomu listy dokumentów.
Uwaga
Dodanie opisu analitycznego na dokumencie, a następnie zapisanie dokumentu nie powoduje modyfikacji w polach WprowadziłZmodyfikował.
 

Opis na podstawie słownika lub ręczny

Dokumenty handlowe oraz magazynowe Użytkownik może uzupełnić opis analityczny na dokumentach handlowych oraz magazynowych „ręcznie” lub wygenerować go za pomocą ikony   lub przycisku <F8> na podstawie zdefiniowanego wcześniej opisu na towarze. Aby opis analityczny ze słownika (towaru, konta) w całości przeniósł się na dokument należy ustawić takie same wymiary na słowniku, jak i na dokumencie, na którym wybierany jest dany słownik. Jeżeli wymiary będą różne to na dokument zostanie przeniesiony tylko opis z elementami dla wymiarów, które pokrywają się na słowniku i na dokumencie. Ponowne użycie ikony pioruna powoduje nadpisanie poprzedniego opisu nowo wygenerowanym. Na dokumentach handlowych oraz magazynowych użytkownik ma możliwość wyboru pozycji:
  • Pozycja/Lp/Kod towaru/[Kwota netto pozycji],
  • Pozycja/Dokument/[Kwota netto dokumentu].
Na dokumencie WZ użytkownik dodatkowo ma możliwość wyboru pozycji:
  • Pozycja/Koszt_zakupu/Lp/Kod towaru/[Kwota kosztu zakupu pozycji],
  • Pozycja/Koszt_zakupu/Dokument/[Kwota kosztu zakupu dokumentu.
Uwaga
Opis analityczny na dokumencie WZ należy wygenerować dopiero po zapisaniu dokumentu. Wynika to z tego, iż w przypadku WZ koszt zakupu wyliczany jest po zapisaniu dokumentu. Ponadto jeżeli użytkownik dokona zmian na dokumencie WZ (np. zmieni ilość) to po zapisaniu dokumentu powinien zmodyfikować opis analityczny (nie aktualizuje się on automatycznie).
Opisu analitycznego nie można generować dla faktur pierwotnych, faktur korygujących dane, faktur anulowanych oraz not korygujących. Jeżeli przed anulowaniem dokumentu dodano do niego opis analityczny, w momencie anulowania faktury jest on usuwany. Rejestr VAT zakupu oraz sprzedaży Opis analityczny na dokumentach w rejestrze VAT należy uzupełnić „ręcznie”. Na dokumencie w rejestrze VAT zakupu oraz sprzedaży użytkownik ma możliwość wyboru pozycji:
  • Pozycja/Lp/Netto, Stawka VAT/[Kwota netto pozycji],
  • Pozycja/Dokument/Netto/[Kwota netto dokumentu],
  • Pozycja/Lp/Kwota dodatkowa/[Kwota z pozycji kwot dodatkowych].
Na oknie opisu analitycznego związanego z dokumentem w rejestrze VAT zakupu w kolumnie Pozycja wyświetlane są poszczególne pozycje w wartości zależnej od wybranego rodzaju odliczeń:
  • odliczenia Tak i Warunkowo:
    • Pozycja/Lp/Netto, Stawka VAT/[Kwota netto pozycji],
    • Pozycja/Lp/Koszt, Stawka VAT/[Kwota netto pozycji],
    • Pozycja/Lp/VAT_KOSZT, Stawka VAT/[0.00].
  • odliczenia Nie:
    • Pozycja/Lp/Netto, Stawka VAT/[Kwota netto pozycji],
    • Pozycja/Lp/Koszt, Stawka VAT/[Kwota brutto pozycji],
    • Pozycja/Lp/VAT_KOSZT, Stawka VAT/[Kwota VAT pozycji].
Ewidencja dodatkowa kosztów oraz przychodów Opis analityczny na dokumentach w ewidencji dodatkowej należy uzupełnić „ręcznie”. Na dokumencie w ewidencji dodatkowej kosztów oraz przychodów użytkownik ma możliwość wyboru pozycji:
  • Pozycja/Dokument/[Kwota dokumentu],
  • Pozycja/Lp/Kwota dodatkowa/[ Kwota z pozycji kwot dodatkowych].
Opis analityczny można uzupełnić również na dokumentach zaksięgowanych, z uzupełnioną predekretacją, wyeksportowanych lub przekształconych do wewnętrznych. Dokument polecenia księgowania Na dokumencie PK Użytkownik może uzupełnić opis analityczny „ręcznie” lub wygenerować za pomocą ikony   lub przycisku <F8> na podstawie zdefiniowanego wcześniej opisu na koncie księgowym. Na dokumencie PK użytkownik ma możliwość wyboru pozycji:
  • Pozycja/Lp/Numer konta/[Kwota pozycji] Strona Wn,
  • Pozycja/Lp/Numer konta/[Kwota pozycji] Strona Ma.
Uwaga
Jeżeli na dokumencie dodano opis analityczny związany z wymiarem, na formularzu którego odznaczono później dany typ dokumentu to na tym dokumencie nie ma możliwości modyfikacji istniejących pozycji opisu analitycznego. Użytkownik może je usunąć, a następnie wprowadzić nowe. Na nowych dokumentach tego wymiaru już nie będzie widać ale na dokumentach, które były wcześniej wprowadzone i opisane tym wymiarem nadal będzie można podglądnąć jakimi elementami ten wymiar był opisany.

OPT072 - Szybki import i eksport przelewów przez bankowość internetową BNP Paribas

Data aktualizacji: 06-07-2022

Informacje ogólne

System Comarch ERP Optima obsługuje wymianę danych z bankiem (eksport i import przelewów) za pomocą usługi sieciowej opartej o standard Comarch Data Connect 2.0. Ten sposób wymiany danych umożliwia pobieranie wyciągów bankowych oraz historii operacji, a także eksport przelewów bezpośrednio z/do systemu bankowego, bez konieczności ręcznego przenoszenia plików pomiędzy aplikacją bankową oraz Comarch ERP Optima. Możliwe jest również pobieranie dla każdego wysłanego przelewu jego aktualnego statusu w banku (przelew może oczekiwać na realizację, zostać zrealizowany, odrzucony, anulowany itp.). Wymiana danych pomiędzy bankiem a klientem w usłudze sieciowej odbywa się przez wymianę komunikatów w formacie plików XML (standard ISO 20022) przy wykorzystaniu technologii web-services. Całość komunikacji jest zabezpieczona przez bezpieczny kanał HTTPS z wykorzystaniem dwustronnego SSL. Dzięki tym technologiom komunikacja pomiędzy Bankiem a klientem jest szyfrowana i nikt niepowołany nie ma dostępu do przesyłanych informacji. Dodatkowo dzięki dwustronnemu SSL Bank otrzymuje możliwość wstępnej weryfikacji klienta, a klient może zweryfikować, czy faktycznie podłączył się do serwera Banku. Do zabezpieczenia wymiany informacji zastosowane zostały: certyfikat transportowy, który weryfikuje Klienta i pozwala zweryfikować jego prawo do danego rachunku (rachunków) oraz certyfikat autoryzacyjny (podpis elektroniczny), którym mogą być podpisywane przelewy wysyłane do banku. Gdy przelewy nie zostaną podpisane lub zostaną podpisane przez nieuprawnioną osobę – zlecenia będą oczekiwały w banku na akceptację uprawnionej osoby. Na liście Ogólne/ Inne/ Formaty przelewów dostępny jest format BNP Paribas WebService (standardowy) do wymiany danych z bankiem BNP Paribas. W przypadku innych banków należy zweryfikować możliwość wymiany danych poprzez usługę sieciową kontaktując się z danym bankiem. Jeżeli bank wdrożył standard Comarch Data Connect 2.0, Użytkownik może samodzielnie dodać format przelewu, za pomocą którego będzie możliwa wymiana. Na formularzu formatu przelewu na zakładce Ogólne trzeba zaznaczyć parametr Bezpośrednia wymiana danych za pomocą usługi sieciowej oraz wpisać odpowiedni adres usługi sieciowej.

Eksport za pomocą usługi sieciowej

Możliwy jest eksport przelewów krajowych (w tym do Urzędu Skarbowego i ZUS) oraz przelewów walutowych. Przelewy walutowe wysyłane są jako przelewy zagraniczne. Jest możliwość wysyłania przelewów euroregulowanych (SEPA). Jako przelewy euroregulowane wysyłane są zdarzenia rozchodowe w walucie EUR, na których zaznaczony został parametr "Przelew SEPA" Na formularzu banku w polach Format eksportu dla przelewów zwykłych oraz Format importu wyciągów bankowych można wskazać format obsługujący wymianę za pomocą usługi sieciowej. Format ten będzie podpowiadał się jako domyślny podczas eksportu i importu przelewów.

Rysunek 1. Formularz banku, zakładka "Import/ Eksport".

Po wybraniu takiego formatu na formularzu banku pojawia się zakładka [Ustawienia usługi sieciowej]. Na zakładce tej Użytkownik wprowadza ustawienia dotyczące przelewów walutowych oraz podpina certyfikat do komunikacji.

Rysunek 2. Formularz banku, zakładka "Ustawienia usługi sieciowej".

W przypadku przelewów walutowych istotne jest uzupełnienie pól: Opłatę ponosi, Osoba kontaktowa oraz Kontakt. W przypadku pola Opłatę ponosi jest możliwość wyboru trzech opcji: Zleceniodawca, Zleceniobiorca, Po równo. W przypadku niektórych rachunków opcja Zleceniobiorca może być zablokowana. Przy próbie eksportu z wybraną tą opcją pokaże się wówczas odpowiedni komunikat. W przypadku Osoba kontaktowa oraz Kontakt należy wprowadzić imię i nazwisko oraz np. numer telefonu przedstawiciela Klienta z którym można się kontaktować. Jest to pole wymagane gdy wysyłane są przelewy walutowe. Eksport przelewów za pomocą usługi sieciowej jest możliwy z poziomu preliminarza płatności dla wybranego konkretnego rejestru. Jeżeli wybrany rejestr ma na formularzu banku przypisany format obsługujący wymianę danych za pomocą usługi sieciowej, wtedy ikona Eksportuj polecenia przelewu ma rozwijalne menu z dwoma opcjami: Eksportuj przelewy  oraz Aktualizuj stany przelewów Domyślnie kliknięcie w ikonę powoduje wywołanie okna Eksport przelewów do pliku.

Rysunek 3. Okno eksportu przelewu poprzez usługę sieciową.

W konfiguracji Stanowiska/ Kasa/Bank/ Parametry znajdują się parametry: Zapisuj dane wymieniane z bankiem do plików XML oraz Zapisuj szczegółowe logi z komunikacji z bankiem. Domyślnie te parametry są odznaczone. Zaznaczenie ich spowoduje zapisywanie plików w których znajdą się informacje związane z komunikacją z bankiem. Wygenerują się one w katalogu z logami programu, w ścieżce: %appdata%\Comarch\Optima\Logs\WebserwisyBankowe. Po wybraniu opcji Eksportuj przelewy pokazuje się okno, na którym można ustawić wybrane opcje eksportu. Po ustawieniu parametrów, eksport uruchamiamy ikoną pioruna. Eksportowane są zarówno przelewy w PLN jak również w walucie obcej. Jest możliwy również eksport przelewów zbiorczych. Istnieje także możliwość podpisania przelewów za pomocą podpisu kwalifikowanego. Pojawia się okno z możliwością wyboru właściwego certyfikatu. Jeżeli okno z wyborem certyfikatu zostanie anulowane – przelewy zostaną wysłane i będą oczekiwały na akceptację po stronie banku. W preliminarzu płatności jeżeli wybrany zostanie rejestr, który obsługuje wymianę danych poprzez usługę sieciową wśród kolumn na liście dostępne są kolumny: Data wysłania WebService, Komunikat WebService, Data komunikatu WebService. W kolumnach tych zapisywane są informacje przy eksporcie do usługi sieciowej oraz każdorazowym sprawdzeniu stanu przelewów w banku. Jest również możliwość sprawdzenia aktualnego statusu przelewów w banku. Opcja Aktualizuj stany przelewów sprawdza stan przelewów w banku oraz aktualizuje informacje na liście w preliminarzu płatności oraz na formularzu zdarzenia.

Import za pomocą usługi sieciowej

W systemie jest również dostępny import przelewów za pomocą usługi sieciowej. Jest możliwość importu wyciągów bankowych bądź historii operacji, jeżeli za dany okres nie jest jeszcze dostępny wyciąg bankowy. Zalecamy aby okres raportów kasowych/bankowych w systemie Comarch ERP Optima był taki sam jak okres raportów w systemie bankowym. Jeżeli okres raportu się nie pokrywa to przy imporcie pojawi się odpowiedni komunikat wraz z pytaniem czy wykonać import historii operacji. Jeżeli wykonany został import historii operacji i następnie potem wykonywany jest ponowny import historii bądź import wyciągu wtedy importowane są tylko te przelewy, które nie zostały jeszcze zaimportowane. Duplikaty są odrzucane. Duplikaty sprawdzane są wg następujących kryteriów:
  • Data księgowania,
  • Numer rachunku kontrahenta,
  • Kwota,
  • Opis przelewu.
Podczas importu sprawdzany jest stan początkowy raportu i porównywany ze stanem początkowym wyciągu bankowego. Jeżeli stany będą niezgodne w logu pokaże się odpowiednie ostrzeżenie. Po zakończeniu importu aktualizowany jest stan końcowy raportu i porównywany ze stanem końcowym w wyciągu. W przypadku braku zgodności również pokazywane jest odpowiednie ostrzeżenie. Na liście raportów kasowych/bankowych dla rejestru, który obsługuje import przelewów poprzez usługę sieciową, wśród kolumn (ukrytych) na liście jest kolumna Wyciąg z banku, w której zapisywana jest informacja, czy wyciąg bankowy został pobrany.

Eksport i import przelewów za pomocą usługi sieciowej - najczęściej zadawane pytania

  • Co należy ustawić w programie Comarch ERP Optima, aby móc skorzystać z Eksport i import przelewów za pomocą usługi sieciowej?
Odpowiedź: Na formularzu banku (Ogólne/ Inne/ Banki) w polach Format eksportu dla przelewów zwykłych oraz Format importu wyciągów bankowych (druga zakładka) należy wskazać format obsługujący wymianę za pomocą usługi sieciowej. Następnie na 3 zakładce [Ustawienia usługi sieciowej] Użytkownik wprowadza ustawienia dotyczące przelewów walutowych oraz podpina certyfikat do komunikacji otrzymany z banku.
  • Jakie warunki powinny spełniać certyfikaty wykorzystywane podczas wysyłki aby odbyła się ona prawidłowo? 
Odpowiedź: Certyfikat komunikacyjny i autoryzacyjny powinny znajdować się w sekcji osobiste, mieć aktualną datę ważności oraz posiadać informację o obsługujących je kluczach prywatnych. Ponadto w przypadku certyfikatu autoryzacyjnego należy poprawnie zainstalować sterowniki urządzenia obsługującego certyfikat po stronie systemu operacyjnego. Jeśli bank wymaga dodatkowych certyfikatów należy upewnić się czy znajdują się one we właściwych magazynach certyfikatów oraz czy posiadają aktualną datę ważności

OPT075 - Szybki import i eksport przelewów przez bankowość internetową banku Citi Handlowy

Data aktualizacji: 30-06-2022

Jak skonfigurować wymianę danych z bankiem Citi Handlowy?

Wymiana danych z bankiem Citi Handlowy dostępna jest w systemie Comarch ERP Optima od wersji 2020.6.1. W systemie Comarch ERP Optima na formularzu banku z którego wysyłane będą przelewy należy:
  • uzupełnić informację o kodzie SWIFT
  • ustawić format wymiany danych
  • podpiąć certyfikaty i uzupełnić Client ID i Client secret
Na formularzu banku na zakładce [1. Ogólne] należy sprawdzić czy uzupełniono pole kod SWIFT. Podane kodu SWIFT jest wymagane w przypadku wykonywania przelewów z rachunku w banku Citi Handlowy. Aby prawidłowo sparametryzować kod SWIFT prosimy o kontakt z bankiem Citi Handlowy. Na zakładce [2 Import / Eksport]   formularza banku w polach:
  • Format importu dla wyciągów bankowych
  • Format eksportu dla przelewów zwykłych
  • Format eksportu dla MPP
wybieramy właściwy dla banku format obsługujący wymianę za pomocą usługi sieciowej.  W naszym przypadku dla banku Citi Handlowy dostępny jest format Citi Handlowy – API (standardowy).  Wybrany przez nas format będzie później podpowiadany jako domyślny format podczas eksportu i importu przelewów.
Formularz banku, zakładka [2 Import / Eksport]
Po wybraniu formatu Citi Handlowy – API (standardowy) na formularzu banku pojawia się dodatkowa zakładka [3 Ustawienia usługi sieciowej]. Na zakładce tej wprowadzamy ustawienia dotyczące:
  • przelewów walutowych – uzupełniamy informację, kto ponosi opłatę za przelewy walutowe,
  • podpinamy certyfikaty do komunikacji z bankiem. Certyfikaty powinny mieć aktualną datę ważności, posiadać informacje o obsługujących je kluczach prywatnych. Należy upewnić się czy certyfikat znajduje się we właściwym magazynie certyfikatów.
 
Formularz banku, zakładka [3 Ustawienia usługi sieciowej]
Do poprawnej komunikacji z bankiem Citi Handlowy potrzebne jest wskazanie na formularzu banku czterech certyfikatów. Są to:
  • Client Signing and Encryption Certificate – certyfikat zakupiony przez Użytkownika i zainstalowany w systemie.
  • Citi Encryption Certificate – certyfikat dostarczany przez bank.
  • Citi Signing Certificate – certyfikat dostarczany przez bank.
  • Client SSL Certificate – certyfikat zakupiony przez Użytkownika i zainstalowany w systemie.
  Dany rodzaj certyfikatu może pojawić się na liście certyfikatów dla banku Citi Handlowy tylko raz. Po wciśnięciu przycisku <Insert> lub  pojawi się okno do wskazania danego certyfikatu. W nazwie okna wyświetlana jest informacja o aktualnie dodawanym certyfikacie. Certyfikaty można też dodawać w dowolnej kolejności poprzez jego wybór z menu kontekstowego, które dostępne jest po wciśnięciu strzałki obok plusa . W sytuacji, gdy dla Citi Encryption Certificate lub Citi Signing Certificate wskażemy inny plik niż *.pem pojawi się komunikat błędu: Wskazano niepoprawny plik z certyfikatem. Certyfikat ten nie pojawi się na liście certyfikatów dla banku Citi Handlowy. Użytkownik powinien wskazać poprawny plik, który otrzymał z banku.
  • Uzupełniamy Client ID i Client secret. Informacje te dostarczane są przez bank Citi Handlowy.
Korzystanie z usługi Citi Handlowy – API wymaga konfiguracji w systemie banku Citi Handlowy. W przypadku chęci skorzystania z usługi prosimy o kontakt z Działem Pomocy Technicznej banku Citi Handlowy pod nr. tel. 801 343 978, +48 (22) 690 15 21 (Adres mailowy: helpdesk.ebs@citi.com)

Eksport za pomocą usługi sieciowej

Możliwy jest eksport przelewów krajowych (w tym MPP, do Urzędu Skarbowego i ZUS) oraz przelewów walutowych. Aby przelew był wysłany jako przelew natychmiastowy (Express Elixir), na płatności należy ustawić Priorytet: Wysoki. Przelewy walutowe wysyłane są jako przelewy zagraniczne lub przelewy SEPA. W celu wysłania przelewu SEPA zdarzenie w preliminarzu płatności musi być:
  • zdarzeniem rozchodowym
  • waluta zdarzenia to EURO
  • na zdarzeniu zaznaczono parametr „Przelew SEPA”
  Eksport przelewów za pomocą usługi sieciowej wykonujemy z poziomu preliminarza płatności. W preliminarzu płatności na zakładce [1 Płatności] należy:
  • wybrać rejestr, który dotyczy banku Citi Handlowego z ustalonym formatem wymiany danych za pomocą usługi sieciowej (w naszym przypadku Citi Handlowy – API)
  • na liście powinny wyświetlać się tylko zdarzenia nierozliczone lub rozliczone częściowo
 
Preliminarz płatności – parametry
Po spełnieniu tych warunków w preliminarzu płatności będzie dostępna ikona Eksportuj polecenia przelewu Domyślnie kliknięcie w ikonę powoduje wywołanie okna Eksport przelewów do pliku.

Okno eksportu przelewów poprzez usługę sieciową

Po wybraniu opcji Eksportuj przelewy pokazuje się okno, na którym można ustawić wybrane opcje eksportu. Data przelewu – do wyboru mamy cztery opcje: dzisiejsza, termin płatności, data realizacji, inna (samodzielnie ustalona). Przelewy zbiorczo wg podmiotów – po zaznaczeniu tej opcji przelewy zostaną pogrupowane wg podmiotu, numeru rachunku bankowego (wypełnionego na zdarzeniu) oraz waluty i wysyłane jako jeden, zbiorczy przelew. Po zaznaczeniu opcji Grupuj wg dat utworzonych zostanie tyle zbiorczych przelewów, ile jest różnych dat (terminów płatności/ dat realizacji/ dat dokumentu). Eksportuj wszystkie linie opisu do banku – parametr jest widoczny po zaznaczeniu Przelewy zbiorczo wg podmiotów. Parametr ten spowoduje, że w zbiorczym przelewie będziemy starali się umieścić wszystkie uzupełnione linie opisu do banku odczytane z agregowanych przelewów. Dziel przelewy wg długości opisu – parametr jest widoczny po zaznaczeniu Przelewy zbiorczo wg podmiotów. Spowoduje on, że program utworzy dla danego podmiotu kilka przelewów zbiorczych, przy czym na każdym z nich będzie umieszczony pełny opis do banku z przelewów cząstkowych. Parametr Dziel przelewy wg długości opisu może być stosowany razem z pozostałymi parametrami dotyczącymi przelewów zbiorczych. Eksport uruchamiamy ikoną pioruna . Eksportowane są zarówno przelewy w PLN, jak również w walucie obcej.
Uwaga
Wysyłamy podpisane przelewy. Skutkuje to tym, że przelewy te są automatycznie realizowane przez bank.
Jeżeli w preliminarzu płatności wybierzemy rejestr, który obsługuje wymianę danych poprzez usługę sieciową, wśród kolumn na liście dostępne są kolumny:
  • Data wysłania WebService
  • Komunikat WebService
  • Data komunikatu WebService
  W kolumnach tych zapisywane są informacje przy eksporcie do usługi sieciowej oraz przy każdorazowym sprawdzeniu stanu przelewów w banku. Sprawdzenia aktualnego statusu przelewów w banku Citi Handlowy wykonujemy korzystając z opcji Aktualizuj stany przelewów. Jest ona dostępna po wciśnięciu strzałki obok przycisku .

Import za pomocą usługi sieciowej

W Comarch ERP Optima mamy możliwość importu danych z banku Citi Handlowy. Import dotyczy:
  • stanu rachunku bankowego
  • wyciągów bankowych
Import informacji o stanie rachunku bankowego  można wykonać z poziomu:
  • listy rejestrów kasowych/bankowych
  • listy zapisów kasowych/bankowych
  • preliminarza płatności
  Wyciągi bankowe importujemy z listy zapisów kasowych/bankowych. Na liście zapisów wybieramy rejestr bankowy związany z naszym rachunkiem w banku Citi Handlowy i wskazujemy raport bankowy. Import uruchamiamy przyciskiem Importuj polecenia przelewu .

Lista zapisów kasowych/bankowych – Import przelewów

Na oknie Import przelewów ustalamy parametry importu, czyli:
  • wybieramy format wymiany (domyślnie podpowie się format importu ustalony na formularzu banku)
  • określamy definicję dla zapisów KP i KW
  • ustalamy okres za jaki będą importowane przelewy (domyślnie jest to okres odczytany z raportu bankowego utworzonego w programie)
  • możemy zaznaczyć opcję automatycznego rozliczania płatności przy imporcie.
Po ustaleniu parametrów przyciskiem  uruchamiamy pobranie danych z banku. W tym momencie na oknie Import danych wyświetli się lista przelewów, które za pomocą  przenosimy do Comarch ERP Optima. Przy ponownym imporcie tego samego wyciągu program sprawdza istnienie duplikatów i importuje tylko te przelewy, których nie ma w bazie danych. Duplikaty sprawdzane są wg następujących kryteriów:
  • data księgowania
  • numer rachunku kontrahenta
  • kwota
  • opis przelewu

Eksport i import przelewów za pomocą usługi sieciowej – najczęściej zadawane pytania

1. Co należy ustawić w programie Comarch ERP Optima, aby móc skorzystać z Eksportu i importu przelewów za pomocą usługi sieciowej? Odpowiedź: Na formularzu banku (Ogólne/ Inne/ Banki) w polach Format eksportu dla przelewów zwykłych, Format eksportu dla MPP oraz Format importu wyciągów bankowych (druga zakładka) należy wskazać format obsługujący wymianę za pomocą usługi sieciowej. Następnie na 3 zakładce [Ustawienia usługi sieciowej] Użytkownik wprowadza ustawienia dotyczące przelewów walutowych oraz podpina certyfikaty i uzupełnia Client ID i Client secret. 2. Czy można zobaczyć w pliku dane, które zostały wyeksportowane/zaimportowane z banku? Odpowiedź: Tak, mamy taką możliwość. W Konfiguracji Stanowiska/ Kasa/Bank/ Parametry znajdują się parametry: Zapisuj dane wymieniane z bankiem do plików XML oraz Zapisuj szczegółowe logi z komunikacji z bankiem. Domyślnie te parametry są odznaczone. Zaznaczenie ich spowoduje zapisywanie plików w których znajdą się informacje związane z komunikacją z bankiem. Wygenerują się one w katalogu z logami programu, w ścieżce: %appdata%\Comarch\Optima\Logs\WebserwisyBankowe 3. Co jest wymagane od strony banku Citi Handlowy, aby rozpocząć import i eksport przelewów za pomocą usługi sieciowej? Odpowiedź: Korzystanie z usługi Citi Handlowy – API wymaga konfiguracji w systemie banku Citi Handlowy. W przypadku chęci skorzystania z usługi prosimy o kontakt z Działem Pomocy Technicznej banku Citi Handlowy pod nr. tel. 801 343 978, +48 (22) 690 15 21 (Adres mailowy: helpdesk.ebs@citi.com).

OPT084 Szybki import i eksport przelewów przez bankowość internetową Banku Millennium

Data aktualizacji: 24-11-2023

Informacje ogólne

https://www.youtube.com/watch?v=cluwjWRp6_I&amp;feature=youtu.be Dla Użytkowników Comarch ERP Optima korzystających z systemu Millenet dla Przedsiębiorstw oraz usługi Millenet Link wprowadziliśmy możliwość bezpośredniej  wymiany danych z Bankiem Millennium. Automatyczna komunikacja z bankiem umożliwia eksport przelewów bezpośrednio z/do systemu bankowego oraz import historii rachunku w łatwy i szybki sposób bez konieczności ręcznego przenoszenia plików pomiędzy aplikacją bankową oraz Comarch ERP Optima. Możliwe jest również pobieranie dla każdego wysłanego przelewu jego aktualnego statusu w banku (przelew może oczekiwać na realizację, zostać zrealizowany, odrzucony, anulowany itp.). Automatyczna wymiana danych pomiędzy bankiem a klientem odbywa się przez wymianę komunikatów w formacie plików XML (standard ISO 20022) przy wykorzystaniu technologii web-services. Całość komunikacji jest zabezpieczona przez bezpieczny kanał HTTPS z wykorzystaniem dwustronnego SSL. Dzięki tym technologiom komunikacja pomiędzy bankiem a klientem jest szyfrowana i nikt niepowołany nie ma dostępu do przesyłanych informacji. Dodatkowo, dzięki dwustronnemu SSL, Bank otrzymuje możliwość wstępnej weryfikacji klienta, a klient może zweryfikować, czy faktycznie podłączył się do serwera Banku. Do zabezpieczenia wymiany informacji zastosowane zostały: certyfikat komunikacyjny, który weryfikuje klienta i pozwala zweryfikować jego prawo do danego rachunku (rachunków) oraz certyfikat autoryzacyjny (podpis elektroniczny), którym mogą być podpisywane przelewy wysyłane do banku. Gdy przelewy nie zostaną podpisane lub zostaną podpisane przez nieuprawnioną osobę – zlecenia będą oczekiwały w banku na akceptację uprawnionej osoby. Na liście Ogólne/ Inne/ Formaty przelewów dostępny jest format Millennium WebService (standardowy) do wymiany danych z Bankiem Millennium.

Jak skonfigurować wymianę danych z Bankiem Millennium?

Wymiana danych z Bankiem Millennium dostępna jest w systemie Comarch ERP Optima od wersji 2019.5.1.
W systemie Comarch ERP Optima należy:
  • ustawić format wymiany danych
  • podpiąć certyfikat komunikacyjny
  • dla przelewów walutowych wskazać, kto ponosi opłaty związane z takimi przelewani
Na formularzu banku na zakładce [2 Import/Eksport] w polach:
  • Format eksportu dla przelewów zwykłych
  • Format importu wyciągów bankowych
wybieramy właściwy dla banku format obsługujący automatyczną wymianę danych z bankiem. W naszym przypadku dla Banku Millennium dostępny jest format Millennium Webservice. 
Wybrany przez nas format będzie się później podstawiał jako domyślny format podczas eksportu i importu przelewów.
Formularz banku, zakładka [Import Eksport]
Po wybraniu formatu Millennium Webservice na formularzu banku pojawia się dodatkowa zakładka [3 Ustawienia usługi sieciowej]. Na zakładce tej wprowadzamy ustawienia dotyczące:
  • przelewów walutowych
  • podpinamy certyfikat do komunikacji z bankiem. Certyfikat ten powinien mieć aktualną datę ważności, posiadać informacje o obsługujących go kluczach prywatnych. Należy upewnić się czy certyfikat znajduje się we właściwym magazynie certyfikatów.
Formularz banku, zakładka [Ustawienia usługi sieciowej]
W przypadku przelewów walutowych istotne jest uzupełnienie pól:
  • Opłatę ponosi – mamy tutaj do wyboru trzy opcje: Zleceniodawca, Zleceniobiorca, Po równo.
  • Osoba kontaktowa – nasz przedstawiciel wybrany do kontaktu z bankiem.
  • Kontakt numer telefonu, adres e-mail.

Eksport płatności

Możliwy jest eksport przelewów krajowych (w tym do Urzędu Skarbowego i ZUS) oraz przelewów walutowych. Przelewy walutowe wysyłane są jako przelewy zagraniczne lub przelewy SEPA. W celu wysłania przelewu SEPA zdarzenie w preliminarzu płatności musi być:
  • zdarzeniem rozchodowym
  • waluta zdarzenia to EURO
  • na zdarzeniu zaznaczono parametr „Przelew SEPA”

Eksport przelewów z wykorzystaniem automatycznej wymiany danych z bankiem, wykonujemy z poziomu preliminarza płatności. W preliminarzu płatności należy:

  • wybrać rejestr, który dotyczy Banku Millennium z ustalonym formatem wymiany danych,  obsługującym automatyczną komunikację z bankiem (w naszym przypadku Millennium WebService)
  • na liście powinny wyświetlać się tylko zdarzenia nierozliczone lub rozliczone częściowo.
Preliminarz płatności - parametry
Po spełnieniu tych warunków w preliminarzu płatności będzie dostępna ikona Eksportuj polecenia przelewu Domyślnie kliknięcie w ikonę powoduje wywołanie okna Eksport przelewów do pliku.
Okno eksportu przelewów
Po wybraniu opcji Eksportuj przelewy pokazuje się okno, na którym można ustawić wybrane opcje eksportu. Data przelewu – do wyboru mamy cztery opcje: dzisiejsza, termin płatności, data realizacji, inna (samodzielnie ustalona). Przelewy zbiorczo wg podmiotów – po zaznaczeniu tej opcji przelewy zostaną pogrupowane wg podmiotu, numeru rachunku bankowego (wypełnionego na zdarzeniu) oraz waluty i wysyłane jako jeden, zbiorczy przelew. Po zaznaczeniu opcji Grupuj wg dat utworzonych zostanie tyle zbiorczych przelewów, ile jest różnych dat (terminów płatności/ dat realizacji/ dat dokumentu).
Parametry eksportu przelewów
Eksportuj wszystkie linie opisu do banku - parametr jest widoczny po zaznaczeniu Przelewy zbiorczo wg podmiotów. Parametr ten spowoduje, że w zbiorczym przelewie będziemy starali się umieścić wszystkie uzupełnione linie opisu do banku odczytane z agregowanych przelewów. Dziel przelewy wg długości opisu - parametr jest widoczny po zaznaczeniu Przelewy zbiorczo wg podmiotów. Spowoduje on, że program utworzy dla danego podmiotu kilka przelewów zbiorczych, przy czym na każdym z nich będzie umieszczony pełny opis do banku z przelewów cząstkowych. Parametr Dziel przelew wg długości opisu może być stosowany razem z pozostałymi parametrami dotyczącymi przelewów zbiorczych. Wysyłaj przelewy w jednym pliku – zaznaczenie tego parametru powoduje, że wysyłając kilka przelewów tworzymy jeden plik xml, w którym zapisujemy wszystkie pojedyncze przelewy. Jeśli parametr nie jest zaznaczony to każdy z tych przelewów zapisywany jest w osobnym pliku. Eksport uruchamiamy ikoną pioruna . Eksportowane są zarówno przelewy w PLN, jak również w walucie obcej. W momencie wysyłania przelewów pojawi się okno z możliwością wyboru właściwego certyfikatu służącego do podpisywania przelewów. Jeżeli okno z wyborem certyfikatu zostanie:
  • anulowane – przelewy zostaną wysłane jako niepodpisane i będą oczekiwały na akceptację po stronie banku.
  • zostanie wybrany właściwy certyfikat – do Banku Millennium zostaną wysłane podpisane przelewy.
Jeżeli w preliminarzu płatności wybierzemy rejestr, który obsługuje automatyczną wymianę danych z bankiem, wśród kolumn na liście dostępne są kolumny:
  • Data wysłania do banku,
  • Komunikat do banku,
  • Data komunikatu do banku.
W kolumnach tych zapisywane są informacje przy eksporcie do banku oraz przy każdorazowym sprawdzeniu stanu przelewów w banku.
Preliminarz płatności – kolumny związane z automatyczną wymianą danych
Sprawdzenia aktualnego statusu przelewów w Banku Millennium wykonujemy korzystając z opcji Aktualizuj stany przelewów. Jest ona dostępna po wciśnięciu strzałki obok przycisku.

Import danych

W Comarch ERP Optima mamy możliwość importu danych z Banku Millennium. Import dotyczy:
  • stanu rachunku bankowego
  • historii operacji
Import informacji o stanie rachunku bankowego  można wykonać z poziomu:
  • listy rejestrów kasowych/bankowych
  • listy zapisów kasowych/bankowych
  • preliminarza płatności
Historię operacji importujemy z listy zapisów kasowych/bankowych. Na liście zapisów wybieramy rejestr bankowy związany z rachunkiem w Banku Millennium i wskazujemy raport bankowy.
Lista zapisów kasowych/bankowych – Import przelewów
Import uruchamiamy przyciskiem Importuj polecenia przelewu . Na oknie Import przelewów ustalamy parametry importu, czyli:
  • wybieramy format wymiany (domyślnie podpowie się format importu ustalony na formularzu banku)
  • określamy definicję dla zapisów KP i KW
  • ustalamy okres za jaki będą importowane przelewy (domyślnie jest to okres odczytany z raportu bankowego)
  • możemy zaznaczyć opcję automatycznego rozliczania płatności przy imporcie
Po ustaleniu parametrów przyciskiem  uruchamiamy pobranie danych z banku. W tym momencie na oknie Import danych wyświetli się lista przelewów, które za pomocą  przenosimy do Comarch ERP Optima. Jeżeli wykonany został import historii operacji i potem wykonywany jest ponowny import historii wtedy importowane są tylko te przelewy, które nie zostały jeszcze zaimportowane. Duplikaty są odrzucane. Duplikaty sprawdzane są wg następujących kryteriów:
  • data księgowania
  • numer rachunku kontrahenta
  • kwota
  • opis przelewu

Automatyczna wymiana danych z bankami - najczęściej zadawane pytania

  1. Co należy ustawić w programie Comarch ERP Optima, aby móc skorzystać z Eksportu i importu przelewów za pomocą automatycznej współpracy z bankiem?
Odpowiedź: Na formularzu banku (Ogólne/ Inne/ Banki) w polach Format eksportu dla przelewów zwykłych oraz Format importu wyciągów bankowych (druga zakładka) należy wskazać format obsługujący automatyczną wymianę danych z bankiem. Następnie na 3 zakładce [Ustawienia usługi sieciowej] Użytkownik wprowadza ustawienia dotyczące przelewów walutowych oraz podpina certyfikat do komunikacji otrzymany z banku.
  1. Jakie warunki powinny spełniać certyfikaty wykorzystywane podczas wysyłki, aby odbyła się ona prawidłowo?
Odpowiedź: Certyfikat komunikacyjny i autoryzacyjny powinny znajdować się w sekcji Osobiste, mieć aktualną datę ważności oraz posiadać informację o obsługujących je kluczach prywatnych. Ponadto w przypadku certyfikatu autoryzacyjnego należy poprawnie zainstalować sterowniki urządzenia obsługującego certyfikat po stronie systemu operacyjnego. Jeśli bank wymaga dodatkowych certyfikatów należy upewnić się, czy znajdują się one we właściwych magazynach certyfikatów oraz czy posiadają aktualną datę ważności.     3. Czy można zobaczyć w pliku dane które zostały wyeksportowane/zaimportowane z banku? Odpowiedź: Tak, mamy taką możliwość. W Konfiguracji Stanowiska/ Kasa/Bank/ Parametry możemy zaznaczyć parametry
  • Zapisuj dane wymieniane z bankiem do plików XML – w pliku XML zapisywane będą dane wysyłane/importowane z banku.
  • Zapisuj szczegółowe logi z komunikacji z bankiem – w pliku tekstowym zapisywane będą informacje związane z komunikacją z bankiem. Informacje te mogą być pomocne przy ustalaniu przyczyny nieprawidłowej komunikacji z bankiem.
Pliki zapisywane będą w katalogu z logami programu Comarch ERP Optima, w podkatalogu WebserwisyBankowe (%appdata%\Comarch\Opt!ma\Logs). Domyślnie parametry nie są zaznaczone.
  1. Co jest wymagane od strony Banku Millennium, aby rozpocząć import i eksport przelewów z wykorzystaniem automatycznej wymiany danych z bankiem?
Odpowiedź: Od strony Banku Millennium wymagany jest dostęp do systemu bankowości internetowej Millenet dla Przedsiębiorstw oraz uruchomiona usługa Millenet Link. W celu uzyskania szczegółów prosimy o kontakt się z Państwa Doradcą Bankowym w Banku Millennium lub z infolinią Banku Millennium pod numerem telefonu 801 632 632 lub 22 598 4031 w dni robocze od poniedziałku do piątku w godzinach 08.00–18.00.

OPT090 - Szybki import i eksport przelewów przez bankowość internetową iBiznes24 – Santander Bank Polska

Jak skonfigurować wymianę danych z iBiznes24?

Wymiana danych z iBiznes24  dostępna jest w systemie Comarch ERP Optima od wersji 2022.6.1. W systemie Comarch ERP Optima należy:
  • ustawić format wymiany danych
  • uzupełnić informację o numerze NIK firmy
  • podpiąć certyfikat transportowy i aplikacyjny
  • uzupełnić NIK użytkownika
  • dla przelewów walutowych wskazać, kto ponosi opłaty

Formularz banku – zakładka Import / Eksport

Na formularzu banku na zakładce [2 Import / Eksport] w polach:
  • Format importu wyciągów bankowych
  • Format eksportu dla przelewów zwykłych
  • Format eksportu dla MPP
  wybieramy właściwy dla banku format obsługujący wymianę za pomocą usługi sieciowej. W naszym przypadku jest to format Santander WebService (standardowy). Wybrany format będzie się później podstawiał jako domyślny podczas eksportu i importu przelewów.

Formularz banku, zakładka Import / Eksport

Formularz banku – zakładka Ustawienia usługi sieciowej

Po wybraniu formatu Santander WebService na formularzu banku pojawia się dodatkowa zakładka [3 Ustawienia usługi sieciowej]. Na zakładce tej:
  • wprowadzamy ustawienia dotyczące przelewów walutowych
  • w sekcji Certyfikaty dla Santander Bank Polska podpinamy certyfikat transportowy i aplikacyjny. W sytuacji, gdy nie mamy tych certyfikatów możemy je wygenerować i zainstalować z poziomu formularza banku w Comarch ERP Optima.
  Po wybraniu przycisku  uruchomiony zostanie kreator certyfikatów do komunikacji z Santander Bank Polska, który w kilku krokach przeprowadzi nas przez proces tworzenia, instalowania i podpinania certyfikatu transportowego i aplikacyjnego. Należy przygotować NIK firmy oraz NIK użytkownika. Certyfikaty transportowy i aplikacyjny dotyczą całej firmy. W przypadku pracy wielostanowiskowej, utworzone wcześniej certyfikaty należy zainstalować na stanowiskach, na których ma być uruchamiana współpraca z iBiznes24. W celu przeniesienia certyfikatów z jednego stanowiska na kolejne należy wyeksportować certyfikat transportowy i aplikacyjny z listy certyfikatów. W tym celu należy uruchomić Panel sterowania/Opcje internetowe/Zawartość/Certyfikaty. Na liście certyfikatów w zakładce Osobisty odszukać certyfikat transportowy i aplikacyjny (przyjazna nazwa tych certyfikatów to NIK firmy – certyfikat aplikacyjny i NIK firmy – certyfikat transportowy). Po wybraniu Eksportuj w drugim kroku kreatora eksportu certyfikatów proszę zaznaczyć parametr Tak, eksportuj klucz prywatny, w trzecim kroku dodatkowo zaznaczyć parametr Eksportuj wszystkie właściwości rozszerzone, w czwartym kroku ustalić hasło. Na nowym stanowisku komputerowym należy wykonać instalację certyfikatów (Panel sterowania/Opcje internetowe/Zawartość/Certyfikaty/Osobisty – Importuj). Poszczególne kroki kreatora certyfikatów zostały opisane w artykule Kreator certyfikatów do komunikacji z Santander Bank Polska iBiznes24. Gdy wygenerujesz certyfikat zgodnie z instrukcją dostarczoną przez Santander Bank Polska należy go zapisać na dysku, a następnie zainstalować w systemie Windows. Instalację uruchamiamy poprzez dwuklik na wybranym certyfikacie lub Zainstaluj PFX, które jest dostępne w menu kontekstowym. Po poprawnym zainstalowaniu certyfikatu w magazynie certyfikatów osobistych systemu Windows wchodzimy w programie Comarch ERP Optima na formularz banku, na zakładkę [Ustawienia usługi sieciowe]. W sekcji Certyfikaty dla Santander Bank Polska z rozwijanego menu (strzałka obok przycisku ) wybieramy rodzaj certyfikatu, np. aplikacyjny. Wyświetli się lista zainstalowanych w systemie certyfikatów, odszukujemy właściwy certyfikat, wskazujemy go kursorem, a następnie wybór potwierdzamy wciskając przycisk Wybierz. Certyfikat pojawi się na formularzu banku.
  • W sekcji NIK użytkowników (operatorów) podajemy NIK użytkownika w iBiznes24.
 

Formularz banku, zakładka Ustawienie usługi sieciowej

Formularz rejestru bankowego

Na formularzu rejestru bankowego związanego z iBiznes24 należy uzupełnić NIK firmy. Jest to unikalny identyfikator klienta iBiznes24. Brak tej informacji lub błędne dane uniemożliwią wymianę danych za pomocą iBiznes 24 Connect.

Rejestr bankowy, NIK firmy

Eksport za pomocą usługi sieciowej

Możliwy jest eksport przelewów krajowych (w tym do Urzędu Skarbowego i ZUS) oraz przelewów walutowych. Przelewy walutowe wysyłane są jako przelewy zagraniczne lub przelewy SEPA. Przelewy bankowe eksportowane są do iBiznes24 w formie paczek. Eksport za pomocą usługi sieciowej iBiznes24 Connect możemy wykonać z poziomu preliminarza płatności z listy płatności oraz z listy paczek przelewów.

Eksport z listy Płatności

W preliminarzu płatności na liście płatności:
      • wybieramy odpowiedni rejestr bankowy, dla którego wybrano format wymiany danych za pomocą usługi sieciowej (w naszym przypadku Santander WebService)
      • na liście powinny wyświetlać się tylko zdarzenia nierozliczone lub rozliczone częściowo
 

Preliminarz płatności – parametry

Po spełnieniu tych warunków w preliminarzu płatności będzie dostępna ikona Eksportuj polecenia przelewu          Domyślnie wybranie ikony powoduje wywołanie okna Eksport przelewów.

Okno eksportu przelewów poprzez usługę sieciową iBiznes24 Connect

Po wybraniu opcji Eksportuj przelewy pokazuje się okno, na którym można ustawić wybrane opcje eksportu. Data przelewu – do wyboru mamy cztery opcje: dzisiejsza, termin płatności, data realizacji, inna (samodzielnie ustalona). Przelewy zbiorczo wg podmiotów – po zaznaczeniu tej opcji przelewy zostaną pogrupowane wg podmiotu, numeru rachunku bankowego (wypełnionego na zdarzeniu) oraz waluty i wysyłane jako jeden, zbiorczy przelew. Po zaznaczeniu opcji Grupuj wg dat utworzonych zostanie tyle zbiorczych przelewów, ile jest różnych dat (terminów płatności/ dat realizacji/ dat dokumentu). Eksportuj wszystkie linie opisu do banku – parametr jest widoczny po zaznaczeniu Przelewy zbiorczo wg podmiotów. Parametr ten powoduje, że w zbiorczym przelewie umieszczamy kolejne pełne opisy z przelewów cząstkowych, aż do wyczerpania ilości znaków wymaganych przez iBiznes24. Dziel przelewy wg długości opisu – parametr jest widoczny po zaznaczeniu Przelewy zbiorczo wg podmiotów. Spowoduje on, że program utworzy dla danego podmiotu kilka przelewów zbiorczych, przy czym na każdym z nich będzie umieszczony pełny opis do banku z przelewów cząstkowych. Parametr Dziel przelewy wg długości opisu może być stosowany razem z pozostałymi parametrami dotyczącymi przelewów zbiorczych. Eksport uruchamiamy ikoną pioruna . Eksportowane są zarówno przelewy w PLN, jak również w walucie obcej. W momencie wysyłania przelewów pojawi się okno z możliwością wyboru właściwego sposobu akceptacji przelewów. Do wyboru jest akceptacja za pomocą kodu SMS, tokena, podpisu kwalifikowanego. Można też wysłać płatności bez akceptacji, będą one oczekiwały w iBiznes24 na ich zatwierdzenie i przekazanie do realizacji.

Płatności – metody akceptacji płatności

Akceptacja przelewów za pomocą kodu SMS wymaga podania kodu SMS, który zostanie wysłany na numer telefonu Użytkownika. W przypadku podania błędnego kodu SMS lub w sytuacji, gdy kod SMS wygasł mamy możliwość wysłania prośby o przesłanie nowego kodu SMS.

Płatności – akceptacja transakcji za pomocą kodu SMS

Akceptacja transakcji za pomocą tokena wymaga wpisania wygenerowanego w Comarch ERP Optima kodu do tokena i przepisanie odpowiedzi z tokena do programu.

Płatności – akceptacja transakcji za pomocą tokena

Akceptacja za pomocą podpisu kwalifikowanego wymaga wybrania odpowiedniego certyfikatu z listy.

Płatności – akceptacja transakcji za pomocą podpisy kwalifikowanego

W momencie eksportu przelewów program utworzy z nich paczkę przelewów. W paczce znajdą się przelewy, które wcześniej nie zostały wyeksportowane, nie zostały dodane do innej paczki, mają uzupełniony opis do banku, adres beneficjenta oraz uzupełniony jego numer rachunku bankowego. Paczka uzyska unikalny numer oraz domyślną nazwę Paczka z dnia XX.XX.XXXX , gdzie XX.XX.XXXX to dzień wykonania eksportu do iBiznes24. Jeżeli w preliminarzu płatności wybierzemy rejestr, który obsługuje wymianę danych poprzez usługę sieciową, na liście dostępne są kolumny:
      • Data wysłania do banku
      • Komunikat z banku
      • Data komunikatu z banku
  W kolumnach tych informacje są zapisywane przy eksporcie do usługi sieciowej oraz przy każdorazowym sprawdzeniu stanu przelewów w iBiznes24. W przypadku, gdy paczka przelewów jest przetwarzana w iBiznes24 w kolumnie Komunikat z banku może wyświetlać się informacja:
      • Import odrzucony – paczka została odrzucona.
      • Import przetworzony (przyjęty do realizacji) – paczka przelewów została przetworzona.
      • Import przetwarzany –  trwa proces przetwarzania paczki przelewów.
      • Import oczekujący (na skompletowanie) –  trwa proces przetwarzania paczki przelewów.
  Ostatnie dwa komunikaty mogą pojawić się dla paczki/paczek zawierających dużą ilość przelewów. W takim przypadku przetwarzanie paczek  może trwać do kliku minut. Po tym czasie zalecamy wykonanie aktualizacji stanów przelewów. Po przetworzeniu paczki przez bank płatność może posiadać jeden ze stanów:
      • Wprowadzona – płatność wysłana do iBiznes24 bez podpisów
      • Częściowo zaakceptowana – komunikat pojawia się w sytuacji podpisu w schemacie wieloosobowej akceptacji.
      • Zaakceptowana – przelew posiada komplet podpisów.
      • Przyjęta/przetwarzana do realizacji w Banku – komunikat pojawia się w przypadku, gdy zaakceptowany przelew został przekazany do realizacji.
      • Zaksięgowana w Banku – płatność obciążyła rachunek bankowy.
      • Wycofana – płatność została w iBiznes24 wycofana.
      • Odrzucona, Niewprowadzona – komunikat pojawia się w przypadku, gdy ze względu na brak środków nie można zrealizować zlecenia.
      • Paczka usunięta – status dla przelewów, gdy w iBiznes24 paczka została usunięta.
 

Preliminarz płatności – kolumny związane z usługą WebService

Na liście płatności możemy sprawdzić aktualny stan wysłanych przelewów do iBiznes24 oraz możemy pobrać w formie pliku pdf potwierdzenia wykonania przelewu. Obie te opcje Aktualizuj stany przelewów i Pobierz potwierdzenie transakcji dostępne są z menu, które pojawia się po wciśnięciu strzałki obok przycisku .

Eksport z listy Paczki przelewów

Eksport płatności możemy wykonać także z zakładki [2 Paczki przelewów]. Lista ta zawiera paczki, które powstały w momencie wykonywania eksportu przelewów z zakładki [1 Płatności] oraz paczki utworzone samodzielnie przez Użytkownika programu. Paczki, które zostały wysłane do iBiznes24 wyświetlają się w kolorze niebieskim.
Preliminarz płatności – Paczki przelewów
W celu dodania nowej paczki na liście paczek musimy wybrać rejestr bankowy związany z rachunkiem, z którego chcemy wysyłać daną paczkę przelewów. Dodając nową paczkę możemy podać jej nazwę oraz opis. Unikalny numer paczki nadawany jest automatycznie w momencie zapisu paczki.  
Paczka przelewów
Za pomocą przycisku lub klawisza <Insert> dodajemy płatności, które mają być wyeksportowane do iBiznes24 w danej paczce. Program wyświetla listę płatności wybranego rejestru, które nie zostały wysłane do iBiznes24 i nie zostały dodane do innej paczki. Po wybraniu wszystkich płatności należy zmienić stan paczki. Paczka Zatwierdzona może być:
      • Zaakceptowana (podpisana)
      • Wyeksportowana do iBiznes24
  W programie jest możliwość wybrania jednej z trzech metod akceptacji, kod SMS, token lub podpis kwalifikowany. Domyślnie podpowiada się kod SMS. W zależności od wybranej metody akceptacji Użytkownik zostanie poproszony o podanie danych uwierzytelniających. Zasada akceptacji (podpisywania) paczki przelewów jest analogiczna jak podpisywanie przelewów w momencie ich wysyłania do iBiznes24. Z poziomu listy paczek przelewów mamy możliwość akceptowania paczek, eksportowania paczek do iBiznes24, pobierania stanu wysłanych w danej paczce przelewów oraz pobierania w formie pliku pdf potwierdzeń transakcji.   Eksportuj paczki przelewów – opcja powoduje wysłanie wybranych paczek przelewów do iBiznes24.

Paczki przelewów – eksport do banku

Aktualizuj stany przelewów – następuje pobranie stanu przelewów z iBiznes24. Informacja widoczna jest na liście płatności i na formularzu paczki w kolumnie Komunikat z banku. Akceptuj paczki przelewów – powoduje akceptację (podpisanie) wybranych paczek przelewów. Analogicznie jak przy wysyłaniu przelewów na formularzu paczki mamy możliwość wybrania jednej z trzech metod akceptacji (kod SMS, token, podpis kwalifikowany). Pobierz potwierdzenie transakcji – dla płatności Zaksięgowanych w Banku pobierane jest potwierdzenie wykonania transakcji.

Import za pomocą usługi sieciowej

W Comarch ERP Optima mamy możliwość importu danych z banku Santander. Import dotyczy:
      • stanu rachunku bankowego
      • wyciągów bankowych
      • historii operacji, gdy nie ma wyciągów
Import informacji o stanie rachunku bankowego można wykonać z poziomu:
      • listy rejestrów kasowych/bankowych
      • listy zapisów kasowych/bankowych
      • preliminarza płatności
  Import wyciągów/historii wykonujemy z list zapisów kasowych/bankowych. Na liście zapisów wybieramy odpowiedni rejestr bankowy  i wskazujemy raport bankowy.

Lista zapisów kasowych/bankowych – Import przelewów

Import uruchamiamy przyciskiem Importuj polecenia przelewu . Na oknie Import przelewów ustalamy parametry importu, czyli:
      • wybieramy format wymiany (domyślnie podpowie się format importu ustalony na formularzu banku)
      • określamy definicję dla zapisów KP i KW
      • ustalamy okres za jaki będą importowane przelewy (domyślnie jest to okres odczytany z raportu bankowego)
      • możemy zaznaczyć opcję automatycznego rozliczania płatności przy imporcie
  Po ustaleniu parametrów przyciskiem uruchamiamy pobranie danych z banku. W tym momencie na oknie Import danych wyświetli się lista przelewów, które za pomocą przenosimy do Comarch ERP Optima. Importując przelewy program pomija duplikaty. Dzięki temu zaimportowane zostaną tylko te płatności, których nie ma jeszcze w danym raporcie bankowym. Duplikaty sprawdzane są wg następujących kryteriów:
      • data księgowania
      • numer rachunku kontrahenta
      • kwota
      • waluta
      • opis przelewu

Eksport i import przelewów za pomocą usługi sieciowej – najczęściej zadawane pytania

      • Co należy ustawić w programie Comarch ERP Optima, aby móc skorzystać z Eksportu i importu przelewów za pomocą usługi sieciowej?
  Odpowiedź: Na formularzu banku (Ogólne/ Inne/ Banki) w polach Format importu wyciągów bankowych oraz Format eksportu dla przelewów zwykłych (druga zakładka) należy wskazać format obsługujący wymianę za pomocą usługi sieciowej. Następnie na 3 zakładce [Ustawienia usługi sieciowej] Użytkownik wprowadza ustawienia dotyczące przelewów walutowych oraz podpina certyfikat transportowy i aplikacyjny oraz podaje NIK użytkownika iBiznes24. Na formularzu rejestru bankowego należy uzupełnić NIK firmy iBiznes24.
      • Jakie warunki powinny spełniać certyfikaty wykorzystywane podczas wysyłki, aby odbyła się ona prawidłowo?
  Odpowiedź: Certyfikat transportowy i aplikacyjny powinny znajdować się w sekcji Osobiste, mieć aktualną datę ważności oraz posiadać informację o obsługujących je kluczach prywatnych.
      • Czy można zobaczyć w pliku dane, które zostały wyeksportowane/zaimportowane z banku?
  Odpowiedź: Tak, jest taka możliwość. W Konfiguracji Stanowiska/ Kasa/Bank/ Parametry możemy zaznaczyć parametr Zapisuj dane wymieniane z bankiem do plików XML i Zapisuj szczegółowe logi z komunikacji z bankiem. Pliki zapisywane będą w katalogu z logami programu Comarch ERP Optima, w podkatalogu WebserwisyBankowe (%appdata%\Comarch\Opt!ma\Logs). Domyślnie parametry nie są zaznaczone.
      • Mam kilka stanowisk, czy muszę przechodzić kreator na każdym stanowisku?
  Odpowiedź: Nie. Certyfikaty są generowane dla firmy. Kreator tworzy i instaluje certyfikaty na stanowisku na którym został on uruchomiony. Wykreowane certyfikaty należy wyeksportować i zainstalować na pozostałych stanowiskach, na których będzie uruchamiana współpraca z iBiznes24 Connect. Uwaga: Ponowne wykreowanie certyfikatu aplikacyjnego powoduje unieważnienie poprzedniego certyfikatu aplikacyjnego.
      • Jak przenieść certyfikaty transportowy i aplikacyjny na inne stanowisko?
  Odpowiedź: W celu przeniesienia certyfikatu transportowego i aplikacyjnego na inne stanowisko należy wyeksportować certyfikaty z listy certyfikatów. W tym celu należy uruchomić Panel sterowania/Opcje internetowe/Zawartość/Certyfikaty. Na liście certyfikatów w zakładce Osobisty odszukać certyfikat transportowy i aplikacyjny (przyjazna nazwa tych certyfikatów to NIK firmy – certyfikat aplikacyjny i NIK firmy – certyfikat transportowy). Po wybraniu Eksportuj w drugim kroku kreatora eksportu certyfikatów proszę zaznaczyć parametr Tak, eksportuj klucz prywatny, w trzecim kroku dodatkowo zaznaczyć parametr Eksportuj wszystkie właściwości rozszerzone, w czwartym kroku ustalić hasło. Na nowym stanowisku komputerowym należy wykonać instalację certyfikatów (Panel sterowania/Opcje internetowe/Zawartość/Certyfikaty/Osobisty – Importuj).

OPT092 - Szybki import i eksport przelewów przez bankowość internetową iPKO biznes

Jak skonfigurować wymianę danych z iPKO biznes?

Integracja z PKO Bank Polska dostępna jest dla Użytkowników, którzy w bankowości elektronicznej włączyli usługę Integra ERP oraz posiadają Comarch ERP Optima w wersji co najmniej 2024.3.1 Do skonfigurowania integracji z iPKO biznes w Comarch ERP Optima będziemy potrzebowali:
  • identyfikatora kontekstu – znajdziesz go w systemie bankowości elektronicznej iPKO biznes -> Administracja -> Parametry kontekstu
  • alias – identyfikator użytkownika, którego używa do logowania w systemie bankowości elektronicznej iPKO biznes
  • informację o typie logowania operatora (certyfikat banku lub podpis kwalifikowany)
  • zainstalowanego certyfikatu transportowego oraz certyfikatu imiennego banku (zgodnie z instrukcją znajdującą się w iPKO biznes -> Ustawienia -> Integra) lub podpisu kwalifikowanego.

Formularz banku – zakładka Import / Eksport

W pierwszej kolejności na formularzu banku na zakładce [Import/Eksport] w polu Format importu wyciągów bankowych wybieramy właściwy dla banku format obsługujący bezpośrednią wymianę danych. W naszym przypadku jest to format PKO BP WebService (standardowy). Wybrany przez nas format będzie się później podpowiadał jako domyślny format podczas eksportu przelewów i importu historii rachunku.
Formularz banku, zakładka [Import/Eksport]

Formularz banku – zakładka Ustawienia usługi sieciowej

Po wybraniu formatu PKO BP WebService (standardowy) na formularzu banku pojawia się dodatkowa zakładka [3 Ustawienia usługi sieciowej]. Na tej zakładce:
  • w części Sposoby logowania i akceptacji przelewów podajemy identyfikator użytkownika (alias) i typ logowania. Logowanie może odbywać się z wykorzystaniem certyfikatu imiennego banku lub podpisu kwalifikowanego.
  • w części Certyfikaty dla operatorów wskazujemy odpowiednie certyfikaty związane z logowaniem i akceptacją przelewów. W przypadku, gdy operator loguje się za pomocą:
    • podpisu kwalifikowanego – podpis powinien posiadać aktualną datę ważności, posiadać informacje o obsługujących go kluczach prywatnych oraz należy upewnić się czy podpis znajduje się we właściwym magazynie certyfikatów.
    • certyfikatu imiennego banku – do komputera musi być podpięty dostarczony przez bank czytnik i karta z certyfikatem imiennym banku.
    • niezależnie od typu logowania każdy Operator musi wskazać zainstalowany na komputerze certyfikat transportowy.
Formularz banku, zakładka [Ustawienia usługi sieciowej] – certyfikaty

Formularz rejestru bankowego

Na formularzu rejestru bankowego związanego z rachunkiem prowadzonym w banku PKO BP należy uzupełnić informację o identyfikatorze kontekstu. Brak tej informacji lub błędne dane uniemożliwią wymianę danych z bankiem.
Rejestr bankowy – identyfikator kontekstuator kontekstu

Eksport płatności

Bezpośrednia wymiana danych z PKO BP umożliwia eksport przelewów krajowych, przelewów MPP (Split Payment), podatkowych, do ZUS oraz przelewów walutowych. Przelewy walutowe wysyłane są jako przelewy zagraniczne lub przelewy SEPA. Na formularzu banku kontrahenta musi być uzupełniony numer SWIFT/BIC. W celu wysłania przelewu SEPA zdarzenie w preliminarzu płatności musi być:
  • zdarzeniem rozchodowym
  • waluta zdarzenia to EURO
  • na zdarzeniu zaznaczono parametr „Przelew SEPA”
  Eksport przelewów wykonujemy z poziomu preliminarza płatności. W preliminarzu płatności należy:
  • wybrać rejestr, który dotyczy rachunku bankowego prowadzonego w banku PKO BP i ma wskazany format wymiany obsługujący bezpośrednią wymianę z bankiem (w naszym przypadku PKO BP WebService (standardowy))
  • na liście powinny wyświetlać się tylko zdarzenia nierozliczone lub rozliczone częściowo.
Preliminarz płatności – parametry
Po spełnieniu tych warunków w preliminarzu płatności będzie dostępna ikona Eksportuj polecenia przelewu . Wymiana danych z PKO BP pozwala na:
  • wysłanie przelewu, który następnie będzie oczekiwał w banku na jego autoryzację (zatwierdzenie)
  • wysłanie podpisanego przelewu, który zostanie w banku przekazany do realizacji
Eksport przelewów
Po wybraniu opcji Eksportuj przelewy pojawi się okno Eksportuj przelewy na którym określamy parametry eksportu. Format wymiany przepisuje się z formularza banku, format wymiany dla przelewów MPP nie podlega edycji i jest taki sam jak format wymiany. Data przelewu – do wyboru mamy cztery opcje: dzisiejsza, termin płatności, data realizacji, inna (samodzielnie ustalona). Przelewy zbiorczo wg podmiotów – po zaznaczeniu tej opcji przelewy zostaną pogrupowane wg podmiotu, numeru rachunku bankowego (wypełnionego na zdarzeniu) oraz waluty i wysyłane jako jeden, zbiorczy przelew. Po zaznaczeniu opcji Grupuj wg dat utworzonych zostanie tyle zbiorczych przelewów, ile jest różnych dat (terminów płatności/ dat realizacji/ dat dokumentu). Eksportuj wszystkie linie opisu do banku – parametr jest widoczny po zaznaczeniu Przelewy zbiorczo wg podmiotów. Parametr ten spowoduje, że w zbiorczym przelewie będziemy starali się umieścić wszystkie uzupełnione linie opisu do banku odczytane z agregowanych przelewów. Dziel przelewy wg długości opisu – parametr jest widoczny po zaznaczeniu Przelewy zbiorczo wg podmiotów. Spowoduje on, że program utworzy dla danego podmiotu kilka przelewów zbiorczych, przy czym na każdym z nich będzie umieszczony pełny opis do banku z przelewów cząstkowych. Parametr Dziel przelew wg długości opisu może być stosowany razem z pozostałymi parametrami dotyczącymi przelewów zbiorczych. Eksport uruchamiamy ikoną . Eksportowane są zarówno przelewy w PLN jak również w walucie obcej. Jeżeli w preliminarzu płatności wybierzemy rejestr, który obsługuje bezpośrednią wymianę danych z bankiem, na liście pojawią się kolumny związane z wymianą danych z bankiem:
  • Data wysłania do banku,
  • Komunikat z banku,
  • Data komunikatu z banku.
  Informacje w tych kolumnach pojawiają się po wykonaniu eksportu do banku i każdorazowo po sprawdzeniu stanu przelewów w banku.
Preliminarz płatności – kolumny związane z integracją z PKO BP
Po uruchomieniu eksportu przelewów pojawi się okno Akceptacja przelewów.
Akceptacja przelewów
Wybranie opcji Wyślij bez akceptacji spowoduje, że przelewy zostaną wysłane do banku, gdzie będą oczekiwały na ich akceptację. Wybranie Zaakceptuj teraz spowoduje, że przelewy zostaną podpisane za pomocą certyfikatu imiennego/podpisu kwalifikowanego (typ autoryzacji zostanie odczytany z formularza banku dla zalogowanego Użytkownika) i wysłane do banku w celu ich realizacji. Każdorazowo przed ich wysłaniem operator który korzysta z podpisu kwalifikowanego będzie musiał potwierdzić oświadczenie i podać PIN.
Eksport przelewu – akceptacja podpisem kwalifikowanym
Użytkownik korzystający z certyfikatu imiennego banku będzie musiał podać PIN.
Eksport przelewu – akceptacja certyfikatem imiennym banku
Aktualizuj stany przelewów – sprawdzenia aktualnego stanu przelewów w banku wykonujemy dla wybranych przelewów. Opcja ta dostępna jest po wciśnięciu strzałki obok przycisku . Płatność może posiadać jeden ze stanów:
  • Analizowana – przelew jest w banku analizowany
  • Do podpisania – przelew oczekuje na jego akceptację w banku
  • Do poprawy – przelew wymaga poprawy w banku
  • Oczekująca na realizację – przelew został podpisany i czeka na realizacje
  • Zrealizowana – przelew został zrealizowany
  • Usunięta – przelew po wysłaniu do banku, został usunięty przez użytkownika w systemie bankowości elektronicznej iPKO biznes.

Import

W Comarch ERP Optima mamy możliwość importu danych z banku PKO BP. Import dotyczy:
  • aktualnego stanu środków na wskazanym rachunku bankowym
  • historii operacji

Informacja o stanie środków na rachunkach

Import informacji o aktualnym stanie środków na rachunku bankowym można wykonać z poziomu:
  • listy rejestrów kasowych/bankowych
  • listy zapisów kasowych/bankowych
  • preliminarza płatności.

Import historii

Historię rachunku bankowego importujemy z listy zapisów kasowych/bankowych. Na liście zapisów wybieramy rejestr bankowy związany z rachunkiem prowadzonym w PKO BP i wskazujemy raport bankowy.
Lista zapisów kasowych\bankowych – Import przelewów
Import uruchamiamy przyciskiem Importuj polecenia przelewu . Na oknie Import przelewów ustalamy parametry importu, czyli:
  • format wymiany (domyślnie podpowie się format importu ustalony na formularzu banku)
  • określamy definicję dla zapisów KP i KW
  • ustalamy okres za jaki będzie importowana historia rachunku (domyślnie jest to okres odczytany z raportu bankowego)
  • możemy zaznaczyć opcję automatycznego rozliczania płatności przy imporcie
  Po ustaleniu parametrów przyciskiem uruchamiamy pobranie danych z banku. W tym momencie na oknie Import danych wyświetli się lista przelewów, które za pomocą przenosimy do Comarch ERP Optima. Jeżeli został wykonany import historii (przelewy znajdują się w rejestrze bankowym) i potem ponownie pobieramy historię rachunku to importowane są tylko te przelewy, które nie zostały jeszcze zaimportowane. Duplikaty są odrzucane. Duplikaty sprawdzane są wg następujących kryteriów:
    • Identyfikator
    • Kwota przelewu
    • Opis
    • Numer rachunku kontrahenta
    • Data przelewu

Certyfikat imienny banku

Każdy wydany przez PKO BP certyfikat imienny ma datę ważności. W sytuacji, gdy data ważności minie nie będzie można korzystać z integracji z PKO BP. W przypadku, gdy do upływu daty ważności zostało 30 (lub mniej) dni po uruchomieniu programu Comarch ERP Optima przez Użytkownika, który korzysta z certyfikatu imiennego banku pokaże się komunikat przypominający o konieczności jego odnowienia w serwisie bankowości elektronicznej iPKO biznes.
Certyfikat imienny banku – data ważności

Bezpośrednia wymiana danych z bankami – najczęściej zadawane pytania

1. Co należy ustawić w programie Comarch ERP Optima, aby móc skorzystać z bezpośredniej współpracy z bankiem? Odpowiedź: Na formularzu banku (Ogólne/ Inne/ Banki) w polu Format importu wyciągów bankowych (druga zakładka) należy wskazać format wymiany Webservice PKO BP (standardowy). Następnie na 3 zakładce [Ustawienia usługi sieciowej] wprowadzić Identyfikator użytkownika (alias), wybrać Typ logowania oraz wskazać certyfikaty (transportowy i certyfikat do logowania i akceptacji przelewów). Na formularzu rejestru bankowego PKO BP wpisać Identyfikator kontekstu. 2. Czy można zobaczyć w pliku dane które zostały wyeksportowane/zaimportowane z banku? Odpowiedź: Tak, mamy taką możliwość. W Konfiguracji/ Stanowisko/ Kasa/Bank/ Parametry możemy zaznaczyć parametry: Zapisuj szczegółowe logi z komunikacji z bankiem – w pliku zapisywane będą informacje związane z komunikacją z bankiem. Informacje te mogą być pomocne przy ustalaniu przyczyny nieprawidłowej komunikacji z bankiem. Pliki zapisywane będą w katalogu z logami programu Comarch ERP Optima, w podkatalogu WebserwisyBankowe (%appdata%\Comarch\Opt!ma\Logs). Domyślnie parametry nie są zaznaczone.

OPT081 - Eksport przelewów do banku Citi Handlowy

Data aktualizacji: 30-06-2022

Lista dostępnych formatów

System Comarch ERP Optima umożliwia wysłanie do banku poleceń przelewów. Dla Użytkowników posiadających konto firmowe w banku Citi Handlowy przygotowaliśmy formaty typu Elixir, XML oraz Flat File (CDFF). Lista zdefiniowanych formatów dostępna jest z poziomu Ogólne/ Inne /Formaty przelewów. Na liście znajdują się formaty:
  • Citi Handlowy – Przelewy krajowe (CDFF),
  • Citi Handlowy – Przelewy krajowe (Elixir),
  • Citi Handlowy – Przelewy krajowe, w tym MPP (xml),
  • Citi Handlowy – Przelewy międzynarodowe (CDFF),
  • Citi Handlowy – Przelewy międzynarodowe (xml),
  • Citi Handlowy – Przelewy MPP (CDFF),
  • Citi Handlowy – Przelewy MPP (Elixir),
  • Citi Handlowy – Przelewy podatkowe (CDFF),
  • Citi Handlowy – Przelewy podatkowe (Elixir),
  • Citi Handlowy – Przelewy podatkowe (xml),
  • Citi Handlowy – Przelewy SEPA (CDFF),
  • Citi Handlowy – Przelewy SEPA (xml).

Formularz banku – jak usprawnić wysyłanie przelewów

Dla banku Citi Handlowy przygotowaliśmy 3 rodzaje formatów (Elixir, XML, Flat File). W momencie wysyłania przelewu należy wskazać odpowiedni format wymiany danych z bankiem. W programie możemy określić domyślny format wymiany, który będzie automatycznie podpowiadał się przy wysyłaniu przelewów. W tym celu należy wejść na formularz banku (menu Ogólne/ Inne/ Banki lub <CTR>+<B>) i na zakładce [Import/Eksport] wybrać właściwy format. Lista dostępnych formatów wyświetli się po wciśnięciu strzałki na końcu pola z danym formatem.

Formularz banku – zakładka [Import/Eksport]

Format eksportu dla przelewów zwykłych – wskazujemy format dla przelewów zwykłych złotówkowych, walutowych lub SEPA: Citi Handlowy - Przelewy krajowe (CDFF), Citi Handlowy - Przelewy krajowe (Elixir), Citi Handlowy - Przelewy krajowe, w tym MPP (xml), Citi Handlowy - Przelewy międzynarodowe (CDFF), Citi Handlowy - Przelewy międzynarodowe (xml), Citi Handlowy - Przelewy SEPA (CDFF), Citi Handlowy - Przelewy SEPA (xml). Format eksportu dla przelewów MPP – wskazujemy format dedykowany dla przelewów MPP: Citi Handlowy - Przelewy krajowe, w tym MPP (xml), Citi Handlowy - Przelewy MPP (CDFF) lub Citi Handlowy - Przelewy MPP (Elixir). Format eksportu dla przelewów do US – wybieramy format dla przelewów podatkowych: Citi Handlowy - Przelewy podatkowe (CDFF) lub Citi Handlowy - Przelewy podatkowe (Elixir). W przypadku przelewów podatkowych w formacie XML należy je w Preliminarzu płatności zaznaczyć i wysłać oddzielnie wybierając przy eksporcie format Citi Handlowy - Przelewy podatkowe (xml). Format eksportu dla przelewów ZUS – wskazujemy format jak dla przelewów zwykłych złotówkowych.
Uwaga
W sytuacji, gdy przelewy są eksportowane formatami XML (Citi Handlowy – Przelewy krajowe, w tym MPP (xml),  Citi Handlowy – Przelewy międzynarodowe (xml), Citi Handlowy – Przelewy podatkowe (xml), Citi Handlowy – Przelewy SEPA (xml)) wymagane jest uzupełnienie kodu SWIFT na karcie banku, z którego jest robiony przelew. Aby prawidłowo sparametryzować kod SWIFT prosimy o kontakt z bankiem Citi Handlowy.

Preliminarz płatności – wybór przelewów do wysłania

Eksport przelewów  odbywa się z poziomu Preliminarza płatności z zakładki [1 Płatności] dla wskazanego rejestru bankowego i zatwierdzonych zdarzeń rozchodowych, które są nierozliczone lub rozliczone częściowo. Listę zdarzeń, które mają być wysłane do banku można przygotować na dwa sposoby. Pierwszy z nich polega na zaznaczeniu przelewów, które mają być wysłane do banku. W preliminarzu płatności wyświetlamy:
  • wszystkie zdarzenia dla danego rejestru bankowego,
  • określamy, że mają to być zdarzenia nierozliczone lub rozliczone częściowo,
  • na liście za pomocą myszki lub za pomocą <SPACJI> zaznaczamy te, które mają być wysłane.

Preliminarz – wysyłanie zaznaczonych zdarzeń

Drugi sposób polega na wybraniu przelewów do wysłania. Na liście wszystkich nierozliczonych zdarzeń danego rejestru bankowego zaznaczenie parametru  spowoduje, że lista zostanie automatycznie zawężona do zdarzeń rozchodowych, zatwierdzonych, które można wysłać do banku. Na tak zawężonej liście łatwiej odnaleźć i zaznaczyć wybrane przelewy, które są przeznaczone do wysłania.

Preliminarz płatności – Przelewy do wysłania

Dodatkowo listę przelewów możemy zawęzić wg ich daty realizacji oraz wybrać tylko te przelewy, które mają być realizowane mechanizmem MPP.

Preliminarz płatności – eksport przelewów

W Preliminarzu płatności po przygotowaniu listy przelewów do wysłania za pomocą przycisku  uruchamiamy eksport przelewów. Eksport może dotyczyć wszystkich przygotowanych przelewów lub tylko tych, które zostały wcześnie zaznaczone.

Preliminarz – eksport przelewów do pliku

W przypadku, gdy na formularzu banku związanego z rejestrem bankowym z którego wykonujemy eksport podaliśmy domyślne Formaty wymiany danych są one przenoszone na okno eksportu. W razie potrzeby możemy je zmienić. Po kliknięciu w pole z danym formatem wyświetli się lista wszystkich dostępnych w programie formatów wymiany. W przypadku pierwszego eksportu podajemy Katalog docelowy oraz Nazwę pliku w którym będą zapisywane zlecenia przelewów. Program domyślnie jako Datę przelewu proponuje datę realizacji odczytaną z danego zdarzenia. Mamy możliwość ustalenia, że przelewy mają być realizowane z datą dzisiejszą, terminem płatności lub inna wybraną samodzielne przez nas datą. W sytuacji, gdy eksportujemy kilka przelewów dla tego samego kontrahenta możemy je wysłać jako przelew zbiorczy. Po zaznaczeniu parametru Przelewy zbiorczo wg podmiotów pojawią się dodatkowe parametry określające sposób grupowania i eksport dodatkowych informacji (opisów). Po uzupełnieniu parametrów potrzebnych do eksportu po wciśnięciu  lub <F8> program rozpocznie tworzenie pliku z danymi. Program sprawdzi czy wśród wybranych płatności znajdują się takie, które należy zweryfikować w Wykazie podatników VAT. Weryfikacji podlegają płatności:
  • wystawione dla kontrahenta, który na karcie kontrahenta ma uzupełniony polski NIP,
  • kwota płatności to co najmniej 15 000 zł lub równowartość w walucie (w przypadku płatności, które powstały dla dokumentów handlowych, rejestru VAT czy ewidencji dodatkowej sprawdzana jest łączna kwota z dokumentu źródłowego) – kryterium to zależy od ustawienia w Konfiguracji firmy /Ogólne /Parametry – Automatyczna weryfikacja numerów rachunków bankowych w Wykazie podatników VAT. Jeśli parametr niezależnie od kwoty dokumentu jest zaznaczony nie sprawdzamy kwoty transakcji.
  • na płatności uzupełniony jest rachunek bankowy.
Jeśli te wszystkie warunki są spełnione następuje weryfikacja rachunku odczytanego z płatności z Wykazem podatników VAT. W pierwszej kolejności sprawdzamy czy na dzień zlecenia przelewu w Comarch ERP Optima mamy już informację o weryfikacji rachunku bankowego. Jeśli nie ma takiej informacji to łączymy się z Wykazem podatników VAT, odczytujemy zawartą tam informację, zapisujemy ją na karcie kontrahenta dla danego rachunku i przechodzimy do realizacji zlecenia. W sytuacji, gdy wśród weryfikowanych płatności znajdzie się chociaż jedna zweryfikowana negatywnie program wyświetli informację o tej płatności i rachunku bankowym oraz wstrzyma eksport. Od decyzji Użytkownika zależy czy eksport wszystkich płatności zostanie wykonany czy przerwany.

Preliminarz – przelewy wyeksportowane

Po wyeksportowaniu na płatności zmieniany jest stan z Do realizacji na Wysłane. W Preliminarzu płatności zdarzenia te wyświetlają się kolorze niebieskim.
Uwaga
W przypadku eksportu przelewów do banku formatem: Citi Handlowy - Przelewy krajowe (CDFF), Citi Handlowy - Przelewy MPP (CDFF), Citi Handlowy - Przelewy krajowe (Elixir), Citi Handlowy - Przelewy MPP (Elixir), Citi Handlowy - Przelewy krajowe, w tym MPP (xml) płatność, która ma ustawiony priorytet Wysoki jest wysyłana jako przelew natychmiastowy (Express Elixir).

Płace i kadry

OPT050 - Korygowanie wypłat

Data aktualizacji: 12-07-2023

Spis treści

1 Wprowadzenie

Zdarzają się sytuacje, gdy konieczne staje się skorygowanie naliczonej, zaksięgowanej i rozliczonej wypłaty pracownika, czasem nawet sprzed kilku miesięcy / lat, dlatego też w programie Comarch ERP Optima dostępna jest funkcjonalność anulowania wypłaty i naliczenia wypłaty korygującej oraz naliczenia wypłaty korygującej do wcześniej już skorygowanej wypłaty. Mechanizm korekty najczęściej jest wykorzystywany w sytuacji, gdy np.:
  • Rozliczono niewłaściwą nieobecność (np. urlop zamiast zwolnienia lekarskiego);
  • Naliczono zły element (np. wynagrodzenie za czas choroby zamiast zasiłku chorobowego);
  • Nieprawidłowo naliczono składki ZUS, np. z tytułu przekroczenia rocznej podstawy wymiaru składek na ubezpieczenie emerytalne i rentowe, nieoskładkowania jakiegoś elementu (np. ekwiwalentu za urlop), itd.
  • Nieprawidłowo naliczono wypłatę korygującą (np. gdy istniała konieczność skorygowania wypłaty w związku z rozliczeniem niewłaściwej nieobecności, natomiast po jej wykonaniu, otrzymano informację o przekroczeniu rocznej podstawy składek emerytalno – rentowych)
W przypadku korygowania wypłat ZUS wymaga sporządzenia korygujących raportów miesięcznych za odpowiednie miesiące, których dotyczą zmiany. Natomiast urząd skarbowy w wielu przypadkach nie wymaga korygowania poprzednich lat (deklaracji), tylko rozliczenia podatkowego w bieżącym miesiącu, w którym dokonujemy korekty, uwzględniając odpowiednie zmiany. Wykorzystując proces korygowania na przełomie roku należy podchodzić z dużą rozwagą do rozliczeń podatkowo - składkowych z urzędami. Każdy przypadek musi być traktowany indywidualnie, dlatego w razie wątpliwości zalecamy konsultację tematu z ekspertami US/ZUS.
Uwaga
W przypadku, gdy pracownik dostarczył zwolnienie lekarskie z opóźnieniem (po naliczeniu wypłaty), to nie ma konieczności wykorzystania funkcjonalności anulowania wypłaty, tylko zaległą nieobecność można rozliczyć przy wykorzystaniu parametru „Miesięcy wstecz” na formularzu listy płac. W przypadku rozliczenia zaległych zwolnień lekarskich wykorzystanie opcji „Mies. wstecz” będzie możliwe tylko wtedy gdy za okres bieżącego miesiąca naliczone są elementy wynagrodzenia podlegające składkom społecznym.
Przykład
 Pracownik dostarczył zwolnienie lekarskie za ostatnie dni miesiąca z opóźnieniem. W związku z tym za miesiąc poprzedni zostało wypłacone pełne wynagrodzenie. W miesiącu bieżącym pracownik w dalszym ciągu jest nieobecny (ani wynagrodzenie za czas choroby, ani zasiłek chorobowy nie podlegają składkom społecznym). W wypłacie z opcją „Miesięcy wstecz” nadpłacone składki nie zostaną potrącone, ponieważ podstawa do ZUS nie może być ujemna. W takim przypadku zalecamy wykonanie korygowania wypłaty za miesiąc poprzedni
.
W dokumencie zaprezentowana została funkcjonalność dotycząca tylko korygowania wypłat.

2 Korygowanie wypłat

W celu przeprowadzenia korekty wynagrodzenia dla danej osoby w programie istnieje możliwość anulowania:
  1. Wypłaty (zamkniętej lub zaksięgowanej);
  2. Nieobecności, gdy wcześniej została anulowana wypłata, w której jest rozliczona dana nieobecność;
  3. Zestawienia czasu pracy, gdy wcześniej została anulowana wypłata, w której jest rozliczone zestawienie.
  4. Wypłaty korygującej,
  5. Nieobecności korygującej, gdy wcześniej została anulowana wypłata korygująca, w której została rozliczona dana nieobecność.
  6. Zestawienie korygujące, gdy wcześniej została anulowana wypłata korygująca, w której zostało rozliczone zestawienie
Uwaga
Proces korygowania wypłaty jest działaniem jednorazowym, dlatego należy podejść do niego z dużą rozwagą.  W przypadku konieczności skorygowania wypłaty korygującej, należy naliczoną wcześniej wypłatę korygującą usunąć i naliczyć ją ponownie już z poprawnymi wartościami.  

2.1 Anulowanie wypłaty

Funkcja anulowania wypłaty możliwa jest do wykonania na pojedynczej, zamkniętej (kolor czarny), lub zaksięgowanej (kolor niebieski) wypłacie oraz na wypłacie korygującej (zamkniętej/zaksięgowanej). W programie nie ma seryjnego anulowania kilku wypłat.
Uwaga
Operacja anulowania wypłaty jest nieodwracalna, co oznacza, że Użytkownik programu samodzielnie nie jest w stanie przywrócić statusu wypłaty z anulowanej na podstawową. Może jedynie dokończyć proces korygowania i naliczyć wypłatę na liście płac korygującej. Aby przywrócić status wypłaty z anulowanej na podstawową należy skorzystać z pomocy Autoryzowanego Partnera. Wypłaty o statusie „Anulowane” nie są uwzględniane w wyliczeniach, deklaracjach, ani na wydrukach wykonywanych w programie.
W celu anulowania wypłaty należy w oknie Wypłaty pracowników wybrać listę płac, na której jest naliczone „błędne” wynagrodzenie, podświetlić pracownika z wypłatą, a następnie pod prawym klawiszem myszy (menu kontekstowe) wybrać opcję Anuluj wypłatę lub Koryguj wypłatę.

Po wybraniu opcji Anuluj wypłatę, wypłata zostanie anulowana. Na liście wypłat będzie widniała w kolorze szarym, ze statusem ‘Anulowana’. Opcja Koryguj wypłatę spowoduje automatyczne anulowanie wypłaty oraz otworzenie okna formularza w celu utworzenia listy płac korygującej.

Po wybraniu opcji ‘Koryguj wypłatę’ pojawi się następujący komunikat:

Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić! Wypłaty anulowane nie podlegają księgowaniu’.

 

Po wybraniu opcji ‘Tak’ wypłata zostanie automatycznie anulowana, dodatkowo zostanie utworzona lista płac korygująca z domyślnym symbolem EKOR oraz ustawieniami skopiowanymi z listy płac, na której znajduje się anulowana wypłata.

Uwaga
 Nie można dodać kolejnej listy płac o tym samym numerze za ten sam okres. Dlatego jeżeli pierwotna lista korygująca ma symbol EKOR, to dodając kolejną korektę za ten sam okres należy podać inne oznaczenie listy. Istnieje możliwość zdefiniowania nowego dokumentu z innym symbolem listy płac (np. EKOR1, EKOR2).

Po zapisaniu Użytkownik zostanie przeniesiony na okno wypłaty pracowników, z domyślnie ustawioną listą płac, w celu naliczenia wypłaty korygującej.

Wskazówka
Opcja ‘Anuluj wypłatę’ skutkuje jedynie anulowaniem wypłaty. W celu kontynuowania wykonywania korekty, Użytkownik dodatkowo musi samodzielnie utworzyć listę płac korygującą, aby naliczyć wypłatę z poprawnymi wartościami.

Po uruchomieniu tej funkcji pojawi się dodatkowo pytanie: Czy anulować wypłatę? Operacji nie można odwrócić! Wypłaty anulowane nie podlegają księgowaniu. Akceptacja spowoduje, że wypłata otrzyma status anulowanej i na liście płac wyświetlana będzie w kolorze szarym ze statusem ‘anulowana’.

2.2 Anulowanie i korygowanie nieobecności

Funkcja anulowania nieobecności możliwa jest do wykonania, gdy wcześniej została anulowana wypłata, w której została rozliczona dana nieobecność. Operacji dokonujemy z poziomu kalendarza rzeczywistego „Nie/obecności”, po wejściu na Listę nieobecności. Nieobecność należy podświetlić i pod prawym klawiszem myszy (menu kontekstowe) wybrać Anuluj nieobecność lub Koryguj nieobecność. Wybranie opcji ‘Anuluj nieobecność’ oraz akceptacja operacji anulowania spowoduje, że nieobecność otrzyma status anulowanej i na liście wyświetlana będzie w kolorze  szarym. Opcja ‘Koryguj nieobecność’ spowoduje anulowanie nieobecności w tle oraz automatyczne wyświetlenie okna formularza nieobecności w celu dodania nieobecności korygującej. Nieobecność skorygowana będzie wyświetlana na liście w kolorze niebieskim. W przypadku, gdy nieobecność była wprowadzona nieprawidłowo i została anulowana, ponieważ okazało się, że pracownik był w tym czasie obecny, to nie korygujemy takiej nieobecności. Można także wpisać nowe nieobecności (na inne dni), które powinny być, a nie zostały rozliczone w danym okresie. W tym celu dodajemy ikoną plusa nową nieobecność.

2.3 Anulowanie i korygowanie zestawień czasu pracy

Funkcja anulowania zestawień czasu pracy możliwa jest do wykonania, gdy wcześniej została anulowana wypłata, w której zostało rozliczone dane zestawienie. Operacji dokonujemy z poziomu kalendarza rzeczywistego „Nie/obecności”, po wejściu na Listę zestawień. Zestawienie należy podświetlić i pod prawym klawiszem myszy (menu kontekstowe) wybrać Anuluj zestawienie lub Koryguj zestawienie.

Akceptacja operacji ‘Anuluj zestawienie’  spowoduje, że zestawienie otrzyma status anulowanego i na liście wyświetlane będzie w kolorze  szarym.

Wybranie opcji ‘Koryguj zestawienie’ spowoduje automatyczne anulowanie zestawienia w tle oraz otwarcie formularza, w celu dodania zestawienia korygującego. Zestawienie korygujące na liście będzie widniało w kolorze niebieskim.

 
Uwaga
Operacja anulowania nieobecności lub zestawienia jest nieodwracalna, co oznacza, że Użytkownik programu samodzielnie nie jest w stanie przywrócić statusu z anulowanej na podstawową. Należy wówczas skorzystać z pomocy Autoryzowanego Partnera. Nieobecności i zestawienia o statusie „Anulowane” nie są uwzględniane w wyliczeniach, deklaracjach, ani na wydrukach wykonywanych w programie.

2.4 Korygowanie innych informacji

W sytuacji, gdy korekta nie dotyczy czasu pracy pracownika, lecz na przykład: przekroczenia składek emerytalno – rentowych, kosztów uzyskania przychodu, ulgi podatkowej, kodu ubezpieczenia itp. należy dokonać aktualizacji zapisu Formularza danych kadrowych pracownika . Aktualizacja zapisu powinna być zrobiona z datą odpowiadającą stanowi faktycznemu, np. jeśli pracownik zmienił miejsce zamieszkania z początkiem lipca  2023 (i w związku z tym przysługują mu podwyższone koszty uzyskania przychodu), to należy zaktualizować dane z datą  01.07.2023 i w zapisie aktualnym od tego dnia odnotować informację o podwyższonych kosztach uzyskania.

2.5 Definiowanie listy płac korygującej

Wskazówka
Uwaga: Opcja ‘Koryguj wypłatę’ automatycznie tworzy listę płac korygującą z ustawieniami skopiowanymi z listy płac, na której znajduje się anulowana wypłata. Nie można dodać kolejnej listy płac o tym samym numerze za ten sam okres. Dlatego jeżeli pierwotna lista korygująca ma symbol EKOR, to dodając kolejną korektę za ten sam okres należy podać inne oznaczenie listy. Istnieje możliwość zdefiniowania nowego dokumentu z innym symbolem listy płac (np. EKOR1, EKOR2).
Z głównego menu Płace i Kadry wybieramy Listy płac i dodajemy nową listę płac. Na formularzu listy płac:
  1. Zaznaczamy parametr Lista płac korygująca;

2. Wybieramy Dokument. Na liście zdefiniowanych dokumentów domyślnie jest symbol ‘EKOR’. Użytkownik ma także możliwość definiowania własnych symboli. Aby utworzyć nowy symbol listy płac korygującej należy wybrać przycisk i wzorując się na już istniejącym symbolu EKOR założyć własny symbol (można skopiować poprzez kombinację klawiszy <CTRL>+<INS>).

3.W polu Korekta do listy wskazujemy listę płac, na której pierwotnie była naliczona wypłata (to jest lista płac, na której jest wypłata o statusie „Anulowana”);

Wskazówka

 Po wybraniu opcji ‘Korekta do listy’, zostanie otworzone okno ‘Listy płac’ z wszystkimi utworzonymi listami płac w         programie. Lista płac z wypłatą anulowaną będzie miała oznaczenie ‘A’ w kolumnie ‘Korekta’.

 

4. Data wypłaty jest zgodna z datą wypłaty z listy płac, na której została anulowana wypłata. Data jest automatycznie podpowiadana przez program.

Okres Od-Do, Rodzaj listy płac, miesiąc/rok deklaracji, opcja Miesięcy wstecz – kopiowane są zawsze z listy podstawowej wskazanej w polu Korekta do listy. Tym samym, wymienione pola na formularzu listy płac korygującej nie są dostępne do edycji.
Uwaga
Ustawienie daty wypłaty na liście płac korygującej jest bardzo istotne w przypadku liczenia średniej (z elementów zmiennych) do urlopu wypoczynkowego wg daty wypłaty (gdy w Konfiguracji firmy/ Płace/ Parametry jest zaznaczony parametr Średnia do urlopu wypoczynkowego wg daty wypłaty). W takiej sytuacji data wypłaty na liście korygującej powinna być zgodna z datą wypłaty na liście płac, na której została anulowana wypłata. Aby w bieżącej (najbliższej) wypłacie wygenerowała się „Spłata korekty netto wypłaty” (różnica w płatności między wypłatą anulowaną a korygującą) data wypłaty na liście płac korygującej powinna być przynajmniej o jeden dzień wcześniejsza niż data na liście płac dla bieżącego miesiąca.

2.6 Naliczanie wypłaty na korygującej liście płac

Gdy w oknie Wypłaty pracowników wybierzemy listę płac korygującą, to powinny pojawić się tylko osoby, dla których wcześniej anulowano wypłaty. Należy naliczyć wypłatę korygującą  lub <INS>. Zostanie ona policzona według nowych (skorygowanych) ustawień. W pierwszej kolejności powinny zostać uzgodnione elementy (dodatki i potrącenia).  Elementy dodane wcześniej ręcznie powinny zostać uzupełnione przez Operatora. Następnie należy sprawdzić, czy składki ZUS (społeczne i zdrowotna) są prawidłowe. W przypadku zaliczki podatku sugerujemy skopiowanie podatku z wypłaty anulowanej (na taką, jaka była odprowadzona wcześniej do urzędu) – urząd skarbowy nie wymaga korygowania zeznania rocznego za poprzednie lata, tylko oczekuje rozliczenia ewentualnej niedopłaty/nadpłaty zaliczki podatku w bieżącym okresie rozliczeniowym. W celu skopiowania zaliczki podatku z wypłaty anulowanej należy w formularzu wypłaty przejść na zakładkę [Podatki] i nacisnąć  Kopiowanie zaliczki podatku. Po skopiowaniu zaliczki podatku w polu Zaliczka podatku do urzędu skarbowego powinna pojawić się wartość podatku z anulowanej wypłaty, a więc dokładnie kwota, którą Płatnik potrącił pracownikowi z wypłaty i odprowadził do urzędu skarbowego.
Uwaga
W przypadku, gdy wypłata korygującą dotyczy miesiąca deklaracji, za który firma jeszcze nie rozliczyła się z urzędem skarbowym (nie dokonała płatności do urzędu), to nie trzeba kopiować zaliczki podatku
Uwaga
W module Płace i Kadry Plus w wypłacie korygującej istnieje możliwość skopiowania kwoty zajęcia wynagrodzenia z wypłaty anulowanej. Przycisk do kopiowania pierwotnej kwoty zajęcia znajduje się na formularzu elementu wypłaty. Zmiana kwoty zajęcia spowoduje automatyczne przeliczenie płatności dla komornika.
W ostatnim kroku należy uzgodnić kwotę płatności dla pracownika. W wypłacie korygującej zalecamy skopiowanie płatności z wypłaty anulowanej (na kwotę taką, jaką pracownik faktycznie otrzymał). Płatność generowana z wypłaty korygującej nie podlega rozliczeniu. W celu skopiowania płatności z wypłaty anulowanej należy w formularzu wypłaty korygującej przejść do Schematu płatności  (przycisk w dolnym prawym rogu okna) i w oknie listy płatności zaznaczyć parametr Ręczna korekta płatności w wypłacie. Po zaznaczeniu parametru Ręczna korekta płatności w wypłacie należy nacisnąć przycisk Kopiowanie listy płatności. Po naciśnięciu na ikonę pojawi się pytanie czy: Skopiować listę płatności z anulowanej wypłaty?. Akceptacja spowoduje skopiowanie płatności z anulowanej wypłaty. Po zapisaniu płatności na zakładce [Elementy wypłaty] pojawi się nowy składnik nieopodatkowany Korekta netto wypłaty” (jako różnica w płatności między wypłatą anulowaną a korygującą). Ta korekta netto wypłaty powinna zostać rozliczona w kolejnej wypłacie pracownika z wartością przeciwną, tzn. jeżeli w wypłacie korygującej została wygenerowana „Korekta netto wypłaty” jako kwota ujemna, to w najbliższej wypłacie powinna wygenerować się Spłata korekty netto wypłaty” z taką samą dodatnią kwotą i odwrotnie. Po skopiowaniu płatności z wypłaty anulowanej należy zapisać wypłatę korygującą. W tle zostanie wygenerowania również wypłata stornująca. W wypłacie ‘Stornującej’ wszystkie elementy zostawały naliczone dokładnie tak samo jak w wypłacie ‘Anulowanej’, ale z przeciwnym znakiem. Ma to znaczenie wyłącznie do księgowania wypłaty, aby wyksięgować wypłatę anulowaną lub aby wyliczyć różnicowo kwoty do zaksięgowania. Aby zobaczyć wypłatę stornującą należy podświetlić wypłatę korygującą (w oknie Wypłaty pracowników) i pod prawym przyciskiem myszy (menu kontekstowe) wybrać Pokaż wypłaty stornujące. Pojawi się okienko z wypłatą korygującą oraz stornującą.

Pojawi się okienko z wypłatą korygującą oraz stornującą.

Uwaga
Wypłata stornująca pomijana jest przy obliczeniach, deklaracjach, wydrukach.
Jeżeli Użytkownik nie zdecyduje się na samodzielne ręczne korygowanie podatku i płatności według opisu powyżej, podczas zapisu wypłaty korygującej po naciśnięciu ikony ‘dyskietki’, pojawią się następujące pytania:

Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej?

Akceptacja powyższego komunikatu spowoduje automatyczne skopiowanie podatku z wypłaty anulowanej. Jeżeli zostanie wybrana opcja ‘Nie’, zaliczka podatku pozostanie bez zmian.

 W kolejnym kroku Użytkownik otrzyma pytanie:

Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach.

Wybór opcji ‘TAK’ spowoduje automatyczne zaznaczenie w wypłacie parametru ‘Ręczna korekta płatności w wypłacie’ oraz zostanie skopiowana płatność z anulowanej wypłaty, do której naliczana jest korekta. Do listy elementów wypłaty zostanie dodany element 'Korekta netto wypłaty’, rozliczenie nastąpi w kolejnych wypłatach pracownika.

 2.7 Korygowanie wypłaty korygującej

W przypadku błędnie naliczonej wypłaty korygującej, istnieje możliwość anulowania wypłaty oraz ponowne naliczenie korekty. Po wybraniu listy płac korygującej w oknie Wypłaty pracowników oraz wskazaniu wypłaty (status: zamknięta lub zaksięgowana), która ma zostać anulowana, z menu kontekstowego pod prawym przyciskiem myszy należy wybrać jedną z dostępnych opcji: Anuluj wypłatę lub Koryguj wypłatę. Opis działania obu funkcji został szczegółowo opisany w punkcie 2.1 Anulowanie wypłaty. Na oknie Wypłaty pracowników po wybraniu listy płac korygującej wyświetlane są osoby, które mają wypłatę o statusie anulowana na liście płac, z którą jest powiązana wybrana lista. W sytuacji, w której pierwotna lista korygująca ma symbol EKOR, to dodając kolejną korektę za ten sam okres należy podać inne oznaczenie listy. W przypadku wyboru użytego już wcześniej symbolu listy płac (EKOR) zostanie wyświetlony komunikat: Istnieje możliwość zdefiniowania nowego dokumentu z innym symbolem listy płac (np. EKOR1, EKOR2) z okna formularza listy płac po wybraniu opcji ‘Dokument’ i dodaniu nowego symbolu przy pomocy ikony ‘Plusa’. Wypłata korygująca nalicza się zgodnie z ustawieniami w danych pracownika, które są wprowadzone w momencie naliczania wypłaty korygującej. Dodatkowo w wypłacie korygującej do korekty naliczany jest nowy element ‘Korekta netto z poprzedniej wypłaty’. Składnik nalicza się w sytuacji, gdy w wypłacie anulowanej było wykonane kopiowanie płatności i był naliczony element ‘Korekta netto wypłaty’ lub ‘Korekta netto z poprzedniej wypłaty’. Element jest naliczany w celu poprawnego ustalenia różnicy w kwocie netto pomiędzy wypłatami. W wypłacie korygującej naliczanej do korekty, podobnie jak w pierwotnej korekcie, można skopiować zaliczkę podatku (na taką, jaka była zapisana w korekcie), oraz skopiować płatność z anulowanej wypłaty korygującej. Po skopiowaniu płatności, na zakładce [Elementy wypłaty], pojawi się składnik ‘Korekta netto wypłaty (jako różnica w płatności między anulowaną wypłatą korygującą, a bieżącą korektą). Przy braku ręcznego kopiowania podatku i płatności z anulowanej wypłaty, podczas zapisu wypłaty korygującej pojawią się pytania dotyczące kopiowania podatku oraz płatności z anulowanej wypłaty, analogicznie jak przy pierwszej wykonywanej korekcie.

2.8 Preliminarz płatności

  W module Kasa/Bank status płatności wypłaty korygującej domyślne  jest ustawiony na „Nie podlega” rozliczeniu, ponieważ w tej wypłacie zalecamy kopiowanie płatności z wypłaty anulowanej, którą pracownik już otrzymał. Mechanizm kopiowania płatności został omówiony w poprzednim podrozdziale. Jeżeli użytkownik w wypłacie korygującej nie decyduje się na kopiowanie płatności z wypłaty anulowanej, wtedy kwoty płatności z tych dwóch wypłat mogą różnić się i tą ewentualną różnicę należy wypłacić/potrącić pracownikowi. Jeśli różnica ma być wypłacona jako dodatkowy przelew, czy dodatkowa wypłata gotówki w kasie, to należy w module Kasa/Bank w Preliminarzu płatności podzielić płatność pracownika pochodzącą z wypłaty korygującej na dwie części (funkcja podziału płatności dostępna pod prawym przyciskiem myszy na danej płatności):
  • zapłaconą (z wypłaty obecnie anulowanej), w której pozostawiamy status na Nie podlega rozliczeniu;
  • należną do zapłaty, którą przelejemy/wypłacimy dodatkowo pracownikowi – tutaj zmieniamy status na Nie rozliczono. Po jej zrealizowaniu (wypłaceniu) można tą płatność rozliczyć w Kasie/Banku z odpowiednim zapisem kasowo/bankowym.

2.9 Korekta deklaracji ZUS

Po naliczeniu wypłaty korygującej możemy przygotować korygującą deklarację DRA do ZUS. W tym celu należy przejść do okna Deklaracje ZUS rozliczeniowe, dodać nową deklarację i wybrać odpowiedni miesiąc/rok, za który chcemy przygotować korektę. Program automatycznie zaproponuje kolejny identyfikator np. 02/06/2023, gdzie 02 - oznacza numer kolejno naliczonej deklaracji za 06.2023. Deklarację należy przeliczyć przyciskiem i zapisać. Tak zapisaną deklarację możemy wyeksportować do pliku *.xml Przygotowując korygującą deklarację DRA program uwzględnia na nowo wszystkie załączniki, dla wszystkich osób (nie tylko dla osób, dla których były korygowane wypłaty). I tym samym na deklaracji DRA są wykazane pełne kwoty na poszczególne ubezpieczania (z wszystkich załączników).
Wskazówka
W korygującej deklaracji rozliczeniowej DRA płatność generowana jest w pełnej wysokości tzn. nie jest wyliczana różnica pomiędzy deklaracją korygującą a pierwotną.
Jeżeli w wyniku korekty deklaracji wynika potrzeba dopłaty do ZUS, to w module Kasa/Bank z poziomu Preliminarza płatności można podzielić płatności wynikające z korygującej deklaracji DRA na 2 części (opcja pod prawym przyciskiem myszy na danej płatności):
  • zapłaconą, w której ustawiamy status na „Nie podlega” rozliczeniu;
  • należną do zapłaty, którą przelejemy do ZUS.
Uwaga
Korygująca deklaracja DRA zawsze zawiera załączniki dla wszystkich osób (nie tylko dla osób, dla których były korygowane wypłaty).

2.10 Kwitek wypłaty korygującej

Po naliczeniu wypłaty korygującej można wydrukować Kwitek wypłaty korygującej, który jest dostępny z poziomu otwartego formularza listy płac korygującej. Wydruk ten zawiera zbiorcze informacje o przeprowadzonej korekcie: dane z wypłaty anulowanej, z wypłaty korygującej oraz wyliczenie różnicowe kwot.

3 Przykłady korygowania wypłat dotyczące pracownika etatowego

3.1 Zmiana wynagrodzenia za czas choroby na zasiłek opiekuńczy za poprzednie lata

Pracodawca w poprzednim roku podatkowym, np. 12.2022, za który pracownik już się rozliczył, wypłacił pracownikowi wynagrodzenie chorobowe zamiast zasiłku. Wynagrodzenie za czas choroby podlegało składce zdrowotnej, zasiłek chorobowy nie podlega.  W tej sytuacji pracownik ma nadpłatę składki zdrowotnej . W bieżącym roku pracodawca powinien zwrócić pracownikowi pełną składkę na ubezpieczenie zdrowotne.
Przykład
Pracownik zatrudniony na stawkę  6000 zł, w 12.2022 był 5 dni na zwolnieniu lekarskim (05-09.12.2022), za które otrzymał wynagrodzenie za czas choroby zamiast zasiłku opiekuńczego nad chorym dzieckiem. Za ten miesiąc miał wypłacone: - wynagrodzenie zasadnicze w wys. 5000zł (6000 zł – 6000zł * 5/30 = 6000 zł – 1000 zł = 5000 zł) - wynagrodzenie chorobowe za 5 dni w wys. 690,30 zł (80%); podstawa zasiłku: 6000zł - 13,71% = 5177,40zł 
W celu dokonania korekty w programie proponujemy wykonać następujące operacje: 1. W oknie Wypłaty pracowników, wybrać listę płac za 12.2022, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 2. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić! Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). 3. W kalendarzu (Nie)obecności, na zakładce Nieobecności, należy podświetlić odpowiednią nieobecność (‘Zwolnienie chorobowe’: 05-09.12.2022), następnie pod prawym przyciskiem myszy należy wybrać opcję ‘Koryguj nieobecność’. Po wybraniu opcji ‘Koryguj nieobecność’ pojawi się pytanie: Czy skorygować nieobecność? Korygowanie wiąże się z anulowaniem nieobecności. Operacji nie można odwrócić! Po zaakceptowaniu komunikatu, nieobecność zostanie anulowana w tle oraz automatycznie zostanie wyświetlone okno formularza nieobecności w celu wprowadzenia nieobecności korygującej. W typie nieobecności należy wybrać ‘Urlop opiekuńczy (zasiłek). Następnie należy zapisać formularz nieobecności oraz kalendarz (Nie)obecności. 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla wyświetlonego pracownika należy naliczyć wypłatę korygującą. W elementach wypłaty pojawi się składnik ‘Zasiłek opiekuńczy’ (zamiast wynagrodzenia za czas choroby). W tym kroku należy sprawdzić również poprawność wyliczeń pozostałych naliczonych elementów. Zapisujemy wypłatę. 5. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2)Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach 6. Zapisujemy wypłatę korygującą. Wyliczenia w wypłacie anulowanej i korygującej:
L.p.Opis pozycjiWypłata 12.2022
(anulowana)
Wypłata 12.2022
(korygująca)
Różnica
(wypł. anul.– koryg.)
1Wynagrodzenie zasadnicze5000,005000,00
2Wynagrodzenie za czas choroby
zostaje zmieniony na
zasiłek opiekuńczy
Wynagr.chorob.
(80%)
690,30
Zasiłek opiekuńczy (80%)
690,30
3Podstawa wymiaru składek na ubezpieczenia społeczne (poz.1)50005000
4Składki społeczne finansowane przez pracownika
(poz.3x9,76% + poz.3x1,5% + poz.3x2,45%)
685,50685,50
5Podstawa składki zdrowotnej
(poz.3-poz.4) + wynagrodzenie chorobowe
5004,804314,50
6Składka zdrowotna pobrana
(poz.5x9%)
450,43388,3162,12
(nadpłata)
7Koszty uzyskania przychodu250,00250,00
8Ulga podatkowa300300
9Podstawa opodatkowania po zaokrągleniu (poz.1+poz.2-poz.4-poz.7)4754,804754,80
10Naliczona zaliczka podatku
(poz.9 *12% - poz.8)
270,60270,60
11Zaliczka podatku do U.S.
po zaokrągleniu
271,00271,00 przed skopiowaniem podatku
12Do wypłaty
(poz.1+poz.2-poz.4-poz.6–poz.141
2132,182136,25 przed skopiowaniem płatności- 62,12(niedopłata)

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

13Zaliczka podatku do US
skopiowana z wypłaty anulowanej
271,00
14Płatność do wypłaty
skopiowana z wypłaty anulowanej
4283,37
15Korekta netto wypłaty-62,12(nadpłata składki zdrowotnej pobranej)
W bieżącym miesiącu naliczając wypłatę etatową pojawi się automatycznie Spłata korekty netto wypłaty w wys. 62,12 zł (kwota dodatnia) jako zwrot nadpłaconej składki zdrowotnej pobranej.
Uwaga
W przypadku konieczności zwrotu składki zdrowotnej pobranej (9%): a) Za okres 12.2021r. – wartość zwróconej składki zdrowotnej nienależnie pobranej oraz poprzednio odliczonej od zaliczki podatku, powinna zostać doliczona w zeznaniu podatkowym, w roku, w którym nastąpił zwrot (art.45 ust.3a pkt.1 ustawy PIT). b) Po 01.01.2022r. – zwrot nadpłaconej składki zdrowotnej nie wpływa na zaliczkę podatku.

3.2 Zmiana wynagrodzenia za czas choroby na zasiłek chorobowy z ubezpieczenia wypadkowego w bieżącym roku podatkowym

W bieżącym roku podatkowym (np. w lutym br.) pracownikowi wypłacono wynagrodzenie chorobowe (80%) zamiast zasiłku chorobowego z ubezpieczenia wypadkowego (100%). Wynagrodzenie za czas choroby podlegało składce zdrowotnej, zasiłek wypadkowy nie podlega. W tej sytuacji pracownik ma nadpłatę składki zdrowotnej i niedopłatę podatku.
Przykład
Pracownik zatrudniony na stawkę 6000 zł, w marcu bieżącego roku był 15 dni na zwolnieniu lekarskim, za które otrzymał wynagrodzenie za czas choroby (zamiast zasiłku chorobowego z tytułu wypadku). Za ten miesiąc pracownik miał wypłacone:
  • Wynagrodzenie zasadnicze w wys. 3000 zł (6000 zł – 6000 zł*15/30 = 6000 zł – 3000 zł = 3000 zł
  • Wynagrodzenie za czas choroby w wys, 2070,90 (80%)
Podstawa zasiłku: 5177,40 zł (6000 zł – 13,71%)
W celu dokonania korekty w programie proponujemy wykonać następujące operacje: 1. W oknie Wypłaty pracowników, wybrać listę płac za 03.2023, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 2. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić! Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy. 3. W kalendarzu (Nie)obecności, na zakładce Nieobecności, należy podświetlić odpowiednią nieobecność (01 – 15.03.2023), następnie pod prawym przyciskiem myszy należy wybrać opcję ‘Koryguj nieobecność’. Po wybraniu opcji ‘Koryguj nieobecność’ pojawi się pytanie: Czy skorygować nieobecność? Korygowanie wiąże się z anulowaniem nieobecności. Operacji nie można odwrócić! Po zaakceptowaniu komunikatu, nieobecność zostanie anulowana w tle oraz automatycznie zostanie wyświetlone okno formularza nieobecności w celu wprowadzenia nieobecności korygującej. W typie nieobecności należy wybrać: Zwolnienie chorobowe, przyczyna: Wypadek w pracy/choroba zawodowa. Następnie należy zapisać formularz nieobecności oraz kalendarz (Nie)obecności. 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla wyświetlonego pracownika należy naliczyć wypłatę korygującą. W elementach wypłaty pojawi się składnik ‘’Zasiłek chorobowy/wyp.’ (zamiast wynagrodzenia za czas choroby). Należy edytować ten element wypłaty i skorygować % zasiłku ze 100% na 80% i przeliczyć. W tym kroku należy sprawdzić również poprawność wyliczeń pozostałych naliczonych elementów. Zapisujemy wypłatę. 5. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2)Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian 6. Zapisujemy wypłatę korygującą. Wyliczenia w wypłacie anulowanej i korygującej:
L.p.Opis pozycjiWypłata
w marcu br.
(anulowana)
Wypłata
w marcu br.
(korygująca)
Różnica
(wypł. anulowana– koryg.)
1Wynagrodzenie zasadnicze30003000
2Wynagrodzenie za czas choroby zostaje zmienione na zasiłek chorobowy/wyp.2070,90Należna wartość zasiłku wyp. (100%)
2588,70 która zostaje zmniejszona do kwoty 80%
2070,90
Niedopłata 20%
-517,80((2070,90 – 2588,70)
zostanie wypłacona jako Wyrównanie zasiłku chorobowego z ubezp. wyp. w bieżącej wypłacie
3Podstawa wymiaru składek na ubezpieczenia społeczne (poz.1)30003000
4Składki społeczne finansowane przez pracownika
(poz.3x9,76% + poz.3x1,5% + poz.3x2,45%)
411.30411.30
5Podstawa skł. zdrowotnej
(poz.3-poz.4) + wynagrodzenie chorobowe
4659,602588,70
6Składka zdrowotna pobrana
(poz.5x9%)
419,36232,98186,38(nadpłata)
7Koszty uzyskania przychodu250,00250,00
8Ulga podatkowa300,00300,00
9Podstawa opodatkowania
po zaokrągleniu
(poz.1+poz.2-poz.4-poz.7)
4409,604409,60
10Naliczona zaliczka podatku
(poz.9*12% -poz.8)
229,20229,20
11Zaliczka podatku do U.S.
po zaokrągleniu
229,00229,00 przed skopiowaniem podatku
12Do wypłaty
(poz.1+poz.2-poz.4-poz.6–poz.11)
4011,244197,62 przed skopiowaniem płatności-186,38
(niedopłata)

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

13Zaliczka podatku do US
skopiowana z wypłaty anulowanej
229
14Płatność do wypłaty
skopiowana z wypłaty anulowanej
4011,24
15Korekta netto wypłaty-186,38(nadpłata składki zdrowotnej pobranej)
Naliczając bieżącą wypłatę pojawi się automatycznie Spłata korekty netto wypłaty w wys.186,38 (zwrot nadpłaty składki zdrowotnej ). Dodajemy Wyrównanie zasiłku chorobowego z ubezpieczenia wypadkowego (20%), podając okres od – do, za który wyrównujemy (1-15.03 br) i kwotę wyrównania (w wys. 517,80) Wyliczenia w bieżącej wypłacie:
L.p.Opis pozycjiWypłata bieżąca
1Wynagrodzenie zasadnicze6000
2Spłata korekty netto wypłaty
(nieopodatkowany)
186,38 1)
3Wyrównanie zasiłku chorobowego z ubezp.wyp. (opodatkowany)517,80 2)
4Podstawa wymiaru składek na ubezpieczenia społeczne (poz.1)6000,00
5Składki społeczne finansowane przez pracownika (poz.4x9,76% + poz.4x1,5% + poz.4x2,45%)822,60
6Podstawa skł. zdrowotnej (poz.4-poz.5)5177,40
7Składka zdrowotna pobrana (poz.6x9%)465,97
8Koszty uzyskania przychodu250,00
9Ulga podatkowa300
10Podstawa opodatkowania (poz.1+poz.3-poz.5-poz.8)5445,20
11Naliczona zaliczka podatku (poz.10*12% - poz.9)353,40
15Zaliczka podatku do U.S. po zaokrągleniu353,00
16Do wypłaty (poz.1+poz.2+poz.3-poz.5-poz.7-poz.12)5062,61
1) Zwrot składki zdrowotnej pobranej niesłusznie w lutym br. 2) Dodanie elementu wyrównania 20% zasiłku chorobowego z ubezpieczania wypadkowego.

3.3 Zmiana zasiłku chorobowego na wynagrodzenie chorobowe za poprzednie lata

W minionym roku podatkowym, za który pracownik się rozliczył, pracodawca musi dokonać korekty, ponieważ został wypłacony zasiłek chorobowy zamiast wynagrodzenia chorobowego. Od zasiłku prawidłowo nie zostały odprowadzone ani składki społeczne, ani zdrowotna. Od wynagrodzenia za czas choroby powinna być odprowadzona składka zdrowotna – w tej sytuacji dla pracownika wystąpiła niedopłata składki zdrowotnej /
Przykład
Pracownik zatrudniony na stawkę 6000 zł, w 8.2022 był 10 dni (od 01-10.08.2022) na zwolnieniu lekarskim, za które otrzymał zasiłek chorobowy z ubezpieczenia wypadkowego, a powinien wynagrodzenie za czas choroby (był to wypadek w drodze do pracy) i pracownik nie wykorzystał 33 dni limitu w roku kalendarzowym. Za ten miesiąc miał wypłacone:
  • Wynagrodzenie zasadnicze w wys.4000 zł (6000 zł – 6000 żł * 10/30 = 6000 zł – 2000 zł = 4000 zł)
  • Zasiłek chorobowy/wyp za 10 dni w wys. 1725,80 zł (100%),
Podstawa zasiłku: 6000 zł – 13,71% = 5177,40 zł
W celu dokonania korekty w programie proponujemy wykonać następujące operacje: 1. W oknie Wypłaty pracowników, wybrać listę płac za 08.2022, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 2. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić! Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy. 3. W kalendarzu (Nie)obecności, na zakładce Nieobecności, należy podświetlić odpowiednią nieobecność (01 – 15.08.2022), następnie pod prawym przyciskiem myszy należy wybrać opcję ‘Koryguj nieobecność’. Po wybraniu opcji ‘Koryguj nieobecność’ pojawi się pytanie: Czy skorygować nieobecność? Korygowanie wiąże się z anulowaniem nieobecności. Operacji nie można odwrócić! Po zaakceptowaniu komunikatu, nieobecność zostanie anulowana w tle oraz automatycznie zostanie wyświetlone okno formularza nieobecności w celu wprowadzenia nieobecności korygującej. W typie nieobecności należy wybrać: Zwolnienie chorobowe, przyczyna: Wypadek w drodze do/z pracy. Następnie należy zapisać formularz nieobecności oraz kalendarz (Nie)obecności. 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla wyświetlonego pracownika należy naliczyć wypłatę korygującą. W elementach wypłaty pojawi się automatycznie składnik wynagrodzenie za czas choroby (100%), zamiast zasiłku chorobowego/wyp. (100%). W tym kroku należy sprawdzić również poprawność wyliczeń pozostałych naliczonych elementów. Zapisujemy wypłatę. 5. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian 6. Zapisujemy wypłatę korygującą.
Wyliczenia w wypłacie anulowanej i korygującej:
L.p.Opis pozycjiWypłata 8.2020
(anulowana)
Wypłata 8.2020
(korygująca)
Różnica
(wypł. anul.– koryg.)
1Wynagrodzenie zasadnicze4000,004000,00
2Zasiłek chorobowy/wyp zostaje zmieniony na Wynagrodzenie za czas chorobyZasiłek chor/wyp. (100%)
1725,80
Wynagr.
chorobowe.
(100%)
1725,80
3Podstawa wymiaru składek na ubezpieczenia społeczne (poz.1)4000,004000,00
4Składki społeczne finansowane przez pracownika
(poz.3x9,76% + poz.3x1,5% + poz.3x2,45%)
548,40548,40
5Podstawa składki zdrowotnej
(poz.3-poz.4) + wynagr. chorobowe
3451,605177,40
6Składka zdrowotna
(poz.5x9%)
310,64465,97-155,33
(niedopłata)
7Koszty uzyskania przychodu250,00250,00
8Ulga podatkowa300,00300,00
9Podstawa opodatkowania
(poz.1+poz.2-poz.4-poz.7)
4927,404927,40
10Naliczona zaliczka podatku (poz.9 *12% - poz.8)291,24291,24
11Zaliczka podatku do U.S. po zaokrągleniu291,00291,00 przed skopiowaniem podatku
12Do wypłaty
(poz.1+poz.2-poz.4-poz.6–poz.11)
4575,764420,43przed skopiowaniem płatności155,33(nadpłata)

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

13Zaliczka podatkowa do US skopiowana z wypłaty anulowanej291,00
14Płatność do wypłaty skopiowana z wypłaty anulowanej4575,76
15Korekta netto wypłaty155,33
Naliczając bieżącą wypłatę pojawi się automatycznie Spłata korekty netto wypłaty w wys. -155,33 zł jako potrącenie niedopłaty składki zdrowotnej. Wyliczenia w bieżącej wypłacie:
L.p.Opis pozycjiWypłata bieżąca
1Wynagrodzenie zasadnicze6000,00
2Spłata korekty netto wypłaty (nieopodatkowany)-155,33 1)
3Podstawa wymiaru składek na ubezpieczenia społeczne
(poz.1)
6000,00
4Składki społeczne finansowane przez pracownika
(poz.3x9,76% + poz.3x1,5% + poz.3x2,45%)
822,60
5Podstawa składki zdrowotnej (poz.3-poz.4)5177,40
6Składka zdrowotna pobrana (poz.5x9%)465,97
7Koszty uzyskania przychodu250,00
8Ulga podatkowa300,00
9Podstawa opodatkowania po zaokrągleniu
(poz.1-poz.4-poz.7)
4927,40
10Naliczona zaliczka podatku(poz.9 *12% - poz.9)291,24
11Zaliczka podatku do U.S. po zaokrągleniu291,00
12Do wypłaty
(poz.1+poz.2-poz.4-poz.6-poz.11)
4265,10
1) Potrącenie z tytułu niedopłaty składki zdrowotnej (pobranej) w 08.2022.

3.4 Zmiana zasiłku opiekuńczego na wynagrodzenie chorobowe w bieżącym roku podatkowym

W bieżącym roku podatkowym pracodawca wypłacił pracownikowi zasiłek opiekuńczy zamiast wynagrodzenia za czas choroby. W tym przypadku pracownik ma niedopłatę składki zdrowotnej .W bieżącej wypłacie pracownikowi zostanie potrącona zaległa składka zdrowotna .
Przykład
Pracownik zatrudniony na stawkę 6000 zł, w marcu bieżącego roku był 2 dni (01-02.03) na zwolnieniu lekarskim, za które otrzymał zasiłek opiekuńczy a powienien wynagrodzenie za czas choroby. Za ten miesiąc pracownik miał wypłacone:
  • Wynagrodzenie zasadnicze w wys. 5600 zł (6000 zł – 6000zł * 2/30 = 6000 zł – 400 zł = 5600 zł
  • Zasiłek opiekuńczy za 2 dni w wys. 276,12 (80%),
Podstawa zasiłku: 6000 zł – 13,71% = 5177,40 zł
W celu dokonania korekty w programie proponujemy wykonać następujące operacje: 1. W oknie Wypłaty pracowników, wybrać listę płac za marzec bieżącego roku, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 2. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić! Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy. 3. W kalendarzu (Nie)obecności, na zakładce Nieobecności, należy podświetlić odpowiednią nieobecność (01 – 02.03.br), następnie pod prawym przyciskiem myszy należy wybrać opcję ‘Koryguj nieobecność’. Po wybraniu opcji ‘Koryguj nieobecność’ pojawi się pytanie: Czy skorygować nieobecność? Korygowanie wiąże się z anulowaniem nieobecności. Operacji nie można odwrócić! Po zaakceptowaniu komunikatu, nieobecność zostanie anulowana w tle oraz automatycznie zostanie wyświetlone okno formularza nieobecności w celu wprowadzenia nieobecności korygującej. W typie nieobecności należy wybrać: Zwolnienie chorobowe, przyczyna: Zwolnienie lekarskie. Następnie należy zapisać formularz nieobecności oraz kalendarz (Nie)obecności. 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla wyświetlonego pracownika należy naliczyć wypłatę korygującą. W elementach wypłaty pojawi się automatycznie wynagrodzenie za czas choroby (80%), zamiast zasiłku opiekuńczego (80%). W tym kroku należy sprawdzić również poprawność wyliczeń pozostałych naliczonych elementów. Zapisujemy wypłatę. 5. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian 6. Zapisujemy wypłatę korygującą. Wyliczenia w wypłacie anulowanej i korygującej:
L.p.Opis pozycjiWypłata 9.2017
(anulowana)
Wypłata 9.2017
(korygująca)
Różnica
(wypł. anul.– koryg.)
1Wynagrodzenie zasadnicze5600,005600,00
2Zasiłek chorobowy/wyp zostaje zmieniony na Wynagrodzenie za czas chorobyZasiłek opiekuńczy (80%)
276,12
Wynagr. chorobowe
(80%)
276,12
3Podstawa wymiaru składek na ubezpieczenia społeczne (poz.1)5600,005600,00
4Składki społeczne finansowane przez pracownika
(poz.3x9,76% + poz.3x1,5% + poz.3x2,45%)
767,76767,76
5Podstawa składki zdrowotnej
(poz.3-poz.4) + wynagr. chorobowe
4832,244832,24
6Składka zdrowotna pobrana
(poz.5x9%)
434,90434,90-24,85
(niedopłata)
7Koszty uzyskania przychodu250,00250,00
8Ulga podatkowa300,00300,00
9Podstawa opodatkowania po
(poz.1+poz.2-poz.4-poz.7)
4858,364858,36
10Naliczona zaliczka podatku (poz.9 *12% - poz.8)282,96282,96
11Zaliczka podatku do U.S. po zaokrągleniu283,00283,00 przed skopiowaniem podatku
12Do wypłaty
(poz.1+poz.2-poz.4-poz.6–poz.11)
4390,464 365,61 przed skopiowaniem płatności24,85(nadpłata)

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

13Zaliczka podatkowa do US skopiowana z wypłaty anulowanej283,00
14Płatność do wypłaty skopiowana z wypłaty anulowanej4390,46
15Korekta netto wypłaty24,85(niedopłata skł. zdrow. pobranej
Naliczając bieżącą wypłatę pojawi się automatycznie Spłata korekty netto wypłaty w wys. -12,43 zł (w tym przypadku pobranie niedopłaty składki zdrowotnej). Wyliczenia w bieżącej wypłacie:
L.p.Opis pozycjiWypłata bieżąca
1Wynagrodzenie zasadnicze6000,00
2Spłata korekty netto wypłaty (nieopodatkowany)-24,85 1)
3Podstawa wymiaru składek na ubezpieczenia społeczne
(poz.1)
6 000,00
4Składki społeczne finansowane przez pracownika
(poz.3x9,76% + poz.3x1,5% + poz.3x2,45%)
822,60
5Podstawa składki zdrowotnej (poz.3-poz.4)5 177,40
6Składka zdrowotna pobrana (poz.5x9%)465,97
7Koszty uzyskania przychodu250
8Ulga podatkowa300,00
9Podstawa opodatkowania po zaokrągleniu
(poz.1-poz.4-poz.7)
4 927,40
10Naliczona zaliczka podatku(poz.9 *12% - poz.8)291,24
11Zaliczka podatku do U.S. po zaokrągleniu291,00
12Do wypłaty
(poz.1+poz.2-poz.4-poz.6-poz.11)
4 395,58
1) Potrącenie z tytułu niedopłaty składki zdrowotnej (pobranej) w marcu br.

3.5 Zmiana wynagrodzenia za czas urlopu na wynagrodzenie chorobowe w bieżącym roku podatkowym

W bieżącym roku podatkowym pracownik przebywając na urlopie wypoczynkowym zachorował i po naliczeniu wypłat poinformował pracodawcę o otrzymanym zwolnieniu lekarskim.

Pracownik otrzymał za wysoki przychód, ponieważ za czas chorobowy otrzymuje wynagrodzenie w wys. 80%. Dodatkowo ma nadpłatę składek społecznych.

Przykład
Pracownik zatrudniony na stawkę 6000 zł/mc w czerwcu bieżącego roku przebywał na urlopie wypoczynkowym w okresie 22-30.06. Po naliczeniu wypłaty za czerwiec br., dostarczył za ostatnie 2 dni czerwca (29-30.06) zwolnienie lekarskie, które przerywa urlop.
W celu dokonania korekty w programie proponujemy wykonać następujące operacje: 1. W oknie Wypłaty pracowników, wybrać listę płac za czerwiec bieżącego roku, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 2. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić! Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy. 3. W kalendarzu (Nie)obecności, na zakładce Nieobecności, należy podświetlić odpowiednią nieobecność (22-30.06.br), następnie pod prawym przyciskiem myszy należy wybrać opcję ‘Koryguj nieobecność’. Po wybraniu opcji ‘Koryguj nieobecność’ pojawi się pytanie: Czy skorygować nieobecność? Korygowanie wiąże się z anulowaniem nieobecności. Operacji nie można odwrócić! Po zaakceptowaniu komunikatu, nieobecność zostanie anulowana w tle oraz automatycznie zostanie wyświetlone okno formularza nieobecności w celu wprowadzenia nieobecności korygującej. W typie nieobecności należy najpierw wprowadzić nieobecność Urlop wypoczynkowy (22-28.06) a następnie drugą nieobecność korygującą Zwolnienie chorobowe (29-30.06). Następnie należy zapisać formularz nieobecności oraz kalendarz (Nie)obecności. 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla wyświetlonego pracownika należy naliczyć wypłatę korygującą. W elementach wypłaty pojawią się automatycznie składniki: wynagrodzenie za czas urlopu (22-28.06)  oraz wynagrodzenie za czas choroby (29-30.06). W tym kroku należy sprawdzić również poprawność wyliczeń pozostałych naliczonych elementów. Zapisujemy wypłatę 5. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian – wskazujemy NIE, w tym przypadku zaliczka podatku nie została jeszcze odprowadzona do Urzędu Skarbowego za ten miesiąc. 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian 6. Zapisujemy wypłatę korygującą. Wyliczenia w wypłacie anulowanej i korygującej:
L.p.Opis pozycjiWypłata w czerwcu br. (anulowana)Wypłata w czerwcu br.
(korygującą)
Różnica
(wypł. anul.– koryg.)
1Wynagrodzenie zasadnicze4000,004 171,43
2Wynagrodzenie za czas urlopu2000,001 428,57
3Wynagrodzenie za czas chorobybrak276,12
4Przychód
(poz.1+poz.2+poz.3)
6000,005 876,12123,88
(nadpłata)
5Podstawa wymiaru składek na ubezpieczenia społeczne
(poz.1+poz.2)
6 000,005 600,00
6Składki społeczne finansowane przez pracownika
(poz.5x9,76% + poz.5x1,5% + poz.5x2,45%)
822,60767,7654,84
(nadpłata)
7Podstawa składki zdrowotnej
(poz.5 - poz.6) + poz. 3 (wyn.chorob.)
5 177,405 108,36
8Składka zdrowotna pobrana
(poz.7x9%)
465,97459,756,22
(nadpłata)
9KUP250,00250,00
10Ulga podatkowa300300
11Podstawa opodatkowania
(poz.4 -poz.6-poz.9)
4 927,404 858,36
12Naliczona zaliczka podatku(poz.11*12% -poz.10)291,24282,96
13Zaliczka podatku do U.S. po zaokrągleniu291,00283,00 bez kopiowania zaliczki podatku8,00
(nadpłata)
14Do wypłaty (poz.4-poz.6-poz.8–poz.13)4 420,434 365,6154,82
(nadpłata)

Formularz wypłaty korygującej (po skopiowaniu kwot płatności)

15Płatność do wypłaty skopiowana z wypłaty anulowanej4 420,43
16Korekta netto wypłaty54,82(nadpłata kwoty do wypłaty)
Naliczając bieżącą wypłatę pojawi się automatycznie Spłata korekty netto wypłaty w wys. 54,82. Wyliczenia w bieżącej wypłacie:
L.p.Opis pozycjiWypłata bieżąca
1Wynagrodzenie zasadnicze6 000,00
2Spłata korekty netto wypłaty (nieopodatkowany)-54,82 1)
3Podstawa wymiaru składek na ubezpieczenia społeczne
(poz.1)
6 000,00
4Składki społeczne finansowane przez pracownika
(poz.3x9,76% + poz.3x1,5% + poz.3x2,45%)
822,60
5Podstawa składki zdrowotnej (poz.3-poz.4)5 177,40
6Składka zdrowotna pobrana (poz.5x9%)465,97
7Koszty uzyskania przychodu250
8Ulga podatkowa300
9Podstawa opodatkowania po zaokrągleniu
(poz.1-poz.4-poz.7)
4 927,40
10Naliczona zaliczka podatku(poz.9 *12% - poz.7)291,00
11Zaliczka podatku do U.S. po zaokrągleniu291,00
12Do wypłaty
(poz.1+poz.2-poz.4-poz.6-poz.11)
4 365,61
1) Potrącenie z tytułu nadpłaty kwoty netto w czerwcu br. Na deklaracji podatkowej PIT-11 za bieżący rok zostaną wykazana poprawne kwoty: przychodu, składek społecznych,  i zaliczki na podatek dochodowy. Pracownik nie będzie miał nadpłaty zaliczki podatku w zeznaniu rocznym z tytułu tej korekty.
Uwaga
Gdyby w wypłacie korygującej została skopiowana zaliczka podatku z wypłaty anulowanej (w wys. 191,00), to wówczas po skopiowaniu płatności Korekta netto wypłaty wyniosłaby 62,82 (nadpłata kwoty netto w wys. 54,82 i nadpłata podatku w wys. 8,00). W bieżącej wypłacie dokonane byłoby potrącenie w wys. 62,82  (jako Spłata korekty netto wypłaty). Nadpłata zaliczki podatku w wys. 8,00 może zostać rozliczona dopiero w zeznaniu rocznym lub poprzez zmniejszenie podatku w bieżącej wypłacie (poprzez korektę ręczną zaliczki podatku).

3.6 Świadczenie rehabilitacyjne przyznane przez ZUS z opóźnieniem (zmiana nieobecności usprawiedliwionej na urlop rehabilitacyjny) w bieżącym roku podatkowym

Po wyczerpaniu okresu zasiłkowego pracownik nie może dłużej przebywać na zwolnieniu lekarskim. Jeśli dalsze leczenie lub rehabilitacja rokuje na odzyskanie zdolności do pracy, wówczas można wystąpić o świadczenie rehabilitacyjne. W praktyce decyzja o jego przyznaniu jest dostarczana często z opóźnieniem. W takiej sytuacji należy skorygować wykazaną wcześniej nieobecność usprawiedliwioną (RSA 151) na urlop rehabilitacyjny (RSA 321) od dnia przyznania świadczenia.

Przykład
ZUS poinformował, że pracownik w od 11 maja br. rozpoczął okres świadczenia rehabilitacyjnego. Za ten miesiąc wykazano wcześniej w raportach imiennych ZUS RSA nieobecność usprawiedliwioną (kod 151).
W celu dokonania korekty w programie proponujemy wykonać następujące operacje: 1. W oknie Wypłaty pracowników, należy wybrać listę płac za maj bieżącego roku, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 2. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić! Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy. 3. W kalendarzu (Nie)obecności, na zakładce Nieobecności, należy podświetlić odpowiednią nieobecność (11-31.05 br), następnie pod prawym przyciskiem myszy należy wybrać opcję ‘Koryguj nieobecność’. Po wybraniu opcji ‘Koryguj nieobecność’ pojawi się pytanie: Czy skorygować nieobecność? Korygowanie wiąże się z anulowaniem nieobecności. Operacji nie można odwrócić! Po zaakceptowaniu komunikatu, nieobecność zostanie anulowana w tle oraz automatycznie zostanie wyświetlone okno formularza nieobecności w celu wprowadzenia nieobecności korygującej. W typie nieobecności należy wybrać: wybierając typ nieobecności – Urlop rehabilitacyjny. Następnie należy zapisać formularz nieobecności oraz kalendarz (Nie)obecności. 4. W oknie Wypłaty pracowników wybrać listę korygującą i naliczyć wypłatę korygującą. Sprawdzić, czy naliczyły się poprawnie wszystkie elementy wypłaty. Usunąć z wypłaty element o nazwie „Świadczenie rehabilitacyjne”. Zaliczka podatku oraz kwota netto dla pracownika nie ulega zmianie – nie ma zatem potrzeby wykonywać kopiowania podatku ani kopiowania płatności. W związku z tym nie pojawi się również element Korekta netto wypłaty. Wypłatę korygującą należy zapisać. 5. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian Zaliczka podatku oraz kwota netto dla pracownika nie ulega zmianie – nie ma zatem potrzeby wykonywać kopiowania podatku ani kopiowania płatności. W związku z tym nie pojawi się również element Korekta netto wypłaty. 6. Zapisujemy wypłatę korygującą. 7. Założyć bieżącą etatową listę płac z opcją „Miesięcy wstecz”. Jeśli świadczenie rehabilitacyjne rozpoczęło się w maju, a bieżąca lista będzie liczona za czerwiec – wówczas należy ustawić Mies. wstecz = 1. Ilość miesięcy jest zależna od długości okresu jaki upłynął od miesiąca wyczerpania się prawa do zasiłku chorobowego do miesiąca, w którym dostarczono decyzję o przyznaniu świadczenia rehabilitacyjnego. 8. Naliczyć wypłatę na bieżącej liście etatowej. Pojawi się Świadczenie rehabilitacyjne za okres bieżący oraz za okres poprzedni (zależnie od ustawienia Mies. Wstecz)
Uwaga
W dokumentach rozliczeniowych ZUS DRA za bieżący miesiąc zostaną dodane załączniki RSA z kodem 321 za zaległe okresy. Złożenie takiego kompletu dokumentów automatycznie będzie stanowić korektę wcześniej wysłanych raportów RSA z kodem 151.

3.7 Przekroczenie rocznej podstawy wymiaru składek na ubezpieczenie emerytalno-rentowe za poprzednie lata

W wyniku przekroczenia rocznej podstawy wymiaru składek na ubezpieczenie emerytalno-rentowe mamy do czynienia z nadpłatą składek społecznych, niedopłatą składki zdrowotnej oraz niedopłatą zaliczki podatku. Jeżeli przekroczenie rocznej podstawy wymiaru składek na ubezpieczenie emerytalno-rentowe pracownika nastąpiło w poprzednim roku podatkowym, za który pracownik już się rozliczył z US, to dokonując korekty w bieżącym miesiącu pracodawca powinien wypłacić pracownikowi nadpłatę składek społecznych jako element opodatkowany (zwiększyć przychód, który należy opodatkować). Dodatkowo powinien potrącić z wypłaty pracownika niedopłatę składki zdrowotnej (pobranej).
Przykład
Pracownik zatrudniony na stawce 10 000 zł. ZUS poinformował, że pracownik w poprzednim roku (12.2022) przekroczył roczną podstawę składek emerytalnej i rentowej. Za ten miesiąc wykazano podstawę w wysokości 10000 zł, a powinna być w wysokości 5000 zł.
W celu dokonania korekty w programie proponujemy wykonać następujące operacje: 1. Na formularzu danych kadrowych pracownika (w zapisie historycznym aktualnym na 12/2022), na zakładce 5.Ubezpieczenie c.d. wprowadzić informację o przekroczeniu składek w miesiącu: Informacja przekazana przez – np. ZUS w polu Kwota wpisać 5000,00 zł z opcją Podstawa składki w pozycji Przekroczenie podstawy ustawić 12.2022 (miesiąc i rok deklaracji) Zapisać wprowadzone zmiany na formularz. 2. W oknie Wypłaty pracowników, wybrać listę płac za 12.2022 (miesiąc i rok deklaracji: grudzień 2022), podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 3. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić! Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy. 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla wyświetlonego pracownika należy naliczyć wypłatę korygującą. Sprawdzić, czy naliczyły się poprawnie wszystkie elementy wypłaty, podstawa składek ER (w wys. 5000 zł) i składki. Zapisujemy wypłatę. 5. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian Na zakładce Elementy wypłaty sprawdzić, czy pojawiła się Korekta netto wypłaty – w tym przypadku jest to kwota w wys. - 512,33 zł jako różnica między nadpłatą składek ER (563 zł) i niedopłaty składki zdrowotnej pobranej (50,67 zł). 6. Zapisujemy wypłatę korygującą.   Wyliczenia w wypłacie anulowanej i korygującej:
L.p.Opis pozycjiWypłata 12.2022
(anulowana)
Wypłata 12.2022(korygująca)Różnica
(wypł. anul.– koryg.)
1Wynagrodzenie zasadnicze10000,0010000,00
2Podstawa składek emerytalnej i rentowej10000,005000,005000,00
3Składka emerytalna (poz.2 x 9,76%)976,00488,00488,00
4Składka rentowa (poz.2 x 1,5%)150,0075,0075,00
5Podstawa składek chorobowej i wypadkowej10000,0010000,00
6Składka chorobowa (poz.5 x 2,45%)245,00245,00
7Składki ZUS pracownika (poz.3+poz.4+poz.6)1371,00808,00563,00 1)
(nadpłata)
8Podstawa zdrow. (poz.1-poz.7)8629,009192,00-563,00
9Składka zdrowotna pobrana (poz.8x9%)776,61827,28-50,67
(niedopłata)
10KUP250,00250,00
11Ulga podatkowa300300
12Podstawa opodatkowania
(poz.1-poz.7-poz.10)
8379,008942,00
13Naliczona zaliczka podatku (poz.12 *12% - poz.11)705,48773,04
14Zaliczka podatku do U.S. po zaokrągleniu705,00773,00 przed skopiowaniem podatku-68,00 3)
(niedopłata)
15Do wypłaty
(poz.1-poz.7-poz.9-poz.14)
7 147,397 591,72przed skopiowaniem płatności-444,33

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

16Zaliczka podatkowa do US skopiowana z wypłaty anulowanej705,00
17Płatność do wypłaty skopiowana z wypłaty anulowanej7 147,39
18Korekta netto wypłaty-512,33(nadpłata skł. ZUS 563,00 – niedopłata skł. zdrow. 50,67)

1) Kwota zwrotu składek emerytalnej i rentowej, która powinna zostać opodatkowana i wykazana w przychodzie deklaracji PIT-11 za bieżący rok.

3) Kwota niedopłaty podatku w wys. -68,00 zł wynika z braku opodatkowania nadpłaty składek ER czyli czyli: 563 zł (nadpłata składek ER) *12% = 67,56, po zaokrągleniu 68,00 zł W bieżącej wypłacie etatowej automatycznie pojawi się Spłata korekty netto wypłaty w wys. 512,33 zł jako różnica między nadpłatą składek ER (563,00 zł) i niedopłaty składki zdrowotnej pobranej (50,67 zł). Jest to element nieopodatkowany, który wyrównuje tylko kwotę netto (płatność) dla pracownika. Natomiast kwota zwrotu składek ER w pełnej wysokości (563,00 zł) powinna zostać wykazana jako przychód w bieżącym roku podatkowym, który należy opodatkować. W tym celu zalecamy zdefiniowanie nowego typu wypłaty (z poziomu Konfiguracja firmy / Płace / Typy wypłat) o nazwie np. Zwrot składek ER” i proponujemy ustawić odpowiednio pola: Na zakładce [Ogólne]:
  • Rodzaj - dodatek
  • Algorytm - 1 – kwota
  • Automatycznie korygować wynagrodzenie z tytułu - niezaznaczone
Na zakładce [Podatki/Nieobecności]:
  • Pozycja na deklaracji - PIT-4 1. Wynagrodzenie ze stosunku pracy
  • Podatek - naliczać wg progów
  • Zawsze naliczaj ulgę podatkowa [v] – zaznaczone
  • Sposób naliczania koszty uzyskania – standardowe (lub nie naliczać)
  • Sposób naliczania składek ZUS i składki zdrowotnej – nie naliczać
  • Wliczać do podstawy naliczania: wszystkie pozycje – nie wliczać
Na zakładce [Szczegółowe]:
  • Wpływa na kwotę do wypłaty [ ] – niezaznaczone, co oznacza, że kwota tego elementu nie będzie wypłacana (pracownik otrzymuje do wypłaty zwrot kwoty nadpłaty składek ER pomniejszony o niedopłatę składki zdrowotnej w elemencie Spłata korekty netto wypłaty), natomiast zaliczka podatku policzona od tego elementu będzie pomniejszała całkowitą kwotę do wypłaty.
Uwaga
W bieżącej wypłacie pracownik otrzymuje do wypłaty „Spłatę korekty netto wypłaty” (nadpłatę składek społecznych pomniejszoną o niedopłatę składki zdrowotnej). Natomiast dodanie elementu „Zwrot składek ER” (który nie jest wypłacany) ma na celu opodatkowanie pełnej kwoty zwrotu składek ER (niepomniejszonej o niedopłatę składki zdrowotnej).
W bieżącej wypłacie etatowej dodajemy element Zwrot składek ER” w wysokości 563,00 zł w celu zwiększania przychodu i naliczenia podatku.
L.p.Opis pozycjiWypłata bieżąca
1Wynagrodzenie zasadnicze10000,00
2Spłata korekty netto wypłaty (nieopodatkowany)512,33 1)
3Zwrot składek ER (opodatkowany)563,00 2)
4Podstawa wymiaru składek na ubezpieczenia społeczne
(poz.1)
10000,00
5Składki społeczne finansowane przez pracownika
(poz.4x 9,76% + poz.4x 1,5% + poz.4x 2,45%)
1 371,00
6Podstawa składki zdrowotnej (poz.4-poz.5)8 629,00
7Składka zdrowotna (poz.6 x 9%)776,61
8Koszty uzyskania przychodu250,00
9Ulga podatkowa300
10Podstawa opodatkowania po zaokrągleniu
(poz.1+ poz.3-poz.5-poz.8)
8942,00
11Naliczona zaliczka podatku
(poz.10*12%-poz.9)
773,00
12Zaliczka podatku do U.S. po zaokrągleniu773,00 3)
13Do wypłaty
(poz.1+poz.2-poz.5-poz.7-poz.12)
7 591,72

1) Wypłacenie elementu nieopodatkowanego, wpływającego na płatność pracownika, jako zwrot nadpłaty składek ER pomniejszonej o niedopłatę składki zdrowotnej.

2) Dodatnie nadpłaty składek ER w celu zwiększenia tegorocznego przychodu i podstawy opodatkowania.

3) W przypadku niedopłaty zaliczki podatku oraz braku ręcznego skorygowania w bieżącej wypłacie, Płatnik może również pisemnie poinformować pracownika o niedopłacie i konieczności rozliczenia już w zeznaniu rocznym.

Uwaga
Art. 45 ust.3a Jeżeli podatnik, obliczając podatek należny, dokonał odliczeń od dochodu, podstawy obliczenia podatku lub podatku, a następnie otrzymał zwrot odliczonych kwot (w całości lub w części), w zeznaniu podatkowym składanym za rok podatkowy, w którym otrzymał ten zwrot, dolicza odpowiednio kwoty poprzednio odliczone. Ustawa o pdof nie określa, jaki dokument w takim przypadku powinien sporządzić pracodawca (wzór deklaracji PIT-11 nie zawiera pozycji umożliwiającej wykazywanie kwoty zwróconej składki zdrowotnej), więc można przyjąć, że ma tu zastosowanie ogólna reguła postępowania podatkowego, w myśl której dowodem może być wszystko co może przyczynić się do wyjaśnienia sprawy, a nie jest sprzeczne z prawem - art. 180 § 1 ustawy z dnia 29 sierpnia 1997 r. Ordynacja podatkowa (Dz. U. z 2005 r. nr 8, poz. 60 z późn. zm.)
Na deklaracji PIT-11 za bieżący rok, w którym dokonujemy zwrotu składek ER:
  • Przychód będzie powiększony o kwotę zwrotu nadpłaconych składek społecznych w wysokości 563,00 zł.
  • Zaliczka podatku będzie powiększona o 68,00 zł, która wynika z opodatkowania zwrotu składek  563,00 zł * 12% = 52,08 563,00 *12% = 67,56 po zaokrągleniu 68,00
Pracownik nie będzie miał niedopłaty/nadpłaty zaliczki podatku w zeznaniu rocznym z tytułu tej korekty.

3.8 Przekroczenie rocznej podstawy wymiaru składek na ubezpieczenie emerytalno-rentowe w bieżącym roku podatkowym

W sytuacji przekroczenia rocznej podstawy wymiaru składek na ubezpieczenie emerytalno-rentowe występuje nadpłata składek społecznych, niedopłata składki zdrowotnej oraz niedopłata zaliczki podatku. Jeżeli przekroczenie rocznej podstawy wymiaru składek na ubezpieczenie emerytalno-rentowe pracownika nastąpiło w bieżącym roku podatkowym, za który pracownik nie rozliczył się, to dokonując korekty w bieżącym miesiącu nie dodajemy elementu opodatkowanego jako zwrotu składek ER (nie zwiększamy przychodu, ponieważ w bieżącym roku przychód jest prawidłowy, tylko niepoprawnie zostały od niego naliczone składki ZUS). Pracownikowi zwracamy w kwocie netto różnicę między nadpłatą składek ER i niedopłata składki zdrowotnej (pobranej) oraz zwiększamy zaliczkę podatku, aby w zeznaniu rocznym pracownik nie miał niedopłaty.
Przykład
Pracownik zatrudniony na stawkę 8 000 zł. ZUS poinformował, że pracownik w marcu bieżącego roku przekroczył roczną podstawę składki emerytalnej i rentowej. Za ten miesiąc wykazano podstawę składek emerytalno-rentowych w wysokości 8000 zł, a powinna być w wysokości 2000 zł. (Pracownik jest zatrudniony w innej firmie, dlatego  przysługuje mu ulga podatkowa w 1/24 (150 zł).).
W celu dokonania korekty w programie proponujemy wykonać następujące operacje: 1. Na formularzu danych kadrowych pracownika (w zapisie historycznym aktualnym na marzec), na zakładce 5.Ubezpieczenie c.d. wprowadzić informację o przekroczeniu składek w miesiącu: Informacja przekazana przez – np. ZUS, w polu Kwota wpisać 2000,00 zł z opcją Podstawa składki, w pozycji Przekroczenie podstawy ustawić miesiąc marzec bieżącego roku (miesiąc i rok deklaracji). 2. W oknie Wypłaty pracowników, wybrać listę płac za marzec bieżącego roku, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 3. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić. Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy. 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla wyświetlonego pracownika należy naliczyć wypłatę korygującą. W tym kroku należy sprawdzić również poprawność wyliczeń pozostałych naliczonych elementów. Zapisujemy wypłatę 5. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? [TAK] – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. [TAK] – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej 6. Zapisujemy wypłatę korygującą. Wyliczenia w wypłacie anulowanej i korygującej:
L.p.Opis pozycjiWypłata za marzec br. (anulowana)Wypłata za marzec br. (korygująca)Różnica
(wypł. anul.– koryg.)
1Wynagrodzenie zasadnicze8 000,008 000,00
2Podstawa składek emerytalnej i rentowej8 000,002 000,006 000,00
3Składka emerytalna (poz.2 x 9,76%)780,80195,20585,60
4Składka rentowa (poz.2 x 1,5%)120,0030,0090,00
5Podstawa składek chorobowej i wypadkowej8 000,008 000,00
6Składka chorobowa (poz.5 x 2,45%)196,00196,00
7Składki ZUS pracownika (poz.3+poz.4+poz.6)1 096,80421,20675,60 1)
(nadpłata)
8Podstawa zdrow. (poz.1-poz.7)6 903,207 578,80-675,60
9Składka zdrowotna (poz.8x9%)621,29682,09-60,80
(niedopłata)
10KUP250,00250,00
11Ulga podatkowa150,00150,00
12Podstawa opodatkowania
(poz.1-poz.7-poz.10)
~6653 ~7329
13Naliczona zaliczka podatku (poz.12 *12% - poz.11)648,36729,48
14Zaliczka podatku do U.S. po zaokrągleniu648,00729,00 przed skopiowaniem podatku-81,00 2)
(niedopłata)
15Do wypłaty
(poz.1-poz.7-poz.9-poz.14)
5 633,916 167,71 przed skopiowaniem płatności-533,80

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

16Zaliczka podatkowa do US skopiowana z wypłaty anulowanej648,00
17Płatność do wypłaty skopiowana z wypłaty anulowanej5 633,91
18Korekta netto wypłaty-614,80(nadpłata skł. ZUS 675,60 – niedopłata skł. zdrow. 60,80)
1) Kwota zwrotu składek emerytalnej i rentowej nie powinna zwiększać bieżącego przychodu, ponieważ przychód (z marca br) jest właściwy, tylko od tego przychodu nie zostały poprawnie naliczone składki. 2) Kwota niedopłaty podatku w wysokości 81,00 zł wynika z braku opodatkowania nadpłaty składek ER, czyli: 676,00 zł (zaokrąglenie nadpłaty składek ER) *12% = 81,12, po zaokrągleniu 81,00 zł W bieżącej wypłacie etatowej (np. za kwiecień br.) automatycznie pojawi się Spłata korekty netto wypłaty w wys. 614,80 zł jako różnica między nadpłatą składek ER (675,60 zł) i niedopłaty składki zdrowotnej  (60,80 zł). Jest to element nieopodatkowany, który wyrównuje tylko kwotę netto (płatność) dla pracownika. W tej wypłacie nie dodajemy elementu opodatkowanego (jako zwrotu nadpłaty składek ER), ponieważ tegoroczny przychód (z marca br.) jest właściwy, tylko od tego przychodu nie zostały poprawnie naliczone składki. Podatek odprowadzony w zbyt niskiej wysokości zostanie uzupełniony poprzez ręczna korektę zaliczki do US w bieżącej wypłacie.
Wyliczenia w bieżącej wypłacie:
L.p.Opis pozycjiWypłata bieżącaKorekta podatku
i ubezpieczeń
1Wynagrodzenie zasadnicze8000,00
2Spłata korekty netto wypłaty (nieopodatkowany)614,80 1)
3Podstawa składek emerytalnej i rentowej0,00
4Składka emerytalna (poz.3 x 9,76%)0,00
5Składka rentowa (poz.3 x 1,5%)0,00
6Podstawa składek chorobowej i wypadkowej8000,00
7Składka chorobowa (poz.6 x 2,45%)196,00
8Składki ZUS pracownika (poz.4+poz.5+poz.7)196,00
9Podstawa składki zdrowotnej (poz.6-poz.8)7804,00
10Składka zdrowotna (poz.9 x 9%)702,36
11Koszty uzyskania przychodu250,00
12Ulga podatkowa150,00
13Podstawa opodatkowania po zaokrągleniu
(poz.1- poz.8-poz.11)
7554,00
14Naliczona zaliczka podatku(poz.13*12%-poz.12)756,48
15Zaliczka podatku do U.S. po zaokrągleniu756,00837,00 2)
zwiększona o +81,00
(756,00 + 81,00)
16Do wypłaty
(poz.1+poz.2-poz.8-poz.10-poz.15)
6 960,446 879,44
1) Wypłacenie elementu nieopodatkowanego, wpływającego na płatność pracownika - jako zwrot nadpłaty składek ER pomniejszonej o niedopłatę składki zdrowotnej.

2) Po zaznaczeniu pola „Korekta podatku i ubezpieczeń” wpisujemy ręcznie wyliczoną i zaokrąglona kwotę zaliczki podatku do US. Pracownik nie będzie miał w zeznaniu rocznym niedopłaty podatku.

W deklaracji PIT-11 za bieżący rok:
  • Nie trzeba zwiększać przychodu na deklaracji o kwotę zwrotu nadpłaconych składek społecznych w wysokości 675,60 zł, ponieważ przychód ten był prawidłowy, tylko od niego były niepoprawnie naliczone składki ZUS.
  • Składki społeczne i składka zdrowotna będą wykazane prawidłowe z wypłaty korygującej.
  • Zaliczka podatku będzie wykazana prawidłowa, została powiększona o 81,00 zł w wypłacie bieżącej (w miesiącu, w którym było rozliczenie korekty z pracownikiem). Wynika ona z opodatkowania zwrotu składek (675,60 zł),  czyli 676 *12% = 81,12 po zaokrągleniu 81,00 zł.
Pracownik nie będzie miał w zeznaniu rocznym niedopłaty podatku.

3.9 Przekroczenie rocznej podstawy wymiaru składek na ubezpieczenie emerytalno-rentowe za poprzednie lata dla byłego pracownika

W wyniku przekroczenia rocznej podstawy wymiaru składek na ubezpieczenie emerytalno-rentowe mamy do czynienia z nadpłatą składek społecznych, niedopłatą składki zdrowotnej oraz niedopłatą zaliczki podatku. W miesiącu, w którym kwota nadpłaty składek zostanie wypłacona (postawiona do dyspozycji) byłemu pracownikowi, pracodawca powinien pobrać od niej zaliczkę na podatek dochodowy, stosownie do postanowień art. 32 ustawy o pdof, czyli w wysokości 12% dochodu. Za dochód przyjmuje się „pełną” kwotę nadpłaty składek na ubezpieczenia emerytalne i rentowe (niepomniejszoną o niedopłacone składki na ubezpieczenia zdrowotne), po ewentualnym odliczeniu podstawowych kosztów uzyskania przychodów (250,00 zł).
Przykład
ZUS poinformował, że pracownik w poprzednim roku (12.2022) przekroczył roczną podstawę składek: emerytalnej i rentowej. Za ten miesiąc wykazano podstawę w wysokości 8000 zł, a powinna być w wysokości 3000 zł. Obecnie osoba nie jest już zatrudniona w firmie.
W celu dokonania korekty w programie proponujemy wykonać następujące operacje: 1. Na formularzu danych kadrowych pracownika (w zapisie historycznym aktualnym na grudzień), na zakładce Ubezpieczenie c.d. wprowadzić informację o przekroczeniu składek w miesiącu: Informacja przekazana przez – np. ZUS, w polu Kwota wpisać 3000,00 zł z opcją Podstawa składki, w pozycji Przekroczenie podstawy ustawić miesiąc 12.2022 (miesiąc i rok deklaracji). 2. W oknie Wypłaty pracowników, wybrać listę płac za grudzień bieżącego roku, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 3. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić!.Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy. 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla wyświetlonego pracownika należy naliczyć wypłatę korygującą. W tym kroku należy sprawdzić również poprawność wyliczeń pozostałych naliczonych elementów. Zapisujemy wypłatę. 5. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian Na zakładce Elementy wypłaty sprawdzić, czy pojawiła się Korekta netto wypłaty – w tym przypadku jest to kwota w wys. - 512,33 zł jako różnica między nadpłatą składek ER (563,00 zł) i niedopłaty składki zdrowotnej pobranej (50,67zł). Wypłatę korygującą zapisać. 6. Zapisujemy wypłatę korygującą. Wyliczenia w wypłacie anulowanej i korygującej:
L.p.Opis pozycjiWypłata 12.2022
(anulowana)
Wypłata 12.20202(korygująca)Różnica
(wypł. anul.– koryg.)
1Wynagrodzenie zasadnicze8 000,008 000,00
2Podstawa składek emerytalnej i rentowej8 000,003 000,005 000,00
3Składka emerytalna (poz.2 x 9,76%)780,80292,80488,00
4Składka rentowa (poz.2 x 1,5%)120,0045,0075,00
5Podstawa składek chorobowej i wypadkowej8 000,008 000,00
6Składka chorobowa (poz.5 x 2,45%)196,00196,00
7Składki ZUS pracownika (poz.3+poz.4+poz.6)1 096,80533,80563,00 1)
(nadpłata)
8Podstawa zdrow. (poz.1-poz.7)6 903,207 466,20-563,00
9Składka zdrowotna (poz.8x9%)621,29671,96-50,67
(niedopłata)
10KUP250,00250,00
11Ulga podatkowa300300
12Podstawa opodatkowania
(poz.1-poz.7-poz.10)
~6 653~7 216
13Naliczona zaliczka podatku (poz.12*12%-poz.11)498,36565,92
14Zaliczka podatku do U.S. po zaokrągleniu498,00566,0000 przed skopiowaniem podatku-68,00
(niedopłata) 2)
15Do wypłaty
(poz.1-poz.7-poz.9-poz.14)
5 783,916 228,24 przed skopiowaniem płatności-444,33

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

16Zaliczka podatkowa do US skopiowana z wypłaty anulowanej498,00
17Płatność do wypłaty skopiowana z wypłaty anulowanej5 783,91
18Korekta netto wypłaty (nowy element nieopodatkowany)-512,33(nadpłata skł. ZUS 563,00 – niedopłata skł. zdrow. 50,67)

1) Kwota zwrotu składek ER, która powinna zostać opodatkowana i wykazana w przychodzie na PIT za bieżący rok.

2) Kwota niedopłaty podatku w wys. 68,00 zł wynika z braku opodatkowania nadpłaty składek ER  czyli: 563,00 zł * 12% = 67,56, po zaokrągleniu 68,00 zł. Kwota zwrotu składek ER (563,00 zł) powinna być wykazana jako przychód ze stosunku pracy, od którego można odliczyć standardowe KUP (250,00 zł) oraz naliczyć 12% podatek. W tym celu zalecamy dodanie nowego typu wypłaty (z poziomu Konfiguracja firmy / Płace / Typy wypłat) o nazwie np. Zwrot składek ER” i proponujemy ustawienie pól: Na zakładce [Ogólne]:
  • Rodzaj - Dodatek
  • Algorytm 1 – kwota
  • Automatycznie korygować wynagrodzenie z tytułu – niezaznaczone
Na zakładce [Podatki/Nieobecności]:
  • Pozycja na deklaracji: PIT-4 1. Wynagrodzenie ze stosunku pracy
  • Podatek - naliczać wg progów
  • Zawsze naliczaj ulgę podatkowa [ ] – niezaznaczone
  • Sposób naliczania koszty uzyskania – standardowe (lub nie naliczać)
  • Sposób naliczania składek ZUS i składki zdrowotnej – nie naliczać
  • Wliczać do podstawy naliczania: wszystkie pozycje – nie wliczać
Na zakładce [Szczegółowe]:
  • Wpływa na kwotę do wypłaty [ ] – niezaznaczone, co oznacza, że kwota tego elementu nie będzie wypłacana, ponieważ pracownik otrzymuje do wypłaty zwrot kwoty nadpłaty składek ER pomniejszony o niedopłatę składki zdrowotnej w elemencie Spłata korekty netto wypłaty. Natomiast zaliczka podatku policzona od elementu Zwrot składek ER będzie pomniejszała kwotę do wypłaty.
Na liście typu Inna za bieżący miesiąc dodajemy wypłatę z ręcznie wskazanym elementem (zakładka nr 2, ikona zielonego plusa) o nazwie Spłata korekty netto wypłaty w wys. 512,33 zł jako różnica między nadpłatą składek ER (563,00 zł) i niedopłaty składki zdrowotnej pobranej (50,67 zł). Jest to element nieopodatkowany, który wyrównuje tylko kwotę netto (płatność) dla pracownika. Natomiast w celu opodatkowania kwoty zwrotu składek ER w pełnej wysokości (563,00 zł) należy dodać „Zwrot składek ER”.
Uwaga
W wypłacie pracownik otrzymuje do wypłaty „Spłatę korekty netto wypłaty” (nadpłatę składek społecznych pomniejszoną o niedopłatę składki zdrowotnej). Natomiast dodanie elementu „Zwrot składek ER” (niewypłacanego na kwotę do wypłaty) ma na celu opodatkowanie pełnej kwoty zwrotu składek ER (niepomniejszonej o niedopłatę składki zdrowotnej).
Wyliczenia w bieżącej wypłacie na liście typu Inne:
L.p.Opis pozycjiWypłata bieżącaKorekta podatku I ubezpieczeń
1Spłata korekty netto wypłaty (nieopodatkowany)512,33 1)
2Zwrot składek ER (opodatkowany)563,00 2)
3 Koszty uzyskania przychodu250,00
4Podstawa opodatkowania po zaokrągleniu
(poz.2-poz.3)
313,00
5Zaliczka podatku przed odjęciem składki zdrowotnej
(poz.4*12%)
37,56
6Zaliczka podatku do U.S. po zaokrągleniu38,00 3)106,00
Zwiększona o +68,00
(38,00 + 68,00)
7Do wypłaty
(poz.1-poz.6)
474,33406,33
1) Wypłacenie elementu nieopodatkowanego, wpływającego tylko na płatność pracownika, jako zwrot nadpłaty składek ER pomniejszonej o niedopłatę składki zdrowotnej. 2) Wypłacenie elementu w celu opodatkowania zwrotu składek ER. 3) W celu skorygowania zaliczki podatku należy najpierw zapisać wypłatę i ponownie edytować, następnie zaznaczyć pole „Korekta podatku i ubezpieczeń” i ręcznie wpisać wyliczoną kwotę zaliczki podatku do US w wys. 106,00 zł.   Na deklaracji PIT-11 za bieżący rok, w którym dokonujemy zwrotu składek ER zostanie wykazane:
  • Przychód ze stosunku pracy w wys. 563,00 zł
  • Koszty uzyskania przychodu w wys. 250,00 zł
  • Zaliczka podatku w wys. 106,00 zł
Uwaga
Dla ZUS niedopłata składki zdrowotnej  (w wys. 50,67 zł) zostanie wykazana na korekcie raportu RCA za mc 12.2022.

3.10 Korygowanie wypłaty korygującej

Zdarzają się sytuację, które wymuszają na Użytkowniku ponowne naliczenie wypłaty korygującej, do wcześniej już wykonanej korekty. Wynika, to w dużej mierze z opóźnieniem w dostarczaniu decyzji dotyczących, np. przekroczenia przez pracownika rocznej podstawy składek emerytalno – rentowych. W takich przypadkach, dla wcześniej już skorygowanej wypłaty konieczna jest jej ponowna korekta.
Przykład
Pracownik zatrudniony na stawce miesięcznej – 6000 zł. W czerwcu pierwotnie miał naliczone zwolnienie lekarskie w dniach 26.-30.06. W wypłacie zostały naliczone nastepujące elementy:
  • Wynagrodzenie zasadnicze – 5000 zł(6000 zł – 6000 zł * 5/30 = 6000 zł – 1000 zł = 5000 zł)
  • Wynagrodzenie za czas choroby – 690,30 (Podstawa zasiłku: 5177,60 zł)
Okres zwolnienia 26-30.06 zakwalifikowano jako wypadek w pracy. Dlatego tez skorygowano wypłatę za czerwiec. We wrześniu br. otrzymano pismo z ZUS, z informacją o przekroczeniu rocznej podstawy składek. W piśmie poinformowano, że podstawa składek w miesiącu czerwcu powinna wynieść 3000 zł. W związku z przesłanym pismem, należy ponownie skorygować wypłatę za czerwiec.
W celu dokonania pierwszej korekty w programie, związanej z rozliczeniem nieprawidłowej nieobecności proponujemy wykonać następujące operacje: 1. W oknie Wypłaty pracowników, wybrać listę płac za czerwiec bieżącego roku, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 2. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić. Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy. 3. W kalendarzu (Nie)obecności, na zakładce Nieobecności, należy podświetlić odpowiednią nieobecność (26-30.06.br), następnie pod prawym przyciskiem myszy należy wybrać opcję ‘Koryguj nieobecność’. Po wybraniu opcji ‘Koryguj nieobecność’ pojawi się pytanie: Czy skorygować nieobecność? Korygowanie wiąże się z anulowaniem nieobecności. Operacji nie można odwrócić. 4. Po zaakceptowaniu komunikatu, nieobecność zostanie anulowana w tle oraz automatycznie zostanie wyświetlone okno formularza nieobecności w celu wprowadzenia nieobecności korygującej. W typie nieobecności należy wprowadzić nieobecność korygującą Zwolnienie chorobowe (29-30.06) z przyczyną ‘Wypadek w pracy / choroba zawodowa’. Następnie należy zapisać formularz nieobecności oraz kalendarz (Nie)obecności. 5. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla wyświetlonego pracownika należy naliczyć wypłatę korygującą. W elementach wypłaty pojawią się automatycznie składniki: zasiłek chorobowy/wyp. (29-30.06). W tym kroku należy sprawdzić również poprawność wyliczeń pozostałych naliczonych elementów. Zapisujemy wypłatę. 6. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian – wskazujemy NIE, w tym przypadku zaliczka podatku nie została jeszcze odprowadzona do Urzędu Skarbowego za ten miesiąc. 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian 7. Zapisujemy wypłatę korygującą. Wyliczenia w wypłacie anulowanej i korygującej:
L.pOpis pozycjiWypłata
czerwiec
br.
(anulowana)
Wypłata
czerwiec
br.
(korygująca)
Różnica
(wypł. anulowana– koryg.)
1Wynagrodzenie zasadnicze5000,005000,00
2Wynagrodzenie za czas choroby zostaje zmienione na
zasiłek chorobowy/wyp.
Wynagr.chor. (80%)
690,30
Należna wartość zasiłku wyp.
(100%)
862,90,, która zostaje zmniejszona do kwoty 80%
690,30

Niedopłata 20%
172,60
(862,90 – 690,30),zostanie wypłacona jako Wyrównanie zasiłku chorobowego z ubezp. wyp. w bieżącej wypłacie
3Podstawa wymiaru składek na ubezpieczenia społeczne
(poz.1)
5000,005000,00
4Składki społeczne finansowane przez pracownika
(poz.3x9,76% + poz.3x1,5% + poz.3x2,45%)
685,50685,50
5Podstawa skł. zdrowotnej
(poz.3-poz.4) + wynagrodzenie chorobowe
5004,804314,50
6Składka zdrowotna
(poz.5x9%)
450,43388,3162,12
(nadpłata)
7Koszty uzyskania przychodu250,00250,00
8Ulga podatkowa300,00300,00
9Podstawa opodatkowania
(poz.1+poz.2-poz.4-poz.7)
~4 755~4 755
10Naliczona zaliczka podatku
(poz.9*12% -poz.8)
270,60270,60
11Zaliczka podatku do U.S.
po zaokrągleniu
271,00271,00 przed skopiowaniem podatku
12Do wypłaty
(poz.1+poz.2-poz.4-poz.6–poz.11)
4 283,374 345,49
przed skopiowaniem płatności
-62,12
(niedopłata)

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

13Zaliczka podatku do US
skopiowana z wypłaty anulowanej
271,00
14Płatność do wypłaty
skopiowana z wypłaty anulowanej
4 283,37
15Korekta netto wypłaty -62,12(nadpłata składki zdrowotnej)
Naliczając bieżącą wypłatę pojawi się automatycznie Spłata korekty netto wypłaty w wys. 62,12 (zwrot nadpłaty składki zdrowotnej). Dodajemy Wyrównanie zasiłku chorobowego z ubezpieczenia wypadkowego (20%), podając okres od – do, za który wyrównujemy (26-30.06 br) i kwotę wyrównania (w wys. 172,60) Wyliczenia w bieżącej wypłacie:
L.pOpis pozycjiWypłata bieżąca
1Wynagrodzenie zasadnicze6000,00
2Spłata korekty netto wypłaty
(nieopodatkowany)
62,12 1)
3Wyrównanie zasiłku chorobowego z ubezp.wyp.
(opodatkowany)
172,60 2)
4Podstawa wymiaru składek na ubezpieczenia społeczne
(poz.1)
6000,00
5Składki społeczne finansowane przez pracownika
(poz.4x9,76% + poz.4x1,5% + poz.4x2,45%)
822,60
6Podstawa skł. zdrowotnej (poz.4-poz.5)5177,40
7Składka zdrowotna (poz.6x9%)465,97
8Koszty uzyskania przychodu250,00
9Ulga podatkowa300,00
10Podstawa opodatkowania po zaokrągleniu
(poz.1+poz.3-poz.5-poz.8)
5 100,00
11Naliczona zaliczka podatku
(poz.10*12% - poz.9)
312,00
12Zaliczka podatku do U.S. po zaokrągleniu312,00
13Do wypłaty
(poz.1+poz.2+poz.3-poz.5-poz.7- poz.12)
4 634,15
1) Zwrot składki zdrowotnej niesłusznie pobranej w czerwcu br. 2) Dodanie elementu wyrównania 20% zasiłku chorobowego z ubezpieczania wypadkowego. Po otrzymaniu informacji z ZUS, dotyczącej przekroczenia podstawy składek emerytalno- rentowych konieczne jest ponowne skorygowanie wypłaty za czerwiec br. W celu wykonania korekty do wypłaty już skorygowanej za czerwiec br. należy wykonać następujące kroki: 1. Na formularzu danych kadrowych pracownika (w zapisie historycznym aktualnym na czerwiec), na zakładce Ubezpieczenie c.d. wprowadzić informację o przekroczeniu składek w miesiącu: Informacja przekazana przez – ZUS, w polu Kwota wpisać 3000,00 zł z opcją Podstawa składki, w pozycji Przekroczenie podstawy ustawić miesiąc 06.2023 (miesiąc i rok deklaracji). 2. W oknie Wypłaty pracowników, wybrać listę płac korygująca EKOR/2023/6, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 3. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić. Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Wybieramy ‘Dokument’, za pomocą ‘Plusa’ dodajemy nowy symbol, np. EKOR1. Wskazujemy i zapisujemy formularz listy płac. 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej EKOR1, dla wyświetlonego pracownika należy naliczyć wypłatę korygującą. W tym kroku należy sprawdzić również poprawność wyliczeń pozostałych naliczonych elementów. W składniku Zasiłek chorobowy/wyp należy zmienić procent ze 100% na 80%, przeliczyć oraz zapisać element. W wypłacie zostanie naliczony element Korekta netto z poprzedniej wypłaty w kwocie -62,12. Składnik nalicza się w sytuacji, gdy w wypłacie anulowanej było wykonane kopiowanie płatności i był naliczony element ‘Korekta netto wypłaty’. Element jest naliczany w celu poprawnego ustalenia różnicy w kwocie netto pomiędzy wypłatami. Zapisujemy wypłatę. 5. Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian Na zakładce Elementy wypłaty należy sprawdzić, czy pojawiła się Korekta netto wypłaty – w tym przypadku jest to kwota w wys.-204,94 jako różnica między nadpłatą składek ER i niedopłaty składki zdrowotnej. 6. Zapisujemy wypłatę korygującą. Wyliczenia w wypłacie anulowanej i korygującej:
L.pOpis pozycjiWypłata korygująca
(anulowana) 06.2023
Wypłata (korygująca nr 2) 06.2023Różnica
(wypł. anul.– koryg.)
1Wynagrodzenie zasadnicze5 000,005 000,00
2Zasiłek chorobowy/wyp.690,30Należna wartość zasiłku wyp.
(100%)
862,90
która zostaje zmniejszona do kwoty 80%
690,30
3Korekta netto z poprzedniej wypłaty-62,12-62,12
4Podstawa składek emerytalnej i rentowej5 000,003000,002000,00
5Składka emerytalna (poz.4 x 9,76%)488,00292,80
6Składka rentowa (poz.4 x 1,5%)75,0045,00
7Podstawa składek chorobowej i wypadkowej5 000,005 000,00
8Składka chorobowa (poz.7 x 2,45%)122,50122,50
9Składki ZUS pracownika (poz.5+poz.6+poz.8)685,50460,30225,20 1)
(nadpłata)
10Podstawa zdrow. (poz.1-poz.9)4 314,504 539,70-225,20
11Składka zdrowotna (poz.10x9%)388,31408,57-20,26 (niedopłata)
12Koszty uzyskania przychodu250,00250,00
13Ulga podatkowa300,00300,00
14Podstawa opodatkowania
(poz.1+poz.2-poz.9-poz.12)
4 754,80 ~47554 980,00
15Naliczona zaliczka podatku
(poz.14*12%-poz.13)
270,60297,60
16Zaliczka podatku do U.S.
po zaokrągleniu
271,00298,00 przed skopiowaniem podatku- 27,00
(niedopłata) 2)
17Do wypłaty
(poz.1+poz.2+poz.3-poz.9 i poz.11 - poz.16)
4 283,374 461,31
przed skopiowaniem płatności
-177,94

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

18Zaliczka podatkowa do US skopiowana z wypłaty anulowanej271,00
19Płatność do wypłaty
skopiowana z wypłaty anulowanej
4 283,37
20Korekta netto wypłaty
(nowy element nieopodatkowany)
-204,94(nadpłata skł. ZUS 225,20 – niedopłata skł. zdrow. 20,26)
1) Kwota zwrotu składek emerytalnej i rentowej nie powinna zwiększać bieżącego przychodu, ponieważ przychód (z czerwca br) jest właściwy, tylko od tego przychodu nie zostały poprawnie naliczone składki. 2) Kwota niedopłaty podatku w wysokości 27,00 zł wynika z braku opodatkowania nadpłaty składek ER, czyli: 225,00 zł (zaokrąglenie nadpłaty składek ER) *12% = 27,00 zł. Wraz z naliczeniem bieżącej wypłaty zostanie naliczony składnik ‘Spłata korekty netto’ w kwocie 204,94. Wyliczenia w bieżącej wypłacie:
L.pOpis pozycjiWypłata bieżącaKorekta podatku i ubezpieczeń
1Wynagrodzenie zasadnicze6 000,00
2Spłata korekty netto wypłaty (nieopodatkowany)204,94 1)
3Podstawa składek emerytalnej i rentowej0,00
4Składka emerytalna (poz.3 x 9,76%)0,00
5Składka rentowa (poz.3 x 1,5%)0,00
6Podstawa składek chorobowej i wypadkowej6 000,00
7Składka chorobowa (poz.6 x 2,45%)147,00
8Składki ZUS pracownika (poz.4+poz.5+poz.7)147,00
9Podstawa składki zdrowotnej (poz.6-poz.8)5 853,00
10Składka zdrowotna (poz.9 x 9%)526,77
11Koszty uzyskania przychodu250,00
12Ulga podatkowa300,00
13Podstawa opodatkowaniaPodstawa opodatkowania
(poz.1 - poz.8-poz.11)
5 603,00
14Naliczona zaliczka podatku
(poz.13*12%-poz.12)
372,36
15Zaliczka podatku do U.S. po zaokrągleniu372399,00 2)
Zwiększona o +27(372,00+27,00)
16Do wypłaty
(poz.1+poz.2-poz.8-poz.10-poz.18 poz.15)
5 159,175132,17

1) Wypłacenie elementu nieopodatkowanego, wpływającego na płatność pracownika - jako zwrot nadpłaty składek ER pomniejszonej o niedopłatę składki zdrowotnej. 2) Po zaznaczeniu pola „Korekta podatku i ubezpieczeń” wpisujemy ręcznie wyliczoną i zaokrąglona kwotę zaliczki podatku do US. Pracownik nie będzie miał w zeznaniu rocznym niedopłaty podatku.

4 Przykłady korygowania wypłat dotyczące zleceniobiorców

4.1 Przekwalifikowanie umowy o dzieło na umowę zlecenie za poprzednie lata (zleceniobiorca nadal wykonuje umowę, płatnik opłaci zaległe składki)

W wyniku kontroli ZUS w firmie zostały zakwestionowane umowy o dzieło i przekwalifikowane na umowy zlecenia. Firma musi dokonać zgłoszenia do ubezpieczeń i opłacić zaległe składki ZUS za poszczególne miesiące.
Uwaga
Zgodnie ze stanowiskiem Ministerstwa Finsnaów z dnia 30 marca 2023 (sygn. DD3.8203.1.2023), w sytuacji opłacenia zaległych składek przez podatnika, nie stanowią one przychodu zleceniobiorcy. „zapłacenie przez płatnika składek zaległych składek sus oraz składek zdrowotnych dotyczących pracowników, zleceniobiorców, byłych pracowników lub zleceniobiorców nie powoduje po stronie tych podatników powstania przychodu w rozumieniu art. 11 ust. 1 ustawy PIT. Zapłata przez płatnika składek zaległych składek z ww. tytułów nie stanowi przysporzenia majątkowego zwiększającego majątek podatnika, i jako taka, nie może być uznana za nieodpłatne świadczenie na rzecz podatnika.”
Uwaga
W przypadku korekty składek na ubezpieczenia społeczne i składki na ubezpieczenie zdrowotne zleceniobiorcy za lata ubiegłe, płatnik ani podatnik nie korygują rozliczeń podatku dochodowego od osób fizycznych za te lata. Pobrane przez płatnika zaliczki na podatek dochodowy, sporządzone przez niego za te lata deklaracje PIT-4R i informacje PIT-11, a także zeznanie roczne podatnika, odzwierciedlały bowiem stan faktyczny istniejący w dniu ich sporządzenia, tj. wysokość składek faktycznie pobranych przez płatnika w danym roku.
Uwaga
Gdyby zleceniobiorca zwrócił płatnikowi równowartość zapłaconych za niego zaległych składek, to wówczas mógłby w rocznym zeznaniu podatkowym odliczyć odpowiednio od dochodu .
Przykład
Zleceniobiorca wykonywał umowę o dzieło w miesiącu 12.2022 na kwotę 4000 zł. Obecnie również wykonuje umowę na rzecz firmy. W wyniku kontroli ZUS umowa o dzieło z 12.2022 ma zostać przekwalifikowana na umowę zlecenie, która powinna podlegać obowiązkowo ubezpieczeniu emerytalnemu, rentowemu, wypadkowemu oraz zdrowotnemu (bez chorobowego).
W celu dokonania korekty (za poszczególne miesiące) w programie proponujemy wykonać następujące operacje: 1. W oknie Wypłaty pracowników wybrać listę płac za 12.2022, podświetlić wypłatę odpowiedniej osoby – zleceniobiorcy, która jest zamknięta / zaksięgowana, pod prawym przyciskiem myszy z menu kontekstowego należy wybrać ‘Koryguj wypłatę’. 2. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić. Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy.
Uwaga
Po otworzeniu okna formularza listy płac istnieje możliwość utworzenia własnego symbolu listy płac korygującej. Opis znajduje się w punkcie 2.7
3. W formularzu umowy dokonać zmiany rodzaju umowy z „PIT-8B 6.Umowa o dzieło 20%” na „PIT 8B 6.Przychody z osob.wyk.działaln.”, następnie należy w zakładce 2. Ubezpieczenia uzupełnić kod tytułu ubezpieczenia (0411) oraz zaznaczyć, jakim ubezpieczeniom podlega ta umowa (emerytalnemu, rentowemu, wypadkowemu i zdrowotnemu, bez chorobowego) i od kiedy (np. 1.12.2022). 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla zleceniobiorcy należy naliczyć wypłatę korygującą. W tym kroku należy sprawdzić wartość brutto umowy oraz naliczone składki. Zapisujemy wypłatę. 5. Podczas zapisu wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej?   TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian
Uwaga
W przypadku jeżeli podatnik uzgodnił ze zleceniobiorcą, aby potrącić zaległe składki na ubezpieczenie społeczne wraz z jego następną wypłatą, wówczas w pkt. 5 należałoby skopiować schemat płatności z wypłaty anulowanej. W wypłacie korygującej pojawi się składnik Korekta netto wypłaty, którego rozliczenie nastąpi z najbliższą wypłatą zleceniobiorcy
6. Zapisujemy wypłatę korygującą Wyliczenia w wypłacie anulowanej i korygującej:
L.p.Opis pozycjiWypłata 12.2022
(anulowana)
Wypłata 12.2022
(korygująca)
Różnica
(wypł. anul.– koryg.)
1Umowa o dzieło później zamieniona na umowę zlecenie4000,004000,00
2Podstawa składek społecznych (bez chorobowej) (poz.1)0,004000,00
3Składki społeczne finansowane przez pracownika (E, R, bez chorobowej)
(poz.2x9,76% + poz.2x1,5%)
0,00450,40-450,40
(niedopłata)
4Podstawa składki zdrowotnej
(poz.2-poz.3)
0,003 549,60
5Składka zdrowotna
(poz.4x9%)
0,00319,46-319,46
(niedopłata)
6KUP 20% ((poz.1-poz.3)*20%)800709,92
7Podstawa opodatkowania (poz.1-poz.3-poz.6)3200,00~2 840
8Naliczona zaliczka podatku (poz.7*12%)384,00340,80
9Zaliczka podatku do U.S. po zaokrągleniu384,00341,00przed skopiowaniem podatku43,00
(nadpłata)
10Do wypłaty
(poz.1-poz.3-poz.5-poz.109)
3 616,002 889,14 przed skopiowaniem płatności726,86
(nadpłata)

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

11Zaliczka podatku do US skopiowana z wypłaty anulowanej384,00
12Płatność do wypłaty skopiowana z wypłaty anulowanej3 616,00
13Korekta netto wypłaty769,86
Jeżeli Użytkownik zdecyduje się na kopiowanie schematu płatności, przy naliczaniu bieżącej wypłaty umowy zlecenia powinna pojawić się automatycznie Spłata korekty netto wypłaty w wys. -769,86 jako potrącenie (netto) w wysokości sumy zaległych składek społecznych ( 450,40 zł) i zaległej składki zdrowotnej  ( 319,46 zł). Ten element może pojawić się jako druga wypłata na liście płac (domyślnie) lub jako drugi element wypłaty w wypłacie (w przypadku zaznaczonego parametru „Rozlicz zasiłki ZUS i spłaty pożyczek/zaliczek w  wypłacie umów cywilnoprawnych” w konfiguracji firmy / Płace / Parametry - zalecany sposób). Po naliczeniu bieżącej wypłaty z umowa zlecenia w wys. 4000 zł oraz elementu Spłata korekty netto wypłaty w wys. -769,86  zł  dodajemy ręcznie element Zaległy ZUS / zlecenie / firma (PIT-11)" w wys. 769,86  zł zł.  Wyliczenia w bieżącej wypłacie:
L.p.Opis pozycjiWypłata bieżąca
1Umowa zlecenie4000,00
2Spłata korekty netto wypłaty (nieopodatkowany)-769,86 1)
3Zaległy ZUS / zlecenie / firma (PIT-11) (opodatkowany i ozusowany)769,86
4Podstawa składek społecznych (bez chorobowej)4 769,86
5Składki społeczne pracownika (E, R, bez chorobowej)
(poz.4x9,76% + poz.4x1,5%)
537,09
6Podstawa składki zdrowotnej (poz.4-poz.5)4 232,77
7Składka zdrowotna (poz.6 x 9%)380,95
8Koszty uzyskania przychodu 20%846,55
9Podstawa opodatkowania
(poz.1+ poz.3-poz.5-poz.8)
~3 386
10Naliczona zaliczka podatku
(poz.9*`12%)
406,32
11Zaliczka podatku do U.S. po zaokrągleniu406,00
12Do wypłaty
(poz.1+poz.2 (ujemna) +poz.3-poz.5-poz.7-poz.11)
2 675,96
1) Potrącenie netto zaległych składek, które będą sfinansowane przez płatnika poprzez dodanie elementu „Zaległy ZUS / zlecenie / firma (PIT-11)” - dodatkowego przychodu pracownika. W deklaracji PIT-11 za bieżący rok przychód będzie powiększony o kwotę zapłaconych przez firmę zaległych składek (768,86 zł), od którego zostały naliczone składki ZUS, koszty uzyskania przychodu oraz zaliczka na podatek.

4.2 Przekroczenie rocznej podstawy wymiaru składek na ubezpieczenie emerytalno-rentowe za poprzednie lata dla byłego zleceniobiorcy

W wyniku przekroczenia rocznej podstawy wymiaru składek na ubezpieczenie emerytalno-rentowe mamy do czynienia z nadpłatą składek społecznych, niedopłatą składki zdrowotnej oraz niedopłatą zaliczki podatku.  Nadpłacone przez zleceniobiorcę składki na ubezpieczenia emerytalne i rentowe zgodnie z art. 26 ust. 1 pkt 2 lit. b) ustawy o pdof pomniejszyły dochód uzyskany przez tę osobę z umowy zlecenia. W konsekwencji zwrócona za pośrednictwem zleceniodawcy (tj. płatnika składek) kwota nadpłaconych składek na ubezpieczenia emerytalne i rentowe, w części sfinansowanej przez zleceniobiorcę, będzie stanowiła przychód tej osoby z działalności wykonywanej osobiście, o którym mowa w art. 13 pkt 8 ustawy o pdof. Od tego przychodu zleceniodawca, jako płatnik, powinien pobrać 12% zaliczkę na podatek dochodowy, zgodnie z zasadami określonymi w art. 41 ust. 1 i 1a ustawy o pdof. Trzeba przy tym zwrócić uwagę, że przy obliczaniu zaliczki na podatek dochodowy od zwracanej byłemu zleceniobiorcy kwoty nadpłaconych składek na ubezpieczenia emerytalne i rentowe, płatnik powinien uwzględnić koszty uzyskania przychodu w wysokości 20% przychodu (bądź 50%, jeżeli przedmiotem zawartej umowy jest czynność stanowiąca przedmiot prawa autorskiego). Wynika to z postanowień art. 41 ust. 1 w związku z art. 22 ust. 9 pkt 3 i 4 ustawy o pdof. Powyższe dotyczy również sytuacji, gdy zwrot nadpłaconych składek następuje już po wygaśnięciu umowy zlecenia z daną osobą. Źródłem oraz podstawą wypłaty tego świadczenia jest umowa zlecenia, która w przeszłości łączyła firmę będącą zleceniodawcą ze zleceniobiorcą.
Przykład
Zleceniobiorca w 12.2022 przekroczył roczną podstawę składek emerytalno-rentową. Za ten miesiąc wykazano podstawę w wys. 10000 zł, a powinna być w wys. 5000 zł. Umowa podlegała również dobrowolnie ubezpieczeniu chorobowemu. W umowie były naliczane 20% koszty uzyskania przychodu. Obecnie osoba nie jest zatrudniona w firmie ani w ramach umowy cywilnoprawnej, ani w ramach umowy o pracę.
W celu dokonania korekty w programie proponujemy wykonać następujące operacje: 1. Na formularzu danych kadrowych pracownika (w zapisie historycznym aktualnym na grudzień), na zakładce Ubezpieczenie c.d. wprowadzić informację o przekroczeniu składek w miesiącu: Informacja przekazana przez – np. ZUS, w polu Kwota wpisać 5000,00 zł z opcją Podstawa składki, w pozycji Przekroczenie podstawy ustawić miesiąc 12.2022 (miesiąc i rok deklaracji). 2. W oknie Wypłaty pracowników, wybrać listę płac za 12.2022, podświetlić wypłatę odpowiedniego pracownika, która jest zamknięta/zaksięgowana i pod prawym przyciskiem myszy wybrać opcję Koryguj wypłatę. 3. Po wybraniu opcji Koryguj wypłatę pojawi się komunikat: Czy skorygować wypłatę? Korygowanie wiąże się z anulowaniem wypłaty. Operacji nie można odwrócić. Wypłaty anulowane nie podlegają księgowaniu. Po wybraniu opcji TAK, wypłata zostanie anulowana. Automatycznie otworzy się okno formularza listy płac korygującej EKOR z domyślnymi ustawieniami odziedziczonymi z listy płac, na której została naliczona wypłata anulowana (Data wypłaty, okres wypłaty, miesięcy wstecz oraz rok i miesiąc deklaracji). Zapisujemy. 4. Z poziomu okna Wypłaty pracowników oraz wskazaniu listy płac korygującej, dla wyświetlonego zleceniobiorcy należy naliczyć wypłatę korygującą. Zapisujemy wypłatę. 5.Podczas zapisu formularza wypłaty korygującej, Użytkownik otrzyma pytania: 1)Czy wpłaciłeś do urzędu skarbowego zaliczkę podatku za miesiąc, za który robisz korektę i chcesz w wypłacie korygującej naliczyć taką samą zaliczkę jak w wypłacie anulowanej? TAK – zaliczka podatku zostanie skopiowana z wypłaty anulowanej NIE – zaliczka podatku pozostanie bez zmian 2) Czy chcesz rozliczyć różnicę w kwocie netto wynikającą z korekty? W przypadku wyboru opcji TAK w celu uzgodnienia wartości netto, do listy elementów w bieżącej wypłacie zostanie dodana Korekta netto wypłaty. Jej rozliczenie nastąpi w kolejnych wypłatach. TAK – kwota płatności zostanie skopiowana z anulowanej wypłaty, w elementach pojawi się dodatkowy element ‘Korekta netto wypłaty’, który zostanie rozliczony z najbliższą wypłatą pracownika. W tym przypadku będzie to kwota nadpłaconej składki zdrowotnej. NIE – kwota do wypłaty pozostanie bez zmian Na zakładce Elementy wypłaty sprawdzić, czy pojawiła się Korekta netto wypłaty – w tym przypadku jest to kwota w wys. - 512,33 zł jako różnica między nadpłatą składek ER (563,00 zł) i niedopłaty składki zdrowotnej pobranej (50,67zł). Wypłatę korygującą zapisać. 6. Zapisujemy wypłatę korygującą. Wyliczenia w anulowanej i korygującej wypłacie:
L.p.Opis pozycjiWypłata 12.2022
(anulowana)
Wypłata 12.2022(korygująca)Różnica
(wypł. anul.– koryg.)
1Umowa zlecenie10 000,0010 000,00
2Podstawa składek emerytalnej i rentowej10 000,005000,005000,00
3Składka emerytalna (poz.2 x 9,76%)976,00488,00488,00
4Składka rentowa (poz.2 x 1,5%)150,0075,0075,00
5Podstawa składek chorobowej i wypadkowej10 000,0010 000,00
6Składka chorobowa (poz.5 x 2,45%)245,00245,00
7Składki ZUS pracownika (poz.3+poz.4+poz.6)1 371,00808,00563,00 1)
(nadpłata)
8Podstawa zdrowotnej (poz.1-poz.7)8 629,009 192,00-563,00
9Składka zdrowotna (poz.8x9%)776,61827,28-50,67
(niedopłata)
10KUP 20% ((poz.1-poz.7)*20%)1 725,801 838,40
11Podstawa opodatkowania
(poz.1-poz.7-poz.12)
~6 903~7 354
12Naliczona zaliczka podatku
(poz.11 *12%)
828,36882,48
13Zaliczka podatku do U.S. po zaokrągleniu
828,00882,00 przed skopiowaniem podatku-54,00 2)
(niedopłata)
14Do wypłaty
(poz.1-poz.7-poz.9-poz.13)
7 024,397 482,72 przed skopiowaniem płatności-458,33(niedopłata)

Formularz wypłaty korygującej (po skopiowaniu kwot podatku i płatności)

18Zaliczka podatkowa do US skopiowana z wypłaty anulowanej828,00
19Płatność do wypłaty skopiowana z wypłaty anulowanej7 024,39
20Korekta netto wypłaty-512,33(nadpłata skł. ZUS 563,00 – niedopłata skł. zdrow. 50,67) )
1) Kwota zwrotu składek emerytalnej i rentowej, która powinna zostać opodatkowana i wykazana w przychodzie deklaracji PIT-11 za bieżący rok. 2) Kwota niedopłaty podatku w wys. 54,00 zł wynika z braku opodatkowania nadpłaty składek ER z uwzględnieniem odliczenia niedopłaty składki zdrowotnej odliczonej, czyli 563,00 (nadpłata skł.ER) – 112,60 zł (563,00*20%KUP) = 450,40, po zaokrągleniu 450,00*12% = 54,00 zł. Kwota zwrotu składek ER (563,00 zł) powinna być wykazana jako przychód (z działalności wykonywanej osobiście, o którym mowa w art. 13 pkt 8 ustawy o pdof), od którego należy obliczyć 20% KUP oraz 12% podatek. W tym celu zalecamy dodanie nowego typu wypłaty (z poziomu Konfiguracja firmy / Płace / Typy wypłat) o nazwie np. „Zwrot składek ER / zlecenie” i proponujemy ustawienie pól: Na zakładce [Ogólne]:
  • Rodzaj - Dodatek
  • Algorytm 1 – kwota
  • Automatycznie korygować wynagrodzenie z tytułu – niezaznaczone
Na zakładce [Podatki/Nieobecności]:
  • Pozycja na deklaracji PIT-8B 6. Przychody z osobiście wykonywanej działalności w tym umowy zlecenia…
  • Podatek – „procent jak dla umów”
  • Zawsze naliczaj ulgę podatkowa [ ] – niezaznaczone
  • Sposób naliczania koszty uzyskania – procent – 20%
  • Sposób naliczania składek ZUS i składki zdrowotnej – nie naliczać
  • Wliczać do podstawy naliczania: wszystkie pozycje – nie wliczać
Na zakładce [Szczegółowe]:
  • Wpływa na kwotę do wypłaty [ ] – niezaznaczone, co oznacza, że kwota tego elementu nie będzie wypłacana (pracownik otrzymuje do wypłaty zwrot kwoty nadpłaty składek ER pomniejszony o niedopłatę składki zdrowotnej w elemencie Spłata korekty netto wypłaty), natomiast zaliczka podatku policzona od tego elementu  będzie pomniejszała kwotę do wypłaty.
Na liście typu Inna za bieżący miesiąc ręcznie dodajemy Spłata korekty netto wypłaty w wys. 512,33 zł jako różnica między nadpłatą składek ER (563,00 zł) i niedopłaty składki zdrowotnej pobranej (50,67 zł). Jest to element nieopodatkowany, który wyrównuje tylko kwotę netto (płatność) dla pracownika. Natomiast w celu opodatkowania kwoty zwrotu składek ER w pełnej wysokości (563,00) należy dodać „Zwrot składek ER / zlecenie”.
Uwaga
W wypłacie pracownik otrzymuje do wypłaty „Spłatę korekty netto wypłaty” (nadpłatę składek społecznych pomniejszoną o niedopłatę składki zdrowotnej). Natomiast dodanie elementu „Zwrot składek ER” (niewypłacanego) ma na celu opodatkowanie pełnej kwoty zwrotu składek ER (niepomniejszonej o niedopłatę składki zdrowotnej).
Wyliczenia w bieżącej wypłacie na liście typu Inne:
L.p.Opis pozycjiWypłata bieżąca
1Spłata korekty netto wypłaty (nieopodatkowany)512,33 1
2Zwrot składek ER / zlecenie (opodatkowany)563,00 2)
320% KUP (poz.2 * 20%)112,60
4Podstawa opodatkowania
(poz.2 - poz.3)
~450
5Zaliczka podatku do U.S. po zaokrągleniu54,00 3)
6Do wypłaty
(poz.1 - poz.5)
458,33
1) Wypłacenie elementu nieopodatkowanego, wpływającego tylko na płatność pracownika, jako zwrot nadpłaty składek ER pomniejszonej o niedopłatę składki zdrowotnej. 2) Wypłacenie elementu w celu opodatkowania zwrotu składek ER. 3) W celu skorygowania zaliczki podatku należy najpierw zapisać wypłatę i ponownie edytować, następnie zaznaczyć pole „Korekta podatku i ubezpieczeń” i wpisać ręcznie wyliczoną kwotę zaliczki podatku do US w wysokości 54,00 zł. Na deklaracji PIT-11 za bieżący rok, w którym dokonujemy zwrotu składek ER zostanie wykazane:
  • Przychód z osobiście wykonywanej działalności w wysokości 563,00   
  • Koszty uzyskania przychodu w wysokości 112,60 zł
  • Zaliczka podatku w wysokości 54,00 zł
 
Uwaga
Dla ZUS niedopłata składki zdrowotnej pobranej (w wys. 50,67) zostanie wykazana na korekcie raportu RCA za mc 12.2022.

OPT035- Rozliczenie czasu pracy w modułach płacowych

Data aktualizacji: 11-08-2023

Spis treści

Wstęp

Normy i wymiar czasu pracy w przepisach

Harmonogramy czasu pracy (plany pracy)

Konfiguracja pojedynczego kalendarza

Konfiguracja wszystkich kalendarzy

Plan pracy i czas przepracowany pracownika

Nadgodziny

Rozliczanie nadgodzin wg norma zgodna z planem pracy

Rozliczanie nadgodzin wg normy dobowej i normy średniotygodniowej

Czas wolny za nadgodziny – Płace i Kadry Plus

Wydruki ewidencji czasu pracy

Różnicowe wyliczenie wynagrodzenia za nadgodziny i godziny nocne

Wstęp

Dokument jest przeznaczony dla Użytkowników systemu Comarch ERP Optima - modułów: Płace i Kadry lub Płace i Kadry Plus - jako pomoc w skonfigurowaniu dostępnych w programie parametrów w celu rozliczenia czasu pracy pracowników, a szczególnie naliczenia nadgodzin. Ze względu na to, że przepisy dotyczące nadgodzin są bardzo rozbudowane i skomplikowane, to duża część dokumentu została poświęcona ich interpretacji. Opisy sposobów konfiguracji oraz rozliczania czasu pracy zostały przedstawione na przykładach praktycznych.

Normy i wymiar czasu pracy w przepisach

Pojęcie normy czasu pracy (art. 129 k.p.)

Normy to maksymalne liczby godzin do przepracowania w przyjętym okresie rozliczeniowym, które określa art.129 kodeksu pracy. Art. 129. § 1. Czas pracy nie może przekraczać 8 godzin na dobę i przeciętnie 40 godzin w przeciętnie pięciodniowym tygodniu pracy w przyjętym okresie rozliczeniowym nieprzekraczającym 4 miesięcy, z zastrzeżeniem art. 135-138, 143 i 144. § 2. W każdym systemie czasu pracy, jeżeli jest to uzasadnione przyczynami obiektywnymi lub technicznymi lub dotyczącymi organizacji pracy, okres rozliczeniowy może być przedłużony, nie więcej jednak niż do 12 miesięcy, przy zachowaniu ogólnych zasad dotyczących ochrony bezpieczeństwa i zdrowia pracowników. W pozakodeksowych ustawach spotkać można inne, obniżone normy czasu pracy dla pewnych grup pracowniczych. Jest to np. norma dobowa – 7h i średniotygodniowa – 35h dla osób niepełnosprawnych.

Pojęcie wymiaru czasu pracy (art. 130 k.p.)

Wymiar czasu pracy to liczba godzin, którą pracownik powinien przepracować w przyjętym okresie rozliczeniowym, wyliczana zgodnie art.130 kodeksu pracy. Art. 130. § 1. Obowiązujący pracownika wymiar czasu pracy w przyjętym okresie rozliczeniowym, ustalany zgodnie z art. 129 § 1, oblicza się: 1) mnożąc 40 godzin przez liczbę tygodni przypadających w okresie rozliczeniowym, a następnie 2) dodając do otrzymanej liczby godzin iloczyn 8 godzin i liczby dni pozostałych do końca okresu rozliczeniowego, przypadających od poniedziałku do piątku. § 2. Każde święto występujące w okresie rozliczeniowym i przypadające w innym dniu niż niedziela obniża wymiar czasu pracy o 8 godzin. Poniżej przykłady wyliczenia wymiaru czas pracy w jednomiesięcznych okresach rozliczeniowych w 2023 r.
Przykład
Ustalenie wymiaru czasu pracy dla miesiąca stycznia 2023 r. - liczba tygodni: 1-7, 8-14, 15-21, 22-28, czyli 4 tygodnie * 40h = 160h, - liczba dni wystających, które mieszczą się w zakresie od poniedziałku do piątku: 30, 31, czyli 2 dni * 8h = 16h, - pomniejszenie za święta przypadające w innym dniu niż niedziela:  6 (Trzech Króli), czyli 1 dzień * 8h = 8h, - wyliczenie wymiaru: 160h + 16h – 8h = 168h
Przykład
Ustalenie wymiaru czasu pracy dla miesiąca listopad 2023 r. - liczba tygodni: 1-7, 8-14, 15-21, 22-28, czyli 4 tygodnie * 40h = 160h, - pozostała liczba dni, które mieszczą się w zakresie od poniedziałku do piątku: 29, 30, czyli 2 dni * 8h = 16h, - pomniejszenie za święta przypadające w innym dniu niż niedziela: 1, 11, czyli 2 dni * 8h = 16h, - wyliczenie wymiaru: 160h + 16h - 16h = 160h Za święto przypadające w sobotę (11 listopada) należy wyznaczyć dodatkowy dzień wolny w planie pracy./example]
2023 - MiesiąceLiczba dniNorma dobowaWYMIAR
Styczeń218168
Luty208160
Marzec238184
Kwiecień198152
Maj218168
Czerwiec218168
Lipiec218168
Sierpień228176
Wrzesień218168
Październik228176
Listopad*208160
Grudzień198152
SUMA250-2000
Zestawienie wymiarów czasu pracy w 2023 roku dla okresów jednomiesięcznych przy wyznaczeniu soboty jako dodatkowego dnia wolnego w przeciętnie pięciodniowym tygodniu pracy

*

  • Za święto przypadające w sobotę należy wyznaczyć dodatkowy dzień wolny w planie pracy.
Zestawienie wymiarów czasu pracy w 2023 roku dla okresów jednomiesięcznych przy wyznaczeniu soboty jako dodatkowego dnia wolnego w przeciętnie pięciodniowym tygodniu pracy    

Wymiar czasu pracy niepełnoetatowca

Pracownik zatrudniony na część etatu powinien mieć obniżony wymiar czasu pracy w okresie rozliczeniowym proporcjonalnie do wymiaru zatrudnienia. Praca może być przez takiego pracownika świadczona przeciętnie 5 dni w tygodniu, we wszystkie dni robocze w mniejszym wymiarze dobowym, bądź w niektóre dni tygodnia przez większą liczbę godzin.
Przykład
Ustalenie wymiaru czasu pracy dla pracownika zatrudnionego na ¾ etatu, dla 3-miesięcznego okresu rozliczeniowego (10-12.2023). - suma wymiarów z 3 miesięcy: 176 + 160 + 152= 488h - wyliczenie wymiaru: mnożymy przez wymiar etatu: 512h* ¾ = 366h W 11.2023 za święto przypadające w sobotę (11 listopada) należy wyznaczyć dodatkowy dzień wolny w planie pracy.
Pracodawca powinien pamiętać o ustaleniu dla zatrudnionego na część etatu tzw. limitu godzin. Stosownie, bowiem do art. 151 § 5 K.p., strony ustalają w umowie o pracę dopuszczalną liczbę godzin pracy ponad określony w umowie wymiar czasu pracy pracownika zatrudnionego w niepełnym wymiarze czasu pracy, których przekroczenie uprawnia pracownika, oprócz normalnego wynagrodzenia, do dodatku do wynagrodzenia, o którym mowa w art. 1511 § 1. Ustalenie limitu zależy od okoliczności faktycznych, a zwłaszcza od rozkładu czasu pracy danego pracownika. Sposoby jego ustalenia w umowach o pracę są różne, a mianowicie można go określić przez wskazanie wymiaru dobowego - np. "praca powyżej 5 godzin na dobę" albo wielkości etatu - np. "praca przekraczająca wymiar 3/4 etatu". W programie Comarch ERP Optima Płace i Kadry można określić limit nadgodzin dla niepełnoetatowca poprzez jako wprowadzenie odpowiedniej normy dobowej i średniotygodniowej (niższej niż dla pełnego etatu).

Harmonogramy czasu pracy (plany pracy)

Harmonogram czasu pracy jest sprecyzowanym planem pracy pracownika (lub grupy pracowników), który powinien być zdefiniowany zgodnie z przepisami. Powinnością pracodawcy jest ustalenie wymiaru czasu pracy (proporcjonalnie do jego wymiaru etatu) przed rozpoczęciem danego okresu rozliczeniowego i jego „rozłożenie” na poszczególne dni tego okresu z uwzględnieniem:
  • obowiązujących pracownika norm czasu pracy,
  • godzin rozpoczęcia i zakończenia pracy,
  • odpoczynku dobowego i tygodniowego,
  • przeciętnie pięciodniowego tygodnia pracy,
  • zakazu pracy w niedziele i święta (a gdy jest dozwolona praca w niedzielę – wyznaczenie jednej na 4 tygodnie niedzieli wolnej od pracy).
Kontrola zgodności tworzonego harmonogramu czasu pracy z przepisami należy do Użytkownika programu. Harmonogramy czasu pracy definiujemy w programie Comarch ERP Optima w Konfiguracja/ Firma/ Płace/ Kalendarze. Z tego poziomu można dodać dowolną ilość kalendarzy, zgodnie z potrzebami firmy. Standardowo w programie podczas kreowania nowej bazy tworzony jest kalendarz o nazwie STANDARD z dniami pracy od poniedziałku do piątku (w godzinach od 7:00 do 15:00) z wyznaczonymi świętami w aktualnym i kolejnym roku. Symbol na poszczególnych dniach kalendarza oznacza, że nie były one jeszcze definiowane i przyjmują domyślne ustawienia. Sposób tworzenia i definiowania kalendarzy opisany jest szczegółowo w podręczniku do konfiguracji programu.

Rys 1. W konfiguracji - kalendarz Standard – zakładka Kalendarz (z naniesionymi standardowymi świętami) oraz z wyznaczonym dniem wolnym (10.11.2023) wyznaczonym za święto przypadające w sobotę (11 listopada)

Konfiguracja pojedynczego kalendarza

Z poziomu Konfiguracja/ Firma/ Płace/ Kalendarze - na karcie danego kalendarza normatywnego (harmonogramu) występują pola:
  • Uwzględniaj wymiar etatu – powinien być zaznaczony dla kalendarzy pracowników zatrudnionych na niepełny etat, którzy mają obowiązek pracować w te same dni, co pracownicy pełnoetatowi, lecz w skróconym wymiarze czasu pracy. Jeśli pracownik zatrudniony na ½ etatu ma pracować np. co drugi dzień po 8 godzin, to definiujemy dla niego osobny kalendarz i odznaczamy ten parametr.
  • Modyfikowanie planu pracy przez nieobecność – domyślnie zaznaczony, ma znaczenie, gdy w planie pracy (harmonogramie) stosujemy inną strefę niż „Czas pracy podstawowy”, wówczas wymagane jest zaznaczenie tego parametru. Powoduje on przywrócenie strefy „Czas pracy podstawowy” w planie pracy na dni wprowadzonych nieobecności. Jest to istotne, aby program dobrze pomniejszał wynagrodzenie zasadnicze za czas nieobecności.
W obszarze Nadgodziny / godziny nocne dostępne są parametry:
  • Rozliczaj nadgodziny – zaznaczony parametr umożliwia rozliczaniem nadgodzin przez program.
  • Licz standardowe dopłaty do nadgodzin – zaznaczony parametr powoduje, że program będzie generował standardowe dopłaty do nadgodzin (50%, 100%).
  • Licz standardowe wynagrodzenie powyżej/poniżej normy –zaznaczony parametr umożliwia naliczenie wynagrodzenia zasadniczego powyżej/poniżej normy – w nowy bazach jako osobny element wypłaty (poza wynagrodzeniem zasadniczym), ponieważ domyślnie jest zaznaczony inny parametr „Wynagrodzenie powyżej/poniżej normy liczone jako oddzielny element wypłaty” w Konfiguracja/ Firma/ Płace/ Parametry – zakładka 3.
  • Licz standardowe dopłaty do godzin nocnych – zaznaczony parametr powoduje, że będą naliczane dopłaty do godzin nocnych.
  • Norma zgodna z planem pracy – zaznaczony parametr oznacza, że norma do wyliczenia nadgodzin będzie przyjmowana z planu pracy.
  • Jeśli nadgodziny mają być rozliczane zgodnie z normami kodeksowymi: dobową i średniotygodniową, to wyłączamy opcję [ ] Norma zgodna z planem pracy i wpisujemy odpowiednie wartości w polach: –Norma dobowa: standardowo 8h –Norma średniotygodniowa: standardowo 40h
  • Parametr Z uwzględnieniem przedłużonych dobowych wymiarów z planu pracy (równoważny czas pracy) ma zastosowanie np. w równoważnym systemie czasu pracy, gdzie dopuszczalne jest wydłużenie dobowego wymiaru czasu pracy (ponad 8h) jednego dnia, które powinno być rekompensowane skróceniem dobowego wymiaru czasu pracy (poniżej 8h) w innym dniu lub udzieleniem dnia wolnego od pracy. Po zaznaczeniu tego parametru, praca w godzinach nadliczbowych dobowych będzie liczona następująco: –W dniach pracy – program będzie sprawdzał oprócz normy dobowej określonej w definicji kalendarza w konfiguracji, również dobowy wymiar czasu pracy ustalony w planie pracy (harmonogramie) pracownika. -W dniach wolnych od pracy / świątecznych – program będzie sprawdzał tylko normę dobową określoną w definicji kalendarza.
  • Parametr Z uwzględnieniem standardowych świąt – ma wpływ na wyliczenie normy do nadgodzin uwzględnianej przy sprawdzaniu, czy doszło do przekroczenia normy średniotygodniowej. Gdy parametr jest: -Zaznaczony – to norma do nadgodzin (liczona jako pełne tygodnie * 40h + brzegowe dni * 8h) jest pomniejszona o ustawowe święta przypadające w innych dniach niż niedziela (zapisane w programie), niezależnie od tego, czy zostały naniesione w planie pracy. -Niezaznaczony – to norma do nadgodzin jest pomniejszana o święta wpisane na planie pracy pracownika w innych dniach niż niedziela.
  • Parametr Podział dopłat na nadgodziny dobowe i średniotygodniowe – ma wpływ na wyliczenie dopłat do nadgodzin. Gdy parametr jest: -Zaznaczony – w przypadku okresu rozliczeniowego dłuższego niż miesiąc, dopłaty do nadgodzin dobowych są naliczane w miesiącu wystąpienia nadgodzin, natomiast dopłaty do nadgodzin średniotygodniowych na koniec okresu rozliczeniowego. Jako rozliczenie nadgodzin w wypłacie generują się standardowe typy wypłat: Dopłata do nadgodzin dobowych 50%, Dopłata do nadgodzin dobowych 100%, Dopłata do nadgodzin średniotygodn. 100%. (Dla okresu 1 miesięcznego też występuje podział na dopłaty dobowe i średniotygodniowe). -Niezaznaczony – w przypadku okresu rozliczeniowego dłuższego niż miesiąc, dopłaty do nadgodzin (dobowych i średniotygodniowych) są naliczane w wypłacie za ostatni miesiąc okresu rozliczeniowego. Jako rozliczenie generują się standardowe elementy Dopłaty do nadgodzin 50%, Dopłaty do nadgodzin 100%.
  • Algorytm bilansowania nadgodzin w rozliczanym okresie zależy od parametru Podział dopłat na nadgodziny dobowe i średniotygodniowe i gdy ten parametr jest: Zaznaczony – to dostępne są opcje: –Tylko średniotygodniowe – nadgodziny dobowe nigdy nie są bilansowane, a na koniec okresu rozliczeniowego nadgodziny średniotygodniowe są bilansowane niedogodzinami oraz nieobecnościami nieusprawiedliwionymi z całego okresu rozliczeniowego. –Średniotygodniowe, dobowe 100%, 50% – w pierwszej kolejności pomniejszane są nadgodziny średniotygodniowe na koniec okresu rozliczeniowego pod warunkiem, że ich ilość jest wystarczająca do zbilansowania wszystkich niedogodzin. W przypadku, gdy ilość nadgodzin średniotygodniowych od początku okresu rozliczeniowego nie jest wystarczająca, to występujące niedogodziny będą na bieżąco bilansować nadgodziny dobowe – w pierwszej kolejności 100%, potem 50%. Nieobecności nieusprawiedliwione nigdy nie bilansują nadgodzin dobowych, tylko średniotygodniowe. –Średniotygodniowe, dobowe 50%, 100% – działanie opisane jak wyżej, tylko kolejność bilansowania nadgodzin dobowych jest najpierw 50%, potem 100%. Niezaznaczony – to dostępne są opcje: –Nie bilansuj – w przypadku rozliczania nadgodzin wg normy dobowej i średniotygodniowej ale bez podziału  na dobowe i średniotygodniowe, niedogodziny i nieobecności nieusprawiedliwione nie pomniejszą nadgodziny dobowych, natomiast pomniejszają nadgodziny średniotygodniowe. A w przypadku rozliczania nadgodzin wg „Norma zgodna z planem pracy” – niedogodziny i nieobecności nieusprawiedliwione nie pomniejszą żadnych nadgodziny. –100%, 50% – niedogodziny oraz nieobecności nieusprawiedliwione (NN-ki) w pierwszej kolejności pomniejszają nadgodziny wynagradzane dopłatami 100%, potem 50%. –50%, 100% – działanie jak powyżej, tylko kolejność odwrotna – najpierw pomniejszane są nadgodziny wynagradzane dopłatami 50%, potem 100% (odwrotnie niż algorytm: 100%, 50%).
Rys 3. Definicja kalendarza – obszar dot. nadgodzin
  • Rozliczenie dopłat do nadgodzin w wielomiesięcznych okresach rozliczeniowych (funkcjonalność wykorzystywana tylko w module Płace i Kadry Plus):
  • Co – określa długość okresu rozliczeniowego – przykładowo: 1 (domyślnie) – oznacza okres 1 miesięczny, czyli wszystkie dopłaty do nadgodzin naliczane są w miesiącu, w którym wystąpiły, 3 – oznacza okres 3 miesięczny i dopłaty do nadgodzin wypłacane są zależnie od ustawień parametru „Podział dopłat na nadgodziny dobowe i średniotygodniowe” – tzn. gdy będzie: -Zaznaczony – to dopłaty do nadgodzin dobowych wypłacane będą na bieżąco (co miesiąc) a dopłaty średniotygodniowe na koniec okresu rozliczeniowego (co 3 mc). -Niezaznaczony – to wszystkie dopłat do nadgodzin zostaną wypłacone na koniec okresu rozliczeniowego (w 3 miesiącu).
  • Z przesunięciem – oznacza przesunięcie początku okresu rozliczania nadgodzin względem początku roku (dotyczy okresów co najmniej 2 miesięcznych) – przykładowo: 0 – pierwszy okres rozliczeniowy w roku rozpoczyna się w styczniu, 1 – pierwszy okres rozliczeniowy rozpoczyna się w lutym (jest przesunięty o 1 miesiąc względem stycznia), 2 – pierwszy okres rozliczeniowy rozpoczyna się w marcu (jest przesunięty o 2 miesiące względem stycznia).
  • Z opóźnieniem – opcja możliwa do ewentualnego użycia tylko, gdy nie ma włączonego podziału dopłat na nadgodziny dobowe i średniotygodniowe – oznacza przesunięcie wypłat dopłat do nadgodzin względem ostatniego miesiąca okresu rozliczeniowego– przykładowo: 0 – dopłaty do nadgodzin zostaną wypłacone w ostatnim miesiącu okresu rozliczeniowego, 1 – wypłata dopłat do nadgodzin nastąpi w pierwszym miesiącu po zakończeniu okresu rozliczeniowego (np. okres rozliczeniowy styczeń – marzec zostanie rozliczony w kwietniu).
Uwaga
Wynagrodzenie powyżej/poniżej normy (podstawowe wynagrodzenie) rozliczane jest zawsze w miesiącu wystąpienia nadgodzin.
W obszarze Parametry dotyczące dopłat występuje podział na: Dopłaty do godzin nocnych - poniższe ustawienia dotyczące naliczania dopłat do godzin nocnych, odnoszą się tylko do pracowników, którzy są rozliczani według danego kalendarza.
    • Ręczna edycja parametrów związanych z dopłatami do godzin nocnych – zaznaczenie parametru powoduje, że dopłaty do godzin nocnych naliczane są zgodnie z ustawieniami zawartymi na formularzu kalendarza. Jeśli parametr nie jest zaznaczony, dopłata do godzin nocnych naliczana jest według ustawień dostępnych z poziomu: Konfiguracja/ Firma/ Płace/ Konfiguracja kalendarzy. Po zaznaczeniu tego parametru, aktywne stają się pozostałe parametry dotyczące naliczania dopłat do godzin nocnych. Domyślnie podpowiadają się takie wartości, jak te w Konfiguracji kalendarzy, ale Użytkownik może je zmienić.
    • Od godziny – Do godziny – w tych polach należy ustawić porę nocną obowiązującą pracowników rozliczanych wg tego kalendarza. – Limit godzin nocnych – maksymalna liczba godzin przypadających dla każdego dnia w porze nocnej, za którą pracownikowi przysługuje dopłata za pracę w nocy. – Dopłata do godzin nocnych liczona od i Procent wynagrodzenia za pracę w nocy – dla dopłat do godzin nocnych należy określić procent i wskazać, czy ma być liczona od minimalnej płacy, czy od stawki zaszeregowania pracownika. – Dopłata do godzin nocnych liczona zgodnie z normą k.p. art.130 – zaznaczenie parametru powoduje, że dopłata do godzin nocnych naliczana jest w oparciu o wymiar czasu pracy wynikający z art. 130 k.p. Jeśli parametr nie jest zaznaczony, to przy wyliczeniu stosowany jest wymiar czasu pracy wynikający z planu pracy pracownika.
Rys 4. Definicja kalendarza – obszar dot. dopłat do godzin nocnych
Wynagrodzenie za nadgodziny – poniższe ustawienia dotyczące naliczania wynagrodzenia i dopłat do nadgodzin i odnoszą się tylko do pracowników, którzy są rozliczani według danego kalendarza
  • Ręczna edycja parametrów związanych z dopłatami do nadgodzin – zaznaczenie parametru powoduje, że dopłaty do nadgodzin naliczane są zgodnie z ustawieniami zawartymi na formularzu kalendarza. Jeśli parametr nie jest zaznaczony, dopłaty naliczane są według ustawień dostępnych z poziomu: Konfiguracja/ Firma/ Płace/ Konfiguracja kalendarzy. Po zaznaczeniu tego parametru, aktywne stają się pozostałe parametry dotyczące wynagrodzenia i dopłat za nadgodziny. Domyślnie podpowiadają się takie wartości, jak te w Konfiguracji kalendarzy, ale Użytkownik może je zmienić.- Procent dopłat ‘50’ – możliwość określenia procentu dopłat za nadgodziny standardowo naliczanych jako 50%, – Procent dopłat ‘100’ – możliwość określenia procentu dopłat za nadgodziny standardowo naliczanych jako 100%, – Dopłaty do nadgodzin liczone zgodnie z normą k.p. art. 130 –zaznaczenie parametru powoduje, że stawka dopłaty do godzin nocnych za 1h naliczana jest w oparciu o wymiar czasu pracy wynikający z art. 130 k.p. Jeśli parametr nie jest zaznaczony, to przy wyliczeniu stosowany jest wymiar czasu pracy wynikający z planu pracy pracownika.
  • Wynagrodzenie zasad. powyżej/poniżej normy liczone zgodnie z normą k.p. art. 130 zaznaczenie parametru powoduje, że stawka za godzinę powyżej/poniżej normy liczona jest w oparciu o wymiar czasu pracy wynikający z art. 130 k.p. Takie wyliczenie dotyczy tylko elementów, które są naliczane w wypłacie jako oddzielne elementy wypłaty, o czym decyduje inny parametr o nazwie „Wynagrodzenie powyżej/poniżej normy liczone jako oddzielny element wypłaty” w Konfiguracja/ Firma/ Płace/ Parametry – zakładka 3 (domyślnie zaznaczony).Jeśli parametr „Wynagrodzenie zasad. powyżej/poniżej normy liczone zgodnie z normą k.p. art. 130” nie jest zaznaczony, to przy wyliczeniu stawki za godzinę stosowany jest wymiar czasu pracy wynikający z planu pracy pracownika.
Dodatkowo w Konfiguracja/ Firma/ Płace/ Zaokrąglenia w części Zaokrąglenia dopłat do godzin nocnych i nadgodzin można ustawić sposób zaokrąglania dopłat. Domyślnie ustawienie to: Wartość końcowa z precyzją 0.01 (do 1 grosza). Można zmienić zaokrąglenie na: Kwota za 1h oraz ewentualnie precyzję.
Rys 6. Zaokrąglenia dot. dopłat do godzin nocnych i nadgodzin

Konfiguracja wszystkich kalendarzy

Z poziomu Konfiguracja/ Firma/ Płace/ Konfiguracja kalendarzy ustawiamy wspólne elementy dla wszystkich zdefiniowanych w bazie kalendarzy. W obszarze Godziny nocne występują parametry:
    • Od godziny / do godziny – zakres godzin, pomiędzy którymi praca będzie traktowana jako praca w nocy,
    • Limit godzin nocnych – dzienny limit godzin nocnych – 8 godzin (zgodne z przepisami)
    • Procent dopłat do godzin nocnych – 20% (zgodnie z przepisami)
    • Dopłata do godzin nocnych liczona od – określamy podstawę, od której będzie naliczana dopłata do godzin nocnych (minimalne wynagrodzenie lub stawka zaszeregowania).
Dodatkowo w definicji danego kalendarza mamy możliwość ustawienia powyższych parametrów. W obszarze Nadgodziny 100% dostępne są ustawienia:
    • Godziny nocne – parametr domyślnie zaznaczony, nadgodziny w porze nocnej powinny być wynagradzane dopłatą w wysokości 100%.
    • Niedziele i święta – parametr domyślnie zaznaczony, każda nadgodzina pracy w niedzielę i święto, powinna być wynagradzana dopłatą w wysokości 100%.
    • Dni wolne (poniżej normy dobowej) – zaznaczenie spowoduje naliczenie 100% dopłat do nadgodzin nieprzekraczających normy dobowej w dniach wolnych pracownika. Parametr domyślnie zaznaczony, ponieważ nadgodziny wynikające z przekroczenia normy średniotygodniowej powinny być wynagradzane dodatkiem w wysokości 100%.
Uwaga
Powyższe parametry dostępne są tylko przy rozliczaniu nadgodzin „wg planu pracy”. Dla rozliczeń wg norm: dobowa i średniotygodniowej – nie podlegają zmianie.
    • Dni wolne (powyżej normy dobowej) – zaznaczenie jest równoznaczne z wypłatą 100% dopłat do nadgodzin w dni wolne po przekroczeniu normy dobowej. Program umożliwia ustawienie warunków wynagradzania korzystniejszych dla pracownika niż przewidują to przepisy.
    • Dni pracy po przekroczeniu dobowego limitu nadgodzin 50% – ściśle związany jest z innym parametrem ‘Dobowy limit nadgodzin 50% w dni pracy’. Parametr zaznaczony powoduje, że praca w nadgodzinach w dni pracy do limitu będzie płatna dopłatą 50%, a nadgodziny powyżej limitu – dopłatą 100%. Dawniej dwie pierwsze nadgodziny były płatne 50%, kolejne 100%. Obecnie ten przepis już nie obowiązuje, jednak w wewnętrznych regulaminach firmy mogą być zachowane poprzednie zasady, dlatego nadal można korzystać z tych ustawień.
W obszarze Dopłaty do nadgodzin można określić:
  • Limit roczny – 150:00 (standardowo) z opcją: -Przerwanie naliczania – w wypłacie zostaną rozliczone tylko nadgodziny do limitu, powyżej limitu nie zostaną naliczone, -Brak – nie ma kontroli limitu nadgodzin.
Dla każdego pracownika, na formularzu etatu, można ustalić indywidualny limit. Wówczas wartość limitu będzie pobierana z formularza pracownika a nie z konfiguracji.
  • Procent dopłat ‘50’ / Procent dopłat ‘100’ – w sytuacjach, gdy wewnętrzne przepisy pracodawcy przewidują wyższą kwotę dopłat do nadgodzin, mamy możliwość ustawienia własnych procentów dopłat (np. 60% i 120%). Dodatkowo w definicji danego kalendarza mamy możliwość ustawienia indywidualnych procentów dopłat do nadgodzin.

Plan pracy i czas przepracowany pracownika

Plan pracy

Na formularzu pracownika, zakładka [Etat], w polu Kalendarz wskazujemy plan (harmonogram) czasu pracy zgodnie, z którym pracownik ma pracować. Domyślnie podpowiada się kalendarz Standard. (Oczywiście można wybrać inny harmonogram, jeżeli został wcześniej zdefiniowany w Konfiguracja/ Firma/ Płace/ Kalendarze). Plan pracy (harmonogram) pracownika dostępny jest z formularza pracownika lub listy pracowników (dla podświetlonego pracownika) po rozwinięciu menu przy ikonie Z poziomu planu pracy danego pracownika istnieje możliwość modyfikowania harmonogramu poprzez wprowadzenie tzw. „wyjątków”. W celu zmian wystarczy edytować dany dzień i ustawić odpowiedni typ dnia, godziny pracy (od do) oraz strefę czasu pracy (np. „Czas pracy podstawowy” – skrót PP).
Uwaga
W planie pracy pracownika powinien być ustalony wymiar czasu pracy zgodnie z art. 130 k.p., czyli nie należy planować pracy w nadgodzinach.

Rys 9. Plan pracy pracownika z naniesionymi modyfikacjami („wyjątkami”)

Sposoby odnotowywania czasu przepracowanego

W formularzu pracownika, zakładka [Etat], w polu Rozliczenie czasu pracy określamy sposób odnotowywania czasu rzeczywiście przepracowanego przez pracownika, do wyboru mamy 3 sposoby:
  • Według kalendarza (domyślna opcja) – w kalendarzu Nie/obecności (rzeczywistym) na zakładce Kalendarz, czas pracy w danym dniu jest automatycznie przepisany z planu pracy. Użytkownik odnotowuje ewentualne zmiany w stosunku do planu na konkretnym dniu, np. nadgodziny. (Brak wpisu w danym dniu pracy oznacza pracę zgodną z planem pracy).
  • Według obecności – w kalendarzu Nie/obecności (rzeczywistym), na zakładce Kalendarz, czas pracy w danym dniu nie jest automatycznie przepisywany z planu pracy (jest zerowy). Użytkownik musi każdy dzień pracy edytować i wprowadzić czas pracy (podpowiadany jest czas z planu pracy). W przypadku posiadania modułu Kadry i Płace PLUS możliwe jest zaimportowanie czasu pracy z pliku RCP. (Brak wpisu w danym dniu pracy oznacza dzień z zerowym czasem pracy, czyli niedgogodziny).
  • Według zestawienia – dla tego sposobu brak jest informacji o czasie pracy w danym dniu, jest tylko łączny czas pracy za odpowiedni okres. W kalendarzu Nie/obecności (rzeczywistym) na zakładce [Zestawienia], użytkownik musi dodać zestawienie wpisując łączny czas przepracowany w godzinach (wraz z nadgodzinami) i w dniach, dodatkowo odnotowuje ilość godzin nocnych oraz nadgodzin 50% i 100%, za które program powinien naliczyć dopłaty. Zestawienie obejmuje maksymalnie okres miesiąca. Krótszy okres powinien być wpisany w przypadku aktualizacji danych pracownika w trakcie miesiąca lub zatrudnienia czy zwolnienia pracownika w trakcie miesiąca.
Uwaga
Bez względu na sposób wprowadzania czasu przepracowanego, pracownik powinien mieć poprawnie zdefiniowany plan pracy (zgodnie z przepisami). Ma to istotne znaczenie przy wprowadzaniu nieobecności dla pracownika, ponieważ program pomniejsza czas pracy o daną nieobecność pobierając ilość godzin zaplanowaną w tym dniu w planie pracy.

Nadgodziny

Pojęcie pracy w nadgodzinach (art. 151 k.p.)

Pojęcie pracy w nadgodzinach wyjaśnia art. 151 kodeksu pracy: Art. 151. § 1. Praca wykonywana ponad obowiązujące pracownika normy czasu pracy, a także praca wykonywana ponad przedłużony dobowy wymiar czasu pracy, wynikający z obowiązującego pracownika systemu i rozkładu czasu pracy, stanowi pracę w godzinach nadliczbowych. Praca w godzinach nadliczbowych jest dopuszczalna w razie: 1) konieczności prowadzenia akcji ratowniczej w celu ochrony życia lub zdrowia ludzkiego, ochrony mienia lub środowiska albo usunięcia awarii, 2) szczególnych potrzeb pracodawcy. § 2. Przepisu § 1 pkt 2 nie stosuje się do pracowników zatrudnionych na stanowiskach pracy, na których występują przekroczenia najwyższych dopuszczalnych stężeń lub natężeń czynników szkodliwych dla zdrowia. § 21. Nie stanowi pracy w godzinach nadliczbowych czas odpracowania zwolnienia od pracy, udzielonego pracownikowi, na jego pisemny wniosek, w celu załatwienia spraw osobistych. Odpracowanie zwolnienia od pracy nie może naruszać prawa pracownika do odpoczynku, o którym mowa w art. 132 i 133.

Wynagradzanie za nadgodziny (art. 1511 k.p.)

Za pracę w godzinach nadliczbowych (zgodnie z art. 1511 k.p.) należy wypłacić, oprócz normalnego wynagrodzenia, dopłata  w wysokości:
  • 100% wynagrodzenia – za pracę w godzinach nadliczbowych przypadających: – w nocy, – niedziele i święta, – w dni wolne od pracy poniżej normy dobowej, ponieważ zaliczane są do średniotygodniowych – w dni pracy poniżej normy dobowej, ponieważ zaliczane są do średniotygodniowych
  • 50% wynagrodzenia – za pracę w godzinach nadliczbowych przypadających: – w dni wolne od pracy, powyżej normy dobowej (z wyłączeniem godzin nocnych), – w dni pracy powyżej normy dobowej lub przedłużonego dobowego wymiaru (z wyłączeniem godzin nocnych).
W programie wynagrodzenie za godzinę nadliczbową składa się z 2 elementów:
    • Wynagrodzenie normalne – domyślnie generuje się tylko od stawki zaszeregowania (podanej na formularzu etatu) jako odrębny element wypłaty o nazwie „Wynagr. zasad. powyżej normy” – pod warunkiem, że jest zaznaczony inny parametr o nazwie „Wynagrodzenie powyżej/poniżej normy liczone jako oddzielny element wypłaty” (w Konfiguracja/ Firma/ Płace/ Parametry – zakładka 3) lub jako element o nazwie „Wynagrodzenie powyżej normy” w środku wynagrodzenia zasadniczego (zwiększa jego wartość), gdy wspomniany parametr nie jest zaznaczony.Gdy „Wynagr. zasad. powyżej normy” generowane jest osobno, to jego wartość może być powiększona o kwotę wynikającą z innych stałych elementów pracownika, np. z dodatku funkcyjnego – w tym celu w definicji dodatku funkcyjnego, na zakładce Szczegółowe, należy zaznaczyć pola: „Uwzględniaj przy wynagrodzeniu zasadniczym powyżej normy” i/lub „Uwzględniaj przy wynagrodzeniu zasadniczym poniżej normy”.
    • Dopłaty do nadgodzin 50% lub 100% – standardowo liczone są tylko od stawki zaszeregowania. Jeżeli inne elementy mają być ujmowane w tych dopłatach, to należy w definicji odpowiednich typów wypłat (na zakładce [Szczegółowe]) zaznaczyć pole Uwzględnij przy dopłatach za nadgodziny.
W programie: Konfiguracja firmy/ Płace/ Parametry – zakładka 3 - dostępny jest parametr Wynagrodzenie powyżej/poniżej liczone jako oddzielny element wypłaty – domyślnie jest zaznaczony, co oznacza, że  wynagrodzenie powyżej / poniżej normy liczone są jako odrębny element wypłaty (nie w środku wynagrodzenia zasadniczego). Dodatkowo można zadecydować, czy oddzielnie wypłacone wynagrodzenie zasadnicze powyżej/poniżej normy ma być wliczane do podstawy urlopu / ekwiwalentu– służą do tego parametry (domyślnie są zaznaczone):
  • Oddzielnie wypłacone ‘powyżej normy’ wliczane do podstawy urlopu /ekwiwalentu
  • Oddzielnie wypłacone ‘poniżej normy’ wliczane do podstawy urlopu /ekwiwalentu
Rys 13. Konfiguracja / Płace / Parametry – fragment dotyczący wynagrodzenia powyżej /poniżej normy
Uwaga
Dla pracownika zatrudnionego na stawkę miesięczną bardzo istotne jest liczenie wynagrodzenia powyżej/poniżej normy jako odrębnego elementu wypłaty, ponieważ gdy „powyżej normy” jest częścią wynagrodzenia zasadniczego miesięcznego, to nie jest wliczany do podstawy urlopowej. Natomiast, gdy jest odrębnym elementem wypłaty, to może być wliczany do podstawy urlopowej, jako średnia z 3 miesięcy.
Wynagrodzenie powyżej normy może być bilansowane wynagrodzeniem poniżej normy w ramach tej samej strefy czasu pracy - w tym celu należy zaznaczyć parametr Bilansowanie powyżej/poniżej normy (w obrębie strefy czasu pracy).  Bilansowanie wynagrodzenia zasadniczego powyżej/poniżej normy jest wykonywane w obrębie danej strefy czasu pracy i dotyczy pozycji generowanych jako odrębne elementy wypłaty, jak i również, gdy są częścią wynagrodzenia zasadniczego (w danej strefie). Bilansowanie powyżej i poniżej normy (bez względu na strefy czasu pracy) dotyczy innych elementów wypłat, które w konfiguracji mają zaznaczone automatyczne korygowanie z tytułu odchyłek od normy.

Nadgodziny dobowe i średniotygodniowe

Nadgodziny dzielimy na:
  • dobowe, które występują:- w dniach pracy – praca powyżej normy dobowej (8h) lub przedłużonego dobowego wymiaru (np. 12h) -> płatne jako 50% lub 100% jeżeli przypadają w nocy – w dniach wolnych – praca powyżej normy dobowej 8h -> płatne jako 50% – w dniach świątecznych – praca powyżej normy dobowej 8h -> płatne jako 100%
  • średniotygodniowe, które występują: – w dniach pracy – praca powyżej zaplanowanego dobowego wymiaru (np. 6h) do normy dobowej (8h) -> płatne jako 100% – w dniach wolnych – praca poniżej normy dobowej 8h -> płatne jako 100% – w dniach świątecznych – praca poniżej normy dobowej 8h -> płatne jako 100%
Uwaga
W przypadku, gdyby pracownik miał zaplanowany wymiar czasu pracy poniżej 8h, np. 6h (równoważny system czasu pracy), a przepracuje np. 12h, to nadgodziny dobowe występują powyżej normy 8h, czyli w tym przypadku od 8h do 12h, czyli 4h. Natomiast nadgodziny średniotygodniowe – od 6h do 8 h, czyli 2h.

Rozliczanie nadgodzin wg norma zgodna z planem pracy

Parametry w konfiguracji

Rozliczanie nadgodzin wg parametru Norma zgodna z planem pracy polega na porównaniu dla każdego dnia ilości godzin rzeczywiście przepracowanych z kalendarzu (Nie)obecności z ilością godzin w planie pracy. W tej sytuacji każda godzina przepracowana ponad zaplanowany wymiar czasu pracy jest traktowana jako nadgodzina.
Rys 14. Definicja kalendarza – ustawienie rozliczania nadgodzin jako „Norma zgodna z planem pracy”
Dopłaty do nadgodzin (50%, 100%) naliczane wg „norma zgodna z planem pracy” zależą od parametrów znajdujących się w Konfiguracji firmy/ Płace/ Konfiguracja Kalendarzy – są to Nadgodziny 100% w:
  • Godziny nocne – zaznaczony (domyślnie)
  • Niedziele i święta – zaznaczony (domyślnie)
  • Dni wolne (poniżej normy dobowej) – zaznaczony (domyślnie), dotyczy pracy np. w sobotę do 8h
  • Dni wolne (powyżej normy dobowej) – niezaznaczony (domyślnie), dotyczy pracy np. w sobotę powyżej 8h
Uwaga
Dla dni wolnych od pracy norma dobowa odczytywana jest z formularza pracownika, zakładka Etat/Zatrudnienie – pole ‘Norma dobowa do urlopu dla pełnego wymiaru etatu’ (standardowo 8h).
  • Dni pracy po przekroczeniu dobowego limitu nadgodzin 50% – niezaznaczony (domyślnie), związany jest z innym parametrem Dobowy limit nadgodzin 50% w dni pracy (2:00) – zgodnie z archiwalnymi przepisami dwie pierwsze nadgodziny w dni pracy były płatne jako 50%, kolejne 100%.
Rys 15. Konfiguracja kalendarzy - nadgodziny 100% wg planu pracy (wartości domyślne)

Przykłady rozliczenia nadgodzin wg norma zgodna z planem pracy

Poniżej prezentowane są przykłady wyliczenia nadgodzin „wg norma zgodna z planem pracy” (ustawienie w definicji kalendarza) - przy standardowych ustawieniach w Konfiguracji kalendarzy, czyli przy zaznaczonych parametrach dla: Nadgodziny 100%: Godziny nocne, Niedziele i święta, Dni wolne (poniżej normy dobowej).

Podstawowy system czasu pracy – pełny etat

Przykład
Pracownik zatrudniony na pełen etat w podstawowym systemie czasu pracy, czyli po 8h dziennie (1-miesięczny okres rozliczeniowy) – w kwietniu 2023 powinien pracować 152h (od poniedziałku do piątku po 8h), a przepracował 168h  (praca nie przypadała w porze nocnej). W jednym tygodniu pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem):
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy08:0008:0008:0008:0008:0000:0000:0040h
Rzeczywisty czas pracy08:0012:0008:0008:0008:0010:0002:0056h
Powyżej planu+4:00+10:00 +2:00+16h
Porównując czas przepracowany z planem pracy (w systemie dobowym) wynika, że wystąpiły następujące nadgodziny: - 50% -> 6h = 4h (wtorek, praca ponad zaplanowany dobowy wymiar) + 2h (sobota, praca powyżej normy 8h – odczytana z pola „Norma dobowa dla urlopu” z formularza pracownika) - 100% -> 10h = 8h (sobota, praca do normy 8h) + 2h (niedziela, praca do normy 8h) Suma nadgodzin = 6h (50%) +10h (100%) = 16h Pracownik będzie miał wypłacane: - wynagrodzenie powyżej normy za 16h - godziny przepracowane ponad wymiar czasu pracy (168h) - dopłaty do nadgodzin 50% za 6h - dopłaty do nadgodzin 100% za 10h

Podstawowy system czasu pracy – niepełny etat

Przykład
Pracownik zatrudniony na ½ etatu w podstawowym systemie czasu pracy, czyli po 4h dziennie (1-miesięczny okres rozliczeniowy) – w lutym 2023 powinien pracować 80h (od poniedziałku do piątku po 4h), a przepracował 101h (praca nie przypadała w porze nocnej). W jednym tygodniu pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem):
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy04:0004:0004:0004:0004:0000:0000:0020h
Rzeczywisty czas pracy10:0004:0004:0004:0004:0009:0006:0041h
Powyżej planu+6:00+9:00 +6:00+21h
Porównując czas przepracowany z planem pracy (w systemie dobowym) wynika, że wystąpiły następujące nadgodziny: - 50% -> 7h = 6h (poniedziałek, praca ponad zaplanowany dobowy wymiar) + 1h (sobota, praca powyżej normy 8h) - 100% -> 14h = 8h (sobota, praca do normy 8h) + 6h (niedziela, praca do normy 8h) Suma nadgodzin = 7h (50%) +14h (100%) = 21h Pracownik będzie miał wypłacane: - wynagrodzenie powyżej normy za 21h - godziny przepracowane ponad wymiar czasu pracy (88h) - dopłaty do nadgodzin 50% za 7h - dopłaty do nadgodzin 100% za 14h

Bilansowanie w rozliczeniu nadgodzin wg norma zgodna z planem pracy

Nadgodziny (praca ponad zaplanowany wymiar) są pomniejszane przez odnotowane niedogodziny (praca poniżej zaplanowanego dobowego wymiaru) i nieobecności nieusprawiedliwione (NN) – decyduje o tym parametr Algorytm bilansowania nadgodzin w rozliczanym okresie (w definicji kalendarza), dla którego są dostępne następujące opcje: 1. Nie bilansuj – niedogodziny i nieusprawiedliwione nieobecności (NN) nie pomniejszają nadgodzin, 2. 100%, 50% (domyślnie) - niedogodziny i nieusprawiedliwione nieobecności (NN) pomniejszają w pierwszej kolejności nadgodziny wynagradzane dopłatą 100%, a następnie dopłatą 50%, 3. 50%, 100% - analogicznie jak powyżej, tylko odwrotna kolejność pomniejszania.
Przykład
Pracownik zatrudniony na ¾ etatu w podstawowym systemie czasu pracy, czyli po 6h dziennie (1-miesięczny okres rozliczeniowy) - w lutym 2023 powinien pracować 120h (od poniedziałku do piątku po 6h), a przepracował 123h (praca nie przypadała w porze nocnej). W jednym tygodniu pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem):
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy06:0006:0006:0006:0006:0000:0000:0030h
Rzeczywisty czas pracy08:0003:0006:0006:0006:0004:0000:0033h
Powyżej planu+2:00+4:00 +6h
Poniżej planu-3:00-3h
Porównując czas przepracowany z planem pracy wynika, że wystąpiły następujące nadgodziny: - 50% -> 2h = 2h (poniedziałek, praca ponad zaplanowany dobowy wymiar) - 100% -> 4h = 4h (sobota, praca do normy 8h) Suma nadgodzin = 2h (50%) +4h (100%) = 6h Bilansowanie nadgodzin (o niedogodziny 3h) dla poszczególnych opcji: 1. Nie bilansuj (niedogodziny = 3h) Nadgodziny 50% = 2h Nadgodziny 100% = 4h 2. 100%, 50% (niedogodziny = 3h) Nadgodziny 100% = 4h – 3h = 1h Nadgodziny 50% = 2h 3. 50%, 100% (niedogodziny = 3h) Nadgodziny 50% = 2h – 2h = 0h Nadgodziny 100% = 4h - 1h = 3h Bez względu na ustawienia opcji bilansowania nadgodzin program naliczy: - wynagrodzenie powyżej normy za +6h - wynagrodzenie poniżej normy za -3h W sytuacji, gdy parametr “Bilansowanie powyżej/poniżej normy (w obrębie strefy czasu pracy)” w Konfiguracja > Firma > Płace > Parametry- zakładka 2 - będzie zaznaczony, to wyliczy się tylko: wynagrodzenie powyżej normy za +3h (6h – 3h).

Rozliczanie nadgodzin wg normy dobowej i normy średniotygodniowej

Parametry w konfiguracji

W definicji kalendarza (w konfiguracji) możliwe jest określenie norm:
  • dobowej (standardowo 8h),
  • średniotygodniowej (standardowo 40h).
Powyższe pola uaktywniają się po wyłączeniu parametru Norma zgodna z planem pracy.
Rys 16. Definicja kalendarza – ustawienie rozliczania nadgodzin wg norm: dobowej i średniotygodniowej
W rozliczaniu nadgodzin wg norm (dobowej i średniotygodniowej) istotne jest przekroczenie w obrębie dnia - normy dobowej (8h) w obrębie okresu rozliczeniowego – normy średniotygodniowej (40h). W algorytmie sprawdzania, czy doszło do przekroczenia normy średniotygodniowej, ważne jest wyliczenie normy do nadgodzin dla rozliczanego okresu wg poniższego wzoru: NORMA DO NADGODZIN = liczba pełnych tygodni * norma średniotygodniowa (standardowo 40h) + liczba dni pracy w niepełnych tygodniach (zakres od poniedziałku do piątku) * 1/5 z normy średniotygodniowej (standardowo 8h=40/5) – liczba dni świątecznych w innych dniach niż niedziela * 1/5 z normy średniotygodniowej (standardowo 8h=40/5) Dla wyliczenia tej normy istotny jest parametr w definicji kalendarza Z uwzględnieniem standardowych świąt, jeżeli jest:
  • Zaznaczony – to norma do nadgodzin jest pomniejszona o standardowe święta przypadające w innych dniach niż niedziela (zapisane w programie), niezależnie od tego, czy zostały naniesione w planie pracy.
  • Niezaznaczony – to norma do nadgodzin jest pomniejszana tylko o święta wpisane na planie pracy w innych dniach niż niedziela.
W Konfiguracji firmy/ Płace/ Konfiguracja Kalendarzy dostępne są parametry dotyczące wyliczenia nadgodzin 100%, standardowe ustawienia to:
    • Godziny nocne – 100% (zgodnie z przepisami, bez możliwości modyfikacji)
    • Niedziele i święta – 100% (zgodnie z przepisami, bez możliwości modyfikacji)
    • Dni wolne (poniżej normy dobowej) – 100% (zgodnie z przepisami, bez możliwości modyfikacji), dotyczy pracy np. w sobotę do 8h
    • Dni wolne (powyżej normy dobowej) – niezaznaczony (domyślnie), dotyczy pracy np. w sobotę powyżej 8h
Uwaga
Dla dni wolnych od pracy /świątecznych norma dobowa odczytywana jest z definicji kalendarza (standardowo 8h).
  • Dni pracy po przekroczeniu dobowego limitu nadgodzin 50% – niezaznaczony (domyślnie), związany jest z innym parametrem Dobowy limit nadgodzin 50% w dni pracy (2:00) – dawniej dwie pierwsze nadgodziny w dni pracy były płatne jako 50%, kolejne 100%.
Rys 17. Konfiguracja kalendarzy – algorytmy rozliczania nadgodzin wg normy tygodniowej
Wyliczenie nadgodzin wg normy dobowej i średniotygodniowej następuje w 2 krokach: I krok – wyliczenie nadgodzin dobowych II krok – wyliczenie nadgodzin średniotygodniowych (sprawdzamy, czy doszło do przekroczenia normy średniotygodniowej) - w tym celu należy porównać czas przepracowany pracownika powiększony o liczbę godzin usprawiedliwionych nieobecności, a pomniejszony o nadgodziny „dobowe” z obowiązującym wymiarem czasu pracy (normą do nadgodzin). Poniżej wzór sprawdzający, czy doszło do przekroczenia normy średniotygodniowej: X = CZAS PRZEPRACOWANY + CZAS USPRAWIEDLIWIONYCH NIEOBECNOŚCI - NADGODZINY DOBOWE – NORMA DO NADGODZIN i gdy: X większe od 0 – to oznacza, że wystąpiły nadgodziny średniotygodniowe, X mniejsze lub równe 0 – to oznacza, że nie wystąpiły nadgodziny średniotygodniowe. Ogólnie nadgodziny dzielimy na:
  • dobowe, które występują: – w dniach pracy – praca powyżej normy dobowej (8h) lub przedłużonego dobowego wymiaru (np. 12h) -> płatne jako 50% lub 100% jeżeli przypada w nocy – w dniach wolnych – praca powyżej normy dobowej 8h -> płatne jako 50% – w dniach świątecznych – praca powyżej normy dobowej 8h -> płatne jako 100%
  • średniotygodniowe, które występują: – w dniach pracy – praca powyżej zaplanowanego dobowego wymiaru (np. 6h) do normy dobowej (8h) -> płatne jako 100% – w dniach wolnych – praca poniżej normy dobowej 8h -> płatne jako 100% – w dniach świątecznych – praca poniżej normy dobowej 8h -> płatne jako 100%
Uwaga
Praca powyżej 8h jest zaliczana do nadgodzin dobowych, natomiast praca do 8h jest uwzględniania przy liczeniu nadgodzin wynikających z przekroczenia normy średniotygodniowej.

Przykłady rozliczenia nadgodzin wg normy dobowej i średniotygodniowej

Poniżej prezentowane są przykłady wyliczenia nadgodzin dla okresu 1 miesięcznego przy ustawieniu norm: dobowej (8h) i średniotygodniowej (40h) z zaznaczonym parametr Z uwzględnieniem standardowych świąt w definicji kalendarza - przy standardowych ustawieniach w Konfiguracji kalendarzy dotyczących 100% dopłat do nadgodzin, czyli:
  • Dni wolne (powyżej normy dobowej) – niezaznaczone
  • Dni pracy po przekroczeniu dobowego limitu nadgodzin 50% – niezaznaczone

Podstawowy system czasu pracy (1 miesięczny) – pełny etat

Przykład
Pracownik zatrudniony na pełen etat w podstawowym systemie czasu pracy, czyli o 8h dziennie (1-miesięczny okres rozliczeniowy) – w czerwcu 2023 powinien przepracować 168h, a przepracował 184h (praca nie przypadała w porze nocnej). W jednym tygodniu pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem):
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy08:0008:0008:0008:0008:0000:0000:0040h
Rzeczywisty czas pracyurlop13:0008:0008:0008:0010:0009:0056h
Powyżej planu+5:00+10:00 +9:00+24h
W definicji kalendarza: Norma dobowa = 8h, norma tygodniowa = 40h z zaznaczonym parametrem Z uwzględnieniem standardowych świąt. Liczymy nadgodziny dobowe, do których zaliczamy pracę ponad normę dobową (8h): Nadgodziny dobowe: - 50% -> 7h = 5h (wtorek, praca ponad normę 8h) + 2h (sobota, praca ponad normę 8h) - 100% -> 1h (niedziela, praca ponad normę 8h) Suma nadgodzin dobowych = 7h (50%) + 1h (100%) = 8h Liczymy nadgodziny po przekroczeniu normy średniotygodniowej Norma: 4 pełne tygodnie * 40h + 2 dni brzegowe (29, 30) * 8h – 1 dzień świąt * 8h = 160h + 16h – 8h = 168h Czas przepracowany (184h) + czas usprawiedliwionych nieobecności (8h urlopu) - nadgodziny dobowe (8h) – norma (168h) = 184 + 8 – 8 - 168 = 16 > 0, czyli doszło do przekroczenia normy średniotygodniowej. Podsumowanie nadgodzin: - Dobowe 50% = 7h - Dobowe 100% = 1h - Średniotygodniowe 100% = 16h Gdy parametr Podział dopłat na nadgodziny dobowe i średniotygodniowe będzie:
  • niezaznaczony – to w wypłacie zostanie naliczone: – Wynagrodzenie powyżej normy za 24h – Dopłata do nadgodzin 50% za 7h – Dopłata do nadgodzin 100% za 17h
  • zaznaczony to w wypłacie zostanie naliczone: – Wynagrodzenie powyżej normy za 24h – Dopłata do nadgodzin dobowych 50% za 7h – Dopłata do nadgodzin dobowych 100% za 1h – Dopłata do nadgodzin średniotygodn. 100% za 16h

Równoważny system czasu pracy (1 miesięczny) – pełny etat

W równoważnym systemie czasu pracy dopuszczalne jest przedłużenie dobowego wymiaru ponad 8h, które powinno być rekompensowane dniami wolnymi od pracy lub skróceniem dobowego wymiaru czasu pracy (poniżej 8h) w niektórych dniach. W takiej sytuacji w definicji kalendarza przy rozliczeniu nadgodzin wg normy dobowej i średniotygodniowej powinien być zaznaczony parametr Z uwzględnieniem przedłużonych dobowych wymiarów z planu pracy (równoważny czas pracy). Po zaznaczeniu tego parametru, praca w godzinach nadliczbowych dobowych będzie liczona następująco:
  • W dniach pracy – program będzie sprawdzał oprócz normy dobowej określonej w definicji kalendarza (np. 8h) również dobowy wymiar czasu pracy ustalony w planie pracy (grafiku) pracownika. W dniach przedłużonego dobowego wymiaru czasu pracy (np. 12h) – nadgodziny dobowe wystąpią po przekroczeniu tego wymiaru (czyli po 12h). Natomiast w dniach skróconego dobowego wymiaru czasu pracy (np. 6h) – nadgodziny dobowe wystąpią po przekroczeniu dobowej normy czasu pracy określonej w definicji kalendarza, czyli po przekroczeniu 8h.
  • W dniach wolnych od pracy/ świątecznych – program będzie sprawdzał tylko normę dobową określoną w definicji kalendarza (np. 8h), czyli czas pracy po przekroczeniu tej normy będzie zaliczany do nadgodzin dobowych. Natomiast czas przepracowany w obrębie (do) normy dobowej będzie uwzględniany w algorytmie sprawdzania przekroczenia normy średniotygodniowej.
Przykład
Pracownik zatrudniony na pełen etat w równoważnym systemie czasu pracy, czyli pracuje głównie po 12h w dni: poniedziałki, środy, piątki, jednak czasem wyznaczane są inne dni – z różną ilością godzin (1-miesięczny okres rozliczeniowy) – w lutym 2023 wymiar czasu pracy powinien wynieść 160h. W tym miesiącu przypadają: 4 poniedziałki, 4 środy, 4 piątki, czli 12 dni * 12h =144h, czyli w celu uzupełnienia planu do 160h wyznaczono dodatkowo 2 soboty po 8h. W jednym tygodniu pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem). Sumarczynie przepracował 172h.
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy12:0000:00
12:0000:00
12:00
00:00
00:00
36h
Rzeczywisty czas pracy12:00
00:00
14:00

10:0012:00
00:00
00:00
48h
Powyżej planu+2:00+10:00+12h
W definicji kalendarza: Norma dobowa = 8h, norma tygodniowa = 40h z zaznaczonymi parametrami:
  • Z uwzględnieniem przedłużonych dobowych wymiarów z planu pracy (równoważny czas pracy)
  • Z uwzględnieniem standardowych świąt
Liczymy nadgodziny dobowe, do których zaliczamy pracę ponad normę dobową (8h) lub ponad przedłużony dobowy wymiar czasu pracy (np. 12h) Nadgodziny dobowe: - 50% -> 4h = 2h (środa, praca ponad przedłużony wymiar czasu pracy, czyli 12h) + 2h (czwartek, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 4h (50%) Liczymy nadgodziny po przekroczeniu normy średniotygodniowej Norma: 4 pełne tygodnie * 40h + 0 dni brzegowe * 8h – 0 dni świątecznych * 8h = 160h +0h – 0h = 160h Czas przepracowany (172h) + czas usprawiedliwionych nieobecności (0h urlopu) - nadgodziny dobowe (4h) – norma (160h) = 172 + 0 – 4 - 160 = 8 > 0, czyli doszło do przekroczenia normy średniotygodniowej (8h - dopłata do nadgodzin 100%). Podsumowanie nadgodzin: - Dobowe 50% = 4h - Dobowe 100% = 0h - Średniotygodniowe 100% = 8h Gdy parametr Podział dopłat na nadgodziny dobowe i średniotygodniowe będzie:
  • niezaznaczony – to w wypłacie zostanie naliczone: – Wynagrodzenie powyżej normy za 12h – Dopłata do nadgodzin 50% za 4h – Dopłata do nadgodzin 100% a 8h
  • zaznaczony to w wypłacie zostanie naliczone: – Wynagrodzenie powyżej normy za 12h – Dopłata do nadgodzin dobowych 50% za 4h – Dopłata do nadgodzin średniotygodn. 100% za 8h

Podstawowy system czasu pracy (1 miesięczny) – niepełny etat

Dla pracownika zatrudnionego na część etatu pracodawca powinien ustalić tzw. limit godzin. Wynika to z art. 151 § 5 k.p., który informuje, że: Strony ustalają w umowie o pracę dopuszczalną liczbę godzin pracy ponad określony w umowie wymiar czasu pracy pracownika zatrudnionego w niepełnym wymiarze czasu pracy, których przekroczenie uprawnia pracownika, oprócz normalnego wynagrodzenia, do dodatku do wynagrodzenia, o którym mowa w art. 1511 § 1 (dodatku do wynagrodzenia jak za pracę nadliczbową). W programie Comarch ERP Optima Płace i Kadry można określić limit nadgodzin dla niepełnoetatowca tylko poprzez  wprowadzenie odpowiedniej normy dobowej i średniotygodniowej (niższej niż dla pełnego etatu), np. dla osoby zatrudnionej na ½ wymiaru etatu – normę dobowa 6h, średniotygodniową 30h. Przy takim ustawieniu zalecamy zaznaczyć dodatkowo parametr Z uwzględnieniem przedłużonych dobowych wymiarów z planu pracy (równoważny czas pracy).
Przykład
Pracownik zatrudniony na ½ etatu w podstawowym systemie czasu pracy, czyli po 4h dziennie (1-miesięczny okres rozliczeniowy) - w sierpniu 2023 powinien przepracować 88h (1/2*176h), a przepracował 101h (praca nie przypadała w porze nocnej). W jednym tygodniu pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem):
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy04:00
04:00
04:00
04:00
04:00
00:0000:0020h
Rzeczywisty czas pracy09:00

06:00


04:00
urlop04:00
10:0000:0033h
Powyżej planu+5:00+2:00+10:00 +17h
W definicji kalendarza: Norma dobowa = 6h, norma tygodniowa = 30h z zaznaczonymi parametrami:
  • Z uwzględnieniem przedłużonych dobowych wymiarów z planu pracy (równoważny czas pracy).
  • Z uwzględnieniem standardowych świąt.
Liczymy nadgodziny dobowe, do których zaliczamy pracę ponad normę dobową (6h). Nadgodziny dobowe: - 50% -> 7h = 3h (poniedziałek, praca ponad normę 6h) + 4h (sobota, praca ponad normę 6h) - 100% -> 0h Suma nadgodzin dobowych = 7h (50%) Liczymy nadgodziny po przekroczeniu normy średniotygodniowej - Norma: 4 pełne tygodnie * 30h + 3 dni brzegowe (29, 30,31) * 6h (1/5 z normy średniotygodniowej 30h) – 1 święto (15.08) * 6h = 120h + 18h – 6h = 132h Czas przepracowany (101h) + czas usprawiedliwionych nieobecności (4h urlopu) - nadgodziny dobowe (7h) – norma 132h = 101 + 4 – 7 - 132 = -34<0, czyli nie doszło do przekroczenia normy średniotygodniowej. Podsumowanie nadgodzin: - Dobowe 50% = 7h - Dobowe 100% = 0h - Średniotygodniowe 100% = 0h Gdy parametr Podział dopłat na nadgodziny dobowe i średniotygodniowe będzie:
  • niezaznaczony – to w wypłacie zostanie naliczone: – Wynagrodzenie powyżej normy za 17h – Dopłata do nadgodzin 50% za 7h
  • zaznaczony to w wypłacie zostanie naliczone: – Wynagrodzenie powyżej normy za 17h – Dopłata do nadgodzin dobowych 50% za 7h

Podstawowy system czasu pracy (3 miesięczny) – pełny etat

W module Płace i Kady Plus istnieje możliwość stosowania okresu rozliczeniowego dłuższego niż 1 miesiąc (np. 3 miesięcznego). W tym celu w definicji kalendarza w obszarze Rozliczenie w polu: Co – należy wpisać 3 (miesiące).
Rys 18. Konfiguracja kalendarza – ustawienie okresu rozliczeniowego
Dla okresu rozliczeniowych dłuższych niż 1 miesiąc istotny jest parametr Podział dopłat na nadgodziny dobowe i średniotygodniowe, ponieważ gdy parametr jest:
  • Zaznaczony – to dopłaty do nadgodzin dobowych są naliczane w miesiącu wystąpienia nadgodzin, natomiast dopłaty do nadgodzin średniotygodniowych na koniec okresu rozliczeniowego.
  • Niezaznaczony – to dopłaty do nadgodzin (dobowych i średniotygodniowych) są naliczane w wypłacie w ostatnim miesiącu okresu rozliczeniowego.
Uwaga
Wynagrodzenie powyżej/poniżej normy (podstawowe wynagrodzenie) rozliczane jest zawsze w miesiącu wystąpienia nadgodzin/niedogodzin.
Poniżej prezentowane są przykłady wyliczenia nadgodzin dla okresu 3 miesięcznego przy ustawieniu norm: dobowej (8h) i średniotygodniowej (40h) z zaznaczonymi parametrami:
  • Z uwzględnieniem standardowych świąt,
  • Podział dopłat na nadgodziny dobowe i średniotygodniowe.
W Konfiguracji kalendarzy – standardowe ustawienia, czyli:
  • Dni wolne (powyżej normy dobowej) – niezaznaczone
  • Dni pracy po przekroczeniu dobowego limitu nadgodzin 50% – niezaznaczone
Przykład
Pracownik zatrudniony na pełen etat w podstawowym systemie czasu pracy, czyli pracuje po 8h dziennie (3 miesięczny okres rozliczeniowy). W okresie styczeń – marzec  2023 wymiar czasu pracy 512h (168h+160h+184h), a przepracował 526h (174h+171h+181h), praca nie przypadała w porze nocnej. W definicji kalendarza: Norma dobowa = 8h, norma tygodniowa = 40h Rozliczenie Co: 3 miesiące Parametry:
  • Z uwzględnieniem standardowych świąt – zaznaczony
  • Podział dopłat na nadgodziny dobowe i średniotygodniowe – zaznaczony
W styczniu 2023 (1 miesiąc rozliczeniowy) – wymiar 168h, w jednym tygodniu pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem):
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy08:00
08:00
08:00
08:00
08:00
00:0000:0040h
Rzeczywisty czas pracyurlop10:0008:00
08:00
08:00
12:0000:0046h
Powyżej planu+2:00+12:00 +14h
W styczniu 2023 – wymiar czasu pracy 168h, przepracował 174h - sprawdzamy tylko nadgodziny dobowe, do których zaliczamy pracę ponad normę dobową (8h). Nadgodziny dobowe: - 50% -> 6h = 2h (wtorek, praca ponad normę 8h) + 4h (sobota, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 6h (50%) W wypłacie pracownika zostanie naliczone: - Wynagrodzenie powyżej normy za 14h - Dopłata do nadgodzin dobowych 50% za 6h ***************** W lutym 2023 (2 miesiąc rozliczeniowy) – wymiar 160h, w jednym tygodniu pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem):
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy08:00
08:00
08:00
08:00
08:00
00:00
00:00
40h
Rzeczywisty czas pracy08:00
08:00
08:00
08:0010:0000:00
09:0051h
Powyżej planu+2:00+9:00+11h
W lutym 2023 – wymiar czasu pracy 160h, przepracował 184h - sprawdzamy tylko nadgodziny dobowe, do których zaliczamy pracę ponad normę dobową (8h). Nadgodziny dobowe: - 50% -> 2h (piątek, praca ponad normę 8h) - 100% -> 1h (niedziela, praca ponad normę 8h) Suma nadgodzin dobowych = 2h (50%) + 1h (100%) = 3h W wypłacie pracownika zostanie naliczone: - Wynagrodzenie powyżej normy za 11h - Dopłata do nadgodzin dobowych 50% za 2h - Dopłata do nadgodzin dobowych 100% za 1h ***************** W marcu 2023 (3 miesiąc rozliczeniowy, ostatni) – wymiar 184h, w jednym tygodniu pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem):
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy08:00
08:00
08:00
08:00
08:00
00:00

00:00

40h
Rzeczywisty czas pracyurlopurlop08:00
12:00

08:00
09:00

00:00

37h
Powyżej planu+4:00+9:00+13h
W marcu 2023 (ostatni miesiąc rozliczeniowy) – wymiar czasu pracy 184h, przepracował 181h - sprawdzamy nadgodziny dobowe oraz średniotygodniowe. Nadgodziny dobowe: - 50% -> 5h = 4h (czwartek, praca ponad normę 8h) + 1h (sobota, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 5h (50%) Nadgodziny średniotygodniowe: Pomocnicze wyliczenia: Norma do nadgodzin = 12 pełnych tygodni * 40h + 5 dni brzegowych (27-31.03.2023) * 8h – 1 dzień świąteczny (6.01) * 8h = 480h + 40h – 8h = 512h Czas przepracowany = 526h (174h styczeń + 171h luty +181h marzec) Czas usprawiedliwionych nieobecności (urlop) = 24h (8h styczeń +16h marzec) Nadgodziny dobowe = 14h (6h styczeń + 3h luty + 5h marzec) Czas przepracowany (526h) + czas usprawiedliwionych nieobecności (24h urlopu) - nadgodziny dobowe (14h) – norma (512h) = 526 + 24 – 14 - 512= 24 > 0, czyli doszło do przekroczenia normy średniotygodniowej. W wypłacie pracownika zostanie naliczone: Wynagrodzenie powyżej normy za 13h - Dopłata do nadgodzin dobowych 50% za 5h - Dopłata do nadgodzin średniotygodn. 100% za 24h Gdyby parametr Podział dopłat na nadgodziny dobowe i średniotygodniowe byłby niezaznaczony, to w wypłatach za okres: styczeń i luty 2023 policzy się tylko wynagrodzenie powyżej normy, a za okres marzec 2023 – wynagrodzenie powyżej normy oraz dopłaty: - Dopłata do nadgodzin 50% za 13h (6h dobowe w styczniu + 2h dobowe w lutym +5h dobowe w marcu) - Dopłata do nadgodzin 100% za 25h (1h dobowe w lutym + 24h średniotyg.)

Bilansowanie w rozliczeniu nadgodzin wg normy dobowej i średniotygodniowej

Przy rozliczaniu nadgodzin wg norm: dobowej i średniotygodniowej – Algorytm bilansowania nadgodzin w rozliczanym okresie zależy od parametru Podział dopłat na nadgodziny dobowe i średniotygodniowe. 1. Gdy Podział dopłat na nadgodziny dobowe i średniotygodniowe jest niezaznaczony – to do wyboru mamy opcje:
  • Nie bilansuj – nadgodziny dobowe nie są pomniejszane o niedogodziny i nieobecności nieusprawiedliwione (NN). Natomiast nadgodziny średniotygodniowe są pomniejszane, ponieważ przy sprawdzaniu, czy doszło do przekroczenia normy średniotygodniowej uwzględniamy czas przepracowany, który jest pomniejszony o czas niedogodzin – wg wzoru: X = CZAS PRZEPRACOWANY + CZAS USPRAWIEDLIWIONYCH NIEOBECNOŚCI – NADGODZINY DOBOWE – NORMA i gdy: X>0 – to oznacza, że wystąpiły nadgodziny średniotygodniowe, X<=0 – to oznacza, że nie wystąpiły nadgodziny średniotygodniowe
  • 100%, 50% – najpierw liczone są nadgodziny dobowe i średniotygodniowe (bez pomniejszenia o niedogodziny), a następnie wyliczone ilość nadgodzin (50%, 100%) jest bilansowana – w pierwszej kolejności nadgodziny 100%, a potem 50%. X = CZAS PRZEPRACOWANY + CZAS NIEDOGODZIN + CZAS USPRAWIEDLIWIONYCH NIEOBECNOŚCI – NADGODZINY DOBOWE – NORMA i gdy: X>0 – to oznacza, że wystąpiły nadgodziny średniotygodniowe, X<=0 – to oznacza, że nie wystąpiły nadgodziny średniotygodniowe.
  • 50%, 100% – analogicznie j.w., tylko odwrotna jest kolejność pomniejszania o niedogodziny, najpierw nadgodziny 50%, potem 100%.
2. Gdy Podział dopłat na nadgodziny dobowe i średniotygodniowe jest zaznaczony – to dostępne są opcje:
  • Tylko średniotygodniowe – nadgodziny dobowe nie są pomniejszane. Natomiast nadgodziny średniotygodniowe są pomniejszane, ponieważ przy sprawdzaniu, czy doszło do przekroczenia normy średniotygodniowej uwzględniamy czas przepracowany, który jest pomniejszony o czas niedogodzin – wg wzoru: X = CZAS PRZEPRACOWANY + CZAS USPRAWIEDLIWIONYCH NIEOBECNOŚCI – NADGODZINY DOBOWE – NORMA i gdy: X>0 – to oznacza, że wystąpiły nadgodziny średniotygodniowe, X<=0 – to oznacza, że nie wystąpiły nadgodziny średniotygodniowe
  • Średniotygodniowe, dobowe 100%, 50% – w pierwszej kolejności pomniejszane są nadgodziny średniotygodniowe na koniec okresu rozliczeniowego pod warunkiem, że ich ilość jest wystarczająca do zbilansowania wszystkich niedogodzin z całego okresu rozliczeniowego. W przypadku, gdy ilość nadgodzin średniotygodniowych od początku okresu rozliczeniowego nie jest wystarczająca, to występujące niedogodziny na bieżąco będą pomniejszać nadgodziny dobowe – w pierwszej kolejności 100%, potem 50%. Nieobecności nieusprawiedliwione nigdy nie pomniejszają nadgodzin dobowych, tylko średniotygodniowe.
  • Średniotygodniowe, dobowe 50%, 100% – działanie opisane jak wyżej, tylko kolejność pomniejszania nadgodzin dobowych jest najpierw 50%, potem 100%.

Przykład bilansowania przy podziale na nadgodziny dobowe i średniotygodniowe (okres 1 miesięczny)

Przykład
Pracownik zatrudniony na pełen etat w podstawowym systemie czasu pracy (1-miesięczny okres rozliczeniowy) – w lutym 2023 powinien zgodnie z harmonogramem przepracować 160h, przepracował 153h. W jednym tygodniu pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem):
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy08:00
08:00
08:00
08:00
08:00
00:00
00:00
40h
Rzeczywisty czas pracyurlop10:00
08:00
06:00
06:00
03:00
00:0033h
Powyżej planu+2:00+3:00 +5h
Poniżej planu-2:00-2:00-4h
W definicji kalendarza: Norma dobowa = 8h, norma tygodniowa = 40h Rozliczenie Co: 1 miesiąc Parametry:
  • Z uwzględnieniem standardowych świąt – zaznaczony
  • Podział dopłat na nadgodziny dobowe i średniotygodniowe – zaznaczony
1. Wyliczenie nadgodzin z bilansowaniem: Tylko średniotygodniowe - przy tym ustawieniu nadgodziny dobowe nie są pomniejszane, tylko nadgodziny średniotygodniowe są pomniejszane o niedogodziny i nieobecności nieusprawiedliwione (NN). Liczymy nadgodziny dobowe: - 50% -> 2h (wtorek, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 2h (50%) - nie są bilansowane Liczymy nadgodziny średniotygodniowe: Czas przepracowany = 153h Czas usprawiedliwionych nieobecności = 8h Nadgodziny dobowe = 2h (50%) Norma do nadgodzin: 4 pełne tygodnie * 40h + 0 dni brzegowe * 8h – 0 dni świątecznych * 8h = 160h + 0h – 0h = 160h Czas przepracowany (153h) + czas usprawiedliwionych nieobecności (8h urlopu) - nadgodziny dobowe (2h) – norma (160h) = 153 + 8 - 2 - 160 = -1 <0, czyli nie doszło do przekroczenia normy średniotygodniowej. W wypłacie pracownika zostanie naliczone: - zasad. powyżej normy za +1h (5h-4h niedogodzin) W sytuacji, gdy parametr “Bilansowanie powyżej/poniżej normy (w obrębie strefy czasu pracy)” - w Konfiguracja > Firma > Płace > Parametry-zakładka 2 - będzie zaznaczony, to wyliczy się tylko: -Wynagr. zasad. powyżej normy = +5h -Wynagr. zasad. poniżej normy = -4h - Dopłata do nadgodzin dobowych 50% za 2h 2. Wyliczenie nadgodzin z bilansowaniem: Średniotygodniowe, dobowe 100%, 50% - w pierwszej kolejności pomniejszane są nadgodziny średniotygodniowe pod warunkiem, że ich ilość jest wystarczająca do zbilansowania wszystkich niedogodzin. W przypadku, gdy ilość nadgodzin średniotygodniowych od początku okresu rozliczeniowego nie jest wystarczająca, to występujące niedogodziny na bieżąco będą pomniejszać nadgodziny dobowe – w pierwszej kolejności 100%, potem 50%. Nieobecności nieusprawiedliwione nigdy nie bilansują nadgodzin dobowych, tylko średniotygodniowe. Liczymy nadgodziny dobowe: - 50% -> 2h (wtorek, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 2h (50%) Liczymy nadgodziny średniotygodniowe bez uwzględnienia niedogodzin i NN, a następnie wyliczona ilość nadgodzin będzie pomniejszena o czas niegodzin. Czas przepracowany = 153h Czas niedogodzin = 4h Czas usprawiedliwionych nieobecności = 8h Nadgodziny dobowe 50% = 2h Norma do nadgodzin: 4 pełne tygodnie * 40h + 0 dni brzegowe * 8h – 0 dni świątecznych * 8h = 160h + 0h – 0h = 160h Czas przepracowany (153h) + czas niedgodzin (4h) + czas usprawiedliwionych nieobecności (8h) - nadgodziny dobowe (2h) – norma do nadgodzin (160h) = 153 + 4 + 8 - 2 - 160 = 3 >0, czyli doszło do przekroczenia normy średniotygodniowej o 3h. Następnie następuje bilansowanie o niedogodziny (4h) w kolejności: Nadgodziny średniotygodniowe = 3h – 3h niedogodziny = 0h Nadgodziny dobowe 50% = 2h – 1h niedogodzina = 1h W wypłacie zostaną naliczone elementy: - Wynagr. zasad. powyżej normy +1h (5h-4h) W sytuacji, gdy parametr “Bilansowanie powyżej/poniżej normy (w obrębie strefy czasu pracy)” - w Konfiguracja > Firma > Płace > Parametry - zakładka 2 -  będzie niezaznaczony, to wyliczy się: -Wynagr. zasad. powyżej normy = +5h - Wynagr. zasad. poniżej normy = -4h - Dopłata do nadgodzin dobowych 50% za 1h 3. Wyliczenie nadgodzin z bilansowaniem: Średniotygodniowe, dobowe 50%, 100% - bilansowanie jak powyżej, tylko nadgodziny dobowe pomniejszane w kolejności 50%, a następnie 100%. W tym przypadku wyliczenia będą takie same jak dla opcji bilansowania Średniotygodniowe, dobowe 100%, 50%, ponieważ nie wystąpiły nadgodziny dobowe 100%.

Przykład bilansowania przy podziale na nadgodziny dobowe i średniotygodniowe (okres 3 miesięczny)

Przykład
Pracownik zatrudniony na pełen etat w podstawowym systemie czasu pracy, czyli pracuje po 8h dziennie (3 miesięczny okres rozliczeniowy). W okresie styczeń – marzec  2023 wymiar czasu pracy 512 h (168h+160h+184h), a przepracował 513h (163h+161h+189h), praca nie przypadała w porze nocnej. W definicji kalendarza: Norma dobowa = 8h, norma tygodniowa = 40h Rozliczenie Co: 3 miesiące Parametry:
  • Z uwzględnieniem standardowych świąt – zaznaczony
  • Podział dopłat na nadgodziny dobowe i średniotygodniowe – zaznaczony
W styczniu 2023 (1 miesiąc rozliczeniowy) – wymiar 168h. W jednym tygodniu pracownik pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem), przepracował 163h.
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy08:00
08:00
08:00
08:00
08:00
00:00
08:00
40h
Rzeczywisty czas pracyurlop09:00
08:00
08:00
06:00
04:00
08:00
43h
Powyżej planu+1:00+4:00 +5h
Poniżej planu-2:00-2h
W lutym 2023 (2 miesiąc rozliczeniowy) – wymiar 160h. W jednym tygodniu pracownik pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem), przepracował 161h.
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy08:00
08:00
08:00
08:00
08:00
00:00
00:00
40h
Rzeczywisty czas pracy08:00
08:00
08:00
12:00
05:00
00:00
00:00
41h
Powyżej planu+4:00+4h
Poniżej planu-3:00-3h
W marcu 2023 (3 miesiąc rozliczeniowy, ostatni) – wymiar 184h. W jednym tygodniu pracownik pracował zgodnie z poniższą tabelką (pozostałe dni zgodnie z harmonogramem), przepracował 189h.
Pon.Wt.Śr.Czw.Piąt.Sob.Niedz.Suma
Plan pracy08:00
08:00
08:00
08:00
08:00
00:0000:0040h
Rzeczywisty czas pracy08:00
08:00
08:00
10:00
07:00
00:0004:00
45h
Powyżej planu+2:00+4:00+6h
Poniżej planu-1:00-1h
1. Wyliczenie nadgodzin z bilansowaniem: Tylko średniotygodniowe - przy tym ustawieniu nadgodziny dobowe nie są pomniejszane, tylko nadgodziny średniotygodniowe są pomniejszane o niedogodziny i nieobecności nieusprawiedliwione (NN). Styczeń 2023 (pierwszym miesiąc rozliczeniowy) - liczymy tylko nadgodziny dobowe, które nie pomniejszamy. Liczymy nadgodziny dobowe: - 50% -> 1h (wtorek, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 1h (50%) W wypłacie zostaną naliczone elementy: - Wynagr. zasad. powyżej normy za 3h (5h-2h niedogodzin) - Dopłata do nadgodzin dobowych 50% za 1h Luty 2023 (drugi miesiąc rozliczeniowy) - liczymy tylko nadgodziny dobowe, które nie pomniejszamy. Liczymy nadgodziny dobowe - 50% -> 4h (czwartek, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 4h (50%) W wypłacie zostaną naliczone elementy: - Wynagr. zasad. powyżej normy za 1h (4h-3h niedogodzin) - Dopłata do nadgodzin dobowych 50% za 4h

 

Marzec 2023 (trzeci miesiąc rozliczeniowy, ostatni) - liczymy najpierw nadgodziny dobowe, które nie pomniejszamy, a następnie nadgodziny średniotygodniowe, które są pomniejszane o niedogodziny i nieobecności nieusprawiedliwione (NN). Liczymy nadgodziny dobowe - 50% -> 2h (czwartek, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 2h (50%) Liczymy nadgodziny średniotygodniowe: Czas przepracowany = 513h (163h styczeń + 161h luty +189h marzec) Czas usprawiedliwionych nieobecności = 8h (styczeń) Nadgodziny dobowe (z całego okresu rozliczeniowego) = 7h (1h styczeń + 4h luty + 2h marzec) Norma do nadgodzin = 12 pełnych tygodni * 40h + 5 dni brzegowych (27, 28, 29, 30, 31.03) * 8h – 1 dzień świąteczny (6.01) * 8h = 480h + 40h – 8h = 512h Czas przepracowany (513h) + czas usprawiedliwionych nieobecności (8h urlopu) - nadgodziny dobowe (7h) – norma (512h) = 513 + 8 – 7 - 512 = 2 > 0, czyli doszło do przekroczenia normy średniotygodniowej. W wypłacie zostaną naliczone elementy: - Wynagr. zasad. powyżej normy za 5h (6h-1h niedogodzina) - Dopłata do nadgodzin dobowych 50% za 2h - Dopłata do nadgodzin średniotygodn. 100% za 2h 2. Wyliczenie nadgodzin z bilansowaniem: Średniotygodniowe, dobowe 100%, 50% - w pierwszej kolejności pomniejszane są nadgodziny średniotygodniowe pod warunkiem, że ich ilość jest wystarczająca do zbilansowania wszystkich niedogodzin. W przypadku, gdy ilość nadgodzin średniotygodniowych od początku okresu rozliczeniowego nie jest wystarczająca, to występujące niedogodziny na bieżąco będą pomniejszać nadgodziny dobowe – w pierwszej kolejności 100%, potem 50%. Nieobecności nieusprawiedliwione nigdy nie bilansują nadgodzin dobowych, tylko średniotygodniowe. Styczeń 2023 (pierwszym miesiąc rozliczeniowy) Liczymy nadgodziny dobowe: - 50% -> 1h (wtorek, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 1h (50%) Liczymy “potencjalne” nadgodziny średniotygodniowe od poczatku okresu rozliczeniowego, czyli za 1 mc (1.2023) bez uwzględnienia niedogodzin i NN, więc czas przepracowny jest powiększony o czas niedogodzin i NN. Czas przepracowany = 163h Czas niedogodzin i NN= 2h Czas usprawiedliwionych nieobecności = 8h Nadgodziny dobowe z bieżącego miesiaca = 1h (50%) Norma do nadgodzin =4 pełne tygodni * 40h + 2 dni brzegowe (30, 31.01) * 8h – 1 dzień świąteczny (6.01) * 8h = 160h + 16h – 8h = 168h Czas przepracowany (163h) + czas niedogodzin i NN (2h) + czas usprawiedliwionych nieobecności (8h urlopu) - nadgodziny dobowe z bieżącego mc (1h) – norma (168h) = 163 + 2 + 8 - 1 - 168 = 4 > 0, czyli ilość “potencjalnych” nadgodzin średniotygodnioych wynosi 4h. Sprawdzamy, czy ilość “potencjalnych” nadgodzin średniotygodniowych od początku okresu rozliczeniowego jest wystarczająca na zbilansowanie wszystkich niedogodzin i w przypadku, gdy: - ilość nadgodzin średniotygodniowych jest większa lub równa ilości niedogodziny, to nadgodziny dobowe nie są pomniejszane. - W przeciwnym przypadku, gdy ilość nadgodzin średniotygodniowych jest mniejsza niż ilości niedogodziny, to nadgodziny dobowe z bieżącego miesiąca są pomniejszane. W tym przypadku ilość “potencjalnych” nadgodzin średniotygodniowych (4h) jest większa niż niedogodzin (2h), więc nadgodziny dobowe z bieżącego miesiąca nie są pomniejszane. W wypłacie zostaną naliczone elementy: - Wynagr. zasad. powyżej normy za 3h (5h-2h niedogodziny) - Dopłata do nadgodzin dobowych 50% za 1h Luty 2023 (drugi miesiąc rozliczeniowy) Liczymy nadgodziny dobowe: - 50% -> 4h (czwartek, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 4h (50%) Liczymy “potencjalne” nadgodziny średniotygodniowe od początku okresu rozliczeniowego, czyli za 2 mc (1-2.2023) bez uwzględnienia niedogodzin i NN, więc czas przepracowany jest powiększony o czas niedogodzin i NN. Czas przepracowany = 324h (163h styczeń + 161h luty) Czas niedogodzin i NN= 5h (2h styczeń + 3h luty) Czas usprawiedliwionych nieobecności = 8h (styczeń) Nadgodziny dobowe wypłacone = 1h Nadgodziny dobowe z bieżącego miesiaca = 4h (50%) Norma do nadgodzin = 8 pełnych tygodni * 40h + 2 dni brzegowe (27,28.02) * 8h – 1 dzień świąteczny (6.01) * 8h = 320h + 16h – 8h = 328h Czas przepracowany (324h) + czas niedogodzin i NN (5h) + czas usprawiedliwionych nieobecności (8h urlopu) - nadgodziny dobowe wypłacone (1h) – nadgodziny z bieżącego mc (4h) – norma (328h) = 324 + 5 + 8 - 1 – 4 - 328 = 4 > 0, czyli ilość “potencjalnych” nadgodzin średniotygodniowych wynosi 4h. Sprawdzamy, czy ilość “potencjalnych” nadgodzin średniotygodniowych od początku okresu jest wystarczająca na zbilansowanie wszystkich niedogodzin od początku okresu. W tym przypadku ilość “potencjalnych” nadgodzin średniotygodniowych (4h) jest mniejsza niż wszystkich niedogodzin (5h), więc nadgodziny dobowe z bieżacego miesiąca są pomniejszane o brakującą ilość nadgodzin średniotygodniowych zgodnie z wyliczeniem: Potencjalne nadgodziny średniotygodniowe (4h) – niedogodziny (5h) = - 1h – o tyle należy pomniejszyć nadgodziny dobowe z bieżącego miesiąca. Nadgodziny dobowe z bieżącego miesiąca = 4h (50%)  - 1h (niedogodzina) = 3h. W wypłacie zostaną naliczone elementy: - Wynagr. zasad. powyżej normy za 1h (4h-1h niedogodzina) - Dopłata do nadgodzin dobowych 50% za 3h Marzec 2023 (trzeci miesiąc rozliczeniowy, ostatni) Liczymy nadgodziny dobowe: - 50% -> 2h (czwartek, praca ponad normę 8h) - 100% -> 0h Suma nadgodzin dobowych = 2h (50%) Liczymy “potencjalne” nadgodziny średniotygodniowe od poczatku okresu rozliczeniowego, czyli za 3 mc (1-3.2023) bez uwzględnienia niedogodzin i NN, więc czas przepracowany jest powiększony o czas niedogodzin i NN. Czas przepracowany = 513h (163h styczeń + 161h luty +189h marzec) Czas niedogodzin i NN= 6h (2h styczeń + 3h luty + 1h marzec) Czas usprawiedliwionych nieobecności = 8h (styczeń) Nadgodziny dobowe wypłacone = 4h (1h styczeń + 3h luty) Nadgodziny dobowe z bieżącego miesiaca = 2h (50%) Norma do nadgodzin =12 pełnych tygodni * 40h + 5 dni brzegowych (27, 28, 29, 30, 31.03) * 8h – 1 dzień świąteczny (6.01) * 8h = 480h + 40h – 8h = 512h Czas przepracowany (513h) + czas niedogodzin i NN (6h) + czas usprawiedliwionych nieobecności (8h urlopu) - nadgodziny dobowe wypłacone (4h) - nadgodziny dobowe z bieżącego mc (2h) – norma (512h) = 513 + 6 + 8 – 4 – 2 - 512 = 9 > 0, czyli ilość “potencjalnych” nadgodzin średniotygodniowych wynosi 9h. Sprawdzamy, czy ilość “potencjalnych” nadgodzin średniotygodniowych od początku okresu jest wystarczająca na zbilansowanie wszystkich niedogodzin od początku okresu. W tym przypadku ilość “potencjalnych” nadgodzin średniotygodniowych (9h) jest większa niż wszystkich niedogodzin (6h), więc nadgodziny dobowe z bieżącego miesiąca nie są pomniejszane. Nadgodziny dobowe z bieżacego miesiaca = 2h (50%) Na koniec wyliczamy ostateczną ilość nadgodzin średniotygodniowych od poczatku okresu rozliczeniowego, czyli za 3 mc (1-3.2023). Czas przepracowany = 513h (163h styczeń + 161h luty +189h marzec) Czas usprawiedliwionych nieobecności = 8h (styczeń) Nadgodziny dobowe wypłacone = 4h (1h styczeń + 3h luty) Nadgodziny dobowe z bieżącego miesiaca = 2h (50%) Norma do nadgodzin =12 pełnych tygodni * 40h + 5 dni brzegowych (27, 28, 29, 30, 31.03) * 8h – 1 dzień świąteczye (6.01) * 8h = 480h + 40h – 8h = 512h Czas przepracowany (513h) + czas usprawiedliwionych nieobecności (8h urlopu) - nadgodziny dobowe wypłacone (4h) - nadgodziny dobowe z bieżącego mc (2h) – norma (512h) = 513 + 8 – 4 – 2 - 512 = 3 > 0, czyli doszło do przekroczenia normy średniotygodniowej. W wypłacie zostaną naliczone elementy: - Wynagr. zasad. powyżej normy za 5h (6h- 1H niedogodzina) - Dopłata do nadgodzin dobowych 50% za 2h - Dopłata do nadgodzin średniotygodn. 100% za 3h 3. Wyliczenie nadgodzin z bilansowaniem: Średniotygodniowe, dobowe 50%, 100% - bilansowanie jest jak powyżej, tylko najpierw dobowe 50%, a następnie 100%.

10 Czas wolny za nadgodziny – Płace i Kadry Plus

Rekompensata za pracę w nadgodzinach - czasem wolnym

Praca w godzinach nadliczbowych może być rekompensowana czasem wolnym (art. 1512 k.p.). Udzielenie czasu wolnego za pracę w nadgodzinach zwalnia pracodawcę z obowiązku wypłaty dodatkowego wynagrodzenia za te nadgodziny. Udzielenie dnia wolnego w zamian za pracę w dniu wolnym oraz w niedzielę lub święto (do 8h) jest obowiązkiem pracodawcy. Jeżeli w trakcie trwania okresu rozliczeniowego nie jest to możliwe, wówczas należy wypłacić stosowne dodatki. Natomiast za pracę ponad normę/wymiar dobowy (powyżej 8h) w pierwszej kolejności należy się wypłata stosownych dodatków. Jednak tu też dopuszczalne jest odstępstwo od tej reguły i można takie nadgodziny wynagrodzić czasem wolnym.

Ilość czasu wolnego za nadgodziny

Ilość udzielanego czasu wolnego za pracę nadliczbową zależy od tego, za jakie nadgodziny (dobowe, czy średniotygodniowe) jest przyznawany oraz na czyj wniosek (pracownika, czy pracodawcy). Poniżej znajduje się informacja, ile przysługuje czasu wolnego za dodatkowo przepracowane godziny – zależnie od rodzaju nadgodzin i na czyj wniosek:
  • w dni pracy po przekroczeniu wymiaru dobowego (nadgodziny dobowe) – na wniosek pracownika: za każdą nadgodzinę – 1 godzina czasu wolnego, – na wniosek pracodawcy: za każdą nadgodzinę – 1,5 godziny czasu wolnego.
  • w dni wolne, w niedziele i święta po przekroczeniu normy dobowej (nadgodziny dobowe) – na wniosek pracownika: za każdą nadgodzinę – 1 godzina czasu wolnego, – na wniosek pracodawcy: za każdą nadgodzinę – 1,5 godziny czasu wolnego.
  • w dni wolne, w niedziele i święta w granicach normy dobowej (nadgodziny średniotygodniowe) – bez względu na ilość przepracowanych godzin – 1 dzień wolny.

Czas wolny za nadgodziny w programie

W module Płacy i Kadry Plus udostępniona jest funkcjonalność odbierania nadgodzin. W kalendarzu czasu pracy pracownika, na danym wejściu w dniu znajduje się pole Odbiór nadgodzin z rozwijaną listą znaczników:
  • O.BM – nadgodziny do odbioru w bieżącym miesiącu (do strefy niewliczanej do czasu pracy)
  • O.NM – nadgodziny do odbioru w kolejnym miesiącu (do strefy wliczanej do czasu pracy)
  • W.PŁ – wolne za nadgodziny – płatne (do strefy wliczanej do czasu pracy)
  • W.NP – wolne za nadgodziny – niepłatne (do strefy niewliczanej do czasu pracy)

Rys 19. Formularz wejścia na dniu pracy pracownika – odnotowanie nadgodzin do odbioru w bieżącym miesiącu

Sposób wynagradzania i wliczania do czasu pracy będzie odczytywany ze strefy, którą opisuje dany znacznik. Należy pamiętać, że opisy ‘O.NM’ i ‘W.PŁ’ mogą być uwzględniane wyłącznie dla wejść odnotowanych jako strefy wliczane do czasu pracy, a dwa pozostałe opisy ‘O.BM’ i ‘W.NP’ jako strefy niewliczanej do czasu pracy. Nieprawidłowe dopasowanie strefy i znacznika przy zapisie jest sygnalizowane komunikatem Wybrano niewłaściwy opis odbioru nadgodzin, niezgodny z wybraną strefą. Poniższa tabelka prezentuje powiązanie znaczników z odpowiednimi strefami czasu pracy. Można używać standardowych stref w programie (czas pracy podstawowej – wliczana do czasu pracy, czas przerwy – niewliczana do czasu pracy) lub zdefiniować własne na wzór standardowych.
ZnacznikRodzaj strefy czasu pracy – wliczanie do czasu przepracowanego oraz wynagradzanieWliczać do czasu pracy służącego do wyliczania nadgodzin
O.BMniewliczana do czasu pracy, np. Czas przerwy bez wynagrodzeniaNie
O.NMwliczana do czasu pracy, np. Czas pracy podstawowy wynagradzana 100%Nie
W.PŁwliczana do czasu pracy, np. Czas pracy podstawowy wynagradzana 100%Tak
W.NPniewliczana do czasu pracy, np. Czas przerwy bez wynagrodzeniaTak
Rys 20. Konfiguracja znaczników (nadgodzin do odbioru i czasu wolnego za nadgodziny) i stref czasu pracy
Uwaga
Sposób wyliczenia czasu przepracowanego jest różny od wyliczeń czasu wykorzystywanego przy obliczaniu ilości nadgodzin. Do czasu przepracowanego wliczany jest czas oznaczony O.NM i W.PŁ. Natomiast do czasu uwzględnianego do obliczeń nadgodzin wliczany jest czas oznaczony W.PŁ i W.NP.

Wynagrodzenie za czas wolny (udzielony za nadgodziny)

Przy udzielaniu czasu wolnego bardzo ważne jest również, w jakim miesiącu ten czas wolny jest udzielany, tzn.: czy w tym samym miesiącu, w którym wystąpiły nadgodziny, czy w kolejnym miesiącu (do końca okresu rozliczeniowego) oraz na czyj wniosek: pracownika/pracodawcy. Udzielony czas wolny w tym samym miesiącu (co nadgodziny) charakteryzuje się tym, że pracownik ma prawo do normalnego wynagrodzenia za wszystkie godziny/dni wolne. Niepłatne są natomiast dodatkowo przepracowane nadgodziny, za które udzielono czasu wolnego, co prezentuje poniższa tabelka.
Udzielenie czasu wolnego za nadgodziny w tym samym miesiącu
Rodzaj godzin pracyMiesiąc wystąpienia nadgodzin
(np. 1.2021)
Miesiąc odbioru nadgodzin (np.1.2021)
- czas wolny za nadgodziny na wniosek:
pracownikapracodawcy
w dniu pracy
ponad wymiar dobowy
Ilość godzin: 1h
Oznaczenie:
O.BM (przerwa)
Rozliczenie: Brak
Ilość godzin: 1h
Oznaczenie:
W.PŁ (praca podst.)
Rozliczenie: Brak
Ilość godzin: 1,5h
Oznaczenie:
W.PŁ (praca podst.)
Rozliczenie: Brak
w dni wolne, niedziele i święta
(powyżej normy dobowej 8h)
Ilość godzin: 1h
Oznaczenie:
O.BM (przerwa)
Rozliczenie: Brak
Ilość godzin: 1hIlość godzin: 1,5h
Oznaczenie:
W.PŁ (praca podst.)
Rozliczenie: Brak
w dni wolne, niedziele i święta
(do normy dobowej 8h)
Ilość godzin: od 1h do 8h
Oznaczenie:
O.BM (przerwa)
Rozliczenie: Brak
Ilość godzin: 8h (cały dzień)
Oznaczenie:
W.PŁ (praca podst.)
Rozliczenie: Brak
Rys 21. Czas wolny za nadgodziny w jednomiesięcznym okresie rozliczeniowym

Rys 21. Czas wolny za nadgodziny w jednomiesięcznym okresie rozliczeniowym

Udzielony czas wolny w innym miesiącu (niż nadgodziny) – przy dłuższym okresie rozliczeniowym czasu pracy – charakteryzuje się tym, że dodatkowo przepracowane nadgodziny są wynagradzane stawką zasadniczą w bieżącym miesiącu. W kolejnym miesiącu płatny jest tylko czas wolny udzielony za nadgodziny dobowe (ponad normę/wymiar) na wniosek pracodawcy (art. 1512 § 2 k.p.).
Udzielenie czasu wolnego za nadgodziny w kolejnym miesiącu
Rodzaj godzin pracyMiesiąc wystąpienia nadgodzin
(np. 1.2021)
Miesiąc odbioru nadgodzin (np.2.2021)
- czas wolny za nadgodziny na wniosek:
pracownikapracodawcy
w dniu pracy
ponad wymiar dobowy
Ilość godzin: 1h
Oznaczenie:
O.NM (praca podst.)
Rozliczenie:
Wynagr.powyżej normy (za 1h)

Ilość godzin: 1h 1)
Oznaczenie:
W.NP (przerwa)
Rozliczenie: Wynagr.poniżej normy (za 1h)

Ilość godzin: 1,5h
Oznaczenie:
W.PŁ (praca podst.)
Rozliczenie: Brak

w dni wolne, niedziele i święta
(powyżej normy dobowej 8h)
Ilość godzin: 1h
Oznaczenie:
O.NM (praca podst.)
Rozliczenie:
Wynagr.powyżej normy (za 1h)

Ilość godzin: 1h 1)
Oznaczenie:
W.NP (przerwa)
Rozliczenie: Wynagr.poniżej normy (za 1h)
Ilość godzin: 1,5h
Oznaczenie:
W.PŁ (praca podst.)
Rozliczenie: Brak

w dni wolne, niedziele i święta
(do normy dobowej 8h)

Ilość godzin: od 1h do 8h
Oznaczenie:
O.NM (praca podst.)
Rozliczenie:
Wynagr.powyżej normy
(za 1 -8h)
Ilość godzin: 8h (cały dzień) 2)
Oznaczenie:
W.NP (przerwa)
Rozliczenie:
Wynagr.poniżej normy (za 8h)

Rys 22. Czas wolny za nadgodziny dla wielomiesięcznych okresów rozliczeniowych

Rys 22. Czas wolny za nadgodziny dla wielomiesięcznych okresów rozliczeniowych

1) Zgodnie z wykładnią prawa, pracownik nie nabywa prawa do wynagrodzenia za czas wolny udzielany w zamian za pracę w nadgodzinach, czyli udzielnie czasu wolnego w kolejnym miesiącu powoduje dysproporcję jego wynagradzania (w poszczególnych miesiącach okresu rozliczeniowego). W tej kwestii stanowisko zajął Sąd Najwyższy, który w wyroku z dnia 9 lutego 2010 r. (sygn. akt I PK 157/09) stwierdził, że wypłata normalnego wynagrodzenia za pracę w nadgodzinach rekompensowanych udzieleniem pracownikowi na jego wniosek czasu wolnego powinna nastąpić w okresie odbierania czasu wolnego. (W tej sytuacji w programie czas nadgodziny można oznaczyć tak jak odbiór w bieżącym miesiącu, czyli nadgodziny jako niepłatne (O.BM, czas przerwy) a czas wolny jako płatny (W.PŁ, praca podst.). 2) Gdy za 1 nadgodzinę w dniu wolnym (niedzielę / święto) udzielmy w kolejnym miesiącu dnia wolnego (8h) i oznaczymy jako niepłatne (jak mówią przepisy), to pracownik będzie stratny, będzie miał pomniejszenie wynagrodzenie za 8h. Działając na korzyść pracownika można oznaczyć dzień wolny jako płatny (W.PŁ, praca podst.) a nadgodziny jako niepłatne (O.BM, przerwa).

W programie z poziomu okna Listy pracowników dostępny jest wydruk „Pracownicy z czasem wolny za nadgodziny” (z menu wydruków: Pracownicy). Dodatkowo z poziomu formularza pracownika również dostępny jest wydruk „Czas wolny za nadgodziny” (z menu wydruków: Raporty). Wydruki te przedstawiają dane na temat udzielonego czasu wolnego za wypracowane nadgodziny oraz czas tych nadgodzin. Dane odczytywane są z kalendarza ‘(Nie)obecności’ pracownika z podziałem na poszczególne dni lub jako wartość łączna w podsumowaniu. Po oznaczeniu czasu pracy w poszczególnych dniach znacznikami O.BM, O.NM, W.PŁ, W.NP ilość czasu pracy będzie pokazywana na wydruku.

Przykłady udzielania czasu wolnego za nadgodziny w dni pracy

Odbiór czasu wolnego w tym samym miesiącu – na wniosek pracownika

Przykład
W sierpniu 2023 r. (wymiar czasu pracy 176h) pracownik zatrudniony na stawkę miesięczną w wys. 6000 zł przepracował dodatkowo 1 godzinę w dzień pracy i odebrał ją w tym samym miesiącu na swój wniosek. Przepracowaną nadgodzinę oznaczamy strefą ‘Czas przerwy’ (niewliczaną do czasu pracy i niepłatną) oraz znacznikiem ‘O.BM’, a wolną godzinę strefą ‘Czas pracy podstawowy’ (wliczaną do czasu pracy i płatną) oraz znacznikiem ‘W.PŁ’. Krok I - Odnotowanie na kalendarzu
DzieńWejścieGodzina przyjściaGodzina wyjściaPrzykładowa strefaZnacznik
07.08 poniedziałekW107:0015:00czas pracy podstawowy-
W215:0016:00czas przerwy
(niewliczana do czasu pracy, niepłatna)
O.BM
08.08 wtorekW107:0014:00czas pracy podstawowy-
W214:0015:00czas pracy podstawowy
(wliczana do czasu pracy, płatna)
W.PŁ
Krok II - Wyliczenie czasu pracy i wynagrodzenia Do czasu pracy wliczamy 175h (‘czas pracy podstawowy’) + 1h (‘czas pracy podstawowy’ ze znacznikiem W.PŁ) = 176h. Nie wliczamy tu 1h (‘czas przerwy’ ze znacznikiem O.BM) - wykorzystaną do wprowadzenia nadgodziny do odbioru w bieżącym miesiącu. Wynagrodzenie zostanie wypłacone za pełen wymiar czasu pracy (176h), za tyle godzin, ile przepracował 176h (176h +1 nadgodzina – 1h wolnego), czyli: Wynagrodzenie zasadnicze /miesiąc (praca.pdst) = 6000,00
Uwaga
Istnieje możliwość tworzenia własnych stref (na wzór standardowych), jednak nie jest to konieczne i dodatkowo wiąże się z rozbiciem kwoty wynagrodzenia zasadniczego na użyte płatne strefy czasu. Przykładowe własne strefy: - nadgodz.odbierane BM – zdefiniowana na wzór standardowej strefy ‘Czas przerwy’ (niewliczana do czasu pracy i niepłatna), - wolne za nadgodz.PŁ– zdefiniowana na wzór standardowej strefy ‘Czas pracy podstawowy’ (wliczana do czasu pracy i płatna) oraz znacznikiem ‘W.PŁ’ – dla tej strefy wyliczy się wynagrodzenie zasadnicze proporcjonalnie do ilości czasu w tej strefie. Przy zastosowaniu własnych stref, a w szczególności własnej strefy płatnej (np. wolne za nadgodz.PŁ) w powyższym przykładzie, gdy parametr „Wynagrodzenie powyżej/poniżej normy liczone jako oddzielny element wypłaty” (w Konfiguracja/ Firma/ Płace/ Parametry - zakładka 3) bedzie: a) zaznaczony – to wyliczy się: -              Wynagr. zasad. /miesiąc (praca.pdst) = 6000,00 -              Wynagr. zasad./miesiąc (wolne za nadgodz.PŁ)= 0 -              Wynagr. zasad. poniżej normy (praca.pdst) = -34,09 -              Wynagr. zasad. powyżej normy (wolne za nadgodz.) = 34,09 b) niezaznaczony – to wyliczy się: -              Wynagr. zasad. /miesiąc (praca.pdst) = 5965,91 -              Wynagr. zasad./miesiąc (wolne za nadgodz.PŁ)=34,09

Odbiór czasu wolnego w tym samym miesiącu – na wniosek pracodawcy

Przykład
W sierpniu 2023 r. (wymiar czasu pracy 176h) pracownik zatrudniony na stawkę miesięczną w wys. 6000 zł przepracował dodatkowo 1 godzinę w dzień pracy i odbiera ją w tym samym miesiącu na wniosek pracodawcy. Przepracowaną nadgodzinę oznaczamy strefą ‘Czas przerwy’ (niewliczaną do czasu pracy i niepłatną) oraz znacznikiem ‘O.BM’, a wolne półtorej godziny strefą ‘Czas pracy podstawowy’ (wliczaną do czasu pracy i płatną) oraz znacznikiem ‘W.PŁ’. Krok I - Odnotowanie na kalendarzu
DzieńWejścieGodzina przyjściaGodzina wyjściaPrzykładowa strefaZnacznik
07.08 poniedziałekW107:0015:00czas pracy podstawowy-
W215:0016:00czas przerwy
(niewliczana do czasu pracy, niepłatna)
O.BM
08.08 wtorekW107:0013:30czas pracy podstawowy-
W213:3015:00czas pracy podstawowy
(wliczana do czasu pracy, płatna)
W.PŁ
Krok II - Wyliczenie czasu pracy i wynagrodzenia Do czasu pracy wliczamy 174,5h (‘czas pracy podstawowy’) + 1,5h (‘czas pracy podstawowy’ ze znacznikiem W.PŁ) = 176h. Nie wliczamy tu 1h (‘czas przerwy’ ze znacznikiem O.BM) - wykorzystaną do wprowadzenia nadgodziny do odbioru w bieżącym miesiącu. Wynagrodzenie zostanie wypłacone za pełen wymiar czasu pracy (176h), choć pracownik przepracował 175,5h (176h +1 nadgodzina – 1,5h wolnego), czyli: Wynagrodzenie zasadnicze /miesiąc (praca.pdst) = 6000,00

Odbiór czasu wolnego w kolejnym miesiącu – na wniosek pracownika

Przykład
W sierpniu 2023 r. (wymiar czasu pracy 176h) pracownik zatrudniony na stawkę miesięczną w wys. 6000zł przepracował dodatkowo 1 godzinę w dzień pracy i odbiera ją w kolejnym miesiącu – wrześniu 2023 r. (wymiar czasu pracy 168h), na swój wniosek. W 8.2023 przepracowaną nadgodzinę oznaczamy strefą ‘Czas pracy podstawowy’ (wliczaną do czasu pracy i płatną) oraz znacznikiem ‘O.NM’, a w 9.2023 wolną godzinę strefą ‘Czas przerwy’ (niewliczaną do czasu pracy i niepłatną) oraz znacznikiem ‘W.NP’. Krok I - Odnotowanie na kalendarzu
DzieńWejścieGodzina przyjściaGodzina wyjściaPrzykładowa strefaZnacznik
07.08 poniedziałekW107:0015:00czas pracy podstawowy-
W215:0016:00czas pracy podstawowy
(wliczana do czasu pracy, płatna)

O.NM
12.09 wtorekW107:0014:00czas pracy podstawowy-
W214:0015:00czas przerwy
(niewliczana do czasu pracy, niepłatna)

W.NP
Krok II - Wyliczenie czasu pracy i wynagrodzenia W 8.2023 do czasu pracy wliczamy 176h (‘czas pracy podstawowy’) + 1h (‘czas pracy podstawowy’ ze znacznikiem O.NM) = 177h.

Wynagrodzenie zostanie wypłacone za wszystkie przepracowane godziny 177h (176h + 1 nadgodzina), czyli:

Wynagrodzenie zasadnicze /miesiąc (praca.pdst) = 6000,00

Wynagr. zasad. powyżej normy (praca.pdst) = 34,09 (6000*1/176)

W 9.2023 do czasu pracy wliczamy 167h (‘czas pracy podstawowy’). Nie wliczamy tu 1h (‘Czas przerwy’ ze znacznikiem W.NP). Wynagrodzenie zostanie wypłacone za przepracowane godziny 167h (168h – 1h wolnego), czyli: Wynagrodzenie zasadnicze /miesiąc (praca.pdst) = 6000,00 Wynagr. zasad. poniżej normy (praca.pdst))= -35,71 (6000*1/168)

Odbiór czasu wolnego w kolejnym miesiącu – na wniosek pracodawcy

Przykład
W sierpniu 2023 r. (wymiar czasu pracy 176h) pracownik zatrudniony na stawkę miesięczną w wys. 6000 zł przepracował dodatkowo 1 godzinę w dzień pracy i odbiera ją w kolejnym miesiącu – wrześniu 2023 r. (wymiar czasu pracy 168h), na wniosek pracodawcy. W 8.2023 przepracowaną nadgodzinę oznaczamy strefą ‘Czas pracy podstawowy’ (wliczaną do czasu pracy i płatną) oraz znacznikiem ‘O.NM’, a w 9.2023 wolne półtorej godziny strefą ‘Czas pracy podstawowy’ (wliczaną do czasu pracy i płatną) oraz znacznikiem ‘W.PŁ’. Krok I - Odnotowanie na kalendarzu
DzieńWejścieGodzina przyjściaGodzina wyjściaPrzykładowa strefaZnacznik
09.08 poniedziałekW107:0015:00czas pracy podstawowy-
W215:0016:00czas pracy podstawowy
(wliczana do czasu pracy, płatna)

O.NM
07.09 wtorekW107:0013:30czas pracy podstawowy-
W213:3015:00czas pracy podstawowy
(wliczana do czasu pracy, płatna)


W.PŁ
Krok II - Wyliczenie czasu pracy i wynagrodzenia W 8.2023 do czasu pracy wliczamy 176h (‘czas pracy podstawowy’) + 1h (‘czas pracy podstawowy’ ze znacznikiem O.NM) = 177h. Wynagrodzenie zostanie wypłacone za wszystkie przepracowane godziny 177h (176h + 1 nadgodzina), czyli:

Wynagrodzenie zasadnicze /miesiąc (praca.pdst) = 6000,00

Wynagr. zasad. powyżej normy (praca.pdst) = 34,09 (6000*1/176)

W 9.2023 do czasu pracy wliczamy 166,5h (‘czas pracy podstawowy’) + 1,5h (‘czas pracy podstawowy’ ze znacznikiem W.PŁ) = 168h. Wynagrodzenie zostanie wypłacone za pełny wymiar czasu pracy (168h), choć pracownik przepracował 166,5 h(168h – 1,5h wolnego), czyli: Wynagrodzenie zasadnicze /miesiąc (praca.pdst) = 6000,00

Przykłady udzielania czasu wolnego za nadgodziny w dni wolne do normy dobowej

Odbiór czasu wolnego w tym samym miesiącu

Przykład
W sierpniu 2023 r. (wymiar czasu pracy 176h) pracownik zatrudniony na stawkę miesięczną w wys. 6000zł przepracował dodatkowo 6 godzin w sobotę i w tym samym miesiącu odbiera za to dzień wolny (8h). Przepracowane nadgodziny oznaczamy strefą ‘czas przerwy’ (niewliczaną do czasu pracy, niepłatną) oraz znacznikiem ‘O.BM’, a wolny dzień strefą ‘czas pracy podstawowy’ (wliczaną do czasu pracy, płatną) oraz znacznikiem ‘W.PŁ’. Krok I - Odnotowanie na kalendarzu
DzieńWejścieGodzina przyjściaGodzina wyjściaPrzykładowa strefaZnacznik
12.08 sobotaW107:0013:00czas przerwy
(niewliczana do czasu pracy, niepłatna)
O.BM
14.08 poniedziałekW107:0015:00czas pracy podstawowy
(wliczana do czasu pracy, płatna)
W.PŁ
Krok II - Wyliczenie czasu pracy i wynagrodzenia Do czasu pracy wliczamy 168h (‘czas pracy podstawowy’) + 8h (‘czas pracy podstawowy’ ze znacznikiem W.PŁ) = 176h. Nie wliczamy tu 6h (‘czas przerwy’ ze znacznikiem O.BM). Wynagrodzenie zostanie wypłacone za pełen wymiar czasu pracy (176h), choć pracownik przepracował tylko 166h (168h +6 nadgodzin – 8h wolnego), czyli: Wynagrodzenie zasadnicze /miesiąc (praca.pdst) = 6000,00

Odbiór czasu wolnego w kolejnym miesiącu

Przykład
W sierpniu 2023 r. (wymiar czasu pracy 176h) pracownik zatrudniony na stawkę miesięczną w wys. 6000zł przepracował dodatkowo 6 godzin w sobotę i w kolejnym miesiącu – wrześniu 2023 r. (wymiar czasu pracy 168h) odbiera za to dzień wolny (8h). W 8.2023 przepracowane nadgodziny oznaczamy strefą ‘Czas pracy podstawowy’ (wliczaną do czasu pracy i płatną) oraz znacznikiem ‘O.NM’, a w 9.2023 wolny dzień strefą ‘Czas przerwy’ (niewliczaną do czasu pracy i niepłatną) oraz znacznikiem ‘W.NP’. Krok I - Odnotowanie na kalendarzu
DzieńWejścieGodzina przyjściaGodzina wyjściaPrzykładowa strefaZnacznik
12.08 sobotaW107:0013:00czas pracy podstawowy
(wliczana do czasu pracy, płatna)

O.NM
04.09 poniedziałekW107:0015:00czas przerwy
(niewliczana do czasu pracy, niepłatna)

W.NP 1)
1) Gdy za nadgodziny w dniu wolnym (niedziele / święto) udzielimy w kolejnym miesiącu dzień wolny (8h) i oznaczymy jako niepłatne (jak mówią przepisy), to pracownik będzie stratny, będzie miał pomniejszenie wynagrodzenia za 8h. Działając na korzyść pracownika można oznaczyć dzień wolny jako płatny (W.PŁ, praca podst.) a nadgodziny jako niepłatne (O.BM, przerwa). Krok II - Wyliczenie czasu pracy i wynagrodzenia W 8.2023 do czasu pracy wliczamy 176h (‘czas pracy podstawowy’) + 6h (‘czas pracy podstawowy’ ze znacznikiem O.NM) = 182h. Wynagrodzenie zostanie wypłacone za wszystkie przepracowane godziny 182h (176h + 6 nadgodzin), czyli:

Wynagrodzenie zasadnicze /miesiąc (praca.pdst) = 6000,00

Wynagr. zasad. powyżej normy (praca.pdst) = 204,55 (6000*6/176)

W 9.2023 do czasu pracy wliczamy 160h (‘czas pracy podstawowy’). Nie wliczamy tu 8h (‘Czas przerwy’ ze znacznikiem W.NP). Wynagrodzenie zostanie wypłacone za przepracowane godziny 160h (168h – 8h wolnego), czyli: Wynagrodzenie zasadnicze /miesiąc (praca.pdst) = 6000,00

Wynagr. zasad. powyżej normy (praca.pdst) = -285,71 (6000*8/168)

Wydruki ewidencji czasu pracy

Wydruk karty pracy dostępny jest z Formularza pracownika/ Wydruki kadrowe/ Karta pracy lub z Listy pracowników/ Wydruki kadrowe/ Karta pracy – wszyscy (wydruk dla zaznaczonych). Oba wydruki mają możliwość drukowania pełnej informacji o czasie pracy w poszczególnych dniach lub może to być wydruk samego podsumowania. Na wydruku ze szczegółami karty pracy, obok dni kalendarzowych wykazany jest typ dnia (Pracy, Wolny, Święto) oraz oznaczenie dla dni wolnych/świątecznych, np. W5 – wolne z tytułu 5 dniowego tygodnia pracy, ND – niedziela, ŚW – święto. Można korzystać z standardowych opisów dni wolnych albo dodać własne z poziomu: Start/Konfiguracja / Firma / Płace / Opisy rodzajów dni wolnych do karty pracy. Kolejne kolumny obrazują ilościowo: godziny z planu pracy, rzeczywiście przepracowane godziny, czas pracy ponad i poniżej planu oraz godziny przepracowane w nocy. Osobna kolumna pokazuje nazwę nieobecności, która wystąpiła w danym dniu. W podsumowaniu wykazywana jest informacja o łącznej ilości czasu nadgodzin 50% i 100% rozliczonych w wypłacie. (Ta informacja pobiera jest z naliczonych standardowych dopłat do nadgodzin).
Uwaga
W przypadku, gdy w programie rozliczenie nadgodzin opiera się na własnych dodatkach (wyłączone jest naliczanie standardowych dopłat do nadgodzin), to Informacja o nadgodzinach nie pojawi się na wydrukach: karty pracy, listach płac, kwiatkach wypłat, czy pomocniczych raportach do GUS.
W module Płace i Kadry Plus dostępny jest wydruk Pracownicy z czasem wolnym za nadgodziny (dostępny z poziomu: Lista pracowników/ Pracownicy) dla zaznaczonych osób, w których wykazywane są informacje o nadgodzinach do odbioru oraz czasie wolnym udzielonym za nadgodziny wpisy na czasie pracy z oznaczeniami:
  • O.BM – nadgodziny do odbioru w bieżącym miesiącu,
  • O.NM – nadgodziny do odbioru w kolejnym miesiącu,
  • W.PŁ – wolne za nadgodziny – płatne,
  • W.NP – wolne za nadgodziny – niepłatne.

Różnicowe wyliczenie wynagrodzenia za nadgodziny i godziny nocne

W przypadku, gdy za nadgodziny oraz pracę w nocy za wskazany miesiąc (np. 6.2023) zostało już wypłacone wynagrodzenie, a następnie zostały naniesione kolejne nadgodziny, czy praca w porze nocnej (za już rozliczony miesiąc 6.2023), to istnieje możliwość naliczenia różnicowo wynagrodzenia za dopisane nadgodziny oraz godziny nocne:

- na liście płac etatowej za kolejny miesiąc (7.2023) z opcją wstecz: 1 miesiąc

- lub ewentualnie na drugiej liście płac etatowej za ten sam miesiąc (6.2023).

W przypadku naliczenia wypłaty na liście płac z opcją ‘Mies. wstecz’ lub na dodatkowej liście nastąpi weryfikacja za ile godzin w danym miesiącu obecnie przysługuje dopłat do nadgodzin, dopłat za pracę w nocy czy wynagrodzenie powyżej/poniżej, a następnie tą ilość pomniejszy o ilość godzin, które już były rozliczone w innych wypłatach za ten miesiąc. Różnicowe wyliczenie wynagrodzenia powyżej/poniżej normy będzie dokonywane tylko w przypadku, gdy w naliczanej wypłacie te elementy mają taki sam okres od-do jak już wypłacone w innych wypłatach za ten sam okres.

Różnicowe rozliczenie wynagrodzenia za nadgodziny / porę nocną dotyczy standardowych elementów:
  • Dopłata do nadgodzin 50%,
  • Dopłata do nadgodzin 100%,
  • Dopłata do nadgodzin dobowych 50%,
  • Dopłata do nadgodzin dobowych 100%,
  • Dopłata do nadgodzin średniotygodniowych 100%,
  • Dopłata za pracę w nocy,
  • zasad. powyżej normy
  • zasad. poniżej normy

Przykład różnicowego rozliczenia wynagrodzenia za nadgodziny i godziny nocne

Przykład
Przykład 19: Pracownik zatrudniony na pełen etat na stawkę 6000 zł/miesiac w podstawowym systemie czasu pracy, czyli o 8h dziennie (1-miesięczny okres rozliczeniowy, pora nocna 22:00-6:00). W definicji kalendarza: Norma dobowa = 8h, norma tygodniowa = 40h z zaznaczonym parametrem z podziałem na nadgodziny dobowe i średniotygodniowe. W lipcu 2023 (wymiar 168h) przepracował dodatkowo w dniach:
  • 07.2023 (piatek, w planie 8h) od 10:00 do 23:00 (13h), czyli 5 nadgodzin dobowych, w tym 1h nocna (22:00-23:00).
  • 07.2023 (sobota, w planie 0h) od 10:00 do 15:00 (5 nadgodzin średniotygodniowych)
Sumarycznie pracownik przepracował 178h, czyli ponad wymiar 10h, w tym:
  • nadgodziny dobowe 50% = 4h
  • nadgodziny dobowe 100% = 1h, ponieważ przypada w porze nocnej
nadgodziny średniotygodniowe = 5h W wypłacie za 7.2023 (wymiar 168h) zostały naliczone elementy:
  • Wynagrodzenie zasadnicze /miesiąc = 6000 (za 168h)
  • Wynagr. zasad. powyżej normy = 357,14 (za 10h wg wyliczenia: 6000/168*10h)
  • Dopłata do nadgodzin dobowych 50% = 71,43 (za 4h wg wyliczenia 6000/168*50%*4h)
  • Dopłata do nadgodzin dobowych 100% = 35,71 (za 1h wg wyliczenia 6000/168*1h)
  • Dopłata do nadgodzin średniotygodn. 100% = 178,57 (za 5h, wg wyliczenia 6000/168*5h)
  • Dopłata za pracę w nocy = 4,29 (za 1h wg wyliczenia 3600/168*20%*1h)
Po naliczeniu wynagrodzenia za 7.2023 zostały dopisane dodatkowe nadgodziny  w dniach:
  • 28.07.2023 (piatek, w planie 8h) od 12:00 do 23:00 (11h), czyli 3 nadgodziny dobowe, w tym 1h nocna (22:00-23:00).
  • 29.07.2023 (sobota, w planie 0h) od 12:00 do 16:00 (4 nadgodziny średniotygodniowe)
Dodatkowo zostały wprowadzone godziny ponad wymiar w ilości 7h (łączy czas pracy 178+7h dodane= 185h), w tym:
  • nadgodziny dobowe 50% = 2h
  • nadgodziny dobowe 100% = 1h, ponieważ przypada w porze nocnej
  • nadgodziny sredniotygodniowe = 4h
W wypłacie za 8.2023 (wymiar 176h) z opcja 1 mc wstecz zostały naliczone elementy:
  • Wynagrodzenie zasadnicze /miesiąc za 7.2023 = 6000 (za 176h)
oraz za 7.2023:
  • Wynagr. zasad. powyżej normy = 250,00 (za 7h wg wyliczenia: 6000/168*7h)
  • Dopłata do nadgodzin dobowych 50% = 35,71 (za 2h wg wyliczenia 6000/168*50%*4h)
  • Dopłata do nadgodzin dobowych 100% = 35,71 (za 1h wg wyliczenia 6000/168*1h)
  • Dopłata do nadgodzin średniotygodn. 100% = 142,86 (za 4h, wg wyliczenia 6000/168*4h)
  • Dopłata za pracę w nocy = 4,29 (za 1h wg wyliczenia 3600/168*20%*1h)

OPT053 - Kontrola wysokości potrąceń

Data aktualizacji: 28-06-2023

Wprowadzenie

Comarch ERP Optima posiada mechanizmy pozwalające na łatwiejsze zarządzanie kontrolą wysokości potrąceń, w tym potrąceń komorniczych i alimentacyjnych. Funkcjonalność automatycznej kontroli potrąceń dostępna jest w Comarch ERP Optima w module Płace i Kadry Plus oraz ERP XL Kadry i Płace.

Wysokość potrąceń a obowiązujące przepisy

  • Dla potrąceń ze świadczeń pieniężnych z ubezpieczenia społecznego w razie choroby i  macierzyństwa obowiązuje art.138-144 Ustawy z dnia 17.12.1998r. o emeryturach i rentach z Funduszu Ubezpieczeń Społecznych (Dz.U. z 2004r. nr 39, poz. 353 ze zm.).
  • Zasady potrąceń z wynagrodzenia za pracę reguluje art. 87 Ustawy z dnia 26 czerwca 1974r. Kodeks pracy (Dz.U. z 1998r. nr 21, poz. 94 ze zm.).
  • W sprawach nie unormowanych w wymienionych aktach prawnych stosuje się przepisy Kodeksu postępowania cywilnego i przepisy o Postępowaniu egzekucyjnym w administracji.

Potrącenia z wynagrodzenia za pracę

Z wynagrodzenia za pracę po odliczeniu składek na ubezpieczenia społeczne oraz zaliczki na podatek dochodowy od osób fizycznych potrąceniu podlegają (wg podanej kolejności) między innymi należności:
  • na zaspokojenie świadczeń alimentacyjnych – do wysokości trzech piątych wynagrodzenia,
  • na zaspokojenie świadczeń innych niż alimentacyjne do wysokości połowy wynagrodzenia.
Od niektórych składników wynagrodzenia można potrącić należności alimentacyjne w wysokości 100%.
Uwaga
Departament Ministerstwa Pracy i Polityki Społecznej w sprawie odliczania składki zdrowotnej wyjaśnił, że obowiązkowe odliczenia, o których mowa w art. 87 K.p., obejmują nie tylko składkę na ubezpieczenie społeczne i zaliczkę na podatek dochodowy, ale także składkę na ubezpieczenie zdrowotne. Dokonując wyliczenia potrąceń niealimentacyjnych z wynagrodzenia pracownika, uwzględniamy to stanowisko.
Ustawodawca przewidział również kwotę wolną od potrąceń, między innymi w wysokości minimalnego wynagrodzenia za pracę (po odliczeniu składek na ubezpieczenia społeczne, zaliczki na podatek dochodowy od osób fizycznych oraz wpłat na PPK), przy potrącaniu sum egzekwowanych na mocy tytułów wykonawczych na pokrycie należności innych niż świadczenia alimentacyjne. Niezależnie od ilości wypłat w danym miesiącu wyliczamy jedną kwotę wolną. Tak wynika ze stanowiska Głównego Inspektoratu Pracy znak: GNP-364/306-072-43-1/12. Zdaniem GIP, jeżeli w danym miesiącu następuje wypłata wynagrodzenia za pracę oraz dodatkowego wynagrodzenia rocznego, to obydwa te świadczenia należy zsumować i od tak ustalonej kwoty dokonać potrącenia stosując (jedną) kwotę wolną. Na takim stanowisku stoi także Ministerstwo Rodziny, Pracy i Polityki Społecznej. Zgodnie z art. 87 § 8 K.p. potrąceń należności z wynagrodzenia pracownika w miesiącu, w którym są wypłacane składniki wynagrodzenia za okresy dłuższe niż 1 miesiąc, dokonuje się od łącznej kwoty wynagrodzenia uwzględniającej te składniki wynagrodzenia. W takim przypadku ograniczenia w dokonywaniu potrąceń pod postacią granic i kwot wolnych od potrąceń mają zastosowanie do kwoty wynagrodzeń przypadających do wypłacenia w danym miesiącu. Na warunkach określonych w tych przepisach następują potrącenia m.in. z dodatkowego wynagrodzenia rocznego (art. 87 § 5 K.p.). (…)". Pogląd ten należy odnieść do ogółu należności ze stosunku pracy.

Na mocy ustawy o zmianie niektórych ustaw w zakresie działań osłonowych w związku z rozprzestrzenianiem się wirusa SARS-CoV-2 określanej jako "tarcza antykryzysowa 3.0" możliwe jest podwyższenie kwoty wolnej od potrąceń w sytuacji, gdy z powodu podjętych na terytorium Rzeczypospolitej Polskiej działań służących zapobieganiu zarażeniem wirusem SARS-CoV-2 pracownikowi zostało obniżone wynagrodzenie lub członek rodziny pracownika utracił źródło dochodu. Kwoty zwolnione z egzekucji określone w art. 871 § 1 Kodeksu pracy ulegają zwiększeniu o 25% na każdego nieosiągającego dochodu członka rodziny, którego pracownik ten ma na utrzymaniu.

Uwaga
W przypadku pracowników zatrudnionych w niepełnym wymiarze czasu pracy kwoty wolne od potrąceń należy zmniejszyć proporcjonalnie do wymiaru czasu pracy.

Potrącenia z zasiłków

Ze świadczeń pieniężnych z ubezpieczenia społecznego w razie choroby i macierzyństwa potrąceniu podlegają między innymi należności:
  • na zaspokojenie świadczeń alimentacyjnych – do wysokości 60% kwoty zasiłku,
  • na zaspokojenie świadczeń innych niż alimentacyjne – do wysokości 25% kwoty zasiłku.
Wolna od potrąceń jest kwota zasiłku w wysokości (od 01.03.2023 r.):
  • 681,97 zł – przy potrącaniu należności alimentacyjnych,
  • 1 125,26 zł – przy potrącaniu innych należności.
Uwaga
Zgodnie ze stanowiskiem Ministerstwa Pracy i Polityki Społecznej z 14 stycznia 2015 r. w sprawie sposobu ustalania kwoty wolnej od potrąceń proporcjonalnie do wypłacanego zasiłku "(…) przy obliczaniu proporcjonalnej kwoty zasiłku wolnej od potrąceń należy, analogicznie jak przy obliczaniu dziennego zasiłku, podzielić ją przez 30 i pomnożyć przez liczbę dni, za które świadczenie chorobowe jest wypłacane.". Za pomocą parametru Proporcjonalnie do liczby dni zasiłku dostępnego w grupie ograniczeń potrąceń można ustawić wyliczenie proporcjonalnej kwoty wolnej dla zasiłków. Proporcjonalne wyliczenie kwoty wolnej jest ustalane przez podzielenie pełnej kwoty wolnej przez 30 i pomnożenie przez liczbę dni, za które wypłacono zasiłek ZUS z ubezpieczenia chorobowego lub wypadkowego. Przy wyliczaniu liczby dni, za które pracownik miał wypłacane świadczenie ZUS uwzględniane są wszystkie zasiłki niezależnie od rodzaju, które zostały naliczone w bieżącej wypłacie (zarówno za bieżący miesiąc, jak i poprzednie rozliczone z opcją ‘mies. wstecz’). Nie są sumowane dni, za które pracownik ma naliczone wyrównania zasiłków, zasiłek wyrównawczy oraz podwyższenie zasiłku macierzyńskiego do kwoty świadczenia rodzicielskiego.

Definiowanie ograniczeń w konfiguracji firmy

W Konfiguracji / Firma / Płace znajduje się gałąź Grupy ograniczeń potrąceń, która wyświetlana jest w postaci listy. Lista ograniczeń pozwala na ustalenie priorytetów poszczególnych typów ograniczeń:
  • I grupa ograniczeń (domyślnie Grupa ograniczeń alimentacyjnych) – oznacza liczenie podpiętych do niej potrąceń w pierwszej kolejności do zadanego w definicji tej grupy pułapu,
  • II grupa ograniczeń (domyślnie Grupa potrąceń z innych tytułów) – powiązane z tą grupą potrącenia liczone będą po wyliczeniu tych przypisanych do I grupy. Nastąpi wyliczenie do pułapu zadeklarowanego w tej grupie, a następnie sprawdzenie, czy suma potrąceń policzonych dla I i II grupy potrąceń łącznie nie przekracza progu zadanego dla I grupy i gdyby takie przekroczenie miało miejsce, to nastąpi ograniczenie.
  • kolejne grupy kolejno według tej samej hierarchii – czyli wyliczenie do zadanego w tej grupie pułapu, ale sumarycznie nie więcej niż wynika z definicji ograniczenia w najwyższej grupie, z jakiej występują potrącenia w wypłacie danego pracownika.
  • Użytkownik ma możliwość sterowania kolejnością pozycji na Liście grupy ograniczeń:
  •  Podnieś – podwyższa priorytet naliczania danej grupy,
  •  Obniż – obniża priorytet naliczania.
Predefiniowane dwie grupy:
  • Grupa potrąceń alimentacyjnych – definicja I grupy odpowiada warunkom ograniczeń dla potrąceń alimentacyjnych. Użytkownik jedynie przypisuje do danej grupy typy potrąceń, które chce ograniczać do danego pułapu i ewentualnie wskazać typy wypłat, z których dopuszcza 100% ściągalności potrąceń oraz takie, które mają być całkowicie wolne od potrąceń.
  • Grupa potrąceń z innych tytułów – II grupa, dla pozostałych tytułów wykonawczych.
W przypadku, gdy te dwie grupy okażą się niewystarczające, Użytkownik może dodać kolejne grupy potrąceń. Służy do tego ikona  lub <INSERT>.

Konfiguracja/Firma/Płace/Grupy ograniczeń potrąceń

Formularz Grupy ograniczeń potrąceń

Składa się z dwóch zakładek:
  • Ogólne – pozwala na określenie do jakiej wysokości kwot zasiłków i jakiej wysokości kwot wypłat nie będących zasiłkami może się liczyć potrącenie, a także deklarację wysokości kwoty wolnej od potrąceń (to co pracownik musi dostać po potrąceniach, niezależnie od wysokości jego wynagrodzenia),
  • Dodatkowe – lista potrąceń (typów wypłat) podlegających ograniczeniu.
Zakładkę [Ogólne] formularza, z uwagi na obowiązujące przepisy, podzielono na dwie sekcje. Sekcja 1 - Ograniczenia dotyczące wynagrodzeń nie będących zasiłkami:
  • Podlegające egzekucji do [ ]% kwoty netto (domyślnie podpowiadane jest 0%).
Składniki – z listy typów wypłat, które nie są zasiłkami ZUS można wybrać te, których ma dotyczyć to ustawienie (lista domyślnie pusta). Przykładowo: jeśli ustawiono 0% – to wskazane na tej liście elementy wypłat będą w całości wolne od potrąceń.
  • Podlegające egzekucji do [ ]% kwoty netto (domyślnie podpowiadane jest 0%).
Składniki – dla drugiej grupy wyjątków, z listy typów wypłat, które nie są zasiłkami ZUS, można wybrać te, które nie wystąpiły powyżej (domyślnie pusta). Przykładowo: jeśli ustawiono 100% – to wskazane na tej liście elementy wypłat (np. premie, nagrody roczne) będą podlegać egzekucji w całości, czyli w pełnej kwocie netto.
  • Pozostałe wynagrodzenia podlegają egzekucji do [ ]% kwoty netto (domyślnie podpowiadane jest 0%).
To trzeci próg procentowy, dotyczący wszystkich typów wypłat nie będących zasiłkami ZUS i nie wskazanych na listach powyżej.
  • Kwota wolna od potrąceń [ ]% minimalnej płacy (domyślnie podpowiadane 0%). ) 
Dodatkowo przy tym parametrze, dostępny jest parametr Proporcjonalnie do wymiaru etatu z opcją TAK/NIE (TAK – domyślnie zaznaczone).
Wartość minimalnej płacy do obliczeń pobierana jest z aktualnej na dany miesiąc wartości wskaźnika „Najniższe wynagrodzenie” (Konfiguracja / Program / Płace / Wynagrodzenia). Wartość ta dodatkowo jest przemnażana przez gwarantowany procent minimalnej płacy zapisany w etacie pracownika (domyślnie 100% lub 80% w przypadku pierwszego roku zatrudnienia), opcjonalnie jest też przemnażana przez wymiar etatu pracownika.
Uwaga
Kwota wolna dotycząca wynagrodzeń nie będących zasiłkami, liczona od minimalnej płacy, wyliczana jest w wysokości odpowiadającej kwocie netto minimalnej płacy, a więc po pomniejszeniu o składki na ubezpieczenia społeczne i zdrowotne oraz o zaliczkę na podatek dochodowy (przy liczeniu kwoty należnego podatku, wysokość kosztów uzyskania i ulgi podatkowej jest zgodna z ustawieniami stałych podatkowych danego pracownika).
Sekcja 2 - Ograniczenia dotyczące zasiłków ZUS:
  • Podlegają egzekucji do [ ]% kwoty (domyślnie 0%).
Próg procentowy dotyczący wszystkich elementów wypłat będących zasiłkami ZUS (procent z wartości brutto zasiłku).
  • Kwota wolna od potrąceń
    • [ ]% najniższej emerytury (domyślnie podpowiadane jest 0%)
    • kwota (domyślnie podpowiadane jest 0 zł) – Użytkownik może podać wysokość kwoty wolnej lub pobrać ją jako wskaźnik z konfiguracji. Po zaznaczeniu parametru Pobrana z konfiguracji są do wyboru dwie opcje dla kwoty wolnej: dla potrącenia alimentacyjnego oraz dla potrącenia z innych tytułów.
Dodatkowo dostępne są dwa parametry Proporcjonalnie do wymiaru etatu z opcją TAK/NIE (TAK - domyślnie zaznaczone) oraz Proporcjonalnie do liczby dni zasiłku z opcją TAK/NIE (NIE – domyślnie zaznaczone). Wartość najniższej emerytury do obliczeń pobierana jest z aktualnej na dany miesiąc wartości wskaźnika „Najniższa emerytura” (Konfiguracja / Program / Płace / Wynagrodzenia). Opcjonalnie jest ona przemnażana przez wymiar etatu pracownika.
Uwaga
Kwota wolna dotycząca zasiłków ZUS, liczona od najniższej emerytury, wyliczana jest w pełnej wysokości odpowiadającej kwocie najniższej emerytury, bez pomniejszenia o równowartość składek na ubezpieczenia ZUS i zaliczki na podatek dochodowy.

Formularz grupy ograniczeń - zakładka Ogólne

Zakładka [Dodatkowe] formularza, gdzie Użytkownik może wybrać pod przyciskiem , które potrącenia podlegają ograniczeniu. Lista domyślnie zostanie zawężona do typów wypłat, które mają zaznaczoną flagę Potrącenie [v], są nieopodatkowane i wpływają na kwotę do wypłaty [v]. Dane potrącenie może być przypisane tylko do jednej grupy potrąceń, aby możliwa była jednoznaczna interpretacja ograniczeń przy liczeniu wypłaty.
Uwaga
Przesunięcie potrącenia (typu wypłaty) z jednej do drugiej grupy dopuszczalne jest tylko na zasadzie usunięcia danego typu wypłaty z listy potrąceń powiązanych z jedną grupą, a następnie umieszczenie go na liście potrąceń powiązanych z drugą grupą.
Kolejność typów wypłat na liście ‘Potrąceń podlegających ograniczeniu’ określa priorytet ich naliczania. Pierwsze na liście ściągane są w pierwszej kolejności z wypłaty pracownika, później następne. Stąd na liście dostępne są:
  • Podnieś  – podwyższa priorytet naliczania,
  •  Obniż  – obniża priorytet naliczania.
Formularz grupy ograniczeń - zakładka Dodatkowe

Predefiniowane grupy ograniczeń potrąceń

Grupa potrąceń alimentacyjnych

Grupa domyślnie ustawiana jest jako pierwsza w kolejności. Ustawienia dla niej są następujące: Sekcja 1 - Ograniczenia dotyczące wynagrodzeń nie będących zasiłkami:
  • Podlegające egzekucji do [0.00]% kwoty netto. Składniki – lista typów wypłat, których ma dotyczyć (do uzupełnienia przez Użytkownika).
  • Podlegające egzekucji do [100.00]% kwoty netto. Składniki – lista typów wypłat, których ma dotyczyć (do uzupełnienia przez Użytkownika).
  • Pozostałe wynagrodzenia podlegają egzekucji do [60.00]% kwoty netto.
  • Kwota wolna od potrąceń [0.00]% minimalnej płacy (nie ma kwoty wolnej od potrąceń dla tej grupy).
Sekcja 2 – Ograniczenia dotyczące zasiłków ZUS:
  • Podlegają egzekucji do [60.00]% kwoty
  • Kwota wolna od potrąceń: kwota pobrana z konfiguracji dla potrącenia alimentacyjnego – proporcjonalnie do wymiaru etatu „Tak”, proporcjonalnie do liczby dni zasiłku ”Nie”.
Zakładka [Dodatkowe], tj. lista typów wypłat będących potrąceniami podlegającymi ograniczaniu, wymaga wskazania składników przez Użytkownika.

Grupa potrąceń z innych tytułów

Grupa domyślnie ustawiana jako druga w kolejności. Ustawienia dla niej są następujące: Sekcja 1 - Ograniczenia dotyczące wynagrodzeń nie będących zasiłkami:
  • Podlegające egzekucji do [0.00]% kwoty netto. Składniki – lista typów wypłat, których ma dotyczyć (do uzupełnienia przez Użytkownika).
  • Podlegające egzekucji do [100.00]% kwoty netto. Składniki – lista typów wypłat, których ma dotyczyć (do uzupełnienia przez Użytkownika).
  • Pozostałe wynagrodzenia podlegają egzekucji do [50.00]% kwoty netto.
  • Kwota wolna od potrąceń [100.00]% minimalnej płacy, proporcjonalnie do wymiaru etatu „Tak”.
Sekcja 2 – Ograniczenia dotyczące zasiłków ZUS:
  • Podlegają egzekucji do [25.00]% kwoty.
  • Kwota wolna od potrąceń: kwota pobrana z konfiguracji dla potrącenia z innych tytułów,  proporcjonalnie do wymiaru etatu „Tak”, proporcjonalnie do liczby dni zasiłku ”Nie”.
Zakładka Dodatkowe formularza, tj. Lista potrąceń – lista typów wypłat (potrąceń) podlegających ograniczeniu (do uzupełnienia przez Użytkownika).

Wskaźniki obliczeniowe

Potrącenia alimentacyjnePotrącenia komornicze

Od wynagrodzeń

Maksymalna kwota potrącenia – 60% kwoty nettoMaksymalna kwota potrącenia – 50% kwoty netto
Gwarantowana kwota wolna – 0% minimalnej płacy nettoGwarantowana kwota wolna – 100% minimalnej płacy netto

Od zasiłków

Maksymalna kwota potrącenia – 60% kwoty zasiłku bruttoMaksymalna kwota potrącenia – 25% kwoty zasiłku brutto
Gwarantowana kwota wolna – 681,97 złGwarantowana kwota wolna – 1 125,26 zł zł
W przypadku pracowników zatrudnionych w niepełnym wymiarze czasu pracy kwoty wolne od potrąceń ulegają zmniejszeniu proporcjonalnie do wymiaru czasu pracy. W 2023 roku dla kwoty minimalnej płacy 3600,00 zł brutto kwoty wolne wynoszą:

Minimalna płaca netto dla:

1/1 etat½ etatu¾ etatu¼ etatu
10.50.750.25
Koszty uzyskania przychodu podstawowe (250,00)Ulga podatkowa (miesięczna – 300)Podstawowe wpłaty na PPK2 705,861 377,432 066,15712,78
Koszty uzyskania przychodu podstawowe (250,00)Ulga podatkowa (miesięczna – 300)Brak2 783,861 413,432 120,15730,78
Koszty uzyskania przychodu podwyższone (300,00)Ulga podatkowa (miesięczna – 300)Podstawowe wpłaty na PPK2 711,861 377,432 066,15721,28
Koszty uzyskania przychodu podwyższone (300,00)Ulga podatkowa (miesięczna – 300)Brak2 789,861 413,432 120,15739,28
Koszty uzyskania przychodu podstawowe (250,00)BrakBrak2 483,861 257,431 870,15643,72
Koszty uzyskania przychodu podwyższone (300,00)BrakBrak2 489,861 263,431 876,15649,72
BrakUlga podatkowa (miesięczna – 300)Brak2 753,861 413,432 120,15706,72
BrakBrakBrak2 453,861 227,431 840,15613,72
Kwota wolna od zasiłków1/1 etatu½ etatu¾ etatu¼ etatu
10.50.750.25
Alimenty681,97340,99511,48170,49
Komornik1 125,26562,63843,95281,32

Mechanizm ustalania kwoty ograniczeń potrąceń

Zakładając, że w wypłacie pracownika są tylko trzy elementy: wynagrodzenie zasadnicze, zasiłek opiekuńczy i potrącenie komornicze; jednocześnie wykorzystano domyślne ustawienia z II standardowej grupy ograniczeń, to wyliczenie kwoty potrącenia wykonywane jest następująco (kwoty dotyczą roku 2023).
  • Wyliczenie kwoty potrącenia zgodnie z definicją typu wypłaty (bez ograniczeń) – wynik to Kwota_P1,
  • Ustalenie 50 % wartości netto wynagrodzenia zasadniczego – wynik to Kwota_W1. Kwotę netto wynagrodzenia zasadniczego, czyli pomniejszonego o składki ZUS, wpłaty na PPK (jeśli pracownik przystąpił do PPK) i podatek, można sprawdzić na wydruku płacowym ‘Lista wypłaconych dodatków’ – kwota w kolumnie „Do wypłaty”.
  • Wyliczenie kwoty wolnej od potrąceń z wynagrodzenia – wynik to Kwota Wolna_W. Kwota wolna to 100% minimalnej płacy z uwzględnieniem wymiaru etatu, tj. 3600,00 zł pomnożone przez wymiar etatu i gwarantowany procent minimalnej płacy, a następnie od tej kwoty odliczane są składki ZUS i podatek. Jeśli pracownik jest uczestnikiem PPK odlicza się także wpłaty na PPK finansowane przez niego.
Dla osoby zatrudnionej na pełny etat, z gwarantowaną minimalną płacą ustawioną w etacie jako 100%, z podstawowymi kosztami uzyskania (250,00 zł) oraz ulgą (300,00 zł), płacącej podatek w wysokości 12% i wszystkie składki na ubezpieczenia społeczne i zdrowotne – kwota wolna wyniesie 2 783,86 zł. Jeśli pracownik jest uczestnikiem PPK i opłaca tylko wpłatę podstawową kwota wolna wyniesie 2 705,86 zł.
  • Wyliczenie różnicy pomiędzy kwotą netto od wynagrodzenia uwzględnionego przy liczeniu potrącenia (pomniejszoną o wyliczone już potrącenia z grup o wyższym priorytecie), a kwotą wolną, czyli:
    • Kwota_W1 pomniejszona o KwotaWolna_W – wynik to Kwota_W2 (z ograniczeniem do 0.00zł, jeśli Kwota_W1 jest mniejsza od KwotaWolna_W)
  • Porównanie wartości Kwota_W1 i Kwota_W2. Mniejsza z nich przechodzi do dalszych obliczeń – wynik to Kwota_W3,
  • Sprawdzenie wartości brutto zasiłku i przemnożenie jej przez 25% – wynik to Kwota_Z1,
  • Wyliczenie kwoty wolnej od potrąceń z zasiłków – jako kwota, z uwzględnieniem wymiaru etatu – wynik to KwotaWolna_Z,
Dla osoby zatrudnionej na pełny etat kwota wolna  wynosi 1 125,26 zł.
  • Wyliczenie kwoty netto zasiłku (tj. po odjęciu zaliczki podatku) – wynik to KwotaNetto_Z,
  • Porównanie kwoty netto zasiłku (KwotaNetto_Z) z kwotą wolną od potrąceń (KwotaWolna_Z), czyli wyliczenie różnicy pomiędzy kwotą netto zasiłku (można ją sprawdzić na wydruku płacowym ‘Zestawienie wynagrodzeń wg typów wypłat ), a kwotą wolną dla zasiłków, czyli:
    • KwotaNetto_Z pomniejszona o KwotaWolna_Z – wynik to Kwota_Z2 (z ograniczeniem do 0.00zł, jeśli KwotaNetto_Z < od KwotaWolna_Z),
  • Porównanie wartości Kwota_Z1 i Kwota_Z2, mniejsza z nich przechodzi do dalszych obliczeń – wynik to Kwota_Z3,
  • Sumowanie wyliczonych maksymalnych kwot potrąceń dla wynagrodzeń i zasiłków, czyli Kwota_W3 i Kwota_Z3 – wynik to Kwota_P2,
  • Porównanie kwot Kwota_P1 (pierwotnie policzona wartość potrącenia) i Kwota_P2 (maksymalna możliwa kwota potrącenia) – wynik to Kwota_P3, wartość potrącenia z uwzględnieniem ograniczeń.
Uwaga
Przy wyliczaniu ograniczeń potrąceń uwzględniane są wartości tylko tych elementów wypłaty, które generowane są automatycznie podczas jej naliczania. Po wprowadzeniu zmian w elementach wypłaty należy przeliczyć wyliczoną kwotę zajęcia wynagrodzenia. Przeliczenie jest wykonywane za pomocą przycisku  dostępnego na zakładce [Elementy wypłaty] w wypłatach etatowych, dla potrąceń przypiętych na liście zajęć wynagrodzenia pracownika. W przypadku, gdy w jednej wypłacie jest naliczone potrącenie komornicze oraz spłata pożyczki, wywołanie przeliczenia kwoty potrącenia po ręcznej modyfikacji elementów wypłaty spowoduje przeliczenie jedynie zajęcia wynagrodzenia. Kwota spłaty pożyczki nie ulegnie zmianie automatycznie, w razie potrzeby można ją skorygować ręcznie.
Wszystkie dodatkowe elementy wypłaty, naliczane w wypłacie automatycznie (a więc np. dodatki przypisane pracownikowi w kadrach) mogą mieć wpływ na wyliczenie kwot potrąceń. Przykładowo: potrącenie ‘Składka’ dodana pracownikowi w kadrach może zadziałać następująco:
  • ‘Składka’ przypisana na zakładce 2 w tej samej grupie potrąceń, dodana poniżej ‘Potrącenia komorniczego’ -> jej kwota nie wpłynie na wartość pierwszego potrącenia komorniczego, ale składka wpisana jako druga, policzy się wg tych samych zasad ograniczeń, o ile po potrąceniu komornika, pozostanie jeszcze jakaś kwota do wykorzystania. Wg podanego wyżej schematu, suma obu tych potrąceń nie może przekroczyć wartości Kwota_P3; jeśli potrącenie komornicze „wykorzysta” tę kwotę w całości to składka policzy się zerowa, jeśli potrącenie komornicze byłoby niższe, to składka policzy się, ale z ograniczeniem do kwoty będącej różnicą wartości Kwota_P3 i wartości potrącenia komorniczego,
  • ‘Składka’ przypisana na zakładce 2 w tej samej grupie potrąceń, dodana na liście powyżej ‘Potrącenia komorniczego’ -> składka policzy się w pierwszej kolejności w ramach tej grupy, oczywiście z ograniczeniem do wartości Kwota_P3, a potrącenie komornicze w drugiej kolejności, jeśli składka nie wykorzysta całej maksymalnej wartości Kwota_P3,
  • ‘Składka’ przypisana na zakładce 2 w I grupie ograniczeń (wyższej niż ‘Potrącenie komornicze’) -> w pierwszej kolejności policzy się składka z uwzględnieniem warunków ograniczających ustawionych dla grupy I, w następnej kolejności wg warunków z grupy II, policzy się potrącenie komornicze. Przy czym tu nastąpi dodatkowe sprawdzenie, czy suma obu potrąceń nie przekroczyła kwoty będącej sumą dopuszczalnej wartości procentowej z najwyższej grupy (60% wynagrodzenia i zasiłku). Wg podanego wyżej schematu będzie to suma wartości Kwota_W1 i Kwota_Z1. Potrącenie z grupy drugiej, oprócz ograniczeń wynikających z definicji tej grupy, dodatkowo jest ograniczone „resztą” z maksymalnej kwoty w wyższej grupie,
  • ‘Składka’ przypisana na zakładce 1 w tej samej grupie co ‘Potrącenie komornicze’, na liście wyjątków podlegających egzekucji do wysokości 0% -> kwota składki nie podlega ograniczeniu, jej wartość nie ma wpływu na wyliczanie wartości Kwota_W1 wg procentowego pułapu, ale zostanie uwzględniona przy porównaniu kwoty netto z wynagrodzenia z kwotą wolną (porównanie z KwotaWolna_W),
  • ‘Składka’ nie przypisana ani na zakładce 1, ani na zakładce 2 w grupie potrąceń -> kwota składki nie podlega ograniczeniu, jej wartość zostanie uwzględniona zarówno przy wyliczeniu wartości Kwota_W1 wg procentowego pułapu, jak i przy porównaniu kwoty netto z wynagrodzenia z kwotą wolną (porównanie z KwotaWolna_W).
  • ‘Składka’ nie przypisana ani na zakładce 1, ani na zakładce 2 w grupie potrąceń, ale ma zaznaczony parametr „Doliczany po ograniczeniu potrąceń” (Konfiguracja firmy/ Płace/ Typy wypłat > zakładka Szczegółowe) -> kwota składki nie zostanie uwzględniona przy wyliczaniu wartości Kwota_W1, jak i przy porównaniu kwoty netto z  wynagrodzenia z  kwotą wolną (porównanie z KwotaWolna_W). Kwota składki zostanie odjęta na końcu po wyliczeniu kwoty potrącenia

Przykłady

Przykład
Pracownik jest zatrudniony w pełnym wymiarze czasu pracy i otrzymuje stałe miesięczne wynagrodzenie w kwocie 4000,00 zł oraz ma przypisane w kadrach, na liście dodatków ‘Potrącenie komornicze’ w wysokości 1000,00zł. Pracownikowi przysługują podwyższone koszty uzyskania przychodu 300,00 zł i ulga podatkowa w kwocie 300,00 zł. Pracownik nie jest uczestnikiem PPK. Wykorzystujemy standardową Grupę ograniczeń potrąceń z innych tytułów. Na drugiej zakładce wybieramy zdefiniowane wcześniej ‘Potrącenie komornicze’. Naliczamy wypłatę.
  • Ustalenie dopuszczalnej wysokości potrącenia komorniczego :

4000,00 zł – 548,40 zł (składki ZUS pracownika) = 3 451,60 zł (podstawa składki zdrowotnej)

3 451,60 zł * 9% = 310,64 zł (składka zdrowotna pobrana)

4000,00 zł – 548,40 zł – 300,00zł (K.U.P. podwyższone) = 3 151,60 zł => po zaokrągleniu 3152,00 zł (podstawa opodatkowania) * 12% – 300,00 zł (ulga) = 78,24 zł -> po zaokrągleniu 78,00 zł (zaliczka podatku)

4000,00 – 548,40 – 310,64 – 78 = 3062,96 (kwota netto) Obliczamy kwotę maksymalnego potrącenia (komorniczego), tj. ½ wynagrodzenia netto: 3062,96 * ½ = 1531,48 zł. Dopuszczalna wielkość potrącenia komorniczego wynosi 1531,48  zł (Kwota_W1)
Uwaga
Przy wyliczaniu maksymalnych kwot dla potrąceń uwzględniane są kwoty netto poszczególnych elementów wynagrodzenia, czyli ich wartość pomniejszona o składki społeczne finansowane przez pracownika, składkę zdrowotną, wpłaty na PPK i zaliczkę podatku
  • Ustalenie kwoty wynagrodzenia wolnej od potrącenia komorniczego:
Ustalamy kwotę netto minimalnego wynagrodzenia dla pełnego etatu i podwyższonych kosztów uzyskania przychodu:

3600,00 zł – 493,56 zł (składki ZUS pracownika) – 279,58 zł (składka zdrowotna) – 37,00 zł (zaliczka podatku) = 2 789,86 zł

Kwota netto wolna od potrącenia komorniczego (dla pełnego etatu) wynosi 2 789,86 zł (KwotaWolna_W)
Uwaga
W przypadku potrąceń z wynagrodzenia innych niż potrącenia alimentacyjne, gwarantowane wynagrodzenie wynosi 100% minimalnej płacy netto.
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
3062,96 zł – kwota netto wypłaty, przed pomniejszeniem o potrącenie komornicze 1531,48 zł – maksymalna kwota potrącenia komorniczego, bez uwzględniania kwoty wolnej, tj. 50% wynagrodzenia netto (Kwota_W1) 2 789,86 zł – kwota wynagrodzenia wolna od potrącenia komorniczego (gwarantowane minimalne wynagrodzenie netto) 3062,96 - 2 789,86  = 273,10 zł (Kwota_W2) – maksymalna kwota potrącenia komorniczego, z uwzględnieniem kwoty wolnej (kwota możliwego potrącenia komorniczego, które zagwarantuje, że pracownik otrzyma płacę minimalną) Porównanie wartości Kwota_W1 i Kwota_W2 > mniejsza z nich czyli 273,10  to dopuszczalna wysokość potrącenia (Kwota_W3) Pracownik otrzyma wynagrodzenie w kwocie: 3062,96 zł – 273,10 zł (potrącenie komornicze) = 2 789,86  zł zachowując minimalną płacę netto.
Przykład
Założenia, jak we wcześniejszym przykładzie. Dodatkowo pracownik otrzymuje premię procentową w wysokości 650 zł. Premia przypisana jest w Grupie potrąceń z innych tytułów w sekcji podlegającej egzekucji do 100% (Konfiguracja / Firma / Płace / Grupy ograniczeń potrąceń).
Uwaga
W sytuacji, gdy w wypłacie pojawia się kilka elementów, dla których chcemy ustalić kwotę netto pomocny będzie wydruk Zestawienie wynagrodzeń wg typów wypłat. Naliczamy wypłatę danego pracownika. Z poziomu Listy wszystkich wypłat zaznaczamy tą wypłatę i wybieramy Zestawienie. Z menu  wybieramy wydruk Zestawienie wynagrodzeń wg typów wypłat. Kwota ‘Do wypłaty’ (rysunek poniżej) brana jest pod uwagę do wyliczenia dopuszczalnej kwoty potrącenia z wynagrodzenia pracownika.
  • Ustalenie dopuszczalnej wysokości potrącenia komorniczego:
Ze składnika Wynagrodzenie zasadnicze możemy potrącić 50% kwoty netto, natomiast ze składnika Premia procentowa możemy pobrać 100% kwoty netto. Ustalamy więc kwoty netto odrębnie dla obydwu składników: 4000,00 – 548,40  – 310,64 – 78 = 3062,96 (kwota netto) – Wynagrodzenie zasadnicze 50%* 3062,96 zł = 1531,48 zł – maksymalne potrącenie z wynagrodzenia zasadniczego 650,00 – 89,12 – 50,48 – 67 = 443,40 zł (kwota netto) – Premia procentowa Obliczamy maksymalną kwotę potrącenia komorniczego: 1531,48 zł + 443,40 zł = 1974,88 zł – dopuszczalna wysokość potrącenia komorniczego wynosi 1974,88 zł.
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
3506,36 zł – kwota netto wypłaty, przed pomniejszeniem o potrącenie komornicze 1974,88 zł – maksymalna kwota potrącenia komorniczego (dla dwóch składników wynagrodzenia) 2 789,86 zł – kwota wynagrodzenia wolna od potrącenia komorniczego (gwarantowane minimalne wynagrodzenie, które pracownik musi otrzymać) 3506,36 - 2 789,86  = 716,50 zł – maksymalna kwota potrącenia komorniczego, z uwzględnieniem kwoty wolnej Porównujemy obie ‘maksymalne’ kwoty: 1974,88 zł i 716,50 zł – mniejsza z nich, czyli 716,50 zł to dopuszczalna kwota potrącenia. Pracownik otrzyma wynagrodzenie w kwocie: 3506,36 – 716,50 (potrącenie komornicze) = 2 789,86  zł zachowując minimalną kwotę netto.
Przykład
Pracownik jest zatrudniony w pełnym wymiarze czasu pracy i otrzymuje stałe miesięczne wynagrodzenie w kwocie 4.000,00zł. W kadrach, na liście dodatków ma dodane ‘Potrącenie komornicze’ w wysokości 1.500,00zł. Pracownikowi przysługują podstawowe koszty uzyskania przychodu 250,00 zł i ulga podatkowa w kwocie 300,00 zł. Pracownik nie jest uczestnikiem PPK.
  • Ustalenie dopuszczalnej wysokości potrącenia:
4000,00 – 548,40 – 310,64 – 84,00 = 3056,96 (kwota netto) Dopuszczalna wysokość potrącenia komorniczego, tj. 50% wynagrodzenia netto: 1528,48zł. 
  • Ustalenie kwoty wynagrodzenia wolnej od potrącenia komorniczego:
Kwota netto minimalnego wynagrodzenia dla pełnego etatu i podstawowych kosztów uzyskania przychodu, wolna od potrącenia komorniczego wynosi 2 783,86 zł
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
3056,96  zł – kwota netto wypłaty, przed pomniejszeniem o potrącenie komornicze 1528,48 zł – maksymalna kwota potrącenia komorniczego, bez uwzględniania kwoty wolnej, tj. 50% wynagrodzenia netto 2 783,86  zł – kwota wynagrodzenia wolna od potrącenia komorniczego (minimalne wynagrodzenie netto) 3056,96 zł – 2 783,86 zł = 273,10 zł – maksymalna kwota potrącenia komorniczego, z uwzględnieniem kwoty wolnej Porównujemy obie wyliczone ‘maksymalne’ kwoty: 1528,48  zł i 273,10 zł – mniejsza z nich, czyli 273,10 to dopuszczalna kwota potrącenia. Pracownik otrzyma wynagrodzenie w kwocie: 3056,96 –273,10 zł (potrącenie komornicze) = 2783,86 zł zachowując minimalną kwotę netto. W następnym miesiącu pracownik był nieobecny – Urlop bezpłatny (np. 4– 8 marca tj. 40 godz – 5 dni).
  • Ustalenie dopuszczalnej wysokości potrącenia:
4000,00 – 909,09 (pomn.prop.) = 3090,91 zł  wynagrodzenie zasadnicze pomniejszone o urlop bezpłatny. 3090,91zł – 423,76zł – 240,04zł – 0,00 zł = 2427,11 zł (kwota netto) Dopuszczalna wysokość potrącenia komorniczego, tj. 50% wynagrodzenia netto: 1213,56zł.
  • Ustalenie kwoty wynagrodzenia wolnej od potrącenia komorniczego:
Kwota netto minimalnego wynagrodzenia dla pełnego etatu i podstawowych kosztów uzyskania przychodu, wolna od potrącenia komorniczego wynosi 2 783,86   
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
2427,11 zł – kwota netto wypłaty, przed pomniejszeniem o potrącenie komornicze 2 783,86 zł – kwota wynagrodzenia wolna od potrącenia komorniczego (minimalne wynagrodzenie netto) 2427,11zł < 2 783,86 – w tym miesiącu nie będzie możliwe dokonanie potrącenia komorniczego z wynagrodzenia W kolejnym miesiącu pracownik był nieobecny – Urlop opiekuńczy na dziecko (np. od 1 do 30 września).
  • Ustalenie dopuszczalnej wysokości potrącenia komorniczego:
0,00 zł – Wynagrodzenie zasadnicze pomniejszone o nieobecność 2761,20 zł – Zasiłek opiekuńczy brutto Dopuszczalna kwota potrącenia komorniczego z zasiłku: 2761,20zł * 25% = 690,30
  • Kwota zasiłku wolna od potrącenia komorniczego (dla pełnego etatu): 878,81 zł
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
2761,20 – 31,00 zaliczka podatku = 2730,20 zł – kwota netto zasiłku 2730,20  zł (kwota netto zasiłku) > 1 125,26  zł (kwota wolna zasiłku) 2730,20 zł –1125,26 zł = 1604,94 zł  taka byłaby maksymalna kwota potrącenia komorniczego Porównujemy obie wyliczone ‘maksymalne’ kwoty: 1604,94 zł i 690,30 zł – mniejsza z nich, czyli 690,30 to dopuszczalna kwota potrącenia. Pracownik otrzyma wynagrodzenie w kwocie: 2730,20  zł  – 690,30 zł = 2039,90 zł
Przykład
Założenia jak w przykładzie 3. Dodatkowo pracownik w dniach 1-2 października był nieobecny – Urlop opiekuńczy (zasiłek). W sytuacji, gdy w wypłacie pojawia się zarówno wynagrodzenie jak i zasiłek zastosowane muszą być dwie metody ustalenia maksymalnej kwoty potrącenia: osobno dla wynagrodzeń, osobno dla zasiłków. Pomocny będzie wydruk Zestawienie wynagrodzeń wg typów wypłat. Kwota ‘Do wypłaty’ (rysunek poniżej) brana jest pod uwagę do wyliczenia dopuszczalnej kwoty potrącenia z wynagrodzenia pracownika. W tym przypadku występują dwa sposoby ustalania kwoty wolnej: od wynagrodzenia i od zasiłku.

4000,00 – 266,67 (pomn. 1/30) = 3733,33 zł - wynagrodzenie zasadnicze pomniejszone o nieobecność

184,08 zł - zasiłek opiekuńczy brutto

  • Ustalenie dopuszczalnej wysokości potrącenia od wynagrodzenia zasadniczego:
3733,33 – 511,84 – 289,93 – 57,00 = 2874,56 zł. Obliczamy maksymalną kwotę potrącenia komorniczego z wynagrodzenia: 50%* 2874,56 = 1437,28 zł.
  • Kwota wynagrodzenia wolna od potrącenia komorniczego:
Kwota netto minimalnego wynagrodzenia dla pełnego etatu i podstawowych kosztów uzyskania przychodu, wolna od potrącenia komorniczego wynosi  2 783,86
  • Kwota zasiłku wolna od potrącenia komorniczego (dla pełnego etatu): 1 125,26
Kwota wypłaconego zasiłku opiekuńczego jest w całości wolna od potrącenia, co wynika z porównania kwot: 184,08 zł < 1125,26 zł. W tym przypadku nie będzie więc możliwe dokonanie potrącenia komorniczego z zasiłku opiekuńczego
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
2874,56 zł – kwota netto wypłaty, bez zasiłku, bo kwota zasiłku jest wolna od potrącenia 1437,28 zł – maksymalna kwota potrącenia komorniczego, tj. 50% wynagrodzenia netto 2874,56 zł –2783,86 zł = 90,70 zł – kwota potrącenia możliwa do pobrania Po uwzględnieniu zasiłku opiekuńczego pracownik ostatecznie otrzyma 2874,56 + 162,08 – 90,70 =  2945,94 zł Zmiana ustawień w grupie ograniczeń potrąceń dotyczących wyliczania kwoty wolnej od zasiłków (Konfiguracja / Firma / Płace / Grupy ograniczeń potrąceń). W „Grupie potrąceń z innych tytułów” – na zakładce [Dodatkowe] zmieniono ustawienie parametru Proporcjonalnie do liczby dni zasiłku z „Nie” na „Tak”. Zmiana ustawień wpływa jedynie na wyliczenie kwoty wolnej oraz wysokości potrącenia z zasiłków. Kwota potrącenia komorniczego od wynagrodzenia nie ulega zmianie. Z wynagrodzenia nadal można potrącić 70,53 zł.
  • Ustalenie dopuszczalnej wysokości potrącenia komorniczego z zasiłku:
184,08 zł – Zasiłek opiekuńczy brutto Dopuszczalna kwota potrącenia komorniczego z zasiłku: 184,08 * 25% = 46,02
  • Ustalenie kwoty wolnej od potrąceń dla zasiłku proporcjonalnie do liczby dni zasiłku
1125,26 zł / 30 * 2 = 75,02 (kwota wolna)
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego z zasiłku:
184,08 zł – 22,00 zł (zaliczka podatku) = 162,08 zł – kwota netto zasiłku 162,08 zł (kwota netto zasiłku) >75,02 zł (kwota wolna zasiłku) 162,08 zł –75,02 zł = 87,06 zł taka byłaby maksymalna kwota potrącenia komorniczego Porównujemy obie wyliczone ‘maksymalne’ kwoty: 87,06 zł i 46,02 zł – mniejsza z nich, czyli 46,02 zł to dopuszczalna kwota potrącenia. Po uwzględnieniu potrącenia z wynagrodzenia i zasiłku pracownik ostatecznie otrzyma 2874,56 + 162,08 –90,70 – 46,02 = 2899,92 zł.
Przykład
Pracownik jest zatrudniony na ¾ etatu na stawce 3960,00  zł, przysługują mu podwyższone koszty uzyskania przychodu 300,00zł. Podatek nie jest pomniejszany o ulgę. Pracownikowi udzielono pożyczki z PKZP, która spłacana jest w ratach 250,00zł + odsetki od pożyczki 2,50zł. Ponadto, pracownik ma przypisane potrącenie alimentacyjne w wysokości 300,00zł. W Konfiguracji -> Firma -> Płace-> Grupy ograniczeń potrąceń wykorzystano I grupę „Grupa potrąceń alimentacyjnych” i na zakładce 2 podpięto potrącenie alimentacyjne. Pracownik nie jest uczestnikiem PPK.
  • Ustalenie dopuszczalnej wysokości potrącenia alimentacyjnego z wynagrodzenia:
3960,00 zł – 542,92 zł – 307,54 zł – 374,00 zł = 2735,54 zł (kwota netto) Dopuszczalna kwota potrącenia alimentacyjnego, tj. 60% wynagrodzenia netto: 1641,32 zł. Potrącenie alimentacyjne w kwocie 300,00 zł może więc być zrealizowane w całości.
  • Kwota wynagrodzenia wolna od potrącenia alimentacyjnego:
Obowiązujące przepisy nie gwarantują w przypadku potrąceń alimentacyjnych minimalnego wynagrodzenia
  • Ustalenie możliwej do zrealizowania kwoty potrącenia alimentacyjnego oraz pożyczki:

Wynagrodzenie pracownika po uwzględnieniu potrącenia alimentacyjnego: 2 735,54 – 300,00 = 2435,54 zł

Spłata pożyczki i odsetki nie są przypisane w Grupie potrąceń alimentacyjnych, więc nie podlegają ograniczeniom do wysokości płacy minimalnej. Pracownikowi możemy potrącić pożyczkę w pełnej wysokości:

2435,54 – 250,00 – 2,50 = 2183,04 zł

Od następnego miesiąca dokonano zmian w Konfiguracji / Firma / Płace / Grupy ograniczeń potrąceń. W „Grupie potrąceń z innych tytułów” – na zakładce 2 podpięto Spłatę pożyczki w kolejności: Spłata pożyczki – rata kapitałowa, Spłata pożyczki – odsetki.
  • Ustalenie dopuszczalnej wysokości potrącenia alimentacyjnego z wynagrodzenia:
3960,00 zł – 542,92 zł – 307,54 zł – 374,00 zł = 2735,54 zł (kwota netto) Dopuszczalna kwota potrącenia alimentacyjnego z wynagrodzenia wynosi: 60% z 2735,54 =  1641,32 zł. Potrącenie alimentacyjne w kwocie 300,00 zł może więc być zrealizowane w całości.
  • Kwota wynagrodzenia wolna od potrącenia alimentacyjnego:
Obowiązujące przepisy nie gwarantują w przypadku potrąceń alimentacyjnych minimalnego wynagrodzenia
  • Ustalenie możliwej do zrealizowania kwoty potrącenia alimentacyjnego:
Zgodnie z zadeklarowaną kolejnością, program dokonał pomniejszenia kwoty netto pracownika o potrącenie alimentacyjne przypisane w pierwszej „Grupie potrąceń alimentacyjnych”:  2735,54 zł – 300,00 zł = 2435,54 zł
  • Kwota wynagrodzenia wolna od potrąceń z innych tytułów:
Kwota netto wolna od potrącenia komorniczego dla wynagrodzenia z podwyższonymi kosztami uzyskania, bez prawa do ulgi podatkowej dla ¾ etatu wynosi 1 876,15 zł.
  • Ustalenie możliwej do zrealizowania kwoty potrącenia z innych tytułów:
Sprawdzamy listę potrąceń przypisanych do drugiej „Grupy potrąceń z innych tytułów”, w której znajduje się Spłata pożyczki – rata kapitałowa i Spłata pożyczki – odsetki. W tej grupie potrąceń obowiązuje kwota wolna od potrąceń: 100% minimalnej płacy Kwota maksymalnego potrącenia dla II  grupy, tj. 50% wynagrodzenia netto wynosi: 50% * 2735,54 = 1367,77 zł Maksymalna kwota potrąceń dla II grupy, z uwzględnieniem kwoty wolnej: 2735,54 – 1876,15 = 859,39 zł Ustalenie rzeczywistej kwoty potrąceń w ramach II grupy, z uwzględnieniem potrąceń dokonanych w I grupie oraz kwoty wolnej od potrąceń, czyli:  (2735,54 – 300,00) –1876,15 = 559,39 Najmniejsza z tych trzech wartości, czyli 559,39 zł jest maksymalną kwotą dla potrąceń z grupy II. Pracownikowi można potrącić alimenty w pełnej wysokości 300,00 zł oraz spłatę pożyczki – rata kapitałowa w wysokości 250 zł. Spłata pożyczki – odsetki będzie wynosić 2,50 zł. Dla powyższych ustawień płaca minimalna pracownika zostanie zachowana.
Uwaga
Gdy ograniczenie zadziała dla elementów Spłaty pożyczki PKZP, która nie zostanie spłacona w zadeklarowanej kwocie, to przy zapisywaniu takiej wypłaty pojawi się komunikat informujący o konieczności przeliczenia Harmonogramu spłat. Należy wówczas w PKZP dodać nowy harmonogram spłat z uwzględnieniem bieżącego stanu zadłużenia. http://www.comarch.pl/erp/comarch-optima/rozwiazania-dla-biur-rachunkowych/
Przykład
Pracownik zatrudniony jest na ¾ etatu i otrzymuje stałe miesięczne wynagrodzenie w wysokości 3500,00zł. Pracownikowi przysługują podstawowe koszty uzyskania przychodu 250 zł i ulga podatkowa w kwocie 300 zł. Wypłata pracownika obciążona jest potrąceniem komorniczym na kwotę 1000,00 zł. Potrącenie komornicze przypisane jest do II grupy „Grupa potrąceń z innych tytułów”.
  • Ustalenie dopuszczalnej wysokości potrącenia komorniczego:
3500,00 zł – 479,85 zł – 271,81 zł – 32,00 zł = 2716,34(kwota netto) Dopuszczalna wysokość potrącenia komorniczego, tj. 50% wynagrodzenia netto: 1358,17 zł.
  • Ustalenie kwoty wynagrodzenia wolnej od potrącenia komorniczego dla ¾ etatu:
Obliczamy kwotę minimalnego wynagrodzenia dla ¾ etatu, tj.  ¾ * 3600,00 = 2700 zł brutto. Kwota netto minimalnego wynagrodzenia dla 3/4 etatu i podstawowych kosztów uzyskania przychodu, wolna od potrącenia komorniczego wynosi 2120,15.
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
2716,34  zł – kwota netto wypłaty, przed pomniejszeniem o potrącenie komornicze 1358,17 zł – maksymalna kwota potrącenia komorniczego 2120,15 zł – kwota wynagrodzenia wolna od potrącenia komorniczego (gwarantowane minimalne wynagrodzenie, które pracownik musi otrzymać) 2716,34  – 2120,15 = 596,19 zł – maksymalna kwota potrącenia komorniczego, z uwzględnieniem kwoty wolnej Porównujemy obie wyliczone ‘maksymalne’ kwoty: 1358,17 zł i 596,19 zł – mniejsza z nich, czyli 596,19 to dopuszczalna kwota potrącenia. Pracownik otrzyma wynagrodzenie w kwocie: 2716,34 – 596,19 = 2120,15 zł zachowując minimalną kwotę netto. Od następnego miesiąca pracodawca zobowiązany jest do potrącania pracownikowi alimentów w wysokości 300,00 zł. Potrącenie alimentacyjne przypięte jest do I grupy – „Grupa potrąceń alimentacyjnych”. W pierwszej kolejności z wypłaty zostaną potrącone alimenty, a jako następne potrącenie komornicze przypisane do II grupy potrąceń.
  • Ustalenie dopuszczalnej wysokości potrącenia alimentacyjnego:
3500,00 zł – 479,85 zł – 271,81 zł – 32,00 zł = 2716,34(kwota netto) Dopuszczalna wielkość potrącenia tj. 60% * 2716,34 wynosi 1629,80. Potrącenie alimentacyjne w kwocie 300,00zł może więc być zrealizowane w całości.
  • Kwota wynagrodzenia wolna od potrącenia alimentacyjnego:
Obowiązujące przepisy nie gwarantują w przypadku potrąceń alimentacyjnych minimalnego wynagrodzenia
  • Ustalenie możliwej do zrealizowania kwoty potrącenia alimentacyjnego:

2716,24 zł – 300,00 zł = 2416,34 zł

Po dokonaniu potrącenia alimentacyjnego sprawdzamy, czy pracownik ma potrącenia, które są przypisane w „Grupie potrąceń z innych tytułów”. Jest tam przypisane potrącenie komornicze, więc dokonujemy dalszych obliczeń:
  • Kwota wynagrodzenia wolna od potrącenia komorniczego:
Obliczamy kwotę minimalnego wynagrodzenia dla ¾ etatu, tj.  ¾ * 3600,00 = 2700 zł brutto. Kwota netto wolna od potrącenia komorniczego wynosi 2120,15 .
  • Ustalenie kwoty potrącenia komorniczego możliwej do zrealizowania:
2716,34 zł – 300,00 zł = 2416,34 zł kwota netto wypłaty po pomniejszeniu o potrącenie alimentacyjne 1358,17  zł – maksymalna kwota potrącenia komorniczego 2120,15 zł – kwota wynagrodzenia wolna od potrącenia komorniczego (gwarantowane minimalne wynagrodzenie, które pracownik musi otrzymać) 2416,34 – 2120,15 = 296,19 – maksymalna kwota potrącenia komorniczego, z uwzględnieniem kwoty wolnej Pracownik otrzyma wynagrodzenie w kwocie: 2716,34 – 300,00 – 296,19 = 2120,15 zł zachowując minimalną kwotę netto. W kolejnym miesiącu pracownik przystąpił do ubezpieczenia i opłaca dobrowolną składkę PZU w wysokości 50,00 zł. Kwota składki jest potrącana przez pracodawcę w imieniu pracownika. Składka PZU nie jest przypięta do żadnej grupy ograniczeń potrąceń. W konfiguracji typu wypłaty, na zakładce Szczegółowe ma zaznaczony parametr „Doliczany po ograniczeniu potrąceń”. W pierwszej kolejności z wypłaty zostaną potrącone alimenty, jako następne potrącenie komornicze, a na końcu składka PZU bez żadnych ograniczeń.
  • Ustalenie dopuszczalnej wysokości potrącenia alimentacyjnego:
3500,00 zł – 479,85 zł – 271,81 zł – 32,00 zł = 2716,34(kwota netto) Dopuszczalna wielkość potrącenia tj. 60% *  2716,34 wynosi 1629,80 zł. Potrącenie alimentacyjne w kwocie 300,00 zł może więc być zrealizowane w całości. 2716,24 zł – 300,00 zł = 2416,34 zł Po dokonaniu potrącenia alimentacyjnego sprawdzamy, czy są potrącenia przypisane w „Grupie potrąceń z innych tytułów”. Jest tam przypisane potrącenie komornicze, więc dokonujemy dalszych obliczeń:
  • Ustalenie kwoty potrącenia komorniczego możliwej do zrealizowania:
1358,17 zł – maksymalna kwota potrącenia komorniczego 2120,15 zł – kwota wynagrodzenia wolna od potrącenia komorniczego (gwarantowane minimalne wynagrodzenie, które pracownik musi otrzymać) 2416,34  – 2120,15 = 296,19 zł – maksymalna kwota potrącenia komorniczego, z uwzględnieniem kwoty wolnej 50,00 zł – składka PZU potrącona w pełnej wysokości, już po ustaleniu poprzednich potrąceń Pracownik otrzyma wynagrodzenie w kwocie: 2716,34 – 300,00 – 296,19 – 50,00 = 2070,15 zł.
Przykład
Pracownik zatrudniony jest w pełnym wymiarze czasu pracy i otrzymuje stałe miesięczne wynagrodzenie w wysokości 4000,00 zł. Wypłata etatowa jest wypłacana na koniec miesiąca. Dodatkowo 20.07 pracownik miał wypłaconą premię na liście innej w kwocie 1000 zł. Pracownikowi przysługują podwyższone koszty uzyskania przychodu 300,00 zł i ulga podatkowa w kwocie 300,00 zł. Wypłata pracownika obciążona jest potrąceniem komorniczym na kwotę 2000,00 zł. Potrącenie komornicze przypisane jest do II grupy „Grupa potrąceń z innych tytułów”.
  • Ustalenie dopuszczalnej wysokości potrącenia komorniczego podczas naliczania wypłaty Innej z premią na dzień 20.07:
Z premii możemy potrącić 50% kwoty netto. Ustalamy kwotę netto premii: 1000,00 – 137,10 – 51,95– 0 = 810,95 zł (kwota netto) – premia 50%* 810,95 zł = 405,48 zł – maksymalne potrącenie z premii
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
810,95 zł – kwota netto wypłaty, przed pomniejszeniem o potrącenie komornicze 2789,86 zł – kwota wynagrodzenia wolna od potrącenia komorniczego (gwarantowane minimalne wynagrodzenie, które pracownik musi otrzymać) 810,95 zł < 2 789,86  zł Podczas naliczania premii, która została wypłacona 20.07 nie można było potrącić zajęcia, gdyż pracownik nie miałby zagwarantowanej kwoty wolnej.
  • Ustalenie dopuszczalnej wysokości potrącenia komorniczego podczas naliczania wypłaty etatowej na dzień 31.107:
Ze składnika Wynagrodzenie zasadnicze i premii możemy potrącić 50% kwoty netto. Ustalamy więc kwoty netto odrębnie dla obydwu składników: Ze składnika Wynagrodzenie zasadnicze i premii możemy potrącić 50% kwoty netto. Ustalamy więc kwoty netto odrębnie dla obydwu składników: 4000,00 – 548,40 – 336,36 – 182,00 = 2933,24 (kwota netto) – Wynagrodzenie zasadnicze 50%* 2933,24 zł = 1466,62 zł – maksymalne potrącenie z wynagrodzenia zasadniczego 1000,00 – 137,10 – 51,95 – 0 = 810,95 zł (kwota netto) – premia 50%* 810,95 zł = 405,48 zł – maksymalne potrącenie z premii Obliczamy maksymalną kwotę potrącenia komorniczego: 1466,62 zł + 405,48 zł = 1872,10 zł – dopuszczalna wysokość potrącenia komorniczego wynosi 1872,10 zł.
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
2933,24 + 810,95 = 3744,19 zł – kwota netto wypłat, przed pomniejszeniem o potrącenie komornicze 1872,10 zł – maksymalna kwota potrącenia komorniczego (z dwóch wypłat) 2789,86 zł – kwota wynagrodzenia wolna od potrącenia komorniczego (gwarantowane minimalne wynagrodzenie, które pracownik musi otrzymać) 3744,19 – 2789,86  = 954,33 zł – maksymalna kwota potrącenia komorniczego, z uwzględnieniem kwoty wolnej Porównujemy obie ‘maksymalne’ kwoty: 1872,10 zł i 954,33 zł – mniejsza z nich, czyli 954,33 zł to dopuszczalna kwota potrącenia.
  • Sprawdzamy czy kwota netto wypłaty etatowej pozwala na pobranie kwoty 954,33 tytułem egzekucji
954,33 zł < 2933,24 zł Z wypłaty etatowej można potrącić kwotę 954,33 zł.   Pracownik otrzyma wynagrodzenie etatowe w kwocie: 2933,24 –  954,33 (potrącenie komornicze) = 1978,91 zł. Razem z kwotą netto otrzymaną z wypłaty premii została zachowana minimalna kwotę netto 2789,86 zł (1978,91 + 810,95).
Przykład
Pracownik zatrudniony jest na 1/2 etatu i otrzymuje stałe miesięczne wynagrodzenie w wysokości 2000,00 zł. Pracownikowi przysługują podstawowe koszty uzyskania przychodu 250,00 zł i ulga podatkowa w kwocie 300,00 zł. Wypłata pracownika obciążona jest potrąceniem komorniczym na kwotę 1000,00 zł. Potrącenie komornicze przypisane jest do II grupy „Grupa potrąceń z innych tytułów”. Pracownik jest uczestnikiem PPK. Opłaca składkę podstawową w wysokości 2.0%. Pracodawca finansuje pracownikowi składkę podstawową w wysokości 1.5%.
  • Ustalenie dopuszczalnej wysokości potrącenia komorniczego:
2000,00 zł – 274,20 zł (skł. społ.) – 155,32 zł (skł. zdrow.) – 0,00 zł (zaliczka podatku) – 30,00 zł (skł. PPK) = 1540,48(kwota netto) W kwocie zaliczki podatku znajduje się zaliczka od wynagrodzenia oraz od przychodu z tytuły finansowania składki PPK pracownikowi przez pracodawcę. Dopuszczalna wysokość potrącenia komorniczego, tj. 50% wynagrodzenia netto: 770,24 zł.
  • Ustalenie kwoty wynagrodzenia wolnej od potrącenia komorniczego dla 1/2 etatu:

Obliczamy kwotę minimalnego wynagrodzenia dla 1/2 etatu, tj. 1/2 * 3600,00 = 1800 zł brutto.

Kwota netto minimalnego wynagrodzenia dla 1/2 etatu, podstawowych kosztów uzyskania przychodu i ulgi, w przypadku uczestnictwa w PPK, wolna od potrącenia komorniczego wynosi 1 377,43 zł.

  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
1540,48 zł – kwota netto wypłaty, przed pomniejszeniem o potrącenie komornicze 770,24 zł – maksymalna kwota potrącenia komorniczego 1377,43 zł – kwota wynagrodzenia wolna od potrącenia komorniczego (gwarantowane minimalne wynagrodzenie, które pracownik musi otrzymać) 1540,48 – 1377,43 = 163,05 zł – maksymalna kwota potrącenia komorniczego, z uwzględnieniem kwoty wolnej Porównujemy obie wyliczone ‘maksymalne’ kwoty: 770,24 zł i 163,05 zł – mniejsza z nich, czyli 163,05 to dopuszczalna kwota potrącenia. Pracownik otrzyma wynagrodzenie w kwocie: 1540,48 – 163,05 = 1377,43 zł zachowując minimalną kwotę netto.
Przykład

Pracownik jest zatrudniony na pełnym etacie na stawce 4000,00 zł/mies., przysługują mu podstawowe koszty uzyskania przychodu 250,00zł i ulga podatkowa 300,00 zł.Pracownik nie jest uczestnikiem PPK. Wypłata pracownika obciążona jest potrąceniem komorniczym z innych tytułów na kwotę 1500,00 zł. Pracownik zgłosił, że z powodu podjętych na terytorium Rzeczypospolitej Polskiej działań służących zapobieganiu zarażeniem wirusem SARS-CoV-2: jego żona utraciła źródło dochodu.

  • Ustalenie dopuszczalnej wysokości potrącenia komorniczego:
4000,00 – 548,40 – 310,64 – 84,00 = 3056,96 (kwota netto) Dopuszczalna wysokość potrącenia komorniczego, tj. 50% wynagrodzenia netto: 1528,48 zł. 
  • Ustalenie kwoty wynagrodzenia wolnej od potrącenia komorniczego dla 1/2 etatu:
W związku z utrata źródła dochodu przez żonę z powodu podjętych na terytorium Rzeczypospolitej Polskiej działań służących zapobieganiu zarażeniem wirusem SARS-CoV-2 kwoty zwolnione z egzekucji określone w art. 871 § 1 Kodeksu pracy ulegają zwiększeniu o 25% na każdego nieosiągającego dochodu członka rodziny, którego pracownik ten ma na utrzymaniu. Pracownik ma tylko na utrzymaniu żonę, która nie osiąga dochodu. Aby odnotować podwyższenie kwoty wolnej o 25% należy w grupie ograniczeń potrąceń na zakładce ‘Ogólne’ w polu „Kwota wolna od potrąceń” ustawić wartość 125% (można skopiować standardową grupę ograniczeń potrąceń z innych tytułów lub utworzyć nową grupę np. „Grupa potrąceń – 125% kwoty wolnej” oraz ustawić odpowiednią wartość). Podwyższona o 25% kwota netto minimalnego wynagrodzenia dla pełnego etatu i podstawowych kosztów uzyskania przychodu, wolna od potrącenia komorniczego wynosi 3479,83 zł
  • Ustalenie możliwej do zrealizowania kwoty potrącenia komorniczego:
3056,96 zł – kwota netto wypłaty, przed pomniejszeniem o potrącenie komornicze 1528,48 zł – maksymalna kwota potrącenia komorniczego 3479,83 zł – kwota wynagrodzenia wolna od potrącenia komorniczego (gwarantowane minimalne wynagrodzenie, które pracownik musi otrzymać) 3056,96 zł < 3479,83 zł – kwota wolna jest wyższa niż wynagrodzenie netto pracownika Z wynagrodzenia nie można potrącić zajęcia, gdyż pracownik nie miałby zagwarantowanej kwoty wolnej. Pracownik otrzyma wynagrodzenie w kwocie 3056,96 zł.

Techniczne

OPT057 - Strojenie wydajnościowe baz MS SQL dla Comarch ERP Optima

Data aktualizacji: 28-11-2018

Wprowadzenie

Serwer bazy danych jest centralnym miejscem dla całej instalacji Comarch ERP Optima i ma bardzo duże znaczenie dla wydajnej jej pracy. Dlatego bardzo ważne jest odpowiednie skonfigurowanie serwera zarówno pod względem sprzętowym, doboru właściwego oprogramowania oraz jego ustawień. Dodatkowo z biegiem czasu i działalnością klienta spływają nowe dane słownikowe oraz dokumenty, co powoduje przyrost bazy danych. Ważne jest więc monitorowanie stanu serwera SQL i odpowiednie reagowanie w celu zapewnienia jak najlepszej wydajności. Niniejszy biuletyn zawiera wytyczne dla konfiguracji serwera bazy danych dedykowanego do pracy z Comarch ERP Optima. Przedstawiono w nim również podstawowe metody diagnozy problemów wydajnościowych oraz sposoby optymalizacji. W ostatnim rozdziale znajduje się obszerny opis cyklicznych czynności administracyjnych, których celem jest utrzymanie serwera SQL w dobrej kondycji. Do biuletynu dołączone są skrypty, które pozwalają zautomatyzować cykliczne czynności administracyjne dla wersji Express serwera SQL.

Planowanie instalacji

Dobór konfiguracji sprzętowej dla serwera bazy danych

Serwer bazy danych jest wrażliwym elementem, którego awaria może spowodować przestój całej firmy oraz duże straty finansowe, dlatego warto zainwestować w markowy, sprawdzony sprzęt. Taki serwer w atrakcyjnych cenach można np. nabyć w ramach Zintegrowanej Oferty Comarch.

Konfiguracja sprzętowa

Przy doborze serwera bazy danych należy zwrócić szczególną uwagę to, aby zapewniał on niezawodną pracę i bezpieczeństwo przechowywanych danych. Dlatego warto, aby jak najwięcej komponentów było nadmiarowych usuwając pojedyncze ogniwa awarii. Czyli dobrze jest zastosować podwójne zasilacze oraz zasilanie awaryjne (UPS) pozwalające na prawidłowe zamknięcie systemu w momencie braku prądu. Jeżeli chodzi o wydajność to przede wszystkim należy zwrócić na ilość pamięci RAM oraz szybkość podsystemu dyskowego. Procesor zwykle odgrywa mniejsze znaczenie. Jednakże powinien zawierać rdzenie nowej generacji (Intel Nehalem lub lepszy) i taktowaniu przynajmniej 2 GHz. Im więcej dostępnej pamięci tym lepiej, oczywiście ze względu na koszty, jej ilość musi być dobrana do zapotrzebowania, bazując na wielkości instalacji, czyli ilości użytkowników, wielkości baz danych oraz ich ilości. Orientacyjne ilości pamięci RAM dla różnych konfiguracji zostały podane w Podręczniku konfiguracji dla bieżącej wersji Comarch ERP Optima. Później oczywiście należy obserwować liczniki serwera i sprawdzać, czy nie ma potrzeby jej zwiększenia. Informacje na temat przykładowych liczników, na które warto zwrócić uwagę podano w punkcie 4. Diagnoza problemów wydajnościowych. Podsystem dyskowy powinien być zabezpieczony przed awariami poprzez odpowiednią konfigurację. Zalecana konfiguracja to przynajmniej Raid 1 (mirror) dla wolumenu obsługującego system oraz w miarę możliwości Raid 10 dla wolumenu przechowującego dane. Dodatkowo należy zwrócić uwagę, aby kontroler dyskowy posiadał podtrzymywanie bateryjne, które umożliwia zastosowanie opcji write-back przyspieszającej działanie podsystemu dyskowego. Najczęściej przyjmowaną jednostką wydajności podsystemu dyskowego jest IOPS[1] (ang. Input/Output Operations Per Second, IOPS), czyli ilość operacji wejścia wyjścia na sekundę. Jako operację wejścia/ wyjścia rozumie się odczyt lub zapis fragmentu danych, najczęściej o rozmiarze 4 kB. Poniżej znajdują się orientacyjne dane dotyczące wydajności różnych podsystemów dyskowych:
DyskOrientacyjna wartość IOPS[2]
Dysk Sata 5400~50-80
Dysk Sata 7200 ~75-100
Dysk SAS 10k~140
Dysk SAS 15k~175-210
Dysk SSD~400-1000000[3]
Wymagania co do podsystemu dyskowego zależą od wielkości instalacji to znaczy wielkości bazy oraz ilości równoczesnych użytkowników. Jako zgrubną zasadę można przyjąć, że dla mniejszych baz danych (<2 GB) należy zarezerwować około 15-25 IOPS dla użytkownika. Natomiast dla większych baz (> 2 GB) dla jednego użytkownika należy przeznaczyć 25-40 IOPS lub więcej. Jak widać Rozwiązaniem godnym polecenia jest zastosowanie dysków SSD. Przy czym należy pamiętać o zabezpieczeniu ich przed awarią np. poprzez konfigurację RAID 1. Bardziej szczegółowe informacje dotyczące określenia wymagań aplikacji do podsystemu dyskowego można znaleźć w poniższym odnośniku: http://msdn.microsoft.com/en-us/library/ee410782(v=sql.100).aspx Porównanie wydajności pracy Comarch ERP Optima z dyskami SSD i SATA znajduje się w biuletynie technicznym: OPT076 - Porównanie wydajności HDD vs SSD w Comarch ERP Optima.pdf, który jest dostępny na Indywidualnych Stronach Partnerów (https://www.erp.comarch.pl//partnerzy/default.aspx).

Biura rachunkowe:

Kilka mniejszych baz danych słabiej obciąża serwer niż jedna duża. Dlatego przy skalowaniu serwera SQL dla biura rachunkowego należy przede wszystkim sprawdzić jaka będzie wielkość największej bazy danych i pod nią dobierać konfigurację plus zabezpieczyć dodatkową ilość pamięci RAM współmiernie do ilości baz danych. Raczej nie należy przekraczać ilości 50 baz danych o wielkości do 200 MB na rdzeń procesora.

Edycje serwera SQL

Bardzo duże znaczenie dla wydajnej pracy serwera SQL jest właściwe dobranie edycji serwera SQL. Comarch ERP Optima jest dystrybuowana z darmową serwera SQL o nazwie Express. Edycja ta posiada określone ograniczenia co do możliwości wykorzystania zasobów komputera, na którym jest zainstalowana. Szczegóły znajdują się w poniższej tabeli.
EdycjaMaksymalna ilość pamięci RAM (dla puli buforów)Maksymalna wielkość bazy danychIlość obsługiwanych procesorów
SQL 2008 Express1 GB*4 GB1
SQL 2008 R2 Express1 GB*10 GB1
SQL 2012 / 2014 Express1 GB*10 GB1 (maksymalnie 4 rdzenie)
SQL 2008 R2 Workgroup3 GBBez ograniczeń (524 PB)2
SQL 2008 R2 Standard64 GBBez ograniczeń (524 PB)4
SQL 2012 Standard / BI64 GBBez ograniczeń (524 PB)4 procesory (do 16 rdzeni)
SQL 2014 Standard / BI128 GBBez ograniczeń (524 PB)4 procesory (do 16 rdzeni)
Źródło: http://www.microsoft.com/sqlserver/en/us/product-info/compare.aspx *Badania niezależne od Producenta pokazują, że wersja Express może wykorzystać maksymalnie 1,4 GB RAM (http://sqlgeek.pl/2010/08/23/pl-sql-server-limity-w-sql-server-2008-r2-express-edition/)

Architektura 32 bit, a 64 bit.

Obecnie obowiązującą architekturą jest architektura 64 bitowa i w miarę możliwości zalecana jest aktualizacja do niej środowisk 32 bitowych, które posiadają ograniczenia związane z ilością adresowanej pamięci, a także różnymi komplikacjami w jej alokacji. W podstawowej konfiguracji proces 32 bitowy może maksymalnie zaadresować 2 GB pamięci, przy zastosowaniu specjalnego przełącznika można tą wartość zwiększyć do 3 GB, ale dzieje się to kosztem ilości dostępnej przestrzeni adresowej dla systemu operacyjnego dlatego należy robić to ostrożnie. Serwer SQL może dodatkowo wykorzystać mechanizm AWE, który pozwala na systemach 32 bitowych wyjść poza zakres 4 GB pamięci. Szczegóły można znaleźć w archiwalnym biuletynie technicznym OPT041-Wydajność Comarch OPT!MA a procesory wielordzeniowe i 64 bitowe, który jest dostępny na stronach walidowanych. Na systemach 64 bitowych warto zwrócić uwagę, aby instalować również serwer SQL w wersji 64 bitowej ponieważ jego 32 bitowy odpowiednik będzie w stanie wykorzystać jedynie 4 GB z dostępnej pamięci nawet w edycji Standard. Więcej informacji na temat możliwości wykorzystania pamięci operacyjnej przez poszczególne wersje systemów operacyjnych Windows można znaleźć tutaj: http://msdn.microsoft.com/en-us/library/windows/desktop/aa366778(v=vs.85).aspx

Konfiguracja serwera SQL

Większość parametrów serwera SQL należy pozostawić bez zmian, ponieważ domyślne wartości są optymalne dla większości warunków pracy. Sugerujemy jednakże zwrócić uwagę na Maksymalną / Minimalna ilość wykorzystywanej pamięci RAM.

Minimalna i Maksymalna ilość wykorzystywanej pamięci RAM>

Parametr minimalnej i maksymalnej ilości wykorzystanej pamięci RAM odnosi się wyłącznie do jednego z komponentów serwera SQL, czyli puli buforów. Jest to kluczowy element jednakże, przy rezerwowaniu pamięci dla puli buforów należy wziąć pod uwagę również inne składniki samego serwera SQL jak i samego systemu operacyjnego.

Minimum Server Memory

Domyślną wartością parametru Minimum Server Memory jest zero, co oznacza, że serwer będzie dynamicznie zarządzał dostępną pamięcią RAM dla puli buforów. Ustawienie tego parametru powyżej zera oznacza, że serwer SQL nie będzie mógł zwolnić tej pamięci w razie potrzeby. Z drugiej strony w środowisku, gdzie pracuje więcej aplikacji prócz samego serwera SQL może być konieczne zarezerwowanie niezbędnego minimum pamięci, ponieważ niemożność zaalokowania niezbędnego minimum spowoduje konieczność korzystania z pliku wymiany na dysku twardym i znaczną degradację wydajności Serwera SQL. Na komputerach dedykowanych do pracy tylko z serwerem SQL zaleca się pozostawienie domyślnej wartości tego parametru.

Maximum Server Memory

Domyślna wartością tego parametru to: 2147483647 MB, co oznacza że Server SQL będzie chciał zająć całą dostępną pamięć na komputerze. Może to niestety prowadzić do spadku wydajności całego środowiska poprzez to, że pula buforów zajmie pamięć potrzebną do działania systemu operacyjnego lub innych komponentów serwera SQL. Dlatego zaleca się ograniczenie tej pamięci rezerwując niezbędną przestrzeń do działania systemu operacyjnego i pozostałych elementów serwera SQL (oraz ewentualnie dla dodatkowych aplikacji pracujących na tym systemie).
Ustawienia pamięci dla instancji Microsoft SQL Server
Poniżej znajdują się sugestie ustawień parametru Maximum Server Memory (przy założeniu, że na serwerze nie pracują dodatkowe aplikacje oraz inne moduły serwera SQL takie jak wyszukiwanie pełnotekstowe, analizy czy raporty). Dane te oczywiście dotyczą wersji, które nie posiadają wbudowanych ograniczeń tak jak wersja Express. Dla wersji Express biorąc pod uwagę wcześniej podane informacje można ustawić Maximum Server Memory na 1400 MB.
Pamięć fizycznaMaximum Server Memory
2 GB1500 MB
4 GB3200 MB
6 GB4800 MB
8 GB6400 MB
12 GB10000 MB
16 GB13500 MB
24 GB21500 MB
Źródło: http://www.sqlservercentral.com/blogs/glennberry/2009/10/29/suggested-max-memory-settings-for-sql-server-2005_2F00_2008/

Inne parametry

Optimize for Ad hoc Workloads

Włączenie parametru „Optimize for Ad hoc Workloads” pozwala na lepsze wykorzystanie dostępnej pamięci RAM w sytuacji, gdy na serwerze generowane jest wiele zapytań, które nigdy więcej lub bardzo rzadko są uruchamiane ponownie. Parametr ten powoduje, że plany dla zapytań „ad hoc” nie są zapisywane w pamięci podręcznej do późniejszego wykorzystania. Zapisywany jest tylko ich mały fragment, cały plan jest zapisywany dopiero przy powtórnym wykonaniu tego samego zapytania. W ten sposób oszczędzana jest pamięć RAM, przez co może być ona wykorzystana przez serwer SQL do innych celów, a co za tym idzie zwiększa się jego wydajność.
Zaawansowane właściwości serwera SQL – włączony parametr Optimize for Ad hoc Workloads
Zaleca się włączenie tego parametru przy pracy z Comarch ERP Optima. Opcja ta jest dostępna od wersji SQL 2008. Zajętość pamięci planów dla zapytań można sprawdzić poniższym zapytaniem: select objtype, count(*) as number_of_plans, sum(cast(size_in_bytes as bigint))/1024/1024 as size_in_MBs, avg(usecounts) as avg_use_count from sys.dm_exec_cached_plans group by objtype Poniższy wynik wskazuje, że plany typu „Adhoc” zajmują 1439 MB pamięci, co jest stosunkowo dużą wartością więc warto włączyć opcję „Optimize for ad hoc workloads”. Za pomocą komendy: DBCC FREESYSTEMCACHE('SQL Plans') można wyczyścić pamięć podręczną planów dla planów typu Adhoc.

Diagnoza problemów wydajnościowych

Temat diagnozy wydajności serwera SQL jest bardzo obszerny, jednakże poniżej wybrano kilka podstawowych wskaźników, które warto sprawdzić, gdy występują problemy wydajnościowe. Wszystkie poniższe wskaźniki dostępne są z poziomu systemu operacyjnego. Narzędzia administracyjne \ Monitor wydajności
Nazwa parametruZalecane wartościZalecane działania
Procesor: Czas procesora [%]< 80%Jeżeli wartość tego parametru przynajmniej kilka razy dziennie na dłuższy czas przekracza zalecaną wartość należy zaplanować dołożenie drugiego procesora lub jego wymianę na wydajniejszy
System: Processor Queue Lenght< 2 (dla rdzenia)Jeżeli wartość tego parametru przynajmniej kilka razy dziennie na dłuższy czas przekracza zalecaną wartość należy zaplanować dołożenie drugiego procesora lub jego wymianę na wydajniejszy
Pamięć: Strony/s< 20Zbyt mała ilość dostępnej pamięci RAM
Pamięć: Dostępne bajty> 300Zbyt mała ilość dostępnej pamięci RAM
Dysk fizyczny: Czas dysku [%] (poddzielone przez ilość dysków)< 55%Wysoka wartość tego parametru może wskazywać na nie wystarczająco szybki podsystem dyskowy lub zbyt małą ilość dostępnej pamięci RAM.
Dysk fizyczny: Średnia długość kolejki dysku (podzielone przez ilość dysków)< 2Wysoka wartość tego parametru może wskazywać na nie wystarczająco szybki podsystem dyskowy lub zbyt małą ilość dostępnej pamięci RAM.
(najlepiej w okolicach zera)
SQL Server Buffer: Buffer Cache Hit Ratio> 90%Zbyt mała ilość dostępnej pamięci RAM dla serwera SQL
(najlepiej w granicach 99%)
Page life expectancy> 300Zbyt mała ilość dostępnej pamięci RAM dla serwera SQL
Zbyt mała ilość dostępnej pamięci dla serwera SQL może wynikać z poniższych czynników:
  • Za mało pamięci w serwerze
  • Ograniczenia wersji Express
  • Nieprawidłowo skonfigurowany parametr Max Server Memory
  • Ograniczenia architektury 32 bitowej
Importy dużych dokumentów poprzez pracę rozproszoną lub inne mechanizmy mogą na dłuższy czas blokować dostęp do tabel, a przez co powodować wydłużenie czasu operacji dla pozostałych użytkowników. Dlatego zaleca się, aby szczególnie duże importy były wykonywane poza godzinami pracy innych użytkowników. Jeżeli jakiś scenariusz działania okazuje się szczególnie wolny prosimy o opisanie go krok po kroku i zgłoszenie go przez System Obsługi Zgłoszeń (SOZ).

Optymalizacja dużych baz danych

Program jest dostosowany do pracy w większości warunków, jednakże niektóre szczególnie duże bazy ze względu na specyficzny rozkład danych w tabelach mogą wymagać dodatkowej optymalizacji. Za duże bazy danych uważamy te, które mają rozmiar rzędu kilku gigabajtów lub więcej. Przed przystąpieniem do poniższych czynności dobrze upewnić się, czy serwer jest prawidłowo skonfigurowany i posiada odpowiednią ilość zasobów.

Wyszukiwanie brakujących indeksów

Microsoft SQL Server posiada wbudowane mechanizmy, które pozwalają określić orientacyjnie jakich indeksów może brakować. W tym celu można uruchomić na serwerze następujące zapytanie: select d.* , s.avg_total_user_cost , s.avg_user_impact , s.last_user_seek ,s.unique_compiles from sys.dm_db_missing_index_group_stats s ,sys.dm_db_missing_index_groups g ,sys.dm_db_missing_index_details d where s.group_handle = g.index_group_handle and d.index_handle = g.index_handle order by s.avg_user_impact desc go Źrodło: http://www.google.pl/url?sa=t&rct=j&q=performance_tuning_waits_queues.doc&source=web&cd=1&ved=0CFkQFjAA&url=http%3A%2F%2Fdownload.microsoft.com%2Fdownload%2F4%2F7%2Fa%2F47a548b9-249e-484c-abd7-29f31282b04d%2FPerformance_Tuning_Waits_Queues.doc&ei=IrjYT__PAcXk4QSOxJzRAw&usg=AFQjCNFRIebSlMLnry8gH99CQklhdmokJw Zapytanie to najlepiej uruchomić po dłuższej pracy użytkowników wykonujących swoje zadania z Comarch ERP Optima w szczególności w obszarach, gdzie zauważają problemy wydajnościowe. Należy pamiętać, że dane o brakujących indeksach są usuwane po restarcie serwera SQL. Przykładowy wynik powyższego zapytania (pominięto kilka kolumn, aby zachować czytelność). Po pierwsze patrzymy na kolumny avg_user_impact oraz avg_total_user_cost, podają one zysk jaki można uzyskać przy zastosowaniu danego indeksu. Pierwszy z nich avg_user_impact wskazuje na procentową poprawę w zmniejszeniu kosztu wykonania zapytań użytkownika . Drugi natomiast avg_total_user_cost podaje całkowity zysk w koszcie wykonywanych przez użytkownika zapytań. Należy mieć również świadomość, że podejście to ma również swoje ograniczenia. Najbardziej istotne z nich jest takie, że podane dane należy traktować jako sugestię, a nie jako konieczność. Pozostałe ograniczenia podane są tutaj: http://msdn.microsoft.com/en-us/library/ms345485(v=sql.105).aspx Poniżej znajduje się skrypt używany przez Dział Wsparcia Microsoft: (http://msdn.microsoft.com/en-us/library/ms345421.aspx) PRINT 'Missing Indexes: ' PRINT 'The "improvement_measure" column is an indicator of the (estimated) improvement that might ' PRINT 'be seen if the index was created. This is a unitless number, and has meaning only relative ' PRINT 'the same number for other indexes. The measure is a combination of the avg_total_user_cost, ' PRINT 'avg_user_impact, user_seeks, and user_scans columns in sys.dm_db_missing_index_group_stats.' PRINT '' PRINT '-- Missing Indexes --' SELECT CONVERT (varchar, getdate(), 126) AS runtime, mig.index_group_handle, mid.index_handle, CONVERT (decimal (28,1), migs.avg_total_user_cost * migs.avg_user_impact * (migs.user_seeks + migs.user_scans)) AS improvement_measure, 'CREATE INDEX missing_index_' + CONVERT (varchar, mig.index_group_handle) + '_' + CONVERT (varchar, mid.index_handle) + ' ON ' + mid.statement + ' (' + ISNULL (mid.equality_columns,'') + CASE WHEN mid.equality_columns IS NOT NULL AND mid.inequality_columns IS NOT NULL THEN ',' ELSE '' END + ISNULL (mid.inequality_columns, '') + ')' + ISNULL (' INCLUDE (' + mid.included_columns + ')', '') AS create_index_statement, migs.*, mid.database_id, mid.[object_id] FROM sys.dm_db_missing_index_groups mig INNER JOIN sys.dm_db_missing_index_group_stats migs ON migs.group_handle = mig.index_group_handle INNER JOIN sys.dm_db_missing_index_details mid ON mig.index_handle = mid.index_handle WHERE CONVERT (decimal (28,1), migs.avg_total_user_cost * migs.avg_user_impact * (migs.user_seeks + migs.user_scans)) > 10 ORDER BY migs.avg_total_user_cost * migs.avg_user_impact * (migs.user_seeks + migs.user_scans) DESC PRINT '' GO Przygotowuje on od razu definicję indeksu wraz z przykładową nazwą sortując indeksy po polu „miara poprawy”, które jest wyliczane biorąc pod uwagę wspomniane wcześniej kolumny: avg_total_user_cost, avg_user_impact, oraz dodatkowo user_seeks i user_scans z sys.dm_db_missing_index_group_stats.
Uwaga
Należy przygotować skrypt dodający oraz usuwający dodawane indeksy, ponieważ dodatkowe indeksy uniemożliwią wykonanie konwersji do nowej wersji programu. Po skonwertowaniu bazy można na nowo dodać przygotowane indeksy
Uwaga
Dodane indeksy mogą mieć negatywny wpływ na operacje dodawania, aktualizowania i usuwania rekordów w bazie, dlatego należy przetestować ich wpływ na całościowe funkcjonowanie programu.

Database Engine Tuning Advisor

Pełne wersje Microsoft SQL Server posiadają dodatkowe narzędzie o nazwie Database Engine Tuning Advisor. Pozwala ono również na dodanie brakujących indeksów na podstawie zapisanego wcześniej ruchu SQL. Ruch ten można zapisać za pomocą innego narzędzia Microsoft SQL Server Profiler, które również jest dostępne w pełnej wersji serwera SQL. W skrócie proces optymalizacji można przedstawić w poniższych krokach:
  • Zapis ruchu za pomocą Microsoft SQL Server Profiler
  • Przygotowanie optymalizacji w Database Engine Tuning Advisor
  • Zapis rekomendacji
  • Przygotować plik usuwający dodatkowe indeksy i statystyki
  • Utworzenie dodatkowych indeksów i statystyk

Zapis ruchu za pomocą Microsoft SQL Server Profiler

Po wyborze nowego trace’a należy wskazać szablon Tuning, zaleca się zapisać plik od razu na dysk i ograniczyć jego rozmiar np. do 100 MB. Zaznaczony domyślnie parametr Enable file rollover powoduje utworzenie nowego pliku po osiągnięciu zadanego limitu. Zbyt duże pliki znacząco zwiększają czas analizy przez Database Engine Tuning Advisor.

Przygotowanie optymalizacji w Database Engine Tuning Advisor

Po zakończeniu zapisu ruchu przechodzimy do Database Engine Tuning Advisor. Na pierwszej zakładce „General” nowej sesji wskazujemy plik (File) jako źródło ruchu do optymalizacji oraz podajemy bazę do analizy. Na drugiej zakładce „Tuning Options” pozostawiamy domyślne parametry. W celu uruchomienia analizy klikamy ikonę Start Analysis (menu Actions \ Start Analysis)

Zapis rekomendacji

Po zakończonej analizie otrzymujemy szacowany wzrost wydajności oraz rekomendacje co do założenia dodatkowych indeksów i statystyk. Przygotowane rekomendacje należy zapisać w pliku poprzez przejście do menu Action \ Save Rekommendations. Z tak przygotowanych rekomendacji można wybrać kilka lub wszystkie indeksy i statystyki, jednakże należy pamiętać, że każdy dodatkowy indeks będzie spowalniał operacje dodawania, aktualizowania i usuwania rekordów w tabeli, której on dotyczy. Następnie wybrane indeksy i statystyki należy zapisać w skrypcie nadając im nazwy, które będą łatwe do identyfikacji. Na koniec należy również przygotować skrypt, który będzie usuwał niestandardowe indeksy i statystyki, ponieważ trzeba je usuwać przed przystąpieniem do konwersji bazy danych. Po zakończeniu konwersji można je ponownie dodać.
Uwaga
Należy przygotować skrypt dodający oraz usuwający dodawane indeksy, ponieważ dodatkowe indeksy uniemożliwią wykonanie konwersji do nowej wersji programu. Po skonwertowaniu bazy można na nowo dodać przygotowane indeksy.
Uwaga
Dodane indeksy mogą mieć negatywny wpływ na operacje dodawania, aktualizowania i usuwania rekordów w bazie, dlatego należy przetestować ich wpływ na całościowe funkcjonowanie programu.

Cykliczne czynności administracyjne

Cykliczne czynności administracyjne są bardzo istotne z punktu widzenia bezpieczeństwa jak i wydajności serwera SQL i należy traktować je jako obowiązkowe, a nie opcjonalne. Do najważniejszych czynności administracyjnych można zaliczyć:
  • Kopia bezpieczeństwa
  • Cykliczne odtwarzanie kopii bezpieczeństwa w celu weryfikacji poprawności backupu.
  • Optymalizacja indeksów
  • Kontrola poprawności baz danych DBCC CHECKDB
Dla wydajności szczególnie dla większych baz duże znaczenie ma cykliczna optymalizacja indeksów w bazie, które ze względu na swoją defragmentację będą spowalniać pracę Comarch ERP Optima. W kolejnych podrozdziałach opisano w jaki sposób można zautomatyzować niektóre z wymienionych czynności administracyjnych.

Maintenance Plan – zautomatyzowane strojenie dla pełnych wersji MS SQL

Każda pełna wersja MS SQL posiada mechanizm automatyzacji procesów, których zadaniem jest optymalizowanie bazy danych oraz kreowanie kopii bezpieczeństwa. Raz skonfigurowany zestaw operacji nazywany Maintenance Plan’em, czyli planem serwisowym, może być wielokrotnie uruchamiany w zadanym czasie. Tworzony jest zatem pewien „automat”, który o konkretnej porze wykona za nas operacje, które można wykonać z interfejsu programu Comarch ERP Optima. W niniejszym podrozdziale przedstawiony został przykład planu serwisowego obejmującego:
  • Sprawdzenie spójności i ciągłości bazy danych (element testów integralności)
  • Odbudowę indeksów (ikona pioruna na oknie listy baz danych w konfiguracji)
  • Aktualizację statystyk
  • Wykonanie kopii bezpieczeństwa bazy konfiguracyjnej oraz firmowej
  • Usunięcie plików powstałych na potrzeby wykonywania planu
Materiał został sporządzony przy pomocy MS SQL 2008 za pomocą kreatora. Dla wcześniejszych wersji silnika bazy danych postępuje się podobnie.

Krok 1 – Uruchomienie kreatora Maintenance Plan’u

Kreator uruchamiany jest z poziomu programu Management Studio (pełna wersja). SQL Server /Management/Maintenance Plan Wizard

Krok 2 – Wskazanie nazwy planu oraz terminu jego wykonywania

Kolejnym oknem kreatora, na które natrafiamy, jest krótki opis możliwości samego kreatora. Możemy zaznaczyć opcję, aby nie pokazywało się ono następnym razem. Interesuje nas następne okno. Wypełniamy w nim pola odpowiadające za nazwę oraz opis planu. Deklarujemy następnie jego ramy czasowe. Mamy dwie możliwości: „Seperate schedule for each task” – opcja pozwala na ustalenie terminu wykonania dla każdej operacji planu osobno. „Single schedule for entire plan or no schedule” – opcja pozwala na ustalenie terminu wykonania całego planu lub wykonania go na życzenie (on demand). Naciskając przycisk „Change” przechodzimy do okna konfiguracji ram czasowych. Poniższy obraz przedstawia wybór ram czasowych dla opisywanego przykładu. Istnieją cztery kombinacje ram czasowych dla planu. Mamy zatem:
  • „Start automatically (…)” – plan uruchomi się tuż po uruchomieniu serwera oraz usługi SQL Agent
  • „Start whenever when CPU (…)” – plan uruchomi się, kiedy procesor nie będzie obciążony
  • „Recurring” – plan ustala się według interwałów rok / miesiąc / dzień
  • „On time” – plan wykona się tylko raz w zadanym dniu i godzinie
W przykładzie użyjemy opcji terminarza według interwału co tydzień. Na obrazku widać, iż ma wykonywać się w każdy piątek o godzinie 18:30. Plan ma rozpocząć się od 15 grudnia 2009 roku i ma nie mieć końca. Plan ma symulować koniec tygodnia roboczego, kiedy po godzinie 18:00 wszyscy pracownicy skończyli pracę, a serwer SQL nie jest już niczym obciążony. Poprawne wskazanie ram czasowych dla planu jest bardzo istotne. Uruchomienie go podczas szczytu aktywności pracowników może nawet uniemożliwić im pracę. Podczas optymalizacji serwer pobiera dużo zasobów sprzętowych oraz blokuje elementy struktury bazy danych.

Krok 3 – wskazanie składników planu serwisowego

Kolejne okno kreatora planu przedstawia zakres czynności, jakie można wykonać. Są to:
  • „Check Database Inegrity” – kontrola poprawności struktury bazy danych. Nie można mylić jej z testami integralności, które walidują poprawność samych danych.
  • „Shrink Database” – pomniejszenie wielkości bazy danych poprzez usunięcie już niepotrzebnej rezerwy. Serwer SQL podczas pracy alokuje nowe zasoby na potrzeby przyszłych danych oraz operacji. Nie usuwa natomiast powstałem w tej sposób nadwyżki, kiedy dane zostaną usunięte a operacja się zakończy. Shrink pozwala na uwolnienie tych danych. Należy jednak pamiętać o tym, iż usunięcie nadmiarowych danych skutkuje fragmentacją dysku i może negatywnie wpływać na wydajność SQL. Nie zaleca się shrinkowania bazy danych tuż po wykonaniu odbudowy indeksów. Może to przynieść efekt odwrotny od zamierzonego.
  • „Reorganize Index” – defragmentacja indeksów.
  • „Rebuild Index” – odbudowa indeksów na nowo. Operacja ta jest bardziej długotrwała aniżeli defragmentacja, lecz daje lepsze efekty.
  • „Update Statistics” – aktualizacja “query optimizer’a” dzięki której serwer będzie potrafił wydajniej wykonywać polecenia.
  • „Clean Up History” – usuwanie historii wykonywania i odtwarzania kopii baz danych.
  • „Execute SQL Server Agent Job” – wykonanie “Job’a”.
  • „Back Up Database” – wykonanie kopi bezpieczeństwa bazy danych.
  • „Maintenance Cleanup Task” – usunięcie plików powstałych podczas wykonywania planu.
Poniższy obraz przedstawia wybór opcji, które realizowane są w opisywanym przykładzie.

Krok 4 – wskazanie kolejności wykonywania składników planu serwisowego

Kolejne okno kreatora planu pozwala na zadecydowanie, w jakiej kolejności powinny wykonać się poszczególne składniki planu serwisowego.

Krok 5 – wskazanie baz danych dla każdego elementu planu serwisowego

Każdy element planu serwisowego można wykonać dla dowolnego zestawu baz danych. Naszym celem będzie baza konfiguracyjna i baza firmowa. Krok ten pozwala na elastyczność podczas tworzenia planu dla serwera przechowującego dużą ilość baz danych. Każdej z nich można przypisać oddzielne punkty planu. Ogólna zasada wyboru baz danych jest wspólna dla wszystkich elementów planu serwisowego. Możemy wybrać:
  • „All databases” – operacja zostanie wykonana na wszystkich bazach danych znajdujących się na serwerze.
  • „System databases” – operacja zostanie wykonana tylko dla systemowych baz danych (przykład nie zakłada żadnych optymalizacji na tym typie baz danych).
  • „All user databases” – operacja zostanie wykonana tylko dla baz danych użytkownika, czyli niesystemowych. Dzięki tej opcji mamy pewność, iż zoptymalizujemy wszystkie bazy danych i nie narazimy na niebezpieczeństwo bazy systemowe.
  • „These databases” – operacja zostanie wykonana tylko dla zaznaczonych baz danych. Opisywany przykład wykorzystuję tę opcję.
  • „Ignore databases (…)” – wszystkie te bazy danych, których stan nie jest „Online” nie będą podlegać optymalizacji.
Poniższy obraz przedstawia wybór baz danych poddawanych sprawdzaniu poprawności. Każde kolejne okno opiera się na podobnym wyborze.

Krok 6 – charakterystyczne opcje dla każdego elementu planu serwisowego

Podczas wskazywania, które bazy danych mają zostać zoptymalizowane, możemy ustalić pewne opcje charakterystyczne dla elementu planu serwisowego. Dla elementów wykorzystanych w przykładzie mamy:
  • Check Database Inegrity -Include indexes – po odznaczeniu proces kontroli nie obejmie indeksów, zajmie więc mniej czasu.
  • Rebuild Index -Reorganize pages with the default amount of free space – odbudowa indeksów z domyślnym “fill factor”. Oznacza to, iż indeksy zostaną odbudowane zgodnie z ustawieniami zadanymi podczas kreowana bazy danych, czyli przewidziane przez Comarch. -Change free space per page percentage to … – wskazanie wartości “fill factor” samodzielnie. -Sort results in tempdb – zastosowanie SORT_IN_TEMPDBoption. -Keep index online while reindexing – podczas odbudowy indeksy będą możliwe do odczytu (ta opcja dostępna jest dla edycji Enterprise)
  • Update Statistics -Update: – wybór elementów poddanych aktualizacji. -Scan type: – zakres elementów poddanych aktualizacji.
  • Back Up Database -Sekcja „Create a backup file for every database” – opcje związane z katalogiem, w którym zostaną umieszczone pliki kopii zapasowych.
  • Maintenance Cleanup Task -Dostępne opcje pozwalają na zadecydowanie jaki typ danych historycznych ma podlegać kasowaniu. Wskazuje się albo pewien plik, albo folder. Określa się również wymagany wiek pliku.

Krok 7 – wskazanie sposobu raportowania wyników wykonania planu serwisowego oraz zakończenie pracy z kreatorem.

Ostatnim etapem tworzenia planu serwisowego jest wskazanie ścieżki dostępu dla pliku raportu. Zawiera on zestawienie podjętych czynności oraz wyniki ich działania. Po zakończeniu kreatora, nowy plan znajduje się na liście Maintenance Plans w programie Management Studio. Na tym etapie kończy się konfiguracja planu serwisowego. Wykona się w następny piątek o godzinie 18:30. Szerszy opis wszystkich elementów Maintenance Plan’u w języku angielskim można uzyskać na stronie: http://msdn.microsoft.com/en-us/library/ms188981.aspx

Plan serwisowy dla bezpłatnych wersji MS SQL

Opisany wcześniej plan serwisowy zbudować można tylko dla płatnych wersji silnika bazy danych. Nic nie stoi jednak na przeszkodzie, aby samemu sporządzić podobną funkcjonalność i zaproponować ją klientowi. Podobny efekt uzyskamy poprzez sporządzenie:
  • Skryptu SQL, który zawierał będzie wszystkie potrzebne dla optymalizacji zapytania.
  • Skryptu JS/VBS lub pliku .bat, który będzie zdalnie uruchamiał skrypt SQL z poziomy konsoli.
  • Harmonogramu systemu Windows, w którym zawrze się ramy czasowe planu.
W niniejszym biuletynie technicznym załączone zostały dwa pliki: Plik StrojenieBazy.sql to skrypt zawierający wszystkie niezbędne zapytania, aby przeprowadzić plan tożsamy z wcześniej opracowanym Maintenance Plan’em. Przed użyciem należy zmodyfikować w nim dwa parametry: SET @Nazwa_bazy = 'CDN_DEMO' -- Tu wpisz nazwę bazy danych do optymalizacji SET @Sciezka = N'C:\BACKUP\' -- Tu wpisz ścieżkę dostępu do katalogu dla kopii baz Skrypt optymalizuje tylko jedną, wybraną bazę danych. Został tak sporządzony dla łatwiejszego zrozumienia jego działania. Warto prześledzić jego strukturę. Drugi skrypt o nazwie StrojenieBazCDN.sql wymaga wskazania ścieżki dostępu do katalogu dla kopii baz. Zastosowano w nim kursor wyszukujący wszystkie bazy danych, których nazwa zaczyna się od ‘CDN’. Dla każdej z nich przeprowadzona zostanie optymalizacja. Przed uruchomieniem skryptu należy zmodyfikować w nim następujące elementy: sqlcmd.exe -S SERWER -E -i D:\StrojenieBazCDN.sql -o C:\Backup
  • SERWER – nazwa serwera, na którym znajdują się bazy danych.
  • D:\StrojenieBazCDN.sql – ścieżka dostępu oraz nazwa skryptu SQL.
  • C:\Backup – ścieżka docelowego miejsca składowania kopii baz danych (katalog musi istnieć).
Aby uruchomić automatyczne wykonywanie planu serwisowego należy w harmonogramie systemu Windows utworzyć nową regułę, która będzie w zadanym czasie uruchamiać odpowiedni skrypt VBS. Tym sposobem uzyskamy ten sam efekt, jaki przynieść może Maintenance Plan.

Pliki do pobrania

OPT060 – Comarch ERP Optima w środowisku terminalowym

Data aktualizacji: 29-06-2022

Wprowadzenie

Biuletyn przedstawia informacje na temat konfiguracji programu Comarch ERP Optima oraz środowiska terminalowego do pracy z programem, biorąc pod uwagę parametry łącza, konfigurację serwera, konfigurację klienta, podłączanie urządzeń współpracujących z programem a także ustawienia po stronie aplikacji Comarch ERP Optima. Biuletyn zakłada, że na serwerze terminali uruchamiana jest sama Comarch ERP Optima. Natomiast baza danych znajduje się na osobnym serwerze, którego konfiguracja jest poza zakresem niniejszego dokumentu. Biuletyn zawiera również informacje na temat urządzeń współpracujących z Comarch ERP Optima oraz sposobu ich konfiguracji w środowisku terminalowym.

Parametry łącza

Przepustowość łącza

Protokół RDP ma stosunkowo niskie wymagania, jeżeli chodzi o przepustowość. Oczywiście zależą one od parametrów sesji terminalowej czyli ilości kolorów, włączonych opcji w kliencie zdalnego pulpitu (szczegóły w p. 4 – Konfiguracja po stronie klienta) oraz rodzaju wykonywanej pracy. Z praktycznego punktu widzenia można przyjąć, że jedno połączenie przez pulpit zdalny przy głębi kolorów 16 bit zajmuje około 80 kbit/s. Może się ono wahać od 5 kbit/s do około 150 kbit/s. Przy czym kalkulacje wielkości łącza potrzebnego dla serwera terminali należy przeprowadzić w oparciu o parametr Upload, czyli transfer „do Internetu”. Ten parametr ma zwykle u dostawców Internetu znacząco niższą wartość od „Download”, czyli szybkości pobierania danych „z Internetu”. Czyli dla 10 równocześnie pracujących użytkowników należy zabezpieczyć łącze z parametrem Upload rzędu 800 kbit/s. Przepustowość łącza można przetestować za pomocą narzędzi online dostępnych w Internecie np. https://www.predkosc.pl/info/
Przykładowa strona pozwalająca na przetestowanie łącza internetowego

Jakość łącza

Na wydajność pracy ma również wpływ jakość łącza to znaczy wielkość opóźnień pakietów, wariancja opóźnień (jitter) oraz straty pakietów. Dobre jakościowo łącze, to łącze o opóźnieniach poniżej 100 ms, wariancją opóźnień do kilkunastu ms, straty pakietów w okolicach zera.

Konfiguracja po stronie serwera usług terminalowych

Wytyczne do konfiguracji sprzętowej dla serwera usług terminalowych

Przy doborze konfiguracji sprzętowej dla serwera terminali należy przede wszystkim zwrócić uwagę na mocne procesory. Zalecane byłyby procesory Xeon ze rdzeniami nowej generacji (Nehalem lub nowsze) oraz częstotliwością taktowania przynajmniej 2,6 GHz lub odpowiadające im procesory AMD. Ilość rdzeni zależna jest od ilości użytkowników. Zgrubnie szacując na jednym rdzeniu można uruchomić około 5 użytkowników. Przy czym jeden rdzeń należy odliczyć dla systemu operacyjnego. Ilość pamięci RAM również powinna być dostosowana do ilości użytkowników przeznaczając średnio około 500 MB dla jednego użytkownika, dodatkowo przynajmniej 2 GB na potrzeby systemu Windows plus około 1-2 GB rezerwowe. Dodatkowo należy wziąć pod uwagę, że zbyt mała ilość pamięci RAM może doprowadzić do intensywnego wykorzystania dysku twardego, co ostatecznie doprowadza do bardzo znaczącego spadku wydajności całego systemu, włączając w to działające na nim aplikacje. Do niezawodnej pracy serwera terminali zalecane jest uruchomienie dysków w konfiguracji RAID 1, czyli mirroring. Zastosowanie szybszych dysków (Serial SCSI 15 000 RPM lub SSD) pozwoli na szybsze wczytywanie binariów aplikacji, a przez to korzystnie wpływa na jej wydajność. Podsumowując dla 10 użytkowników powinno się zabezpieczyć trzy procesory lub jeden czterordzeniowy oraz około 7-8 GB pamięci RAM.

Wersja serwera terminala

Z wersji na wersję protokół RDP jest udoskonalany dlatego zalecamy używanie najnowszej jego wersji 8.0 dostępnej w serwerze Windows Server 2012. Poniższa tabela przedstawia różnice w ilości przesyłania danych (w Bajtach) przez takich samych klientów w zależności od wersji protokołu:
Wersja klienta zdalnego pulpituSystem operacyjny po stronie serwera BajtyZmniejszenie ilości przesłanych danych przy użyciu protokołu RDP 6.1
RDC 6.1 (Windows Server 2008)Windows Server 20087559075
RDC 5.2 (Windows Server 2003)Windows Server 200894503510.2
RDC 5.1 (Windows XP)Windows Server 2008111856330.32
Źródło: Remote Desktop Protocol Performance (http://download.microsoft.com/download/4/d/9/4d9ae28534314335a86e969e7a146d1b/RDP_Performance_WhitePaper.docx)

Konfiguracja serwera terminali

Na serwerze terminali należy wyłączyć wszystkie nieużywane opcje i usługi w systemie. Szczególnie nie jest zalecane włączanie funkcji „Środowisko pulpitu” (ang. Desktop Experience), ustawianie tapet na pulpicie oraz uruchamianie aplikacji, które obciążają procesor i pamięć serwera.

Ograniczenie maksymalnej głębi kolorów oraz blokowanie mapowanych urządzeń

W konfiguracji serwera terminali w celu zmniejszenia wymaganego pasma dla połączenia można ograniczyć głębię kolorów do 15 bit. Oznacza to, że użytkownicy mimo innych ustawień w kliencie zdalnego pulpitu będą mogli zestawić połączenie z maksymalną zdefiniowaną ilością kolorów. Dodatkowo dobrze jest zablokować mapowanie nieużywanych dodatkowych urządzeń takich jak porty COM, dyski lokalne klienta i inne ze względu na to, że każde z takich mapowań generuje dodatkowy ruch sieciowy.
Serwer Usług Terminalowych – ustawienia klienta

Konfiguracja sesji użytkowników

W konfiguracji serwera warto również dbać o to, aby na serwerze nie „wisiały” nieużywane, rozłączone sesje terminalowe, które zajmują zasoby serwera w szczególności pamięć. Można to zrobić ustawiając parametry sesji użytkowników na zakładce Sesja. Przykładowe wartości znajdują się na zrzucie ekranu, przy czym należy je dostosować do specyfiki pracy w danym środowisku.
Serwer Usług Terminalowych – ustawienia sesji
Na powyższym zrzucie ekranu ustawienia są wyszarzone, ponieważ zostały ustawione z poziomu polityki grupy.

Mapowanie drukarek sieciowych

Dla systemów Windows Server 2008 oraz Windows Server 2008 R2 zalecanym sposobem mapowania drukarek jest domyślny mechanizm EasyPrinting. Nie wymaga on żadnych dodatkowych czynności na serwerze terminali natomiast komputer klienta musi mieć zainstalowany Microsoft .Net Framework 3.0 SP1 oraz aplikację do połączenia przez pulpit zdalny (Remote Desktop Connection) minimum w wersji 6.1 (aplikacja ta jest składnikiem systemu, ale może wymagać uaktualnienia). W przypadku systemu Windows Server 2003, aby możliwe było mapowanie drukarki z klienta konieczna jest instalacja wszystkich sterowników drukarek używanych przez klienta. Dodatkowo, aby mapowanie powiodło się konieczna jest dokładna zgodność w nazwie sterownika po stronie klienta i serwera. W przypadku problemów można skorzystać z rozwiązania zawartego w dokumencie http://support.microsoft.com/kb/239088.

Zmiana algorytmu kompresji

Z poziomu zarządzania politykami grup (polecenie gpedit.msc) można zmienić domyślny algorytm kompresji, który bazuje na konfiguracji sprzętowej komputera. Pozwala to na samodzielne dostosowanie parametrów protokołu do warunków środowiska i konfiguracji komputera. Polityka grup pozwalająca na zmianę algorytmu kompresji na anglojęzycznych systemach nazywa się „Konfiguruj kompresję danych RemoteFX”. Konfiguracja komputera\ Szablony Administracyjne\ Składniki systemu Windows\ Usługi pulpitu zdalnego\ Host sesji pulpitu zdalnego\ Środowisko sesji zdalnej: Konfiguruj kompresję danych RemoteFX Mamy możliwość wprost wskazać, czy algorytm ma używać jak najmniejszych zasobów sieciowych kosztem pamięci i procesora (Optimized to use less network bandwidth), czy ma jak najmniej obciążać procesor i pamięć kosztem większego zapotrzebowania na pasmo sieciowe (Optimized to use less memory). Jest też możliwość wybrania konfiguracji zbalansowanej pomiędzy tymi dwoma opcjami (Balanced memory and network bandwith) oraz wyłączenie kompresji RDP (Do not use RDP compression algorithm).
Okno konfiguracji kompresji danych RemoteFX dla sesji zdalnych

Konfiguracja po stronie klienta

Analogicznie jak w przypadku serwera najlepiej jest korzystać z najnowszej wersji klienta zdalnego pulpitu. Dla połączeń z Windows Server 2008 R2 powinien to być klient o wersji minimum 6.1, a najlepiej w wersji 7.0.

Parametry połączenia do serwera terminali po stronie klienta

Głębia kolorów oraz mapowanie dodatkowych urządzeń

Dla połączeń przez Internet zalecane jest użycie ograniczonej liczby kolorów, czyli trybu High Color (15 bit lub 16 bit). Ilość kolorów można ustawić w kliencie połączenia przez pulpit zdalny na zakładce Ekran.
Właściwości klienta RDP – ustawienia głębi kolorów w sesji zdalnej
W bardzo trudnych warunkach można rozważyć połączenia w trybie 256 kolorów (głębia kolorów 8 bit). W tym celu należy zapisać ustawienia połączenia w pliku, a następnie otworzyć plik notatnikiem i zmodyfikować parametr: Session bppi:16 ustawiając: session bpp:i:8
Właściwości klienta RDP – zapis ustawień połączenia
Comarch ERP Optima w 256 kolorach przy standardowej skórce
Dodatkowo w celu uzyskania lepszej wydajności zaleca się zmianę skórki programu na UltraFlat. Zablokowanie mapowania wszystkich nieużywanych elementów takich jak porty, dyski, karty inteligentne, czy inne urządzenia Plug and Play ma również wpływ na zmniejszenie przesyłania dodatkowych danych, a przez co przyspiesza wyświetlanie aplikacji na wolnych łączach.
Właściwości klienta RDP – Mapowanie Zasobów lokalnych

Parametry graficzne w połączeniu zdalnego pulpitu

Znaczący wpływ na ilość zajętego pasma sieciowego przez połączenie pulpitu zdalnego mają parametry związane z graficznymi efektami w ramach sesji. Można je dostosować na zakładce „Wrażenia” klienta zdalnego pulpitu, są one tam powiązane z ustawieniami szybkości posiadanego łącza, ale można je również osobno zaznaczać i odznaczać.
Właściwości klienta RDP – Ustawienia efektów graficznych
W celu osiągnięcia najlepszej wydajności przy pracy przez wolniejsze łącza zaleca się wyłączenie wszystkich lub prawie wszystkich parametrów na zakładce „Wrażenia” zaczynając od góry, czyli od parametrów „Tło pulpitu” oraz „Wygładzanie czcionek”. Przykładowo opcja wygładzania czcionek może zwiększyć zapotrzebowanie na przepustowość od ponad 50% nawet do prawie 800%. Zapotrzebowanie na pasmo przy wykorzystaniu wygładzania czcionek ClearType oraz bez stosowania tego mechanizmu.
Typ użytkownikaTekst ClearType [kbit/s]Normalny tekst [kbit/s]Zwiększenie zapotrzebowania na pasmo przy użyciu ClearType
Pisanie i przewijanie35.622.5657.64 %
Przewijanie25.447.04260.92 %
Internet Explorer1410.4157.68794.52 %
Żródło: Remote Desktop Protocol Performance (http://download.microsoft.com/download/4/d/9/4d9ae28534314335a86e969e7a146d1b/RDP_Performance_WhitePaper.docx)

Pobieranie licencji

Program pracujący na komputerze usług terminalowych pobiera licencje w ten sam sposób co aplikacja pracująca „Stacjonarnie”, czyli instalacja taka jest wyposażona w Comarch ERP Menadżer Licencji (ML). Specyfiką usług terminalowych jest sposób zamykania sesji na serwerze usług terminalowych, np.: gdy host który pracował z sesją stracił połączenie do sesji na terminalu bądź też przerwał to połączenie celowo, to w obydwu przypadkach na serwerze terminali pozostaje pracująca sesja razem z programami uruchomionymi w niej, w tym z Comarch ERP Optima. Konfiguracja usług terminalowych pozwala na zarządzanie takimi sesjami na dwa sposoby – pozwala na ponowne podłączenie się do sesji z hosta, który utracił z nią połączenie (lub operatora który jest zalogowany w sesji) bądź pozwala na automatyczne zamknięcie takiej sesji. Problemem może okazać się automatyczne zamknięcie sesji, które zamyka aplikacje pracujące w tej sesji. Licencje które zostały przydzielone Comarch ERP Optima, która została zamknięta w taki sposób będą wciąż licencjami zajętymi, zmniejszającymi ilość dostępnych licencji w instalacji. Żeby uniknąć tego problemu wystarczy w Menu Widok Comarch ERP Optima wyłączyć parametr: „Potwierdzenie zamknięcia programu”. Program z tak ustawionym parametrem w automatycznie zamykanej sesji wyloguje zajmowane przez siebie licencje z (ML).

Konfiguracja interfejsu w Comarch ERP Optima

W konfiguracji Comarch ERP Optima przygotowano specjalne ustawienia pozwalające na uzyskanie lepszej wydajności przy słabszych parametrach połączenia do serwera terminali.

Ustawienie skórki

Skórkę programu można ustawić z poziomu menu Widok po zalogowaniu do programu.
Zmiana skórki w programie Comarch ERP Optima

Wyłączenie animacji

Również w menu Widok po zalogowaniu do programu można wyłączyć animacje w programie.
Zmiana Efektów animacji w programie Comarch ERP Optima

Zwinięcie graficznego menu (ribbon)

Obszar graficznego menu (ribbon) jest najdłużej odrysowywany dlatego jego wyłączenie na wolnym łączu powinno poprawić szybkość ściągania obrazu aplikacji z serwera.
Comarch ERP Optima - praca z rozwiniętą wstążką
Comarch ERP Optima - praca ze zwiniętą wstążką

Drukarki fiskalne w usługach terminalowych

System Comarch ERP Optima posiada możliwość pracy w środowisku terminalowym. Istotnym elementem pracy tego systemu jest możliwość korzystania z drukarek fiskalnych. Przepisy wymagają od użytkownika umieszczenia drukarek fiskalnych na stanowisku, gdzie odbywa się sprzedaż fiskalna. W środowisku terminalowym oznacza to podłączenie drukarki fiskalnej do komputera, na którym pracuje klient terminala. W przypadku systemów Microsoft Windows Terminal Serwer do podłączenia drukarki fiskalnej do portu COM stanowiska terminalowego można wykorzystać stworzone przez nas oprogramowanie. Oprogramowanie pozwala na przekazanie do końcówki terminala danych dla drukarki fiskalnej poprzez tak zwany kanał wirtualny. Aby przekazywanie danych do drukarki mogło mieć miejsce zarówno po stronie końcówki terminala jak i po stronie serwera musi być zainstalowane odpowiednie oprogramowanie, które można użytkować zgodnie z zasadami podanymi w punkcie 7.3.

Instalacja i konfiguracja komponentów na serwerze

Program Comarch ERP Optima nawiązują połączenie z drukarką fiskalną poprzez API udostępnione przez bibliotekę sterownika fiskalnego. Instalacja sterowników odbywa się wraz z instalacją programu Comarch ERP Optima. Konfiguracja programu do współpracy z drukarką podłączoną do konsoli terminala odbywa się, poprzez wybranie odpowiednio zmodyfikowanego sterownika przeznaczonego do pracy w TS. W konfiguracji programu „Comarch ERP Optima Start/Konfiguracja / Stanowisko / Ogóle / Drukarka fiskalna” należy wybrać odpowiedni dla drukarki fiskalnej sterownik i zaznaczyć parametr Sterownik terminalowy.

Instalacja komponentów na końcówce terminala

Po stronie końcówki terminala umieszczone są komponenty zajmujące się obsługą kanału wirtualnego oraz połączeniem z drukarką fiskalną. Pliki zawierające instalatory komponentów znajdują się w katalogu „Drukowanie Fiskalne w usługach terminalowych - Client” (na płycie instalacyjnej programu w katalogu Dodatki), lub bezpośrednio w katalogu z programem Comarch ERP Optima. Plik OnlineFP.exe zawiera instalator odpowiedni dla systemów 32 i 64 bitowych. Aby zainstalować obsługę terminalowych drukarek fiskalnych należy: 1. Plik OnlineFP.exe przegrać na końcówkę terminala. 2. Przeprowadzić instalację obsługi sterowników terminalowych na końcówce. Użytkownik Windows, który instaluje obsługę sterowników, musi mieć uprawnienia administratora. Oprogramowanie po stronie klienta składa się z plików obsługujących kanał wirtualny i z samych sterowników do drukarek. Wszystkie pliki kopiowane są do katalogu wskazanego podczas instalacji. Sterowniki drukarki nawiązują połączenie z urządzeniem na wskazanym adresie TCP/IP lub porcie COM wybranym w konfiguracji programu pracującego po stronie pulpitu zdalnego. Należy zwrócić uwagę również na następujące aspekty: 1. Mechanizm komunikacji z drukarkami fiskalnymi nie wykorzystuje mapowania portów COM w samej usłudze terminalowej. 2. Przy aktualizacji wersji programu Comarch ERP Optima zaleca się również aktualizację sterowników na końcówce terminala. Odinstalowanie z poziomu panelu sterowania programu Comarch ERP Sterowniki i usługi terminalowe i zainstalowanie aktualnej wersji z pliku OnlineFP.exe Po prawidłowo wykonanej instalacji na końcówce terminala i konfiguracji komponentów na serwerze można wykonać test połączenia z drukarką z poziomu konfiguracji programu.

Licencje

Komponenty do współpracy z drukarką fiskalną poprzez usługi pulpitu zdalnego wymagają licencji na „Fiskalny driver terminalowy”. Licencje są pobierane przez Comarch ERP Optima w sesji terminalowej w momencie wywołania pierwszej operacji chronionej licencją. Są to: fiskalizacja i wydruk raportów fiskalnych. Licencje są zwalnianie przy wylogowaniu się operatora z programu.
Uwaga
Do prawidłowego pobierania licencji wymagane jest wprowadzenie bezpośrednio do programu nazwy serwera klucza.
W sytuacji, gdy baza konfiguracyjna znajduje się na tym samym serwerze, gdzie pracuje menadżer licencji (ML), program nie wymaga wprowadzania nazwy serwera klucza - domyślnie szuka ich na serwerze gdzie znajduje się baza konfiguracyjna. Dla potrzeb komponentów, o których mówi ten artykuł nazwa takiego serwera zawsze musi być wprowadzona. Informację tą wprowadzamy w oknie logowania w polu Serwer Klucza.

Schemat połączenia do drukarki fiskalnej

Połączenie drukarki fiskalnej w sesji terminalowej
 

Terminale płatnicze w usługach terminalowych

System Comarch ERP Optima posiada możliwość pracy w środowisku terminalowym i komunikowania się z terminalem płatniczym podłączonym do komputera, na którym pracuje klient terminala. W przypadku systemów Microsoft Windows Terminal Serwer można wykorzystać stworzone przez nas oprogramowanie. Oprogramowanie pozwala na przekazanie do końcówki terminala danych dla terminala płatniczego poprzez tak zwany kanał wirtualny. Aby przekazywanie danych do terminala płatniczego mogło mieć miejsce zarówno po stronie końcówki terminala jak i po stronie serwera musi być zainstalowane odpowiednie oprogramowanie.

Instalacja i konfiguracja komponentów na serwerze

Program Comarch ERP Optima nawiązują połączenie z terminalem płatniczym poprzez API udostępnione przez bibliotekę sterownika fiskalnego. Instalacja sterowników odbywa się wraz z instalacją programu Comarch ERP Optima. Konfiguracja programu do współpracy z terminalem płatniczym podłączonym do konsoli terminala odbywa się, poprzez wybranie odpowiednio zmodyfikowanego sterownika przeznaczonego do pracy w TS. W konfiguracji programu „Comarch ERP Optima Start/Konfiguracja / Stanowisko / Ogóle / Terminal płatniczy” należy wybrać odpowiedni dla terminala płatniczego sterownik z dopiskiem „terminal” w nazwie.

Instalacja komponentów na końcówce terminala

Po stronie końcówki terminala umieszczone są komponenty zajmujące się obsługą kanału wirtualnego oraz połączeniem z terminalem płatniczym. Pliki zawierające instalatory komponentów znajdują się w katalogu „Drukowanie Fiskalne w usługach terminalowych - Client” (na płycie instalacyjnej programu w katalogu Dodatki), lub bezpośrednio w katalogu z programem Comarch ERP Optima. Plik OnlineFP.exe zawiera instalator odpowiedni dla systemów 32 i 64 bitowych. Aby zainstalować obsługę terminali płatniczych należy: 1. Plik OnlineFP.exe przegrać na końcówkę terminala. 2. Przeprowadzić instalację obsługi sterowników terminalowych na końcówce. Użytkownik Windows, który instaluje obsługę sterowników, musi mieć uprawnienia administratora. Oprogramowanie po stronie klienta składa się z plików obsługujących kanał wirtualny i z samych sterowników do terminali płatniczych. Wszystkie pliki kopiowane są do katalogu wskazanego podczas instalacji. Sterownik terminala nawiązuje połączenie z urządzeniem na wskazanym adresie TCP/IP lub porcie COM wybranym w konfiguracji programu pracującego po stronie pulpitu zdalnego. Należy zwrócić uwagę również na następujące aspekty: 1. Mechanizm komunikacji z terminalami płatniczymi nie wykorzystuje mapowania portów COM w samej usłudze terminalowej. 2. Przy aktualizacji wersji programu Comarch ERP Optima zaleca się również aktualizację sterowników na końcówce terminala. Odinstalowanie z poziomu panelu sterowania programu Comarch ERP Sterowniki i usługi terminalowe i zainstalowanie aktualnej wersji z pliku OnlineFP.exe Po prawidłowo wykonanej instalacji na końcówce terminala i konfiguracji komponentów na serwerze można wykonać test połączenia z terminalem płatniczym z poziomu konfiguracji programu.

Podłączenie kolektorów i kas fiskalnych

Komunikacja z tego typu urządzeniami odbywa się poprzez mapowanie portów COM pomiędzy stacją roboczą a sesją na komputerze usług terminalowych, na które pozwala protokół RDP. Z pracą tak podłączonych urządzeń wiążą się niekiedy kłopoty z czasem przesyłania danych z podpiętego urządzenia (z tego powodu dla drukarek fiskalnych wprowadzone są dodatkowe kanały przesyłania danych). Aby mapowanie urządzeń było możliwe w sesji terminalowej należy: Po stronie serwera: Sprawdzić czy mapowanie portów COM jest załączone w konfiguracji serwera usług terminalowych (Terminal Server Configuration)
Serwer Usług Terminalowych – mapowanie portów
Po stronie klienta: Załączyć parametr mapowania portów (LPT, COM) (ustawiamy to w oknie „Podłączanie pulpitu zdalnego” Opcje: zakładka Zasoby lokalne/Lokalne urządzenia i zasoby/Porty)
Właściwości klienta RDP – Mapowanie portów
Konfiguracja z poziomu programu wykonywana jest identycznie przy podłączeniu urządzenia bezpośrednio do komputera, mapowane porty COM będą widoczne jako kolejne porty na liście dostępnych portów w systemie.

Drukowanie na drukarki i urządzenia przez wydruki XML (tekstowe/inne)

Wydruki XML (tekstowy/inne) wysyłają rezutlat wydruku zawierający dane oraz kody sterujące dla urządzenia bezpośrednio do portu (LPT/USB/COM) przypisanego do urządzenia. Z reguły wysłanie tych danych odbywa się metodą kopiowania plików do określonego portu. Może to powodować problemy przy przesyłaniu tych danych z sesji terminalowej do urządzenia. Uruchamiając wysłanie danych z tych wydruków w konfiguracji połączenia należy włączyć opcję mapowania portów, identycznie jak w punkcie Podłączenie kolektorów i Kas Fiskalnych. Ta metoda nie pozwala jednak na wysyłanie danych do urządzeń pracującyh na portach USB, bywa też zawodna. Jeśli napotykamy na problem przesyłania danych bezpośrednio do mapowanych portów możemy, zastosować dodatkowy mechanizm przesyłania danych z wydruku do strumienia danych RAW sterownika drukarki, który został zmapowany w sesji. Opcja mapowania drukarek w konfiguracji połączenia sesji terminalowej musi być włączona. Do przesyłania danych do strumienia drukarki używamy dodatkowego programu RawPrint.exe. Pozwala on na przesłanie pliku utworzonego w sesji do strumienia drukarki – jako parametr podajemy nazwę pliku oraz nazwę drukarki w systemie Windows: RawPrint.exe “Oki ML3320 (from PCBIURO) in session 1” PlikDanych.dat Uruchomienie wydruku w takim trybie wykonujemy zmieniając sekcję [RUN] w definicji wydruku XML (od wersji 2013.6. możliwe jest przekazywanie parametrów do programu uruchamianego w sekcji RUN). W tej sekcji wprowadzamy komendę uruchamiającą program RawPrint lub kombinacje uruchomienia programu PrintTxt i RawPrint. Połączenie uruchomienia tych programów możemy zrealizować za pomocą pliku bat lub cmd umieszczonego w katalogu roboczym Comarch ERP Optima. W sekcji [RUN] podajemy nazwę pliku z komendami, np wykonaj_wydruk.bat:
Sekcja [RUN] w definicji wydruku
Program Printtxt w takiej sytuacji musi być skonfigurowany tak żeby wynik drukowania był zapisywany do pliku tekstowego, plik ten będzie wysyłany przez program RawPrint do drukarki docelowej.

Czytniki kodów kreskowych EAN

Program obsługuje czytniki kodów kreskowych podłączane szeregowo z klawiaturą. Czytniki te będą działać w sesji terminalowej bez dodatkowej konfiguracji.

Skanery dokumentów do współpracy z modułem OBD

W programie Comarch ERP Optima uruchamianej przez terminal jest możliwość podłączenia skanera. W tym celu należy zainstalować na końcówce sieciowej aplikacji OnlineFP.exe i w konfiguracji Optimy w gałęzi Stanowisko \ Ogólne \Parametry i załączyć parametr : Wymiana danych z komputerem lokalnym w pracy Terminalowej. Po wykonaniu powyższych czynności i przelogowaniu w programie Comarch ERP Optima, Skaner powinien być dostępny z poziomu modułu Obieg Dokumentów i pracować jak w sesji lokalnej.

Wysyłanie i odbieranie plików przez kanały wirtualne

W programie Comarch ERP Optima uruchamianej przez terminal jest możliwość wysyłania i odbierania plików na końcówce sieciowej w następujących funkcjach programu:
Funkcje w programie:
Eksport ustawień personalizacji.
Import urzędów,
Eksport wydruków.
Eksporty przelewów
Eksport i import kontrahentów
Export i import cennika
Eksporty do ECOD
Eksport i import danych kadrowych
Eksport wypłat
Eksport deklaracji ZUS do Płatnika
Eksport deklaracji PFRON do SODiR
Import czasu pracy z czytników RCP
Import z pliku KEDU
Eksport/import ustawień operatora.
Funkcje są dostępne w Comarch ERP Optima po zainstalowaniu na końcówce sieciowej aplikacji OnlineFP.exe i załączeniu w konfiguracji programu w gałęzi Stanowisko \ Ogólne \ Parametry parametru : Wymiana danych z komputerem lokalnym w pracy terminalowej. Dla pozostałych przypadków eksporty plików z programu wykonywane są na dyski serwera usług terminalowych, chyba że przy połączeniu terminalowy mapujemy dyski stacji lokalnej, to wówczas możemy pliki zapisać w tych lokalizacjach.

Pozostałe uwagi dotyczące konfiguracji Comarch ERP Optimy pracującej w usługach terminalowych

Uruchamianie Comarch ERP Przypominacz – program uruchomi się podczas logowania na serwer terminalowy, jeżeli nie było aktywnej sesji logującego się użytkownika; jeżeli użytkownik podłącza się pod istniejącą sesję, to program się nie uruchomi. Podpis elektroniczny dla e-maili, PDFów, e-Deklaracji – działa po konfiguracji certyfikatów po stronie serwera usług terminalowych bądź dla przekazywanie certyfikatów po stronie stanowiska. I tak:
  • Dla certyfikatów po stronie stanowiska sieciowego musimy zainstalować obsługę kanałów wirtualnych przez aplikację OnlineFP.exe a następnie załączyć w konfiguracji Comarch ERP Optima w gałęzi Stanowisko \ Ogólne \ Parametru parametr : Wymiana danych z komputerem lokalnym w pracy terminalowej.
  • Dla certyfikatów po serwera usług terminalowych certyfikaty klienta muszą być przeniesione na system z usługami terminalowymi. Na terminalu i serwerze należy zainstalować komponenty obsługi podpisu elektronicznego, dostarczane przez jego producenta. W opcjach połączenie zdalnego należy zaznaczyć „Mapuj zasoby lokalne – karty inteligentne”.
Współpraca z programem Płatnik – Możliwa jest na dwa sposoby:
  • Przez tworzenie plików dla płatnika z użyciem kanałów wirtualnych (Program płatnik pracuje po stronie stanowiska sieciowego)-punkt Wysyłanie i odbieranie plików przez kanały wirtualne,
  • Bądź przez instalacje Płatnika bezpośrednio na serwerze ( program Płatnik będzie pracował „po stronie” serwera TS ).
Menadżer Licencji powinien zostać skonfigurowany na komputerze z serwerem SQL, który znajduje się w tej samej sieci lokalnej co serwer terminalowy. Innymi słowy przy połączeniu przez Internet do serwera terminali nie ma możliwość korzystania z licencji po stronie Klienta, czyli Menadżera Licencji zainstalowanego w sieci lokalnej stanowiska, z którego uruchamiamy połączenie pulpitu zdalnego.