Skip to main content

 

 

 

 

Template:OutSystems/Documentation_KB/Breadcrumb_New_Layout

 

 

Template:OutSystems/OSLanguageSwitcher

 

 

 

OutSystems

Groups for case management apps

During the lifecycle of a case, several groups of users can interact with the case. You can define groups of users with the Case Management framework by using the GroupExtended entity.

The GroupExtended entity is an extension to the Group system entity that in conjunction with the CaseServices_API’s methods allows you to assign activities in your cases to specific groups of users and also manage case permissions around groups. The GroupExtended entity also allows you to define hierarchies between groups (using the ParentId attribute) and assign working days to a group of users (using CalendarId attribute to reference an existing calendar).

Set up the extended case management groups

Before you start make sure you set up your app to work with the Case Management framework.

Before using groups in your case management app, follow these steps:

  1. In the <app-name>_Configuration module, open Manage Dependencies, and add the GroupExtended_CreateOrUpdate action from the CaseConfigurations_API producer.

  2. In the Data tab, create a static entity and name it GroupExtendedConfiguration.

  3. Set the Public property to Yes.

  4. Delete the Label and Order attributes.

  5. Change data type of Id to Text.

  6. Add the following attributes:

    • Name, text data type with length set to 100. Set description as Name of the group in GroupExtended entity..

    • SystemName, text data type with length set to 100. Set description as Name of the group in the Group system entity..

    • Description, text data type with length set to 500. Set the description as Description of the group in Group entity and GroupExtended entity..
  7. In the Processes tab, add a new timer and name it Bootstrap_Groups.

  8. Set the Schedule property of the timer as When Published.

  9. In the Action property of the new timer, select New Server Action.

  10. In the action flow, add an aggregate that fetches all records in GroupExtendedConfiguration by dragging the GroupExtendedConfiguration static entity between the Start and End.

  11. After the aggregate created in the previous steps, add a For Each.

  12. Set the Record List of the For Each as GetGroupExtendedConfigurations.List (the output list of the aggregate).

  13. Add GroupExtended_CreateOrUpdate action next to the For Each.

  14. Connect the For Each to the GroupExtended_CreateOrUpdate, and then connect the GroupExtended_CreateOrUpdate to the For Each.

  15. Set the GroupExtendedRec of the GroupExtended_CreateOrUpdate as GetGroupExtendedConfigurations.List.Current.GroupExtendedConfiguration.

  16. Set the inputs of the action with the data from the aggregate:

    • Set Id as TextToIdentifier(Id).

    • Set IsActive as Is_Active.

    Ensure the following mapping is set:

    • Name = Name
    • SystemName = SystemName
    • Description = Description
  17. Publish the module by selecting 1-Click Publish.

Add a group to your case management app

After Set up the extended case management groups, add a group to your case management app by following these steps:

  1. In the <app-name>_Configuration module, add a record to the GroupExtendedConfiguration static entity.

  2. Set the Identifier attribute with text that represents the role.

  3. Generate a GUID and paste that GUID into the value field of the Id attribute of the record.

    A Globally Unique IDentifier, or GUID, is used as a unique identifier to ensure integrity across environments.
    You can use an online GUID generator to create a GUID for each record.

    Check the RFC 4122 for more information on GUIDs.

  4. Set the remaining attributes.

  5. Publish the module by selecting 1-Click Publish.

After these steps the new group is created in the Group and GroupExtended entities.

  • Was this article helpful?