1С:Предприятие
:: 1С:Предприятие 8 общая
|
|
| ||
Cyrix 15.10.20 - 11:29 | Здравствуйте! Создаю свою ТЗ и передаю её в СКД
В запросе есть условие, выводить документы с такой-то даты по такую-то Каким образом на СКД можно задать этот период? Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ДокументРезультат.Очистить(); СхемаКомпоновкиДанных = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЗаказПокупателя.Ссылка КАК Заказ |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя |ГДЕ | ЗаказПокупателя.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания"; Запрос.УстановитьПараметр("ДатаНачала",'20201004'); Запрос.УстановитьПараметр("ДатаОкончания",ТекущаяДата()); ТЗ = Запрос.Выполнить().Выгрузить(); ВнешнийНаборДанных = Новый Структура("ТЗ", ТЗ); Настройки = КомпоновщикНастроек.ПолучитьНастройки(); ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешнийНаборДанных, ДанныеРасшифровки); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); КонецПроцедуры | ||
ДенисЧ 1 - 15.10.20 - 11:43 | Так ты уже выбрал документы за период. Зачем тебе второй раз его задавать? | ||
Cyrix 2 - 15.10.20 - 11:52 | Потому что оператор, работая с отчётом, будет задавать разный период | ||
Cyrix 3 - 15.10.20 - 11:56 | Запрос.УстановитьПараметр("ДатаНачала",'20201004');
Запрос.УстановитьПараметр("ДатаОкончания",ТекущаяДата());
как из пользовательского интерфейса СКД изменить "ДатаНачала" и "ДатаОкончания"? Что прописать на вкладке "Параметры" СКД и что добавить в свойствах отчёта, чтобы у пользователя появились эти поля для выбора? | ||
SleepyHead 4 - 15.10.20 - 12:46 | Добавь в параметры сам поле Период, тип - стандартный период. В своем варианте отчета разреши его видеть пользователю.
В коде ПриКомпоновке добавь такой код НастройкиСКД = КомпоновщикНастроек.ПолучитьНастройки(); П = НастройкиСКД.ПараметрыДанных.Элементы.Найти("Период"); Если П<>Неопределено И П.Использование Тогда Дата1 = НачалоДня(П.ДатаНачала); Дата2 = КонецДня(П.ДатаОкончания); Иначе // если ты попал сюда, значит, не включил параметр в доступные для настройки варианта отчета. Дата1 = '00010101'; Дата2 = Дата1 КонецЕсли; Запрос.Установитьпараметр("ДатаНачала", Дата1); .. и так далее | ||
Cyrix 5 - 15.10.20 - 13:28 | Спасибо за ответ! Подскажите ещё
"ВЫБРАТЬ
| ЗаказПокупателя.Ссылка КАК Заказ,
| ЗаказПокупателя.Запасы.(
| Номенклатура КАК Номенклатура,
| КоличествоСобрано КАК КоличествоСобрано,
| Количество КАК Количество
|) КАК Запасы
|ИЗ
| Документ.ЗаказПокупателя КАК ЗаказПокупателя
|ГДЕ
| ЗаказПокупателя.Дата МЕЖДУ &ДатаНач И &ДатаОкончания";
Как в СКД добавить таблицу "Запасы" с её полями Номенклатура, КоличествоСобрано и Количество ? | ||
Cyrix 6 - 15.10.20 - 16:11 | добавил |
|
Список тем форума |