Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
ВнизНарод, помогите, голова не варит! Найти похожие ветки
← →
Dimaz-z (2003-10-25 17:04) [0]Помогите, к меня тут проблема!
Имеется процедура, которая должна экспортировать Данные из базы данных в текстовый файл.
В ней ест цикл, который находит максимальтные длины значений в каждом поле базы. -
var
Surname, Name, Oth, Tel, Sot, Email: Integer;
...
for i := 1 to Table.RecordCount do
begin
Application.ProcessMessages;
if Surname < Length(Table.FieldByName("Surname").AsString) then
Surname := Length(Table.FieldByName("Surname").AsString);
if Name < Length(Table.FieldByName("Name").AsString) then
Name := Length(Table.FieldByName("Name").AsString);
if Oth < Length(Table.FieldByName("Oth").AsString) then
Oth := Length(Table.FieldByName("Oth").AsString);
if Tel < Length(Table.FieldByName("Tel").AsString) then
Tel := Length(Table.FieldByName("Tel").AsString);
if Sot < Length(Table.FieldByName("Sot").AsString) then
Sot := Length(Table.FieldByName("Sot").AsString);
if Email < Length(Table.FieldByName("Email").AsString) then
Email := Length(Table.FieldByName("Email").AsString);
Table.Next;
end;
Дальше идёт маленький цикл, где создайтся строка заголовка -
for i := 1 to Surname + Name + Oth + Tel + Sot + Email do
SSE := SSE + "-";
В результате, после прохода процедуры выходит огромный файл (20-30 мб), даже если в базе одна крохотная запись!
Помогите, подскажите, где моя ошибка!
Вот полный код процедуры:
procedure Tfrm_main.ToText(FileName: String);
var
I, A: Integer;
Surname, Name, Oth, Tel, Sot, Email: Integer;
EFile: TextFile;
SSurname, SName, SOth, STel, SSot, SSE: String;
begin
AssignFile(EFile, FileName);
Rewrite(EFile);
Table.DisableControls;
Table.First;
ShowTextForm("
← →
Dimaz-z (2003-10-25 17:21) [1]ЭЙ!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.035 c