Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.17;
Скачать: CL | DM;

Вниз

Проблемка...   Найти похожие ветки 

 
Dimaz-z ©   (2003-10-25 17:31) [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("


 
kaif ©   (2003-10-25 17:40) [1]

Я ничего не понял. Это какой-то чудовищный текст.


 
Е-Моё имя ©   (2003-10-25 17:48) [2]


> [1] kaif © (25.10.03 17:40)

:)))))))))))))))))))))))))))))))


 
Digitman ©   (2003-10-25 17:50) [3]


> экспортировать Данные из базы данных в текстовый файл.


изучать этот корявый и монстрообразный код , поверь, нет никакого желания)

скажи попросту - каков формат результирующего файла ?
куда он дальше пойдет, на вход какой программы ?
почему не воспользоваться результирующим CSV-форматом ?
для чего делать бестолковую работу по предв.вычислению фактических размеров строк.данных в полях записей НД ?


 
vuk ©   (2003-10-25 17:54) [4]

А если так?

Table.First;
while not Table.EOF do
begin
....

Table.Next;
end;



Страницы: 1 вся ветка

Текущий архив: 2003.11.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.033 c
6-56800
Lomik
2003-09-20 22:47
2003.11.17
повторно не отсылает stream


3-56454
off
2003-10-29 08:40
2003.11.17
Раскршиваем грид.


1-56732
~GaMeRd~
2003-11-06 08:35
2003.11.17
Как в Dll поместить HTML ки?


1-56582
Игоряныч
2003-11-06 09:21
2003.11.17
Есть у кого нибудь исходник - как печатать из делфи через Word.


3-56531
Nikola62
2003-10-27 14:01
2003.11.17
Открытие сохраненного отчета