Добрый день.
Суть задачи - у меня есть определенная форма записи. На ней есть несколько элементов, два из которых - "Текущее место работы" и "Тип связи". В зависимости от их значений меняется доступность других элементов. Меняю их с помощью события "ПриИзменении".
При повторном открытии формы всё равно все поля доступны.
Как решить эту проблему, чтобы недоступные поля оставались недоступными?
Как я понял, нужно как-то передать форме списка, что поля-то недоступны стали. Но как? Я пытался разобраться с "Оповестить", "Обновить отображение данных" - не получилось (то ли не то, то ли кривой - пытался сделать по "проф разработке в 8.2".
Решил задачу с помощью костыля:
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Если НЕ Запись.ТипЗаписиСпециалиста.Пустая() Тогда
ТипЗаписиСпециалистаПриИзменении(ЭтаФорма.Элементы.ТипЗаписиСпециалиста)
КонецЕсли;
КонецПроцедуры
Если это можно решить с помощью стандартных функций, то:
-Какую функцию нужно разместить в форме записи?
-Нужно ли какую-то функцию размещать в форме списка, чтобы как-то она понимала, что у определенных полей доступность закрыта?
Разобрался. Сделал с помощью метода "Оповестить".
Как-то еще можно сделать?
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший