|
v7: Документ. Удаление строки.
| ☑ |
0
Slim747
12.09.14
✎
11:35
|
Добрый день. Не могу разобраться.
Есть документ. В его многострочной части,к примеру, 3 строки. Удаляем любую.Чтобы отловить действие удаления, пишу процедуру ПриУдаленииСтроки(). В ней проверяю количество оставщихся строк. Показывает всеравно 3. Подскажите в чем затык?
|
|
1
lxndr
12.09.14
✎
11:39
|
v7.7?
|
|
2
silent person
12.09.14
✎
11:44
|
(0) В момент вызова процедуры строка еще присутствует в ТЧ, т.к. в этой процедуре еще можно отменить удаление строки.
|
|
3
Slim747
12.09.14
✎
11:46
|
Может существует какая-нибудь другая предопределенная процедура?
|
|
4
пипец
12.09.14
✎
11:47
|
(0) повесить функцию на форму
|
|
5
lxndr
12.09.14
✎
11:47
|
|
|
6
Slim747
12.09.14
✎
12:00
|
В соседней теме вычитал следующее:
Наверное оптимально повесить на форму текстовое поле, сунуть в форму ПроверкаУдаленияСтроки() и написать что-то типа этого:
Перем фУдалялиСтроку;
...
Процедура ПриУдаленииСтроки()
фУдалялиСтроку = 1;
КонецПроцедуры
Процедура ПроверкаУдаленияСтроки
Если фУдалялиСтроку = 1 Тогда
глПересчитатьЧтоТо(Контекст);
фУдалялиСтроку = 0;
КонецЕсли;
КонецПроцедуры
Не особо понял про текстовое поле. Его на форму нужно добавлять или в многострочную часть. И куда именно нужно добавлять процедуру ПроверкаУдаленияСтроки()?
|
|
7
Fedor-1971
12.09.14
✎
12:13
|
(6) суть этого алгоритма: после удаления строки из ТЧ нужно обновить некоторые значения самого документа, что и делается в глПересчитатьЧтоТо(Контекст).
Текстовый реквизит с функцией на форме нужен для проверки флага фУдалялиСтроку = 1 (удаляли строку, тогда дёрнемся пересчитывать, не удаляли сидим и ждём когда удалят)
|
|