Выбор участника обсуждения системы взаимодействия.
Полное описание, параметры и ограничения
НазначениеВыбораПользователейСистемыВзаимодействия.УчастникОбсуждения (CollaborationSystemUsersChoicePurpose.ConversationMember)
НазначениеВыбораПользователейСистемыВзаимодействия (CollaborationSystemUsersChoicePurpose)
УчастникОбсуждения (ConversationMember)
Доступен, начиная с версии 8.3.15.
Описание:
Выбор участника обсуждения системы взаимодействия.
Использование в версии:
Доступен, начиная с версии 8.3.15.
Методическая информация
Практические примеры
ОбработкаПолученияФормыВыбораПользователейСистемыВзаимодействия: своё учебное приложение / УчастникОбсуждения
Настоящий контракт события, собственный источник данных и явное место подключения обработчика.
Где и как запускать
Модуль управляемого приложения собственной учебной конфигурации.
Подготовка
Собственная отдельная учебная конфигурация и учебный пользователь. Основной код поместите в модуль управляемого приложения, если явно не указано событие формы.
Событие вызывает платформа при указанном действии пользователя. Не проверяйте его ручным вызовом процедуры вместо назначения события.
BSL, сетевые службы, сообщения и действия интерфейса при сборке HTML не выполнялись.
Создайте собственную общую управляемую форму УчебныйВыборУчастника. Добавьте параметры РежимВыбора, МножественныйВыбор, ЗакрыватьПриЗакрытииВладельца типа Булево и команду ВыбратьСебя. Две дополнительные процедуры — в модуле именно этой формы.
Создайте учебного пользователя базы, войдите им и зарегистрируйте его в собственной настроенной системе взаимодействия. Серверная функция возвращает настоящий UUID этого пользователя, а не случайный новый идентификатор.
Нажмите Показать все при подборе пользователя в своей системе взаимодействия. При выборе кнопкой форма закрывается с настоящим UUID. Не открывайте форму выбора вручную вместо вызова из обсуждения.
Для варианта события формы используйте свою форму с контекстным обсуждением; глобальный вариант назначается модулю приложения. Сохраняйте стандартные переданные Параметры: их тип и смысл уже установлены платформой.
Процедура ОбработкаПолученияФормыВыбораПользователейСистемыВзаимодействия(НазначениеВыбора, Форма, Обсуждение, Параметры, ВыбраннаяФорма, СтандартнаяОбработка)
Если НазначениеВыбора <> НазначениеВыбораПользователейСистемыВзаимодействия.УчастникОбсуждения Тогда
Возврат;
КонецЕсли;
ВыбраннаяФорма = "ОбщаяФорма.УчебныйВыборУчастника";
СтандартнаяОбработка = Ложь;
Сообщить("Подготовлен выбор собственного учебного пользователя");
КонецПроцедурыОбщая форма УчебныйВыборУчастника: команда ВыбратьСебя
&НаКлиенте
Процедура ВыбратьСебя(Команда)
СвойИдентификатор = СвойПользовательНаСервере();
Сообщить("Выбран собственный учебный пользователь");
Закрыть(СвойИдентификатор);
КонецПроцедурыТа же общая форма: серверный источник настоящего UUID
&НаСервереБезКонтекста
Функция СвойПользовательНаСервере()
Пользователь = ПользователиИнформационнойБазы.ТекущийПользователь();
Если Пользователь = Неопределено Тогда
ВызватьИсключение "Войдите своим созданным учебным пользователем";
КонецЕсли;
Возврат Пользователь.УникальныйИдентификатор;
КонецФункцииРазбор по шагам
Создайте указанный собственный источник / форму / общий модуль.
Назначьте обработчик правильному событию.
Вызовите описанное действие интерфейса и проверьте реальный параметр / результат.
Как проверить результат
Непустое имя формы даёт гиперссылку Показать все. СтандартнаяОбработка=Ложь оставляет выбранную собственную форму и её параметры.
Форма возвращает одного реального учебного пользователя через Закрыть. UUID базы допустим в этом протоколе; отображаемая строка имени не подставляется вместо него.
Ожидаемый результат
Событие разобрано на ограниченном собственном сценарии, без выполнения входных строк как кода.
На что обратить внимание
BSL при сборке HTML не исполнялся. Не смешивайте клиентский callback с серверным модулем и не создавайте второй одноимённый обработчик в том же модуле.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.