Имя: Пароль:
1C
1С v8
Не обновляется табличная часть документа на клиенте
0 altfin
 
20.12.22
10:41
ДВС!

Находясь в форме документа программно добавляю строку в табличную часть "Показатели" на клиенте.
При этом не отображается добавленная строка, хотя в Объект.Показатели добавленная строка есть.

Прочитать() - не катит, поскольку еще док не записан.

Это тоже не работает:
ЭтаФорма.ОбновитьОтображениеДанных(Элементы.Показатели);
ЭтаФорма.Элементы.Показатели.Обновить();

Единственно что работает это ОбновитьИнтерфейс(), но хотелось бы обойтись менее трудоемкой в плане нагрузки процедурой.

Что можно применить?
1 НафНаф
 
20.12.22
10:59
ну показывайте как добавляете
2 Мультук
 
гуру
20.12.22
11:04
(0)

Дай угадаю. Это ЗУП или ЕРП, а таблица на форме смотрит вовсе не на таб.часть "Показатели", а какую-нибудь таблицу значений или вовсе дерево.
3 altfin
 
20.12.22
11:05
&НаКлиенте
Процедура ДобавитьОбновитьСтрокуКонечныеОстатки()
        
        ТекДанные = Элементы.ТЧ_ШПЗ.ТекущиеДанные;
    ТекШПЗ = ТекДанные.ШПЗ;  
    Если Не ЗначениеЗаполнено(ТекШПЗ) Тогда
        Возврат;
    КонецЕсли;
    
    КонечныеОстаткиМассивСтрок = Объект.Показатели.НайтиСтроки(Новый Структура("ЭтоКонечныйОстаток,ШПЗ",Истина,ТекШПЗ));
    СтрокаКонечныеОстатки = ?(КонечныеОстаткиМассивСтрок.Количество() = 0,Неопределено,КонечныеОстаткиМассивСтрок[0]);
        
    Если СтрокаКонечныеОстатки = Неопределено Тогда
        СтрокаОстатков = Объект.Показатели.Добавить();
    Иначе
        СтрокаОстатков = СтрокаКонечныеОстатки;
    КонецЕсли;
    
    СтрокаОстатков.ШПЗ = ТекШПЗ;
    СтрокаОстатков.ЭтоКонечныйОстаток = Истина;
    СтрокаОстатков.Номенклатура = ИскомаяНоменклатура;
    
    //ОбновитьИнтерфейс();
    
    ЭтаФорма.ОбновитьОтображениеДанных(Элементы.Показатели);
    
    ЭтаФорма.Элементы.Показатели.Обновить();
    
КонецПроцедуры
4 altfin
 
20.12.22
11:06
(3) мимо

Если нажать записать, то сразу все отображается
5 Мультук
 
гуру
20.12.22
11:14
(4)

просто ради любопытства название конфы и вид документа можно озвучить (если они типовые )
6 altfin
 
20.12.22
11:18
(5) самописный документ, к типовой конфе отношения не имеет
7 altfin
 
20.12.22
11:18
Если один раз записать с добавленной строкой, то потом все программные изменения по ней отображаются уже нормально
8 Kassern
 
20.12.22
11:20
(6) тогда у вас может быть все что угодно. Вы записываете в ТЧ у объекта строчку, а на форму к примеру выводите левую ТЗ не привязанную к объекту. При записи, или открытии ее заполняете. Поэтому и не видите отображение при изменение при программном добавлении. В общем ковыряйте форму, магии не бывает.
9 p-soft
 
20.12.22
11:23
грабли. выносите код изменения данных обьекта на серверную часть, либо применяйте магию синхронизации данных клиента и сервера, она описана в доках
Независимо от того, куда вы едете — это в гору и против ветра!