Программно заполнить доп реквизит. УТ 11
Задача такова. Нужно на основании документа ввести акт выполненных работ и заполнить поле, которое является дополнительным реквизитом.
&НаСервере
Процедура ЗаполнитьАктВРСервер(НовыйДок)
РеквизитМастер = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Мастер");
РекМастер = НовыйДок.ДополнительныеРеквизиты.Добавить();
РекМастер.Свойство = РеквизитМастер;
РекМастер.Значение = Объект.Мастер;
НовыйДок.Комментарий = "123654";
КонецПроцедуры
&НаКлиенте
Процедура ВвестиАктВР(Команда)
СтруктураПараметров = Новый Структура;
СтруктураПараметров.Вставить("Основание",Объект.ДокОбъект);
ФормаАкта = ОткрытьФорму("Документ.АктВыполненныхРабот.Форма.ФормаДокумента",СтруктураПараметров,,Ложь,);
ДанныеФормы = ФормаАкта.Объект;
ЗаполнитьАктВРСервер(ДанныеФормы);
КопироватьДанныеФормы(ДанныеФормы, ФормаАкта.Объект);
КонецПроцедуры
В отладчике стрка в ТЧ дополнительные реквизиты объекта формы добавляется, но поле все равно остается пустым. Как обновить его значение? Или может заполнение нужно сделать иным способом?
&НаСервере
Процедура ЗаполнитьАктВРСервер(НовыйДок)
РеквизитМастер = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Мастер");
РекМастер = НовыйДок.ДополнительныеРеквизиты.Добавить();
РекМастер.Свойство = РеквизитМастер;
РекМастер.Значение = Объект.Мастер;
НовыйДок.Комментарий = "123654";
КонецПроцедуры
&НаКлиенте
Процедура ВвестиАктВР(Команда)
СтруктураПараметров = Новый Структура;
СтруктураПараметров.Вставить("Основание",Объект.ДокОбъект);
ФормаАкта = ОткрытьФорму("Документ.АктВыполненныхРабот.Форма.ФормаДокумента",СтруктураПараметров,,Ложь,);
ДанныеФормы = ФормаАкта.Объект;
ЗаполнитьАктВРСервер(ДанныеФормы);
КопироватьДанныеФормы(ДанныеФормы, ФормаАкта.Объект);
КонецПроцедуры
В отладчике стрка в ТЧ дополнительные реквизиты объекта формы добавляется, но поле все равно остается пустым. Как обновить его значение? Или может заполнение нужно сделать иным способом?
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(3) dmitriy_zima, не очень понятно, что не так. "поле все равно остается пустым" - какое поле? в форме? Реквизит-то заполнен? Если дело в обновлении формы, то надо вызвать что-нибудь типа ОбновлениеОтображения() или что там есть в этих управляемых формах для того, чтобы заставить ее перечитать форму. Если не заполняется реквизит, то в отладчике должно быть видно, что не так.
Попробую пояснить приведенный код. На клиенте создается форма документа АКТ Вып работ и заполняется на основании другого дока обработкой заполнения. Далее имеющиеся данные формы передаю на сервер, где необходимо их до заполнить. Так вот заполнение на сервере обычных реквизитов проходит без проблем, но добавленная строка в ТЧ Дополнительные реквизиты не подставляет значение в соответствующее поле на форме. Конфа УТ 11. Понимаю что скорее всего доп реквизиты заполняются программно при создании формы, но как его заполнить если форма уже создана?
Ну так как поле доп реквизита пустое, то соответственно и при записи ничего не запишется. Нужно программно заполнить доп. реквизит имея отрытую форму не записанного документа. Собственно с заполнением обычных реквизитов проблем нет в этом случае