Replace the database structure
There are times when you need to replace the structure in an existing CPM database while retaining the data for members that still exist in both environments. For example, let's say that you've been modifying your test environment. You deleted several members and changed a parent/child relationship to a non-shared relationship. To get these changes across to your production environment, you must replace the existing structure. When you replace the structure in a database, all members, relationships, and hierarchies that are not referenced in the new structure are deleted. Data is retained for members that still exist in both environments. Keep in mind that this is different from explicitly deleting members which is not supported.
The replace process moves the structure but only the structure. Security settings, journals, and data must be moved manually.
Only dimensions that are mapped are replaced. During the replace process:
- Existing members and relationships that are not in the new version of the structure are deleted.
- New members and relationships in the new structure are processed as described in the "Adding Members" section. For example, if the Currency dimension is not mapped, the members are assigned a default currency.
- Members and relationships that are retained also keep any existing property and attribute values in the cases where the property has not been mapped. For example, if Currency is not mapped, the retained member retains its current currency value. It is not assigned a default value.
If a member ID is mapped, that's the ID that is used. If the member ID matches an existing member ID, then the data for that member is retained. If the member name does not match, the Import Wizard assumes that the name of the member has changed. If you specify a different member ID for an existing member, that member's data is deleted. For example, if has a member ID of 100 in the existing database, and you now specify a member ID of 200. is assumed to be a new member.
If member IDs are not specified, members with matching names retain their IDs and data. In addition, all existing property and attribute values are retained.
New members are assigned the default values if properties and attributes are not assigned.
If a group hierarchy is mapped, it replaces the existing group hierarchies. If no group hierarchy is mapped, the replace process automatically generates the group hierarchies.
Keep in mind that the replace process replaces the current structure with the structure defined in the structure data. The structure data must contain the entire structure of the dimension, not just the portion that you want to change.
If any errors are detected, the import process stops. Once you've corrected the errors, you must run the import process again.