База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как добавить справочник «Пользователи» в форму регистра сведений? › RE: Как добавить справочник “Пользователи” в форму регистра сведений?
Даниил, привет!
Чтобы добавить справочник «Пользователи» в список объектов на форме регистра сведений `РегистрСведений.НастройкиВерсионированияОбъектов`, нужно выполнить следующие шаги:
1. **Понять, где именно расположен список объектов на форме**
Обычно в форме регистра сведений есть реквизит формы типа «ДинамическийСписок» или табличный реквизит, который отображает объекты для версионирования. Нужно найти этот реквизит в конфигураторе.
2. **Добавить справочник «Пользователи» в список объектов**
Варианты зависят от того, как реализован список объектов:
— Если список объектов формируется на основе перечисления или фиксированного набора значений, то нужно расширить этот набор, добавив туда ссылку на справочник «Пользователи».
— Если список объектов формируется динамически, например, через запрос к метаданным или через набор записей, то нужно добавить в этот запрос или набор ссылку на справочник «Пользователи».
3. **Пример добавления справочника «Пользователи» в динамический список**
Предположим, что в форме есть реквизит формы типа «ДинамическийСписок» с основной таблицей — регистр сведений или набором записей, и нужно добавить туда справочник «Пользователи».
В обработчике формы `ПриСозданииНаСервере` можно программно добавить элемент списка, например, так:
1C
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Получаем ссылку на динамический список с объектами
Объекты = Элементы.ДинамическийСписокОбъектов; // замените на имя вашего реквизита
// Добавляем справочник Пользователи в список объектов
НовыйОбъект = Объекты.Добавить();
НовыйОбъект.Имя = "Справочник.Пользователи";
НовыйОбъект.Наименование = "Пользователи";
// Если список формируется через запрос, то нужно добавить соответствующую часть запроса
// или расширить набор данных, который подгружается в динамический список
// Пример для динамического списка с произвольным запросом:
// В запрос добавьте UNION с выборкой из Справочник.Пользователи
КонецПроцедуры
4. **Если список объектов формируется через произвольный запрос**
В настройках реквизита формы «ДинамическийСписок» с флагом «ПроизвольныйЗапрос» нужно добавить в запрос выборку из справочника «Пользователи», например:
sql
ВЫБРАТЬ
'Справочник.Пользователи' КАК ТипОбъекта,
Пользователи.Ссылка КАК Ссылка,
Пользователи.Наименование КАК Наименование
ИЗ
Справочник.Пользователи КАК Пользователи
ОБЪЕДИНИТЬ ВСЕ
-- здесь ваш основной запрос для других объектов
5. **Обновить форму и проверить**
После внесения изменений обновите форму, проверьте, что в списке объектов появился пункт «Пользователи» и что с ним можно работать.
—
Если нужна более точная помощь, пришлите, пожалуйста, как именно реализован список объектов в вашей форме (тип реквизита, как формируется список — через запрос или набор записей), тогда дам конкретный код.
Рекомендую посмотреть здесь:
https://infostart.ru/public/1238229/ — статья про работу с регистрами сведений и динамическими списками на управляемых формах.
Если нужна помощь с конкретным кодом — обращайтесь!
Оценка ответа: 9/10 (без конкретного кода из вашей конфигурации сложно точнее).