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 zjišťováno jako celek
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
  (select sum(podil) from registr_zam C where C.os_cislo = A.os_cislo and
and
    (C.plati_od is null or C.plati_do <= %DATUMDO%) and
  (C.plati_od is null or C.plati_do <= %DATUMDO%) and
    (C.plati_do is null or C.plati_do >= %DATUMOD%)
  (C.plati_do is null or C.plati_do >= %DATUMOD%)
  ) as celkem,  
  ) 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>


[[Image: Reg ukaz mes plneni gen sestav.png]]
== 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ů.

Registr ukazatelu logicky navrh.png

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í

Registr ukazatelu db tabulky.png

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

Příklad výpočtu zaměstnance s přiznaným os.hodnocením ve výši 10 000 Kč
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
45
4 500
121.78541
40.40343
5 480.34
348 Náklady střediska
25
2 500
105.54213
26.38553
2 638.55
278 Dodržení limitu vnitřních ztrát
30
3 000
94.45632
37.33689
2 833.69
100
10 000
104.12585
10 952.58

Sestavy

Reg ukaz zam gen sest.png

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%);


Reg ukaz plneni gen sest.png

select A.kod, A.upraveno, B.nazev from plneni A, cis_ukazatele B
where A.kod = B.kod and A.obdobi = %DATUMOD%;

Reg ukaz mes plneni gen sestav.png

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%;

Odkazy