![]() |
![]() |
![]() |
|
Не полная инициализация "МакетаКомпановкиДанных" | ☑ | ||
---|---|---|---|---|
0
Alex_MA
15.02.12
✎
14:20
|
Всем доброго дня!
Есть конструкция: КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,Компоновщик.Настройки,,,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); возвращает пустой набор данных: http://gyazo.com/864c7f38151e5271d69fe6e215b6c273 Я ожидал, что он мне вернет набор данных, в котором есть запрос с параметрами. (Т.е. в Компоновщик.Настройки есть определенные отборы) Что я сделал не так ? Уже не знаю куда копать. |
|||
1
Alex_MA
15.02.12
✎
14:24
|
Сначала формирую схему компоновки данных.
СхемаКомпановкиДанных = Новый СхемаКомпоновкиДанных(); ИсточникДанных = СхемаКомпановкиДанных.ИсточникиДанных.Добавить(); ИсточникДанных.Имя = "ИсточникДанных"; ИсточникДанных.ТипИсточникаДанных = "Local"; НаборДанныхЗапрос = СхемаКомпановкиДанных.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных")); НаборДанныхЗапрос.Имя = "ДанныеДляОтчета"; НаборДанныхЗапрос.ИсточникДанных = "ИсточникДанных"; СхемаКомпановкиДанных.НаборыДанных.ДанныеДляОтчета.АвтоЗаполнениеДоступныхПолей = Истина; Если СтруктураНастроек.КомпановкаОтчета.Свойство("ПолныеДанные") Тогда НаборДанныхЗапрос.Запрос = "ВЫБРАТЬ | НАЧАЛОПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ) КАК ДатаПонедельник, | ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ), ДЕНЬ, 1) КАК ДатаВторник, | ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ), ДЕНЬ, 2) КАК ДатаСреда, | ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ), ДЕНЬ, 3) КАК ДатаЧетверг, | ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ), ДЕНЬ, 4) КАК ДатаПятница, | СУММА(ВЫБОР | КОГДА vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ПонедельникВремя <> """" | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ) КАК ПонедельникКоличество, | СУММА(ВЫБОР | КОГДА vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ВторникВремя <> """" | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ) КАК ВторникКоличество, | СУММА(ВЫБОР | КОГДА vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.СредаВремя <> """" | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ) КАК СредаКоличество, | СУММА(ВЫБОР | КОГДА vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ЧетвергВремя <> """" | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ) КАК ЧетвергКоличество, | СУММА(ВЫБОР | КОГДА vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ПятницаВремя <> """" | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ) КАК ПятницаКоличество, | СУММА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ПонедельникМощность) КАК ПонедельникМощность, | СУММА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ВторникМощность) КАК ВторникМощность, | СУММА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.СредаМощность) КАК СредаМощность, | СУММА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ЧетвергМощность) КАК ЧетвергМощность, | СУММА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ПятницаМощность) КАК ПятницаМощность, | СУММА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ПонедельникМощность + vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ВторникМощность + vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.СредаМощность + vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ЧетвергМощность + vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ПятницаМощность) КАК ОбщаяМощностьОграничения, | СУММА(ВЫБОР | КОГДА vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ПонедельникВремя <> """" | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ + ВЫБОР | КОГДА vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ВторникВремя <> """" | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ + ВЫБОР | КОГДА vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.СредаВремя <> """" | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ + ВЫБОР | КОГДА vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ЧетвергВремя <> """" | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ + ВЫБОР | КОГДА vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ПятницаВремя <> """" | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ) КАК ОбщееКоличествоОграничений, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ГруппаПотребителей, | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ДоговорКонтрагента.Владелец) КАК ОбщееКоличествоКонтрагентов, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Организация, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ДоговорКонтрагента, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ВидОграничения, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ТочкаПоставки, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.СетеваяОрганизация, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Неделя |ИЗ | РегистрСведений.vscГрафикиПланФактныхОтключенийПотребителей.СрезПоследних(&Дата, ) КАК vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних |ГДЕ | КОНЕЦПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ) = КОНЕЦПЕРИОДА(&Дата, НЕДЕЛЯ) | |СГРУППИРОВАТЬ ПО | НАЧАЛОПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ), | ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ), ДЕНЬ, 1), | ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ), ДЕНЬ, 2), | ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ), ДЕНЬ, 3), | ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Период, НЕДЕЛЯ), ДЕНЬ, 4), | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ГруппаПотребителей, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Организация, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ДоговорКонтрагента, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ВидОграничения, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.ТочкаПоставки, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.СетеваяОрганизация, | vscГрафикиПланФактныхОтключенийПотребителейСрезПоследних.Неделя"; затем // Подготовка компоновщика макета компоновки данных. Компоновщик = Новый КомпоновщикНастроекКомпоновкиДанных; Компоновщик.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); Компоновщик.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию); Компоновщик.Настройки.Отбор.Элементы.Очистить(); // Отбор компоновщика настроек. Если СтруктураНастроек.КомпоновщикНастроек <> Неопределено Тогда vscФункцииОтчетовКлиентСервер.СкопироватьЭлементы(Компоновщик.Настройки.Отбор, СтруктураНастроек.КомпоновщикНастроек.Настройки.Отбор); КонецЕсли; // Выбранные поля компоновщика настроек. Для Каждого ОбязательноеПоле Из СтруктураНастроек.ОбязательныеПоля Цикл ПолеСКД = НайтиПолеСКДПоПолномуИмени(Компоновщик.Настройки.Выбор.ДоступныеПоляВыбора.Элементы, ОбязательноеПоле); Если ПолеСКД <> Неопределено Тогда ВыбранноеПоле = Компоновщик.Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных")); ВыбранноеПоле.Поле = ПолеСКД.Поле; КонецЕсли; КонецЦикла; // Заполнение параметров. УстановитьЗначениеПараметраСКД(Компоновщик, "Дата", СтруктураНастроек.ПараметрыДанных.Дата); // Компоновка макета компоновки данных. КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Компоновщик.Настройки,,,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); |
|||
2
Alex_MA
15.02.12
✎
16:02
|
апну
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |