Страница 1 из 1

Хранимая процедура в источниках данных

Добавлено: 04 дек 2008, 13:47
Geny
Здравствуйте.

Вопрос 1 в окне "Источник данных" пишем текст запроса

Код: Выделить всё

exec info..atm_get_currrest
и жмем кнопку "Посмотреть результаты запроса", через некоторое время запрос вылетает по таймауту, где это можно настроить что бы отключить таймаут, потому что запрос рабоет 100% просто долго много данных обрабатывает.

Вопрос 2 в окне "Источник данных" пишем текст запроса

Код: Выделить всё

exec info..atm_get_currrest
и жмем кнопку "Получить все колонки", получаем ошибку "Попытка чтения или записи в защищенную память. Это часто свидетельствует о том, что другая память повреждена", как с этим бороться.

Работаю через ODBC, БД ASE, версия Stimulsoft Reports .NET 2008.1.200 от 9 марта 2008 г.

Хранимая процедура в источниках данных

Добавлено: 05 дек 2008, 05:42
Edward
Здравствуйте.

Чтобы увеличить CommandTimeOut параметр, выделите в окне 'Dictionary' источник данных, переключитесь в окно 'Properties'.

Получение колонок может не срабатывать, если у Вас в хранимой процедуре используются временные таблицы и получаемые колонки зависят от входных параметров. Также перед нажатием кнопки 'Получить все колонки' замените все параметры в запросе их возможными значениями. После получения списка колонок верните текст запроса назад.

Т.е. так:

1) Select * from Categories where CategoryID=5

2) Получить колонки

3) Вернуть текст запроса назад:

Код: Выделить всё

Select * from Categories where CategoryID=@CategoryID
или

Код: Выделить всё

Select * from Categories where CategoryID=?
Спасибо.

Хранимая процедура в источниках данных

Добавлено: 05 дек 2008, 06:23
Geny
Чтобы увеличить CommandTimeOut параметр, выделите в окне 'Dictionary' источник данных, переключитесь в окно 'Properties'.
Спасибо.
Получение колонок может не срабатывать, если у Вас в хранимой процедуре используются временные таблицы и получаемые колонки зависят от входных параметров.
Входные параметры это нестрашно, можно так сделать, но без временных таблиц будет трудно..., спасибо, буду думать.

Хранимая процедура в источниках данных

Добавлено: 05 дек 2008, 07:37
Edward
Если возможно внести колонки вручную, то запросы будут работать и с временными таблицами, не получится просто извлечь колонки и все. Временные таблицы лишь препятсвтие на пути получения колонок и не более того, работать хранимые процедуры должны в любом случае.

Спасибо.

Хранимая процедура в источниках данных

Добавлено: 09 дек 2008, 10:46
Geny
Проблема решилась путем изменения версии ODBC драйверов к ASE.
Если интересно то заработало на версии 05.00.0138(B0087, U0043) от 20/05/2008. Заработало с временными таблицами в хранимой процедуре и при условии что получаемые колонки зависят от входных параметров.

Спасибо за ответы.)

Хранимая процедура в источниках данных

Добавлено: 09 дек 2008, 16:45
Edward
Отличные новости!

Дайте знать, если понадобится дополнительная помощь.

Спасибо.