Внезапно обнаружилось.
Замечательный Универсальный отчет.
При каждом восстановлении настроек - не очищает список показателей, а тупо добавляет к нему показатели из восстанавливаемого варианта построителя.
В результате чего при формировании (восстановленного "нового") отчета - 1с-ина вдруг может нарваться на необходимость вывода показателя. который остался от "старой" настройки (причем отмеченным к выводу, с галочкой) - и при попытке такого вывода возникнет
неисправимая ошибка |
---|
{Отчет.УниверсальныйОтчет.МодульОбъекта(<какой-то номер строки>)}: Ошибка при вызове метода контекста (Добавить)
МассивВыбранныеПоляПоказатели.Добавить(ПостроительОтчета.ВыбранныеПоля.Добавить(Показатель.Имя));
по причине: Поле не найдено. "<тут какое-то имя показателя>" |
Наши аналитики, использующие этот мега-удобный отчет - в таких случаях безропотно пере-настраивали вариант отчета (начиная с пере-выбора раздела учета), и плакали в кулак. Еще таким образом частенько улетали коту под хвост предварительно подготовленные для пользователей настройки этого отчета (а его довольно часто тупо хватает вместо разработки нового отчета на каждый чих).
Варианты решения проблемы.
1. Пользовательский вариант - без ковыряния в конфигурации, "срочное решение".
1.1. Пере-открыть отчет.
1.2. Нажать на кнопку "Настройка ...", снять все галочки в дереве "Показатели", Ок.
1.3. Восстановить нужную настойку, теперь при формировании отчета ошибки не будет.
2. Правильный вариант. Модуль объекта, находим "Функция ВосстановитьНастройки(Объект, Отчет, Форма, ИмяОбъекта = Неопределено) Экспорт", и в ней (сразу после объявления локальных переменных) - добавляем "Показатели.Строки.Очистить();"