По теме из базы знаний
Найденные решения
Вам надо вывести отчет в две колонки в свой макет? Если это так, то в процедуре ПриКомпоновкеДанных надо написать что-то вроде
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ДокументРезультат.Очистить();
Настройки = КомпоновщикНастроек.ПолучитьНастройки();
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки, , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,, ДанныеРасшифровки, Истина);
ТЗ = Новый ТаблицаЗначений;
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
ПроцессорВывода.УстановитьОбъект(ТЗ);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
ДокументРезультат.Очистить();
Макет = ПолучитьМакет("МакетТабличногоДокумента");
КоличествоПолВыборки = Цел((ТЗ.Количество() + 1) / 2);
Для НомерСтроки = 0 По КоличествоПолВыборки Цикл
ТекСтрока = ТЗ[НомерСтроки];
Область = Макет.ПолучитьОбласть("Строка");
Область.Параметры.Заполнить(ТекСтрока);
ДокументРезультат.Вывести(Область);
Область = Макет.ПолучитьОбласть("Строка");
Если ТекСтрока + КоличествоПолВыборки + 1 < ТЗ.Количество() Тогда
ТекСтрока = ТЗ[НомерСтроки + КоличествоПолВыборки + 1];
Область.Параметры.Заполнить(ТекСтрока);
КонецЕсли;
ДокументРезультат.Присоединить(Область);
КонецЦикла;
КонецПроцедуры
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Вам надо вывести отчет в две колонки в свой макет? Если это так, то в процедуре ПриКомпоновкеДанных надо написать что-то вроде
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ДокументРезультат.Очистить();
Настройки = КомпоновщикНастроек.ПолучитьНастройки();
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки, , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,, ДанныеРасшифровки, Истина);
ТЗ = Новый ТаблицаЗначений;
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
ПроцессорВывода.УстановитьОбъект(ТЗ);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
ДокументРезультат.Очистить();
Макет = ПолучитьМакет("МакетТабличногоДокумента");
КоличествоПолВыборки = Цел((ТЗ.Количество() + 1) / 2);
Для НомерСтроки = 0 По КоличествоПолВыборки Цикл
ТекСтрока = ТЗ[НомерСтроки];
Область = Макет.ПолучитьОбласть("Строка");
Область.Параметры.Заполнить(ТекСтрока);
ДокументРезультат.Вывести(Область);
Область = Макет.ПолучитьОбласть("Строка");
Если ТекСтрока + КоличествоПолВыборки + 1 < ТЗ.Количество() Тогда
ТекСтрока = ТЗ[НомерСтроки + КоличествоПолВыборки + 1];
Область.Параметры.Заполнить(ТекСтрока);
КонецЕсли;
ДокументРезультат.Присоединить(Область);
КонецЦикла;
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот