|
УФ. Как вызвать процедуру модуля документа из его формы?
| ☑ |
0
megabax
10.09.16
✎
19:15
|
Добрый день. В модуле документа объявил процедуру:
Процедура РассчитатьСкидку() экспорт
СуммаСкидки=Позиции.Итог("Всего")*ПроцентСкидки/100;
СуммаСкидкиЗамена=Позиции.Итог("ВсегоЗамена")*ПроцентСкидки/100;
СуммаПослеСкидки=Позиции.Итог("Всего")-СуммаСкидки;
СуммаПослеСкидкиЗамена=Позиции.Итог("ВсегоЗамена")-СуммаСкидкиЗамена;
КонецПроцедуры
Вызываю ее из модуля формы, например, так:
&НаКлиенте
Процедура ПозицииПриИзменении(Элемент)
Объект.РассчитатьСкидку();
КонецПроцедуры
И говорит:
"{Документ.шапИзменениеПозицийЗаявкиПокупателя.Форма.ФормаДокумента.Форма(468)}: Метод объекта не обнаружен (РассчитатьСкидку)
Объект.РассчитатьСкидку();"
Подскажите пожалуйста, как лечить?
|
|
1
zak555
10.09.16
✎
19:19
|
на сервере объектформывзеачение и вызывай
|
|
2
RomanYS
10.09.16
✎
19:21
|
эээ... это УФ.
1. уходим на сервер
2. получаем объект (реквизитформывзначение)
3. вызываем процедуру
4. возвращаем изменения из объекта в данные формы (какая-то функция с похожим названием, но наоборот)
|
|
3
megabax
10.09.16
✎
19:23
|
(1) Сделал так
&НаСервере
Процедура РассчитатьСкидку()
Объект.РассчитатьСкидку();
КонецПроцедуры
&НаКлиенте
Процедура ПозицииПриИзменении(Элемент)
РассчитатьСкидку();
КонецПроцедуры
тоже самое
|
|
4
megabax
10.09.16
✎
19:24
|
(2) "2. получаем объект (реквизитформывзначение) " - это как?
|
|
5
RomanYS
10.09.16
✎
19:26
|
(4) найди в СП, или поиском по любой типовой
|
|
6
megabax
10.09.16
✎
19:29
|
(5) Это что то типа этого что ли:
"Функция ВыполнитьКомандуИзФормыВнешнегоОбъекта(ИдентификаторКоманды, ПараметрыКоманды, ЭтаФорма) Экспорт
ВнешнийОбъект = ЭтаФорма.РеквизитФормыВЗначение("Объект");
РезультатВыполнения = ВыполнитьКомандуВнешнегоОбъекта(ВнешнийОбъект, ИдентификаторКоманды, ПараметрыКоманды, Неопределено);
Возврат РезультатВыполнения;
КонецФункции
"
То есть, сейчас в УФ нельзя нормально вызвать процедуры модуля объекта, только вот так извратившись???
|
|
7
Torquader
10.09.16
✎
19:58
|
(4) Очень классное решение, особенно, если учесть, что модуль объекта при его создании каждый раз компиляется - и потом будут вопрос - а чего это всё так сильно тормозит.
|
|
8
Рэйв
10.09.16
✎
20:00
|
(6)Чукча не читатель.Чукча писатель...:-)
|
|