Вопрос

Список не администрируемых колонок

Добрый всем день

Работаем над кастомным определением прав доступа (доступность полей в зависимости от роли по отношеню к контрагенту). Для этого в AccountLoaded проверяем у пользователя наличие роли по отношению к контрагенту (типа "индивидуальный менеджер", хранится в кастомном объекте, не суть), находим в VwSysEntitySchemaColumnRight доступные роли "индивидуальный менеджер"  поля Account, но они там хранятся только в виде SubjectColumnUId. Для самого же Account доступен список полей через Entity.GetColumnValueNames().

Возникло 2 вопроса:

1. Как эффективно получить список не администрируемых полей чтобы лишний раз их не проверять и не тащить методом исключения?

2. Как имея список SubjectColumnUId эффективно получить названия полей, чтобы скрыть те, на которые у роли нет прав? Через SysPackageSchemaDataColumn или как-то иначе?

 

Нравится

1 комментарий

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

Показать все комментарии