GetSet_next_user

Internφ programovacφ jazykC/C++Pascal

function GetSet_next_user(curs : tcurstab; position : trecnum; attr : integer; operation : integer; valtype : integer; var value): Boolean;
BOOL [cd_]GetSet_next_user([cdp_t cdp], tcurstab curs, trecnum position, tattrib attr, t_oper operation, t_valtype valtype, void *value);
function [cd_]GetSet_next_user([cdp : cdp_t]; curs : tcurstab; position : trecnum; attr : tattrib; operation : t_oper; valtype : t_valtype; var value): Boolean;

Parametry

curs tabulka nebo otev°en² kursor - viz podrobnosti
position Φφslo zßznamu
attr Φφslo sloupce
operation Φtenφ nebo zßpis u₧ivatele
valtype zp∙sob identifikace u₧ivatele, nab²vß hodnot VT_OBJNUM, VT_UUID nebo VT_NAME
value oznaΦuje u₧ivatele
[cdp kontextovß prom∞nnß klienta]

Od verze:

5.0

Popis

Funkce GetSet_next_user Φte nebo zapisuje do kolujφcφho dokumentu oznaΦenφ u₧ivatele, na n∞j₧ dokument Φekß. Dokumentem je zßznam s absolutnφm Φφslem position v kurzoru nebo tabulce curs. Parametr attr je Φφslo systΘmovΘho sloupce _W5_DOCFLOW, pokud curs je tabulka nebo kurzor obsahujφcφ pouze jeden takov² sloupec, pak se ignoruje. Parametr operation je OPER_GET pro Φtenφ u₧ivatele nebo OPER_SET pro zßpis u₧ivatele. Parametr value oznaΦuje u₧ivatele a je p°i zßpisu vstupnφm parametrem a p°i Φtenφ v²stupnφm. Parametr valtype mß hodnotu VT_OBJNUM, pokud value je Φφslo u₧ivatele, VT_UUID pokud value je identifikace u₧ivatele nebo VT_NAME pokud value je logovacφ jmΘno u₧ivatele.

Je-li operation=OPER_SET, valtype=VT_OBJNUM a value ukazuje na -1, do dokumentu se zapφÜe, ₧e na nikoho neΦekß - kolob∞h je ukonΦen. StejnΘho efektu docφlφ prßzdn² °et∞zec ve value p°i valtype=VT_NAME.

Hodnota funkce

Funkce vracφ TRUE p°i chyb∞ a FALSE p°i ·sp∞ÜnΘm provedenφ.

P°φklad

procedure Tlac_PoslatZpet(id : window_id; rec : trecnum);
{*******************************************}
// poÜle dokument dalÜφmu u₧ivateli
var
  c : cursor;
  usid : binary[12];
begin
  if Get_fcursor(id,c,nil) then begin
    usid := c[rec].`id ₧adatele`;
    if GetSet_next_user(c, rec, 0, OPER_SET, VT_UUID, usid) then Signalize;
    Close_view(id);
  end else Info_box('Get_fcursor','Chyba');  
end;

procedure Tlac_Hotovo(id : window_id; rec : trecnum);
{*******************************************}
//ukonΦφ kolob∞h
var
 c : cursor;
 pom : integer;
begin
  pom := -1;
  if Get_fcursor(id,c, nil) then begin
   c[rec].stav:=DOKON╚ENO;
   if GetSet_next_user(c, rec, 0, OPER_SET, VT_OBJNUM, pom) then Signalize;   
  end else Info_box('Get_fcursor','Chyba');
  Close_view(id);
end;

Viz