|
1С 8.2 УТ 10.3 СКД Программное формирование отчета с внешними данными | ☑ | ||
---|---|---|---|---|
0
ils108
24.01.17
✎
12:00
|
Всем добра! Формирую отчет, чтобы отправлять результаты по почте.
Сначала запросом выгружаю нужные данные за месяц, потом мне надо сформировать 3 варианта (день, неделя, месяц), а я в итоге получаю только общий результат. Подскажите как правильно передать параметры? я уже пытаюсь воткнуть всё что можно. привожу кусок кода Если НачалоДня(ТекущаяДата()) = НачалоМесяца(ТекущаяДата()) Тогда СхемаКомпоновкиДанных.Параметры.НачалоПериода.Значение = НачалоДня(ДобавитьМесяц(ТекущаяДата(), -1)); СхемаКомпоновкиДанных.Параметры.КонецПериода.Значение = КонецМесяца(ДобавитьМесяц(ТекущаяДата(), -1)); пНастройки.ПараметрыДанных.Элементы[0].Значение = НачалоДня(ДобавитьМесяц(ТекущаяДата(), -1)); пНастройки.ПараметрыДанных.Элементы[1].Значение = КонецМесяца(ДобавитьМесяц(ТекущаяДата(), -1)); Иначе СхемаКомпоновкиДанных.Параметры.НачалоПериода.Значение = НачалоМесяца(ТекущаяДата()); СхемаКомпоновкиДанных.Параметры.КонецПериода.Значение = НачалоДня(ТекущаяДата()); пНастройки.ПараметрыДанных.Элементы[0].Значение = НачалоМесяца(ТекущаяДата()); пНастройки.ПараметрыДанных.Элементы[1].Значение = НачалоДня(ТекущаяДата()); КонецЕсли; // СхемаКомпоновкиДанных.Параметры.НачалоПериода.ОграничениеИспользования = Истина; Таб2 = СкомпоноватьМакетВТабДок(СхемаКомпоновкиДанных, пНастройки, ВнешниеДанные); Функция СкомпоноватьМакетВТабДок (СхемаКомпоновкиДанных, Настройки, ВнешниеПараметры = Неопределено) Таб = Новый ТабличныйДокумент; //Помещаем в переменную данные о расшифровке данных Расшифровка = Новый ДанныеРасшифровкиКомпоновкиДанных; //Формируем макет, с помощью компоновщика макета КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; //Передаем в макет компоновки схему, настройки и данные расшифровки МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, Расшифровка); Если ВнешниеПараметры = Неопределено Тогда ВнешниеПараметры = Новый Структура; КонецЕсли; //Выполним компоновку с помощью процессора компоновки ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешниеПараметры, Расшифровка); //Выводим результат в табличный документ ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(Таб); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина); Возврат Таб; КонецФункции |
|||
1
aleks_default
24.01.17
✎
12:20
|
Чтобы убедится что заполняешь именно тот параметр
ПараметрНачалоПериода = пНастройки.ПараметрыДанных.Элементы.Найти("НачалоПериода"); ПараметрНачалоПериода.Использование = Истина; ПараметрНачалоПериода.Значение = НачалоДня(ДобавитьМесяц(ТекущаяДата(), -1)); |
|||
2
aleks_default
24.01.17
✎
12:20
|
пНастройки как получаешь?
|
|||
3
ils108
24.01.17
✎
12:24
|
(2)
пВарианты = СхемаКомпоновкиДанных.ВариантыНастроек; Для Каждого пЭл ИЗ пВарианты Цикл СтруктураВариантов.Вставить(пЭл.Имя,пЭл.Настройки); КонецЦикла; пНастройки = СтруктураВариантов.ОтчетПоЗвонкам; |
|||
4
ils108
24.01.17
✎
12:47
|
(1) убедился, результат тотже
|
|||
5
ils108
24.01.17
✎
13:30
|
Решение использовал альтернативное.
Фильтровать ТЗ по дате перебором для каждого варианта. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |