Навигатор дополнительных отчётов и обработок (с иерархической структурой)


Данная обработка предназначена для доступа к внешним отчётам и обработкам из режима 1С:Предприятие.
Основные возможности:
- иерархический список обработок (до 10 уровней вложений), простая интуитивная навигация по группам;
- поиск обработок в списке по вхождению подстроки (с возможностью позиционирования на найденных);
- все настройки в одном файле (никаких efd-файлов!);
- возможность хранения обработок в любом месте (не обязательно ExtForms);
- возможность использования относительных путей (отдельный список каталогов);
- возможность указания краткого описания обработки;
- возможность указания полного описания обработки в виде отдельного файла, или примера сформированной обработки (в любом формате открываемом Windows);
- возможность указания параметров запуска обработки (параметры могут передаваться в качестве Форма.Параметр (списка значений), глРасшифровка или одиночным значением);
- отдельные административная и пользовательская части. (пользовательская - только для запуска обработок, административная - для запуска и редактирования списка);
- широкий функционал редактирования (простое создание групп и элементов, перемещение вверх/вниз, копирование и перенос из группы в группу нескольких элементов и групп за один раз);
- возможность раздачи прав на видимость групп и обработок в списке (через группы пользователей);
- возможность ведения статистики использования (запуска) обработок пользователями;
- вывод на печать перечня отчётов и обработок.

В архиве 6 файлов:
ExtRepAdmin.ert - административная часть
ExtRepViewer.ert - пользовательская часть
SetParamRep.ert - вспомогательная утилита установки параметров запуска;
SetUsersGroup.ert - вспомогательная утилита установки условий отнесения пользователей к группам;
SetLabel.ert - вспомогательная утилита множественного выбора из списков;
SearchRep.ert - вспомогательная утилита поиска отчётов (обработок) по вхождению подстроки;

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

Для включения/выключения режима копирования/вырезания/вставки предназначена кнопка фиксации (зелёная "канцелярская кнопка"). После включения этого режима появляется колонка с отметками.

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

При задании параметра запуска отчёта указывается идентификатор параметра, и его значение. Доступные типы значений параметров:
- Справочник;
- Документ;
- Перечисление;
- Счет;
- Число;
- Дата;
- Строка;
- Путь к файлу;
Пока нельзя в качестве значения параметра передавать список значений или таблицу. (Если кому нужны ещё и виды расчётов, календари, регистры и т.п. небухгалтерская фигень - пишите, в смысле прописывайте процедуры выбора и шлите мне, подновлю).
При запуске обработки будет сформирован список значений со значениями параметров и идентификатором в качестве текстового представления. Получившийся список передастся в качестве параметра запускаемой обработки или в переменную глРасшифровка.
В параметрах можно задавать служебные параметры в угольных скобках. Пока доступен только служебный параметр с идентификатором "<ВК>" - внешняя компонента, значение - путь к dll файлу. Данный параметр говорит о том, что перед запуском отчёта (обработки) будет запущена на исполнение строк "ЗагрузитьВнешнююКомпоненту(ЗначениеПараметра);"
Пример: библиотека Decoder.dll для запуска обработок защищённых КЗК от Альфа.

Группы пользователей добавляются на специальной вкладке. Для каждой группы описываются условия отнесения пользователя к группе. Условий может быть сколько угодно, проверяются они либо по логическому "И", либо по логическому "ИЛИ".
Условия задаются просто: "Переменная", "Условие", "Значение". В качестве переменной может выступать любая функция на языке 1С (как впрочем и глобальная переменная, и реквизит через точку). Условие - выбирается из списка предопределённых (помимо стандартных =, <>, >, <, есть "содержится в", "содержит", "входит в", "Тип значения равен", "Вид значения равен" и все вышеперечисленные с логическим "Не").
В качестве значения выбирается значение произвольного типа. (к основным типам добавлено "Имя пользователя 1С", "Имя компьютера", "Имя домена" выбираемые из списка сформированного для текущей ИБ).

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

Статистика ведётся опционально. Включить/отключить ведение статистики можно в административной части на вкладке "Общие настройки". Там же задаются сохраняемые для статистики реквизиты.

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

Файлы обработки:

-