Set_item_value

Internφ programovacφ jazykC/C++Pascal

function Set_item_value(hView : window_id; intrec : trecnum; itemid : short; var value : untyped) : Boolean;
BOOL Set_item_value(window_id hView, trecnum intrec , int itemid, const char *value);
function Set_item_value(hView : window_id; intrec : trecnum; itemid : integer; value : PChar) : Boolean;

Parametry

hView identifikace (handle) formulß°e;
intrec internφ Φφslo zßznamu;
itemid Φφslo slo₧ky formulß°e;
value vstupnφ parametr: beztypovß hodnota slo₧ky itemnum

Popis

Funkce nastavφ nov² obsah slo₧ky s Φφslem itemid v zßznamu intrec ve formulß°i hView. Hodnota musφ b²t p°edem p°i°azena do beztypovΘ prom∞nnΘ value.

Internφ Φφslo zßznamu ve formulß°i lze zjistit volßnφm funkce Get_view_pos nebo lze p°edat z formulß°e pomocφ symbolu @@.

Funkce p°ibli₧n∞ nahrazuje starÜφ funkci Set_view_item, kterß pouze zapsala novou hodnotu do slo₧ky formulß°e. Funkce Set_item_value navφc zapφÜe hodnotu do sloupce nebo prom∞nnΘ, do nφ₧ slo₧ka vede.

Pokud formulß° mß nastaven p°φznak Uklßdat po zm∞n∞ slo₧ky, pak zavolßnφ tΘto funkce zapφÜe nov² obsah slo₧ky do databßze (resp. do prom∞nnΘ projektu). V opaΦnΘm p°φpad∞ se novß hodnota zapamatuje ve vyrovnßvacφ pam∞ti formulß°e a do databßze se p°epφÜe p°i opuÜt∞nφ zßznamu nebo p°i provedenφ akce Ulo₧it zm∞ny ve formulß°i.

Pokud efekt tΘto funkce mß b²t viditeln² na obrazovce, je nutno po jejφm volßnφ zavolat funkci Reset_view s parametrem RESET_CONTROLS (nikoliv RESET_CACHE nebo RESET_CURSOR) nebo provΘst akci P°ekreslit formulß°.

Pokud tuto funkci volßte na formulß° typu "pouze pro vstup dat", uve∩te jako hodnotu parametru intrec nulu (intrec=0).

Od verze 6.0 lze k zßpisu hodnot do slo₧ek formulß°∙ vyu₧φvat takΘ vlastnosti slo₧ky Value a Text.

Hodnota funkce

Funkce vracφ TRUE po ·sp∞ÜnΘm provedenφ akce, jinak vracφ FALSE.

P°φklad

spom := Parametry[0].sablonywt+'\*.WPT';
  if Select_file(idx,spom) then begin
    while SubStr("\",spom) do           // odstran∞nφ zp. lomφtka
      StrDelete(spom,1,StrPos("\",spom));
    if SubStr(".",spom) then            // odstran∞nφ p°φpony
      StrDelete(spom,StrPos(".",spom),StrLength(spom)-StrPos(".",spom)+1);
    u := spom;
    if not Set_item_value(idx,rec,6,u) then Info_box('Chyba','Set_item_value');
    Reset_view(idx,-1, RESET_CONTROLS);
  end;

Viz