Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Ошибка при изменении реквизита формы из команды

Ошибка при изменении реквизита формы из команды
Я
   wms
 
21.05.19 - 16:31
В справочнике ДоговорыКонтрагентов  сделал команду- у нее стоит флаг Изменяет данные.
По нажатию которой надо заполнить доп. реквизит на форме тип Договор
Выдает ошибку:
{Справочник.ДоговорыКонтрагентов.Команда.КомандаДоговорыОрганизаций.МодульКоманды(11)}: Поле объекта недоступно для записи (ДополнительныйРеквизитЗначение_EF0544AFx6EBDx11E6x95FEx2C337A416EE6_90284E94x3F49x11E9x8377xAC162D788CD8)
        Форма.элементы[ИмяДопРеквНаФорме]=ТекДог;

Код :

&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
    ТекДог=ПараметрКоманды;
    СвДог=УстСвойствоНаСервере("Свойство_Договор партнера (Договоры с контрагентами)");
    
    Список = ПараметрыВыполненияКоманды.Источник.Свойства_ОписаниеДополнительныхРеквизитов;
    НайденныеСтроки = Список.НайтиСтроки(Новый Структура("Свойство", СвДог));
    Если НайденныеСтроки.Количество() > 0 Тогда
        ИмяДопРеквНаФорме=НайденныеСтроки[0].ИмяРеквизитаЗначение;
        Форма=ПараметрыВыполненияКоманды.Источник;
        Форма.элементы[ИмяДопРеквНаФорме]=ТекДог;  //для теста текущий договор подставляю, и тут ошибка
    КонецЕсли;
 
 
   Tonik992
 
1 - 21.05.19 - 16:36
Посмотрите в отладке, что в Форма.элементы[ИмяДопРеквНаФорме]
   Tonik992
 
2 - 21.05.19 - 16:37
ну и изменять значение реквизита надо не через Элементы формы.
А так: Форма[ИмяДопРеквНаФорме]
   wms
 
3 - 21.05.19 - 16:37
(1) Значение=ПолеФормы. Тип=ПолеФормы
   Жан Пердежон
 
4 - 21.05.19 - 16:38
с УФ, видимо, недавно работаете?
   wms
 
5 - 21.05.19 - 16:46
(2) спасибо, переклинило после праздников и УПП. правда теперь не ругается,
Форма[ИмяДопРеквНаФорме]   заполняется, но на форме не отображается...

(4) не регулярно и без удовольствия. тормозит, можно кофе попить пока эту доработку мелкую обновляю
   wms
 
6 - 21.05.19 - 17:02
+(5)
Форма[ИмяДопРеквНаФорме]=ТекДог  - заполняет договором, но на форме доп. реквизит пустой
   Жан Пердежон
 
7 - 21.05.19 - 17:06
   wms
 
8 - 21.05.19 - 17:38
(7) модуль - управление свойствами ? я знаю про такой. оттуда ранее и выкусил примеры как работать с доп. реквизитами.
тут как из команды объекта изменить форму.
если бы это была команда формы там думаю все бы заработало.
Форма.Обновить() попробовал не помогло
   Вафель
 
9 - 21.05.19 - 17:54
значит ты не верно определил имя реквизита
   Вафель
 
10 - 21.05.19 - 17:54
у реквизита и у элемента разные имена
   wms
 
11 - 21.05.19 - 18:29
(10) это доп. реквизит. имена там одинаковые и все правильно
   Вафель
 
12 - 21.05.19 - 18:35
тогда должно меняться
   wms
 
13 - 21.05.19 - 23:51
(12) разобрался. все менялось. только из-за флага "Изменяет данные" данные формы заново перечитывались и стирались. убрал флаг и все заработало

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.