( 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