![]() |
#1 |
Модератор
|
![]()
Сбой запроса на разрешение типа "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 Не пойму почему с вызовом хранимой процедуры из аксапты такая проблема. |
|
|
|