Может кому пригодится.
скрипт типа таймер интервал 600сек (в моем случае)
komp база данных созданная с тремя столбцами tme, temp, part (время, температура, номер партии),
VALUES (NOW() - время сейчас
QuotedStr(b1sr.AsStr) значение переменной b1sr (температура)
QuotedStr(b1part.AsStr) значение переменной b1part (партия)
var
aQuery: string;
begin
aQuery := 'INSERT IGNORE INTO `komp` (`tme`, temp, part) VALUES (NOW(), ' + QuotedStr(b1sr.AsStr) + ', '+QuotedStr(b1part.AsStr)+');';
RunSQL(aQuery, nil, 0);
end.
в итоге каждые 10 мин, записывается строка.
скрипт типа нажали кнопку
var
KompQuery: string;
begin
KompQuery := 'SELECT COUNT(*) AS total FROM komp WHERE temp BETWEEN ' + QuotedStr(TempKompOt.AsStr) +
' AND ' + QuotedStr(TempKompDo.AsStr) + ' AND part = '+ QuotedStr(TempKompPart.AsStr) + ' ;';
RunSQL(KompQuery, nil, 2);
end.
подсчет суммы значений столбца temp, с условиями
скрипт для вывода значение в поле
var
Chas: Integer;
Minuty: string;
begin
if DataSet.IsEmpty then Exit;
if DataSet.Tag = 2 then
begin
Minuty := DataSet.Fields[0].AsStr;
Chas := StrToInt(Minuty);
field67.Visible := True;
field67.Value := Round(chas/6);
end;
end.
уверен можно лучше и элегантнее, но как для примера понимания, на мой взгляд норм