Постановка задачи
При программном обращении к форме карточки записи справочника или документа для настройки видимости и доступности элементов управления необходимо учитывать, что карточка может открываться, изменяться и сохраняться службой Workflow, DCTS или веб-сервисом интеграции. Поэтому в вычислениях по управлению элементами управления на форме необходимо проверять режим работы и обращаться к форме только при работе в визуальном режиме. Для проверки режима работы используется функция InteractiveMode или выражение not VarIsNull(Object.View).
Программный код
// Событие СОХРАНЕНИЕ_ПОСЛЕ
if InteractiveMode() // или not VarIsNull(Object.View)
Actions = Object.Form.Actions
ActionList = CreateStringList()
ActionList.Add('SubAssignments')
ActionList.Add('Setting')
ActionList.Add('Documents')
ActionList.Add('BoundTasks')
ActionList.Add('Print')
ObjectModified = not Object.Modified
foreach Action in ActionList
RequestStateAction = Actions.FindAction(Action)
RequestStateAction.Enabled = ObjectModified
endforeach
endif
// Вычисления на реквизите
…
if not VarIsNull(Object.View) and InteractiveMode()
Object.Form.Actions.FindAction('WorkGroup').Visible = Flag
endif
© Компания DIRECTUM, 2018 | Сообщество пользователей DIRECTUM |