Pom19: Porovnání verzí

Z Prirucky
(stránka vyprázdněna)
značka: vyprázdnění
 
(Není zobrazeno 309 mezilehlých verzí od stejného uživatele.)
Řádek 1: Řádek 1:
'''Počet zpracovaných osobních čísel''' je sestava určená pro [[Generátor sestav II]]. Využívá se například v případě [[víceIČ]] databází jako přehled o tom, kolik zaměstnanců prošlo zpracováním mezd v jednotlivých podnicích.


== Počty osobních čísel ==
Období: to, které zadá uživatel v poli "datum od" <br>
Vyhodnocení: počítají se ta osobní čísla, která prošla zpracováním mezd tak, že mají alespoň jednu položku v agendě [[Zpracování brutto]]. Pokud by měl jenom mzdovou položku 501, takový se nepočítá. <br>
Určeno pro MS SQL
<small>
select osoby.id_podniku, <br>
nazev, <br>
count(distinct os_cislo) <br>
from osoby, osoby_typ, pichacky <br>
where osoby.id_osoby = osoby_typ.id_osoby <br>
and osoby_typ.typ in ('sh', 'vl') <br>
and osoby.id_podniku = pichacky.id_podniku <br>
and datum = %DATUMOD% <br>
and kod <> 501 <br>
and pichacky.os_cislo <> 0 <br>
group by osoby.id_podniku, nazev <br>
order by osoby.id_podniku <br>
</small>
<!-- Dřívější definice - není funkční nad MS SQL, jenom nad Informix. Přepracoval P.Zbránek dne 1.10.2014. Vavíc ve spolupráci P.M. a Z.V. doplněna podmínka, že os_cislo <> 0, protože jinak výsledek byl chybný vždy o 1 navíc (v tab. pichacky jsou společné záznamy pro os_cislo = 0.
<small>
select id_podniku, <br>
(select nazev from osoby where id_podniku = pichacky.id_podniku and id_osoby in (select id_osoby from osoby_typ where typ in ('vl', 'sh'))) as nazev, <br>
count(distinct os_cislo) <br>
from pichacky where datum =
%DATUMOD% and kod <> 501 group by 1, 2 order by id_podniku;
</small>
-->
== Počty osobních čísel i čísel poměrů ==
''Dotaz: Bylo by možné, aby kromě počtu zaměstnanců byl uveden i počet pracovních poměrů? Pokud by všichni zaměstnanci měli jeden pracovní poměr, tak by se počet zaměstnanců a počet pracovních poměrů shodoval. Ale pokud má někdo více pracovních poměrů, tak abychom i o tomto měli přehled.''
<!-- Žůrek: EKONA -->
<small>
select osoby.id_podniku, <br>
nazev, <br>
count(distinct os_cislo) as poc_os, <br>
count(distinct (cast(os_cislo as char) + cast (cislo_pom as char))) as poc_os_pom <br>
from osoby, osoby_typ, pichacky <br>
where osoby.id_osoby = osoby_typ.id_osoby <br>
and osoby_typ.typ in ('sh', 'vl') <br>
and osoby.id_podniku = pichacky.id_podniku <br>
and datum = %DATUMOD% <br>
and kod <> 501 <br>
and pichacky.os_cislo <> 0 <br>
group by osoby.id_podniku, nazev
order by osoby.id_podniku
</small>
== Odkazy ==

Aktuální verze z 22. 1. 2026, 12:50