_FuncUniv

(    Mode   : Byte;
     ...            ) : xxxx

Universální uživatelská funkce s obecným množstvím a typem parametrů vracející obecný typ hodnoty. Způsob práce a pojetí parametrů řídí parametr Mode.

Mode

Řídí způsob práce funkce a pojetí vstupních parametrů.

Mode: fuPolPodPol

     ...
    PolIdx      : Integer;          { Požadovaná MZDOVÁ položka }
dim FTabPolSkup : File;             { Stream tabulka: dvojice - položka a její skupina }
dim FPol        : File) : Byte;     { Stream vracených položek  }

Ve streamu 'FPol' vrací seznam mzdových položek, ze kterých je složena výchozí položka 'PolIdx'. Pro posouzení používá stream tabulku 'FTabPolSkup', kde jsou od indexu 0 dvojice 'mzdová položka | skupina'. Jestliže položka 'PolIdx' nebude v tabulce  'FTabPolSkup' nalezena, vrací ve streamu 'FPol' pouze položku 'PolIdx'.

Vrací true, jestliže je ve streamu 'FPol' více než 0 vět (což je vždy).

Příklad:

procedure Test
    dim FTabPolSkup  : File;
    dim FPol         : File;

    SRewrite(FTabPolSkup, "", true);
    SRewrite(FPol,        "", true);

    SPut(FTabPolSkup, 0, ixZaklPl);
    SPut(FTabPolSkup, 1, mslZaklPl);

    SPut(FTabPolSkup, 2, ixZaklPlOst);
    SPut(FTabPolSkup, 3, mslZaklPlOst);

    _FuncUniv(fuPolPodPol, 101, FTabPolSkup, FPol);

    dim Idx : Integer;

    if _SFirst(FPol, Idx) then 
        repeat
            Trace(_SGet(FPol, Idx));
        until _SNext(FPol, Idx) = false;
    endif

    SClose(FTabPolSkup);
    SClose(FPol);
endproc { Test }