![]() |
![]() |
![]() |
|
СКД: Как использовать результат запроса СКД который воводится в таб. поле отчета? | ☑ | ||
---|---|---|---|---|
0
Trance_1C
08.09.09
✎
11:15
|
В УПП есть отчет на СКД, Ведомость по партиям. (не типовой) работает на регистре Партии товаров на складах. Работает вообщем как обычная ведомость, хочу встроить в него обработку документов с целью восстановления последовательности.
Нужно получить результат запроса СКД, тоже что получает юзверь у себя в таблицу на форму, только для последующей обработки. В отчете, в модулях формы и объекта чисто. |
|||
1
Trance_1C
08.09.09
✎
11:16
|
жду помощи, пока пойду пороюсь в демо конфигурации СКД
|
|||
2
IronDemon
08.09.09
✎
11:21
|
ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений.Вывести (DataCompositionResultValueCollectionOutputProcessor.Output)
ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений (DataCompositionResultValueCollectionOutputProcessor) Вывести (Output) Синтаксис: Вывести(<Процессор компоновки>, <Возможность прерывания пользователем>) Параметры: <Процессор компоновки> (обязательный) Тип: ПроцессорКомпоновкиДанных. Процессор компоновки данных, из которого будут получаться элементы результата. <Возможность прерывания пользователем> (необязательный) Тип: Булево. Указывает, может ли пользователь прервать вывод при помощи комбинации клавиш Ctrl+Break. Значение по умолчанию: Ложь Возвращаемое значение: Тип: ТаблицаЗначений; ДеревоЗначений. Описание: Выводит весь результат в объект. При этом автоматически исполняется метод НачатьВывод, перебираются все элементы процессора компоновки и выводятся в результат. После чего исполняется метод ЗакончитьВывод, результат которого возвращается данным методом. |
|||
3
Trance_1C
08.09.09
✎
11:37
|
(2) Спасибо :)
|
|||
4
Trance_1C
08.09.09
✎
15:08
|
{Форма.ФормаОтчета(29)}: Ошибка при вызове метода контекста (Вывести): Ошибка вывода результата
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных,Истина); по причине: Ошибка вывода результата по причине: Неизвестный тип макета |
|||
5
Trance_1C
08.09.09
✎
15:09
|
Ошибка возникает в этой процедуре, может что не так делаю?
Процедура ДействияФормыВыполнитьВосстановление(Кнопка) Настройки = КомпоновщикНастроек.Настройки; ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СКД, Настройки, ДанныеРасшифровки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,, ДанныеРасшифровки); ЭлементыФормы.Результат.Очистить(); ДокументРезультат = Новый ТаблицаЗначений; //ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений; ПроцессорВывода.УстановитьОбъект(ДокументРезультат); // вот здесь: ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных,Истина); КонецПроцедуры |
|||
6
Trance_1C
08.09.09
✎
15:11
|
Это модуль формы внешнего отчета,
СКД = ЭтотОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); |
|||
7
Trance_1C
09.09.09
✎
03:40
|
А вот так все получилось.
Процедура ДействияФормыВыполнитьВосстановление(Кнопка) Настройки = КомпоновщикНастроек.Настройки; ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СКД, Настройки,,,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки); //ЭлементыФормы.Результат.Очистить(); ДокументРезультат = Новый ТаблицаЗначений; //ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений; ПроцессорВывода.УстановитьОбъект(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных,Истина); КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |