Вниз
Скачать: CL | DM;

Blob в QuickReport   Найти похожие ветки 

← →
skiph ©   (2002-05-31 05:15) [0]

Есть таблица, в которой есть blob поле (документ Word), как мне его отразить в QuickRep? Хотел использовать QRDBRichText1, но ое, естественно, отображает только само тело blob"a без конвертации в документ.


← →
Lusha ©   (2002-05-31 09:24) [1]

Если поле содержит документ Word, зачем использовать QuickRep?


← →
skiph ©   (2002-06-04 06:15) [2]

Ну хорошо. А как из блоба вставить в документ?


← →
Lusha ©   (2002-06-04 10:41) [3]

Сходите для начала сюда...
http://delphi.mastak.com/cgi-bin/faq.pl?look=1&id=988619885&n=18


← →
skiph ©   (2002-06-04 10:55) [4]

Ну это я уже давно знаю... :( А вот как кусок вордовского документа из блоба вставить.... Пробовал через TOLEContainer: Stream:=Query.CreateBlobStream(Query.FieldByName("Containe"),bmRead);
OleContainer1.LoadFromStream(Stream);
OleContainer1.Copy;
WordDocument1.Application.Selection.Paste;

Открывает нормально и копирует вроде, а вот на пасте вылетает.


← →
Lusha ©   (2002-06-04 13:16) [5]

А обязательно через ClipBoard.... Не проще через SaveAsDocument?


← →
skiph ©   (2002-06-05 03:45) [6]

Не хотелось бы: слишком часто в винту придется обращаться. Но это мысль! Оставлю на аварийный случай


← →
skiph ©   (2002-06-05 10:56) [7]

А другого способа нет?


← →
Lusha ©   (2002-06-05 11:41) [8]

Можно попытаться вывести на печать содержимое OLE контейнера... А его самого использовать в качестве окна предварительного просмотра... Ни разуне пробовал, и даже не уверен, что это возможно... Надо пробовать, но если получится. то будет просто Супер (на мой взгляд)... :)


← →
skiph ©   (2002-06-07 07:30) [9]

Если работаешь с Word (Excel), то печатать можно двумя способами:
1) Ручной. Делаешь OLEContainer1.DoVerb(ovShow); После этого тебе доступна Wordовая функция печати (пиктограммка).
2) Доступ к печати OLEContainer1.OleObject.Application.ActiveDocument.PrintOut


← →
Lusha ©   (2002-06-07 08:56) [10]

>skiph © (07.06.02 07:30)
Ну, тогда в чем же дело?


← →
Anatoly Podgoretsky ©   (2002-06-07 09:17) [11]

Наверно в третьем способе


← →
dmaznich   (2002-06-07 10:48) [12]

Попробуй следующее

begin
OleContainer1.CreateObject("Word.Document.8", True);
OleContainer1.LoadFromStream(S);
OleContainer1.Perform(WM_LBUTTONDBLCLK, 0, 0);
end;

S: TMemoryStream, куда предварительно загружен файл из BLOB.
У меня отлично работает вместе с Oracle 8i.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.012 c
3-897
Voldemar
2002-06-07 02:45
2002.07.01
Кол-во записей в QuickReport


14-1135
Внук
2002-05-28 10:33
2002.07.01
Функция wvsprintf


3-895
Termik
2002-06-07 12:08
2002.07.01
Как внести данные в таблицу внутри EXECUTE IMMEDIATE ?


8-1116
Digitman
2002-02-24 14:26
2002.07.01
Всем интересующимся цифровой обработкой сигналов !!!


14-1198
VID
2002-05-31 19:16
2002.07.01
Частоты...




   Наверх