Since I got the new updated Outsystems (2 days ago), I'm unable to fetch the condition to check the role. If I try to check the custom roles in the IF widget condition, it says that it's unable to locate the role in expression even when the role is reflecting in the Roles folder of logic tab. Below is the attached screenshot of the error.
Any suggestion would be really appreciated!
Hello,
I have updated your Oml now its working You can check It
Link-https://personal-ejuytnht.outsystemscloud.com/ELearningZone/Home?_ts=637928721539060548
hope it will help you now
Thanks
Hi @KUNAL DHOBLE ,
Are you developing a reactive or a traditional web app? If you're developing a reactive app, you can't use roles directly in an if widget.
Cheers
Hello @KUNAL DHOBLEYou cant call it Directly on screen Since Server connection is built when you check role
Add a data action on your screen and in that action you can pass your role action
add a output parameter(boolean type) on your data action, then use that output parameter in your if widget to check your condition
Check Attached Oml
Hi Tousif,
Hope you're doing well!
First of all thank you for that OML because I was unaware that even we can use the role directly in the flow. But what I'm trying to do is that set the visibility of the button, if user has INSTRUTOR role he should have access to add button but if user has LEARNER role the button should not be visible. I have tried directly changing the visibility condition to check role as well as apply IF widget to button and assign CHECKLEARNERROLE() condition but none of those are working. Can you suggest me any other way how it can be achieved?
Cheers,
Kunal
May be you are doing something wrong, can you share oml or demo, so that i can check
When you log in from Instructor role and on data action you are calling check instructor roleso your data action will return True and Your CheckInstructorRole boolean variable value will be True,
Now on Your visibility property your condition will be like CheckInstructorRole.HasRole
I hope this is what you wanted
Hi @KUNAL DHOBLE
To get the desired output try following these steps,
Step1: Put Check Learner Role action in the Data action of the screen and assign the output of that action to the data action output parameter (Ex:hasLearnerRole).
Step2: Now try using that output parameter in the screen either by validating in If condition or directly applying that data action output parameter to the visibility property of the button.
Hope this helps!
Regards,Saravanan Santhanam.
Hi,
I had attached the OML with this reply. I have 'Home' screen in which on the right top corner I have a button named 'Add Course'. In roles of logic tab, I had created two custom roles Learner and Instructor. I have a scenario where only Instructor should be able to add the course and the same button should not be visible for the learner. I have tried directly changing the visibility condition to check role as well as apply IF widget to button and assign CHECKLEARNERROLE() condition but none of those are working. Can you please check the OML and suggest me how this can be achieved?
Thanks for your time and help. Issue resolved!
You're welcome, @KUNAL .
Glad to help you :)
Kind regards,
Tousif khan
Hello Kundan, As Tousif suggested, if it's a reactive application you need to add getAction as seen below in image for your reference.