Pom11: Porovnání verzí
Z Prirucky
(Stránka vyprázdněna) |
|||
| Řádek 1: | Řádek 1: | ||
'''Překročení maxima vyměřovacího základu pro sociální pojištění (sestava)''' | |||
Požadavkem je zobrazení | |||
* '''zaměstnanců''', kteří v daném roce překročili vyměřovací základ a | |||
* '''období''', kdy k tomu došlo. | |||
: Období od: ''první měsíc roku'' | |||
: Období do: ''poslední měsíc roku'' | |||
První sestava uvádí každého zaměstnance jednou, druhá včetně následujících měsíců. | |||
== První období == | |||
[[Image: Prekroceni-maxima-vymerovaciho-zakladu-soc-poj.png]] | |||
select A.os_cislo, A.prijmeni, A.jmeno, B.soc_uhrn_vz_x, | |||
(select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | |||
and | |||
(plati_do >= %DATUMOD% or plati_do is null)) as max_vz_socpoj, | |||
B.soc_uhrn_vz_x - | |||
(select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | |||
and | |||
(plati_do >= %DATUMOD% or plati_do is null)) | |||
as rozdil, | |||
B.datum from | |||
pracovnici A, telegram B | |||
where | |||
A.os_cislo = B.os_cislo and | |||
B.datum >= %DATUMOD% and B.datum <= %DATUMDO% and | |||
B.soc_uhrn_vz_x > | |||
(select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | |||
and | |||
(plati_do >= %DATUMOD% or plati_do is null)) | |||
and | |||
B.datum = | |||
(select min(C.datum) from telegram C | |||
where B.os_cislo = C.os_cislo and | |||
C.soc_uhrn_vz_x > | |||
(select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | |||
and | |||
(plati_do >= %DATUMOD% or plati_do is null)) | |||
and C.datum >= %DATUMOD% and C.datum <= %DATUMDO%) | |||
order by A.os_cislo, B.datum | |||
== I následující období == | |||
[[Image: Prekroceni-maxima-vymerovaciho-zakladu-soc-poj-i-dale.png]] | |||
select A.os_cislo, A.prijmeni, A.jmeno, B.soc_uhrn_vz_x, | |||
(select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | |||
and | |||
(plati_do >= %DATUMOD% or plati_do is null)) as max_vz_socpoj, | |||
B.soc_uhrn_vz_x - | |||
(select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | |||
and | |||
(plati_do >= %DATUMOD% or plati_do is null)) | |||
as rozdil, | |||
B.datum from | |||
pracovnici A, telegram B | |||
where | |||
A.os_cislo = B.os_cislo and | |||
B.datum >= %DATUMOD% and B.datum <= %DATUMDO% and | |||
B.soc_uhrn_vz_x > | |||
(select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | |||
and | |||
(plati_do >= %DATUMOD% or plati_do is null)) | |||
order by A.os_cislo, B.datum | |||
== Odkazy == | |||
* [[Maximální vyměřovací základ pro sociální pojištění]] | |||
* [[Generátor sestav II (příklady sestav)]] | |||
* [[Vyměřovací základy a pojistné (sestava) - Roční přehled/potvrzení]] | |||
Verze z 10. 11. 2015, 12:28
Překročení maxima vyměřovacího základu pro sociální pojištění (sestava)
Požadavkem je zobrazení
- zaměstnanců, kteří v daném roce překročili vyměřovací základ a
- období, kdy k tomu došlo.
- Období od: první měsíc roku
- Období do: poslední měsíc roku
První sestava uvádí každého zaměstnance jednou, druhá včetně následujících měsíců.
První období
select A.os_cislo, A.prijmeni, A.jmeno, B.soc_uhrn_vz_x, (select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% and (plati_do >= %DATUMOD% or plati_do is null)) as max_vz_socpoj, B.soc_uhrn_vz_x - (select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% and (plati_do >= %DATUMOD% or plati_do is null)) as rozdil, B.datum from pracovnici A, telegram B where A.os_cislo = B.os_cislo and B.datum >= %DATUMOD% and B.datum <= %DATUMDO% and B.soc_uhrn_vz_x > (select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% and (plati_do >= %DATUMOD% or plati_do is null)) and B.datum = (select min(C.datum) from telegram C where B.os_cislo = C.os_cislo and C.soc_uhrn_vz_x > (select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% and (plati_do >= %DATUMOD% or plati_do is null)) and C.datum >= %DATUMOD% and C.datum <= %DATUMDO%) order by A.os_cislo, B.datum
I následující období
select A.os_cislo, A.prijmeni, A.jmeno, B.soc_uhrn_vz_x, (select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% and (plati_do >= %DATUMOD% or plati_do is null)) as max_vz_socpoj, B.soc_uhrn_vz_x - (select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% and (plati_do >= %DATUMOD% or plati_do is null)) as rozdil, B.datum from pracovnici A, telegram B where A.os_cislo = B.os_cislo and B.datum >= %DATUMOD% and B.datum <= %DATUMDO% and B.soc_uhrn_vz_x > (select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% and (plati_do >= %DATUMOD% or plati_do is null)) order by A.os_cislo, B.datum

