Универсальная функция фильтрации справочника с возможностью повторного выбора реквизитов фильтрации

13 0

На любом предприятии периодически возникает необходимость в фильтрации нужного справочника по определенным реквизитам и стандартные функции DIRECTUM успешно могут справиться с данной задачей. Но на нашем предприятии возникла расширенная постановка данной задачи – реализовать фильтрацию справочника по определенным реквизитам с возможностью изменить значения реквизитов фильтрации, заданных по умолчанию, самим пользователем. Для решения данной задачи нами была разработана соответствующая функция UniversalFiltrateReference.zip (6,42 Кб) (группа функций "Работа со справочниками").

Версия: DIRECTUM 4.6.1

Описание функции: открывает список записей любого справочника с фильтрацией по любым указанным реквизитам. В режиме выбора при закрытии справочника возможен повторный вывод реквизитов фильтрации.

Описание параметров функции:

RefType – Код аналитики.

RequisitesArray – Список реквизитов фильтрации.

ShowFirsDialog – Показывать диалог реквизитов фильтрации при первом открытии. По умолчанию False.

ViewMode – По умолчанию справочник открывается в режиме просмотра. Для открытия справочника в режиме выбора необходимо указать "Выбор".

ViewName – Имя представления. Если пустое, то будет использоваться представление по-умолчанию.

StrAddWhere – Дополнительный отбор.

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

UniversalFiltrateReference(

"РАБ";ArrayOf(ArrayOf('Подразделение';'Аналитика:ПОД';;True;"11064"));False;"Выбор";;)

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

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

Пока комментариев нет.

Авторизуйтесь, чтобы написать комментарий