( ZamId : Byte;
Month : Byte;
Year : Word;
Type : Integer) : Longint
Startuje dávku pro změny ve skladu čísel podle období. Pak následuje opakované vkládání hodnot pomocí _SnpBatchAdd a potvrzení (_SnpBatchCommit) nebo odvolání (_SnpBatchRollback) změn.
Dávka je zpracovávána pro zaměstnance jehož ident je ZamId, období Month / Year a typ Type (SNPTYPE_EXEKUCE, ...).
Záznam který existoval a nebude během dávky znovu uložen (třeba jako upravený), bude při potvrzení dávky smazán. Jestliže tedy nastartujete dávku a hned jí potvrdíte, budou všechny věty pro dané období smazány!!
Příklad:
dim hSNP : Longint; hSNP := _SnpBatchBegin(O[dbIdent], _ActMonth, _SysYear, SNPTYPE_EXEKUCE); _SnpBatchCommit(hSNP );
Funkce vrací číslo (handle) pomocí kterého lze později s dávkou pracovat.
Jestliže se dávka nepotvrdí nebo neodvolá před ukončením posledního makra, bude automaticky odvolána při ukončování posledního makra.
Při pokusu o spuštění již spuštěné dávky hlásí makro chybu.
Podívejte se na: Sklad čísel podle období
Příklad:
procedure Snp_Vkladani
dim hSNP : Longint;
hSNP := _SnpBatchBegin(O[dbIdent], _ActMonth, _SysYear, SNPTYPE_EXEKUCE);
SnpBatchAdd(hSNP, "4444444444", "99999", 40, "M0100", "Testovací poznámka 40");
SnpBatchAdd(hSNP, "1111111111", "99999", 10, "M0100", "Testovací poznámka 10");
SnpBatchAdd(hSNP, "2222222222", "99999", 20, "M0100", "Testovací poznámka 20");
SnpBatchAdd(hSNP, "3333333333", "99999", 30, "M0100", "Testovací poznámka 30");
if(_SnpBatchCommit(hSNP) = false)then
_MsgBox(1, "Chyba v _SnpBatchCommit", 0);
endif
endproc