|
|
Ошибка при изменении реквизита формы из команды |
☑ |
|
0
wms
21.05.19
✎
16:31
|
В справочнике ДоговорыКонтрагентов сделал команду- у нее стоит флаг Изменяет данные.
По нажатию которой надо заполнить доп. реквизит на форме тип Договор
Выдает ошибку:
{Справочник.ДоговорыКонтрагентов.Команда.КомандаДоговорыОрганизаций.МодульКоманды(11)}: Поле объекта недоступно для записи (ДополнительныйРеквизитЗначение_EF0544AFx6EBDx11E6x95FEx2C337A416EE6_90284E94x3F49x11E9x8377xAC162D788CD8)
Форма.элементы[ИмяДопРеквНаФорме]=ТекДог;
Код :
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ТекДог=ПараметрКоманды;
СвДог=УстСвойствоНаСервере("Свойство_Договор партнера (Договоры с контрагентами)");
Список = ПараметрыВыполненияКоманды.Источник.Свойства_ОписаниеДополнительныхРеквизитов;
НайденныеСтроки = Список.НайтиСтроки(Новый Структура("Свойство", СвДог));
Если НайденныеСтроки.Количество() > 0 Тогда
ИмяДопРеквНаФорме=НайденныеСтроки[0].ИмяРеквизитаЗначение;
Форма=ПараметрыВыполненияКоманды.Источник;
Форма.элементы[ИмяДопРеквНаФорме]=ТекДог; //для теста текущий договор подставляю, и тут ошибка
КонецЕсли;
|
|
|
1
Tonik992
21.05.19
✎
16:36
|
Посмотрите в отладке, что в Форма.элементы[ИмяДопРеквНаФорме]
|
|
|
2
Tonik992
21.05.19
✎
16:37
|
ну и изменять значение реквизита надо не через Элементы формы.
А так: Форма[ИмяДопРеквНаФорме]
|
|
|
3
wms
21.05.19
✎
16:37
|
(1) Значение=ПолеФормы. Тип=ПолеФормы
|
|
|
4
Жан Пердежон
21.05.19
✎
16:38
|
с УФ, видимо, недавно работаете?
|
|
|
5
wms
21.05.19
✎
16:46
|
(2) спасибо, переклинило после праздников и УПП. правда теперь не ругается,
Форма[ИмяДопРеквНаФорме] заполняется, но на форме не отображается...
(4) не регулярно и без удовольствия. тормозит, можно кофе попить пока эту доработку мелкую обновляю
|
|
|
6
wms
21.05.19
✎
17:02
|
+(5)
Форма[ИмяДопРеквНаФорме]=ТекДог - заполняет договором, но на форме доп. реквизит пустой
|
|
|
7
Жан Пердежон
21.05.19
✎
17:06
|
|
|
|
8
wms
21.05.19
✎
17:38
|
(7) модуль - управление свойствами ? я знаю про такой. оттуда ранее и выкусил примеры как работать с доп. реквизитами.
тут как из команды объекта изменить форму.
если бы это была команда формы там думаю все бы заработало.
Форма.Обновить() попробовал не помогло
|
|
|
9
Вафель
21.05.19
✎
17:54
|
значит ты не верно определил имя реквизита
|
|
|
10
Вафель
21.05.19
✎
17:54
|
у реквизита и у элемента разные имена
|
|
|
11
wms
21.05.19
✎
18:29
|
(10) это доп. реквизит. имена там одинаковые и все правильно
|
|
|
12
Вафель
21.05.19
✎
18:35
|
тогда должно меняться
|
|
|
13
wms
21.05.19
✎
23:51
|
(12) разобрался. все менялось. только из-за флага "Изменяет данные" данные формы заново перечитывались и стирались. убрал флаг и все заработало
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший