Setup Migrate Request Environment

The Migration feature of Application Control Manager keeps the dimension hierarchies between two OneStream installations or applications aligned with one another by migrating the requests.

This is accomplished by using the REST API built into OneStream. The REST API in the source environment requires setup on the server side to ensure that the correct configuration is in place. Request the following details for your Azure Single Sign-on configuration from your technical support representative:

  • Azure AD Tenant ID

  • OneStream Web API Client ID

  • OneStream Web API Client Secret Key

  • Source OneStream System URL

  • Source OneStream System Application Name

The first three values can be found in the OneStream WebServerconfig.xml: 

Setup Remote Source Server Environment

You must set up a Remote Source Server Environment to start Migration.

  1. Navigate to SettingsGlobal SetupEnvironments.

  2. Click + in Name Table Editor.

  3. Create and enter an Environment Name under the Name field.

  4. Save the environment name.

Create Environment Options

Next you must create the Environment that surrounds the source system.

  1. Click + in Options / Value Table Editor.

  2. Click the Option column to display the list of Environment Options.

NOTE: If the remote server is a OneStream IdentityServer (OIS) with a personal access token (PAT), only the ClientUrl, ClientApp, and PAT options are necessary.

NOTE: If the remote server is a Legacy Azure SSO Environment, TenantID, Client ID, ClientKey, ClientUrl, and ClientApp options are necessary. PAT is not needed.

The TenantID, ClientID, ClientKey, and ClientUrl can all be found in the Server XFConfig file under the following keys: 

TenantID: AzureADTenantId

ClientID: AzureADClientId

ClientKey: AzureADWebApiSecretKey

ClientUrl: XFWebApiUrl (only the URL's protocol and domain are needed)

ClientApp is the remote server's application that is being used for Migration.

Data Management Job Configuration

The metadata synchronization process is run using a Data Management job in OneStream. When Application Control Manager is installed, a Data Management Group named Application Control Manager Metadata Migration (ACM) containing associated steps is automatically created:

As with other features in Application Control Manager, there is a step associated with each of the dimensions in OneStream. To complete the setup, you must update the Parameters section of the step. The default parameters are entered in the initial setup step from Application Control Manager:

  • The Request Type is set to Migration and should not be changed.

  • The WorkflowProfileName is set to ACM_MetadataImport_Default.Migration and should not be changed.

  • The EnvironmentName is set to the environment name previously created in the Setup Remote Source Server Environment section.

  • The RequestProfileName is set to the Request Profile Description that you plan to use for the Migration.

Execution

When any of the Data Management Load steps are executed, the following processes occurs:

  • Prepare metadata on remote (source system)

    • Using the REST API that was configured in the Application Control Manager system administration screen, the system remotely executes a Data Management setup on the source system named Application Control Manager Metadata Migration (ACM) > Prepare Metadata.

    • This process gathers all metadata information including the member list, hierarchy, and properties for the dimension specified in the workflow profile. This information is stored in a temporary staging table in the database.

  • Retrieve metadata from a remote system.

    • Using the REST API, make a built-in API call named GetAdoDataSetForSqlCommand on the remote system. The system pulls the information and loads it into the local (destination) OneStream application database for further processing.

  • After the data is loaded into the database, the same processing that occurs during a metadata import takes place. If any updates are required, the system automatically generates a request, which can be committed using the Application Control Manager Metadata Migration (ACM) > Commit All Metadata Updates Data Management step.

Configure Request Profiles with Migration Step

Application Control Manager can migrate requests from one OneStream environment to another. You can use this as a testing feature to see how metadata updates will impact a production system before committing them in that environment. You can also use it to keep two systems synchronized with each other.

Before continuing, follow the setup steps outlined in the Metadata Synchronization section. You must set up a destination environment where requests will be sent.

If you have a large data set to migrate (>100k of data), make sure to increase your Command Timeout or Task Inactivity Timeout (minutes) settings under Database Server Connections > Connection String Settings > Command Timeout or Application Server Configuration Settings > Task Inactivity Timeout (minutes).

Add a new step to any request profile you have configured in the system. In the Application Control Manager administration screen, select Request Profiles and edit or create a profile to use for the migration. Add a new step to the profile after the Initiate step and select Migrate.

Select the appropriate target environment to commit the request to. This was defined in the prior configuration step. Select your Target Environment: 

When you create a new request in the system and advance from the initiate step, you will see the system report the next step as Migrate:

When you manage this request and advance to the next step, the system automatically connects to the target environment REST API and pushes the request information from the source system to the destination environment and automatically commits the request. After reviewing and testing in that environment, return to the source system and continue processing as you typically would.