Назначение:
1. Групповое создание, обновление, удаление пользователей методом переноса из эталонной базы (пароли переносятся только для файловых баз)
2. Перенос основных настроек пользователей
3. Перенос настроек отчетов
Требования к конфигурации:
1. В конфигурациях БД должны быть идентичные роли, иначе у новых пользователей роли останутся пустыми
2. Обработка запускается в БД, где уже настроен список пользователей. Данная БД будет являться эталоном.
Логика работы:
1. Создание: поиск по имени; если найден — то ничего не делаем и переходим к следующему пользователю; если не найден — создаем
2. Обновление: поиск по имени; если найден — обновляем реквизиты; если не найден — то ничего не делаем и переходим к следующему пользователю
3. Удаление: поиск по имени; если найден — удаляем; если не найден — то ничего не делаем и переходим к следующему пользователю. Плюс, если поставлен флаг «Удалять пользователей, в имени которых содержится», то ищем вхождения подстроки в имя (к регистру не чувствителен), а далее как написано выше.
4. Перенос основных настроек пользователей:
Сначала проверяется существование объектов (Справочник.Пользователи + РегистрСведений.НастройкиПользователей + ПланВидовХарактеристик.НастройкиПользователей). Если все есть — то переносим, если нет — выводится сообщение, что какой-то из объектов отсутствует в источнике или приемнике, поэтому настройки не перенесены.
5. Перенос настроек отчетов пользователей:
Сначала проверяется существование объектов (Справочник.Пользователи + Справочник.ГруппыПользователей + Справочник.СохраненныеНастройки). Если все есть — то переносим, если нет — выводится сообщение, что какой-то из объектов отсутствует в источнике или приемнике, поэтому настройки отчетов не перенесены.
6. Пароль перенесется, если в таблице «Пользователи» стоит галочка «Перенести пароль», иначе пароль будет взят из поля «Новый пароль».
Порядок работы:
1. Запускать в толстом клиенте (неуправляемая форма) в эталонной базе
2. Заполнить пользователя и пароль администратора баз
3. Заполнить необходимые параметры
4. Выбрать файл со списком баз, заполнить таблицу баз. Обрабатываться будут те базы, где в строках стоят галочки
5. Заполнить таблицу пользователей текущей базы. Обрабатываться будут те пользователи, где в строках стоят галочки «V». Пароль перенесется, если у пользователя стоит галочка «Перенести пароль», иначе пароль будет взят из поля «Новый пароль».
6. Запустить необходимое действие
Изменения от 08.02.2014:
1. Добавлена возможность переноса основных настроек (Справочник.Пользователи + РегистрСведений.НастройкиПользователей + ПланВидовХарактеристик.НастройкиПользователей)
2. Добавлена возможность переноса настроек отчетов (Справочник.Пользователи + Справочник.ГруппыПользователей + Справочник.СохраненныеНастройки + ХранилищеЗначений)
Изменения от 15.02.2014:
1. Исправлена ошибка. Добавлена возможность выбора в таблице «Пользователи»: либо переносить старый пароль, либо задавать новый. В старой версии всегда переносился, даже если задавали новый
Вот это дело!
а настройки пользователя из эталонной базы тоже перенесуться в выбираемые базы, где необходимы такие же пользователи?
(2) TrinitronOTV,
В этой версии обработки настройки не переносятся. Есть обработка, где переносятся настройки, но она поэтому становится неуниверсальной, так как не во всех конфигурациях есть регистры СохраненныеНастройки, НастройкиПользователей, справочник СохраненныеНастройки и объект ХранилищеНастроек. Хотя сделаю как опцию и в ближайшее время перезалью.
(2) TrinitronOTV,
Добавил возможность переноса основных настроек пользователей и сохраненных настроек отчетов.
> пароли не переносятся
Очень жаль — без этого как то не то …
(5) pvb2003,
Обработку и описание исправил. Сейчас пароль перенесется, если в таблице «Пользователи» стоит галочка «Перенести пароль», иначе пароль будет взят из поля «Новый пароль».
В обработке переносятся основные настройки пользователей только примитивных типов (строка, число, булево)?
(7) uri1978,
да, строка, число, булево, дата
Жаль. Только для этого и качал. Решил не тратить время и воспользоваться Вашим кодом. В итоге пришлось писать самому перенос настроек с типом справочник и перечисление.
Необходимо сделать выбор версии платформы. А то все базы уже под 8.3, а в коде жестко прописанo
V8 = Новый COMObject(«V82.COMConnector»);
Ну и сохранение настроек было бы неплохо.
Обработку прерывания пользователем — а то ждать пока все базы пройдут как-то не хорошо.
Так же подозреваю есть ошибка с пользователями для входа, написанными по-русски. Выдается ошибка:
Ошибка открытия базы [Бух2.0 Организация]. Проверьте путь к базе, пользователя и пароль!!!
С БП3 обработка не справилась, хотя и не ругнулась на ошибки. По факту пользователей не увидел в базе.
Добрый день.
Подскажите под платформу 8.3 будет обновлена данная обработка?
Еще дополнение! У кого пароль для подключения к базам больше 10 символов — обработка урежет его до 10 символов! Будьте бдительны!
А так с небольшими танцами и допиливанием справилась с БП3 в режиме запуска обычного приложения под 8.3