//строка подключения - один из самых важных параметров при подключении к MSSQL. позже напишу как ее правильно составить.
стрПодключения = "Provider=SQLOLEDB.1;Password=qwert;Persist Security Info=True;User ID=sa;Initial Catalog=PromoBD41;Data Source=SDO-URGI";
//в ХР точно проблем не должно быть и не нужен установленный офис... библиотеки есть в винде.
//создание обьекта подключения к SQLServer
Connection = Новый COMОбъект("ADODB.Connection");
Connection.ConnectionString = стрПодключения;
попытка
Connection.Open();
исключение
Сообщить ("Проблемы с подключением к SQLserver" );
Возврат;
КонецПопытки;
//Создание обьекта набора записей
RS = Новый COMОбъект("ADODB.Recordset");
//Запрос к базе данных на языке SQL запросов
попытка
RS.Open("SELECT dbo.Groups.name as grname FROM dbo.Groups GROUP BY dbo.Groups.name ORDER BY dbo.Groups.name", Connection );
исключение
Сообщить ("Проблемы с выполнением запроса к SQL");
Возврат;
КонецПопытки;
// Пример обработки полученного recordset
Пока RS.EOF() = 0 Цикл
Группа = RS.Fields("grname").Value;
//Описание = RS.Fields("Description").Value;
Сообщить(Группа);
//Обработка других полей
RS.MoveNext();
КонецЦикла;
RS.Close();
Connection.Close();
з.ы.
это не плагиат, а изыски собственного опыта...
долго шарился по инету что бы найти что то подобное, но нашел только как из 1С7.7 подключится к *.dbf через ADO
Критиковать - это показывать автору, как бы делал я, если бы умел.
-------
Продаются мужские часики. Один часик - 50 долларов.
1. создаем новый текстовый документ (напримет connect.txt)
2. меняем ему разрешение на udl (получается connect.udl)
3. открываем получившийся документ и с первой слева вкладки задаем необходимые параметры (В данном случае на первой вкладке выбираем поставщика данных SQL server, на второй указуем имя банки в сети где установлен сиквел сервер, логин пароль, и выбираем базу с которой будем работать.) проверяем подключение. если подключение произошло удачно жмем ОК.
4. открываем теперь этот файл (connect.udl) с помощью простого блокнота. копируем все содержимое и используем его в качестве строки подключения в программном коде.
усе...
Критиковать - это показывать автору, как бы делал я, если бы умел.
-------
Продаются мужские часики. Один часик - 50 долларов.
dBaser писал(а):
SELECT dbo.Groups.name as grname FROM dbo.Groups GROUP BY dbo.Groups.name ORDER BY dbo.Groups.name
А это - яркий пример, как нельзя писать на скуле?
20 полей тоже будешь писать dbo.table.Field ???
Без обид. Алиасы и юзинги для людей давно уже придуманы
Для работы с MSSQL есть также ODBC провайдер SQL driver (MS Sql Driver), ставится вместе с XPSP1/SP2.
Интересно мне другое - а не пробовал ли ты использовать компоненты прямого доступа вместо OLEDB к MSSQL из 1с? [/code]
tAZAR писал(а):Для работы с MSSQL есть также ODBC провайдер SQL driver (MS Sql Driver), ставится вместе с XPSP1/SP2.
Интересно мне другое - а не пробовал ли ты использовать компоненты прямого доступа вместо OLEDB к MSSQL из 1с?
есть. и активно используется. является довольно универсальным компонентом.
но ADO является более новым интерфейсом работы с базами... работа с этим компонентом для меня является признаком более профессиональной работы с БД и работает этот компонент пошустрей, как заявляет Скотт Ф.Баркер.
Критиковать - это показывать автору, как бы делал я, если бы умел.
-------
Продаются мужские часики. Один часик - 50 долларов.
Сам в течение 2-х лет использую в основном ADO, сейчас ADO.NET. Просто было интересно, насколько актуально в 1С использование "родных" компонент прямого доступа от производителя СУБД, или сторонних компаний . А насчет запросика - дык ты еще обидься возьми - у всех бодун бывает просто постоянное dbo.groups как - то странно выглядело... И нечего прометеем кидаться - не одни вы сертификацию проходите
за хинт конечно спасибо(может когда и пригодится, бугого), но ето же просто пример на automation применительно к 1C. Можно было вместо "долго шарился по инету что бы найти что то подобное" погуглить чтонить вроде "ADO automation" или "ADO scripting"
JokerR писал(а): погуглить чтонить вроде "ADO automation" или "ADO scripting"
+1
Очень интересно было бы, например, увидеть здесь не только стандартный automation, но и пример вывода данных в таблицу значений 1с-ки с использованием Lazy Fetch, постраничным выводом, высасывания только видимых записей и т.д. Недавно пришлось кое-что подобное написать под конфигурацию для 7.7 - под 1с редко пишу, но, ИМХО, мазохизм. DBaser, если приходилось делать подобное и тебе не трудно - приведи здесь примерчик.