22.08.2011, 20:26 | #1 |
Участник
|
Ax2009 CCADO* одновременно записать и вернуть результат
Использую классы CCADO
Пишу запрос, где надо записать строку в таблицы другой базы (хранимая процедура) и при этом вернуть результат - записано/ошибка (хранимая процедура). Возвращаемая ошибка не храниться. Пишу: X++: connection.open(dbCnnString); command.commandText(" declare @result int " + "execute @result = extMpInsert" + + "execute select @result") X++: recordSet = command.execute(); Последний раз редактировалось Arahnid; 22.08.2011 в 20:37. |
|
22.08.2011, 22:14 | #2 |
Участник
|
Посмотрите эту тему Добавление записей в таблицу БД через CCADOCommand.
Там есть примеры подобных вызовов.
__________________
Axapta v.3.0 sp5 kr2 |
|
23.08.2011, 00:03 | #3 |
Участник
|
Цитата:
Сообщение от AndyD
Посмотрите эту тему Добавление записей в таблицу БД через CCADOCommand.
Там есть примеры подобных вызовов. X++: permission = new InteropPermission(InteropKind::ComInterop);
permission.assert(); Последний раз редактировалось Arahnid; 23.08.2011 в 00:49. |
|
23.08.2011, 08:02 | #4 |
Участник
|
Вы на сервере вызываете?
Обратите внимание, что в стандарте классы CCADO* - клиентские. Так же, set nocount on/off в примере не зря используется Приведите законченный вариант кода, с комментарием, где конкретно вызывается ошибка
__________________
Axapta v.3.0 sp5 kr2 |
|
23.08.2011, 12:47 | #5 |
Участник
|
Виновник торжества и проблем найден. ADO при успешной транзакции выдает пусто (нет результирующей строки, даже если ее попросить). А в запросах через Management Studio пишется результат 0, т.к. запрос идет через ODBC. Особенности 2ух механизмов работы.
Последний раз редактировалось Arahnid; 23.08.2011 в 13:17. |
|
|
|