1С 8.3 Подключение к базе MS SQL (через внешние источники данных)
Данные > Примеры кода 1С > 1С 8.3 Приложение, система, интерфейс
Перейти в раздел примеры кода 1С 8.3:
![](images/kod_1c_1cnik.by.webp)
Программное подключение к базе MS SQL в 1С 8.3:
Функция ПолучитьПараметрыSQL() Экспорт
Для Каждого Подключение Из Объект.ПараметрыПодключения Цикл
Если Подключение.Выбор Тогда
ИмяСервераSQL = Подключение.Server;
ПользовательSQL = Подключение.User;
ПарольSQL = Подключение.Password;
БазаДанныхSQL = Подключение.Base;
КонецЕсли;
КонецЦикла;
Сервер_СтрокаСоединения =
"driver={SQL Server};" +
"server="+ИмяСервераSQL+";"+
"database="+БазаДанныхSQL+";";
Сервер_АутентификацияСтандартная = Истина;
Сервер_ИмяПользователя = ПользовательSQL;
Сервер_Пароль = ПарольSQL;
Сервер_СУБД = "MS SQL Server";
Сервер_БД = БазаДанныхSQL;
СтрокаСоедененияССервером = "driver={SQL Server};" +
"server="+ИмяСервераSQL+";"+
"uid="+ПользовательSQL+";"+
"pwd="+ПарольSQL+";"+
"database="+БазаДанныхSQL+";";
ПараметрыSQL = Новый Структура;
ПараметрыSQL.Вставить("Сервер_СтрокаСоединения", Сервер_СтрокаСоединения);
ПараметрыSQL.Вставить("Сервер_АутентификацияСтандартная", Сервер_АутентификацияСтандартная);
ПараметрыSQL.Вставить("Сервер_ИмяПользователя", Сервер_ИмяПользователя);
ПараметрыSQL.Вставить("Сервер_Пароль", Сервер_Пароль);
ПараметрыSQL.Вставить("Сервер_СУБД", Сервер_СУБД);
ПараметрыSQL.Вставить("Сервер_БД", Сервер_БД);
ПараметрыSQL.Вставить("СтрокаСоедененияССервером", СтрокаСоедененияССервером);
Возврат ПараметрыSQL;
КонецФункции
&НаСервере
Процедура ПроверитьПодключениеНаСервере()
ПараметрыSQL = ПолучитьПараметрыSQL();
ПараметрыСоединенияСБазой = Новый ПараметрыСоединенияВнешнегоИсточникаДанных;
ПараметрыСоединенияСБазой.СтрокаСоединения = ПараметрыSQL.Сервер_СтрокаСоединения;
ПараметрыСоединенияСБазой.АутентификацияСтандартная = ПараметрыSQL.Сервер_АутентификацияСтандартная;
ПараметрыСоединенияСБазой.ИмяПользователя = ПараметрыSQL.Сервер_ИмяПользователя;
ПараметрыСоединенияСБазой.Пароль = ПараметрыSQL.Сервер_Пароль;
ПараметрыСоединенияСБазой.СУБД = ПараметрыSQL.Сервер_СУБД;
ВнешниеИсточникиДанных.ForRestPOS.УстановитьПараметрыСоединенияСеанса(ПараметрыСоединенияСБазой);
Попытка
ВнешниеИсточникиДанных.ForRestPOS.УстановитьСоединение();
Сообщить("Подключение успешно!");
Исключение
Сообщить("Подключение не установлено!");
КонецПопытки;
КонецПроцедуры
Для Каждого Подключение Из Объект.ПараметрыПодключения Цикл
Если Подключение.Выбор Тогда
ИмяСервераSQL = Подключение.Server;
ПользовательSQL = Подключение.User;
ПарольSQL = Подключение.Password;
БазаДанныхSQL = Подключение.Base;
КонецЕсли;
КонецЦикла;
Сервер_СтрокаСоединения =
"driver={SQL Server};" +
"server="+ИмяСервераSQL+";"+
"database="+БазаДанныхSQL+";";
Сервер_АутентификацияСтандартная = Истина;
Сервер_ИмяПользователя = ПользовательSQL;
Сервер_Пароль = ПарольSQL;
Сервер_СУБД = "MS SQL Server";
Сервер_БД = БазаДанныхSQL;
СтрокаСоедененияССервером = "driver={SQL Server};" +
"server="+ИмяСервераSQL+";"+
"uid="+ПользовательSQL+";"+
"pwd="+ПарольSQL+";"+
"database="+БазаДанныхSQL+";";
ПараметрыSQL = Новый Структура;
ПараметрыSQL.Вставить("Сервер_СтрокаСоединения", Сервер_СтрокаСоединения);
ПараметрыSQL.Вставить("Сервер_АутентификацияСтандартная", Сервер_АутентификацияСтандартная);
ПараметрыSQL.Вставить("Сервер_ИмяПользователя", Сервер_ИмяПользователя);
ПараметрыSQL.Вставить("Сервер_Пароль", Сервер_Пароль);
ПараметрыSQL.Вставить("Сервер_СУБД", Сервер_СУБД);
ПараметрыSQL.Вставить("Сервер_БД", Сервер_БД);
ПараметрыSQL.Вставить("СтрокаСоедененияССервером", СтрокаСоедененияССервером);
Возврат ПараметрыSQL;
КонецФункции
&НаСервере
Процедура ПроверитьПодключениеНаСервере()
ПараметрыSQL = ПолучитьПараметрыSQL();
ПараметрыСоединенияСБазой = Новый ПараметрыСоединенияВнешнегоИсточникаДанных;
ПараметрыСоединенияСБазой.СтрокаСоединения = ПараметрыSQL.Сервер_СтрокаСоединения;
ПараметрыСоединенияСБазой.АутентификацияСтандартная = ПараметрыSQL.Сервер_АутентификацияСтандартная;
ПараметрыСоединенияСБазой.ИмяПользователя = ПараметрыSQL.Сервер_ИмяПользователя;
ПараметрыСоединенияСБазой.Пароль = ПараметрыSQL.Сервер_Пароль;
ПараметрыСоединенияСБазой.СУБД = ПараметрыSQL.Сервер_СУБД;
ВнешниеИсточникиДанных.ForRestPOS.УстановитьПараметрыСоединенияСеанса(ПараметрыСоединенияСБазой);
Попытка
ВнешниеИсточникиДанных.ForRestPOS.УстановитьСоединение();
Сообщить("Подключение успешно!");
Исключение
Сообщить("Подключение не установлено!");
КонецПопытки;
КонецПроцедуры
0
комментарии
____________________
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник