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

Вниз

QReport. Коррекция отчета перед печатью   Найти похожие ветки 

 
MsGuns   (2003-08-27 13:16) [0]

Проблема в том, что в отчете есть пустая графа, которую узер хочет заполнять руками непосредственно перед печатью (типа примечаний). Однако Preview такого, ессно, не позволяет. Есть ли какое-нибудь решение в рамках именно этого компонента или надо выводить НД источника в ексель (например) ?

И второй вопрос. Надо средство просмотра сохраненных .QRP на ПК без БД и проги, которые собственно эти отчеты создали и сохранили. Написал мини-прожку, в которой лежит QReport, и ему в событии OnShow формы дается запуск метода Preview. Потом уже делаешь Load, просмотр, печать и т.д. Но проблема ! При загрузке отчета из .QRP установки формата листа игнорируются и остаются те, которые я выставил в дизайне (т.е.абсолютно левые). В результате отчет обрезается (альбом до портрета, к примеру). Где скривил руками или головой ?

ЗЫ. В FAQ, к сожалению, не нашел. Поиск по QRep тоже мало что дал


 
stud   (2003-08-27 13:19) [1]

1 можно создать свой просмотр. а проще вывести на форме то что нужно и пость пользователь в каком-нибудь эдите вводит свои коментарии. и выводи их потом где угодно

2 можно отчет сохранять в формате эксель или ворд( версия pro)


 
MsGuns   (2003-08-27 13:44) [2]

>stud © (27.08.03 13:19) [1]
1. Можно, конечно, предварительно вывести данные отчета в стринггрид (к примеру) и дать редактить, а уж потом выводить в QReport, но не катит из-за сложности подгонки шрифтов и размеров грида и формата листа принтера.

2. С этим-то понятно. Но тогда на фиг репорты, да и морочливо (опыта, увы, нет)


 
stud   (2003-08-27 14:10) [3]

по поводу 2 никаких морок. кидаеш компонент на репорт и все.

а по поводу первого - пользователь все равно должен видеть исходные данные перед печатью, в каком виде решать тебе.
я так понимаю тебе нужно дать польз. редактировать коментарий для каждой записи?


 
MsGuns   (2003-08-27 14:39) [4]

>stud © (27.08.03 14:10) [3]
>по поводу 2 никаких морок. кидаеш компонент на репорт и все.

Не пробовал, потому и спрашиваю в конференции

>а по поводу первого - пользователь все равно должен видеть исходные данные перед печатью, в каком виде решать тебе.
я так понимаю тебе нужно дать польз. редактировать коментарий для каждой записи?

Да.


 
stud   (2003-08-27 14:47) [5]

так может добавить в таблице поле для коментария?


 
Hawk2   (2003-08-27 16:17) [6]

Извините что вмешиваюсь, как по мне то я считаю что QReport хорош в том случае где нужно чтобы пользователь ничего не мог напортить или изменить в отчете, а в остальных случаях лучьше Ексель. И вообще он мне больше нравится, вывел данные из базы, а там хоть в другой отчет можно переделать и при пересилке на другую машину проблем з програмкой просмотра нет, так как очень большая редкость чтобы на машине не было Екселя, особенно там где занимаются всякого вида расчетами. И вообще мощный инструмент.


 
stud   (2003-08-27 16:54) [7]

инструмент-то мощный, только возьмет пользователь и в отчете в экселе изменит цены или еще что а в базе забудет... и начнется нормальная половая жизнь))))


 
MsGuns   (2003-08-27 17:41) [8]

>Hawk2 © (27.08.03 16:17) [6]
Ваш вариант мне, конечно, нравится бОльше из-за своей универсализации, но есть 2 причины "против":

1. Узер сам может править форму отчетности, а это не всегда есть хорошо, т.к. это наш хлебушек также ;)). Хотя в некоторых случаях это есть даже очень хорошо, т.к. хлеб черствый, а мороки до фига ;((

2. Не делал я такого, к сожалению. И меня больше всего пугает то, как я в Экселе должен указать ссылки на сущности БД, куда потом прога засунет содержимое полей НД. Но ничего, лиха беда - начало.

Если у Вас есть подходящий пример из работающих программ, буду весьма признателен, если мыльнете его мне (WinRar 2.60/WinZip)

Спасибо за участие и советы !

>stud ©

Спасибо большое за попытку помочь ;)


 
HSolo   (2003-08-27 18:48) [9]

А может, Вам есть смысл посмотреть на F1Book?


 
Hawk2   (2003-08-27 19:39) [10]

MsGuns © (27.08.03 17:41) [8]
Исходник я Вам отправил, думаю разбиретесь, но там еще нужно объяснить как подготовить шаблон в Екселе по которому будут виводится данные. У меня сейчас нет времени напишу вечером или сюда или на мыло. Если это Вас устроит.


 
MsGuns   (2003-08-27 19:39) [11]

>HSolo © (27.08.03 18:48) [9]

А що це таке и з чим його едять ? Безкоштовно мабудь ?


 
Reindeer Moss Eater   (2003-08-27 19:41) [12]

А почему не запрашивать у пользователя значение в OnPrint-событии&


 
MsGuns   (2003-08-27 19:45) [13]

>Hawk2 © (27.08.03 19:39) [10]

Исходник получил. Спасибо большое, буду разбираться


 
MsGuns   (2003-08-27 19:47) [14]

>Reindeer Moss Eater © (27.08.03 19:41) [12]
>А почему не запрашивать у пользователя значение в OnPrint-событии&

Формат листа ? Это в принципе мысль ! Мне чой-то в головенку не пришла ;((


 
Hawk2   (2003-08-27 22:40) [15]

То MsGuns: Я Вам отослал примерчик и небольшой Хелп, чтобы было яснее. Напишите когда получите.


 
HSolo   (2003-08-28 10:07) [16]

> А що це таке и з чим його едять ? Безкоштовно мабудь ?

Это ActiveX такой, живет в Delphi на закладке ActiveX. В двух словах - что-то вроде встроенного упрощенного Excel-а, или заготовка для создания такового. Умеет читать/писать Excel-файлы (Excel 4.0/5.0 format), коннектиться к БД ч/з ODBC, можно и ручками заполнять, по аналогии с Excel, формулы вставлять, и много чего еще. У меня в одном проекте (бухгалтерия) все отчеты (журнал-ордера, шахматка, оборотка по иерарх.таблицам) были сделаны на этой штуке; юзера были довольны :)


 
Sergey13   (2003-08-28 10:20) [17]

2MsGuns © (27.08.03 13:16)
А если перефразировать Reindeer Moss Eater © (27.08.03 19:41) [12] И не спросить юзера перед print/preview что то, и это "что то" вставить в отчет в BeforePrint-событии нужного бенда.


 
MsGuns   (2003-08-28 11:49) [18]

>Hawk2 © (27.08.03 19:39) [10]

Получил второе послание с архивом. спасибо большое. Сейчас жутко некогда - в выходные на другом компе (с 3-м раром) распотрошу и посмотрю.
FastXLReport.pas посмотрел, но несколько вопросов "пристрелочных":
Excel197 - это из станд.библиотеки ? Если да, то это как-нибудь связано с инсталлированыым екселем. ? Т.е. как оно будет работать, если на ПК нет инсталленного екселя ? Надо типа try поставить, однако ;))

Есть ли в присланном Вами примере шаблона суммирование по колонкам и группировка ? Это, честно говоря, меня больше всего и кумарит. Как бы не пришлось все ручками при экспорте данных не вписывать в ексель :( И по фигу получается настройки в шаблоне фонтов итогов ? Опять же что делать с граф.обрамлением (рамка таблицы), корректным переносом на след.лист и т.д. ? (Этот вопрос скорее риторический - буду сам смотреть в процессе экспериментов)

Вы при написании модуля не пользовались случайно статьей Е.Старостина от 31 иая 2000г с КД ? Меня на эту мысль навела хитровыделанная строка
xlReport.ScreenUpdating[0]:=true;

>HSolo © (28.08.03 10:07) [16]

Спасибо ! Интересная мысль и на заметку маленьким и глупеньким типа меня ;)))

>All
Всем большое спасибо ! Всегда знал, что Мастаки - это The Best !
Инфы достаточно - буду ковыряться. Готового решения, понятно, нет, да и быть не может. Но я его и не искал


 
Hawk2   (2003-08-28 12:17) [19]

Поробую по порядку.

Вы имеете ввиду подключеный модуль Excel97 в разделе uses. Так это экспортированная библиотека типов из Excel. Файл Excel97.pas есть в папке C:\Program Files\Borland\Delphi5\Ocx\Servers\, там еще есть и по Ворду, Аксесу и т.д.

При неустановленном Екселе не пробовал, но конструкцию типа try я думаю надо. Просто я этот модуль написал уже около года назад, сейчас ничего не пишу, поэтому и не довел до конца ("не отшлифовал" :-)), так что можите изменять как посчитаете нужным.

На счет суммирования, там ксожалению его нет, тоже не дошел. А вот обрамление есть. В шаблоне какую рамку поставите такая будет по всему отчету посмотрите в примере. Также переносится цвет шрифта и фона, вот эти строчки:

xlSheet.Range[Col[Column]+IntToStr(Row),Col[RangeLen]+IntToStr(Row+Dat aSet.RecordCount-1)].Font.Color:=xlSheet.Range[Range,EmptyParam].Font. Color;
xlSheet.Range[Col[Column]+IntToStr(Row),Col[RangeLen]+IntToStr(Row+Dat aSet.RecordCount-1)].Interior.Color:=xlSheet.Range[Range,EmptyParam].I nterior.Color;
xlSheet.Range[Col[Column]+IntToStr(Row),Col[RangeLen]+IntToStr(Row+Dat aSet.RecordCount-1)].Borders.LineStyle:=xlSheet.Range[Range,EmptyParam ].Borders.LineStyle;

тут можно добавить и размер шрифта и все что получится.

Я не помню какими статьями пользовался, как я говорил это было около года назад, но знаю что статья была написана автором того самого XLReport-а.

И еще, если Вы не передумали, я сейчас на работе и могу выслать такой же пример запакованный arj, rar или zip из Far-а.


 
Anatoly Podgoretsky   (2003-08-28 12:27) [20]

MsGuns © (28.08.03 11:49) [18]
Наряду с try, надо в дистрибутив включить бесплатный Excel Viewer и предложить пользователю его установку.
По словам Микрософт, он поддерживает почти полность OLE


 
MsGuns   (2003-08-28 12:33) [21]

>Hawk2 © (28.08.03 12:17) [19]
>И еще, если Вы не передумали, я сейчас на работе и могу выслать такой же пример запакованный arj, rar или zip из Far-а.

Устроит любой, просто WinRar у меня не 3-й, а 2.60. Хотя это необязательно, просто мне будет немножно доп.возни (сходить в другой корпус), но мне не в лом совершенно

>Anatoly Podgoretsky © (28.08.03 12:27) [20]
>Наряду с try, надо в дистрибутив включить бесплатный Excel Viewer и предложить пользователю его установку.

Спасибо, Анатолий. Возьму на заметку. Хотя иногда узеру надо "врезать" в отчет свою инфу (см.сабж)


 
Hawk2   (2003-08-28 13:08) [22]

MsGuns ©
Посмотрите почту.


 
MsGuns   (2003-08-28 13:19) [23]

>Hawk2 © (28.08.03 13:08) [22]

Получил. Спасибо еще раз большое !


 
Hawk2   (2003-08-28 13:30) [24]

Рад был помочь! Надеюсь пригодится.



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

Форум: "Базы";
Текущий архив: 2003.09.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.009 c
1-58672
Григорий
2003-09-04 23:03
2003.09.18
Как правильно сохранить проект?


1-58723
asJIura
2003-09-07 18:46
2003.09.18
Почему форма не перерисовавается при создании?


6-58816
DenKop
2003-07-11 02:06
2003.09.18
Upload FTP несовпадения размеров исходного и полученного файлов


14-58843
kopcap
2003-08-30 19:03
2003.09.18
JavaScript


1-58696
Pavel Oliynik
2003-09-08 11:29
2003.09.18
ассоциативные массивы в памяти есть в Дельфи или как .. ?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский