|
Странное поведение управляемой формы | ☑ | ||
---|---|---|---|---|
0
Fedor-1971
14.11.13
✎
13:20
|
На УФ вынесены 2 табличных части для ТЧ2 установлен отбор строк по уникальному идентификатору из ТЧ1.
При удалении строки из ТЧ1 не устанавливается флаг модифицированности для формы. Событие ПослеУдаления() - не срабатывает. Событие ПередУдалением() - работает. При удалении строки из ТЧ2 всё работает штатно, флаг модифицированности устанавливается оба события отрабатывают. Может кто знает это особенность работы при отборе строк или где-то в настройках формы ошибка? |
|||
1
Euguln
14.11.13
✎
13:28
|
(0) в первой ТЧ нет привязки обработчика ПослеУдаления.
|
|||
2
RomaH
naïve
14.11.13
✎
13:29
|
отказ меняешь?
|
|||
3
Fedor-1971
14.11.13
✎
13:36
|
(1) есть
(2) нет, в том и проблема, можно убрать оба обработчика, но при удалении строки не выставляется флаг модификации формы, как-будто не нажимали кнопки удаления. Выставить в обработчике не проблема, хотелось бы понять почему так происходит. |
|||
4
butterbean
14.11.13
✎
13:42
|
в ПередУдалением случайно не СтандартнаяОбработка = Ложь??
|
|||
5
butterbean
14.11.13
✎
13:44
|
(4) точнее Отказ = Истина;
|
|||
6
kochurovg
14.11.13
✎
13:49
|
Если ТЧ1 не принадлежит Основному объекту УФ, то для Реквизита ТЧ1 должен быть установлен флаг "Сохраняемое значение" - может здесь собака зарыта
|
|||
7
Dethmont
14.11.13
✎
13:52
|
Ты код то показать можешь???
|
|||
8
Dethmont
14.11.13
✎
13:54
|
Что делаешь в процедуре ПередУдалением() в ТЧ1 покажи
|
|||
9
Fedor-1971
14.11.13
✎
13:59
|
&НаКлиенте
Процедура ЗаказанныеУслугиПередУдалением(Элемент, Отказ) а=2; КонецПроцедуры &НаКлиенте Процедура ЗаказанныеУслугиПослеУдаления(Элемент) а=1; КонецПроцедуры |
|||
10
Fedor-1971
14.11.13
✎
14:03
|
просто проверяю срабатывает событие или нет, нужно получить событие именно после удаления строки
|
|||
11
Fedor-1971
14.11.13
✎
14:05
|
Привязка строк:
&НаКлиенте Процедура ЗаказанныеУслугиПриАктивизацииСтроки(Элемент) стр=Элемент.ТекущиеДанные; Если Не стр = неопределено тогда ИД=стр.УникИД; Элементы.РеальныеУслугиСтавкаПланПриведенная.Заголовок="Ставка, "+Строка(стр.Валюта); Иначе ИД=новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000"); Элементы.РеальныеУслугиСтавкаПланПриведенная.Заголовок="Ставка, "; КонецЕсли; ВычислитьОбщиеДанные(Объект.ЗаказанныеУслуги.Индекс(стр)); Элементы.РеальныеУслуги.ОтборСтрок = Новый ФиксированнаяСтруктура("УникИД", ИД); КонецПроцедуры |
|||
12
Dethmont
14.11.13
✎
14:07
|
По ходу новая фича =))
|
|||
13
Fedor-1971
14.11.13
✎
14:13
|
(12) По ходу так и есть, тупо убрал ТЧ1, добавил заново на форму - норма, как только установил ОтборСтрок - получаем сюрприз
|
|||
14
Fedor-1971
14.11.13
✎
14:13
|
Всем спасибо, буду искать лекарство
|
|||
15
RomaH
naïve
14.11.13
✎
14:14
|
изменяешь первую ТЧ, а отбор на второй?
|
|||
16
Fedor-1971
14.11.13
✎
14:18
|
(15) да. ТЧ1 - Основная услуга, ТЧ2 - расшифровка, соответственно надо отобрать расшифровки только данной услуги.
События для изменения строки ТЧ1 отрабатывают, для удаления строки отрабатывает только ПередУдалением |
|||
17
RomaH
naïve
14.11.13
✎
14:20
|
попробуй отбор строк ставить через обработчик ожидания
|
|||
18
Fedor-1971
14.11.13
✎
14:45
|
Экспериментально выяснил следующее:
если в событии ПриАктивацииСтроки убрать строки: Элементы.РеальныеУслугиСтавкаПланПриведенная.Заголовок= события отрабатывают как положено. Т.е. на УФ глючно работает модификация формы из события ПриАктивацииСтроки даже без обращения к серверу, а так хотелось сделать динамически изменяющуюся форму. Спасибо за участие в обсуждении. |
|||
19
RomaH
naïve
15.11.13
✎
07:03
|
(18) используй обработчик ожидания - заголовок поменяешь не сразу, а через 0,1 секунду
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |