8.х Программно выполнить СКД

Тема в разделе "Система компоновки данных (СКД)", создана пользователем xaysnet, 27 ноя 2019.

  1. TopicStarter Overlay
    xaysnet
    Offline

    xaysnet Опытный в 1С

    Регистрация:
    3 июн 2019
    Сообщения:
    130
    Симпатии:
    3
    Баллы:
    29
    Есть СхемаКомпоновкиДанных, мне нужно программно получить уже заполненные значения в ТабличныйДокумент. Перебрать СхемаКомпоновкиДанных не вариант, ибо займет большое количество времени (мне дали готовое СхемаКомпоновкиДанных) и его надо программно выполнить и получить значения.

    Вложения:

  2. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    1.281
    Симпатии:
    98
    Баллы:
    54
    А в чём вся суть задачи? Зачем вам СКД если вы можете так же взять запрос и получить значение.
  3. TopicStarter Overlay
    xaysnet
    Offline

    xaysnet Опытный в 1С

    Регистрация:
    3 июн 2019
    Сообщения:
    130
    Симпатии:
    3
    Баллы:
    29
    Если бы мог,я бы так сделал. Чтобы разобраться в этой СКД где откуда, что да как берется.. надо потратит кучу времени, при этом их 3 штуки (разных). Легче уже выполнить их и получить результат, который мне нужен.
  4. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    1.281
    Симпатии:
    98
    Баллы:
    54
    Ну если вы знаете что легче, то тогда да.
  5. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    8.080
    Симпатии:
    543
    Баллы:
    204
    Код:
        // Получение готовой схемы компоновки данных
        СхемаКомпоновкиДанных = ЭтотОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
        // Установка настроек схемы компоновки данных
        Настройки = КомпоновщикНастроек.Настройки;
        // В этот объект помещается информация о расщифровке данных
        ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
        // Формирование макета компоновки данных с помощью компоновщика макета
        КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
        // В макет компоновки передаются СхемаКомпоновкиДанных, ее Настройки и ДанныеРасшифровки для заполнения информации о расшифровке
        МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);
        // Выполнение компоновки данных с помощью процессора компоновки
        ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
        ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки);
       
        Результат = Новый ТаблицаЗначений;
        // Вывод результат компоновки в табличный документ
        ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
        ПроцессорВывода.УстановитьДокумент(Результат);
        ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
    xaysnet нравится это.
  6. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    1.281
    Симпатии:
    98
    Баллы:
    54
    Тут только вопрос возникает , какая структура СКД? ТЗ будет или дерево. И если дерево то с ним тоже надо разбираться как обходить.
  7. TopicStarter Overlay
    xaysnet
    Offline

    xaysnet Опытный в 1С

    Регистрация:
    3 июн 2019
    Сообщения:
    130
    Симпатии:
    3
    Баллы:
    29
    ТЗ
  8. TopicStarter Overlay
    xaysnet
    Offline

    xaysnet Опытный в 1С

    Регистрация:
    3 июн 2019
    Сообщения:
    130
    Симпатии:
    3
    Баллы:
    29
    Спс попробую.
    Один вопрос, откуда брать "Настройки = КомпоновщикНастроек.Настройки" настройки. я беру макет с другого отчета.
    Я получаю СКД так "СхемаКомпоновкиДанных =Отчеты.ОборотноСальдоваяВедомость.ПолучитьМакет("СхемаКомпоновкиДанных");"
    Последнее редактирование: 2 дек 2019