Компонент «Конструктор реестров»

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

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

В реестрах не может быть расслоений, т.к. если несколько объектов удовлетворяют условиям реестра, это порождает несколько строк в реестре.

Создание нового реестра

Чтобы приступить к созданию реестра, нужно перейти в меню «Реестры - Новый реестр».

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

В поле «Название» в верхней панели меню вводим название будущего реестра.

_images/a21.png

Как уже было сказано, в реестрах существуют только заголовки столбцов и внешние фильтры, применяющиеся ко всему реестру в целом.

Заголовки столбцов

Заголовки столбцов в реестрах могут быть двух типов:

  • источник: показатель, значение которого выводится в ячейке отчета,
  • группировочный заголовок: не влияет на содержимое соответствующих ячеек, позволяет сгруппировать заголовки-источники.

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

_images/a22.png

Добавить источники можно по нажатию на кнопку «Добавить источник» в поле заголовки столбцов.

_images/a26.png

Во всплывающем окне в поле «Значение» начинаем вводить название показателя и выбираем нужный из выпадающего списка.

_images/a27.png

В поле «Название» можно ввести название, под которым источник будет отображаться в системе. По умолчанию это название совпадает с названием показателя.

Если у источника стоит галочка в чек-боксе «текст с переносами строк», высота строки автоматически подбирается таким образом, чтобы текст в ячейке с этим показателем был виден целиком, при этом в других ячейках данной строки (где не выбрана опция «текст с переносами строк») текст может быть виден не полностью.

Если нужно запретить редактирование каких-либо столбцов, нужно проставить галочку в один из чек-боксов:

  • «не редактируется» - полный запрет на редактирование данных в столбце с такой галочкой
  • «не редактируется в строках с внешними источниками» - невозможно редактирование данных в этом столбце в случае, если у объекта, выведенного в данной строке, определены еще какие-то показатели кроме выведенных в реестре.

Обязательность источников

Источники в реестрах могут быть обязательными и необязательными.

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

При просмотре реестра все обязательные для заполнения столбцы отмечены красной звездочкой рядом с названием заголовка столбца.

Чтобы сделать столбец не обязательным для заполнения, в чек-бокс «Может быть пустым» нужно проставить галочку.

Уникальные источники

С помощью чек-бокса «уникальный» в реестре задается уникальный ключ, который не будет повторяться. Уникальным может быть как один источник, так и несколько. Если галочка «уникальный» стоит у нескольких источников, то будет отслеживаться единственность каждого сочетания значений источников между собой.

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

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

Оформительские заголовки

Оформительский заголовок отображается в заголовках реестра, но не влияет на данные (не является ни источником данных, ни фильтром). Такой заголовок может содержать какую-то дополнительную информацию (например, подробные реквизиты отчитывающегося субъекта), или может использоваться для визуального объединения (группировки) нескольких столбцов под общим заголовком. Оформительские заголовки столбцов создаются аналогично источникам данных. Во всплывающем окне после нажатия на кнопку «Добавить источник» не выбирается значение показателя для источника, а вводится только название заголовка столбца

_images/a30-2.png

Таким образом будет создан заголовок, не влияющий на данные.

Чтобы использовать созданный оформительский заголовок как группировочный, можно перенести под него при помощи drag-n-drop другие заголовки-источники данных или другие оформительские заголовки.

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

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

Внешние фильтры реестра

Внешние фильтры реестра это набор условий, накладывающихся на весь реестр в целом. Они могут объединятся через логические операции «И» и «ИЛИ» (операцию «ИЛИ» имеет смысл использовать только в реестрах - в отчетах она порождает расслоение, а в формах запрещена).

Настраиваются внешние фильтры по нажатию на кнопку «Фильтры» в верхней панели меню

_images/a23.png

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

Чек-бокс «не участвует в вычислениях» означает, что фильтр не будет применен к данным в отчете. Это имеет смысл только если такой фильтр - параметр и через его метку определены какие-либо еще фильтры в отчете. Для реестров этот чек-бокс смысла не имеет.

В случае с фильтрами-периодами есть возможность строить отчеты, реестры, формы с привязкой к текущей дате (текущему месяцу, году и т.д.), чтобы не менять постоянно параметры их отображения. Для этого нужно при добавлении фильтра-периода в качестве типа периода указать «Текущий …» (в зависимости от того, какой период нужен - неделя, месяц или другой). В следующем поле можно указать сдвиг этого периода относительно настоящего момента («Текущий месяц» -1 - это предыдущий месяц и т.д.).

Параметры реестра

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

_images/a25.png

Если фильтр сделан параметром, появляются два дополнительных поля - «Метка» и «Название параметра». Метки используются только в заголовках отчетов, в реестрах не применяются (см. раздел Компонент «Формулы для задания фильтров»). В поле «Название параметра» можно указать название, под которым параметр будет отображаться в отчете. По умолчанию это название совпадает с названием показателя.

После того, как будут заданы все необходимые настройки фильтра, нужно нажать кнопку «Сохранить».

При повторном открытии фильтра-параметра, появится кнопка «Задать множество значений параметра», по которой можно во всплывающем окне указать, какие значения сможет принимать выбранный показатель в данном реестре.

Для удаления фильтра нужно нажать кнопку «Удалить» в окне настройки фильтра, по кнопке «Сбросить» там же все настройки фильтра сбрасываются.

После того, как все фильтры настроены, нажимаем в окне кнопку «ОК».

_images/a25-5.png

Ограничения на фильтры

Если в реестре есть внешние фильтры, например, «Дата выпуска»:

_images/date1.PNG

и в заголовках столбцов есть показатель «Дата выпуска», то данный показатель должен быть обязателен (без галочки «может быть пустым»),

_images/reg521131.PNG

иначе при редактировании реестра и при не заполнении показателя «Дата выпуска» возникает «Объект не удовлетворяет фильтрам реестра».

_images/error.PNG

Реестр из справочника

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

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

_images/from_the_directory.png

Далее, в качестве источника нужно поставить показатель «Название» - в этом столбце выведутся названия всех уже существующих в системе элементов этого справочника и сюда же можно будет добавлять новые. В остальных столбцах должны быть показатели-источники, которые необходимо определить для элементов справочника.

Все созданные через реестр элементы справочника будут отображаться при просмотре справочника по клику по его названию в списке всех простых справочников (меню «Справочники - Простые справочники»).

Настройки реестра

По кнопке «Настройки» в верхней панели меню открывается окошко, в котором можно проставить некоторые настройки для реестров:

  • Выбор параметров до открытия отчета - перед открытием реестра на экран будет выводиться всплывающее окно, в котором можно будет задать параметры реестра, что позволит сразу загружать реестр с необходимыми параметрами, а не ждать сначала загрузки реестра с параметрами по умолчанию.
  • Ссылка (можно использовать {id}) - в данном поле можно указать ссылку на систему (без основного адреса системы), по которой будет осуществляться переход с каждой строчки реестра в режиме просмотра. Если в фигурных скобках указать «id», то вместо {id} будет подставляться id элемента реестра, со строки которого произошел переход. Например, так выглядит ссылка на картотеку из реестра по справочнику, на основе которого создана картотека: /cards/kfh/#{id}
  • История изменений -
  • Итоговая строка - при включении этой настройки в реестре сразу под заголовками отображается дополнительная нередактируемая строка, в которой автоматически суммируются все числовые значения реестра. Суммарное значение меняется в зависимости от параметров реестра и примененных фильтров. Данная строка не учитывается в количестве строк реестра, отображается на каждой странице реестра и отображается как в режим просмотра, так и в режиме редактирования реестра.
  • Скрывать фильтры (при редактировании) - реестр с включенной данной настройкой показывается в режиме редактирования без фильтров, обычно расположенных под заголовками. Данная настройка удобна в определенных случаях - например, для реестров, используемых для ввода данных.

Предварительный просмотр реестра

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

Нажмите кнопку «Обновить», размещенную в области предпросмотра в правой части экрана.

_images/a31.png

В области предпросмотра можно изменять ширину столбцов реестра, высоту заголовков столбцов. Для этого необходимо, зажав левую кнопку мыши на границе заголовка, потащить курсор в нужную сторону. По нажатию на заголовок столбца можно выбрать, по какому из столбцов и как (по возрастанию или убыванию) будет происходить сортировка строк реестра. Заданные здесь, в конструкторе, параметры ширины столбцов, высоты заголовков, сортировки строк будут считаться параметрами «по умолчанию» для просмотра реестра, и все пользователи при первом открытии отчета будут видеть именно их.

Рядом с кнопкой «Обновить» есть чек-бокс «Обновлять автоматически». Если включить его, реестр будет автоматически перестраиваться после каждого изменения его структуры. Этот вариант не рекомендуется при построении больших реестров.

Если при построении структуры реестра была допущена какая-либо ошибка, то вместо табличного представления по нажатию на кнопку «Обновить» на экран будет выведена информация об ошибке.

Сохранение, удаление реестра

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

Если необходимо удалить реестр, то нужно в конструкторе в правом верхнем углу нажать на кнопку «Удалить»

_images/a143-5.png

Это действие требует подтверждения во всплывающем окне.

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