Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / [игнор отключен] [закрыт для гостей] / Как получить список всех MSSQL серверов в сети? / 7 сообщений из 7, страница 1 из 1
30.09.2011, 10:21
    #37462334
vadium
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить список всех MSSQL серверов в сети?
Подскажите пожалуйста, как можно из 1С 8.1 получить список всех серверов в сети?
Пытаюсь использовать SQLBrowseConnect но как-то не могу понять куда его применить. Подскажите пожалуйста.
...
Рейтинг: 0 / 0
30.09.2011, 11:25
    #37462510
Критик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить список всех MSSQL серверов в сети?
По аналогии попробуйте
http://www.sql.ru/faq/faq_topic.aspx?fid=580
...
Рейтинг: 0 / 0
30.09.2011, 12:07
    #37462620
vadium
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить список всех MSSQL серверов в сети?
Пытался, отвечает "Произошла исключительная ситуация (Provider): Таблица не существует."
...
Рейтинг: 0 / 0
30.09.2011, 13:15
    #37462755
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить список всех MSSQL серверов в сети?
код бейсика переписываем в код 1С
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
    Dim i As Integer, name_server As String
    Dim CountSQL As Integer
    Dim oApp As SQLDMO.Application   ' Microsoft SQLDMO Object Library
    Dim oSrv As SQLDMO.NameList
    Dim oGrp As SQLDMO.ServerGroup
    Dim oReg As SQLDMO.RegisteredServer

    Set oApp = New SQLDMO.Application
    Set oSrv = oApp.ListAvailableSQLServers
    CountSQL = oSrv.Count

    For i =  1  To CountSQL
        name_server = name_server & oSrv.Item(i) & vbCrLf
    Next i
    
    MsgBox name_server
    
    Dim name_sql As String
    For Each oGrp In oApp.ServerGroups
        For Each oReg In oGrp.RegisteredServers
            name_sql = name_sql & oReg.Name & vbCrLf
        Next
    Next
    MsgBox name_sql

    oApp.Quit
...
Рейтинг: 0 / 0
30.09.2011, 13:38
    #37462806
vadium
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить список всех MSSQL серверов в сети?
SQLDMO не рекомендует использовать сама Microsoft
Попробовал через LDAP:

Код: plaintext
1.
2.
3.
4.
5.
6.
    БД=Новый COMОбъект("ADODB.Connection");
    БД.ConnectionString = "Provider = ADsDSOObject";
    БД.Open();
    ТекстЗапроса = "<LDAP://MyDomain>;(objectClass=MS-SQL-SQLServer);cn,ADsPath,MS-SQL-Clustered,MS-SQL-Build;SubTree";
 
    Запр = БД.Execute(ТекстЗапроса);
    Сообщить(Запр.RecordCount);

Возвращает 0. Что тут не так?
...
Рейтинг: 0 / 0
30.09.2011, 14:17
    #37462894
The Dim!
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить список всех MSSQL серверов в сети?
А он обязан был регистрироваться в AD?
...
Рейтинг: 0 / 0
30.09.2011, 16:09
    #37463144
vadium
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить список всех MSSQL серверов в сети?
Сделал так:

Код: plaintext
1.
2.
3.
4.
	SQLServer=Новый COMОбъект("SQLDMO.Application");
	SQLServerList = SQLServer.ListAvailableSQLServers();
	Для Каждого ЭлементСервер из SQLServerList Цикл
		СписокСерверов.Добавить(ЭлементСервер);
	КонецЦикла;

Хотя с sql2008 надо будет переходить на другой механизм, потому что Microsoft отказывается от его поддержки.
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / Как получить список всех MSSQL серверов в сети? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]