Неправильная логика бизнес процесса

Добрый день!

У меня есть задача по фильтрации записей раздела в зависимости от пользователя. А если быть точнее, то для консультанта нужно отфильтровать раздел "Контакты" так, чтобы отображались только те записи, в которых он является ответственным лицом. Также мне подсказали, что это можно реализовать через БП, который будет вызывать подпроцесс, который в свою очередь будет раздавать каждой записи, соответствующей всем условиям, права для отображения в разделе. 

К сожалению, в версии 7.13.2 я не обнаружил возможности передать коллекцию записей в подпроцесс. Но нашел "обходной" вариант, описанный в данной статье: https://community.terrasoft.ru/questions/perebor-rezultiruyuschey-kollekcii-elementa-chitat-dannye.

Изображение удалено.

Изображение удалено.

Изображение удалено.

Изображение удалено.

Изображение удалено.

Моя реализация, за небольшим исключением, почти полностью повторяет процесс из статьи. В самом конце я хочу передать в элемент "Изменить права доступа" параметр каждой записи и оставить право на просмотр только ответственному консультанту. БП работает без поломок, но ожидаемого результата нет. Подскажите, пожалуйста, в чем ошибка?

Нравится

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

Добрый день!

Не совсем понятно, зачем в этом процессе использовать дополнительный код в сценарии C#. Вы можете указать условия фильтрации записей раздела Контакты прямо в элементе "Изменить права доступа". Добавьте там условие "Ответственный = Консультант" вместо фильтрации по Id и это будет работать точно так же для всех необходимых записей.

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