Версия платформы: 7.2
При создании RLS правила для SearchFolder не дает пользователю изменять созданные им же Папки поиска, в частности - изменить родителя.
Ругается “…even though there are active READ/ALL constraints for the property: parent”
Подскажите пожалуйста, в какую сторону еще капнуть?
Здравствуйте!
К сожалению, проблему воспроизвести не удалось. Было бы проще помочь Вам разобраться, если бы Вы прислали небольшой тестовый проект с описанием воспроизведения ошибки.
Также могу порекомендовать проверить добавленные разрешения для роли: все ли атрибуты сущности sys_SearchPanel доступны для модифицирования (указаны как Modify).
С уважением,
Надежда.
Здравствуйте, Надежда.
Разрешения для роли проверили, вроде все есть.
На сколько удалось разобраться, такая ситуация возникает, если, например, загрузить данные в экран через сервис (переопределив dataloader) и попробовать изменить/удалить полученную запись. При этом, если для сущности есть правила row-level-security (в группе), то оно ругается на отсутствие дескриптора безопасности (какое-то служебное поле в базовом классе сущности __securityToken, или что-то такое).
К сожалению проект в закрытом контуре, но если получится смоделировать на тестовом проекте - обязательно пришлю.
Если самостоятельно загружаете данные, возможно, проблема во View
с которым идет загрузка.
Мы пару раз сталкивались с такой ошибкой.
В нашем случае оба раза проблема была в избыточной вьюшке для ссылочных атрибутов.
Например, экран редактирования Счета.
Во View
Счета добавлен для загрузки ссылочный атрибут Договор и при этом на нем указана вьюшка, читающая, в том числе обратную ссылку - связанный Договором Счет.
Получаем циклическое перечитывание сущности, которая редактируется на этом экране, при создании Счета, связанного с Договором.
Это направление тоже смотрели, тем более что в нашей модели есть ссылка на “себя” (parent) для организации древовидной структуры. И в большинстве случаев именно этот атрибут в ошибке и упоминается. Но он у нас с _MINIMAL загружается во всех вьюшках.