Как Наиболее Просто Реализовать Простой Отчет С Возможностью Настройки

  • Автор темы Истребитель
  • Дата начала
И

Истребитель

Дорбый день!

Всегда делал отчеты "вручную" - т.е. писал макет, делал форму с полями и табличным документом, и по кнопке выводил в этот документ области макета. Однако в таком случае пользователь может только пользоваться полями, которые я ему предостоавил.

Встала задача сделать отчет, где у пользователя будут все возможности менять группировки, поля, отборы, как ему вздумается. Т.е. как скажем в универсальных отчетах.

Однако! Запрос этот не имеет аггрегируемых данных, т.е. выводит исключительно самостоятельные данные. Группировка в этом случае имеет смысл не "по всем полям, не попавшим в группировку, сделать аггрегацию" а "в макете добавить плюсик чтобы можно было скрыть все строки с таким значенем".

Например, я вывожу список заказов по контрагенту и договору, для каждого заказа вывожу количество позиций в нём и сумму заказа, и могу свернуть договор либо контрагента, чтобы заказы по этому договору/контрагенту не занимали место на экране.

При помощи универсального отчета (http://infostart.ru/public/62223/) такое сделать попросту не возможно, ибо если ему не дать ни одного аггрегируемого поля, он попросту не выводится, плюс он автоматически добавляет "сворачивалку" по каждому полю группировки, и к тому же все их выводит в столбец, что в результате выглядит просто абсурдно.

Итого, как мне лучше это сделать, если не через универсальный отчет. Попробовал через схему компоновки данных (http://v8.1c.ru/overview/dcs_sample_report.htm) однако в этом случае в форму отчета не понимаю как добавить параметр. Мне нужно, чтобы юзер не должен был заходить в форму настроек, а мог сразу в форме компоновки данных указать параметры отчета (дата начала, дата конца). Однако я не понимаю, как в коде присвоить значение в параметр - присванивание в СхемаКомпоновкиДанных.Параметры.ДатаКонца.Значение ничего не дает!

Спасибо!
 
U

unknown181538

Телепатирую, что у вас 8.2 обычное приложение. (давайте же включим этот пункт в правила).
Шаблон типового отчета не пробовали?
Еще вариант - писать отчет на основе УниверсальногоОтчета? Или вы это и имели в виду? Какая конфа?
Попробовал через схему компоновки данных (http://v8.1c.ru/overview/dcs_sample_report.htm) однако в этом случае в форму отчета не понимаю как добавить параметр. Мне нужно, чтобы юзер не должен был заходить в форму настроек, а мог сразу в форме компоновки данных указать параметры отчета (дата начала, дата конца). Однако я не понимаю, как в коде присвоить значение в параметр - присванивание в СхемаКомпоновкиДанных.Параметры.ДатаКонца.Значение ничего не дает!
Книги Хрусталевой нету?
 
A

Allexei

Может есть смысл взглянуть в сторону построителя отчетов? А вывод организовать с помощью СКД и набора данных "Объект"?
 
Д

Дайнеко

Построитель - технология устаревшая. Надо делать СКД. А что бы бедный пользователь не лазил в его "Настройку", надо на форме создать на Табличное поле и в качестве данных указать Компоновщик настроек. Таким образом можно настроить и условия отбора и список выводимых полей и прочее.

Мы такое сотворили - красота.
 
U

unknown181538

Построитель - технология устаревшая. Надо делать СКД. А что бы бедный пользователь не лазил в его "Настройку", надо на форме создать на Табличное поле и в качестве данных указать Компоновщик настроек. Таким образом можно настроить и условия отбора и список выводимых полей и прочее.

Мы такое сотворили - красота.
И все ж таки повторюсь.
Посмотрите на ИТС "Шаблон типового отчета".
 
D

Darlock

Рискну предположить, комрады... Проблема установки параметров в СКД не такая уж и сложная. Рекомендую заглянуть link removed. Установка параметров в СКД уже не раз обсуждалась на данном форуме. СКД - сложнейший механизм, в котором обычным "=" не обойдешься, необходимо конкретное позиционирование на конкретном элементе определенной коллекции. В СКД для установки параметра, необходимо его НАЙТИ сначала, а как будете искать, это уже по вашей религии. Если по ссылке перейдете, то там отчет в котором именно программная установка параметров запроса, отборов и прочая ерунда.
 
И

Истребитель

Извините, что плохо сформировал вопрос, я сам не до конца понимал, что нужно и насколько это возможно.
Изучил СКД и понял что это то, что нужно.

Спасибо всем советовавшим!
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!