07.05.2010, 18:06 | #1 |
Модератор
|
Сбой запроса на разрешение типа "SqlStatementExecutePermission".
Сбой запроса на разрешение типа "SqlStatementExecutePermission".
Сбой запроса на разрешение типа "SqlStatementExecutePermission". (S)\Classes\SqlStatementExecutePermission\demand (S)\Classes\Statement\executeQuery Каких прав доступа не хватает? Вызываю метод класса на стороне сервера: X++: server static SET pGet_Items() { Connection con = new Connection(); Statement stmt = con.createStatement(); ResultSet resultSet; set s1 = new set (types::Container); ; new SqlStatementExecutePermission(sqlExpression).assert(); sqlExpression = Strfmt("exec [pGet_Items_CLEAR] '%1'", InventParameters::find().it_SQLDB); resultSet = stmt.executeQuery(sqlExpression); CodeAccessPermission::revertAssert(); return s1; } Процедуру элементарную вызывает Код: ALTER PROCEDURE [dbo].[pGet_Items_CLEAR] @DB varchar(20) AS BEGIN SET NOCOUNT ON; DECLARE @TableName varchar(50) SET @TableName = '.dbo.Items'; EXEC ('TRUNCATE TABLE ' + @DB + @TableName) Select 0 as [tmp]; END Вызов другой процедуры проходит нормально, которая возвращает строки. Но в той процедуре тоже есть строка EXEC ('TRUNCATE TABLE ' + @DB + @TableName), но она почему то не отрабатывает при вызове процедуры из аксапты. Таблица так и остается полной. Собственно запрос в SQL Profiler: Код: declare @p1 int set @p1=0 declare @p3 int set @p3=2 declare @p4 int set @p4=8193 declare @p5 int set @p5=0 exec sp_cursoropen @p1 output,N'exec pGet_Items ''Test''',@p3 output,@p4 output,@p5 output select @p1, @p3, @p4, @p5 Не пойму почему с вызовом хранимой процедуры из аксапты такая проблема. |
|
|
|