25.03.2010, 19:12 | #1 |
Участник
|
Проверка на наличие хранимой процедуры
Проблема:
Из axapta 3.0 лезу во внешнюю БД (нужно для отчетности), там вызываю хранимую процедуру. Возможно ли из кода аксы проверить, существует или нет хранимая процедура, которую я собираюсь дернуть? хранимая процедура дергается в sql базе Последний раз редактировалось crazysolntse; 25.03.2010 в 19:17. |
|
25.03.2010, 19:47 | #2 |
Участник
|
Посмотрите, как работает SysSQLInitDbTriggers::CheckExistsDBTriggers(), думаю, для хранимок можно сделать по аналогии.
|
|
25.03.2010, 20:55 | #3 |
Участник
|
Если речь идет об MS SQL, то проще всего так
X++: resultSet = statement.executeQuery("select IsNull(Object_id('MyProcName'),0)"); resultSet.next(); print resultSet.getInt(1); pause; Только я не знаю, какого типа будет возвращаемое значение Object_id() для MS SQL 2008. Не будет ли там BigInt? Для 2005 это int, так что переполнения быть не может. Хотя, для гарантии, можно написать запрос так X++: resultSet = statement.executeQuery("if IsNull(Object_id('MyProcName') is null select 0 else select 1"); |
|
|
За это сообщение автора поблагодарили: crazysolntse (1). |