- Do not make any changes to existing functions (either incremental or decremental changes) during migration. If you need to implement any important improvements, please follow the guidelines below:
- Go through the development cycle stages (including testing)
- Or implement these improvements after the migration is complete.
- Configuration migration is done with the Configuration Packs. To simplify this process, merge some packs before exporting. To make sure that you are importing only the actual versions, create snapshots of each application you import using the instructions below:
- Create a local pack for an application to migrate. For example, a local pack for the Simple Application tables snapshot may be named as a [SA] - Snapshot diff
- Set this local pack as current.
Navigate to System Settings → Server Scripts and run the script below to create snapshots of all versioned tables:
Table Shapshot Scriptconst table = new SimpleRecord('sys_db_table'); table.addQuery('is_vcs_enabled', true); table.addQuery('sys_id', '!=', '999999999999999998'); // exclude REM table.selectAttributes('name'); table.query(); while (table.next()) { const vcs = new SimpleVcs(); const versionCount = vcs.createTableSnapshot(table.name); if (versionCount > 0) { ss.info(`${table.name.padStart(80, " ")}: ${versionCount} versions created`); } }
If you are transferring a limited application set and some applications are not included, please pay attention to the analysis of such applications. For example:
It may contain roles used within ACLs of the migrated applications. In this case, the access restrictions will not work properly.
- Also, do not forget to import the related records of the following tables:
Table system name | Table title | Description |
---|---|---|
sys_search_index | Search Index | Stores search indices. You cannot create, edit, or delete records in the Search Index (sys_search_index) table. Only users with the admin role can read them. |
sys_activity_feed_item | Activity Feed Item | Stores record field changes recorded by Activity Feed. You cannot create, edit, or delete records in the Activity Feed Item (sys_activity_feed_item) table. Only users with the admin role can read them. |
sys_history | History | Stores field changes history. You cannot create, edit, or delete records in the History (sys_history) table. Only users with the admin role can read them. |
sys_activity_stream_field | Activity Stream Field | Stores record field changes recorded by Activity Stream Widget. You cannot create, edit, or delete records in the Activity Feed Field (sys_activity_feed_field) table. Only users with the admin role can read them. |
sys_email | Emails | Stores Incoming and Outgoing Emails. |
4. Most users have their own interface usage patterns. Include the tables below into your migration process so as not to disrupt them:
Table system name | Table title | Description |
---|---|---|
sys_menu_favorite | Menu Favorite | Stores user favorites. |
sys_filter | Filter | Stores user Filters. |
sys_user_preference | User Preference | Stores User Preferences. |
5. Performing user migration in a complex way, keep in mind that you also need to import roles and group objects.
Table system name | Table title | Description |
---|---|---|
user | Users | Stores instance Users list and related information. |
employee | Employees | Stores Employees list and related information. |
sys_role | Roles | Stores available Roles list. |
sys_role_contains | Role Contains | M2M table, stores relationships between parent and child roles. |
sys_group | Groups | Stores available Groups list. |
sys_group_contains | Group Contains | M2M table, stores relationships between parent and child groups. |
sys_user_has_role | User has Role | M2M table, stores relationships between users and roles they are granted. |
sys_user_group | User Group | M2M table, stores relationships between users and groups they are granted. |
sys_user_criteria | User Criteria | Stores User Criteria list. |
- Do not make any changes to existing functions (either incremental or decremental changes) during migration. If you need to implement any important improvements, please follow the guidelines below:
- Go through the development cycle stages (including testing)
- Or implement these improvements after the migration is complete.
- Configuration migration is done with the Configuration Packs. To simplify this process, merge some packs before exporting. To make sure that you importing only actual versions, create snapshots of each application you import using the instruction below:
- Create a local pack for an application to migrate. For example, a local pack for the Simple Application tables snapshot may be named as a [SA] - Snapshot diff
- Set this local pack as current.
Navigate to System Settings → Server Scripts and run the script below to create snapshots of all versioned tables:
Table Shapshot Scriptconst table = new SimpleRecord('sys_db_table'); table.addQuery('is_vcs_enabled', true); table.addQuery('sys_id', '!=', '999999999999999998'); // exclude REM table.selectAttributes('name'); table.query(); while (table.next()) { const vcs = new SimpleVcs(); const versionCount = vcs.createTableSnapshot(table.name); if (versionCount > 0) { ss.info(`${table.name.padStart(80, " ")}: ${versionCount} versions created`); } }
If you are transferring a limited application set and some applications are not included, please pay attention to the analysis of such applications. For example:
It may contain roles used within ACLs of the migrated applications. In this case, access restrictions will not work properly.
- Also, do not forget to import the related records of the following tables:
Table system name | Table title | Description |
---|---|---|
sys_search_index | Search Indices | Stores search indices. |
sys_activity_feed_item | Activity Feed Items | Stores record field changes recorded by Activity Feed. |
sys_history | History | Stores field changes history. |
sys_activity_stream_field | Activity Stream Fields | Stores record field changes recorded by Activity Stream Widget. |
sys_email | Emails | Stores Incoming and Outgoing Emails. |
4. Most users have their own interface usage patterns. Include the tables below into your migration process so as not to disrupt them:
Table system name | Table title | Description |
---|---|---|
sys_menu_favorite | Menu Favorite | Stores user favorites. |
sys_filter | Filter | Stores user Filters. |
sys_user_preference | User Preference | Stores User Preferences. |
5. Performing user migration in a complex way, keep in mind that you also need to import roles and group objects.
Table system name | Table title | Description |
---|---|---|
user | Users | Stores instance Users list and related information. |
employee | Employees | Stores Employees list and related information. |
sys_role | Roles | Stores available Roles list. |
sys_role_contains | Role Contains | M2M table, stores relationships between parent and child roles. |
sys_group | Groups | Stores available Groups list. |
sys_group_contains | Group Contains | M2M table, stores relationships between parent and child groups. |
sys_user_has_role | User has Role | M2M table, stores relationships between users and roles they are granted. |
sys_user_group | User Group | M2M table, stores relationships between users and groups they are granted. |
sys_user_criteria | User Criteria | Stores User Criteria list. |
- No labels