1с блог в кирове - 1С: Франчайзи - сервис

Программирование 1C - Сообщения с тегом "СКД"

  • Облако тегов

  • Архив

    «   Апрель 2024   »
    Пн Вт Ср Чт Пт Сб Вс
    1 2 3 4 5 6 7
    8 9 10 11 12 13 14
    15 16 17 18 19 20 21
    22 23 24 25 26 27 28
    29 30          

Программный вывод отчета СКД и использование внешних данных

Описание для обычных форм (не управляемых)
Создаем форму отчета
Вместо стандартной кнопки  "Сформировать" делаем свою
В модуле формы добавляем процедуру

Процедура ДействияФормыСформироватьОтчет(Кнопка)

СхемаКомпоновкиДанных = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных";);// твой макет СКД

     Настройки = Этаформа.КомпоновщикНастроек.Настройки;

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

ДатаОкончания=МакетКомпоновки.ЗначенияПараметров.ПериодОтчета.Значение.ДатаОкончания;//МакетКомпоновки.ЗначенияПараметров.КонецПериода.Значение;

     ТабЗн1=ПолучитьТабЗнДляОтчета();
ВнешниеНаборыДанных = Новый Структура;
     ВнешниеНаборыДанных.Вставить("ТабЗн",ТабЗн1); // Вот здесь и заполняется таблица значений

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

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

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



Для внешней таблицы ТабЗн1
В схеме компоновки данных добавляем набор данных объект и описываем его поля,
указываем имя объекта ТабЗн1

Программно заполняем ТабЗн1 с помощью процедуры ПолучитьТабЗнДляОтчета()