|
УФ. Как очистить табличную часть на форме? |
☑ |
0
Strogg
13.10.14
✎
17:12
|
Добрый день, коллеги.
Создал общую команду. Работа команды - очистка табличных частей документов, переданных в качестве параметра. Тип параметра команды - составной тип, ссылки на несколько документов. Короче, не могу понять, как очистить ТЧ. Привожу код, который депйствует на одном типе документа, и не действует на другом:
---
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
Если Вопрос("Очистить табличную часть?", РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Да тогда
ОчиститьНаСервере(ПараметрКоманды);
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ОчиститьНаСервере(ПараметрКоманды)
ДокОбъект = ПараметрКоманды.ПолучитьОбъект();
ДокОбъект.тч.Очистить();
ДокОбъект.Записать();
КонецПроцедуры
----
В одном типе документа команда очищает ТЧ и все ок. В другом типе документа - не происходит обновление отображения на форме. Хотя у объекта данные очищаются. Но мне-то надо, чтоб пользователь видел изменения...
|
|
1
Heckfy
13.10.14
✎
17:16
|
Элементы.ТЧ.Обновить();
|
|
2
Krolik Bezobraznik
13.10.14
✎
17:18
|
Что то не ясно. Вы хотите обработкой очистить ТЧ каких то документов.Так? Если так, то формы доков не открыты же, зачем их обновлять?
|
|
3
Krolik Bezobraznik
13.10.14
✎
17:24
|
Если ты очистил ТЧ дока а пользователь этот док смотрит и необходимо обновить, то думаю тебе поможет ОповеститьОбИзменении()
|
|
4
silent person
13.10.14
✎
17:31
|
(3) он создал общую команду в составе конфигурации и повесил на нее обработчик. на управляемой форме документа команда появляется автоматически.
|
|
5
Strogg
13.10.14
✎
19:15
|
(1) Где я возьму эти элементы, когда в параметре ссылка на документ?
(2), (3) все это выполняется в контексте формы, я думаю, а не в команде.
(4) да, так и есть. Надо как-то передать в параметр упр. форму. Если ничего не придумаю - сделаю тип параметра команды- множественный и попробую как-нибудь замутить с передачей управляемой формы в качестве параметра...
|
|
6
Strogg
13.10.14
✎
20:01
|
В обсчем, коллеги, на будуЮсчее:
---
ПараметрыВыполненияКоманды.Источник.Объект.[ИмяТЧ].Очистить();
---
Т.к. у меня ИмяТЧ одинаковое во всех документах - то метод отрабатывает на ура после выполнения серверной процедуры. На ура, в смысле, в открытой форме ТЧ обновляется.
Спасибо за внимание :)
|
|
7
Маленький Вопросик
13.10.14
✎
21:09
|
Объект.ТабЧасть.Очистить() - не работает?
|
|
8
Strogg
13.10.14
✎
21:13
|
Работает. Для объекта. А вот данные формы не обновляет.
|
|
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой