Rec_cnt

c/c++pascal

BOOL [cd_]Rec_cnt([cdp_t cdp], tcurstab curs, trecnum * recnum);
function [cd_]Rec_cnt([cdp : cdp_t]; curs : tcurstab; var recnum : trecnum) : Boolean;

Parametry

curs číslo tabulky nebo otevřeného kurzoru
recnum vrácený počet záznamů
[cdp kontextová proměnná klienta]

Popis

Funkce vrací v parametru recnum počet záznamů v kurzoru resp. tabulce curs.

Je-li parametrem curs číslo tabulky, vrací se počet všech záznamů v tabulce, včetně zrušených a těch uvolněných, za nimiž jsou ještě nějaké neuvolněné záznamy. Je-li curs číslo otevřeného kurzoru, vrací se počet záznamů vybraných do kurzoru při jeho vytváření, včetně těch, které byly za dobu existence kurzoru zrušeny v tabulkách, z nichž je kurzor vytvořen, a případně záznamy později do kurzoru přidané. První provedení Rec_cnt na určitou tabulku resp. kurzor může chvíli trvat, protože záznamy se musí spočítat.

Důrazné upozornění: Jednou z nejčastějších chyb začínajících vývojářů je opomenutí, že Rec_cnt na tabulku počítá i smazané a uvolněné záznamy. Při pokusu číst z uvolněného záznamu získávají pak (v lepším případě) nesmyslné hodnoty. Musíte-li pracovat přímo s tabulkami, je nutné kontrolovat systémový sloupec DELETED, lépe však je používat dotazy, které při sestavení obsahují pouze platné záznamy.

Hodnota funkce

Funkce vrací hodnotu FALSE, pokud se akci podařilo úspěšně provést. V opačném případě vrací TRUE a povahu chyby lze zjistit voláním funkce Signalize.

Viz