Show Options in Actions Tab based on User Attributes

We would like to show the various options in Actions Tab ,if and only if, a particular attribute is defined for the user. Currently users are able to launch the Action process models without this attribute defined ,which results in lot of alerts getting generated. We can change each of the process models to do a validation ,but would like to know whether there is a better approach to implement this feature.

OriginalPostID-167622

OriginalPostID-167622

  Discussion posts and replies are publicly visible

  • A couple of things you could think about here. You could create a group with membership rules which I believe can access the attribute you are referring to. Then use process security to grant members of the group to start the process. Or you could also set it at an application level if you wanted to.

    Another approach is to validate if the user has permission and if they don't show them a task saying they don't have permission to run the process and use and exception timer to kill the process after a couple of minutes. That prevents your error and lets them know why they can't access the action and should stop them try and trying again.
  • Hi Joe,Thanks for quick response ; the attributes are defined in an external database. I think we cannot access this from "Rules" tab in group. Second approach is to modify each process model to include the validation ; that means for all process models defined in actions we have to include this validation isn't? I am looking for a generic solutions which will take care of current PM as well as future PM added to Actions.
  • Typically Action visibility can be controlled by setting user/group permissions on process models. In this case I think it will be hard to avoid an extra validation step however since you have stored the attributes externally.
  • Another option would be to create a process that runs intermittently baesd on a start event timer that calls the external DB and updates Appian groups - to keep a set of groups within Appian populated based on DB rules, then assign those groups permissions to the process model.