Не так страшен чёрт, как его поддержка, поэтому потребовалось понять, что из этого действительно используется, а что надо выбросить мимо корзины и забыть.
Понятно, что допрос пользователей для этого не годился:
— Вы этим пользуетесь?
— Да.
— А вот этим?
— Нет.
— Shift+Delete!
… прошло 15 минут …
— А где мой отчёт?
— Какой отчёт?
— Ну вот тот вот отчёт.
— Вы же сказали, что не пользуетесь.
— Ну да, не пользуюсь. Но раз в день-то формирую.
Поэтому я решил собрать статистику использования этих отчётов. Делается просто: в форме списка справочника ВнешниеОбработки дописываем в конец процедуру:
Процедура ЗарегистрироватьОткрытие(пОтчет)
лНабор=РегистрыСведений.ИспользованиеОтчетов.СоздатьНаборЗаписей();
лНабор.Отбор.Отчет.Установить(пОтчет);
лНабор.Отбор.Пользователь.Установить(глЗначениеПеременной("глТекущийПользователь"));
лНабор.Отбор.ДатаОткрытия.Установить(ПроверкаРазницыВремени.ТекущаяДатаСервера());
лНоваяЗапись=лНабор.Добавить();
лНоваяЗапись.Отчет=пОтчет;
лНоваяЗапись.Пользователь=лНабор.Отбор.Пользователь.Значение;
лНоваяЗапись.ДатаОткрытия=лНабор.Отбор.ДатаОткрытия.Значение;
лНабор.Записать();
КонецПроцедуры
Затем в той же форме находим процедуру СправочникСписокВыбор и прописываем в ней после каждой строки Форма.Открыть() вызов той процедуры:
ЗарегистрироватьОткрытие(ВыбраннаяСтрока.Ссылка);
Всего там будет два таких места.
Дальше остаётся только создать регистр ИспользованиеОтчетов, структуру которого я не привожу, так как она очевидна из процедуры, после чего ждать.
Разумнее всего подождать квартал, после чего у нас, во-первых, появляется информация, кто из пользователей какие отчёты и обработки использует и как часто, а во-вторых, становится понятно, какие из них можно удалить из справочника, убрать в дальний угол диска и перестать учитывать их существование при доработках конфигурации.
У меня это работает на УПП 1.3, но по идее должно работать на любой типовой конфигурации на обычных формах, где есть типовой механизм дополнительных отчётов и обработок.
хороша идея=) нужно так же сделать =)
// ..в наследство(!) база с сотней(!) внешних отчетов…))))) Кто-то отчеты полжизни писал и ушел на покой… а вы их Shiftdel-ом..
Логично вообще для внешних отчетов понимать — нужны ли они кому.. можно ещё и для любых подделать.
А почему не задействовать стандартный механизм журнала регистрации? Запихнуть ЗаписьЖурналаРегистрации по нужным событиям.
(3) bovka, А потом в жр за квартал собирать данные, уж больно не поворотливый он если много пользователей, много данных, да и отчет сделать для руководства будет тот еще гимор.
У себя тоже 2 года назад подобное внедрили, не только для внешних но и для всех отчетов обработок + отчет по открытию, очень удобно потом показывать руководству затрачено на разработку n-часов, а отчет открывался 2 раза за год, делают выводы.
Спасибо! Зреет переход из БП 2.0 в БП 3.0. Воспользуюсь, что бы не переносить кучу старых ненужных отчетов.
Тоже себе делал, но с записью результатов в файлы, потому что баз несколько и удобнее было (мне) смотреть сразу по всем базам.
Но я хотел сказать, что такая штука еще полезна в случае, когда пользователь закажет отчет, потом раз откроет и больше не использует.
Тут можно аргументировано говорить с руководством
(2) korppinen, большая часть этих отчётов написана так, что жалеешь о моратории на смертную казнь, а я их всего лишь их Shiftdel-ом.
Идея хорошая, только, может подписками сделать? У меня УПП, не хотелось бы постоянно дорабатывать при обновлениях.
(8) progr-2008, подписками на что? А дорабатывать при обновлениях ничего не нужно — справочник ВнешниеОбработки уже сто лет не менялся и теперь уже вряд ли будет.
Спасибо, пригодилось…
(4) alyaev.a.v, как вы реализовали для всех отчетов и обработок? Тоже хочется, но что-то ничего элегантного на ум не приходит.
(11) Gesperid, совсем одним движением и не получится. Для отчётов на основе Универсального надо всобачить в Универсальный вызов процедуры, регистрирующей открытие, а для всех остальных вставлять этот вызов в каждый отчёт. Сейчас я так делать не стал просто потому, что использование типовых отчётов мне неинтересно (не удалять же их, если они не используются), а почти все нетиповые у меня внешние/дополнительные.
А на печальные формы такое подойдет? Я просто не прогер