Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Управляемая форма, как обновить реквизит.

Управляемая форма, как обновить реквизит.
Я
   Быдло замкадное
 
06.10.17 - 11:14
На форме 2 таблички, при удалении строки из одной таблицы надо изменить значение в колонке другой таблице.
Все работало до того как я стал после этого действия еще принудительно проводить документ.
Теперь во второй табличке на форме не видны изменения.
Что пробовал:
1. ОбновитьОтображениеДанных - не помогло
2. Прочитать - не помогло
3.
ОбъектОбработка = РеквизитФормыВЗначение("Объект");
//редактирование ТЧ

ЗначениеВРеквизитФормы(ОбъектОбработка, "Объект");
- тоже не помогло.

Каааак его обновить? Сейчас обновляется только после того как кнопку Записать нажмешь.

Код:

&НаКлиенте
Процедура ТоварыПередУдалением(Элемент, Отказ)
    
    Номенклатура = Элемент.ТекущиеДанные.Номенклатура;
    Количество = Элемент.ТекущиеДанные.Количество;
    
    УбратьКоличествоНаСервере(Номенклатура, Количество);
    
    Записать(Новый Структура("РежимЗаписи", РежимЗаписиДокумента.Проведение));
    
КонецПроцедуры

&НаСервере
Процедура УбратьКоличествоНаСервере(Номенклатура, Количество)
      
    СтруктураПоиска = Новый Структура;
    СтруктураПоиска.Вставить("Номенклатура", Номенклатура);
    МассивСтрок = Объект.ПланФакт.НайтиСтроки(СтруктураПоиска);
    СтрокаПланФакт = МассивСтрок[0];    
    СтрокаПланФакт.Количество = СтрокаПланФакт.Количество - Количество;
        
КонецПроцедуры
 
 
   Быдло замкадное
 
1 - 06.10.17 - 11:16
Записать(Новый Структура("РежимЗаписи", РежимЗаписиДокумента.Проведение));
    
Тоже делал и на сервере и на клиенте, все равно форма не обновляется
   DmitrO
 
2 - 06.10.17 - 11:23
А ничего, что сначала происходит запись, а потом удаляется строка из таблицы Товары?
   Быдло замкадное
 
3 - 06.10.17 - 11:24
(2) почему? Последовательность вроде такая:

УбратьКоличествоНаСервере(Номенклатура, Количество);
    
    Записать(Новый Структура("РежимЗаписи", РежимЗаписиДокумента.Проведение));
   DmitrO
 
4 - 06.10.17 - 11:25
Да, обработчик-то называется ПередУдалением.
   Быдло замкадное
 
5 - 06.10.17 - 11:27
(4) упс! щас исправлю
   Быдло замкадное
 
6 - 06.10.17 - 11:36
Заработало! думал косяк управляемой формы, а оказался косяк моей логики)

Правильный код:

&НаКлиенте
Процедура ТоварыПередУдалением(Элемент, Отказ)
    
    Номенклатура = Элемент.ТекущиеДанные.Номенклатура;
    Количество = Элемент.ТекущиеДанные.Количество;
    
    УбратьКоличествоНаСервере(Номенклатура, Количество);    
    
КонецПроцедуры

&НаСервере
Процедура УбратьКоличествоНаСервере(Номенклатура, Количество)
      
    СтруктураПоиска = Новый Структура;
    СтруктураПоиска.Вставить("Номенклатура", Номенклатура);
    МассивСтрок = Объект.ПланФакт.НайтиСтроки(СтруктураПоиска);
    СтрокаПланФакт = МассивСтрок[0];    
    СтрокаПланФакт.Количество = СтрокаПланФакт.Количество - Количество;
        
КонецПроцедуры

&НаКлиенте
Процедура ТоварыПослеУдаления(Элемент)
    
    Записать(Новый Структура("РежимЗаписи", РежимЗаписиДокумента.Проведение));
    
КонецПроцедуры
   DmitrO
 
7 - 06.10.17 - 11:37
угу..
А теперь скажи, твои юзеры знают о такой чудесной возможности: выделить две строки и нажать Del один раз? Если нет, то лучше не рассказывай им об этом..
   Быдло замкадное
 
8 - 06.10.17 - 11:45
(7) они на ТСД работают, там ни 2 строк, на правой кнопки мышки нет
   DmitrO
 
9 - 06.10.17 - 11:49
ну тогда готово

Список тем форума
Рекламное место пустует  Рекламное место пустует
Миста — веселый ресурс со своими эксклюзивными тараканами Ymryn
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует