Pom15: Porovnání verzí
Z Prirucky
| Řádek 47: | Řádek 47: | ||
== Sestavy == | == Sestavy == | ||
[[Image: Reg ukaz zam gen sest.png]] | [[Image: Reg ukaz zam gen sest.png|500px]] | ||
Pozn. Celkem je | Pozn. Hodnota ''Celkem'' je zjišťována jako celek k zaměstnanci - bez ohledu na číslo poměru (v případě více poměrů se sčítá), jen s ohledem na platnosti od - do. | ||
<small> | <small> | ||
select A.os_cislo, B.prijmeni, B.jmeno, A.cislo_pom, A.kod, A.podil, A.plati_od, A.plati_do, | select A.os_cislo, B.prijmeni, B.jmeno, A.cislo_pom, A.kod, A.podil, A.plati_od, A.plati_do, | ||
(select sum(podil) from registr_zam C where C.os_cislo = A.os_cislo and | |||
(C.plati_od is null or C.plati_do <= %DATUMDO%) and | |||
(C.plati_do is null or C.plati_do >= %DATUMOD%) | |||
) as celkem, | |||
D.nazev | D.nazev | ||
from registr_zam A left outer join cis_ukazatele D on A.kod = D.kod, | from registr_zam A left outer join cis_ukazatele D on A.kod = D.kod, | ||
| Řádek 67: | Řádek 66: | ||
[[Image: Reg ukaz plneni gen sest.png]] | [[Image: Reg ukaz plneni gen sest.png|500px]] | ||
<small> | |||
select A.kod, A.upraveno, B.nazev from plneni A, cis_ukazatele B | |||
where A.kod = B.kod and A.obdobi = %DATUMOD%; | |||
</small> | |||
[[Image: Reg ukaz mes plneni gen sestav.png|500px]] | |||
<small> | |||
select A.os_cislo, B.prijmeni, B.jmeno, A.cislo_pom, | |||
A.kod, A.podil, A.plati_od, A.plati_do, | |||
(select sum(podil) from registr_zam C where C.os_cislo = A.os_cislo and | |||
(C.plati_od is null or C.plati_do <= %DATUMDO%) and | |||
(C.plati_do is null or C.plati_do >= %DATUMOD%) | |||
) as celkem, | |||
E.upraveno | |||
from registr_zam A left outer join plneni E on A.kod = E.kod, pracovnici B | |||
where | |||
A.os_cislo = B.os_cislo and | |||
(A.plati_od is null or A.plati_do <= %DATUMDO%) and | |||
(A.plati_do is null or A.plati_do >= %DATUMOD%) and | |||
E.obdobi = %DATUMOD%; | |||
</small> | |||
== Odkazy == | |||
Verze z 24. 2. 2016, 12:42
Registr ukazatelů je zákaznická specialita pro výpočet osobního hodnocení závislého na měsíčních výsledcích plnění tzv. ukazatelů.
Logický návrh
- Číselník ukazatelů - ukazatel je identifikován svým kódem, má název a další atributy.
- Plnění - pro dané období (kalendářní měsíc roku) je pro každý použitý ukazatel stanovena plánovaná hodnota a vyhodnocována dosažená hodnota. Z těchto dvou hodnot je možno stanovit plnění v %. Pro další práci je vyčíslováno tzv. upravené plnění, jehož výpočet je mj. závislý na dalších atributech ukazatele v číselníku.
- Zaměstnanci - zaměstnanec může mít stanoven podíl na vybraných ukazatelích, obvykle do určitého maximálního počtu (např. 5), a ke každému ukazateli má zaměstnanec stanovenu váhu. Součet vah u zaměstnance je (interním pravidlem, není nutné) koncipován na výsledek 100%.
Zpracování
Tabulky
Konkrétní zpracování vyústilo do podoby, v níž níže uvedené databázové tabulky jsou obsaženy v databázi aplikaci.
- cis_ukazatele - systém data z tabulky pouze čte; o zápis se stará strana uživatele.
- plneni - systém data z tabulky pouze čte; o zápis se stará strana uživatele.
- registr_zam - aktuálně data naplněna jednorázově a opravy/úpravy/přidávání je zabezpečeno jinými způsoby (sql). Do budoucna může být zpracována uživatelská obsluha těchto dat v aplikaci.
Výpočet osobního hodnocení
osobní hodnocení (vypočtené) = osobní hodnocení (přiznané) * součet 1..n (podíl * upravené plnění)
Pozn. z tab. plneni se čte a pro výpočet použije hodnota upraveno.
Příklad
| Kód ukaz. | Název ukazatele | Podíl u zaměstnance (%) | Hypotetická částka (při 100% plnění) | Výsl.plnění (%) | Mezivýsledek (%) | Mezivýsledek (Kč) |
| 127 | Ekonomické výsledky střediska | |||||
| 348 | Náklady střediska | |||||
| 278 | Dodržení limitu vnitřních ztrát | |||||
Sestavy
Pozn. Hodnota Celkem je zjišťována jako celek k zaměstnanci - bez ohledu na číslo poměru (v případě více poměrů se sčítá), jen s ohledem na platnosti od - do.
select A.os_cislo, B.prijmeni, B.jmeno, A.cislo_pom, A.kod, A.podil, A.plati_od, A.plati_do, (select sum(podil) from registr_zam C where C.os_cislo = A.os_cislo and (C.plati_od is null or C.plati_do <= %DATUMDO%) and (C.plati_do is null or C.plati_do >= %DATUMOD%) ) as celkem, D.nazev from registr_zam A left outer join cis_ukazatele D on A.kod = D.kod, pracovnici B where A.os_cislo = B.os_cislo and (A.plati_od is null or A.plati_do <= %DATUMDO%) and (A.plati_do is null or A.plati_do >= %DATUMOD%);
select A.kod, A.upraveno, B.nazev from plneni A, cis_ukazatele B where A.kod = B.kod and A.obdobi = %DATUMOD%;
select A.os_cislo, B.prijmeni, B.jmeno, A.cislo_pom,
A.kod, A.podil, A.plati_od, A.plati_do,
(select sum(podil) from registr_zam C where C.os_cislo = A.os_cislo and
(C.plati_od is null or C.plati_do <= %DATUMDO%) and
(C.plati_do is null or C.plati_do >= %DATUMOD%)
) as celkem,
E.upraveno
from registr_zam A left outer join plneni E on A.kod = E.kod, pracovnici B
where
A.os_cislo = B.os_cislo and
(A.plati_od is null or A.plati_do <= %DATUMDO%) and
(A.plati_do is null or A.plati_do >= %DATUMOD%) and
E.obdobi = %DATUMOD%;