Задача [0302]: Отображение полей без значения в списке записей реестра без возможности сортировки

Формулировка проблемы: при настройке реестра в качестве отображаемых полей можно указать компоненты формы, хранящие изменяемые данные (например, все текстовые компоненты, ссылки, объекты Synergy и т.п.), но отсутствует возможность отображения компонентов, не хранящих изменяемые данные (например, ссылка на документ или свойства документа).

Используется:

Решение: необходимо обновить список поддерживаемых компонентов в полях формы реестра, добавив возможность указания в качестве колонок компоненты формы «Ссылка на документ», «Свойства документа» и «Ссылка на файл в хранилище».

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

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

Сортировка отсутствует

Рисунок 181. Поля формы реестра

Поля формы реестра

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

Например, форматная строка состоит только из форматного параметра ${document.number}, а документ еще не зарегистрирован.

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

Например, выбран тип данных "Номер документа", а документ еще не зарегистрирован.

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

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

Действия при обновлении системы

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

Пример использования

Условие: наличие Методолога системы, Группы1 и Пользователя1, принадлежащего этой группе.

  1. Методолог создает Форму1 и добавляет компоненты «Однострочное поле» и «Свойства документа» с типом данных «Номер документа».

  2. Методолог создает Реестр1:

    • задает название и код реестра, а также название действия по документу реестра;

    • в качестве формы реестра выбирает Форму1;

    • в полях формы реестра включает отображение обоих компонентов «Однострочное поле» и «Свойства документа»;

    • выбрана сортировка по дате создания, при этом в сортировке по полю присутствует компонент «Однострочное поле», но отсутствует «Свойства документа»;

    • добавляет все права на реестр Группе1.

  3. Методолог открывает Реестр1 на редактирование и добавляет маршрут активации с этапом регистрации.

  4. Пользователь1 открывает модуль «Реестры» → Реестр1, создает 3 новые записи, в каждой из которых заполняет однострочное поле и нажимает на кнопку активации:

Значение компонента «Однострочное поле»

Запись №1

Текст 27

Запись №2

Текст 15

Запись №3

Текст 38

  1. После завершения всех трех маршрутов активации Пользователь1 снова открывает модуль «Реестры» → Реестр1.

  2. В списке 3 записи, которые отсортированы по дате создания:

Однострочное поле Свойства документа

Текст 27

05/29-11-2015

Текст 15

73/28-11-2015

Текст 38

21/30-11-2015

  1. Нажать по столбцу с однострочным полем — список отсортируется по возрастанию:

Однострочное поле↑ Свойства документа

Текст 15

73/28-11-2015

Текст 27

05/29-11-2015

Текст 38

21/30-11-2015

  1. Нажать еще раз столбцу с однострочным полем — список отсортируется по убыванию:

Однострочное поле↓ Свойства документа

Текст 38

21/30-11-2015

Текст 27

05/29-11-2015

Текст 15

73/28-11-2015

  1. Нажать по столбцу со свойством документа — сортировка не меняется:

Однострочное поле↓ Свойства документа

Текст 38

21/30-11-2015

Текст 27

05/29-11-2015

Текст 15

73/28-11-2015