GetInfoBases() - работает не так, как хотелось бы :( #746454


#0 by HEKPOH
Всем привет! Задача: получить свойства серверных баз LicenseDistributionAllowed (Разрешить сервером выдачу лицензий) и ScheduledJobsDenied (Блокировка регл. заданий включена). Сервер 8.3 Решение (обработка 1С): 1.    Соединяюсь с центральным сервером 2.    Получаю массив кластеров (в моем случае – кластер один) 3.    Аутентифицируюсь в кластере 4.    Получаю массив рабочих процессов 5.    Подключаюсь к запущенному рабочему процессу 6.    Аутентифицируюсь под юзверем с правами админа баз 1С в этом кластере 7.    Получаю массив баз с помощью GetInfoBases 8.    В цикле пробегаю по массиву и получаю следующие свойства баз: Все работает, но обнаружился косяк :( В кластере 60 баз. В десяти базах свойства dbName, dbServerName, DBMS равны пустой строке. По этим же базам данные в свойствах LicenseDistributionAllowed и ScheduledJobsDenied не соответствуют тем, которые получаются из консоли администрирования серверов 1С. Кто-нибудь сталкивался с таким? Как победить? 1.    Доступ ко всем базам есть (1С и SQL) 2.    Свойства у всех баз одинаковые (1С и SQL) 3.    Агента рестартовал 4.    Базы аттачил – выявлялись глюки консоли, но потом все приходило в норму Хелп, плиз :)
#1 by Лефмихалыч
версия платформы какая?
#2 by HEKPOH
1С:Предприятие 8.3 (8.3.6.2014)
#3 by Лефмихалыч
если dbName, dbServerName, DBMS, то какая разница, кто и что возвращает про лицензии и регламентые? В этом случае эти значения LicenseDistributionAllowed и ScheduledJobsDenied на самом деле - неопределено.
#4 by HEKPOH
вопрос и заключается в том, что: "почему происходит такое, что свойства пятидесяти баз читаются полностью, а десяти - нет, хотя на все базы есть админский доступ?"
#5 by HEKPOH
+ и как это победить? :)
#6 by Лефмихалыч
>почему происходит такое потому, что на селезневской 12 кто-то так решил однажды >как это победить? Волевым решением. Например при обходе результата GetInfoBases Для каждого ИнформационнаяБаза из РезультатGetInfoBases Цикл
#7 by Лефмихалыч
эти две галки все равно смысла не имеют без корректной ссылки на БД
#8 by HEKPOH
)))))) но, все равно, спасибо за участие. В задаче нужно было получить корректное LicenseDistributionAllowed. Метод GetInfoBases получает же имя и описание базы 1С в любом случае... В итоге, чтобы проверить значение LicenseDistributionAllowed для баз, у которых dbName = "", придется ручками смотреть свойства в консоли кластера. Грустно)
#9 by Лефмихалыч
при не заполненной БД база один хрен не рабочая, так какая в пень разница, кто там лицензии раздает и разрешено ли там исполнять регламентные?..
#10 by HEKPOH
#11 by HEKPOH
в том-то и дело, что базы рабочие!
#12 by HEKPOH
картинка побольше
#13 by Лефмихалыч
Как они могут быть рабочие, если у них не заполнен коннект к СУБД?
#14 by HEKPOH
еще раз повторюсь. у них не заполнен коннект к СУБД только в результате метода GetInfoBases. Если же просматривать свойства баз из консоли кластера, то всё у баз заполнено
#15 by HEKPOH
up
#16 by DmitrO
Вроде бы, чтобы получить свойства базы, должна быть еще аутентификация в самой базе, в 1С. Для этих, проблемных баз, есть аутентификация для пользователя под которым работает подключение к рабочему процессу?
#17 by HEKPOH
да. пункт 6 из
#18 by DmitrO
а рабочих процессов сколько? один?
#19 by HEKPOH
десять. все активные. я даже в качестве бреда подключался к каждому из десяти процессов (в цикле). собрал информацию по базам. в результате получилась табличка с данными, которые показывают, что все процессы вернули одни и те же данные
#20 by DmitrO
хм.. тогда не понятно.. Пиши в 1С.
#21 by HEKPOH
спасибо! еще раз перепроверил все. в этих десяти базах стояла доменная авторизация. поменял на 1С, и все заработало
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С