( Wg1 : Wage; Wg2 : Wage; GroupItem : Word; Mask : LongInt)
Sčítá proměnné typu Wage podle skupin . To znamená, že oba parametry v proceduře musí být tohoto typu. Součet se provádí do parametru Wg2:
Wg2 := Wg2 + Wg1sub
Sčítají se všechny numerické položky.
Jestliže bude některý z parametrů GroupItem nebo Mask
roven nule, nebude brán v úvahu.
Jestliže bude výsledek operace vkládán do mzdové věty M, nebudou upraveny položky s příznakem ruční opravy. Napřed by je bylo nutno funkcí _HandRepWage smazat.
dim W, W1 : Wage; AddWage(M, W, 0, 0); { W[dbIdent] := M[dbIdent]; } AddWage(W1, W, 0, 0); { W[dbIdent] := W1[dbIdent]; } AddWage(W, M, 0, 0); { M[dbIdent] := bude nezměněn !! }
Pozor ! Bude-li mzdová věta 'M' zamčena (nastaven bit číslo 15 v attributu) pak platí:
dim WW : Wage AddWage(WW, M, 0, 0); { není povoleno, bude chyba makra } WW := M; { je povoleno } AddWage(M, WW, 0, 0) { je povoleno } M := WW; { není povoleno, bude chyba makra }
Podívejte se na: Mzdy