Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.11.17;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.01 c
9-56425
cyborg
2003-05-14 11:36
2003.11.17
Вылет


3-56458
Raduga
2003-10-29 10:28
2003.11.17
Добавление данных из одной таблицы в другую


1-56664
Raduga
2003-11-05 09:27
2003.11.17
MsgWaitForMultipleObjectsEx


11-56551
race1
2003-02-25 18:50
2003.11.17
component


1-56716
reticon
2003-11-06 23:33
2003.11.17
Абстрактные методы класса





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский