Turbo Irritator at it again
Posted: Thu Aug 21, 2008 9:42 am
I can't figure out why this is happening, but it's killing my server and i want it to stop
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
The TI has the "zTemp" cube view as it's datasource. If i asciioutput the 8 dim names at the end of this, they are all correct and in the right order. Problem is TI swaps dim 1 and dim 4 when it views them as a datasource. If i write a TI to just look at the cube view, the order is incorrect in the preview and this results in the TI throwing a hissy fit and never completing, eventually consuming all the RAM and the service crashes.
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...

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...