Добрый день. Не могу разобраться.
Есть документ. В его многострочной части,к примеру, 3 строки. Удаляем любую.Чтобы отловить действие удаления, пишу процедуру ПриУдаленииСтроки(). В ней проверяю количество оставщихся строк. Показывает всеравно 3. Подскажите в чем затык?
Наверное оптимально повесить на форму текстовое поле, сунуть в форму ПроверкаУдаленияСтроки() и написать что-то типа этого:
Перем фУдалялиСтроку;
...
Процедура ПриУдаленииСтроки()
фУдалялиСтроку = 1;
КонецПроцедуры
Процедура ПроверкаУдаленияСтроки
Если фУдалялиСтроку = 1 Тогда
глПересчитатьЧтоТо(Контекст);
фУдалялиСтроку = 0;
КонецЕсли;
КонецПроцедуры
Не особо понял про текстовое поле. Его на форму нужно добавлять или в многострочную часть. И куда именно нужно добавлять процедуру ПроверкаУдаленияСтроки()?
(6) суть этого алгоритма: после удаления строки из ТЧ нужно обновить некоторые значения самого документа, что и делается в глПересчитатьЧтоТо(Контекст).
Текстовый реквизит с функцией на форме нужен для проверки флага фУдалялиСтроку = 1 (удаляли строку, тогда дёрнемся пересчитывать, не удаляли сидим и ждём когда удалят)