iRiverStone
BANNED | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору dmitronn Код: МакетДоговора = ПолучитьМакет("ИмяМакета").Получить(); | И дальше работаешь через МакетДоговора. Например: Код: МакетДоговора.FormFields("НомерДог").Range.Text = ОбщегоНазначения.ПолучитьНомерНаПечать(СсылкаНаОбъект.ПолучитьОбъект()); МакетДоговора.FormFields("ДатаДог").Range.Text = Формат(СсылкаНаОбъект.Дата,"ДЛФ=DD"); | Тут как раз на закладках реализовано. Если надо разворачивать табличную часть с неизвестным количеством строк, то примерно вот так: Код: Табл = МакетДоговора.Tables(2); СчСтрок = 2; Для Каждого ТекСтрока Из СсылкаНаОбъект.Товары Цикл Если СчСтрок <= СсылкаНаОбъект.Товары.Количество() Тогда Табл.Rows.Add(); КонецЕсли; Табл.Cell(СчСтрок, 1).Range.Text = ТекСтрока.Номенклатура.Наименование; //Табл.Cell(СчСтрок, 2).Range.Text = ТекСтрока.Номенклатура.Артикул; Табл.Cell(СчСтрок, 3).Range.Text = Формат ( ТекСтрока.Цена, "ЧЦ=10; ЧДЦ=2; ЧРД='='"); Табл.Cell(СчСтрок, 4).Range.Text = ТекСтрока.Количество; Табл.Cell(СчСтрок, 5).Range.Text = Формат ( ТекСтрока.ПроцентСкидкиНаценки, "ЧЦ=3; ЧДЦ=0; ЧН=-"); Табл.Cell(СчСтрок, 6).Range.Text = Формат ( ТекСтрока.Сумма, "ЧЦ=10; ЧДЦ=2; ЧРД='='"); СчСтрок = СчСтрок + 1; КонецЦикла; | Tables(2) - это вторая по порядку таблица в макете СчСтрок = 2 потому что в таблице ещё шапка есть, заполняем со второй строки. В строках таблицы ни закладок ни формул не надо - тут прямая запись но номеру строки и колонки. Я выполнил погружение в прошлое и нашёл у себя в архиве самописную ВПФ для КА под 7.7 для формирования договоров как раз из загруженных вордовых шаблонов | Всего записей: 3332 | Зарегистр. 29-03-2016 | Отправлено: 19:33 12-11-2022 | Исправлено: iRiverStone, 19:39 12-11-2022 |
|