SnpGetAllByPeriod

(    ZamId : Byte;
     Month : Byte;
     Year  : Word;
     Type  : Integer;
 dim F     : File)

Vrací informace za období ze skladu čísel podle období. Záznamy jsou definovány pro zaměstnance jehož ident je ZamId, období Month / Year a typ Type (SNPTYPE_EXEKUCE, ...). Jestliže bude ZamId = 0, vrací všechny záznamy všech zaměstnanců za dané období Month / Year a typ Type.

Vrací se stream F, který musí být otevřen.

Struktura vraceného streamu:

Index Popis Příklad pro získání jedné věty
0..99999 Identifikátor Uid uložené věty. Idx
100000..199999 Hodnota ValR. Idx+100000
200000..299999 Nepovinné jméno položky IName. Idx+200000
300000..399999 Nepovinná poznámka Msg. Idx+300000
400000..499999 Nepovinný identifikátor skupiny UidGrp. Idx+400000
500000..599999 Ident zaměstnance ZamId. Idx+500000

Podívejte se na: Sklad čísel podle období

Příklad:

procedure Snp_CteniObdobi
    dim F       : File;
    dim Key     : Longint;
    dim ZamId   : Longint;
    dim Uid     : String[22];
    dim UidGrp  : String[22];
    dim ValR    : Real;
    dim IName   : String[5];
    dim Pozn    : String[100];
	
    SRewrite(F, "", true);

    SnpGetAllByPeriod(O[dbIdent], _ActMonth, _SysYear, SNPTYPE_EXEKUCE, F);
	
    if(_SFirst(F, Key))then
        repeat
            Uid     := _SGet(F, Key + 000000);
            ValR    := _SGet(F, Key + 100000);
            IName   := _SGet(F, Key + 200000);
            Pozn    := _SGet(F, Key + 300000);
            UidGrp  := _SGet(F, Key + 400000);
            ZamId   := _SGet(F, Key + 500000);
            trace("ZamId: ", ZamId, " UidGrp: ", UidGrp, " ValR: ", ValR, " IName: ", IName, " Pozn: ", Pozn)
        until _SNext(F, Key) = false or Key >= 100000;
    endif

endproc