![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поскажите компоненты и репорты [D6, MSSQL]
surkis © (2005-08-03 12:31:00)Подскажите какие нибудь хорошие визуальные компоненты для работы с ADODB (грид какой нибудь хотя бы) и какими репортами лучше пользоваться. Заранее благодарен
paul_k (2005-08-09 15:21:00) [1]msguns © (09.08.05 13:06) [29]
Проблем с одним уродом было достаточно, чтобы вышеприведенное утверждение вошло в обязательную практику.
msguns (2005-08-09 13:10:00) [2]Дайте мне ваш E-mail, я скину два модуля из одной из своих библиотек, где содержимое датасета, отображаемого в гриде, экспортируется в эксель с сохранением свойств колонок грида ("как видим, так и печатаем"). На его базе можно сделать свой собственный метод вывода в отчет, подключив, например, те же шаблоны.
msguns (2005-08-09 13:06:00) [3]>paul_k © (09.08.05 09:26) [27]
Не надо видеть в каждом пользователе потенциального жулика и поддельщика документов. А если уж так строго, то можно сохранять отчеты в самой БД перед показом их пользхователю. Хотя, ИМХО, редко можно встретить случаи когда это действительно нужно.
>surkis © (09.08.05 12:23) [28]
Все же советую один раз разобраться с Экселем и навсегда избавиться от головной боли правки отчетов при изменении их формы, предоставив это самим пользователям с помощью вполне доступных им шаблонов.
surkis (2005-08-09 12:23:00) [4]Спасибо я уже разобрался с QReport'ом и Quantum Grid скачал с китайского http://delphifans.com/, там безплатно но пока с ихними иероглифами разберёшься..
paul_k (2005-08-09 09:26:00) [5]msguns © (03.08.05 14:09) [15]
Рекомендую отчеты выводить в Excel.
Не рекомендую для отчетов пользоватся редактируемыми пользователем форматами. Данные в отс\чете должны полностью соответствовать данным в базе, без потенциальной возможности юзера подкорректировать отчет.
Рекомендую попробовать разобратся для начала с QReport. Добится чтобы отчет все-таки в Preview был. От принтера это не зависит Скорее зависит от отсутствия данных в передаваемом наборе данных.
Для эксперимента можно воспользоватся встроенными в дельфи заготовками и мастерами.
ANB (2005-08-09 09:12:00) [6]EhLib рулит. Весьма неплох Quantum Grid, но он тяжелый, отличается по стилю работы от обычного и платный. Имхо, у меня есть халявый, но я предпочел EhLib.
> мне нужно купить офис?
???????
Из отчетников - хватит и обычных (QReport, FastReport), но лучше сразу учиться работать с Excel, все равно почти все заказчики предпочитают с ним работать. Есть неплохой и довольно простой способ - отчеты в html. Потом excel нормально открывает. Но при таком способе нельзя будет просто подсунуть изменяемый шаблон.
alex_*** (2005-08-09 08:45:00) [7]да человеку может QReport'a за глаза будет, только он с ним работать не умеет. surkis- запусти demos'ы и посмотри что у тебя не так
carmen (2005-08-09 08:09:00) [8]В стандартной поставке Delphi на вкладке ActivеX имеется компонент F1Book, аналог Excel. Рабоатать сним очень просто, создаеш шаблон отчета в Excel, открываеш в даном компоненте и заполняеш как тебе надо.
MDFE (2005-08-08 23:18:00) [9]msguns © (03.08.05 14:09) [15]
Чтобы Ваши отчеты мне были доступны, мне нужно купить офис?
surkis (2005-08-03 15:26:00) [10]
> Dell3r
Спасибо за пример!!!!!
surkis (2005-08-03 15:25:00) [11]спасибо, попробую разобраться
Dell3r (2005-08-03 15:24:00) [12]Небольшой пример по Excel
//Не забудь подключить ComObj в user
procedure TForm1.BtnExportClick(Sender: TObject);
var
XL, XArr: Variant;
i : Integer;
j : Integer;
begin
XArr:=VarArrayCreate([1,TableDB.FieldCount],varVariant);
XL:=CreateOLEObject('Excel.Application');
XL.WorkBooks.add;
XL.visible:=true;
j := 1;
TableDB.First;
while not TableDB.Eof do begin
i:=1;
while i<=TableDB.FieldCount do begin
XArr[i] := TableDB.Fields[i-1].Value;
i := i+1;
end;
XL.Range['A'+IntToStr(j),
CHR(64+TableDB.FieldCount)+IntToStr(j)].Value := XArr;
TableDB.Next;
j := j + 1;
end;
XL.Range['A1',CHR(64+TableDB.FieldCount)+IntToStr(j)].select;
XL.cells.select;
XL.Selection.Font.Name:='Arial cur';
XL.Selection.Font.Size:=10;
XL.selection.Columns.AutoFit;
XL.Range['A1','A1'].select;
end;
Лично я с этого начинал
isasa (2005-08-03 15:22:00) [13]Через интерфейс Excel
var appExel: OleVariant ;
...
appExel:=CreateOleObject('Excel.Application'); // IDispatch
...
или компонента есть(поддерживает удаленное подключение)
TExcelApplication
evvcom (2005-08-03 15:14:00) [14]
> как с екселем работать из делфи..DDE?
OLE! Примеров в сети уйма.
surkis (2005-08-03 14:18:00) [15]
> msguns
> Рекомендую отчеты выводить в Excel.
а как с ним работать я этого никогда не делал.. я даже не знаю как с екселем работать из делфи..DDE?
П.С. не удевляйтесь я закончил универ программистом но работал не по специальности, а вот только начал работать программистом. и еще нет опыта и ничего не знаю...
_dimka (2005-08-03 14:17:00) [16]Грид EHLib
Репорт FastReport 3
msguns (2005-08-03 14:09:00) [17]Рекомендую отчеты выводить в Excel. С использованием шаблонов не надо морочиться с программным кодом вообще - просто корректится шаблон екселя. Второе ключевое преимущество перед QReport - катит на любой тачке без использования каких бы то ни было программ (с екселем, ессно) и может правиться юзером.
Sergey13 (2005-08-03 14:09:00) [18]2[13] surkis (03.08.05 14:06)
>Открываю Priwiev открывается QReport'овское окно но оно пустое без репорта
Какой смысл жать что то еще? Отчет не сформирован. Разбирайся с этим.
surkis (2005-08-03 14:06:00) [19]так проблема не в програме а в QReport'е. Открываю Priwiev открывается QReport'овское окно но оно пустое без репорта на статусбаре надпись "Page 1 of 0", нажимею на настройку принтера вверху говорит "Ошибка при выполнении этой операции". В системе 3 сетевых принтера, все 3 доступны и печатают без проблем из других приложений, один из них НР1200 выбран используемым по умолчанию. Почему ошибка не понятно...
Sergey13 (2005-08-03 13:55:00) [20]2[11] surkis (03.08.05 13:45)
Так проблема то у тебя в программе. У меня например таких проблем нет. Как советовать то?