Вызов хранимой продцедуры из ARD
Модераторы: m0p3e, edward_K, Модераторы
Вызов хранимой продцедуры из ARD
как?
вопрос возможно и тривиальный - как из ard отчета вызвать хранимую продцедуру?
платформа
MS SQL 2000
Galaktika 7.11
Спасибо.
вопрос возможно и тривиальный - как из ard отчета вызвать хранимую продцедуру?
платформа
MS SQL 2000
Galaktika 7.11
Спасибо.
-
- Местный житель
- Сообщения: 412
- Зарегистрирован: 28 апр 2005, 11:34
- Откуда: Галактика Млечный Путь
У нас тоже мс скл
Напрямую думаю что никак. Вызовы процедур в галактике реализованы на уровне драйвер-напсервер.Из прикладного кода это невозможно, т.к. нет объектов для например хранения запрошенных данных.С другой стороны для работы с логической таблицой автоматически генерятся хранимые процедуры. типа ft00000nn-для getfirst,nt0000nn-для getnext.
Re: Вызов хранимой продцедуры из ARD
Что эта процедура собой представляет? Если она не возвращает данные, то можно модифицировать триггер у какой-нибудь не используемой таблицы и уже сам триггер будет вызывать нужную ХП. В принципе, таким способом можно даже данные возвращать, но для этого надо модифицировать словарь.Lavs писал(а):как?
вопрос возможно и тривиальный - как из ard отчета вызвать хранимую продцедуру?
платформа
MS SQL 2000
Galaktika 7.11
Спасибо.
Ну тогда, примерно так:Lavs писал(а):Спасибо за ответы.
В продцедуре предполагается использвать хитросплетенные запросы. Никаких модификаций с данными происходить не будут. Только выборка. Естественно она будет возвращать некий record-set который средствами ard я бы уже обрабатывал по своему усмотрению.
Добавляешь новую таблицу с соответствующей структурой в словарь. В эту таблицу ХП будет записывать свои результаты. Находишь какую-либо неиспользуемую таблицу, добавляешь туда 1 запись и используешь поля таблицы для передачи параметров в ХП. Модифицируешь триггер на обновление этой таблицы таким образом, чтобы он производил вызов нужной ХП, которая записывает результат своей работы в таблицу. Вот и все. Теперь в ARD отчете вызываешь оператор модификации таблицы с указанием необходимых значений полей (параметры ХП) и после этого можно сразу получать данные из таблицы-результата.
В нормально написанной ХП все работает на порядки быстрее, чем в Гаалактике. Особо тяжелая отчетность у меня сделана на ХП, но в галактику я результаты не получаю.san писал(а):интересный подход.можно и две таблицы создать. первая для параметров, вторая для результата. и все равно мне не понятно зачем это все надо, что бы быстрее работало чтоли...