Проект

Общее

Профиль

Программирование на 1С8 » История » Версия 1

Версия 1/3 - Следующее » - Текущая версия
Всеволод Дорофеев, 31.01.2017 18:12


Программирование на 1С8

Система компоновки данных (СКД)

Программное выполнение СКД с выводом в таблицу значений

&НаСервере
Процедура ПеренестиНоменклатуруСервере()
    ОбъектНаСервере = РеквизитФормыВЗначение("Объект");
    СхемаНоменклатуры = ОбъектНаСервере.ПолучитьМакет("СКД");          

     ПараметрДанных = КомпоновщикНаФорме.Настройки.ПараметрыДанных.Элементы.Найти("ГруппаНоменклатуры");
    ПараметрДанных.Использование = Истина;
    ПараметрДанных.Значение  = Объект.ПапкаАрхив;  

    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаНоменклатуры, КомпоновщикНаФорме.ПолучитьНастройки(),,,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));

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

    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;

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

    Для каждого СтрокаТЗ из ТЗНоменклатура Цикл
        ОбработкаОбъект.ПеренестиНоменклатурнуюПозициюВПапкуНаСервере(СтрокаТЗ);
    КонецЦикла;

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