
Simple enough, a TI to copy from cube to cube. Dimension structures are identical as the idea is to archive the data in to a new cube, which will later allow us to move it offline. The TI, as i have done so before, creates subsets and views, works on them then deletes them when it's done. The problem is with the view creation, its corrupting and i don't know why.
PROLOG
Code: Select all
### PARAMETERS - USER DEFINED ###
Cube = 'Actuals';
Dim1 = TABDIM ( Cube , 1 );
Dim2 = TABDIM ( Cube , 2 );
Dim3 = TABDIM ( Cube , 3 );
Dim4 = TABDIM ( Cube , 4 );
Dim5 = TABDIM ( Cube , 5 );
Dim6 = TABDIM ( Cube , 6 );
Dim7 = TABDIM ( Cube , 7 );
Dim8 = TABDIM ( Cube , 8 );
### PARAMETERS - SYSTEM DEFINED ###
ViewName = 'zTemp';
CubeSetLogChanges(Cube, 0);
### CREATE TEMP VIEW ###
IF ( ViewExists ( Cube , ViewName ) = 1);
ViewDestroy ( Cube , ViewName );
ENDIF;
ViewCreate ( Cube, ViewName );
ViewExtractSkipZeroesSet ( Cube , ViewName , 1 );
ViewExtractSkipCalcsSet ( Cube , ViewName , 0 );
### CREATE TEMP SUBSETS ###
IF ( SubsetExists ( Dim1 , 'zTemp' ) = 1);
SubsetDestroy ( Dim1, 'zTemp' );
EndIF;
IF ( SubsetExists ( Dim2 , 'zTemp' ) = 1);
SubsetDestroy ( Dim2, 'zTemp' );
EndIF;
IF ( SubsetExists ( Dim3 , 'zTemp' ) = 1);
SubsetDestroy ( Dim3, 'zTemp' );
EndIF;
IF ( SubsetExists ( Dim4 , 'zTemp' ) = 1);
SubsetDestroy ( Dim4, 'zTemp' );
EndIF;
IF ( SubsetExists ( Dim5 , 'zTemp' ) = 1);
SubsetDestroy ( Dim5, 'zTemp' );
EndIF;
IF ( SubsetExists ( Dim6 , 'zTemp' ) = 1);
SubsetDestroy ( Dim6, 'zTemp' );
EndIF;
IF ( SubsetExists ( Dim7 , 'zTemp' ) = 1);
SubsetDestroy ( Dim7, 'zTemp' );
EndIF;
IF ( SubsetExists ( Dim8 , 'zTemp' ) = 1);
SubsetDestroy ( Dim8, 'zTemp' );
EndIF;
SubsetCreatebyMDX('zTemp', '{TM1SUBSETALL( [' | Dim1 | '] )}' );
SubsetCreatebyMDX('zTemp', '{TM1SUBSETALL( [' | Dim2 | '] )}' );
SubsetCreatebyMDX('zTemp', '{TM1SUBSETALL( [' | Dim3 | '] )}' );
SubsetCreatebyMDX('zTemp', '{TM1SUBSETALL( [' | Dim4 | '] )}' );
SubsetCreatebyMDX('zTemp', '{TM1SUBSETALL( [' | Dim5 | '] )}' );
SubsetCreatebyMDX('zTemp', '{TM1SUBSETALL( [' | Dim6 | '] )}' );
SubsetCreatebyMDX('zTemp', '{TM1SUBSETALL( [' | Dim7 | '] )}' );
SubsetCreatebyMDX('zTemp', '{TM1SUBSETALL( [' | Dim8 | '] )}' );
### ASSIGN TEMP SUBSETS TO TEMP VIEW ###
ViewSubsetAssign ( Cube , ViewName , Dim1, 'zTemp' );
ViewSubsetAssign ( Cube , ViewName , Dim2, 'zTemp' );
ViewSubsetAssign ( Cube , ViewName , Dim3, 'zTemp' );
ViewSubsetAssign ( Cube , ViewName , Dim4, 'zTemp' );
ViewSubsetAssign ( Cube , ViewName , Dim5, 'zTemp' );
ViewSubsetAssign ( Cube , ViewName , Dim6, 'zTemp' );
ViewSubsetAssign ( Cube , ViewName , Dim7, 'zTemp' );
ViewSubsetAssign ( Cube , ViewName , Dim8, 'zTemp' );
Has anyone got an idea why the hell TI would swap these 2 dims around? Even when you check the view via "Export as ascii" in server explorer, it all looks right...