Установить веб-панель по умолчанию для каждой роли в Genexus

Что я хочу сделать, так это определить ограничение доступа для некоторых пользователей с определенными ролями, что я сделал с помощью разрешений. После успешного входа в систему мне нужно показать конкретную веб-панель пользователю, у которого есть определенная роль, другими словами, мне нужно установить домашнюю страницу для роли пользователя.

Пример:

В моем проекте есть два типа пользователей: продавец и покупатель. и каждый из них имеет определенные роли и разрешения.

После входа в систему Продавца мы хотим показать ему информацию о его учетной записи, а в случае входа клиента мы хотим показать ему категории и товары для совершения покупки.

Я попытался определить домашний объект через приложение GAM, но он все еще не работает.

1 ответ

Решение

Если вы используете GAM, в веб-панели входа в систему после аутентификации вы можете использовать что-то вроде этого:

&URL = GAMRepository.GetLastErrorsURL ()

// Если & URL.IsEmpty ()

// GAMRepository.ApplicationGoHome(GAMInternalGUIDs.AppGAMUserBackend)

// Остальное

// Ссылка (&URL)

делать дело

case GamUser.CheckRoleByExternalId(!"is_seller")

    SellerHome.Link()

case GamUser.CheckRoleByExternalId(!"is_customer")

    CustomerHome.Link()

case GamUser.CheckRoleByExternalId(!"is_gam_administrator")

    GamHome.Link()

otherwise

    Home.Link()

конец

// ʻEndif

В ролях вы должны установить внешний код "is_seller" для продавца и т. Д.

Удачи.

Другие вопросы по тегам