Application-extending for new user population
The following two methods allow you to add a new and distinct set of users to an existing production application.
- Extend the application within the existing database
- Extend the application by deploying to a new database
Method 1: Extend the application within the existing database
To support a new user population within an existing database, run the New Application wizard to generate an application that extends the classes of the existing application’s case types. Then use the ruleset override pattern to specialize the existing application.
By using this specialization, a new class group is created for the new user population, plus case data will be stored in separate tables.
Suppose there is a requirement for a new user population to handle Online Streaming events. Create a new application, Online Streaming Event, by extending the Booking application.
Case Type | Class Name | Work table |
---|---|---|
Book Event | FSG-Booking-Work-BookEvent |
pegadata.pc_FSG_Booking_Work |
Online Streaming Event | FSG- OnlineSt -Work-BookEvent |
pegadata.pc_FSG_OnlineSt_Work |
Assignment and attachment instances cannot be separated into different tables based on application. We can leverage the below Organization properties to restrict access between these applications.
Application | Case | Assignment | Assignment |
---|---|---|---|
pyOwningOrganization | pyOrigOrg | pyOwnerOrg | pxAssignedOrg |
pyOwningDivision | pyOrigDivision | pyOwnerDivision | pxAssignedOrgDiv |
pyOwningUnit | pyOrigOrgUnit | pyOwnerOrgUnit | pxAssignedOrgUnit |
pyOrigUserDivision |
Suppose the new user population is associated with the new division and this new user population should not access any assignments created in the original division. The easiest solution is to implement a Read Access Policy in the Work- class that references the following Access Policy Condition.
AND pyOwnerOrg = Application.pyOwningOrganization
Method 2: Extend the application by deploying to a new database
Ruleset specialization within new applications built on the existing application would suffice to support a new user population, provided the new user population is hosted within a new database.
For example: Suppose there is a requirement for a new user population to handle Online Music events. Create a new application Online Music Event by extending the Booking application. Host that new Online Music events application within a new database.
Case Type | Class Name | Work table | Ruleset | Database |
---|---|---|---|---|
Online Music Event | FSG- OnlineMu -Work-BookEvent |
pegadata.pc_FSG_OnlineMu_Work |
OnlineMu | New |
Want to help us improve this content?