Страница 1 из 1

компонент Ttimer

Добавлено: 19 янв 2009, 15:21
Pikaper
Добрый всем день! Столкнулся с такой проблемой. в Timer`e подключаюсь в DB через драйвер PARADOX, проеряю если появились ноые записи выгружаю все данные в txt файл, программа свернутая в трей, а проблема от какая при каждой выгрузке увеличивается занамаемое место в оперативе. Вроде все пееменные очищая, но не помагает. Вроде как увеличивается на размер выгружаемого файла... то есть даных в файле. Незнаю что делать.

Re: компонент Ttimer

Добавлено: 19 янв 2009, 15:59
demon416
Код покажи

Re: компонент Ttimer

Добавлено: 19 янв 2009, 16:28
Pikaper
demon416 писал(а):Код покажи


В данный момент не могу покзать код. Напишу так:
==================================================
var
...
begin
//выбираем последнюю запись в таблице
with MainForm.Query1
SQL.CLEARE;
SQL.ADD('...');
//присваиваем переенной найденное id последней записи
REC1 := .....
end;

//выбирае все записи между последней выгруженной и последней найденной
with MainForm.Query2
SQL.CLEARE;
SQL.ADD('...');
//присваиваю переменной по мере выполнения ниже инструкции найднные id
id:=...;
while not EOF
begin
//ищу все записи с соответствующим id и составляю их в строку
with MainFOrm.Query3
begin
SQL.Cleare;
SQL.ADD('....');
summ := summ + string;
// string - строка составленная из полученных значений полей таблицы.

end;
//передаю в функцию записи в файл данных значение строки summ
WriteString(Summ);
//очищаю перменные
summ:=' ';
закрываю все
MainFOrm.Query3.close;
MainFOrm.Query2.close;
MainFOrm.Query1.close;

end;

end;

===========================================

Вот как то так в общих чертах. Timer выполняется каждые 30 минут.