Функция вычисления суммы полей

{codecitation class=»brush: pascal; gutter: false;» width=»600px»}

Автор: Alexsander

«…а хуже всего приходится программистам из Microsoft. Им, бедолагам, в случае чего и обругать-то некого…»

function SumField(const fieldName: OpenString): longint;

var

fld: TField;

bm: TBookmark; // закладка

begin

result := 0;

tbl.DisableControls; // выключаем рекцию на перемещение по набору данных

bm := tbl.GetBookmark; // сохраняем позицию

fld := tbl.FieldByName(fieldName);

tbl.first;

while not tbl.eof do

begin

result := result fld.AsInteger;

tbl.next;

end;

tbl.GotoBookmark(bm); // позиционируем обратно

tbl.EnableControls; // включаем реакцию на перемещение по набору данных

end;

{/codecitation}

Добавить комментарий