Eprst писал(а) 29. Июля 2011 :: 05:00:Хм.. тоже мне баг, наслаждайся:
//Процедура ПриОткрытии()
Процедура ПослеОткрытия()
Это горю не поможет. Ситуация следующая:
в форме списка справочника, в ПриОткрытии() делаю (упрощенно) АктивизироватьОбъект(ВосстановитьЗначение(Вид());
Соответственно, в ПриЗакрытии(), СохранитьЗначение(Вид(), ТекущийЭлемент());
Эта штука упрощает жизнь пользователям, восстанавливая курсор в той же позиции, где он был при закрытии формы.
Решил переписать этот код на Перехватчик. И возникла проблема с subj.
Просто так заменить на ПослеОткрытия здесь нельзя, т.к. при вызове формы справочника в момент выбора значения реквизита, курсор будет прыгать на сохраненное значение, а не на текущее значение реквизита.
Обходными путями удалось решить эту проблему.
Вкратце, в ПриОткрытии проверяем ТекущийЭлемент() - если он не пустой, значит форма открыта для выбора из заполненного реквизита и ничего не делаем. Если ТекущийЭлемент() пустой, устанавливаем флаг того что можно ВосстановитьЗначение и делаем АктивизироватьОбъект в ПослеСозданияФормы().
Если кому нужен код - см. вложение.