|   |   | 
| 
 | Подключение к Active Directory на сервере | ☑ | ||
|---|---|---|---|---|
| 0
    
        ST_ 05.06.24✎ 10:40 | 
        Здравствуйте. Пытаюсь получить значение employeeID для всех элементов справочника Пользователи в самописной конфигурации. Подключаюсь на сервере к AD и получаю "Произошла исключительная ситуация (ADODB.Recordset): BOF или EOF имеет значение True, либо текущая запись удалена. Для выполняемой операции требуется текущая запись". При этом в ADExplorer данные присутствуют. Строчка подключения:
 ЗаписьАДО.Open("<GC://" + СокрЛП(НашДомен) + ">;(&(objectCategory=person)(objectClass=user)(sAMAccountName=" + Логин + "));employeeID", СоединениеАДО, 0, 1); | |||
| 1
    
        eklmn гуру 05.06.24✎ 11:18 | 
        да что же 1Сники никак не отпустят мертвого динозавра то? нафига вам всем АДО?     | |||
| 2
    
        oleg_km 05.06.24✎ 11:27 | 
        (1) А как без ADO подключиться к AD?     | |||
| 3
    
        eklmn гуру 05.06.24✎ 13:45 | 
        (2) Get-ADUser DOMAINUSER -Properties * | fl employeeID     | |||
| 4
    
        YFedor 05.06.24✎ 13:47 | 
        (2) wmi     | |||
| 5
    
        oleg_km 05.06.24✎ 13:47 | 
        (3) Как обрабатывать ошибки/исключения и прочее?     | |||
| 6
    
        oleg_km 05.06.24✎ 13:50 | 
        (4) А в чем тогда принципиальная разница с ADO? Там такие танцы с доступами, с версиями винды и пр.     | |||
| 7
    
        eklmn гуру 06.06.24✎ 11:28 | 
        (5) тогда СОМ
 
ад = ПолучитьCOMОбъект("LDAP://CN=users,DC=domain,dc=local");
	
    для каждого ц из ад цикл
        если ц.sAMAccountName="user1" тогда
			сообщить(ц.mail);
		КонецЕсли;
		
		если ЗначениеЗаполнено(ц.employeeID) тогда
			сообщить(ц.name + "...  "+ ц.employeeID);
		КонецЕсли;
		
	КонецЦикла;
 | |||
| 8
    
        DrZombi гуру 06.06.24✎ 11:45 | 
        (0) Держите. Ну а дальше сами разберетесь, что от туда подчерпнуть :)
 Интеграция 1С и Active Directory на сервере https://infostart.ru/1c/articles/1171021/ | |||
| 9
    
        eklmn гуру 06.06.24✎ 11:51 | 
        (8) ииитить там кода лишнего)))     | |||
| 10
    
        oleg_km 06.06.24✎ 13:20 | 
        (7) Ну так и я умею, а в чем принципиальное отличие от ADO? Те же яйца, только сбоку. Там механизм доступа один. 
 (0) Попробуй код из (7), может действительно проблема уйдет | |||
| 11
    
        eklmn гуру 06.06.24✎ 13:29 | 
        (10) а что за вопрос в (2) тогда? ))     | |||
| 12
    
        oleg_km 06.06.24✎ 13:38 | 
        (11) Ну просто более широко толковал твой (1), тк все это разновидности COM, что ты против использования COM. Ну и не факт, что (7) ТСу тоже поможет. Там может проблема с доступами после какого-нибудь обновления винды.     | |||
| 13
    
        eklmn гуру 06.06.24✎ 14:35 | 
        (12) я за COM 2-мя руками, но не АДО как г-прокладки, который как ты говоришь, как раз и умрет после очередного обновления.     | |||
| 14
    
        ST_ 06.06.24✎ 15:28 | 
        (7) Разве на сервере можно использовать LDAP? Или от этого не зависит? "Указанный домен не существует или к нему невозможно подключиться."     | |||
| 15
    
        eklmn гуру 06.06.24✎ 15:31 | 
        (14) сервер в домене? домен-то правильно написали?     | |||
| 16
    
        ST_ 06.06.24✎ 15:37 | 
        (15) Да.     | |||
| 17
    
        oleg_km 06.06.24✎ 15:41 | 
        (16) Попробуй этот код на самом контроллере домена запустить. Может сервер выпал из домена? Или настройки DNS на сервере левые и он не находит КД     | |||
| 18
    
        eklmn гуру 06.06.24✎ 16:06 | 
        Зови админа и спроси "что за фигня у вас тут с доменом творится" ))     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |