Manage an existing additional feature
This article covers the behavior of additional features relevant to Creatio 8.0.2 Atlas and later. Instructions for an earlier Creatio version: Feature Toggle mechanism.
Feature toggle is a software development technique that lets you manage the status of additional features in a live application. Learn more: Wikipedia. The Feature toggling Creatio page implements the feature toggle functionality.
Feature toggle lets you use continuous integration while preserving the working capacity of the application and hiding features you are still developing. Instructions: Implement a custom additional feature.
Store the details of an additional feature
Creatio stores the details of an additional feature in the following database tables:
[Feature]
. Stores the list of features you can toggle. Empty by default.[AdminUnitFeatureState]
(the[FeatureState]
column). Stores the status of an additional feature (turned on/off). The[AdminUnitFeatureState]
table connects the[Feature]
and[SysAdminUnit]
database tables.[SysAdminUnit]
is the status of an additional feature for Creatio users and user groups.
View the relationship chart between tables that store the details of an additional feature in the figure below.
Primary columns of the database tables that store the details of an additional feature
Column | Type | Description |
---|---|---|
| ||
|
| The unique ID of the record. |
|
| The name of the additional feature. By default, matches the |
|
| The code of the additional feature. |
|
| The default status of the additional feature ( |
| ||
|
| The unique ID of the record. |
|
| The unique ID of the record from the |
|
| The unique ID of the user record. |
|
| The status of the additional feature ( |
Open the Feature toggling page
To open the Feature toggling page, use the [Creatio URL]/0/Shell#Section/AppFeature_ListPage
link. For example, http://my.creatio.com/0/Shell#Section/AppFeature_ListPage
. As a result, the browser will open the Feature toggling page.
The Feature toggling page displays the following data:
- code of the additional feature (the Code column)
- status of the additional feature for all users (the Is enabled column)
- status of the additional feature for the current user (the Is enabled for current user column)
- source of the additional feature (the Source column)
- description of the additional feature (the Description column)
The source of the additional feature (the Source column) can have the following types:
DbFeatureProvider
. Records of the[Feature]
database table.web.config
. Boolean key values from the<appSettings>
section of theWeb.config
file in Creatio root directory.Metadata
. Additional features registered in the source code using the class that inherits fromFeatureMetadata
.GlobalAppSettings
. Boolean properties of theTerrasoft.Core.GlobalAppSettings
class. Learn more: .NET class library.
The types of additional feature source are sorted by priority in descending order.
The rules that determine the status of the additional feature are as follows:
- If an additional feature is not registered in Creatio, it is disabled.
- If the status of an additional feature is specified in multiple sources, the resulting status is based on the source priority. Back-end changes to the status do not require you to refresh the browser page. Refresh the page to apply the front-end changes to the status.
View the examples of the additional feature status (true
: turned on, false
: turned off) determined based on multiple sources below.
Examples that define the status of the additional feature
Feature source | Resulting feature status | ||
---|---|---|---|
|
|
| |
|
|
|
|
|
|
|
|
Not available |
|
|
|
Not available |
|
|
|
Manage the status of an additional feature
Changes to the status of an additional feature can affect Creatio operability. We recommend changing the feature status only if the support team approves it or you need to test a custom feature.
You can manage the status of an additional feature in multiple ways:
- for a Creatio user group
- for all Creatio users
Since version 8.0.2 Atlas, Creatio lets you manage the status of an additional feature using the WorkspaceConsole utility. Instructions: Delivery in WorkspaceConsole.
Change the status of an additional feature for user groups
Since version 8.0.2 Atlas, Creatio lets you change the status of an additional feature for user groups.
To change the status of an additional feature for user groups:
-
Open the Feature toggling page. Instructions: Open the Feature toggling page.
-
Open the page of the additional feature whose status to change for the user group.
-
If needed, add the user group to the Feature status for the system administration object expanded list.
- Click the button on the Feature status for the system administration object expanded list.
- Select the corresponding user group in the Admin unit field.
-
Open the user group page.
-
Select or clear the Feature state checkbox.
-
Save the changes.
-
Refresh the page of the additional feature to apply the changes.
If the additional feature is turned on for all users and turned off for a user group, Creatio turns it off only for the user group.
Change the status of an additional feature for all users
- Open the Feature toggling page. Instructions: Open the Feature toggling page.
- Open the page of the additional feature whose status to change for all users.
- Select or clear the Is enabled checkbox.
- Save the changes.
See also
Manage an existing additional feature
Implement a custom additional feature
Resources
.NET classes reference (UserConnection class description)
Wikipedia (feature toggle definition)
.NET classes reference (description of the Terrasoft.Core.GlobalAppSettings)