TeamConnect Business Intelligence (Linux) Migration Process Guide
Prerequisites for Migration
To begin the migration process, ensure you have the following:
- Source Environment: A fully operational Sisense Windows server (the source server) hosting a functioning TeamConnect (TC) instance.
- Target Environment: A new Sisense Linux server (the target server), pre-configured with:
- All necessary plugins installed.
- Required configurations applied.
- Access Credentials: Credentials for:
- The database used for TeamConnect and report integration.
- A Sisense administrator account.
- TeamConnect administrative access.

Create and Build the ElastiCube (eCube) on Linux
This step creates the data model (ecube) on the new server. Without it, dashboards will not load correctly. Follow below steps to create and build ElasticCube (eCube) on Linux.
- Ensure Java is installed on the server.
- Open a terminal and run the following command to verify Java installation:
java -version

- Confirm the command returns the installed Java version.
- If Java 21 is not installed, install it by running the following command.
sudo dnf install java-21-openjdk
- Run the following command again to confirm Java 21 is installed:
java -version

- Verify all required files for the TCBI package installation are available and placed in the correct directory.

- Open the autoCube.properties file in a text editor. Specify values for the following properties, ensuring that all entries are case sensitive. After completing the updates, save the file and close it.
| Property | Description |
|---|---|
| database.hostname | Fully qualified domain name (FQDN) of the server hosting the database |
| database.portnumber | Database port number |
| database.dbname | Database SID or service name |
| database.dbtype | Database type (e.g., Oracle) |
| database.driverClassName | Database driver class name (e.g., oracle.jdbc.driver.OracleDriver) |
| database.connectionString | Connection string for Sisense (needed when using load balancing or clustering) |
| Database.jdbcDriverProperties | JDBC driver properties in key=value;key=value format (e.g., encrypt=false) |
| database.username | Database username |
| database.userpassword | Encrypted database password (encrypted using encrypt.jar) |
| sisense.cubename | Name of the ElastiCube (without .ecube extension) |
| sisense.serverName | Fully qualified domain name of the Sisense server |
| sisense.username | Sisense admin username |
| sisense.password | Encrypted admin password (encrypted using encrypt.jar, same as for teamconnect.properties) |
| sisense.pluginLocation | Plugin directory path (e.g., Linux: /opt/sisense/storage/plugins/). AutoCube copies JSON to translations/ automatically. If left blank, JSON won't be copied. |
| enable.fail.email.notification | YES to enable email notifications for failed builds; NO otherwise |
| enable.success.email.notification | YES to enable email notifications for successful builds; NO otherwise |
| email.recipient | Recipient email(s). For multiple recipients, separate with commas |
| email.sender | Valid sender email address |
| email.server | Email server IP address |
| email.report.subject | Subject line for email notifications |
| email.report.body | Body text for email notifications |
- After configuring the autocube.properties file, proceed to run the schema sync.
sh TCBI_SchemaSync.sh
- If email notifications are configured, check your inbox for a success/failure notification. Review logs in the autoCube_logs folder to confirm execution details and troubleshoot failures.
- If you receive an error indicating the .json file was not copied automatically, manually move the generated .json file to the translations folder.
Eg. /opt/Sisense/storage/plugins/metadata/translations/
Configure report integration
This document assumes that users already have a previous integration configured and that both Sisense servers use the same password.
Create the Admin group in New Sisense (Linux)
- Log in to the Sisense server using an admin account. Navigate to the Admin page, click on Groups in the left pane, and then click on + Add Group button.


- Enter a group name that matches the existing group name. Add the admin user to the group.

- After the eCube build is complete and the group is created, share the eCube with the group.
- Go to the Data tab. Locate the eCube, click the three dots (⋯) next to it, and select Share.
- In the Share pop-up, select the group. Grant access permissions for the selected group (allow the group to use/access the eCube).

Install/Update the Report Integration package (Linux)
- Identify the available updates for Report Integration. Use the available updates to update the report integration files.
- For Linux, install TCBI Report Integration Version 7.0.2.

Updating Report Integration settings
- Log in to the TeamConnect instance. Navigate to Tools and click on Report Integration Settings.

- Enter the required values for the report integration configuration.
- Provide the Shared Secret value, Password, and Update the Group ID value in the database.

How to get a Shared Secret?
- Log in to the Sisense server and navigate to the SSO Settings page.
- Locate the Shared Secret field and copy its value.
- Use this value when configuring the Report Integration Settings in TeamConnect.

How to Get the Admin Group Id?
Log in to the Sisense server.
- Navigate to the Admin tab.
- In the left navigation pane, select REST API, then choose API version 0.9.
- Locate the GET /groups/{group} endpoint and click Try it out.

- Enter the group name and click Execute. In the response body, identify the GroupId value.

Update the AdminGroupId in the Database
To update the AdminGroupId value in the database, perform the following steps:
- Log in to the database using an account with appropriate privileges.
- Execute the following query to retrieve the existing properties:
SELECT *
FROM U_REPORT_INTEGRATION_PROPERTY;
- In the result set, locate the record where:
- FIELD_NAME = 'AdminGroupId'
or - Identify the corresponding PRIMARY_KEY value for the AdminGroupId property.
- FIELD_NAME = 'AdminGroupId'
- Update the AdminGroupId using the PRIMARY_KEY and FIELD_NAME by executing the following statements and examples:
update U_REPORT_INTEGRATION_PROPERTY set FIELD_VALUE = <GroupID>
WHERE PRIMARY_KEY = <PRIMARY_KEY>;
Eg. update U_REPORT_INTEGRATION_PROPERTY set FIELD_VALUE = '3321315131' WHERE PRIMARY_KEY = 15005;
OR
update using the field_name:
update U_REPORT_INTEGRATION_PROPERTY set FIELD_VALUE = <GroupID>
WHERE FIELD_NAME = 'AdminGroupId';
Eg. update U_REPORT_INTEGRATION_PROPERTY set FIELD_VALUE = '3321315131'
WHERE FIELD_NAME = 'AdminGroupId';
Important Notes:
- Ensure that <GroupID> matches the ID of the group created manually in Sisense.
- If you are using an Oracle Database, execute a COMMIT; statement after the update to persist the changes:
COMMIT;
Update the Sisense URL in teamconnect.properties
To redirect TeamConnect to the Linux-based Sisense server, complete the following steps:
- Stop the TeamConnect application or service.
- Open the teamconnect.properties file and locate the Sisense base URL configuration entry.
- Update the value to the new Linux-based Sisense server URL. Save the file.
- Restart the TeamConnect application or service to apply the changes.
- If the deployment is managed through Jenkins:
- Update the SISENSE_SERVER parameter with the new Sisense URL.
- Execute the Jenkins job using the build type WAR_ONLY.

Once the deployment is up and running, update the Shared Secret as follows:
- Navigate to the integration settings in TeamConnect.
- Enter the Shared Secret value (from Sisense) and the corresponding password.
- Click Update Integration to save the changes.

Sync users to the new Sisense server
User synchronization sends TeamConnect user data to Sisense, enabling users to access Sisense dashboards.
- Log in to TeamConnect.
- Navigate to Report Integration. Select the User Sync icon/button.
- Wait for the synchronization process to complete.
- Once synchronization finishes, TeamConnect users will be available in Sisense and will be able to access the configured dashboards.
Migrate dashboards (Rapid BI Migration Tool)
This document assumes that you have already setup the Rapid BI tool Migration and is already running. Refer to documentation: TCBI Linux Migration Tool Guide
Moving Dashboards Between Sisense Environments
Follow the steps below to replicate dashboards from a source Sisense environment to a destination Sisense environment, generate folder mappings, apply the database remap, and then re-sync dashboards.
- Note: If Dashboard Co-Authoring was left enabled during migration, Pivot Table widgets on the migrated dashboard will lose their Edit Script, breaking any hyperlinks configured on them. To resolve: delete the affected dashboard on the destination instance, disable Co-Authoring on the source dashboard, and re-run this replication step with conflict_resolution_strategy set to "overwrite". Verify the Edit Script and hyperlinks are intact on the Pivot Table before proceeding

- Navigate to the endpoint:
/api/v1/replicate-folder-dashboards - Select Try it out.
- Enter the request body with the source and destination environment details:
{
"source_domain": "<source_base_url>",
"source_username": "<source_admin_user>",
"source_password": "<source_password>",
"destination_domain": "<destination_base_url>",
"destination_username": "<destination_admin_user>",
"destination_password": "<destination_password>",
"verify_cert": false,
"folder_name_filter": [],
"dashboard_title_filter": [],
"conflict_resolution_strategy": "skip"
}
- Select Execute to begin the dashboard replication process.
- After the process completes, copy or download the response output, as it will be required for the next step.

Note: If Dashboard Co-Authoring was left enabled during migration, Pivot Table widgets on the migrated dashboard will lose their Edit Script, breaking any hyperlinks configured on them. To resolve: delete the affected dashboard on the destination instance, disable Co-Authoring on the source dashboard, and re-run this replication step with conflict_resolution_strategy set to "overwrite". Verify the Edit Script and hyperlinks are intact on the Pivot Table before proceeding.
- Navigate to the endpoint:
/api/extract-folder-mapping - Select Try it out.
- Paste the response output from the previous step into the request body. Select Execute button.

- Once the request completes, download the generated CSV from the link in the response. This CSV provides the mapping between the old folder IDs (source) and the new folder IDs (destination).


- Open the downloaded CSV file and copy the data rows only (exclude the header row).
- Open the spreadsheet file GenerateUpdateStatement.xlsx and navigate to the CSV Entries tab. Paste the copied CSV data into the sheet.
- Use the clipboard paste options and select Split Text to Columns to populate each value into the correct column.

- Go to the Process Update Statement tab and copy the generated update statements, which will be used to update folder mappings so dashboards reference the correct folders in the destination environment.

- Update the folder remapping script with the generated update statements (or paste the statements into the script as required by your process).
- Execute the updated remapping script against the target database.

- Restart the deployment/application services. After restart, re-run the dashboard synchronization (as applicable to your workflow) and confirm dashboards appear under the correct folders in the destination environment.

