RON dokumentace

Editace měsíčních výsledků

Zobrazí formulář pro editaci mzdových položek a měsíčních výsledků. Používá se v nastavení Portálu pro společnou hromadnou editaci měsíčních výsledků nebo v XML formulářích.

V XML formulářích musí tomuto tagu předcházet tagy vyberobdobi a vyberrozdeleni (rozdělení může být nastaveno i pomocí tagu nastavrozdeleniformulare).
Zadané hodnoty se zapisují přímo do databáze do mzdových položek (aplikace = "ADS") a měsíčních výsledků. V případě změny se hodnoty přepisují - v databázi je vždy poslední zadaná hodnota.

  <editacemesicnich sirkapole="55" vcetnepodrizenych="0/1/2/3" datumpp="0/1/2/-x" prepocetdochazky="0/1/2" proklikzpracovana="0/1/2/3" kontrolovatprava="0/1" prava="kod_typu_prava">
    <filtreditacemesicnich>
       SQL filtr pro tabulky PracovniPomer a Osoba
    </filtreditacemesicnich>

    <sloupeceditacemesicnich typ="OSOBNICISLO"/>
    <sloupeceditacemesicnich typ="JMENO"/>
    <sloupeceditacemesicnich typ="PRIJMENI"/>
    <sloupeceditacemesicnich typ="JMENOPRIJMENI"/>

    <sloupeceditacemesicnich typ="MP"  kod="kod_mzdove_polozky" lzeeditovat="0/1/check" nadpis="Nadpis_Sloupce" rozlisitrozdeleni="0/1/2/3" minimum="castka" maximum="castka" kod_limit_minimum="kod_polozky_s_minimem" kod_limit="kod_polozky_s_limitem" povolitprekrocenilimitu="0/1" neprekrocitelnylimit="hodnota" skrytnuly="0/1" zobrazitsoucet="0/1" typrozdeleni="123" />
    <sloupeceditacemesicnich typ="PMP" kod="kod_mzdove_polozky" lzeeditovat="0/1/check" nadpis="Nadpis_Sloupce" rozlisitrozdeleni="0/1/2/3" povinna="0/1" />
    <sloupeceditacemesicnich typ="MV"  kod="kod_casove_slozky"  jednotka="H/D/K" lzeeditovat="0/1/check" nadpis="Nadpis_Sloupce" format="number2" skrytnuly="0/1" limit="hodnota" kod_limit="kod_polozky_s_limitem" povolitprekrocenilimitu="0/1" neprekrocitelnylimit="hodnota" zobrazitsoucet="0/1"/>
    <sloupeceditacemesicnich typ="PMV" kod="kod_casove_slozky"  lzeeditovat="0/1/check" nadpis="Nadpis_Sloupce" />
    <sloupeceditacemesicnich typ="R"   nadpis="Nadpis_Sloupce"  class="no-wrap align-left"/>
    <sloupeceditacemesicnich typ="RP"  nadpis="Nadpis_Sloupce" />
    <sloupeceditacemesicnich typ="ROZD"    typrozdeleni="123" datumrozdeleni="-1/0/1/2" nadpis="Nadpis_Sloupce" sqlfiltr="" />
    <sloupeceditacemesicnich typ="ROZDP"   typrozdeleni="123" datumrozdeleni="-1/0/1/2" nadpis="Nadpis_Sloupce" sqlfiltr="" />
    <sloupeceditacemesicnich typ="ROZDIMG" typrozdeleni="123" nadpis="Nadpis_Sloupce" />
    <sloupeceditacemesicnich typ="NASTUP"   nadpis="Datum nástupu" align="right" styl="color: #b0b0b0;"/>
    <sloupeceditacemesicnich typ="UKONCENI" nadpis="Ukončení PP" styl="font-weight:bold; color:red; text-align:right;"/>
    <sloupeceditacemesicnich typ="TYPPP"    nadpis="Typ PP" />
    <sloupeceditacemesicnich typ="UZIVATELSKA" index="1" nadpis="Uživ.1" styl="font-weight:bold"/>
    <sloupeceditacemesicnich typ="UZIVATELSKAPP" index="1" nadpis="Uživ. pracovního poměru 1" styl="font-weight:bold"/>
    <sloupeceditacemesicnich typ="SCHVAL1" nadpis="Schválení 1" styl='text-align:center'/>
    <sloupeceditacemesicnich typ="SCHVAL2" nadpis="Schválení 2" styl='text-align:center'/>
    <sloupeceditacemesicnich typ="SCHVAL3" nadpis="Schválení 3" styl='text-align:center'/>
    <sloupeceditacemesicnich typ="SCHVAL"  nadpis="Schválení"   styl='text-align:center'/>
    <sloupeceditacemesicnich typ="SCHVALMZDY" nadpis="Zpracováno ve mzdách" styl="text-align:center"/>
    <sloupeceditacemesicnich typ="EDIT" nadpis="" styl="text-align:center" target="zpracovanadochazkawin"/>
    <sloupeceditacemesicnich typ="SQL"  nadpis="" sql="SQL dotaz s parametry" zobrazitSoucet="1" />
    ...

    <textchybyneprekrocitelnylimit>Hláška, která se zobrazí při překročení hodnoty "neprekrocitelnylimit"</textchybyneprekrocitelnylimit>
  </editacemesicnich>

  <editacemesicnich sirkapole="55" datumpp="0/1/2/-x" prepocetdochazky="0/1" proklikzpracovana="0/1/2/3" prefix="MV1_" content="{$PROMENNA_S_OBSAHEM}" />

Parametry tagu editacemesicnich:

Parametr sirkapole určuje šířku editovatelného pole v pixelech
Parametr vcetnepodrizenych určuje, jestli se seznam osob načte včetně podřízených rozdělení
  • 0 = (výchozí hodnota) jen zaměstnanci ze zvoleného rozdělení
  • 1 = zaměstnanci ze zvoleného a všech podřízených rozdělení
  • 2 = zaměstnanci ze všech podřízených rozdělení mimo zvoleného
  • 3 = jen zaměstnanci z rozdělení přímo podřízených zvolenému rozdělení
Parametrem raditpodlerozdeleni je možné nastavit jestli se má seznam osob seřadit podle rozdělení.
Parametr datumpp určuje, podle kterého datumu se určí příslušnost zaměstnance do zvoleného rozdělení:
  • 0 = (výchozí hodnota) kdykoliv během zvoleného období
  • 1 = na začátku období
  • 2 = na konci období
  • -x = kdykoliv během x měsíců končících zvoleným obdobím (například -3 je čtvrtletí)
Parametr prepocetdochazky určuje, jestli se má po změně nějaké hodnoty provést pro daného zaměstnance přepočet docházky. Při hodnotě 2 se přepočet provede vždy (i když nedošlo k žádné změně)
Parametr proklikzpracovana určuje, jestli bude jméno zobrazeno jako odkaz (proklik) do zpracované docházky osoby. Možné hodnoty jsou:
  • 0 = proklik se vůbec nezobrazuje
  • 1 = zpracovaná docházka se otevře ve stejném okně prohlížeče - pokud uživatel něco editoval, tak se úpravy ztratí!
  • 2 = zpracovaná docházka se otevře v novém okně prohlížeče, ale při dalším kliknutí se použije totéž okno, co při předchozím
  • 3 = zpracovaná docházka se otevře vždy v novém okně prohlížeče
Parametr prefix slouží k rozlišení více tagů editacemesicnich v jednom formuláři. Pokud je tag ve formuláři jen jednou, tak tento parametr není povinný.
Parametr maxpocetosobproprepocet určuje maximální počet pracovních poměrů, které se přepočítají jedním voláním agenta ADS_Agent_Processing. Výchozí hodnota je 20.
Parametr parametryagentaprepoctu určuje parametry agenta, které se použijí pro přepočet docházky.
Parametr filtrovatzamestnance určuje jestli se načtou jen pracovní poměry s příznakem zamestnanec > 0 u kterých se zpracovává docházka. Výchozí hodnota je 1.
Parametr skrytduplicitni určuje jestli se každý pracovní poměr zobrazí jen jednou, i když je zařazen na více rozděleních.
Parametr kontrolovatprava umožňuje zapnout kontrolu práv na editaci měsíčních výsledků a mzdových položek i pokud je tag použit v samostatném XML. POZOR: Pokud uživatel nemůže zobrazit měsíční výsledek nebo mzdovou položku zaměstnance, zaměstnanec se vůbec nezobrazí.
Parametr prava umožňuje nastavit typ práv, kterým se řídí zobrazení seznamu osob. Pokud není nastaven, zobrazí se všechny osoby, kterým může uživatel prohlížet docházku nebo mzdové položky.
Parametr name umožňuje nastavit proměnnou zadaného jména - obsahuje řetězec se seznamem ID pracovních poměrů oddělených čárkou nebo zadaným oddělovačem. Dále nastavuje proměnnou <name>_pole, která také obsahuje seznam ID pracovních poměru ale jako pole.
Parametr delimiter umožňuje změnit oddělovač, který se použije pro proměnnou (viz parametr name).
Parametr fixedcols umožňuje nastavit počet sloupců, které zůstanou zobrazené při horizontálním scrolování stránky.
Parametr kontrolaobdobi umožňuje nastavit způsob kontroly uzavřeného období. Možné hodnoty jsou:
  • ads = Pokud je období uzavřeno v docházce nebo ve mzdách, nebude povolena editace. Tato hodnota je výchozí.
  • mzdy = Kontroluje se pouze uzavření období ve mzdách.
  • jenads = Kontroluje se pouze uzavření období v docházce.
  • prvniotevrene = Editace je povolena pouze v případě, že období otevřeno a předchozí období je již uzavřeno.
  • nekontrolovat = Uzavření období se vůbec neověřuje.
Parametr kodaplikace umožňuje nastavit kód aplikace, ze které se načítá období (2022-12: prozatím ale editacemesicnich nefunguje v databázi bez docházky - např. kvůli SchvaleniDochazky)
Parametr exportvariablename umožňuje export dat - například pro vygenerování obsahu sestavy. V případě že je nastaven, tak se do proměnné zadaného jména uloží obsah formuláře v textové podobě.
Parametr exportrowdelimiter umožňuje nastavit oddělovač řádků pro export. Výchozí hodnota je "\r\n".
Parametr exportcoldelimiter umožňuje nastavit oddělovač řádků pro export. Výchozí hodnota je ";".

Sloupce:

Parametr typ může být:
  • OSOBNICISLO - Osobní číslo
  • JMENO - Jméno
  • PRIJMENI - Příjmení
  • JMENOPRIJMENI - Jméno a příjmení
  • IDPP - Id pracovního poměru
  • MP - mzdová položka
  • PMP - poznámna mzdové položky - Pozor! Poznámka mzdové položky by měla být uvedena až za příslušnou mzdovou položkou.
  • MV - měsíční výsledek
  • PMV - poznámka k měsíčnímu výsledku - Pozor! Editovat lze jen časové složky, které nejsou přepočítávané docházkou!
  • R - kód rozdělení (typ rozdělení podle formuláře)
  • RP - zobrazí popis rozdělení (typ rozdělení podle formuláře)
  • ROZD - zobrazí kód rozdělení - je možné zadat sql filtr, např. "Hlavni = 1"
  • ROZDP - zobrazí popis rozdělení - je možné zadat sql filtr
  • ROZDIMG - zobrazí ikony rozdělení zadaného typu (podle nastavení pole cssClassObrazku)
  • NASTUP - datum nástupu
  • UKONCENI - datum ukončení
  • TYPPP - kód typu pracovního poměru
  • UZIVATELSKA - uživatelské pole z tabulky osoba - musí být zadán parametr index (1 - 20)
  • SCHVAL1 - schválení docházky úrovní 1 (zelená - zpracováno)
  • SCHVAL2 - schválení docházky úrovní 2 (žlutá - zkontrolováno)
  • SCHVAL3 - schválení docházky úrovní 3 (červená - schváleno)
  • SCHVAL - schválení docházky - zobrazí nejvyšší úroveň schválení, která je nastavena
  • SCHVALMZDY - schválení docházky - zobrazí jestli jsou již zpracovány mzdy
  • EDIT - odkaz na zobrazení zpracované docházky v novém okně
  • SQL - výsledek SQL dotazu s parametry %RC%, %OsobniCislo%, %DatumNastupu%, %PocatekObdobi%, %KonecObdobi%, %PocatekNasledujicihoObdobi%, %PocatekPredchozihoObdobi%, %KonecPredchozihoObdobi%, %PocatekCtvrtleti%, %KonecCtvrtleti%, %PocatekPredchozihoCtvrtleti%, %KonecPredchozihoCtvrtleti%
Pokud formulář obsahuje sloupec "R" nebo "RP", tak bude seznam osob podle rozdělení také seřazen (pokud není zároveň nastaveno u některého sloupce razeni). Sloupce ROZD a ROZDP musí mít zadán kód typu rozdělení. Parametr "datumrozdeleni" určuje, ke kterému dni se bude zjišťovat zařazení osoby na rozdělení (-1 = stejně jako datumpp u celého formuláře, 0 - kdykoliv v období, 1 - na začátku, 2 - na konci). Výchozí hodnota je -1.

Parametr nadpis určuje zobrazený nadpis sloupce
Parametr kod určuje kód mzdové položky/časové složky
Parametr title (nepovinný) umožňuje nastavit plovoucí titulek pro hlavičku sloupce
Parametr jednotka určuje, jestli se u časové složky zobrazí hodiny (H), dny (D) nebo kalendářní dny (K)
Parametr format určuje formát zobrazených dat. Může být např. int, number2, number_2, number1, number_1, nebo obecný formát pro funkci sprintf
Parametr skrytnuly určuje, jestli se mají skrýt nulové hodnoty (tj. pokud záznam v databázi je, ale obsahuje hodnotu 0)
Parametr zobrazitsoucet umožňuje skrýt součet ve sloupci. Pro typ sloupce SQL je ve výchozím nastavení vypnutý a je možné jej zapnout.
Parametr rozlisitrozdeleni u mzdové položky (a od verze 4.2112.158 také u poznámky mzdové položky) určuje, jestli se má načíst/zapsat mzdová položka pro zadané rozdělení.

  • 0 = rozdělení se nerozlišuje
  • 1 = rozdělení se určí podle formuláře
  • 2 = rozdělení se určí podle rozdělení osoby na řádku (Typ rozdělení pro 1 i 2 se určí dle formuláře)
  • 3 = rozdělení se určí podle rozdělení osoby (Typ rozdělení se určí dle formuláře, nebo z atributu typrozdeleni
Parametr lzeEditovat určuje, jestli je sloupec editovatelný. Hodnota "check" určuje, že se zobrazí jako checkbox.
Parametr pravaEditace určuje typ práva, který se použije pro určení práva uživatele na editaci buňky. Pokud není zadán, vybere se automaticky podle typu sloupce.
Parametr maximum (nepovinný, původní název parametru limit) určuje maximální povolenou hodnotu
Parametr minimum (nepovinný) určuje minimální povolenou hodnotu. Kontroluje se jen v případě, že je hodnota zadána.
Parametr kod_limit_minimum (nepovinný) určuje kód časové složky/mzdové položky, která určuje minimální limit
Parametr kod_limit (nepovinný) určuje kód časové složky/mzdové položky, která určuje maximální limit
Parametr povolitprekrocenilimitu (nepovinný) určuje, jestli je povoleno překročit zadaný limit. Pokud ano, tak v případě překročení musí uživatel navíc zaškrtnout "Souhlasím s překročením limitu".
Parametr neprekrocitelnylimit (nepovinný) určuje maximální možnou hodnotu, které nemůže být překročena ani při zaškrtnutí "Povolit překročení"
Parametr povinna u poznámky určuje, jestli musí být poznámka vyplněna, pokud je zadána nějaká hodnota
Pomocí parametru default je možné přednastavit výchozí text, který se zobrazí, pokud položka nemá žádnou hodnotu.
Pomocí parametru align lze nastavit zarovnání sloupce (left, right, center)
Pomocí parametru class lze nastavit css třídu sloupce
Pomocí parametru headerclass lze nastavit css třídu záhlaví sloupce
Pomocí parametru footerclass lze nastavit css třídu patičky sloupce
Pomocí parametru styl (viz příklad u "R") lze nastavit css styl sloupce tabulky
Pomocí parametru format je možné nastvit formát zobrazené hodnoty, např. number1, number_1, number2, number_2, int, hodiny, minuty, sekundy, timeofday, anone
Parametrem prava je možné ovlivnit viditelnost hodnot v daném sloupci, nebo skrýt celý sloupec. Zadává se kód typu práva. Hodnota ve sloupci se zobrazí jen v případě, že má uživatel na daného zaměstnance příslušné právo. Pokud uživatel nemá toto právo vůbec (má nastaveno zakázat), tak se sloupec nezobrazí.
Parametrem profil se omezí zobrazení sloupce jen pro uživatele se zadaným profilem. Je možné zadat i více profilů oddělených středníkem.
Parametrem condition je možné zadat PHP podmínku, která určí, jestli se sloupec má zobrazit. V podmínce je možné použít proměnnou %OBDOBI%. Například zobrazení sloupce jen pro první měsíc v roce lze provést takto: condition="date('n', %OBDOBI%) == 1"
Parametr razeni zajistí, že se podle tohoto sloupce seznam seřadí. Zadejte celé kladné číslo. Pokud je více sloupců s nastaveným řazeným, tak se data řadí postupně podle hodnoty parametru, tj. nejdříve podle sloupce s razeni="1", pak podle sloupce s razeni="2" atd.
Parametr options umožňuje nastavit seznam možných voleb (jednotlivé texty oddělené středníkem). Pozor! Texty musí odpovídat zobrazovaným hodnotám. Příklad: options=";500,00;1 000,00;2 000,00"
Parametr export určuje, na jaký výstup se bude sloupec zobrazovat. Pokud je prázdný (výchozí hodnota), zobrazí se všude. Hodnota html nastaví zobrazení jen pro HTML stránku (nebude v exportu), hodnota export mastaví zobrazení jen do exportu (nebude v html)
Parametr exportFormat určuje formát pro export (funguje stejně jako parametr format, ale použije se při generování dat pro export).

Tagem filtreditacemesicnich (nepovinný) je možné omezit výběr osob pomocí SQL dotazu

U tagu editacemesicnich lze použít i parametr sloupce, ale je zastaralý! Místo něj je vhodnější (a především přehlednější) použít vnořené tagy sloupeceditacemesicnich
sloupce="sloupec1;sloupec2;sloupec3..." - určuje mzdové položky a sloupce, které se zobrazí a případně budou editovat.
Formát sloupce:
MP:[kod]:0/1:Nadpis sloupce - kod je kód mzdové pložky, 0/1 určuje, jestli bude editovatelný
MV:[kod]:H/D/K:0/1:Nadpis sloupce - kod je kód časové složky, H/D/K určuje jednotku (hodiny/dny/kalendářní dny), 0/1 určuje, jestli bude editovatelný
Obsah může být zadán také pomocí parametru content - v něm je možné zadat například proměnnou načtenou pomoci <sqlvariable> nebo <longvariable>. Pokud je parametr content zadán, tak je případný vnitřní obsah tagu ignorován.