Company projects and active projects
The IBM TRIRIGA Application Platform comes with one standard triCapitalProject record that has the name Company Level. There are a few things about the Company Level project that make it special.
- You may not edit or delete the Company Level project.
- Users are not denied access to a record because the record is associated with the Company Level project.
- A user must have at least one projects license to change their active triCapitalProject.
When a user signs on to the IBM TRIRIGA Application Platform, the user's session with the platform is associated with a triCapitalProject record. This triCapitalProject record is referred to as the active project. The name of the active project is shown above the menu bar.
When a user clicks the Find Project icon, if the user has permission to change the active project to a triCapitalProject record other than Company Level, a list of other triCapitalProject records pops up. The current project can be changed to one of those capital project records. To change the appearance of the list of capital projects that is popped up, update the query named Portal Project Search in the Report Manager.
Clicking the Company button sets the current project to the Company Level project.
When a user signs out, the system saves their active project. The next time that user signs in, the user starts in that project.
When projects are displayed in a grid in the user's portal, the user can change the active project by clicking the project switching icon to the left of the project name. The project switching icon is only available when the record corresponds to a capital project record and the user is granted project security privileges.
When the user clicks the project switching icon for a record in a non-default project, the user's active project is switched to that record's project. When the user clicks the project switching icon for a record in a default project, the user's active project is switched to the Company Level, if not already there. If a user's project is changed, the current project name at the top of the home portal is updated and the portal is refreshed.
The active project is significant in two ways.
- Every record has an internal association with a triCapitalProject record. When a user interactively creates a record, it is internally associated with a triCapitalProject record. When a workflow creates a record, the workflow can either explicitly specify a triCapitalProject record for the new record or use the triCapitalProject record that is active for the current user.
- The data that is returned by reports and queries can be limited to the active project. To restrict the data that is returned by reports and queries to only projects to which a user has security access, set the USE_PROJECT_SECURITY property in the TRIRIGAWEB.properties file to Y. For information about the properties files, see the IBM TRIRIGA Application Platform: Installation and Implementation Guide.
When a user creates a new record, the Capital Project that is associated with that record depends on the following factors:
- The project for a top-level record is the user's current active project.
- If the record is a new child record and the Project Containment Disabled property in the association definition for the dependent business object is off (the default), the record's project is that of its parent record. If the Project Containment Disabled property is on (selected), the record's project is the user's current active project.
- The project for an existing record that is made to be the child of another record is the project of that other record.
A record is considered to be a child if one of the following is true:
- It is associated to a record via a dependent association.
- It is a hierarchical child through a platform hierarchy. An exception is the child of root, which is treated as a new record.
- It is a record in a dependent section.
When requests come to the server, the user's active project is relevant because the active project drives among other things what the project context is when synchronous workflows run. To have the user's current active project always be the active project no matter what, set the RECORD_PROJECT_CONTAINMENT property in the TRIRIGAWEB.properties file to N. For information about the properties files, see the IBM TRIRIGA Application Platform: Installation and Implementation Guide.
When using projects, be aware that when a user has access to multiple projects, that user may create records that should be part of one project while in a different project. This can result in the wrong users having access to the records, or in users who need access being denied it.