|
Запрос, макет и табличная часть... | ☑ | ||
---|---|---|---|---|
0
Adm1nSpb
02.05.17
✎
21:57
|
Добрый день
Есть Форма. На ней кнопка при нажатии которой выполняется Запрос заполняется Макет, т.е. написано заполнение макета из запроса. Как сделать так, чтобы макет отображался внутри формы? Скажем при нажатии на кнопку выполняется запрос, затем....например в вместо некого табличного поля отображался заполненный макет? //создание нового табличного документа ТабДок = Новый ТабличныйДокумент; //получение макета для печати расходной накладной Макет = Отчеты.МойОтчет.ПолучитьМакет("Макет"); //получим область "Заголовок" как новый табличный документ (!) Область = Макет.ПолучитьОбласть("Заголовок"); //выведем область "Шапка" в табличный документ ТабДок.Вывести(Макет.ПолучитьОбласть("Заголовок")); //получим область "Шапка" как новый табличный документ (!) Область = Макет.ПолучитьОбласть("Шапка"); //выведем область "Шапка" в табличный документ ТабДок.Вывести(Макет.ПолучитьОбласть("Шапка")); //получение области "Строка" //обратите внимание, что это можно сделать до цикла по строкам Область = Макет.ПолучитьОбласть("Строка"); //вывод строк документа в печатную форму Для Каждого СтрСостава Из ТабличноеПоле Цикл //заполнение параметров области из строки табличной части Область.Параметры.Заполнить(СтрСостава); //вывод сформированной области в табличный документ ТабДок.Вывести(Область); КонецЦикла; //установим параметры отображения табличного документа ТабДок.ТолькоПросмотр = Истина; ТабДок.ОтображатьЗаголовки = Истина; ТабДок.ОтображатьСетку = Ложь; ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт; //покажем табличный документ на экране ТабДок.Показать(); но что делать если я хочу чтобы это отображалось не в новом окне, а внутри формы из которой все заполняется? |
|||
1
AlvlSpb
02.05.17
✎
22:10
|
(0) На форме создать новый реквизит с типом Табличный документ
С именем (по вашему коду) ТабДок (ваш макет)и вынести на форму в нужное место. Т.е. не в макеты а в реквизит формы. ПриСозданииНаСервере Элементы.ТабДок.Видимость = Ложь; Процедура из вашего кода заканчивается Элементы.ТЧ.Видимость = Ложь // ТЧ - это табл часть документа Элементы.ТабДок.Видимость = Истина; ТабДок.Показать() |
|||
2
shadow_sw
03.05.17
✎
04:37
|
Добавить на форму ПолеТабличногоДокумента
ЭтаФорма.ТекущийЭлемент = ЭлементыФормы.ПолеТабличногоДокумента1; ДокРезультат = ЭлементыФормы.ПолеТабличногоДокумента1; Макет = ПолучитьМакет("Макет"); ДокРезультат.Очистить(); ДокРезультат.ТолькоПросмотр = Истина; СекцияЗаголовок =Макет.ПолучитьОбласть("Заголовок"); ДокРезультат.Вывести(СекцияЗаголовок); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |