This is documentation for Caché & Ensemble.

For information on converting to InterSystems IRIS, see the InterSystems IRIS Adoption Guide and the InterSystems IRIS In-Place Conversion Guide, both available on the WRC Distributions page (login required).

Home > Class Reference > ENSLIB namespace > EnsLib.Workflow.RoleMembership


persistent class EnsLib.Workflow.RoleMembership extends %Library.Persistent, %XML.Adaptor

SQL Table Name: EnsLib_Workflow.RoleMembership

Manages the many-to-many relationship of workflow Users and Roles. Each instance represents the association of a specific User with a specific Role.

Property Inventory


parameter XMLNAME = member;
Inherited description: This parameter provides the default XMLNAME for the class. If it is empty then the class name will be used to construct a default XML name. The default XMLNAME is used as the top level tag when exporting objects and the export context did not provide an XML container name.


property Ranking as %Integer (MINVAL = 1, XMLNAME = "ranking", XMLPROJECTION = "attribute");
Defines a ranking value (1 is highest ranking) for members of a Role. The Workflow Engine uses this value to help with task distribution.
Property methods: RankingDisplayToLogical(), RankingGet(), RankingGetStored(), RankingIsValid(), RankingLogicalToDisplay(), RankingNormalize(), RankingSet(), RankingXSDToLogical()
property Role as RoleDefinition (XMLNAME = "roleName", XMLPROJECTION = "attribute", XMLREFERENCE = "ID") [ SqlFieldName = RoleName , Required ];
Role involved in the relationship.
Property methods: RoleGet(), RoleGetObject(), RoleGetObjectId(), RoleGetStored(), RoleGetSwizzled(), RoleIsValid(), RoleKeyCheck(), RoleKeyDelete(), RoleKeySQLFKeyExists(), RoleKeySQLFKeyRefAction(), RoleKeyUpdate(), RoleNewObject(), RoleSet(), RoleSetObject(), RoleSetObjectId(), RoleUnSwizzle()
property Title as %String (MAXLEN = 128, XMLNAME = "title", XMLPROJECTION = "attribute");
(Optional) Defines a title for a given user within a role.
For example, a role member could be designated as the "Manager" of the role. A Workflow can make use of this designation when distributing tasks.
Property methods: TitleDisplayToLogical(), TitleGet(), TitleGetStored(), TitleIsValid(), TitleLogicalToDisplay(), TitleLogicalToOdbc(), TitleNormalize(), TitleSet()
property User as UserDefinition (XMLNAME = "userName", XMLPROJECTION = "attribute", XMLREFERENCE = "ID") [ SqlFieldName = UserName , Required ];
User that belongs to the associated Role.
Property methods: UserGet(), UserGetObject(), UserGetObjectId(), UserGetStored(), UserGetSwizzled(), UserIsValid(), UserKeyCheck(), UserKeyDelete(), UserKeySQLFKeyExists(), UserKeySQLFKeyRefAction(), UserKeyUpdate(), UserNewObject(), UserSet(), UserSetObject(), UserSetObjectId(), UserUnSwizzle()


index (ID on Role,User) [IdKey, Type = key];
Index methods: IDCheck(), IDDelete(), IDExists(), IDOpen(), IDSQLCheckUnique(), IDSQLExists(), IDSQLFindPKeyByConstraint(), IDSQLFindRowIDByConstraint()

Foreign Keys

foreignkey (Role) references EnsLib.Workflow.RoleDefinition (ID) [OnDelete=cascade, OnUpdate=noaction];
foreignkey (User) references EnsLib.Workflow.UserDefinition (ID) [OnDelete=cascade, OnUpdate=noaction];

Inherited Members

Inherited Methods


Storage Model: CacheStorage (EnsLib.Workflow.RoleMembership)