Подсистема "Варианты отчетов". Используете ли Вы ее правильно?

04.06.19

Разработка - Работа с интерфейсом

Небольшая история про использование подсистемы "Варианты отчетов" из БСП. Используете ли Вы ее правильно?

О чем речь

Любите делать отчеты для типовых конфигураций? Вы мастер СКД и отчет с вложенными схемами компоновки и собственным макетом для Вас тоже обычное дело? А может быть программное формирование схемы компоновки для Вас тоже норма? Или Вы новичок и только начинаете постигать сакральные знания СКД? Не важно!

Сегодня мы будем говорить о другом. О подсистеме "Варианты отчетов" из БСП, которую можно встретить практически во всех типовых конфигурациях. Вероятно, многие зададутся вопросом: "О чем тут вообще можно говорить?". Что ж, постараюсь Вас удивить!

Как она устроена

От одной версии БСП к другой, подсистема "Варианты отчетов" становилась все функциональней и интересней. Почти все мы ее используем в своих отчетах и можем даже об этом не подозревать. Сегодня мы поговорим о некоторых нюансах ее работы на примере версии БСП 3.0. Информация в большей части справедлива и для других версия библиотеки.

Прежде чем перейти к особенностям, дадим краткое описание принципа работы подсистемы. В составе метаданных она содержит не мало объектов для реализации всего функционала. Те, что нас интересуют, это:

  • Общая форма "Форма отчета".
  • Справочник "Варианты отчетов".
  • Хранилище настроек "Хранилище вариантов отчетов".
  • Общие модули с именем "ВариантыОтчетов*" и "Отчеты*".
  • И некоторые настройки корня конфигурации.

Весь смысл подсистемы сводится к тому, что все варианты отчетов, адаптированных для использования в БСП, сохраняются в справочнике "Варианты отчетов" через переопределение основных событий хранилища "Хранилище вариантов отчетов":

  • Автор
  • Тип отчета
  • Пользовательские настройки
  • Ключ
  • Представление варианта
  • Различные настройки видимости
  • Описание
  • И многое другое.

Все еще непонятно? Сделаем небольшой пример, но отчет будет внешним! Вы когда-нибудь разрабатывали отчеты для ERP? Так вот, на ней и продемонстрируем как подсистема работает. Отчет будет отображать количество элементов номенклатуры в разрезе видов номенклатуры. Обязательно добавим в модуль объекта функции описания внешних отчетов и обработок для БСП, а также программное формирование отчета.

 
 Что там внутри у отчета

Чтобы подсистема "Варианты отчетов" была задействована для нашего продвинутого отчета, прикрепим его в справочник "Дополнительные отчеты и обработки". Не зря же мы делали описание внешнего отчета в модуле объекта.

 
 Прикрепляем отчет в дополнительные отчеты и обработки

Под спойлером выше были показаны два варианта отчета, которые БСП сформировала автоматически. Они были получены из настроек вариантов схемы компоновки. В системе они сохраняются в виде элементов справочника "Варианты отчетов", в том самом справочнике, о котором мы уже говорили.

В корне конфигурации ERP (как минимум с версии 2.2) для свойства "Хранилище вариантов отчетов" установлен объект метаданных "ХранилищаВариантов.ХранилищеВариантовОтчетов". То есть, стандартное хранилище для сохранения настроек отчетов не используется. При этом в стандартных событиях этого хранилища переопределены события загрузки и сохранения настроек, в которых алгоритмы используют уже справочник "Варианты отчетов". Таким образом, подсистема перевела весь функционал по работе с вариантами отчетов на собственный справочник.

При этом, если варианты предопределены в схеме компоновки, то сами настройки в справочнике не сохраняются. Это и понятно - зачем их сохранять, если они есть в самой компоновке данных. Однако, если пользователь сохранит свой вариант, то настройки компоновки будут записаны в реквизит "Настройки" этого справочника (в виде хранилища значений).

Еще одной важной частью подсистемы является общая форма "ФормаОтчета", которая предоставляет расширенный функционал работы с отчетами. Если в объекте отчета (внешнем или встроенном в конфигурацию) нет явно заданной формы, то будет использоваться именно она. Достигается это за счет установки основных форм в корне конфигурации.

Кроме основной формы отчета, подсистема также содержит формы для настроек и выбора варианта, но в нашем случае эту часть подсистемы мы не будем рассматривать. Вот так выглядит форма отчета из подсистемы БСП.

И, кстати, Вы заметили, что мы переопределили событие "ПриКомпоновкеДанных" отчета и сделали полностью программное формирование. При этом отчет также формируется в фоновом режиме. В обычном случае, если сделать программное формирование отчета, то он блокирует основной интерфейс при выполнении.

Таким образом, подсистема "Варианты отчетов" позволяет разрабатывать и управлять отчетами эффективно за счет дополнительного функционала:

  • Варианты отчетов и их настройки хранятся в справочнике "Варианты отчетов", что позволяет ими гибко управлять (видимость, права доступа, администрирование настроек) и хранить дополнительную информацию для них.
  • Стандартизированные формы отчета и настроек создают единый интерфейс для работы с отчетами со стандартным набором функций, а также выстраивают удобную работу с "тяжелыми" отчетами за счет формирования в фоне любых произвольных отчетов за счет использования подсистемы "Длительные операции".

Пример был сделан для внешнего отчета, но встроить его в конфигурацию не составит труда. Фактически нужно еще меньше действий, но потребуется обновление конфигурации.

 
 Пример встраивания отчета в конфигурацию

Конечно, все "внутренности" подсистемы мы не рассматриваем, но основная часть теперь должна быть понятна. А теперь поговорим о типичной ситуации в разработке отчетов, с которой приходится часто сталкиваться.

Обычная ситуация

Вроде все просто и никаких проблем не ожидается. Но давайте сделаем те же самые действия на другой конфигурации, например на Бухгалтерии КОРП 3.0.67.70 (не самая новая версия, но подойдет). Добавим как внешний отчет, так и внутренний.

 
 Отчеты добавлены

Вы будете неприятно удивлены результату - отчеты не только не сформировали элементы справочника "Варианты отчетов", так еще и не выполняются в фоновом режиме, а также не отображаются в панели отчетов. А попытка встроить отчет в конфигурацию вообще приводит к ошибке при запуске базы с ключом обновления БСП.

Только форма отчета типовая, но остальное работает не как ожидалось. В чем же дело?

Что здесь не так и как быть

Ответ достаточно прост. Помните, в кратком описании принципа работы подсистемы говорилось, что она использует собственное хранилище вариантов отчетов, которое переопределяет работу с настройками на справочник "Варианты отчетов". В ERP это хранилище используется по умолчанию, так как оно установлено в качестве основного хранилища вариантов в настройках корня конфигурации. Сравните эти настройки с бухгалтерией.

 
 Разница в настройках ERP и БУХ

То есть, в бухгалтерии в качестве хранилища вариантов отчета по умолчанию используется не хранилище вариантов из БСП, а стандартное хранилище настроек. Именно поэтому отчеты и не смогли использовать возможности подсистемы "Варианты отчетов".

Исправить это и просто, и сложно одновременно.

Просто, потому что в свойствах отчета достаточно явно указать хранилище вариантов отчетов.

 
 Явное указание хранилища вариантов отчета

Но есть небольшая (а может и большая) сложность - если отчет был уже ранее добавлен и пользователи сохраняли свои варианты, то после таких манипуляций все настройки будут потеряны.

Для корректного исправления ситуации лучше всего изменения хранилища вариантов выполнять следующим образом.

 
 Исправить без последствий

Итого, при использовании подсистемы вариантов отчетов нужно обязательно проверять используется ли хранилище вариантов отчетов из БСП в отчете. Для использования полного функционала подсистемы его обязательно нужно включать. Если в конфигурации подсистема внедрена частично, то в отчетах (внешних и встроенных) необходимо указывать хранилище вариантов явно.

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

Немного нюансов

При использовании подсистемы "Варианты отчетов" может возникнуть интересная ситуация в процессе разработки. Допустим, у вас есть внешний отчет (пусть будет тот самый отчет для ERP из примера выше). Он уже был добавлен в дополнительные отчеты и обработки и некоторое время использовался. 

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

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

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

Решение:

  1. Для внешних отчетов:
    • Обновить внешний отчет в справочнике "Дополнительные отчеты и обработки", после чего настройки предопределенных вариантов обновятся.
    • На тестовом окружении изменить имя отчета, добавив например цифру. В итоге созданные настройки в справочнике не будут использоваться.
  2. Для встроенных отчетов:
    • После применения изменений конфигурации запустить обновление информационной базы со специальным ключом запуска БСП.
    • Отдельно запустить обновление данных вариантов отчета с помощью скрипта.

Дополнительной сложностью могут служить пользовательские варианты отчетов, которые автоматически не обновятся при внесении изменений в сам отчет. Тут придется продумывать варианты решения:

  1. Выпустить полностью новую версию отчета с новыми вариантами, которая не будет поддерживать существующие пользовательские варианты.
  2. Очистить все пользовательские варианты для измененного отчета.
  3. Написать обработку, которая исправит настройки существующих вариантов отчетов пользователей

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

Вот и все

Теперь Вы знаете немного магии из мира БСП, хотя уверен, что для многих это не стало открытием. Надеюсь, что информация будет полезна и сэкономит время в случаях, когда от разработчиков можно услышать:

  • Платформа создала кэш настроек отчета, сейчас его почищу. Хм, а не помогает. Компьютер перезапущу!
  • Я напишу свой механизм управления вариантами отчетов. Тот, что в БСП, глючит сильно.
  • Я делаю отчеты с помощью обработок, что еще за БСП.

И да, всех проблем с отчетами можно было бы избежать, если изучить официальную документацию.

До скорых встреч, вдохновения Вам и удачных код-ревью!

Другие ссылки

БСП отчеты варианты СКД хранилище

См. также

Богатый редактор картинок, хранимых в базе, с возможностью РИСОВАНИЯ. Редактор внешних файлов картинок. Объект, расширяющий возможности работы с картинками из встроенного языка (Три в одном) + Обработка «Стандартизация картинок»

Работа с интерфейсом Рабочее место Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Обработка предназначена для редактирования картинок в режиме «Предприятие», с возможностью РИСОВАТЬ на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Также обработка может быть использована из встроенного языка как объект для редактирования картинок. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Данная обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    61707    43    59    

80

[Расширения] Динамическое управление видимостью и доступностью элементов форм (УФ) (8.3.6+)

Работа с интерфейсом Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    54320    16    21    

42

Управление дашбордами

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    16625    21    4    

35

Модель состояния для MVC

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    3581    kalyaka    2    

27

Табло очереди заказов на экран телевизора

WEB-интеграция Работа с интерфейсом Платформа 1С v8.3 1С:Розница 2 Платные (руб)

Связка из веб-приложения и расширения для 1С: Розница 2.3.

3600 руб.

29.04.2022    12013    1    5    

10

Модули общего назначения - готовые полезные функции и процедуры конфигураций на БСП

Универсальные функции БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной статье я рассматриваю несколько полезных "классических" функций и процедур для работы с данными, которые уже встроены в БСП и готовы к использованию.

25.04.2022    14804    quazare    11    

136

Многопоточный режим выполнения процедуры с помощью методов БСП - примеры разработки

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной статья я рассмотрю примеры использования выполнения функций и процедур в многопоточном режиме, используя возможности Библиотеки стандартных подсистем (БСП).

01.04.2022    10242    quazare    16    

120
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Hekeus 04.06.19 08:49 Сейчас в теме
Нужно больше Золота, ам, хмм, Статей!!!
Tatyana_012345; jobkostya1c_ERP; nnnnnndfge; user785234; Бубузяка; SShipilov; paybaseme; YPermitin; +8 Ответить
2. пользователь 04.06.19 08:51
(1) хорошо, Милорд!
Tatyana_012345; nnnnnndfge; user785234; nik2500; Deslime; a_titeev; ixijixi; +7 Ответить
3. VmvLer 04.06.19 09:15 Сейчас в теме
по последнему абзацу

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

и далее расширенная инструкция как изменить это положение дел.
Причем, эти действия рядовому пользователю выполнить сложно.

Кроме озвученных способов есть другой, понятный пользователю.
Причем, этот способ можно отправить пользователю письмом или СМС без простыни текста:
в форме отчета Еще > Прочее > Изменить вариант отчета > Еще > Стандартные настройки

...

В общем и целом статья написана хорошо и структурировано подает ...прописные истины для тех, кто плотно работает с типовыми.
А новичкам самое то.
Рамзес; Drivingblind; CHSN8; taiwanchik; Синицын; skalex; bulpi; YPermitin; +8 Ответить
4. пользователь 04.06.19 09:38
(3) для пользователя, конечно, проще сбросить настройки.

Но здесь статья для разработчиков. Имелось ввиду, что можно адаптировать уже сохраненные варианты отчетов программно (добавить или удалить поля, отборы неработающие убрать и т.д.).

А истины и правда прописные :)
38. pas 81 07.06.19 08:50 Сейчас в теме
(3) Прописные истины - это что-то постоянное, а тут от версии к версии все меняется на 180 градусов
Yashazz; Рамзес; TeMochkiN; YPermitin; +4 Ответить
39. VmvLer 07.06.19 09:10 Сейчас в теме
(38) Во вселенной нет постоянных вещей и событий - все пребывает в движении, устремляясь к развитию и упадку.
Истины в каждой конкретной точке пространства-времени - это временные предрассудки наблюдателя этой точки.

Хотите об этом поговорить?
user785234; Koks; Suslik_Johns; acanta; YPermitin; +5 Ответить
40. пользователь 07.06.19 09:29
(39)
ой конкретной точке пространства-времени - это


Да начнется сеанс психотерапии! :))))
54. kurator1C 04.06.21 00:41 Сейчас в теме
(39) Утверждение противоречит само себе: если его считать истиной, то получается, что во вселенной есть как минимум одна постоянная вещь - тот факт, что во вселенной нет постоянных вещей.
nesl; Irina V.; +2 Ответить
65. user1918475 07.02.24 11:11 Сейчас в теме
(54)
И это тоже не постоянно! )))
5. SlavaKron 04.06.19 10:16 Сейчас в теме
Было бы интересно посмотреть примеры использования процедуры ОпределитьНастройкиФормы в модуле внешнего отчета.
// Для общей формы "Форма отчета" подсистемы "Варианты отчетов".
Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт
	
	// Переопределение настроек параметров и отборов.

КонецПроцедуры
SagittariusA; AlexBober78; ixijixi; YPermitin; +4 Ответить
7. пользователь 04.06.19 10:53
(5) в БСП хорошие примеры, но взял на будущее.
48. AlexBober78 21.06.19 18:49 Сейчас в теме
(5) да, всякие жизненные ситуации, чтобы легче было разбираться
6. vardeg 192 04.06.19 10:47 Сейчас в теме
Я сейчас буду плакать от счастья.
Перевожу старую конфигурацию на базе УПП на английский. Пришлось в 440 объектах документах править захардкоженную структуру с описанием заголовков печатных форм - вставлять везде НСтр. Более того в общих модулях много где идет формирвоание текстов для интерфейса тоже захардкоженных и хрен где встретишь НСтр.
Пришлось писать внешний инструмент парсинга выгрузки конфы в файлы и самый геморой с модулями непуравляемых форм.
И сейчас я вижу что человек пишет код в котором в захардкоженное описание предусмотрительно ставит НСтр для поддержки мультиязычности.
Я сейчас расплачусь от уважения.
Не говоря уже обо всей другой стати - только за это 15 звезд тебе впаять надо! Респект!
Bryuh; dshershen86; d4rkmesa; nad0_hto; &rew; mivari; a_titeev; YPermitin; +8 Ответить
8. пользователь 04.06.19 10:58
(6) у Вас очень интересная задача. Если когда-нибудь сделайте публикацию как все провернули, то юудет очень интересно.

Честно признаться, я не всегда использую НСтр(), так что иногда можно и камнями закидать :)
13. rozer 305 04.06.19 15:03 Сейчас в теме
(6) видимо стандарты разработки 1с в вашем случае придумала позже .... https://its.1c.ru/db/v8std#content:761:hdoc:_top
14. zeegin 114 04.06.19 19:04 Сейчас в теме
(6) АПК умеет искать захаркоденные фрагменты строк и ругаться на них, что они без НСтр. Это сильно упрощает работу переводчикам.
SagittariusA; d4rkmesa; pavlov_dv; YPermitin; +4 Ответить
9. salbey 77 04.06.19 11:48 Сейчас в теме
Так как это отчет и он совместим с подсистемой вариантов отчетов, то в настройках доступна вкладка "Варианты отчетов".

Подскажите, как обозначить совместимость с подсистемой вариантов отчетов для внешнего отчета?
У меня не отображается страница "Варианты отчета" на форме элемента справочника "Дополнительные отчеты и обработки".
10. пользователь 04.06.19 12:28
(9) посмотрите настройки внешнего варианта отчета. В статье есть пример, когда для внешнего отчета устанавливается хранилище вариантов отчета. Это то чно Вам нужно.

Если, конечно, в Вашей конфигурации есть БСП...
11. SlavaKron 04.06.19 12:39 Сейчас в теме
(9) Я думаю дело в том, что вид обработки вы указали "Отчет", а не "ДополнительныйОтчет". Это влияет только на наличие страницы "Варианты отчета" на форме элемента справочника. К настройке вариантов такого отчета можно добраться из "Администрирование - Печатные формы, отчеты и обработки - Отчеты" или из самого отчета.
YPermitin; +1 Ответить
12. пользователь 04.06.19 12:44
15. MikeI 73 05.06.19 00:21 Сейчас в теме
А объясните мне. Вот не было хранилищ настроек и использовали справочники "Сохранённые настройки" и жили не тужили. Тут прогеры платформеры делают новую байду Хранилище всякой пурги. А потом появляются ещё тру прогеры и делают новый справочник "Варианты отчётов", который заменяет хранилище. Зачем вся это ерунда? На мой взгляд из всей БСП полезное это Универсальный отчёт. Всё остальное бред воспаленного мозга тру прогаммеров
1giga; Alex1c; bulpi; YPermitin; +4 Ответить
18. пользователь 05.06.19 08:12
(15) думаю, тут нет злого умысла или желания у разработчиков 1С испортить Вашу жизнь :)

Хранилище вариантов, как и любое хранилище, имеет весьма ограниченный функционал и не подходит для всех задач. Но отчеты на уровне платформы тесно иннтегрированы с хранилищем для созранения и загрузки настроек. Поэтому, переопределив поведение хранилища, разработчики расширили функционал для работы с настройками.

Почему сразу не сделать справочником? Пришлось бы писать излишний код для событий созранения настроек, эмулировать стандартные соьытия отчета и т.д.

Поэтому нужно понять, простить, использовать :)
16. MikeI 73 05.06.19 00:21 Сейчас в теме
И да. Статья гуд, однозначно плюс
YPermitin; +1 Ответить
17. пользователь 05.06.19 08:06
19. ashvik 05.06.19 09:18 Сейчас в теме
Недавно столкнулся с недостатком этой подсистемы. Разбирался, почему созданный в пользовательском режиме вариант отчета не записывает замеры времени. Оказалось, что ключевые операции формируются из справочника "Предопределенные варианты отчетов". Пришлось делать свою обработку, которая добавляет элемент в этот справочник.
YPermitin; +1 Ответить
20. ids79 8275 05.06.19 11:13 Сейчас в теме
Статья классная, однозначно плюс!
Сам хотел подобную написать, но также хорошо как у Вас не получилось бы наверно.
У меня такой вопрос, Вы пишите, что настройки предопределенных вариантов не сохраняются в справочнике "Варианты отчетов" - согласен. Дальше Вы пишите, что при изменении настроек варианта в конфигураторе, приходится перезаполнять варианты отчетов, чтобы увидеть настройки в пользовательском режиме. Зачем, если настройки не сохраняются в справочнике?
Кстати, я такой особенности не замечал. Меняешь вариант в конфигураторе, он меняется в пользовательском режиме. Разве что могут наложиться еще сохраненные пользовательские настройки.
YPermitin; +1 Ответить
21. пользователь 05.06.19 12:28
(20) возможно, недостаточно раскрыл момент и неточно выразился.

Вы правы, пользовательские настройки могут наложиться.

Если вариант предопределенный, то есть из самой схемы, то да, вы такого поведения не увидите.

Но если вариант модифицированный, свой так сказать, то в этом случае настройки хранятся в справочнике.

Далее, если Вы меняете настройки отчета в конфигураторе (например, добавили новое поле в основной вариант в схеме), то при открытии этих изменений не увидите.

Еще бывают ситуации, когда предопределенные варианты могут быть модифицированы и эранить настройки в справочнике.

В текущей статье не буду описывать это подробнее, ибо здест это просто для информации, обзора. Но можно вернуться к этой теме в будущем.
22. bulpi 215 05.06.19 12:31 Сейчас в теме
За статью плюс поставил, т.к. приходится работать с этой подсистемой (проклятая любовь к деньгам :) ). Но вывод нелогичен, ИМХО : " Подсистема стоит того, чтобы ее использовать и не изобретать велосипеды.". Этот вывод как раз в конце раздела "Немного нюансов", в котором как раз и подчеркивается бредовость и неудобства этой подсистемы. Вся эта подсистема - гигантский корявый переусложненный велосипед.
Yashazz; 1giga; nazirovramzil; Alex1c; zqzq; YPermitin; +6 Ответить
23. пользователь 05.06.19 12:35
(22) спасибо за добрые слова :)

Все же это лучше, чем то что было в УПП иди многочисленные велосипеды.

Своего мнения не навязываю, но с учетом возможностей ее доработки, унификации работы и удобства интерфейса -для меня вывод именно такой.

Если у Вас есть опыт более удобных мезанизмов, то сообществу было бы интересно узнать / пощупать.
24. Йожкин Кот 1006 05.06.19 13:55 Сейчас в теме
Как по варианту отчету в предприятии понять, какому отчету конфигурации он соответствует? В ERP2 сотни отчетов и каждый раз вызывает трудности поиск отчета.
YPermitin; +1 Ответить
25. пользователь 05.06.19 14:14
(24) по представлению отчета найти элемент в справочнике вариантов. В реквизите Отчет будет полное имя метаданных отчета или ссылка на доп. отчет или идентификатор объекта метаданных.
Йожкин Кот; RealSurfer; +2 Ответить
34. Йожкин Кот 1006 06.06.19 15:31 Сейчас в теме
(25) Спасибо большое! Дополню, что в варианте отчета есть скрытая группа "Техническая информация" и в ней как раз есть нужные данные.
YPermitin; +1 Ответить
26. skalex 06.06.19 11:46 Сейчас в теме
Скажите, пожалуйста, для чего в модуле формы внешней обработки добавлена процедура "ПриКомпоновкеРезультата"? В статье написано, что она для программного формирования отчета. Но отчет формируется и без нее. Можете описать моменты, когда она будет действительно нужна.
YPermitin; +1 Ответить
27. пользователь 06.06.19 12:31
(26) в этом случае практического смысла это не несет. Сделано для примера того, что когда отчет переведен на программное формирование отчета, то с помощью общей формы БСП отчет все равно формируется в фоновом режиме.

Без БСП, при программном формировании, отчет будет блокировать основной интерфейс пользователя, т.е. подвисать.

Вы модете это проверить самостоятельно на простом отчете без БСП.
28. skalex 06.06.19 13:00 Сейчас в теме
(27) Спасибо, большое, за ваш ответ. Теперь все встало на свои места. Отдельно спасибо за публикацию! Получен ценный опыт. В срочном порядке переписываю свои внешние отчеты.
29. skalex 06.06.19 13:28 Сейчас в теме
(27) Еще один вопрос. Не совсем понятно, что значит "без БСП"?. Это внешний отчет, у которого в модуле объекта отсутствует функция СведенияОВнешнейОбработке()?
YPermitin; +1 Ответить
30. пользователь 06.06.19 13:37
(29) отчет, который не использует хранилище вариантов БСП, не использует общую форму отчетов БСП, ну и без описания о котором Вы написали.
31. skalex 06.06.19 14:28 Сейчас в теме
(30) Хорошо. Я создал два отчета, которые не использует хранилище вариантов БСП и не содержат функцию СведенияОВнешнейОбработке().
Первый отчет содержит процедуру ПриКомпоновкеРезультата() в модуле отчета, второй нет.
Оба этих отчета при формировании блокирует интерфейс, т.е. выполняется НЕ в фоне.
Из вашего комментария (27), я понял, что отчет без процедуры ПриКомпоновкеРезультата() должна формироваться в фоне.
Или я что-то не правильно понял. Поправьте меня пожалуйста.
32. пользователь 06.06.19 14:30
(31) приложите примеры отчетов к комментарии. Посмотрю по возможности.
33. skalex 06.06.19 15:10 Сейчас в теме
37. пользователь 06.06.19 17:51
(33) проверил. Все дело в том, что Вы не добавили форму в оба отчета, поэтому использовалась форма БСП (основная форма конфигуарции для отчетов). В этом случае отчет не может выполняться в фоне, потому что для него необходима инициализация варианта отчетов и всего того, что описано в статье.

Я добавил в отчеты не БСПшную форму, а стандартную. В этом случае вариант без процедуры при компоновке выполняется в фоне.

Отчет выполняется очень быстро, поэтом выполнение в фоне можно не заметить. В этом случае можно проверить так:
1. Запускаете отчет
2. Смотрите что в журнале регистрации. Там появятся события запуска и остановки фонового задания.
Прикрепленные файлы:
ОтчетБезПроцедурыПриКомпоновкеРезультата.erf
ОтчетСПроцедуройПриКомпоновкеРезультата.erf
Светлый ум; skalex; +2 Ответить
41. skalex 07.06.19 10:36 Сейчас в теме
(37) Спасибо, теперь все встало на свои места!
YPermitin; +1 Ответить
35. a_titeev 31 06.06.19 15:59 Сейчас в теме
Классная статья!
YPermitin; +1 Ответить
36. пользователь 06.06.19 17:37
42. Бубузяка 62 09.06.19 09:10 Сейчас в теме
Полезная статья. Мои коллеги (по франчу) почем-то не любят читать документацию к БСП, но любят infostart. Надеюсь, что теперь у них мозги встанут на место. Особенно ценно - проведение параллелей между БП и ЕРП. Спасибо, автор, пишите еще про БСП в таком стиле.
YPermitin; +1 Ответить
43. пользователь 09.06.19 09:14
(42) спасибо на добром слове:)
44. Ulus 288 12.06.19 06:13 Сейчас в теме
Респектище и уважение автору!
Понятно и логично изложено.

Мало того, что вы чувствуется сильный спец, у вас еще талант доносить информацию
YPermitin; +1 Ответить
45. Ulus 288 12.06.19 06:39 Сейчас в теме
поясните моментик один, чтобы у меня пазлики сложились до конца )

Пусть у меня есть свой собственный вариант:

- то есть я взял предопределенный

- изменил через изменить вараинт отчета. см. прикрепленный файл
- сохранил. в Вариантах отчета добавился элемент справочника. Все ок.

У меня вопрос к (рис 1) :

- сохранить настройки

- выбрать настройки


То есть я могу, находять в предопределенном варианте отчета сделать себе кучу настроек и потом через выбор выбирать (рис 2) .
Причем если я по кнопке настройки изменю вариант вывода, добавлю группировку и.т.п., то при закрытии он меня будет именно просить сохранить Вариант отчета. Если я скажу нет, то у меня настройка сохраниться и в ней сохраняться все мои отборы и.т.п., но вариант вывода останется изначальный.
То есть через сохранить настройки и выбрать настройки можно сохранить только отборы/параметры и.т.п
я правильно понимаю ситуацию ?

Это пользовательские настройки СКД ? Но тогда я бы и вариант вывода мог сохранять как я понимаю (группировки добавлять и.т.п., но нет не сохраняются).

Все таки что мы сохраняем по Сохранить настройки? Где это храниться?
Прикрепленные файлы:
YPermitin; +1 Ответить
46. пользователь 13.06.19 15:28
(45) уже так много времени существует механизм СКД, но путаница между видами настроек все равно сохраняется. Может это повод для новой статьи...

Вообщем, у СКД три вида настроек:
- Пользовательские
- Фиксированные
- Настройки компоновки

Фиксированные пропустим.

Пользовательские - они сохраняются для пользователя и не создают нового варианта отчета. Это те самые настройки, что вы вбиваете при открытии отчета (период отчета, некоторые отборы). Пользовательские настройки не влияют на настройку варианта отчета. Состав пользовательских настроек изначально определяет разработчик.

А вот настройки компоновки... если вы поменяете настройки через "Изменить вариант", то это будут изменены как-раз настройки варианта отчета. Именно эти настройки и хранятся в справочнике вариантов отчета.

Как-то так в общих чертах. Надеюсь не запутал еще больше :)
47. Ulus 288 16.06.19 17:07 Сейчас в теме
(46) Спасибо услышал!
Ответ на мой вопрос: это пользовательские настройки СКД.
Ответ на мой второй вопрос: где хранятся. Кратко и точно тут: https://its.1c.ru/db/pubcomplexreports/content/140/hdoc


(46)
это повод для новой статьи...

100% статья будет востребована для сообщества.
49. Алексей777 90 22.07.19 16:19 Сейчас в теме
Коллеги, а кто-нибудь пробовал научить работать Варианты отчетов с произвольными СКД. Поясню, что подразумеваю под данным термином. Все отчеты мы создаем внутри или как внешние … А вот если у нас в режиме предприятия есть некий справочник, который хранит произвольные СКД, и мы хотим на основании подсистемы Варианты отчета формировать на базе данной СКД отчеты и сохранять для них варианты???
50. tyfmyl 18.02.20 10:32 Сейчас в теме
Народ, подскажите как подгружаются настройки компоновки в ОбщиеФормы.ФормаОтчета?
Поясню. Есть типовой отчет в котором есть параметр КлючВарианта и он не заполнен по умолчанию и нигде в модуле отчета не заполняется. В обработчике события ПриСозданииНаСервере этот параметр уже заполнен. Никак не могу найти в каком месте происходит заполнение настроек.
51. EVKash 14 18.02.20 11:42 Сейчас в теме
(50) Общий модуль Общая форма ПанельОтчетов
Процедура Подключаемый_ВариантНажатие(Элемент)
	Вариант = НайтиВариантПоИмениЭлемента(Элемент.Имя);
52. triviumfan 91 27.05.20 09:53 Сейчас в теме
А справка в доп. отчетах у всех не работает или я один такой? Пробовал на разных БСП.
Всегда платформенная работа с формой открывается, не получается переопределить.
53. tgu82 17 09.03.21 21:10 Сейчас в теме
В БП 3.0 нет для отчета на СКД "Еще-изменить вариант отчета-прочее и пользовательские поля добавить нельзя получается или все-таки как-то можно именно на уровне пользователя а не программно
55. user790109 9 04.06.21 09:30 Сейчас в теме
Статья хорошая. Но может кто подскажет, ошибка возникает если отчет был создан в расширении. В корне нет Хранилища вариантов отчетов. Что в этом случае можно придумать?
58. hasp_x 156 22.06.23 11:43 Сейчас в теме
59. user790109 9 22.06.23 12:20 Сейчас в теме
(58) Нет. Проблему надо было решить быстро, и так как конфигурация редактировалась, отчет был перенесен в основную конфигурацию. Если найдете решение то было бы полезно)
61. dima_gsv 21 19.10.23 15:03 Сейчас в теме
(55)
Статья хорошая. Но может кто подскажет, ошибка возникает если отчет был создан в расширении. В корне нет Хранилища вариантов отчетов. Что в этом случае можно придумать?

Добавить ХранилищеВариантовОтчетов в расширение из основной конфигурации.
56. Sirruf 192 06.04.22 18:07 Сейчас в теме
Я вот одного не пониманию - как быть если у отчета переопределена форма?
Как подключить такой отчет к подсистеме ВариантыОтчетов?
Насколько я понял это все работает только, если у отчета используется общая форма ФормаОтчета?
Например, если переопределить форму, то при сохранении варианта отчета возникает ошибка:
Поле объекта не обнаружено (КонтекстВарианта)
{ХранилищеНастроек.ХранилищеВариантовОтчетов.Форма.СохранениеВариантаОтчета.Форма(60)}: ЭтоКонтекстныйВариантОтчета = ЗначениеЗаполнено(ВладелецФормы.КонтекстВарианта);

Неужели в ERP нет отчетов со своими формами?
60. grfsd 5 25.09.23 14:11 Сейчас в теме
(56)В конфигураторе нужно не добавлять новые формы элемента, настроек и варианта отчетов, а выбрать общие
57. user_2010 865 10.05.22 19:14 Сейчас в теме
Как для отчета программно установить типовое хранилище вариантов отчетов? Например, в расширении.
Возможно ли это? и есть ли в этом смысл?
Или только интерактивно нужно при создании указывать хранилище вариантов отчетов?
62. dima_gsv 21 19.10.23 15:07 Сейчас в теме
(57) только интерактивно в конфигураторе
63. dima_gsv 21 19.10.23 16:14 Сейчас в теме
Перенос вариантов отчётов из стандартного хранилища вариантов в элементы справочника "Варианты отчетов" сейчас в БСП выполняет процедура ВариантыОтчетов.ПеренестиПользовательскиеИзСтандартногоХранилища(ИменаОтчетов = ""). В качестве параметра можно передать имя отчёта, чьи настройки перенести. Но можно и не указывать - настройки всех отчётов с хранилищем вариантов равным "ХранилищеВариантовОтчетов" будут перенесены. Процедура предназначена для вызова из обработчиков обновления конфигурации. Поэтому из интерфейса вызвать неоткуда. Вызывайте "вручную", при необходимости.
64. user_2010 865 19.10.23 16:26 Сейчас в теме
Оставьте свое сообщение