Hey @Shobana
I can think of a few ways to achieve this. Each solution has it pros/cons.
Solution 1
Create a new screen. For example C_[ROLE_NAME]_TASK (replace [ROLE_NAME] with the actual name you wish)
In the new screen you can hide/remove the ‘New’ button (or other fields/controls), so users will not be able to add new records.
Then in the role screen assign the new screen to that role, under the ‘Screens’ tab.
Pros - Easy to configure. Cons - Any change to the screen will require updating 2 (or more?) screens.
Solution 2
Create a client script. Pseudo-code will be something like the following
var currentUser = getuser()
var role = currentUser.role
if(role == [ROLE_NAME])
setControlEnabled('New Button', false)
Assign the script to the screen load event.
Pros - Easy to maintain. Cons - Can be complicated code if the logic is not straight forward. i.e. based on role.
Let me know if that helps or you might have more/other concerns.
Cheers!