powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Параметры в Crystal Reports
1 сообщений из 1, страница 1 из 1
Параметры в Crystal Reports
    #32353494
MaximV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть отчёт в Crystal Reports 9. В нём одна сохранённая процедура с параметрами. База на MS SQL 2000. Параметры из клиента изменить не получается. Клиент на C++ Builder. Делаю так:
...
if(!PEOpenEngine())
return;
AnsiString FileName = ReportsOpenDialog->FileName;
nPrintJob = PEOpenPrintJob(FileName.c_str());
if(nPrintJob == 0)
return;

PEParameterFieldInfo *ParameterFieldInfo = new PEParameterFieldInfo;
PEValueInfo *ValueInfo = new PEValueInfo;
PEGetNthParameterField(nPrintJob, 0, ParameterFieldInfo);
// Здесь ParameterFieldInfo->CurrentValue = '', хотя оно = 10.
AnsiString s = "1"; // Новое значение параметра
StrPCopy(ParameterFieldInfo->CurrentValue, s);
PESetNthParameterField(nPrintJob, 0, ParameterFieldInfo); // возвращает true
PEOutputToWindow(nPrintJob, ReportsOpenDialog->FileName.c_str(), 0, 0, 0, 0, WS_MAXIMIZE+WS_MINIMIZEBOX+WS_MAXIMIZEBOX+WS_SYSMENU+WS_CLIPSIBLINGS, MainHandle);
PEStartPrintJob(nPrintJob, true);
delete ParameterFieldInfo;
delete ValueInfo;

Отчёт открывается со старыми параметрами.

Пробовал через
PEGetNthParameterCurrentValue(nPrintJob, ParameterFieldInfo->Name, ParameterFieldInfo->ReportName, 0, ValueInfo);
ValueInfo->viNumber = 1;
PEAddParameterCurrentValue(nPrintJob, ParameterFieldInfo->Name, ParameterFieldInfo->ReportName, ValueInfo);

Отчёт открывается с параметром равным 0.

В чём дело?
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Параметры в Crystal Reports
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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