Как позвонить в StoredProcedure из CrystalReport? - PullRequest
1 голос
/ 16 февраля 2009

Я хотел бы вызвать хранимую процедуру из отчета Crystal и присвоить полученное значение поле в отчете?

Есть предложения?

Ответы [ 4 ]

3 голосов
/ 07 апреля 2009

Для вызова хранимой процедуры из кристаллического отчета,

Установить для источника данных отчета значение «Хранимая процедура» (мастер базы данных). Эта процедура должна соответствовать этому требованию

1- Вы должны создать пакет, который определяет REF CURSOR (тип поля, которое будет получено).

2- Процедура должна иметь параметр, который имеет тип REF CURSOR. Это потому что CR использует этот параметр для доступа и определения результирующего набора, который хранимая процедура возвращает.

3- Параметр REF CURSOR должен быть определен как IN OUT (чтение / запись режим).

4- Параметры могут быть только входными (IN) параметрами. CR не предназначен для работы с параметрами OUT.

5- Переменная REF CURSOR должна быть открыта и ей присвоен запрос в процедура.

6- Хранимая процедура может вернуть только один набор записей. Структура этого набор записей не должен изменяться в зависимости от параметров.

7- Хранимая процедура не может вызвать другую хранимую процедуру.

2 голосов
/ 18 февраля 2009

Попробуйте Эксперт по базам данных -> (левое дерево) Текущие соединения -> Добавить команду

В Добавить команду к отчету ввод на экране что-то вроде:

EXEC dbo.StoredProcedure (param1, param2 ...)

На этом же экране вы можете указать параметры для этого запроса.

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

0 голосов
/ 10 мая 2011

EXEC dbo.StoredProcedure param1, param2, ...

Не вводить круглые скобки.

0 голосов
/ 24 февраля 2009

Просто добавьте это как таблицу или представление. Параметры (если есть) будут добавлены в ваш отчет.

...