SetRights

( Attr : Word)

Procedura SetRights nastavuje skupiny přístupových práv u zaměstnance, který je nahrán v paměti. Skupiny jsou ukládány pro aktuálně nastavený čas do tabulky RIGHTS. Podle těchto skupin je prováděno filtrování zaměstnanců vzhledem k právům uživatele , pro zvolené období. Jednotlivé bity určují, do které skupiny zaměstnanec patří. Bitů je 32 (0 .. 31) a některé z nich používá systém:

$8000 0000  atRecDel Věta je připravena ke smazání údržbou
$2000 0000 atAlways Tento attribut věta bude vždy mít nastaven
$1000 0000 Neaktivní zaměstnanci
$0800 0000 Připravení zaměstnanci

Skupiny přístupových práv nejsou časem nikterak omezeny.

Kterou větu z tabulky RIGHTS systém použije, definuje aktuální období nastavitelné například procedurou SetActEnv.

Při přechodu na nový měsíc je nutno upravit přístupové atributy v novém měsíci. Jinak budou zaměstnanci nepřístupní!

Opakem SetRights je _GetRights.

Podívejte se na: Procedury a funkce pro pololožky

Příklad:

Naplňte do budoucnosti přístupový atribut podle obsahu historické položky O0810 pro aktuálního zaměstnance od aktuálního měsíce zpracování mezd do měsíce zadaného:

procedure AddRights (    VznikPP : Date)
    dim AM       : Byte;
    dim SM       : Word;
    dim SY       : Word
    dim D,DC     : Date;
    dim MyAttr   : LongInt;
    dim SepMonth : Byte;
    dim SepYear  : Word
    
    DC :=  VznikPP;
    DC[Day] := 1;
    D := _IncMonth(_Date(1, _LastMonth, _LastYear), 1); 
    GetActEnv(AM, SM, SY); 
    HstGetSep(SepMonth, SepYear); 
    while DC > = D do
        SetActEnv(D[Month], D[Month], D[Year]);
        HstSetSep(D[Month], D[Year]);
        MyAttr := O[0810];
        SetRights(MyAttr);
        D := _IncMonth(D,1);
    endwhile 
    HstSetSep(SepMonth, SepYear);
    SetActEnv(AM, SM, SY); 
endproc