#0
by TormozIT
Никак не могу разобраться как предполагалось настраивать элементы формы в зависимости от данных объекта в управляемой форме. В обычных формах для этого есть событие ПриИзмененииДанных. Оно вызывается при создании формы для любого объекта (нового или существующего) и при чтении данных объекта в существующей форме (правда только для модифицированного). В управляемых же формах такого события нет. Самым близким является ПриЧтенииНаСервере, но оно не вызывается для нового объекта, что соотвествует названию. Событие же ПриСозданииНаСервере не вызывается при чтении объекта в уже созданной форме, что также соответствует названию. Если процедуру настройки элементов формы вызывать в обоих, то при открытии формы существующего объекта она будет вызвана 2 раза, чего хотелось бы избежать. В случае форм ссылочных объектов можно проверять Объект.Ссылка.Пустая в обработчике ПриСозданииНаСервере, чтобы не вызывать уже вызванную из ПриЧтенииНаСервере процедуру настройки элементов формы. Но для не ссылочных объектов получается придется в каждой форме добавлять флаг ОбъектСчитан, который нужно установить в ПриЧтенииНаСервере и проверять в ПриСозданииНаСервере. Или же есть какой то более красивый способ?
#1
by Mort
Настраивать элементы формы в зависимости от данных стоит в условном оформлении. Другое дело расчет косвенных данных (например, вычисляемая колонка в ТЧ), и тут уже одного "ПриЧтении" достаточно.
#2
by Mort
Впрочем иногда условного оформления недостаточно и тогда начинаются танцы с бубном как в .
#3
by TormozIT
Условное оформление формы ориентировано на колонки таблиц форм и обладает довольно скудными возможностями. Так что это очень слабый костыль.
#4
by TormozIT
Но выигрыш по удобству настройки условного оформления бесспорен. Однако "шаг вправо или влево" и уже надо переносить все условия из условного оформления в обработчик из .
#7
by TormozIT
Удалось найти приемлемо простой способ. В обработчике ПриСозданииНаСервере вызываем процедуру всегда, а в обработчике ПриЧтенииНаСервере вызываем ее только если Не Параметры.Свойство("ТолькоПросмотр").
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- А Форма.Параметр возвращает значение только когда форма открыта модально?
- форма МБ-4 (Форма по ОКУД 0320002)
- У кого есть внешняя печатная форма "Унифицированная форма № МХ-1"
- РАРУС vs ФОРЕС vs AXELOT vs ITOB
- OLE vs xml vs text vs другое
- 1с 8.3 Форма.Форма.Форма(9,17): Тип не определен (Запрос)
- Передача переменной из модуля формы в модуль объекта при проведении объекта
В этой группе 1С
- УФ Кнопка с выпадающим списком - как лучше сделать?
- ДанныеФормыКоллекцияЭлементовДерева нет сортировки?
- УФ. Вызов отчёта из формы документа
- Счет-фактура серия в наименовании номенклатуры
- Срез на дату производственного календаря
- Че-то туплю с правами / как реализовать выборку только разрешенных элементов
- Выборка всех элементов иерархического справочника
- v7: 1с 7.7 Вылетает при открытии диалога выбора файлакаталога !
- Есть ли у 1С Debian-репозиторий?
- Ошибка при формировании отчета СКД
- 1с розница/розница магазин быт техники и сс
- Можно ли использовать версию Office Home and Student в коммерческих целях?
- Документ Передача товаров. УПП
- v7: V7.CreateObject("БухгалтерскиеИтоги") в разрезе Договора
- Кто знает, как пароль на SDF узнать/убрать
- VBA Excel 2007 не показывать окно ввода пароля
- Как в СКД отчете вывести нижний колонтитул?
- ЗУП: ФСС НС по подразделениям
- Алгоритм преобразования дерева в таблицу
- Как в ПриЧтенииНаСервере определить, что ПриСозданииНаСервере еще не вызывалось