burza @ Вчера, 21:48
необходимо зарегистрироваться для просмотра ссылки
,
почитайте за отчеты на основе универсального и с чем их едят. Вы пробовали отчет с таким запросом запускать? у вас потом ни вложенных полей, ни свойств, ни категорий видно не будет.
Запрос должен быть таким:
Процедура УстановитьНачальныеНастройки(ДополнительныеПараметры = Неопределено) Экспорт
// Настройка общих параметров универсального отчета
// Содержит название отчета, которое будет выводиться в шапке.
// Тип: Строка.
// Пример:
// УниверсальныйОтчет.мНазваниеОтчета = "Название отчета";
УниверсальныйОтчет.мНазваниеОтчета = СокрЛП(ЭтотОбъект.Метаданные().Синоним);
// Содержит признак необходимости отображения надписи и поля выбора раздела учета в форме настройки.
// Тип: Булево.
// Значение по умолчанию: Истина.
// Пример:
// УниверсальныйОтчет.мВыбиратьИмяРегистра = Ложь;
УниверсальныйОтчет.мВыбиратьИмяРегистра = Ложь;
// Содержит имя регистра, по метаданным которого будет выполняться заполнение настроек отчета.
// Тип: Строка.
// Пример:
// УниверсальныйОтчет.ИмяРегистра = "ТоварыНаСкладах";
//УниверсальныйОтчет.ИмяРегистра = "ДенежныеСредства";
// Содержит признак необходимости вывода отрицательных значений показателей красным цветом.
// Тип: Булево.
// Значение по умолчанию: Ложь.
// Пример:
// УниверсальныйОтчет.ОтрицательноеКрасным = Истина;
// Содержит признак необходимости вывода в отчет общих итогов.
// Тип: Булево.
// Значение по умолчанию: Истина.
// Пример:
// УниверсальныйОтчет.ВыводитьОбщиеИтоги = Ложь;
// Содержит признак необходимости вывода детальных записей в отчет.
// Тип: Булево.
// Значение по умолчанию: Ложь.
// Пример:
// УниверсальныйОтчет.ВыводитьДетальныеЗаписи = Истина;
// Содержит признак необходимости отображения флага использования свойств и категорий в форме настройки.
// Тип: Булево.
// Значение по умолчанию: Истина.
// Пример:
// УниверсальныйОтчет.мВыбиратьИспользованиеСвойств = Ложь;
УниверсальныйОтчет.мВыбиратьИспользованиеСвойств = Истина;
// Содержит признак использования свойств и категорий при заполнении настроек отчета.
// Тип: Булево.
// Значение по умолчанию: Ложь.
// Пример:
// УниверсальныйОтчет.ИспользоватьСвойстваИКатегории = Истина;
// Содержит признак использования простой формы настроек отчета без группировок колонок.
// Тип: Булево.
// Значение по умолчанию: Ложь.
// Пример:
// УниверсальныйОтчет.мРежимФормыНастройкиБезГруппировокКолонок = Истина;
// Дополнительные параметры, переданные из отчета, вызвавшего расшифровку.
// Информация, передаваемая в переменной ДополнительныеПараметры, может быть использована
// для реализации специфичных для данного отчета параметрических настроек.
УниверсальныйОтчет.ПостроительОтчета.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ДенежныеСредстваОстаткиИОбороты.Регистратор КАК Регистратор,
| ДенежныеСредстваОстаткиИОбороты.ПериодДень КАК ПериодДень,
| ДенежныеСредстваОстаткиИОбороты.ПериодНеделя КАК ПериодНеделя,
| ДенежныеСредстваОстаткиИОбороты.ПериодДекада КАК ПериодДекада,
| ДенежныеСредстваОстаткиИОбороты.ПериодМесяц КАК ПериодМесяц,
| ДенежныеСредстваОстаткиИОбороты.ПериодКвартал КАК ПериодКвартал,
| ДенежныеСредстваОстаткиИОбороты.ПериодПолугодие КАК ПериодПолугодие,
| ДенежныеСредстваОстаткиИОбороты.ПериодГод КАК ПериодГод,
| ДенежныеСредстваОстаткиИОбороты.ВидДенежныхСредств КАК ВидДенежныхСредств,
| ДенежныеСредстваОстаткиИОбороты.БанковскийСчетКасса КАК БанковскийСчетКасса,
| ДенежныеСредстваОстаткиИОбороты.Организация КАК Организация,
| ДенежныеСредстваОстаткиИОбороты.СуммаНачальныйОстаток КАК СуммаНачальныйОстаток,
| ДенежныеСредстваОстаткиИОбороты.СуммаКонечныйОстаток КАК СуммаКонечныйОстаток,
| ДенежныеСредстваОстаткиИОбороты.СуммаОборот КАК СуммаОборот,
| ДенежныеСредстваОстаткиИОбороты.СуммаПриход КАК СуммаПриход,
| ДенежныеСредстваОстаткиИОбороты.СуммаРасход КАК СуммаРасход,
| ДенежныеСредстваОстаткиИОбороты.СуммаУпрНачальныйОстаток КАК СуммаУпрНачальныйОстаток,
| ДенежныеСредстваОстаткиИОбороты.СуммаУпрКонечныйОстаток КАК СуммаУпрКонечныйОстаток,
| ДенежныеСредстваОстаткиИОбороты.СуммаУпрПриход КАК СуммаУпрПриход,
| ДенежныеСредстваОстаткиИОбороты.СуммаУпрОборот КАК СуммаУпрОборот,
| ДенежныеСредстваОстаткиИОбороты.СуммаУпрРасход КАК СуммаУпрРасход
| //ПОЛЯ_СВОЙСТВА
| //ПОЛЯ_КАТЕГОРИИ
|{ВЫБРАТЬ
| Регистратор.*,
| ПериодДень,
| ПериодНеделя,
| ПериодДекада,
| ПериодМесяц,
| ПериодКвартал,
| ПериодПолугодие,
| ПериодГод,
| ВидДенежныхСредств.*,
| БанковскийСчетКасса.*,
| Организация.*,
| СуммаНачальныйОстаток,
| СуммаКонечныйОстаток,
| СуммаОборот,
| СуммаПриход,
| СуммаРасход,
| СуммаУпрНачальныйОстаток,
| СуммаУпрКонечныйОстаток,
| СуммаУпрПриход,
| СуммаУпрОборот,
| СуммаУпрРасход
| //ПСЕВДОНИМЫ_СВОЙСТВА
| //ПСЕВДОНИМЫ_КАТЕГОРИИ
|}
|ИЗ
| РегистрНакопления.ДенежныеСредства.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Авто, ,{ВидДенежныхСредств.* КАК ВидДенежныхСредств, БанковскийСчетКасса.* КАК БанковскийСчетКасса, Организация.* КАК Организация} ) КАК ДенежныеСредстваОстаткиИОбороты
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ОтветственныеЛица.СрезПоследних(&ДатаКон, ) КАК ОтветственныеЛица
| ПО ОтветственныеЛица.СтруктурнаяЕдиница = ДенежныеСредстваОстаткиИОбороты.БанковскийСчетКасса
| //СОЕДИНЕНИЯ
|ГДЕ
| ОтветственныеЛица.ФизическоеЛицо = &ФизЛицо
|{ГДЕ
| ДенежныеСредстваОстаткиИОбороты.Регистратор.*,
| ДенежныеСредстваОстаткиИОбороты.ПериодДень,
| ДенежныеСредстваОстаткиИОбороты.ПериодНеделя,
| ДенежныеСредстваОстаткиИОбороты.ПериодДекада,
| ДенежныеСредстваОстаткиИОбороты.ПериодМесяц,
| ДенежныеСредстваОстаткиИОбороты.ПериодКвартал,
| ДенежныеСредстваОстаткиИОбороты.ПериодПолугодие,
| ДенежныеСредстваОстаткиИОбороты.ПериодГод,
| ДенежныеСредстваОстаткиИОбороты.ВидДенежныхСредств.*,
| ДенежныеСредстваОстаткиИОбороты.БанковскийСчетКасса.*,
| ДенежныеСредстваОстаткиИОбороты.Организация.*,
| ДенежныеСредстваОстаткиИОбороты.СуммаНачальныйОстаток,
| ДенежныеСредстваОстаткиИОбороты.СуммаКонечныйОстаток,
| ДенежныеСредстваОстаткиИОбороты.СуммаОборот,
| ДенежныеСредстваОстаткиИОбороты.СуммаПриход,
| ДенежныеСредстваОстаткиИОбороты.СуммаРасход,
| ДенежныеСредстваОстаткиИОбороты.СуммаУпрНачальныйОстаток,
| ДенежныеСредстваОстаткиИОбороты.СуммаУпрКонечныйОстаток,
| ДенежныеСредстваОстаткиИОбороты.СуммаУпрПриход,
| ДенежныеСредстваОстаткиИОбороты.СуммаУпрОборот,
| ДенежныеСредстваОстаткиИОбороты.СуммаУпрРасход
| //УСЛОВИЯ_СВОЙСТВА
| //УСЛОВИЯ_КАТЕГОРИИ
|}
|{УПОРЯДОЧИТЬ ПО
| Регистратор.*,
| ПериодДень,
| ПериодНеделя,
| ПериодДекада,
| ПериодМесяц,
| ПериодКвартал,
| ПериодПолугодие,
| ПериодГод,
| ВидДенежныхСредств.*,
| БанковскийСчетКасса.*,
| Организация.*,
| СуммаНачальныйОстаток,
| СуммаКонечныйОстаток,
| СуммаОборот,
| СуммаПриход,
| СуммаРасход,
| СуммаУпрНачальныйОстаток,
| СуммаУпрКонечныйОстаток,
| СуммаУпрПриход,
| СуммаУпрОборот,
| СуммаУпрРасход
| //ПСЕВДОНИМЫ_СВОЙСТВА
| //ПСЕВДОНИМЫ_КАТЕГОРИИ
|}
|ИТОГИ
| СУММА(СуммаНачальныйОстаток),
| СУММА(СуммаКонечныйОстаток),
| СУММА(СуммаОборот),
| СУММА(СуммаПриход),
| СУММА(СуммаРасход),
| СУММА(СуммаУпрНачальныйОстаток),
| СУММА(СуммаУпрКонечныйОстаток),
| СУММА(СуммаУпрПриход),
| СУММА(СуммаУпрОборот),
| СУММА(СуммаУпрРасход)
| //ИТОГИ_СВОЙСТВА
| //ИТОГИ_КАТЕГОРИИ
|ПО
| ОБЩИЕ
|{ИТОГИ ПО
| Регистратор.*,
| ПериодДень,
| ПериодНеделя,
| ПериодДекада,
| ПериодМесяц,
| ПериодКвартал,
| ПериодПолугодие,
| ПериодГод,
| ВидДенежныхСредств.*,
| БанковскийСчетКасса.*,
| Организация.*
| //ПСЕВДОНИМЫ_СВОЙСТВА
| //ПСЕВДОНИМЫ_КАТЕГОРИИ
|}
|";
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Регистратор", "Регистратор");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ПериодДень", "Период день");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ПериодНеделя", "Период неделя");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ПериодДекада", "Период декада");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ПериодМесяц", "Период месяц");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ПериодКвартал", "Период квартал");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ПериодПолугодие", "Период полугодие");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ПериодГод", "Период год");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ВидДенежныхСредств", "Вид денежных средств");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("БанковскийСчетКасса", "Банковский счет/касса");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Организация", "Организация");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаНачальныйОстаток", "Сумма начальный остаток");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаКонечныйОстаток", "Сумма конечный остаток");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаОборот", "Сумма оборот");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаПриход", "Сумма приход");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаРасход", "Сумма расход");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаУпрНачальныйОстаток", "Сумма упр начальный остаток");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаУпрКонечныйОстаток", "Сумма упр конечный остаток");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаУпрОборот", "Сумма упр оборот");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаУпрПриход", "Сумма упр приход");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаУпрРасход", "Сумма упр расход");
//УниверсальныйОтчет.ДобавитьПолеГруппировка("Организация", "БанковскийСчетКасса", "Владелец", "Организация");
УниверсальныйОтчет.ДобавитьПолеГруппировка("ВалютаДенежныхСредств", "БанковскийСчетКасса", "ВалютаДенежныхСредств", "Валюта счета (кассы)");
// Заполнение начальных настроек универсального отчета
//УниверсальныйОтчет.УстановитьНачальныеНастройки(Истина);
УниверсальныйОтчет.ДобавитьПоказатель("СуммаНачальныйОстаток", "Начальный остаток", Истина, "ЧЦ=15; ЧДЦ=2", "Сумма", "Сумма в валюте счета (кассы)");
УниверсальныйОтчет.ДобавитьПоказатель("СуммаПриход", "Приход", Истина, "ЧЦ=15; ЧДЦ=2", "Сумма", "Сумма в валюте счета (кассы)");
УниверсальныйОтчет.ДобавитьПоказатель("СуммаРасход", "Расход", Истина, "ЧЦ=15; ЧДЦ=2", "Сумма", "Сумма в валюте счета (кассы)");
УниверсальныйОтчет.ДобавитьПоказатель("СуммаКонечныйОстаток", "Конечный остаток", Истина, "ЧЦ=15; ЧДЦ=2", "Сумма", "Сумма в валюте счета (кассы)");
УниверсальныйОтчет.ДобавитьПоказатель("СуммаОборот", "Оборот", Ложь, "ЧЦ=15; ЧДЦ=2", "Сумма", "Сумма в валюте счета (кассы)");
ВалютаУпр = глЗначениеПеременной("ВалютаУправленческогоУчета");
УниверсальныйОтчет.ДобавитьПоказатель("СуммаУпрНачальныйОстаток", "Начальный остаток", Истина, "ЧЦ=15; ЧДЦ=2", "СуммаУпр", "Сумма в (" + ВалютаУпр + ")");
УниверсальныйОтчет.ДобавитьПоказатель("СуммаУпрПриход", "Приход", Истина, "ЧЦ=15; ЧДЦ=2", "СуммаУпр", "Сумма в (" + ВалютаУпр + ")");
УниверсальныйОтчет.ДобавитьПоказатель("СуммаУпрРасход", "Расход", Истина, "ЧЦ=15; ЧДЦ=2", "СуммаУпр", "Сумма в (" + ВалютаУпр + ")");
УниверсальныйОтчет.ДобавитьПоказатель("СуммаУпрКонечныйОстаток", "Конечный остаток", Истина, "ЧЦ=15; ЧДЦ=2", "СуммаУпр", "Сумма в (" + ВалютаУпр + ")");
УниверсальныйОтчет.ДобавитьПоказатель("СуммаУпрОборот", "Оборот", Ложь, "ЧЦ=15; ЧДЦ=2", "СуммаУпр", "Сумма в (" + ВалютаУпр + ")");
// Добавление предопределенных группировок строк отчета.
// Необходимо вызывать для каждой добавляемой группировки строки.
// УниверсальныйОтчет.ДобавитьИзмерениеСтроки(<ПутьКДанным>);
УниверсальныйОтчет.ДобавитьИзмерениеСтроки("БанковскийСчетКасса");
// Добавление предопределенных группировок колонок отчета.
// Необходимо вызывать для каждой добавляемой группировки колонки.
// УниверсальныйОтчет.ДобавитьИзмерениеКолонки(<ПутьКДанным>);
// Добавление предопределенных отборов отчета.
// Необходимо вызывать для каждого добавляемого отбора.
// УниверсальныйОтчет.ДобавитьОтбор(<ПутьКДанным>);
УниверсальныйОтчет.ДобавитьОтбор("БанковскийСчетКасса");
УниверсальныйОтчет.ДобавитьОтбор("ВидДенежныхСредств");
УниверсальныйОтчет.ДобавитьОтбор("ВалютаДенежныхСредств");
УниверсальныйОтчет.ДобавитьОтбор("Организация");
// Добавление предопределенных полей порядка отчета.
// Необходимо вызывать для каждого добавляемого поля порядка.
// УниверсальныйОтчет.ДобавитьПорядок(<ПутьКДанным>);
// Установка связи подчиненных и родительских полей
// УниверсальныйОтчет.УстановитьСвязьПолей(<ПутьКДанным>, <ПутьКДаннымРодитель>);
// Установка связи полей и измерений
// УниверсальныйОтчет.УстановитьСвязьПоляИИзмерения(<ИмяПоля>, <ИмяИзмерения>);
// Установка представлений полей
УниверсальныйОтчет.УстановитьПредставленияПолей(УниверсальныйОтчет.мСтруктураПредставлениеПолей, УниверсальныйОтчет.ПостроительОтчета);
// Заполнение начальных настроек универсального отчета
УниверсальныйОтчет.УстановитьНачальныеНастройки(Ложь);
// Добавление дополнительных полей
// Необходимо вызывать для каждого добавляемого дополнительного поля.
// УниверсальныйОтчет.ДобавитьДополнительноеПоле(<ПутьКДанным>, <Размещение>, <Положение>);
УниверсальныйОтчет.ДобавитьДополнительноеПоле("ВалютаДенежныхСредств");
УниверсальныйОтчет.ДобавитьДополнительноеПоле("ВидДенежныхСредств");
КонецПроцедуры // УстановитьНачальныеНастройки()
и передать параметр физ лица при формировании
Процедура СформироватьОтчет(ТабличныйДокумент) Экспорт
// Перед формирование отчета можно установить необходимые параметры универсального отчета.
ТекПользователь = глЗначениеПеременной("глТекущийПользователь");
ФизЛицоСсылка = ?(ЗначениеЗаполнено(ТекПользователь), ТекПользователь.ФизЛицо, Справочники.ФизическиеЛица.ПустаяСсылка());
УниверсальныйОтчет.ПостроительОтчета.Параметры.Вставить("ФизЛицо", ФизЛицоСсылка);
УниверсальныйОтчет.СформироватьОтчет(ТабличныйДокумент);
КонецПроцедуры // СформироватьОтчет()