Freedom UI. Как реализовать фильтр для отображения записей в реестре раздела в зависимости от текущего пользователя?
Добрый день
Возникла необходимость реализовать фильтр отображения записей в реестре раздела основываясь на текущем пользователе, а именно:
В реестре должны выводится те записи, у которых CreatedBy.Account = CurrentUser.Account
То есть надо выводить только те записи в реестре, у которых в колонке Account связной по CreatedBy значение совпадает с Account у текущего пользователя, под которым мы зашли в систему
Пробовал это реализовать в клиентском модуле ListPage опираясь на пример https://community.creatio.com/questions/filtering-lookup-freedom-ui-hel…
Однако это не помогает
Ошибок нет, но и не работает
делал так:
handlers: /**SCHEMA_HANDLERS*/[
{
request: "crt.LoadDataRequest",
handler: async (request, next) => {
const sysValuesService = new sdk.SysValuesService();
const sysValues = await sysValuesService.loadSysValues();
let userAccountId = sysValues.userAccount.value;
let filters = new sdk.FilterGroup();
filters.addSchemaColumnFilterWithParameter(sdk.ComparisonType.Equal, "CreatedBy.Account", userAccountId);
request.parameters.push({
type: sdk.ModelParameterType.Filter,
value: filters
});
return await next?.handle(request);
}
}
]
И пробовал через json в методе.
Но ничего не помогает, может кто видит явную проблему и может подсказать как решить данную задачу? Буду очень признателен.
Нравится
Добрый день,
Тот подход, что описывал Раян в вопросе community https://community.creatio.com/questions/filtering-lookup-freedom-ui-hel… больше подходит к фильтрации справочных полей на странице и то его отработка будет иметь ряд ошибок на странице. Тут же нужно реализовать фильтр списка. Увы, примера такой логики у нас нет, но я попршу нашу команду разработки добавить такую возможность настройки динамических фильтров в продукт.
Oscar Dylan,
Здравствуйте
а можете словами описать как именно можно данный фильтр списка реализовать? можно ли это сделать в LoadDataRequest? Или как-то иначе?