helpf.pro
Регистрация

v8: Ориентация страницы

borisvas
29.06.2011 14:46Прочитано: 19730
Как программно изменить ориентацию страницы выводимого отчета (КС_ПротоколОбмена)?
При его формировании выводится "портрет", нужно сделать "альбом". *11
Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
29.06.2011 14:50Ответ № 1
Код 1C v 8.х
 //Установить вид страницы Альбомная
ТаблДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
borisvas
29.06.2011 15:02Ответ № 2
Прошу прощение за неполную информацию, отчет СКД. *12
E_Migachev
29.06.2011 15:24Ответ № 3
(2) borisvas, Отчет СКД выводится в тот же Табличный документ, делай так:
1. Создай Форму вывода отчета СКД(конструтор ее сам создаст)
2. Для кнопки сформировать напиши свою процедуру вывода отчета:
Код 1C v 8.х
 Процедура ВывестиОтчет() Экспорт
// Выведем в СКД произвольную шапку отчета
Таб = ЭлементыФормы.Результат;
Таб.Очистить();
// Получим макет с нужной шапкой и выведем его
Макет = ПолучитьМакет("Макет");
Область = Макет.ПолучитьОбласть("Заголовок");
Область.Параметры.Раз = "Раз";
Область.Параметры.Два = "Два";
Таб.Вывести(Область);

// Формируем отчет СКД
ДанныеРасшифровки = Неопределено;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.Настройки, ДанныеРасшифровки);

ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, Новый Структура("Данные", ТЗ), ДанныеРасшифровки);
// Установим Альбомную ориентацию страницы
ДокументРезультат = ЭлементыФормы.Результат;
ДокументРезультат .ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт;

// Выводим данные отчета
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент( ДокументРезультат);

ПроцессорВывода.НачатьВывод();

ЭлементРезультата = ПроцессорКомпоновки.Следующий();
Пока ЭлементРезультата <> Неопределено Цикл
ПроцессорВывода.ВывестиЭлемент(ЭлементРезультата);
ЭлементРезультата = ПроцессорКомпоновки.Следующий();
КонецЦикла;

ПроцессорВывода.ЗакончитьВывод();

КонецПроцедуры


Хотя *09 тебе можно и проще
Код 1C v 8.х
 МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(ЭтотОбъект.СхемаКомпоновкиДанных,
Настройки,ДанныеРасшифровки);

ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных,,ДанныеРасшифровки);

ЭлементыФормы.Результат.Очистить();
ДокументРезультат = ЭлементыФормы.Результат;

ДокументРезультат .ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт;

ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
borisvas
29.06.2011 15:51Ответ № 4
Огромное спасибо E_Migachev за консультацию.
Помогло с небольшими изменениями! *06
borisvas
29.06.2011 15:51Ответ № 5
Вопрос закрыт!
ivnik
03.03.2013 00:29Ответ № 6
Спасибо!
ivnik
03.03.2013 00:42Ответ № 7
Спасибо!
Подсказка: Для выделения Кода используйте (в редакторе).
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.