powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi и Crystal Report
9 сообщений из 9, страница 1 из 1
Delphi и Crystal Report
    #32295548
ova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня в проге на Delphi работает отчет. Решил перейти на Crystal Report. Не могу найти только одного момента. Как из Делфи динамически сформировать SQL -строку запроса. Т.е. мне нужно в зависимости от настроек отчета добавлять в условие 'where' множество параметров отбора значений (в том смысле, что некоторые условия нужны, а некоторые не нужны). Подскажите, чего делать?
...
Рейтинг: 0 / 0
Delphi и Crystal Report
    #32295962
Gold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понял точно, чё за проблема, но вроде как так:

Query.SQL.Text:='SELECT * FROM XXX WHERE ...';

В некоторых компонентах есть макросы в запросах, например в rxQuery и FIBPlus - там это вобще просто, как с параметром можно работать.
...
Рейтинг: 0 / 0
Delphi и Crystal Report
    #32295987
neuro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Используй CrpeDS компонент
а лучше и проще если данные берутся с сервера то работай через StoredProc
...
Рейтинг: 0 / 0
Delphi и Crystal Report
    #32296130
ova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To neuro

А как в StoredProc сформировать динамический запрос, на основании какого-то входного параметра, или как? Если можно мал-е-е-е-енький фрагментик.
...
Рейтинг: 0 / 0
Delphi и Crystal Report
    #32296824
neuro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
делаешь StoterProc, например

create procedure dbo.ap_Print
@val1 int,
@val2 int
as
select * from test where field1 = @val1 and field2 = @val2

подключяешь процедуру к кристалу, делаешь rpt'шник, только при сохранении обязательно убери галку save data with report.

в Delphi после того как в Crpe1.ReportName поставишь имя rpt'шника
можешь делать вот так:
Crpe1.ParamFields.ByName('@val1','').CurrentValue := '0';
Crpe1.ParamFields.ByName('@val2','').CurrentValue := '1';
...
Рейтинг: 0 / 0
Delphi и Crystal Report
    #32297337
ova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так таким образом я могу и просто параметры использовать в самом Crysral. А меня интересует вопрос, если мне, например, первое условие where вообще не нужно (по полю field1 отбирать все значения), чего мне тогда делать? В Делфи все просто, формирую SQL-строку в зависимости от потребностей, и вставляю ее в Query. А как с Crystal это сделать?
...
Рейтинг: 0 / 0
Delphi и Crystal Report
    #32297892
Mike Evteev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А мне всегда казалось что в Crystal есть какая-то врзможность протолкнуть выбранные данные типа ADO Recordset.
...
Рейтинг: 0 / 0
Delphi и Crystal Report
    #32298011
m_kus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть возможность формировать отчёт с помощью Active Data (Fields Definitions Only), которому в Delphi можно указать в качестве источника данных TDataSet, в котором, соответственно ты сам формируешь запрос. Ищи в интернете примеры.
А насчёт формирования SQL прямо в отчёте из программы - ничего не могу подсказать.
...
Рейтинг: 0 / 0
Delphi и Crystal Report
    #32298629
ova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все дело в том, что мне не проблема сформировать в Делфи отчет (и QuickReport, и FastReport и др.). Отчет у меня сейчас работает в QuickReport. Просто интересно, как это сделать в Crystal. Не могу поверить, что в таком средстве, который является стандартом де факто, нельзя это сделать нормальными средствами.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi и Crystal Report
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]