Постановка задачи
В карточке справочника Совещания и заседания на вкладке Главная в группе Совещание есть кнопка Конференция. При нажатии на кнопку необходимо отправить мгновенное сообщение всем доступным участникам совещания с текстом «Конференция по совещанию <Тема совещания> <Гиперссылка на совещание>». Тема совещания хранится в реквизите Тема (Содержание).
Программный код
// Object – предопределенная переменная с текущей записью
// справочника "Совещания и заседания".
// MeetingUserArray - сформированный массив с сетевыми именами
// участников совещания
// SEND_MESSAGE_IS_IMPOSSIBLE_STATUS_IDs – сформированный массив ИД
// статусов, при которых отправка сообщений пользователям невозможна.
// ActualMeetingUsers - массив пользователей, статус которых
// позволяет отправить им сообщение.
ActualMeetingUsers = ArrayOf()
MessagingFactory = Application.MessagingFactory
if not VarIsNull(MessagingFactory)
foreach MeetingUser in CArrayElement(MeetingUserArray)
// Получить ИД статуса пользователя.
StatusID = MessagingFactory.StatusID(MeetingUser)
// Проверить, можно ли пользователю отправить сообщение.
if not In(SEND_MESSAGE_IS_IMPOSSIBLE_STATUS_IDs; StatusID)
ActualMeetingUsers = AddElementToArray(ActualMeetingUsers;
MeetingUser)
endif
endforeach
// Отправить мгновенное сообщение доступным участникам совещания.
MessagingFactory.SendMessage(ActualMeetingUsers; Format(
'Конференция по совещанию "%s" %s'; ArrayOf(
Object.Requisites(SYSREQ_CONTENTS).AsString; Object.
HyperLink(hltText))))
endif
© Компания DIRECTUM, 2018 | Сообщество пользователей DIRECTUM |