Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Отправить данные из 1с на SQL
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
astonvilla
Добрый день...

Вот команда, успешно отрабатывающая на SQL

DECLARE @RC int
DECLARE @cardNo varchar(28)
DECLARE @pin smallint
SET @cardNo = '77088800000000125'
SET @pin = 6666
EXECUTE @RC = dbo.p_AddPin2 @cardNo,@pin
GO

Пробовал по всякому ((

Command = Новый COMObject("ADODB.Command");
        Command.ActiveConnection = Соединение;
        Command.CommandText = СтрокаSQL;
        Результат = Command.Execute(СтрокаSQL);


и так

Command = Новый COMObject("ADODB.Command");
        Command.ActiveConnection = Соединение;
        Command.CommandType = 4;
        Результат = Command.Execute(СтрокаSQL);


и так

Command = Новый COMObject("ADODB.Command");
        Command.ActiveConnection = Соединение;
        Command.CommandType = 4;
                Command.CommandText = СтрокаSQL;
        Результат = Command.Execute();


Текст команды менял, пробовал параметры устанавливать...

Подключаюсь успешно, при выполнении EXECUTE ответ Произошла исключительная ситуация (ADODB.Recordset): Операция не допускается, если объект закрыт.

Как правильно написать процедуру? Или может есть грамотная статья с примерами? Заранее благодарен за помощь..

Vofka
astonvilla, необходимо зарегистрироваться для просмотра ссылки пример есть. Надо параметры создавать специальным образом.
Там пример под MySQL, но под MS SQL думаю так же
astonvilla
Vofka @ Сегодня, 17:33 необходимо зарегистрироваться для просмотра ссылки ,
Попробую еще по примеру из статьи, хотя прописывать параметры пробовал самым первым, получил аналогичный отлуп ))
astonvilla
astonvilla @ 01.12.20, 17:37 необходимо зарегистрироваться для просмотра ссылки ,
Разобрался... Параметры в данном случае надо было передавать по другому.
Ну и, как выяснилось, ошибку еще возвращало, т.к. номер карты был несуществующий ))
Окончательно это теперь выглядит так, может кому поможет в будущем..
    
        Command = Новый COMОбъект("ADODB.Command");
    Command.CommandTimeout = 100;
    Command.ActiveConnection = Соединение;
    Command.CommandText = "p_AddPin2";
    Command.CommandType = 4;                        
    Command.Parameters("@cardNo").Value = "77088800000000125";
    Command.Parameters("@pin").Value = 1254;
        Command.Execute();
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.