Имя: Пароль:
1C
1С v8
Обновить форму списка программно
0 Serg_0175
 
08.12.13
08:07
Здравствуйте!

8.2, управляемое приложение.

После действий самописной кнопки на форме документа, надо обновить форму списка документов.

Для этого:
Выполнены действия по кнопке, записаны изменения.
В модуле формы документа получена УпрФорма списка документов, и к ней применены методы:
ОтобразитьИзменениеДанных(УпрФорма,ВидИзмененияДанных.Изменение);
УпрФорма.ОбновитьОтображениеДанных().
Но это почему-то не работает.

По F5 обновляется.

Неужели нет выхода, кроме автообновления?
1 Serg_0175
 
08.12.13
08:33
(0) Что-то не так с ПолучитьФорму.

Форма списка открыта.

НО

УпрФорма.Открыта() говорит Ложь,
Упр.форма.Открыть() - открывает обновленную форму списка
..........
2 wertyu
 
08.12.13
08:39
(0) ты вообще как до такого докатился?
3 Serg_0175
 
08.12.13
08:44
(2) ?
4 wertyu
 
08.12.13
08:45
(3) почему у тебя в программе всё на русском?
5 wertyu
 
08.12.13
08:49
УпрФорма.ОбновитьОтображениеДанных(), что за УпрФорма?
6 wertyu
 
08.12.13
08:49
(3) извини, не удалось пошутить
7 Мимохожий Однако
 
08.12.13
08:51
Код показывай. Не стесняйся.
8 Serg_0175
 
08.12.13
08:51
Чтобы перехватить Пометку удаления на форме документа, была сделана самописная кнопка установки/снятия пометки удаления.
Действия по ней выполняются как надо, но форма списка этих доков не обновляется.
9 wertyu
 
08.12.13
08:53
(8) пометка - это серверное действие, при чём тут форма?
10 Serg_0175
 
08.12.13
08:54
ну, долго объяснять... :)
11 Serg_0175
 
08.12.13
08:54
сейчас код будет..
12 wertyu
 
08.12.13
08:55
(10) список хоть динамический?
13 Serg_0175
 
08.12.13
09:03
[code]
//Это модуль формы документа, процедура по самописной кнопке

&НаКлиенте
Процедура ПометкаУдал(Команда)
    
    УстСнПометки(); // устанавливает/снимает пометку удаления
    ЭтаФорма.Прочитать();
    Форма=ПолучитьФорму("Документ.СчетФактура.ФормаСписка"); //получаем УФ списка документов
        ......
                    
КонецПроцедуры

[/code]
14 wertyu
 
08.12.13
09:05
а на сервере что?
15 Serg_0175
 
08.12.13
09:06
(14) На сервере выполняется сама процедура установки/снятия пометки удаления
УстСнПометки()

и отрабатывает как надо вроде
16 Serg_0175
 
08.12.13
09:09
(15) думаю, сервер здесь ни при чем, т.к. форму-то получить надо на клиенте.
Или как ?
17 Serg_0175
 
08.12.13
09:11
Думаю, дело в (1) - форма списка открыта, но по методу ПолучитьФорму я получаю не ее, а какбы ее копию...
:)
18 wertyu
 
08.12.13
09:12
(15) а данные откуда приходят?
19 wertyu
 
08.12.13
09:17
а, ладно оповещение есть? форма вообще в курсе, что её надо обновить?
20 Serg_0175
 
08.12.13
09:27
(19) спасибо, попробую .
21 Serg_0175
 
08.12.13
09:42
Вобщем, надо было всего-то
ОбновитьИнтерфейс()   !!!


&НаКлиенте
Процедура ПометкаУдал(Команда)
    
    УстСнПометки(); // устанавливает/снимает пометку удаления
    ЭтаФорма.Прочитать();
    ОбновитьИнтерфейс();
                          
КонецПроцедуры


УРА!

ыыы