GetSet_fil_size

Internφ programovacφ jazykC/C++Pascal

function GetSet_fil_size(operation : integer; var size : integer) : Boolean;
BOOL [cd_]GetSet_fil_size([cdp_t cdp], t_oper operation, uns32 * size);
function [cd_]GetSet_fil_size([cdp : cdp_t]; operation : t_oper; var size uns32) : Boolean;

Parametry

operation - konstanta OPER_GET pro zjiÜt∞nφ velikosti
  - konstanta OPER_SET pro nastavenφ velikosti.
size velikost databßzovΘho souboru v bajtech ( je v²stupnφm parametrem p°i zjiÜ¥ovßnφ velikosti, vstupnφm p°i nastavovßnφ)
[cdp kontextovß prom∞nnß klienta]

Od verze:

5.0

Popis

Funkce GetSet_fil_size slou₧φ ke zjiÜt∞nφ nebo zv∞tÜenφ velikosti databßzovΘho souboru. Touto funkci nelze zmenÜit velikost souboru. Funkci s hodnotou OPER_SET smφ volat pouze provoznφ sprßvce (CONFIG:ADMIN), jinak dojde k chyb∞ NO_RIGHTS (129 - Nemßte prßvo provΘst tuto akci).

Pou₧φvß se potΘ, co funkcφ Get_server_info zjistφte mal² poΦet voln²ch cluster∙ databßzovΘho souboru nebo v aplikaci potΘ, co se p°i spuÜt∞nφ serveru (aplikacφ) objevφ varovnß hlßÜka o nedostatku voln²ch cluster∙.

Obdobnß funkce GetSet_fil_blocks lze pou₧φt k tΘmu₧ ·Φelu, velikost se vÜak zadßvß (a zjiÜ¥uje) nikoliv v bajtech, ale v blocφch o velikosti 4 KB (obdobn∞ jako z v²vojovΘho prost°edφ 602SQL).

Hodnota funkce

Vrßtφ TRUE p°i chyb∞, Φφslo chyby OS_FIL_ERROR (157), kdy₧ nenφ dost mφsta na disku. P°i pokusu o zmenÜenφ souboru funkce neud∞lß nic a vrßtφ FALSE.

P°φklad

if GetSet_fil_size(OPER_GET, size) then Signalize;
Info_box('',Int2str(size))

Viz