Справочники 1. Секционные
В настоящий момент справочник используется для ограничения пользователя. При этом пользователь вправе выбрать любое значение из справочника. Предлагаю реализовать возможность ограничить пользователя только некоторыми значениями (из указанной секции).
Пример: В организации ведётся справочник исполнителей. Этот справочник используется уже давно и часть записей уже не актуальна (увольнение, смерть исполнителя), но должна оставаться неизменной для архива. При вводе значения из справочника, пользователь должен быть ограничен только актуальными записями, а при просмотре - без ограничений - все записи.
Для этого в справочнике должно быть 3 поля: 1 - ID, 2 - ФИО исполнителя, 3 - категория (секция). При настройке связи поля со справочником должно указываться поле и значение категории. Пользователь может выбирать из записей с указанным значением категории.
Сервис поддержки клиентов работает на платформе UserEcho
Ещё пример: справочник пользователей с множеством полей под каждую категорию (руководство, допуск к грифованым документам, право подписи и т.д.). На время замещения руководителя, в данном справочнике в соответствующее поле вносится изменение и сразу его заместителя можно указывать как лицо утверждающее документ. После окончания срока замещения, поле очищается, и его нельзя указывать как утверждающее лицо, но для уже утверждённых указана истинная информация
Сейчас это можно сделать, присоединив в качестве справочника вьюху над основной таблицей.
Теоретически,в ингео можно ввести возможность присоединять в качестве справочника результат SQL-запроса, чтобы не лазать в СУБД.
Предложенный вариант условно можно назвать решением и вот по чему:
Работа со справочниками в ИнГЕО:
1. Отобразить значение из справочника
2. Выбрать значение из справочника
3. Редактировать справочник
4. Экспорт/импорт справочника
Если использовать View, тогда функции 3 и 4 будут давать сбой.
Ещё возможны проблемы в будущем, при революционном скачке версий, который может потянуть за собой изменине структуры данных.
А сторонние разработчики как узнают - что справочник не таблица а вьюшка? Вдруг их продукт предполагает дополнять справочник?
Думаю что View не следует сбрасывать со счетов, но оптимальнее чтобы это реализовывалось из ИнГЕО и сопросождалось во всех новых версиях.
Кстати, в MSSQL на вьюху можно повесить триггер "Instead of insert" и в нём корректно произвести вставку. Но, конечно, если экпортнуть, а потом импортнуть такой справочник, то на целевой базе создастся уже таблица.