Вызов хранимой процедуры из 1С
Добрый день!
Помогите разобраться. Создала внешнюю обработку, которая должна будет создать трассировку. Однако при вызове метода RecordSet.Open() вылетает ошибка:
{ВнешняяОбработка.СтатистикаЗапросовПоБД.Форма.Форма.Форма(48)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Неправильный синтаксис около конструкции ",".
Подскажите, в чем проблема?
Код:
Помогите разобраться. Создала внешнюю обработку, которая должна будет создать трассировку. Однако при вызове метода RecordSet.Open() вылетает ошибка:
{ВнешняяОбработка.СтатистикаЗапросовПоБД.Форма.Форма.Форма(48)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Неправильный синтаксис около конструкции ",".
Подскажите, в чем проблема?
Код:
Попытка
ADOСоединение = Новый COMОбъект("ADODB.Connection");
ADOСоединение.ConnectionString = СтрокаСостояния;
ADOСоединение.Open();
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
Command = Новый COMObject("ADODB.Command");
Command.ActiveConnection = ADOСоединение;
Command.NamedParameters = Истина;
ТекстЗапроса = "exec sp_trace_create, 'C:\Projects'";
Command.CommandText = ТекстЗапроса;
Command.CommandType = 4;
RecordSet = Новый COMObject("ADODB.RecordSet");
RecordSet.ActiveConnection = ADOСоединение;
RecordSet.CursorType = 3;
RecordSet.LockType = 2;
Попытка
RecordSet.Open(ТекстЗапроса, ADOСоединение);
Таблица = Новый ТаблицаЗначений;
КолКолонок = RecordSet.Fields.Count;
Пока RecordSet.Eof()= 0 Цикл
Для Инд = 0 По КолКолонок - 1 Цикл
Таблица.ЗагрузитьКолонку(RecordSet.Fields(Инд).Value, RecordSet.Fields(Инд).Name);
КонецЦикла;
RecordSet.MoveNext();
КонецЦикла;
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
ПоказатьПо теме из базы знаний
Найденные решения
(18) Если речь идет о sp_trace_create, то первый параметр у нее выходной
sp_trace_create [ @traceid = ] trace_id OUTPUT
, [ @options = ] option_value
, [ @tracefile = ] 'trace_file'
[ , [ @maxfilesize = ] max_file_size ]
[ , [ @stoptime = ] 'stop_time' ]
[ , [ @filecount = ] 'max_rollover_files'
т.e. вызов ХП в может выглядеть так:
file="С:\trace.trc"
com = New COMОбъект("ADODB.Command");
com.ActiveConnection=conn;
com.CommandText ="sp_trace_create";
com.CommandType=4;
com.Parameters.Append (com.CreateParameter("@TraceID", 3, 3,4));
com.Parameters.Append (com.CreateParameter("@options", 3, 1,4));
com.Parameters(1).value =6;
com.Parameters.Append (com.CreateParameter("@tracefile", 130, 1,245));
com.Parameters(2).value =file;
com.Prepared = true;
com.Execute();
//Возвращаем значение @TraceID
id=com.Parameters(0).value;
sp_trace_create [ @traceid = ] trace_id OUTPUT
, [ @options = ] option_value
, [ @tracefile = ] 'trace_file'
[ , [ @maxfilesize = ] max_file_size ]
[ , [ @stoptime = ] 'stop_time' ]
[ , [ @filecount = ] 'max_rollover_files'
т.e. вызов ХП в может выглядеть так:
file="С:\trace.trc"
com = New COMОбъект("ADODB.Command");
com.ActiveConnection=conn;
com.CommandText ="sp_trace_create";
com.CommandType=4;
com.Parameters.Append (com.CreateParameter("@TraceID", 3, 3,4));
com.Parameters.Append (com.CreateParameter("@options", 3, 1,4));
com.Parameters(1).value =6;
com.Parameters.Append (com.CreateParameter("@tracefile", 130, 1,245));
com.Parameters(2).value =file;
com.Prepared = true;
com.Execute();
//Возвращаем значение @TraceID
id=com.Parameters(0).value;
Остальные ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(5) Ну, типа такого:
:-)))
ADOСоединение = Новый COMОбъект("ADODB.Connection");
Попытка
ADOСоединение.Open("DRIVER=SQLite3 ODBC Driver;Database=C:\1C\PG\PR\PriceGrabber\db.dat;LongNames=0;Timeout=1000;NoTXN=0;SyncPragma=NORMAL;StepAPI=0;");
Исключение
Сообщить("ААААА!!!!!!");
КонецПопытки;
ДатаНачалаЗапроса = НачалоДня(ТекущаяДата());
command = Новый COMОбъект("ADODB.Command");
command.ActiveConnection = ADOСоединение;
command.CommandText ="SELECT
| pg_list.ID AS КодПрайса,
| pg_list.PVID AS PVID,
| datetime(pg_list.PRICEDTE + julianday(""1899-12-30"")) as Дата,
| pg_list.DESCR as ИмяПостовщика
|FROM
| pg_list
|WHERE
| datetime(pg_list.PRICEDTE + julianday(""1899-12-30"")) >= datetime(julianday(""" + Формат(ДатаНачалаЗапроса,"ДФ='yyyy-MM-dd HH:mm:ss'") + """))";
Попытка
результат = command.Execute();
Исключение
Сообщить("ООООООО!!!!!!!!!!!!");
КонецПопытки;
Вр = 1;
// Перебор данных
Если НЕ результат.EOF() Тогда
результат.MoveFirst();
Пока результат.EOF() = 0 Цикл
Сообщить(Вр);
результат.MoveNext();
Вр = Вр + 1;
КонецЦикла;
КонецЕсли;
Показать:-)))
(1) Пример вызова хранимой процедуры, возвращающей набор данных
Параметры функции CreateParameter:
Function CreateParameter([Name As String], [Type As DataTypeEnum = adEmpty], [Direction As ParameterDirectionEnum = adParamInput], [Size As ADO_LONGPTR], [Value]) As Parameter
Name - имя параметра хранимой процедуры
Type - тип параметра ( 3 - целое, 135 - дата, полный список типов в документации по MS ADODB)
Direction - направление передачи параметров 1 - входной, 3 - выходной
Size - размерность в байтах.
Function Example(god,dtk)
com = New COMОбъект("ADODB.Command");
Try
com.ActiveConnection=ADOСоединение;
com.CommandText ="sp_storedproc";
com.CommandType=4;
com.Parameters.Append (com.CreateParameter("@igod", 3, 1,4));
com.Parameters(0).value = god;
com.Parameters.Append(com.CreateParameter("@rdtn", 135, 1,8));
com.Parameters(1).value = dtk;
com.Prepared = true;
RS=com.Execute();
return RS;
Except
return undefined;
EndTry;
EndFunction
ПоказатьПараметры функции CreateParameter:
Function CreateParameter([Name As String], [Type As DataTypeEnum = adEmpty], [Direction As ParameterDirectionEnum = adParamInput], [Size As ADO_LONGPTR], [Value]) As Parameter
Name - имя параметра хранимой процедуры
Type - тип параметра ( 3 - целое, 135 - дата, полный список типов в документации по MS ADODB)
Direction - направление передачи параметров 1 - входной, 3 - выходной
Size - размерность в байтах.
(13) Два варианта: "теоретический" и "практический".
1.https://docs.microsoft.com/ru-ru/sql/ado/reference/ado-api/ado-code-examples
2. Открываете книгу Excel, переходите в редактор VB (Alt+F11). Затем меню Tools -> References устанавливаете ссылку на Мicrosoft ActiveX Data Objects 2.8 Library.
Далее вызываете Оbject Browser (меню View -> Оbject Browser или F2). В списке "Project / Library выбираете ADODB.
1.
2. Открываете книгу Excel, переходите в редактор VB (Alt+F11). Затем меню Tools -> References устанавливаете ссылку на Мicrosoft ActiveX Data Objects 2.8 Library.
Далее вызываете Оbject Browser (меню View -> Оbject Browser или F2). В списке "Project / Library выбираете ADODB.
(9) Добавила параметры по примеру:
Но, вылетает ошибка:
{ВнешняяОбработка.СтатистикаЗапросовПоБД.Форма.Форма.Форма(36)}: Ошибка при вызове метода контекста (Execute): Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Процедура ожидает параметр "@options" типа "int".
Что может быть не так? Перепробовала разные типы для целых чисел, ошибка одна и та же каждый раз вылетает...((
Command.Parameters.Append(Command.CreateParameter("@options", 3, 1, 4));
Command.Parameters(0).value = 6;
Но, вылетает ошибка:
{ВнешняяОбработка.СтатистикаЗапросовПоБД.Форма.Форма.Форма(36)}: Ошибка при вызове метода контекста (Execute): Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Процедура ожидает параметр "@options" типа "int".
Что может быть не так? Перепробовала разные типы для целых чисел, ошибка одна и та же каждый раз вылетает...((
(18) Если речь идет о sp_trace_create, то первый параметр у нее выходной
sp_trace_create [ @traceid = ] trace_id OUTPUT
, [ @options = ] option_value
, [ @tracefile = ] 'trace_file'
[ , [ @maxfilesize = ] max_file_size ]
[ , [ @stoptime = ] 'stop_time' ]
[ , [ @filecount = ] 'max_rollover_files'
т.e. вызов ХП в может выглядеть так:
file="С:\trace.trc"
com = New COMОбъект("ADODB.Command");
com.ActiveConnection=conn;
com.CommandText ="sp_trace_create";
com.CommandType=4;
com.Parameters.Append (com.CreateParameter("@TraceID", 3, 3,4));
com.Parameters.Append (com.CreateParameter("@options", 3, 1,4));
com.Parameters(1).value =6;
com.Parameters.Append (com.CreateParameter("@tracefile", 130, 1,245));
com.Parameters(2).value =file;
com.Prepared = true;
com.Execute();
//Возвращаем значение @TraceID
id=com.Parameters(0).value;
sp_trace_create [ @traceid = ] trace_id OUTPUT
, [ @options = ] option_value
, [ @tracefile = ] 'trace_file'
[ , [ @maxfilesize = ] max_file_size ]
[ , [ @stoptime = ] 'stop_time' ]
[ , [ @filecount = ] 'max_rollover_files'
т.e. вызов ХП в может выглядеть так:
file="С:\trace.trc"
com = New COMОбъект("ADODB.Command");
com.ActiveConnection=conn;
com.CommandText ="sp_trace_create";
com.CommandType=4;
com.Parameters.Append (com.CreateParameter("@TraceID", 3, 3,4));
com.Parameters.Append (com.CreateParameter("@options", 3, 1,4));
com.Parameters(1).value =6;
com.Parameters.Append (com.CreateParameter("@tracefile", 130, 1,245));
com.Parameters(2).value =file;
com.Prepared = true;
com.Execute();
//Возвращаем значение @TraceID
id=com.Parameters(0).value;
(20) Спасибо большое! Все получилось)
Однако, еще одна загвоздка: мне необходимо следом вызвать еще одну ХП sp_trace_setevent, но вылетает ошибка, что для данной процедуры слишком много аргументов, хотя в описании к этой ХП они все указаны. Подскажите, пжл, в чем может быть проблема? И как лучше задать значения параметров, если значений должно быть несколько (например, для параметра 1 и 2)?
Однако, еще одна загвоздка: мне необходимо следом вызвать еще одну ХП sp_trace_setevent, но вылетает ошибка, что для данной процедуры слишком много аргументов, хотя в описании к этой ХП они все указаны. Подскажите, пжл, в чем может быть проблема? И как лучше задать значения параметров, если значений должно быть несколько (например, для параметра 1 и 2)?
Попытка
Command.ActiveConnection = ADOСоединение;
Command.CommandText = "sp_trace_setevent";
Command.CommandType = 4;
Command.Parameters.Append(Command.CreateParameter("@TraceID", 3, 1, 4));
Command.Parameters(0).Value = id;
Command.Parameters.Append(Command.CreateParameter("@eventid", 3, 1, 255));
Command.Parameters(1).Value = 10;
Command.Parameters.Append(Command.CreateParameter("@columnid", 3, 1, 255));
Command.Parameters(2).Value = 1;
Command.Parameters.Append(Command.CreateParameter("@on", 11, 1, 1));
Command.Parameters(3).Value = 1;
Command.Prepared = Истина;
Command.Execute();
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
Показать
(21)
Parameters of all SQL Trace stored procedures (sp_trace_xx) are strictly typed. If these parameters are not called with the correct input parameter data types, as specified in the argument description, the stored procedure will return an error.
Параметры 1 и 2 имеют тип int и должны задаваться со значениями (3,1,4).
Users must execute sp_trace_setevent for each column added for each event. During each execution, if @on is set to 1, sp_trace_setevent adds the specified event to the list of events of the trace. If @on is set to 0, sp_trace_setevent removes the specified event from the list.
но вылетает ошибка
Parameters of all SQL Trace stored procedures (sp_trace_xx) are strictly typed. If these parameters are not called with the correct input parameter data types, as specified in the argument description, the stored procedure will return an error.
Параметры 1 и 2 имеют тип int и должны задаваться со значениями (3,1,4).
И как лучше задать значения параметров, если значений должно быть несколько (например, для параметра 1 и 2)?
Users must execute sp_trace_setevent for each column added for each event. During each execution, if @on is set to 1, sp_trace_setevent adds the specified event to the list of events of the trace. If @on is set to 0, sp_trace_setevent removes the specified event from the list.
(22)
Поправила, но ошибка все равно повторяется((
Может параметр @TraceID не надо указывать?
(22)
Т.е. получается необходимо вызывать эту процедуру, каждый раз добавляя в значение параметра по событию и столбцу к этому событию?
типа так:
Параметры 1 и 2 имеют тип int и должны задаваться со значениями (3,1,4).
Поправила, но ошибка все равно повторяется((
Может параметр @TraceID не надо указывать?
(22)
Users must execute sp_trace_setevent for each column added for each event. During each execution, if @on is set to 1, sp_trace_setevent adds the specified event to the list of events of the trace. If @on is set to 0, sp_trace_setevent removes the specified event from the list.
Т.е. получается необходимо вызывать эту процедуру, каждый раз добавляя в значение параметра по событию и столбцу к этому событию?
типа так:
Попытка
Command.ActiveConnection = ADOСоединение;
Command.CommandText = "sp_trace_setevent";
Command.CommandType = 4;
Command.Parameters.Append(Command.CreateParameter("@TraceID", 3, 1, 4));
Command.Parameters(0).Value = ID;
Command.Parameters.Append(Command.CreateParameter("@eventid", 3, 1, 4));
Command.Parameters(1).Value = 10;
Command.Parameters.Append(Command.CreateParameter("@columnid", 3, 1, 4));
Command.Parameters(2).Value = 13;
Command.Parameters.Append(Command.CreateParameter("@on", 11, 1, 1));
Command.Parameters(3).Value = 1;
Command.Prepared = Истина;
Command.Execute();
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
Показать
(23)
Мне не удалось получить эту ошибку. На sql 2005 и 2008 процедура отрабатывает без ошибок. @TraceID - дескриптор сеанса трассировки и он нужен для sp_trace_setevent.
Да.
Поправила, но ошибка все равно повторяется((
Мне не удалось получить эту ошибку. На sql 2005 и 2008 процедура отрабатывает без ошибок. @TraceID - дескриптор сеанса трассировки и он нужен для sp_trace_setevent.
Т.е. получается необходимо вызывать эту процедуру, каждый раз добавляя в значение параметра по событию и столбцу к этому событию?
Да.
(24)
А чему параметр @TraceID долен быть равен? Значению, которое мы получили вот тут:
(20)
Может быть я не правильно значение этому параметру задала?
Мне не удалось получить эту ошибку. На sql 2005 и 2008 процедура отрабатывает без ошибок. @TraceID - дескриптор сеанса трассировки и он нужен для sp_trace_setevent.
А чему параметр @TraceID долен быть равен? Значению, которое мы получили вот тут:
(20)
id=com.Parameters(0).value;
Может быть я не правильно значение этому параметру задала?
(25) XП sp_trace_create создает экземпляр трассировки и возвращает указатель на этот экземпляр (@TraceID). Этот указатель должен быть передан в XП sp_trace_setevent, для того, чтобы она "знала" с какой трассировкой она работает.
Пример:
DECLARE @RC int, @TraceID int, @on BIT
EXEC @rc = sp_trace_create @TraceID output, 0, N'C:\SampleTrace'
-- Select the return code to see if the trace creation was successful.
SELECT RC = @RC, TraceID = @TraceID
-- Set the events and data columns you need to capture.
SELECT @on = 1
-- 10 is RPC:Completed event. 1 is TextData column.
EXEC sp_trace_setevent @TraceID, 10, 1, @on
Пример:
DECLARE @RC int, @TraceID int, @on BIT
EXEC @rc = sp_trace_create @TraceID output, 0, N'C:\SampleTrace'
-- Select the return code to see if the trace creation was successful.
SELECT RC = @RC, TraceID = @TraceID
-- Set the events and data columns you need to capture.
SELECT @on = 1
-- 10 is RPC:Completed event. 1 is TextData column.
EXEC sp_trace_setevent @TraceID, 10, 1, @on
(25) Попробуйте следующий вариант:
1. Создайте свою ХП обертку в MS-Sql:
CRE ATE procedure [dbo].[myTrace]
@pFile nvarchar(245)=null
as
--
DECLARE @RC int, @TraceID int, @on BIT
EXEC @rc = sp_trace_create @TraceID output, 6, @pFile
-- Select the return code to see if the trace creation was successful.
SELECT RC = @RC, TraceID = @TraceID
-- Set the events and data columns you need to capture.
SELECT @on = 1
-- 10 is RPC:Completed event. 1 is TextData column.
EXEC sp_trace_setevent @TraceID, 10, 1, @on
-- 13 is SQL:BatchStarting, 11 is LoginName
EXEC sp_trace_setevent @TraceID, 13, 11, @on
-- 13 is SQL:BatchStarting, 14 is StartTime
EXEC sp_trace_setevent @TraceID, 13, 14, @on
-- 12 is SQL:BatchCompleted, 15 is EndTime
EXEC sp_trace_setevent @TraceID, 12, 15, @on
-- 13 is SQL:BatchStarting, 1 is TextData
EXEC sp_trace_setevent @TraceID, 13, 1, @on
-- Start Trace (status 1 = start)
EXEC @RC = sp_trace_setstatus @TraceID, 1
Показать
2. В 1С сделайте вызов данной ХП:
file="C:\test";
len=strlen(file);
com = New COMОбъект("ADODB.Command");
com.ActiveConnection = con;
com.CommandText = "myTrace";
com.CommandType = 4;
com.Parameters.Append (com.CreateParameter("@pFile", 130, 1,len));
com.Parameters(0).value =file;
com.Prepared = Истина;
com.Execute();
1. Создайте свою ХП обертку в MS-Sql:
CRE ATE procedure [dbo].[myTrace]
@pFile nvarchar(245)=null
as
--
DECLARE @RC int, @TraceID int, @on BIT
EXEC @rc = sp_trace_create @TraceID output, 6, @pFile
-- Select the return code to see if the trace creation was successful.
SELECT RC = @RC, TraceID = @TraceID
-- Set the events and data columns you need to capture.
SELECT @on = 1
-- 10 is RPC:Completed event. 1 is TextData column.
EXEC sp_trace_setevent @TraceID, 10, 1, @on
-- 13 is SQL:BatchStarting, 11 is LoginName
EXEC sp_trace_setevent @TraceID, 13, 11, @on
-- 13 is SQL:BatchStarting, 14 is StartTime
EXEC sp_trace_setevent @TraceID, 13, 14, @on
-- 12 is SQL:BatchCompleted, 15 is EndTime
EXEC sp_trace_setevent @TraceID, 12, 15, @on
-- 13 is SQL:BatchStarting, 1 is TextData
EXEC sp_trace_setevent @TraceID, 13, 1, @on
-- Start Trace (status 1 = start)
EXEC @RC = sp_trace_setstatus @TraceID, 1
2. В 1С сделайте вызов данной ХП:
file="C:\test";
len=strlen(file);
com = New COMОбъект("ADODB.Command");
com.ActiveConnection = con;
com.CommandText = "myTrace";
com.CommandType = 4;
com.Parameters.Append (com.CreateParameter("@pFile", 130, 1,len));
com.Parameters(0).value =file;
com.Prepared = Истина;
com.Execute();
(1)
Попытка
ADOСоединение = Новый COMОбъект("ADODB.Connection");
ADOСоединение.ConnectionString = СтрокаСостояния;
ADOСоединение.Open();
Command = Новый COMObject("ADODB.Command");
Command.ActiveConnection = ADOСоединение;
ТекстЗапроса = "exec sp_trace_create 'C:\Projects'";
Command.CommandText = ТекстЗапроса;
Command.CommandType = 4;
RecordSet = Command.Execute();
Таблица = Новый ТаблицаЗначений;
КолКолонок = RecordSet.Fields.Count;
Пока RecordSet.Eof()= 0 Цикл
Для Инд = 0 По КолКолонок - 1 Цикл
Таблица.ЗагрузитьКолонку(RecordSet.Fields(Инд).Value, RecordSet.Fields(Инд).Name);
КонецЦикла;
RecordSet.MoveNext();
КонецЦикла;
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
Показать
У вас CommandType установлен в 4 - вызов хранимой процедуры. Зачем тогда exec?
Перед первым параметром запятая не нужна
То есть должно быть примерно вот так
Можно еще передавать каталог как параметр
Перед первым параметром запятая не нужна
То есть должно быть примерно вот так
ТекстЗапроса = "sp_trace_create 'C:\Projects'";
Можно еще передавать каталог как параметр
(8) нет, не вышло, вылетает теперь ошибка:
{ВнешняяОбработка.СтатистикаЗапросовПоБД.Форма.Форма.Форма(48)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Выполнение запроса процедура "sp_trace_create" окончилось неудачно, так как "sp_trace_create" является объектом процедура.
{ВнешняяОбработка.СтатистикаЗапросовПоБД.Форма.Форма.Форма(48)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Выполнение запроса процедура "sp_trace_create" окончилось неудачно, так как "sp_trace_create" является объектом процедура.
Достаточно активно работаю с ХП. И написал для этого определенное количество строк кода. В итоге, моя работа сводится к инициализации параметров. Типа так:
И выполнению ХП. Типа так:
Инициализирую отдельно для того, чтобы закэшировать созданные объекты параметров и команды ХП. Просто если одну процедуру много раз выполнить в каком-то цикле (и каждый раз ее создавать), то по замерам времени видим, что очень большие затраты происходят именно на создании процедуры параметров. При несложных ХП, эти затраты превышают время выполнения самой ХП.
Хотел выложить публикацией код. Но нужно код из общего модуля повыдергивать и вставить, например, во внешку. На это нет времени.
В неприбранном виде могу и сюда запостить.
ПарамХП = МодульБД.ИнициализироватьХП(ИмяПроцедурыСохраненияСообщения(), Соединение);
И выполнению ХП. Типа так:
МодульБД.ВыполнитьХранимуюПроцедуру(ПарамХП, Соединение,
Новый Структура("XML, profile_id", Текстовка, Перечисления.НазначенияПочтовыхПрофилей.ПолучитьИдентификатор(НазначениеПрофиля)),
ДопПараметры
);
Инициализирую отдельно для того, чтобы закэшировать созданные объекты параметров и команды ХП. Просто если одну процедуру много раз выполнить в каком-то цикле (и каждый раз ее создавать), то по замерам времени видим, что очень большие затраты происходят именно на создании процедуры параметров. При несложных ХП, эти затраты превышают время выполнения самой ХП.
Хотел выложить публикацией код. Но нужно код из общего модуля повыдергивать и вставить, например, во внешку. На это нет времени.
В неприбранном виде могу и сюда запостить.
(16) Я так понимаю, функции, представленные выше, вы сами писали?
Учитывая то, что я только начинаю знакомиться с ХП, то в такие тонкости мне вникать еще рано)
Сейчас моя задача, правильно передать параметры в процедуру sp_trace_create, в том коде, который я уже написала. Судя по всему, ошибка вылетает именно из-за неправильных параметров...
Если сможете помочь разобраться с передачей параметров в ХП sp_trace_create, буду признательна)
Учитывая то, что я только начинаю знакомиться с ХП, то в такие тонкости мне вникать еще рано)
Сейчас моя задача, правильно передать параметры в процедуру sp_trace_create, в том коде, который я уже написала. Судя по всему, ошибка вылетает именно из-за неправильных параметров...
Если сможете помочь разобраться с передачей параметров в ХП sp_trace_create, буду признательна)
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)