_DiaBonus

(dim Nazev         : String,
 dim Typ           : Integer,
 dim ZpusobVyp     : Integer, 
 dim ZdrojHodn     : Integer,
 dim Hodnota       : Real,
 dim Kraceni       : Longint,
 dim ZpusobZaok    : Longint,

     SysZpusobVyp  : Integer,
     SysZdrojHodn  : Integer,
     SysHodnota    : Real,
     SysKraceni    : Longint,
     SysZpusobZaok : Longint,

     ZaklPlat      : Real,
     Uvazek        : Real,
     PrumHodDen    : Real,
     PrumHodMes    : Real,
     PocDnuTur     : Integer,
     PrumHodDov    : Real,
     SumaTarifu    : Real, 
     PlatTabKc     : Real,
 
 dim Suma          : Real,
 dim Oprava        : Byte) : Word

Tato funkce zobrazí dialog, který umožňuje nastavit vlastnosti příplatku.

dim

Nazev

String

Název příplatku

dim Typ Integer

Typ příplatku:

  • 0 Nepoužit
  • 1 Tarif
  • 2 Hodina
  • 3 Směna
dim ZpusobVyp Integer

Určuje způsob výpočtu:

  • 0 Procento z průměru
  • 1 Procento ze základu
  • 2 Částka
  • 3 Procento z tarifu
  • 4 Procento z platové tabulky (PlatTabKc)
dim ZdrojHodn Integer

Určuje zdroj partametru "Hodnota":

  • 0 Systémová hodnota (SysHodn)
  • 1 Hodnota
dim Hodnota Real Hodnota příplatku v
dim Kraceni Longint

Bitová maska určující krácení:

  • $0001 Krátit o docházku
  • $0002 Krátit o úvazek
  • $0004 Do hodin přesčasu
  • $0008 Do pravděpodobného průměru
  • $0010 Násob hodinový příplatek počtem odprac. hodin
  • $0020 Násob hodinový příplatek počtem hodin přesčasu
  • $0040 Násob hodinový příplatek počtem odprac. směn
  • $0080 Hodnota se zadává v položce dny
dim ZpusobZaok Integer

Způsob zaokrouhlení

  • 0 Matematicky
  • 1 Na celé desetikoruny nahoru
  SysZpusobVyp Integer Systémová hodnota, která bude přenášena do parametru "ZpusobVyp" v případě, kdy bude změněn typ příplatku z "Nepoužit". Jestliže zadáte -1, bude dodána default hodnota.
  SysZdrojHodn Integer Systémová hodnota, která bude přenášena do parametru "ZdrojHodn" v případě, kdy bude změněn typ příplatku z "Nepoužit". Jestliže zadáte -1, bude dodána default hodnota.
  SysHodn Real Systémová hodnota, která bude přenášena do parametru "Hodnota" v případě, že bude jako zdroj hodnoty "ZdrojHodn" nastavena "Systémová hodnota".
  SysKraceni Longint Systémová hodnota, která bude přenášena do parametru "Kraceni" v případě, kdy bude změněn typ příplatku z "Nepoužit".
  SysZpusobZaok Integer Systémová hodnota, která bude přenášena do parametru "ZpusobZaok" v případě, kdy bude změněn typ příplatku z "Nepoužit". Jestliže zadáte -1, bude dodána default hodnota.
  ZaklPlat Real Základní plat

Získat lze takto: P[ixZaklPlat]

  Uvazek Real

Úvazek v hodnotách od 0 do 1 (0-100%).

Získat lze takto: Tur[turProcent] / 100

  PrumHodDen Real

Průměrný počet hodin ve dni pro daný úvazek.

Získat lze takto: Tur[turPrumDelka]

  PrumHodMes Real

Průměrný počet hodin v měsíci pro daný úvazek.

Získat lze takto: (365.25 / 7 / 12) * Tur[TurUvazek]

  PocDnuTur Integer

Počet dní v turnusu.

Získat lze takto: Tur[turDelka]

  PrumHodDov Real

Průměr na hodinu dovolené.

Získat lze takto: P[ixPrumDov]

  SumaTarifu Real Suma všech tarifních příplatků
  PlatTabKc Real Poslední stupeň příznané třídy platové tabulky.
dim Suma Real Vypočtená výsledná částka
dim Oprava Byte Jestliže byla nějaká změna, vrací true

Funkce vrací cmOK nebo cmCancel. Pokud bude vráceno cmOK, budou parametry DIM obsahovat nové hodnoty.

Podívejte se na: Procedury a funkce - Objekty

Příklad:

dim bRes       : Word;
dim sNazev     : String;
dim iTyp       : Integer;
dim iZpusobVyp : Integer;
dim iZdrojHodn : Integer;
dim rHodnota   : Real;
dim lKraceni   : Longint;
dim lZaokr     : Longint; 
dim rSuma      : Real;
dim bOprava    : Byte;

sNazev     := "Osobní příplatek"; 
rHodnota   := 2000.0;
iTyp       := $0001; 
iZpusobVyp := $0002;
iZdrojHodn := $0001;
lKraceni   := $0003;

bRes := _DiaBonus(sNazev, iTyp, iZpusobVyp, iZdrojHodn, rHodnota, lKraceni, lZaokr,
        0 {SysZpusobVyp}, -1 {SysZdrojHodn}, 1600 {SysHodnota}, 3 {SysKraceni}, 1 {SysZaokr},
        16000 {ZaklPlat}, 0.5 {Úvazek}, 4 {PrumHodDen}, 120 {PrumHodMes}, 5 {PocDnuTur},
        12 {PrumHodDov}, 999 {SumaTarifu}, 400 {PlatTabKc},
        rSuma, bOprava);
if bRes = cmOK and bOprava then
  ...
endif