|
Заполнение реквизитов формы программно |
☑ |
0
Aldnepr
05.09.19
✎
17:50
|
Есть обработка, которая открывает форму документа модально и проводит его. Надо во время открытия заполнить реквизит формы. пытаюсь в лоб, но не заполняется. База файловая УТ
Пока Перечень.Следующий() Цикл
Если Перечень.Проведен=Истина тогда
Продолжить;
КонецЕсли;
Документ= Перечень.ПолучитьОбъект();
Форма=Документ.ПолучитьФорму("ФормаДокумента");
Форма.ОткрытьМодально(15);
Форма.ЭлементыФормы.СуммаОплаты.Значение=Документ.СуммаДокумента;
|
|
1
VladZ
05.09.19
✎
17:53
|
(0)
1. Создаешь объект.
2. Заполняешь реквизиты.
3. Открываешь форму.
|
|
2
RomanYS
05.09.19
✎
17:54
|
"в лоб" это присвоить значение реквизиту формы. С присваивать значение через элементы формы - это "через ж.пу".
Ну и почему не работает: ваша строка не выполнится пока вы не закроете модальную форму))))
|
|
3
Aldnepr
05.09.19
✎
18:06
|
(2) Я пробовал так перед открытием формы прописать, все равно не прописывается, В конце мне надо провести с заполненным этим реквизитом СуммаОплаты
Документ= Перечень.ПолучитьОбъект();
Форма=Документ.ПолучитьФорму("ФормаДокумента");
Форма.ЭлементыФормы.СуммаОплаты.Значение=Документ.СуммаДокумента;
Форма.ОткрытьМодально(15);
Документ.Провести();
|
|
4
RomanYS
05.09.19
✎
18:17
|
какой путь к данным у Форма.ЭлементыФормы.СуммаОплаты?
|
|
5
Aldnepr
05.09.19
✎
18:38
|
(4) это реквизит висит на форме, которую я открываю
|
|
6
RomanYS
05.09.19
✎
18:39
|
(5) логично. И он привязан к данным. К каким?
|
|
7
Aldnepr
05.09.19
✎
18:49
|
(6) посмотрел. Он не в иерархии ДокументОбъект и не в ЭлементыФормы. Отдельно
|
|
8
RomanYS
05.09.19
✎
18:53
|
(7) значит это реквизит формы. Он скорее всего заполняется при открытии формы. Зачем ты его хочешь заполнить, что должен сделать пользователь в форме? В чем тайный смысл такого бизнес-процесса?
|
|
9
RomanYS
05.09.19
✎
18:55
|
(7) заполнить его "в лоб":
Форма.СуммаОплаты = Документ.СуммаДокумента;
но это тебе не поможет в виду (8)
|
|
10
Aldnepr
05.09.19
✎
19:00
|
(9) и нет вариантов программно записать этот чертов реквизит формы?
|
|
11
RomanYS
05.09.19
✎
19:03
|
(10) он не записывается, а только отображается на форме. Может использоваться только в форме (вряд ли учитывается при проведении)
|
|
12
Aldnepr
05.09.19
✎
19:42
|
(11) в том то и дело что влияет. Обработка проведения сравнивает Этот реквизит с суммой дока и если не соответствует, то не проводит. ( сам документ править нельзя- такое условие если что)
|
|
13
RomanYS
05.09.19
✎
20:20
|
(12) Обработка проведения ничего не знает про реквизит формы (да и про форму вообще).
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший