Překročení maxima vyměřovacího základu pro sociální pojištění (sestava): Porovnání verzí
Z Prirucky
(Založena nová stránka: '''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či…) |
|||
| (Nejsou zobrazeny 2 mezilehlé verze od stejného uživatele.) | |||
| Řádek 8: | Řádek 8: | ||
: Období do: ''poslední 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í sestava uvádí každého zaměstnance jednou, druhá vícekrát (včetně následujících měsíců). Nejsou uváděni [[A1|zaměstnanci A1]] (dříve E101). | ||
== První období == | == První období == | ||
[[Image: Prekroceni-maxima-vymerovaciho-zakladu-soc-poj.png]] | [[Image: Prekroceni-maxima-vymerovaciho-zakladu-soc-poj.png]] | ||
select A.os_cislo, A.prijmeni, A.jmeno, B.soc_uhrn_vz_x, | <small>Pozn. Proti obrázku přidána ještě tři pole: B.soc_zakl, B.soc_zakl_x, B.soc_uhrn_vz </small> | ||
select A.os_cislo, A.prijmeni, A.jmeno, B.soc_zakl, B.soc_zakl_x, B.soc_uhrn_vz, B.soc_uhrn_vz_x, | |||
(select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | (select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | ||
and | and | ||
| Řádek 28: | Řádek 30: | ||
where | where | ||
A.os_cislo = B.os_cislo and | A.os_cislo = B.os_cislo and | ||
(B.e101 is null or B.e101<>'a') and | |||
B.datum >= %DATUMOD% and B.datum <= %DATUMDO% and | B.datum >= %DATUMOD% and B.datum <= %DATUMDO% and | ||
B.soc_uhrn_vz_x > | B.soc_uhrn_vz_x > | ||
| Řádek 69: | Řádek 71: | ||
B.datum >= %DATUMOD% and B.datum <= %DATUMDO% and | B.datum >= %DATUMOD% and B.datum <= %DATUMDO% and | ||
(B.e101 is null or B.e101<>'a') and | |||
B.soc_uhrn_vz_x > | B.soc_uhrn_vz_x > | ||
(select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | (select hodnota from e_param where polozka = 'max_vz_socpoj' and plati_od <= %DATUMOD% | ||
Aktuální verze z 29. 2. 2016, 10:51
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ícekrát (včetně následujících měsíců). Nejsou uváděni zaměstnanci A1 (dříve E101).
První období
Pozn. Proti obrázku přidána ještě tři pole: B.soc_zakl, B.soc_zakl_x, B.soc_uhrn_vz
select A.os_cislo, A.prijmeni, A.jmeno, B.soc_zakl, B.soc_zakl_x, B.soc_uhrn_vz, 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.e101 is null or B.e101<>'a') 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.e101 is null or B.e101<>'a') 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

