![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
QuickReport: Сохранение отчета в файл (TXT,HTML,DOC,.....) [D5, D6]
MaxSit © (2002-02-07 12:12:00)Существует проект, где все отчеты в QR(есть свой Preview). Потребовался экспорт отчетов в TXT,WORD,EXCEL,HTML.
1.)Перейти на другой репогенератор просто невозможно: проект огромен.
2.)Стандартные методы не подходят, ну очень криво работают.
Может кто подскажет выход: библиотеки или мыслишки по поводу экспорта.
PS: Нашел пакетик: PsQRFilter (TPsQRExport). Но он триальный, хотя работает просто СУПЕР.
a1st (2002-02-08 11:29:00) [1]Недавно обсуждали этот вопрос по фильтрам. Вот еще адресок, дешевле, чем PsQRFilter - http://www.waler.com/textrafilters.htm- 25$. Проверено, работает.
Предлагают также технологию "От Ворда", т.е. разработка word template и использование его в qreport (EkRtf) - http://gpb.skiftel.ru/ec(29$). Есть также fastreport -
http://www.fastreport.ru/(19$ для ex-USSR) + converter qreport -> fastreport (30$)
http://www.automa.com.br/delphi/qr2fr.htm.Но бесплатно никто не дает.
* Диагноз: острая хроническая финансовая недостаточность
IronHawk (2002-02-08 11:24:00) [2]>>> 22606 ©
ЭТО УЖЕ БЛИЖЕ К ТЕЛУ
(как говори Мопасан).
.... СПАСИБО !
22606 (2002-02-08 11:07:00) [3]Как правильно написал Johnmen © (07.02.02 17:08)
дейстительно, dbf нужно создавать не по отчету, а по набору данных, с ним связанному (QReport.DataSet)
Самый простой (но не самый эффектный) способ загнать DataSet (связанный с отчетом) в dbf - это посредством TBatchMove
Вот процедурка для этого
procedure DatToDbf(const TableFileName : string; DaT : TDataSet);
var
Table : TTable;
BM : TBatchMove;
begin
Table := TTable.Create(nil);
try
Table.TableType := ttFoxPro;
Table.DatabaseName := ExtractFileDir(TableFileName);
Table.TableName := ExtractFileName(TableFileName);
BM := TBatchMove.Create(nil);
try
BM.Mode := batCopy;
BM.Source := (Dat as TBDEDataSet);
BM.Destination := Table;
BM.Transliterate := True;
BM.Execute;
finally
BM.Free;
end;
finally
Table.Free;
end;
end;
Опции BMможете изменить по своему вкусу
Для этого примера обязательно наличие на машине BDE.
Кодировка получившегося DBF будет зависеть от настройки BDE для DBF-файлов.
Что касается вопроса по QR и записи в разные форматы, то стандартные фильтры действительно очень кривые.
Я встречал очень простой и интересный способ сохранить отчет в DOC файл - это записать его как картинку, а потом вставить картинку в DOC. Но этот метод хорош только для того, чтобы передать документ кому-то или сохранить его для последующей печати, но не редактировать. Если Вас действительно устраивает найденный PsQRFilter (TPsQRExport), попробуйте найти на него ключик или еще проще купить :-) (если действительно проект того стоит).
IronHawk (2002-02-08 10:33:00) [4]>>> Johnmen ©
Так кто-то такое делал я помню !
НО вот КАК ????
Johnmen (2002-02-07 18:28:00) [5]>IronHawk © : Не мучай себя, не думаю, что кто-то сможет конкретно(в твоем понимании) помочь :(
IronHawk (2002-02-07 18:17:00) [6]>>> Johnmen ©
OK!
напиши какие знаешь компоненты которые это реально делают ...
я из них код СЫМУ !
КТО ЗНАЕТ КАК ЕТО РЕАЛИЗОВАТЬ ?????????
ПАМАГИТЕ !
Johnmen (2002-02-07 17:46:00) [7]>IronHawk © : зря ты меня заранее благодаришь,
поскольку реальный код не выкачу...:(...То, что я говорил - это на уровне идеи...На реализацию которой нет времени, совсем нет.
IronHawk (2002-02-07 17:37:00) [8]>>> MaxSit ©
XLReport 4.0 банер смотри !
>>>Johnmen ©
Опиши, как реально (кодом), хоть приблизительно, ЭТО РЕАЛИЗОВАТЬ
в *.dbf !!!
... заранее благодарен !
MaxSit (2002-02-07 17:33:00) [9]В догонку...>
Отчеты бывают самые разные, с группировкой, суммарные какие-нибудь поля и прочие украшательства. Красиво самому расставить: писать компонент, на который времени нет. Может кто в инете видел что-то подобное.
Johnmen (2002-02-07 17:08:00) [10]Ничего лучше, чем по "SAVE" в run-time создать dbf и слить в него
QReport.DataSet (а если Master-Detail, то соответственно),
я предложить не могу ...(а кто сможет !?)
IronHawk (2002-02-07 17:05:00) [11]>>> Johnmen ©
>Погоди-погоди, сохранить во время просмотра или до, или после ?
>Еще - пользуешь стандартный Preview ?
Да, в стандартном превью чтоб мог сохранить в формате *.dbf
ВО ВРЕМЯ ПРОСМОТРА !
MaxSit (2002-02-07 16:54:00) [12]Уточняю:
У меня есть свой Preview, там же есть кнопочка "SAVE". Мне надо, чтобы юзвер сам выбрал формат файла и в него сохранил. Совет, типа, загони в DBF или т.п. не канает, т.к. отчетов около 600, практически все готовятся динамически, изменить - это год потратить (ну это я ломанул). Фильтр QR не советуйте, если хоть раз пробовали им пользоваться (чисто шара).
Johnmen (2002-02-07 16:05:00) [13]Погоди-погоди, сохранить во время просмотра или до, или после ?
Еще - пользуешь стандартный Preview ?
IronHawk (2002-02-07 15:49:00) [14]>>> Johnmen ©
А смысл !
Мне надо чтоб я мог QuickRep.Preview сохранить данные из него
в файле *.dbf (или *.db).
По типу QRTextFilter только для DBF !
Johnmen (2002-02-07 15:36:00) [15]1. создаешь нужный dbf
2. пишешь в него, что надо
IronHawk (2002-02-07 15:26:00) [16]>>> Johnmen ©
подробнее ПЛЗ !
Johnmen (2002-02-07 14:33:00) [17]>IronHawk © : м.б. проще ручками из НД , на который репорт,
загнать в ..... (нет, не туда, а в *.dbf *.db) ;o))
IronHawk (2002-02-07 14:19:00) [18]>>> MaxSit ©
Я тоже ищу Subj но в *.dbf *.db ....
найдё скажешь !
Johnmen (2002-02-07 14:16:00) [19]фильтры для TXT и HTML есть в QR...
MaxSit (2002-02-07 13:16:00) [20]Ну что, хоть кто-то скажет свое веское словцо?