Форум: "Базы";
Текущий архив: 2005.02.06;
Скачать: [xml.tar.bz2];
ВнизСкорость экспорта данных Найти похожие ветки
← →
_1008_ (2004-12-29 16:50) [0]Есть база, в базе записи.
Три таблицы:
Табл1, Табл2, Табл3.
Табл1 и Табл2 связаны связью один ко многим
Табл1 и Табл3 связаны связью один к одному.
Всё что мне необходимо это:
1. Поместить в MS Word "управляющие строки" (некие записи поясняющие к чему относятся данные, которые берутся из таблицы);
2. поместить в MS Word данные из Табл1;
3. ещё "управляющие строки";
4. поместить в MS Word данные из Табл2, которые связаны с данными из Табл1.
5. ещё "управляющие строки";
6. поместить в MS Word данные из Табл3, которые связаны с данными из Табл1.
Не знаю в чём проблема вот и обратился сюда.
← →
Max Zyuzin © (2004-12-29 16:54) [1]>_1008_ (29.12.04 16:50)
Гм... Не знаю в чём проблема мы в общем тоже смутно догадываемся в чем у тебя проблема...
← →
_1008_ (2004-12-29 17:06) [2]Max Zyuzin © (29.12.04 16:54) [1]
Логично. Но может у кого-нибудь есть идеи, которые натолкнут на правильное решение.
← →
Sergey13 © (2004-12-29 17:09) [3]Спросить у препода.
← →
Соловьев © (2004-12-29 17:16) [4]телепаты уехали праздновать новый год.
хотя может поможет?
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=502
← →
_1008_ (2004-12-29 17:20) [5]Соловьев © (29.12.04 17:16) [4]
Спасибо, но не поможет.
Это экспорт блоб полей. Для обращения использую:
IBDataBase
IBTransaction
IBQuery
Последних несколько:
на таблицу 1
на таблицу 2
на таблицу 3
← →
Fay © (2004-12-29 18:43) [6]2 _1008_ (29.12.04 17:20) [5]
> Это экспорт блоб полей. Для обращения использую:
> IBDataBase
> IBTransaction
> IBQuery
>
> Последних несколько:
> на таблицу 1
> на таблицу 2
> на таблицу 3
Не возражаю. Проблема снята?
← →
_1008_ (2004-12-30 09:47) [7]Fay © (29.12.04 18:43) [6]
Нет, не снята. А продолжает здравствовать и крайне раздражать.
Понимаю, что что-то надо поменять, но не понимаю, что именно.
Подозреваю, что дело либо в базе, либо в том как я к ней обращаюсь. Но никаких идей нет.
← →
Danilka © (2004-12-30 09:50) [8][7] _1008_ (30.12.04 09:47)
А в чем именно проблема, если не секрет? :)
← →
_1008_ (2004-12-30 10:10) [9]Danilka © (30.12.04 09:50) [8]
Да так мелочи: формирование документа длиться всего-то полчаса.
Задача поместить из базы набор текста из блобов.
← →
_1008_ (2004-12-30 10:10) [10]Danilka © (30.12.04 09:50) [8]
Да так мелочи: формирование документа длиться всего-то полчаса.
Задача поместить из базы набор текста из блобов. На 20-30 записях это длится 2-3 минуты, на 126 полчаса.
← →
Danilka © (2004-12-30 10:36) [11][10] _1008_ (30.12.04 10:10)
Те-же данные выбрать на клиента, сколько времени занимает? Например, просто все скинуть в текстовый файл.
Если быстро - значит дело в ворде, тогда, как вариатн, самому создавать напрямую rtf-файл, без ОЛЕ, наверняка есть и компоненты бесплатные для этого, да и формат rtf не такой уж и сложный.
Если также долго - значит дело в запосах, которыми данные вытаскиваешь и/или в самой базе (индексов где не хватает, например).
← →
Max Zyuzin © (2004-12-30 10:46) [12]>_1008_ (30.12.04 10:10) [10]
Большой ли документ получается? Много ли данных туда пихается...
В догонку к совету Danilka © (30.12.04 10:36) [11] в RichEdit все запихивай он может сохранять в RTF
← →
_1008_ (2004-12-30 11:28) [13]Danilka © (30.12.04 10:36) [11]
Я работаю с базой локально. Удалённая работа, где есть идёт быстро (показ информации).
Я использую табличное представление, а можно ли его показать в rtf-е?
Max Zyuzin © (30.12.04 10:46) [12]
Около ста страниц, размер 800-900 кБ около 1 МБ
← →
Danilka © (2004-12-30 11:41) [14][13] _1008_ (30.12.04 11:28)
То-есть, та-же самая информация, но в гриде, а не в rtf-е отображается быстро?
> можно ли его показать в rtf-е?
Можно, кроме использования ворда через оле, я уже привел 2 варианта, третий вариант в [12].
← →
_1008_ (2004-12-30 12:03) [15]Danilka © (30.12.04 11:41) [14]
Данные в базе (в блобе) могут содержать олеобъекты (хорошая вещь RxRichEdit);
Я отображаю данные в RxRichEdit. При локальной работе это происходит довольно шустро (показать одну главную запись и десять связанных с ней занимает заметный промежуток времени, но довольно маленький). При работе по сети раз от раза по разному:
с машиной, которая стоит рядом я связываюсь долго;
с машиной которая стоит двумя этажами выше я связываюсь быстро;
← →
Max Zyuzin © (2004-12-30 12:13) [16]>_1008_ (30.12.04 12:03) [15]
Таакк.. тебе нужно с админами пообщаться, может с сетевыми картами проблемма, хотя даже на 10 Мб 1 Мб будет ООооочень быстро передаваться. Вообще как сеть работает на машине "медленной"?
А вообще у тебя я так понимаю сервер FireBird живет на куче машин что ли?
← →
_1008_ (2004-12-30 12:49) [17]Max Zyuzin © (30.12.04 12:13) [16]
Машина с которой медленный коннект на ней винду последний раз года три или четыре назад ставили, там наверняка такой бедлам и фрагментация, что ужас.
Но вопрос не в том, вопрос в том, что моя машина, за которой я сижу формирует мой документ полчаса. Причём активность винчестера почти ноль.
← →
Max Zyuzin © (2004-12-30 12:54) [18]>_1008_ (30.12.04 12:49) [17]
Показывай как формируешь документ...
"телепаты уехали праздновать новый год" Соловьев ©
:) Код в общем покажи....
← →
msguns © (2004-12-30 13:00) [19]1. Каким образом выкидываешь инфу в ворд ?
2. Не проще ли кидать в ексель с помощью "региональных" присвоений, а уж из него в ворд ?
3. Почему нельзя изначально хранить в БД не мемо, а собственно формат .doc ?
← →
msguns © (2004-12-30 13:00) [20]1. Каким образом выкидываешь инфу в ворд ?
2. Не проще ли кидать в ексель с помощью "региональных" присвоений, а уж из него в ворд ?
3. Почему нельзя изначально хранить в БД не мемо, а собственно формат .doc ?
← →
Sancho © (2004-12-30 13:25) [21]А у тебя на машине не XP стоит.
← →
Sancho © (2004-12-30 13:26) [22]Знак вопроса забыл, дубль два :-))
А у тебя на машине не XP стоит ?
← →
_1008_ (2004-12-30 13:51) [23]Max Zyuzin © (30.12.04 12:54) [18]
msguns © (30.12.04 13:00) [20]
Кода много. (распечатка занимает 8 страниц).
← →
_1008_ (2004-12-30 13:52) [24]Sancho © (30.12.04 13:25) [21]
У меня 98-я, на ХР та же мулька.
← →
Max Zyuzin © (2004-12-30 14:03) [25]>_1008_ (30.12.04 13:51) [23]
Что и все 8 страниц идут на то что бы в ворд вывести документ?
← →
_1008_ (2004-12-30 14:15) [26]Max Zyuzin © (30.12.04 14:03) [25]
Простой текст помещаю так:inc(k);
newStr:="Запис №"+inttostr(k)+":";
WD.Tables.Item(WD.Tables.Count).Rows.Add(EmptyParam);
WD.Tables.Item(WD.Tables.Count).Cell(WD.Tables.Item(WD.Tables.Count).Rows.Count,1).Range.InsertAfter(newStr);
WD.Tables.Item(WD.Tables.Count).Cell(WD.Tables.Item(WD.Tables.Count).Rows.Count,1).Range.Bold:=1;
WD.Tables.Item(WD.Tables.Count).Cell(WD.Tables.Item(WD.Tables.Count).Rows.Count,1).Range.Font.Size:=14;
Блобы переношу в два захода (я тут уже спрашивал - иного решения никто не предложил):Stream:=QuestQuery.CreateBlobStream(QuestQuery.FieldByName("QUESTION"), bmRead);
JRE.Lines.Clear;
JRE.Lines.LoadFromStream(Stream);
Stream.Free;
//-----------------------------------------//
JRE.SelectAll;
JRE.CopyToClipboard;
WD.Tables.Item(WD.Tables.Count).Rows.Add(EmptyParam);
WD.Tables.Item(WD.Tables.Count).Cell(WD.Tables.Item(WD.Tables.Count).Rows.Count,1).Range.Paste;
JRE - JvxRichEdit,
Stream - поток
Всё это делается в цикле по количеству записей в главной таблице.
Внутренний цикл с похожим кодом помещает подчинённые записи.
← →
Sancho © (2004-12-30 14:16) [27]_1008_ (30.12.04 13:52) [24]
Вот на XP можно попробовать отключить воостановление системы на том диске где файлы БД лежат, в смысле gdb. Я где-то читал, что в винде файлы с этим расширением системными считаются, т.е. при их изменении делается бэкап (только в WinXP).
← →
Max Zyuzin © (2004-12-30 14:26) [28]>_1008_ (30.12.04 14:15) [26]
А в блобе что живет? Не текст случаем?
← →
_1008_ (2004-12-30 14:51) [29]Max Zyuzin © (30.12.04 14:26) [28]
Назовём это композитными данными:
- текст;
- графика;
- формулы;
- что ещё в Word воткнуть штатными средствами можно.
← →
Max Zyuzin © (2004-12-30 14:54) [30]>_1008_ (30.12.04 14:51) [29]
Хотелось бы посмотреть как ты в это поле заносишь данные? так эе через клипбоард?
← →
_1008_ (2004-12-30 15:09) [31]Max Zyuzin © (30.12.04 14:54) [30]
InsertOleObject :) кажись так пишется. В диалоге выбирается тип объекта (коих в Windows не мало) и вперёд и с песнями.
← →
Max Zyuzin © (2004-12-31 12:19) [32]>_1008_ (30.12.04 15:09) [31]
Нужно покавырятся, а сейчас совсем не в состоянии... после праздников, ок? С НГ тебя
← →
YurikGL © (2005-01-01 10:09) [33]http://www.delphimaster.ru/articles/dbtoword/index.html
← →
_1008_ (2005-01-04 09:54) [34]YurikGL © (01.01.05 10:09) [33]
Спасибо, попробую разобраться.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.02.06;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.037 c