Имя: Пароль:
1C
1С v8
Не срабатывает доступность/недоступность элементов при повторном открытии формы
0 neitrosha
 
26.03.13
11:31
Добрый день.
Суть задачи - у меня есть определенная форма записи. На ней есть несколько элементов, два из которых - "Текущее место работы" и "Тип связи". В зависимости от их значений меняется доступность других элементов. Меняю их с помощью события "ПриИзменении".

При повторном открытии формы всё равно все поля доступны.
Как решить эту проблему, чтобы недоступные поля оставались недоступными?
Как я понял, нужно как-то передать форме списка, что поля-то недоступны стали. Но как? Я пытался разобраться с "Оповестить", "Обновить отображение данных" - не получилось (то ли не то, то ли кривой - пытался сделать по "проф разработке в 8.2".

Решил задачу с помощью костыля:

&НаКлиенте
Процедура ПриОткрытии(Отказ)
   Если НЕ Запись.ТипЗаписиСпециалиста.Пустая() Тогда
    ТипЗаписиСпециалистаПриИзменении(ЭтаФорма.Элементы.ТипЗаписиСпециалиста)

   КонецЕсли;
КонецПроцедуры


Если это можно решить с помощью стандартных функций, то:
-Какую функцию нужно разместить в форме записи?
-Нужно ли какую-то функцию размещать в форме списка, чтобы как-то она понимала, что у определенных полей доступность закрыта?

Спасибо.
1 neitrosha
 
26.03.13
11:36
Разобрался. Сделал с помощью метода "Оповестить".
Как-то еще можно сделать?
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший