Рассмотрим задачу на примере копирования документа "Счет на оплату", нужно чтобы копирование документа происходило не по типовым алгоритмам. (А именно при копировании счета содержание номенклатуры заполняется заново и состоит из наименования номенклатуры + дата, за это отвечает следующая функция
)
Решение задачи:
Чтобы заполнить табличную часть управляемой формы (ДанныеФормыКоллекция) произвольными данными нужно использовать функцию:
ЗначениеВДанныеФормы()
Листинг решения
)
Решение задачи:
Чтобы заполнить табличную часть управляемой формы (ДанныеФормыКоллекция) произвольными данными нужно использовать функцию:
ЗначениеВДанныеФормы()
Листинг решения
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
Форма = ПолучитьФорму("Документ.СчетНаОплатуПокупателю.Форма.ФормаДокумента"); //Получим форму на клиенте
ДанныеФормы = Форма.Объект;
ЗаполнитьНаСервере(ДанныеФормы,ПараметрКоманды); //Заполняем данные на сервере
КопироватьДанныеФормы(ДанныеФормы, Форма.Объект);
Форма.Открыть();
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьНаСервере(НовыйОбъект,Ссылка)
ЗаполнитьЗначенияСвойств(НовыйОбъект,Ссылка,,"Товары, ВозвратнаяТара, Номер");
//Заполняем реквизиты создавайемой формы исключая ДанныеФормыКоллекция
НовыйОбъект.Дата = ТекущаяДата();
ЗначениеВДанныеФормы(Ссылка.Товары,НовыйОбъект.Товары); //Заполняем ДанныеФормыКоллекция
КонецПроцедуры
Комментариев нет:
Отправить комментарий