|
Обновление формы документа после изменений в модуле объекта |
☑ |
0
Rassvetniy
04.08.16
✎
03:21
|
Приветствую.
в модуле объекта документа фрагмент:
Процедура расчетИтогов() экспорт
С = 0;
С_ндс = 0;
Снац = 0;
Срозн = 0;
// расчет
этотОбъект.Стоимость = С;
этотОбъект.СуммаНдс = С_ндс;
этотОбъект.СуммаНаценки = 100;
этотОбъект.СуммаРозничная = Срозн;
конецПроцедуры
вызывается этот метод из модуля формы следующим образом:
&НаКлиенте
Процедура ТабличнаяЧасть1ПриИзменении(Элемент)
Итоги();
//ЭтаФорма.ОбновитьОтображениеДанных();
КонецПроцедуры
&НаСервере
Процедура Итоги ()
РеквизитФормыВЗначение("Объект").расчетИтогов();
конецПроцедуры
как значение реквизитов рассчитанных в модуле объекта перенести назад в форму?
|
|
1
Rassvetniy
04.08.16
✎
04:15
|
насколько понимаю РеквизитФормыВЗначение("Объект") создает копию объекта никак не связанную в тем, что отображен в форме...
|
|
2
Rassvetniy
04.08.16
✎
04:30
|
прав ли, что такой хитрый ход конем по просту невозможен? задумка была в том что расчетный код документа прописать в одном месте, а так получается если создавать документ интерактивно из формы код нужно поместить в модуль формы если создавать документ програмно то тот же код нужно помещать в модуль объекта
|
|
3
Горогуля
04.08.16
✎
04:46
|
если что-то делается в модуле объекта, то считай, что формы нет. и не надо выдумывать извращения конём
|
|
4
Rassvetniy
04.08.16
✎
04:47
|
нашел решение:
&НаСервере
Процедура Итоги ()
ОбъектН =ДанныеФормыВЗначение(Объект,Тип("ДокументОбъект.АктПереоценки"));
ОбъектН.расчетИтогов();
ЗначениеВДанныеФормы(ОбъектН,Объект);
конецПроцедуры
|
|