Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.04.2011, 11:49   #11
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Если бы у меня стояла задача максимально оптимизировать по времени подобную вещь я бы отказался от запросов и читал бы DBF последовательно, что с ним в принципе достаточно легко сделать поскольку его структура достаточно проста, и ни каких Memo, а сразу формирование XML, скорее всего без использования TXMLDocument
Цитата:
используйте параматезированный запрос для перегонки и будет вам счастье
не понял что имеется ввиду
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 24.04.2011, 11:54   #12
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

Цитата:
не понял что имеется ввиду
я тоже не понял.
Цитата:
и читал бы DBF последовательно, что с ним в принципе достаточно легко сделать поскольку его структура достаточно проста, и ни каких Memo, а сразу формирование XML, скорее всего без использования TXMLDocument
как это "последовательно" и сразу строить XML без использования TXMLDocument? Есть ли пример какой?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 24.04.2011, 12:06   #13
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

XML это текстовый файл, куда все его примочки можно спокойно записывать не используя XMLDocument, который сам по себе достаточно тормозной, а тем более если создаётся млн объектов в нем. С dbf посложней, это все таки двоичный файл, у которого есть заголовок с информцией о структуре, а дальше идут фиксированной длины блоки (записи) с содержимым полей. Пример чтения если нужен, то только во вторник брошу
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 24.04.2011, 12:19   #14
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

Ок, давай во вторник. Подскажи тогда хотя бы как сделать, чтобы записывались все 20 записей, а не последняя только?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 24.04.2011, 12:38   #15
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

попробуй
Код:
              with AddChild('number') do
              begin
                for i:=0 to Form1.sMemo1.Lines.Count - 1 do
                begin
                 ChildValues['number']:=Form1.sMemo1.Lines[i];
                end;
              end;
на
Код:
                for i:=0 to Form1.sMemo1.Lines.Count - 1 do
                begin
                  with AddChild('number') do ChildValues['number']:=Form1.sMemo1.Lines[i];
                end;
upd + брось сюда структуру dbf
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 24.04.2011 в 12:46.
Аватар вне форума Ответить с цитированием
Старый 24.04.2011, 12:46   #16
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

Да, так работает). Еще оодин вопросик небольшой. Если использовать перегон записей из DBF в Memo, то, как прописать, чтобы визуально было видно как добавляются новые строки в Memo? А то я написал конечно
Код:
 Application.ProcessMessages;
но, это не решает эту проблемку и приложение подвисает на момент перегона. Отвисает только когда перекинет все записи. Хотелось бы, чтобы визуально было видно)
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 24.04.2011, 12:50   #17
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Например реализовать саму перегонку в потоке
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 24.04.2011, 13:04   #18
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

С потоками я как бы не очень...не приходилось с ними работать раньше
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 24.04.2011, 13:08   #19
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

Код:
for i:=0 to Form1.sMemo1.Lines.Count - 1 do
                begin
             with AddChild('number') do ChildValues['number']:=Form1.sMemo1.Lines[i];
              Application.ProcessMessages;              
                 end
;

а так тоже виснит?
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 24.04.2011, 13:15   #20
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

да нет, на 20-то записях конечно не висит)
Вот. Сделал в файле 100 файлов.
Вложения
Тип файла: zip test.zip (335 байт, 8 просмотров)
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.

Последний раз редактировалось artemavd; 24.04.2011 в 13:25.
artemavd вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление данных в XML файл. LexaL Помощь студентам 3 24.12.2010 09:25
сформировать xml-файл на основе другого xml-файла NieL Общие вопросы Delphi 2 21.12.2010 15:49
Добавление тегов sergiksergik Microsoft Office Excel 28 24.05.2010 21:49
Добавление узлов в XML в Delphi, исользуя Treeview Анастасия999 Помощь студентам 0 08.05.2010 10:05
как проверить заголовок XML? stan90 Общие вопросы по Java, Java SE, Kotlin 0 28.11.2009 18:18