Меню

1с 8 макет ландшафт портрет

Печать в портретном режиме, а хочу ландшафт!

Бухгалтерия предприятия, редакция 2.0 (2.0.45.5) в терминале

Внешняя форма СФ с выбором подписантов

Везде, где только можно (и видимо, там где нельзя) наставил:
ТабДокумент.ОриентацияСтраницы ориентацияСтраницы.Ландшафт;

пробовал и
ТабДокумент.КлючПараметровПечати = «Параметры_Печати_СФ_1137»;
после чего в параметрах страницы менял на ландшафт, печатал, потом открываешь снова — опять 25 = портрет

Как сделать ландшафт?

«=» — опечатка, т.е.

ТабДокумент.ОриентацияСтраницы = ориентацияСтраницы.Ландшафт;

Куда вставить
ТабДокумент.ОриентацияСтраницы = ориентацияСтраницы.Ландшафт;
чтобы наверняка? Кэш 8.2 почистил. Базу передобавил. Не помогло. (3) перед строчкой ТабДокумент.Показать() Нет у меня во внешней печатной форме Показать(). если есть строчка
Возврат ТабДокумент;
тогда перед ней Модуль Формы:

Процедура ПриОткрытии()
ТабДокумент = Новый ТабличныйДокумент;
Если Корректировочный Тогда
ТабДокумент = ПечатьКорректировочногоСчетаФактуры1137(СсылкаНаОб ъект);
Иначе
ТабДокумент = ПечатьСчетаФактуры1137(СсылкаНаОбъект);
КонецЕсли;

ТабДокумент.ПолеСверху = 13;
ТабДокумент.ПолеСлева = 0;
ТабДокумент.ПолеСнизу = 0;
ТабДокумент.ПолеСправа = 0;

ТабДокумент.ВерхнийКолонтитул.Выводить = Истина;
ТабДокумент.ВерхнийКолонтитул.НачальнаяСтраница = 2;
ТабДокумент.ВерхнийКолонтитул.ВертикальноеПоложени е = ВертикальноеПоложение.Низ;
ЗаголовокДляПечати = ОбщегоНазначения.СформироватьЗаголовокДокумента(Сс ылкаНаОбъект, «Счет-фактура») + » г.»;
ТабДокумент.ВерхнийКолонтитул.ТекстСлева = ЗаголовокДляПечати;
ТабДокумент.ВерхнийКолонтитул.ТекстСправа = «Лист [&НомерСтраницы]»;
ЭтаФорма.Заголовок = ЗаголовокДляПечати;

Элементыформы.ПолеТабличногоДокумента.ВставитьОбла сть(ТабДокумент.Область());
ЭлементыФормы.ПолеТабличногоДокумента.ОтображатьЗа головки = Ложь;
ЭлементыФормы.ПолеТабличногоДокумента.ОтображатьСе тку = Ложь;
ЭлементыФормы.ПолеТабличногоДокумента.Защита = Истина;
ЭлементыФормы.ПолеТабличногоДокумента.ТолькоПросмо тр = Истина;

Функция ПечатьСчетаФактуры1137(Ссылка) Экспорт
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.КлючПараметровПечати = «СчетФактура1137СчетФактура1137»;
Макет = ПолучитьМакет(«СчетФактура1137»);

ДанныеДляПечати = Неопределено;
УчетнаяПолитика = Неопределено;

СобратьДанныеДляПечати(Ссылка, ДанныеДляПечати, УчетнаяПолитика);

Если ТипЗнч(ДанныеДляПечати) = Тип(«Соответствие») Тогда
Возврат Ложь;
ИначеЕсли ДанныеДляПечати = Неопределено Тогда
Возврат Ложь;
КонецЕсли;

РеквизитыСФ = ОбщегоНазначения.ПолучитьЗначенияРеквизитов(Ссылка ,
«Дата,ВидСчетаФактуры,Исправление,НомерИсправления ,ДоговорКонтрагента»);
Дата = РеквизитыСФ.Дата;
ВидСчетаФактуры = РеквизитыСФ.ВидСчетаФактуры;
Исправление = РеквизитыСФ.Исправление;
НомерИсправления = РеквизитыСФ.НомерИсправления;
ДоговорКонтрагента = РеквизитыСФ.ДоговорКонтрагента;

СведенияОбПокупателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице (ДанныеДляПечати.Покупатель, СсылкаНаОбъект.Дата);
СведенияОПоставщике = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице (ДанныеДляПечати.Поставщик, СсылкаНаОбъект.Дата);

ОбластьМакета = Макет.ПолучитьОбласть(«Шапка»);
ОбластьМакета.Параметры.Заполнить(ДанныеДляПечати) ;

Если СсылкаНаОбъект.Исправление Тогда
ОбластьМакета.Параметры.НомерИсправления = «Исправление №» + Строка(СсылкаНаОбъект.НомерИсправления) + » от » + Формат(СсылкаНаОбъект.Дата, «ДФ=’дд ММММ гггг'») + » г.»;
Иначе
ОбластьМакета.Параметры.НомерИсправления = «Исправление № — от —«;
КонецЕсли;

ОбластьМакета.Параметры.ПредставлениеПоставщика = «Продавец: »
+ ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОПоставщике, «НаименованиеДляПечатныхФорм,»);

ОбластьМакета.Параметры.АдресПоставщика = «Адрес: » + ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОПоставщике, «ЮридическийАдрес,»);

Если НЕ (СсылкаНаОбъект.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.Налоговы йАгент
И СсылкаНаОбъект.ДоговорКонтрагента.ВидАгентскогоДог овора = Перечисления.ВидыАгентскихДоговоров.Нерезидент) Тогда

КПП = ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОПоставщике, «КПП,», Ложь);
Если ЗначениеЗаполнено(КПП) Тогда
КПП = «/» + КПП;
КонецЕсли;
ОбластьМакета.Параметры.ИННпоставщика = «ИНН/КПП продавца: »
+ ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОПоставщике, «ИНН,», Ложь) + КПП;

Иначе
ОбластьМакета.Параметры.ИННпоставщика = «ИНН/КПП продавца: —»
КонецЕсли;

ЗаголовокДляПечати = ОбщегоНазначения.СформироватьЗаголовокДокумента(Да нныеДляПечати, «Счет-фактура»);
ОбластьМакета.Параметры.Номер = ЗаголовокДляПечати;

Если СсылкаНаОбъект.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.НаАванс Тогда

ОбластьМакета.Параметры.ПредставлениеГрузоотправит еля = «Грузоотправитель и его адрес: —«;
ОбластьМакета.Параметры.ПредставлениеГрузополучате ля = «Грузополучатель и его адрес: —«;

СведенияОГрузоотправителе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице (
?(ДанныеДляПечати.Грузоотправитель = «он же», Неопределено, ДанныеДляПечати.Грузоотправитель), СсылкаНаОбъект.Дата);
СведенияОГрузополучателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице (
ДанныеДляПечати.Грузополучатель, СсылкаНаОбъект.Дата);

Иначе
Если ЗначениеЗаполнено(Строчка.СтранаПроисхождения) Тогда
ОбластьМакета.Параметры.ПредставлениеСтраны = СокрЛП(Строчка.СтранаПроисхождения.Наименование);
КонецЕсли;
КонецЕсли;

// Проставляем прочерки в незаполненные графы в соответствии с Постановлением
Если СсылкаНаОбъект.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.НаАванс Тогда

ОбластьМакета.Параметры.Количество = «—«;
ОбластьМакета.Параметры.Цена = «—«;
ОбластьМакета.Параметры.Стоимость = «—«;
ОбластьМакета.Параметры.Акциз = «—«;

ОбластьМакета.Параметры.СтранаПроисхожденияКод = «—«;
ОбластьМакета.Параметры.ПредставлениеСтраны = «—«;
ОбластьМакета.Параметры.ПредставлениеГТД = «—«;

Если НЕ ЗначениеЗаполнено(ОбластьМакета.Параметры.ЕдиницаИ змерения) Тогда
ОбластьМакета.Параметры.ЕдиницаИзмерения = «—«;
ОбластьМакета.Параметры.ЕдиницаИзмеренияКод = «—«;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ОбластьМакета.Параметры.ЕдиницаИ змеренияКод) Тогда
ОбластьМакета.Параметры.ЕдиницаИзмеренияКод = «—«;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ОбластьМакета.Параметры.Количест во) Тогда
ОбластьМакета.Параметры.Количество = «—«;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ОбластьМакета.Параметры.Цена) Тогда
ОбластьМакета.Параметры.Цена = «—«;
КонецЕсли;

ОбластьМакета.Параметры.СтранаПроисхожденияКод = «—«;
ОбластьМакета.Параметры.ПредставлениеСтраны = «—«;
ОбластьМакета.Параметры.ПредставлениеГТД = «—«;

// Проверим возможность вывода табличного документа
СтрокаСПодвалом = Новый Массив;
СтрокаСПодвалом.Добавить(ОбластьМакета);
Если НомерСтроки = КоличествоСтрок Тогда
// Если последняя строка, то должен поместится итог и подвал
СтрокаСПодвалом.Добавить(ОбластьМакетаИтого);
СтрокаСПодвалом.Добавить(ОбластьМакетаПодвал);
КонецЕсли;

Если НЕ ФормированиеПечатныхФорм.ПроверитьВыводТабличногоД окумента(ТабДокумент, СтрокаСПодвалом) Тогда

Если КоличествоСтрок > 0 Тогда
// Вывод разделителя и заголовка таблицы на новой странице
ТабДокумент.ВывестиГоризонтальныйРазделительСтрани ц();
ТабДокумент.Вывести(ОбластьМакетаЗаголовокТаблицы) ;
КонецЕсли;

ИтогоСтоимость = ИтогоСтоимость + Строчка.СуммаБезНДС;
ИтогоСуммаНДС = ИтогоСуммаНДС + Строчка.СуммаНДС;
ИтогоВсего = ИтогоВсего + Строчка.СуммаСНДС;

Если ВыборкаСтрокТовары.Количество() > 0 Тогда
ТабДокумент.Область(ТабДокумент.ВысотаТаблицы,,Таб Документ.ВысотаТаблицы,).ВместеСоСледующим = Истина;
КонецЕсли;

// Выводим строку «Всего к оплате»

Если СсылкаНаОбъект.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.НаАванс Тогда
ОбластьМакетаИтого.Параметры.ИтогоСтоимость = «—«;
Иначе
ОбластьМакетаИтого.Параметры.ИтогоСтоимость = ИтогоСтоимость;
КонецЕсли;
Если СчетФактураБезНДС Тогда
ОбластьМакетаИтого.Параметры.ИтогоСуммаНДС = «без НДС»;
Иначе
ОбластьМакетаИтого.Параметры.ИтогоСуммаНДС = ИтогоСуммаНДС;
КонецЕсли;
ОбластьМакетаИтого.Параметры.ИтогоВсего = ИтогоВСего;

Если СсылкаНаОбъект.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.Налоговы йАгент Тогда
ОбластьМакетаПодвал.Параметры.Свидетельство = ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОбПокупателе, «Свидетельство,»);
Иначе
ОбластьМакетаПодвал.Параметры.Свидетельство = ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОПоставщике, «Свидетельство,»);
КонецЕсли;

// Устанавливаем параметры печати и колонтитулы

ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
ТабДокумент.ПолеСверху = 13;
ТабДокумент.ПолеСлева = 0;
ТабДокумент.ПолеСнизу = 0;
ТабДокумент.ПолеСправа = 0;

Если ТипЗнч(СсылкаНаОбъект.ДокументОснование) <> Тип(«ДокументСсылка.ОказаниеУслуг») Тогда
ТабДокумент.ВерхнийКолонтитул.Выводить = Истина;
ТабДокумент.ВерхнийКолонтитул.НачальнаяСтраница = 2;
ТабДокумент.ВерхнийКолонтитул.ВертикальноеПоложени е = ВертикальноеПоложение.Низ;
ТабДокумент.ВерхнийКолонтитул.ТекстСлева = ЗаголовокДляПечати;
ТабДокумент.ВерхнийКолонтитул.ТекстСправа = «Лист [&НомерСтраницы]»;
КонецЕсли;

ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
Возврат ТабДокумент;

Источник статьи: http://forums.kuban.ru/f1040/pechat-_v_portretnom_rezhime_hochu_landshaft-4455203.html

Использование макетов оформления

Макеты оформления компоновки данных предназначены для оформления отчетов. При помощи макетов оформления можно указывать различным областям отчета определенные цвета фона, текста, шрифты и т.д.

Читайте также:  Летние беседки со шторами

Типы областей макета оформления

Выводимый отчет можно разделить на области, указанные на рис. 1

Отчет
Заголовок
Информация
Элемент отчета 1
Элемент отчета 2
.
Элемент отчета N

На указанном рисунке:

  • заголовок — область отчета, содержащая заголовок отчета,
  • информация — область отчета, содержащая текст установленных в отчете отборов, а также параметры данных,
  • э лементы отчета представляют собой группировки, таблицы, диаграммы или вложенные отчеты.

Группировку отчета можно представить в виде областей, указанных на рис. 2

Группировка
Заголовок
Информация
Заголовок таблицы
Заголовок группировки уровень 1
Заголовок группировки уровень 2
.
Заголовок группировки уровень N
Детальные записи
Подвал группировки уровень N
.
Подвал группировки уровень 2
Подвал группировки уровень 1
Общие итоги по вертикали

На указанном рисунке:

  • заголовок — область группировки, содержащая заголовок группировки верхнего уровня,
  • информация — область группировки, содержащая текст установленных для группировки верхнего уровня отборов,
  • заголовок таблицы — область группировки, содержащая имена выводимых полей,
  • заголовки группировки — области, содержащие значения выводимых полей группировки. Данные области выводятся в начале группировки,
  • подвалы группировки — области, содержащие значения выводимых полей. Данные области выводятся в конце группировки,
  • детальные записи — область, содержащая значения выводимых полей детальных записей,
  • общие итоги по вертикали — область, содержащая итоги по группировке.

Следует заметить, что в качестве заголовков или подвалов группировки могут использоваться заголовки и подвалы иерархической группировки. Также перед заголовками группировок могут находиться области заголовка и информации , отображающие заголовок вложенной группировки и отбор соответственно.

Группировку отчета, отображаемую в виде списка, можно представить в виде областей, указанных на рис. 3

Группировка списка
Заголовок
Информация
Заголовок группировки списка уровень 1
Заголовок группировки списка уровень 2
.
Заголовок группировки списка уровень N
Детальные записи списка
Подвал группировки списка уровень N
.
Подвал группировки списка уровень 2
Подвал группировки списка уровень 1
Общие итоги по вертикали списка

На указанном рисунке:

Следует заметить, что в качестве заголовков или подвалов группировки могут использоваться заголовки и подвалы иерархической группировки.

Таблицу можно представить в виде областей, указанных на рис. 4

Таблица
Заголовок
Информация
Заголовок таблицы Заголовок группировки колонки уровень 1 Подвал группировки колонки уровень 1
Заголовок группировки уровень 1 Ресурсы заголовка группировки уровень 1
Заголовок группировки уровень 2 Ресурсы заголовка группировки уровень 2
.
Заголовок группировки уровень N Ресурсы заголовка группировки уровень N
Детальные записи Ресурсы детальных записей
Подвал группировки уровень N Ресурсы подвала группировки уровень N
.
Подвал группировки уровень 2 Ресурсы подвала группировки уровень 2
Подвал группировки уровень 1 Ресурсы подвала группировки уровень 1
Общие итоги по вертикали

На указанном рисунке:

Таким образом, в макете оформления существуют следующие типы областей :

  1. ЗаголовокГруппировки (GroupHeader) — область заголовка группировки . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  2. ПодвалГруппировки (GroupFooter) — область подвала группировки . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  3. ЗаголовокИерархическойГруппировки (HierarchicalGroupHeader) — область заголовка иерархической группировки . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  4. ПодвалИерархическойГруппировки (HierarchicalGroupFooter) — область подвала иерархической группировки . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  5. ЗаголовокГруппировкиСписка (ListGroupHeader) — область заголовка группировки списка . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  6. ПодвалГруппировкиСписка (ListGroupFooter) — область подвала группировки списка . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  7. ЗаголовокИерархическойГруппировкиСписка (ListHierarchicalGroupHeader) — область заголовка иерархической группировки списка . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  8. ПодвалИерархическойГруппировкиСписка (ListHierarchicalGroupFooter) — область подвала иерархической группировки списка . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  9. ЗаголовокГруппировкиКолонки (ColumnGroupHeader) — область заголовка колонки таблицы . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  10. ПодвалГруппировкиКолонки (ColumnGroupFooter) — область подвала колонки таблицы . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  11. ЗаголовокИерархическойГруппировкиКолонки (ColumnHierarchicalGroupHeader) — область заголовка иерархической колонки таблицы . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  12. ПодвалИерархическойГруппировкиКолонки (ColumnHierarchicalGroupFooter) — область подвала иерархической колонки таблицы . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  13. ДетальныеЗаписи (Detail) — область детальных записей. Для данной области значение уровня должно быть всегда равным 0;
  14. ДетальныеЗаписиСписка (ListDetail) — область детальных записей списка. Для данной области значение уровня должно быть всегда равным 0.
  15. РесурсыЗаголовкаГруппировки (ResourcesGroupHeader) — область ресурсов заголовка группировки . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  16. РесурсыПодвалаГруппировки (ResourcesGroupFooter) — область ресурсов подвала группировки . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  17. РесурсыЗаголовкаИерархическойГруппировки (ResourcesHierarchicalGroupHeader) — область ресурсов заголовка иерархической группировки . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  18. РесурсыПодвалаИерархическойГруппировки (ResourcesHierarchicalGroupFooter) — область ресурсов подвала иерархической группировки . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  19. РесурсыДетальныхЗаписей (ResourcesDetail) — область ресурсов детальных записей. Для данной области значение уровня должно быть всегда равным 0;
  20. ИтогПоРесурсамЗаголовкаГруппировки (ResourcesTotalGroupHeader) — область итогов по ресурсам заголовка группировки;
  21. ИтогПоРесурсамПодвалаГруппировки (ResourcesTotalGroupFooter) — область итогов по ресурсам подвала группировки;
  22. ИтогПоРесурсамЗаголовкаИерархическойГруппировки (ResourcesTotalHierarchicalGroupHeader) — область итогов по ресурсам заголовка иерархической группировки;
  23. ИтогПоРесурсамПодвалаИерархическойГруппировки (ResourcesTotalHierarchicalGroupFooter) — область итогов по ресурсам заголовка колонки таблицы;
  24. ИтогПоРесурсамДетальныхЗаписей (ResourcesTotalDetail) — область итога по ресурсам детальных записей. Для данной области значение уровня должно быть всегда равным 0;
  25. ОбщиеИтогиПоВертикали (VerticalOverall) — область общего итога по вертикали . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  26. ОбщиеИтогиПоВертикалиСписка (ListVerticalOverall) — область общего итога по вертикали списка . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  27. ЗаголовокТаблицы (TableHeader) — область заголовка таблицы или группировки. Для данной области значение уровня должно быть всегда равным 0;
  28. ПоУмолчанию (Default) — область по умолчании. Для данной области значение уровня должно быть всегда равным 0;
  29. Заголовок (Title) — область заголовка отчета . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию ;
  30. Информация (Information) — область информации . Для данной области можно указать значение уровня группировки, при этом значение уровня, равное 0, подразумевает область по умолчанию .

Существуют следующие особенности вывода заголовков и подвалов группировок :

  • Если не задана область подвала неиерархической группировки, то в качестве области подвала выводится область заголовка группировки ;
  • Если для иерархической группировки не задана область заголовка, то в качестве области заголовка выводится область заголовка неиерархической группировки ;
  • Если не задана область подвала иерархической группировки, то в качестве области подвала выводится область заголовка иерархической группировки. Если же она не задана, то выводится область подвала неиерархической группировки . Если и эта область не задана, то выводится область заголовка неиерархической группировки.

Использование макетов оформления в отчетах

Система компоновки данных позволяет использовать различные макеты оформления в отчете. Причем существует возможность использования нескольких макетов оформления для различных элементов отчета. Для управления макетами оформления используются настройки компоновки данных. При использовании конструктора схемы компоновки данных необходимо перейти на закладку » Настройки » , а затем выбрать закладку » Другие настройки » . На данной закладке находится параметр Макет оформления , позволяющий указывать используемый макет оформления в отчете.

Существуют следующие предопределенные макеты оформления :

  • Без оформления ;
  • Основной — макет оформления по умолчанию ;
  • Яркий ;
  • Море ;
  • Арктика ;
  • Зеленый ;
  • Античный.

Создание собственного макета оформления

Собственный макет оформления можно создать, используя конструктор макетов. Для этого необходимо добавить новый макет в папку Общие макеты , находящейся в папке Общие дерева объектов конфигурации. В открывшемся конструкторе макетов необходимо установить тип макета Макет оформления компоновки данных .

Открывшийся редактор макетов оформления позволяет редактировать цвета фона, текста и границы, шрифты, отступы и т.д. областей макета оформления. При этом имена областей, содержащих оформления областей, выделяются жирным шрифтом. Стоит отметить, что существует возможность использования предопределенного макета оформления — для этого необходимо использовать команду Стандартный макет. . Также существует возможность загрузки и сохранения макетов оформления в XML — формате.

Использование макетов оформления из встроенного языка

Для обращения к макетам оформления из встроенного языка предназначено свойство глобального контекста БиблиотекаМакетовОформленияКомпоновкиДанных . Данное свойство является коллекцией макетов оформления и содержит предопределенные макеты оформления, а также макеты оформления, определенные в общих макетах дерева конфигурации.

Данная коллекция имеет следующие методы :

  • Индекс( ) — получает индекс элемента в библиотеке макетов оформления компоновки данных ;
  • Количество() — возвращает количество элементов в библиотеке макетов оформления компоновки данных ;
  • Найти( ) — осуществляет поиск элемента библиотеки макетов оформления компоновки данных по имени ;
  • Получить( ) — получает элемент библиотеки макетов оформления компоновки данных по индексу.

Элементами библиотеки макетов оформления компоновки данных являются объекты типа ЭлементБиблиотекиМакетовОформленияКомпоновкиДанных . Данный объект имеет следующие свойства :

  • Имя — имя макета оформления ;
  • Представление — представление макета оформления.

Также данный объект имеет метод ПолучитьМакет() , который возвращает объект типа МакетОформленияКомпоновкиДанных .

Для редактирования макетов оформления предназначен объект встроенного языка КонструкторМакетаОформленияКомпоновкиДанных . Данный объект можно создать при помощи конструктора, который имеет необязательный параметр — макет оформления. Если макет оформления не указан, то создается новый макет, иначе открывается для редактирования указанный макет оформления. Конструктор макетов оформления имеет следующие методы:

  • ПолучитьМакет() — данный метод предназначен для получения редактируемого макета оформления и возвращает значение типа МакетОформленияКомпоновкиДанных ;
  • Редактировать( ) — данный метод открывает окно конструктора макета оформления. Параметр является необязательным и может содержать значение типа Форма — форму-владельца окна конструктора макетов оформления. При завершении редактирования и нажатии кнопки ОК, конструктор макета оформления вызывает у формы-владельца обработчик события «Обработка выбора». В обработчике данного события можно получить редактируемый макет оформления ;
  • УстановитьМакет( ) — данный метод предназначен для установки макета оформления для редактирования и имеет один параметр — типа МакетОформленияКомпоновкиДанных .

Поясним использование конструктора макета оформления на следующем примере. Пусть необходимо добавить возможность создания собственного макета оформления в отчете о продажах. Для этого необходимо создать собственную форму отчета, добавить в командную панель данной формы кнопку создания макета оформления, а также переопределить действие по кнопке Сформировать .

В обработчике нажатия на кнопку » Создать макет оформления » происходит создание конструктора макета оформления :

Пример формы конструктора показан на указанном ниже рисунке.

В обработчике события ОбработкаВыбора формы происходить запоминание созданного в конструкторе макета оформления.

В обработчике нажатия на кнопку » Сформировать » происходит формирование отчета :

Источник статьи: http://its.1c.ru/db/content/metod8dev/src/platform81/metod/dcs/i8101592.htm