v8.x: Запрос к базе данных SQL - 1С-ИнтеГрация

v8.x: Запрос к базе данных SQL



 

Код 1C v 8.х

 Функция ПодключитьCOMОбъект(Путь) Экспорт

    Отказ = Ложь;

   

    COMСоединение = Новый COMОбъект("ADODB.Connection");

    COMСоединение.ConnectionString  = ".....";

    COMСоединение.ConnectionTimeOut = 1200;

    COMСоединение.CursorLocation    = 3;

   

    Попытка

        COMСоединение.Open(COMСоединение.ConnectionString);

    Исключение

        Отказ = Истина;

        COMСоединение = "";

        Предупреждение("Невозможно установить соединение - " + ОписаниеОшибки());

        Возврат НЕ Отказ;

    КонецПопытки;

   

    Возврат НЕ Отказ;

КонецФункции

 

Процедура КнопкаВыплонитьНажатие(Кнопка)

    Если НЕ ПодключитьCOMОбъект(ПутьКФайлуГДБ) Тогда

        ЗакрытьФормуИндикатора();

        Возврат;   

    КонецЕсли;

 

 

    КомандаАДО = Новый COMОбъект("ADODB.Command");

   

    ТекстЗапроса = "select id from nomenclature where ext_1c_id = 1";

 

    Рекордсет = Новый COMОбъект("ADODB.Recordset");

    Попытка

        Рекордсет = КомандаАДО.Execute();

    Исключение

        Предупреждение("Не получилось выполнить запрос!" + " - " + ОписаниеОшибки());

    КонецПопытки;

   Рекордсет.MoveFirst();                                                              

    Пока Рекордсет.EOF() = 0 Цикл  

       ОбработкаПрерыванияПользователя();

           айди = Рекордсет.Fields("id").Value;

           Сообщить(айди);

        КонецЦикла;

КонецПроцедуры

  


еще пример:
 
Код 1C v 8.х

 стрПодключения = "Driver={SQL Server};"

стрПодключения = стрПодключения + ИмяСервера + ";";

стрПодключения = стрПодключения +"Uid=" + ИмяПользователя + ";";

стрПодключения = стрПодключения + "Pwd=" + Пароль + ";";

стрПодключения = стрПодключения + "DataBase =" + ИмяБазы + ";";

стрПодключения = стрПодключения + "Pwd=" + Пароль + ";";

 

Connection = Новый COMОбъект("ADODB.Connection");

Connection.OpenServer = стрПодключения;

 

RS = Новый COMОбъект("ADODB.Recordset");

 

// Запрос к базе на языке SQL запросов.

RS.Open("select * from TradeUnit", Connection);

 

Пока RS.EOF() = 0 Цикл

 

// Можно обращаться и обрабатывать значения полей выборки.

ИД = RS.Fields("ID").Value;

Код = RS.Fields("Code").Value;

   // Обработка других полей

RS.MoveNext();

КонецЦикла;

 

RS.Close();

Connection.Close();   

 

 



Назад в раздел