Rekapitulace (Vyúčtování)

Z Prirucky

Rekapitulace (Vyúčtování) je přehled o počtu zpracovaných mezd v daném období.

Rekapitulace-vyuctovani.png

Menu: Mzdy > Vyúčtování zaměstnanců > Rekapitulace
Menu: Evidence > MaPExpress > Vyúčtování zaměstnanců > Rekapitulace

  • Počet zaměstnanců ve stavu

Počet záznamů (osobních čísel) z agendy Osobní údaje (pracovnici), u nichž datum nástupu je dřívější než zvolené datum (datum - ldDatum je v tomto případě o 1 měsíc posunutý kupředu) a datum výstupu je buď nevyplněno nebo má hodnotu pozdější než zvolené datum.

IF ldDatum < gd_prvni THEN select count(a.os_cislo) into :llPocet from prac_zal a where a.datum_nastupu < :ldDatum and (a.datum_vystupu >= :ldDatum or a.datum_vystupu is null) and a.datum = :ldDatum and a.id_podniku = :llIdPodniku; ELSE select count(a.os_cislo) into :llPocet from pracovnici a where a.datum_nastupu < :ldDatum and (a.datum_vystupu >= :ldDatum or a.datum_vystupu is null) and a.id_podniku = :llIdPodniku; END IF

  • Počet zaměstnanců v mimoevidečním stavu

IF ldDatum < gd_prvni THEN select count(a.os_cislo) into :llPocet from prac_zal a where a.os_cislo in (select distinct(os_cislo) from pichacky where kod in (select kod from ciselnik where ind_abs = 3) and datum = :ldDatum) and a.datum = :ldDatum and a.id_podniku = :llIdPodniku; ELSE select count(a.os_cislo) into :llPocet from pracovnici a where a.os_cislo in (select distinct(os_cislo) from pichacky where kod in (select kod from ciselnik where ind_abs = 3) and datum = :ldDatum) and a.id_podniku = :llIdPodniku; END IF

  • Počet spočtených výplat

Počet osobních čísel, která se vyskytují v tabulce telegram daného období (tj. byli spočteni). Mělo by být stejné jako hodnota následující položky.

IF ldDatum < gd_prvni THEN select count(a.os_cislo) into :llPocet from prac_zal a,telegram b where a.os_cislo = b.os_cislo and a.id_podniku = :llIdPodniku and a.datum = :ldDatum and b.datum = :ldDatum; ELSE select count(a.os_cislo) into :llPocet from pracovnici a,telegram b where a.os_cislo = b.os_cislo and a.id_podniku = :llIdPodniku and b.datum = :ldDatum; END IF

  • Počet výplatních lístků

Počet zaměstnanců, kteří (spadají do navoleného podniku při víceIČ a zároveň) mají ve Zpracování brutto zvoleného období nějakou položku (různou od 501).

IF ldDatum < gd_prvni THEN select count(a.os_cislo) into :llPocet from prac_zal a where a.os_cislo in (select distinct os_cislo from pichacky where datum = :ldDatum and kod <> 501 ) and a.datum = :ldDatum and a.id_podniku = :llIdPodniku; ELSE select count(a.os_cislo) into :llPocet from pracovnici a where a.os_cislo in (select distinct os_cislo from pichacky where datum = :ldDatum and kod <> 501 ) and a.id_podniku = :llIdPodniku; END IF

Kontrolní sestava:
select P.os_cislo, A.prijmeni, A.jmeno, P.datum, A.id_podniku, count(*) as pocet from pichacky P, pracovnici A where P.os_cislo = A.os_cislo and P.datum = '2022-07-01' and P.os_cislo <>0 and P.kod <>501 group by P.os_cislo, A.prijmeni, A.jmeno, P.datum, A.id_podniku order by P.os_cislo;

  • Počet výplatních lístků po výstupu

Počet zaměstnanců, kteří (spadají do navoleného podniku při víceIČ a zároveň) mají vyplněné datum výstupu hodnotou dřívější než zvolené datum a zároveň mají ve Zpracování brutto zvoleného období nějakou položku (různou od 501).

Pokud je navoleno aktuální období, získává se datum výstupu z agendy Osobní údaje (tab: pracovnici). Pokud je navoleno minulé období, získává se datum výstupu takové, jakou mělo hodnotu v onom minulém období v agendě Osobní údaje (tab: prac_zal).

IF ldDatum < gd_prvni THEN select count(a.os_cislo) into :llPocet from prac_zal a where a.os_cislo in (select distinct os_cislo from pichacky where datum = :ldDatum and kod <> 501 ) and a.datum = :ldDatum and a.datum_vystupu < :ldDatum and a.id_podniku = :llIdPodniku; ELSE select count(a.os_cislo) into :llPocet from pracovnici a where a.os_cislo in (select distinct os_cislo from pichacky where datum = :ldDatum and kod <> 501 ) and a.datum_vystupu < :ldDatum and a.id_podniku = :llIdPodniku; END IF

Odkazy