Export do docházkového systému

Z Prirucky

V některých případech může být zpracován i směr opačný, tzn. z KS do docházkového systému. Jedná se obvykle o přenos zaměstnanců, tzn. klíčové údaje k zaměstnanci se zadávají v systému KS a v docházkovém systému se objeví automaticky nebo na stisk tlačítka nebo nějakou aktualizací v určitých časových intervalech.

Technické řešení je formou tzv. databázového pohledu – view. Databázový pohled se vytváří v databázi KS-programu a docházka se na něj "připojí". Z toho plyne, že po vytvoření pohledu je potřeba nastavit práva pro uživatele, pod kterým bude docházka data číst (v docházkovém systému musí mít uživatel nastavena práva na toto view – ten uživatel, který bude provádět načtení těchto dat, pomocí nějakého tlačítka či funkce v docházkovém systému). Seznam položek je vidět v přiloženém scriptu – jedná se o příklad, který je v konkrétním případě potřeba upravit (změnit, vytvořit nový).

Zaměstnanci

Příklad view:

CREATE VIEW W_PRAC AS 
SELECT     pracovnici.os_cislo, pracovnici.jmeno, pracovnici.prijmeni, pracovnici.titul, pracovnici.titul_za, 
pracovnici.misto_trv,  pracovnici.ulice_trv,  
pracovnici.psc_trv, prac_pom.cislo_pom, 
CONVERT(datetime, prac_pom.datum_nastupu) AS datum_nastupu, 
CONVERT(datetime,prac_pom.datum_ukonc) AS datum_ukonc, 
prac_pom.prac_str, pracovnici.model_pd AS mzda, 
CASE WHEN prac_pom.dov_predmin IS NULL  THEN 0 ELSE prac_pom.dov_predmin END + 
CASE WHEN prac_pom.zbyv_rd_min_rok IS NULL  THEN 0 ELSE prac_pom.zbyv_rd_min_rok END + 
CASE WHEN prac_pom.rd_letos IS NULL THEN 0 ELSE prac_pom.rd_letos END + 
CASE WHEN prac_pom.dov_dodatk IS NULL THEN 0 ELSE prac_pom.dov_dodatk END AS dovnar,  
CONVERT(datetime, par_mzdy.datum_prvni) AS datumtrn 

FROM prac_pom, pracovnici, par_mzdy 
WHERE pracovnici.os_cislo = prac_pom.os_cislo AND prac_pom.druh_pom = '1' 
and (DATEADD(day, 30, CONVERT(datetime, prac_pom.datum_ukonc))>= GETDATE() OR prac_pom.datum_ukonc IS NULL )

CREATE VIEW W_STRED AS select str as STR,nazev as NAZEV from STRED WITH check option

Další položky, které využívá nebo může využívat view:

  • Model pracovní doby

Položka se nachází v agendě Osobní údaje. Před prvním použitím zde je potřeba naplnit hodnoty do číselníku: Evidence/Číselníky/ Univerzální číselníky; modely pracovní doby.

  • Číslo čipové karty

Číslo čipové karty je umožněno pořizovat v agendě Evidence zaměstnanců, záložce Docházka.

Dch. systém Cominfo: os.číslo, prac.středisko, příjmení, jméno, titul, datum nástupu, datum ukončení, mzdové období - rok a měsíc, údaje o dovolené. Jen hlavní pracovní poměry a aktivní v daném období.

Dokladované nepřítomnosti

Účelem tohoto propojení je zavedení kontrolní funkce výkazu nepřítomností v evidenci docházky. Některé nepřítomnosti, jako nemoc, OČR, mateřská, jsou do mezd KS zadávány přímo na základě dokladu od zaměstnance. Tyto nepřítomnosti se již z docházkového systému do mezd nepřenáší. Ve vykazování docházky poté mohou nastat chyby omylem vykázaných mzdových složek jiných nepřítomností, které se mohou do mezd přenést. Tím mohou vznikat chyby i při vyhodnocení mezd. Přenosem informací o těchto nepřítomnostech lze zavést kontrolní mechanizmus, který bude případné chyby detekovat již v docházkovém systému a umožní jejich eliminaci ještě před přenosem do mezd.


Data mohou být poskytnuta ve formě pohledu (view). Na databázi u zákazníka je potřeba spustit následující příkaz (je možno i v aplikaci v menu SQL prompt. Následující příkaz je pro použití v docházkovém systému Cominfo Zlín. Příklad:

create view W_ABSENCE as select 
os_cislo as PERNUM,
cislo_pom,
kod as GCODE,
dat_od as FDATE,
dat_do as TDATE
from absence where zpet_propl <> 's';

Případné zrušení view proběhne prostřednictvím příkazu: drop view W_ABSENCE.

Datum ve formátu pro MS SQL je YYYY-MM-DD. Pokud by bylo potřeba jinak, bude nutno použít nějakou konverzní funkci MS SQL a upravit vytvoření view.

Číslování kódů je dle KS-programu. Přehled nejdůležitějších kódů zadávaných jako dokladované nepřítomnosti:

Dokladované nepřítomnosti KS
Kód Název
511 Nemoc
509 Neprac.úraz
508 Prac.úraz
831 Karanténa
517 Nemoc z povolání
512 Ošetřování člena rodiny
843 Ošetřování neplacené
852 Mateřská dovolená
510 Rodičovská dovolená

zpět