Page 1 of 1

after Cube optimization -> TI won't run

Posted: Mon Nov 13, 2017 8:09 am
by Memo66
Hi,

i was wondering, if anyone had the same problem.
When i optimize the order of a cube, my Ti won't run when a consolidated Element is in my SourceView.
It runs successfully but it does not do anything.

Is this a bug?

We us the TM1 10.2.2 FP6 IF1

Memo

Re: after Cube optimization -> TI won't run

Posted: Mon Nov 13, 2017 9:37 am
by Steve Rowe
Are you 100% sure that this TI ran before the cube was re-ordered?

99.9% of the cases of TIs "not running" are because they have a C level in them and the view definition has Suppress consolidations checked.

Re: after Cube optimization -> TI won't run

Posted: Mon Nov 13, 2017 10:26 am
by Memo66
Hi Steve,

yes i am 100% sure.
That is now the second project we have this problem now

Re: after Cube optimization -> TI won't run

Posted: Mon Nov 13, 2017 2:01 pm
by Steve Rowe
Not an issue that I have ever come across so I guess it is could be a problem with the specific fix pack you are on.
Do you create the view from scratch in the TI or is it a permanent object that existed from before re-ordering? I always build from scratch, if you are working from a permanent object I'd suggest deleting and rebuilding the view.

Re: after Cube optimization -> TI won't run

Posted: Mon Nov 13, 2017 9:54 pm
by macsir
Please upload some images to prove that. It is hard to analyse from your words.

Re: after Cube optimization -> TI won't run

Posted: Tue Nov 14, 2017 2:14 pm
by Memo66
I don't know what image i can upload to prove it.

My Code to build the View:

sqView = 'z_akt_' | sProc;
viewdestroy (sCube, sqView);
viewcreate ( sCube, sqView);

sDim = '1';
sSub = 'z_akt' | sProc;
sElem = 'Elem';
IF(SubsetExists(sDim, sSub) =0);
SubsetCreate(sDim, sSub);
ENDIF;
SubsetDeleteAllElements(sDim, sSub);
SubsetElementInsert(sDim, sSub, sElem, 1);
ViewSubsetAssign(sCube, sqView, sDim, sSub);
ViewRowDimensionSet(sCube, sqView, sDim, 1);

sDim = '2';
sSub = 'z_akt' | sProc;
sElem = 'Elem';
IF(SubsetExists(sDim, sSub) =0);
SubsetCreate(sDim, sSub);
ENDIF;
SubsetDeleteAllElements(sDim, sSub);
SubsetElementInsert(sDim, sSub, sElem, 1);
ViewSubsetAssign(sCube, sqView, sDim, sSub);
ViewRowDimensionSet(sCube, sqView, sDim, 2);

sDim = '4';
sSub = 'z_akt' | sProc;
sMDX = '{ HIERARCHIZE( {TM1FILTERBYLEVEL( {TM1SUBSETALL( [4] )}, 0)} ) }';
subsetdestroy(sDim, sSub);
subsetcreatebymdx( sSub, sMDX);
ViewSubsetAssign(sCube, sqView, sDim, sSub);
ViewRowDimensionSet(sCube, sqView, sDim, 3);

sDim = '5';
sSub = 'z_akt' | sProc;
sMDX = '{ HIERARCHIZE( {TM1FILTERBYLEVEL( {TM1SUBSETALL( [5] )}, 0)} ) }';
subsetdestroy(sDim, sSub);
subsetcreatebymdx( sSub, sMDX);
ViewSubsetAssign(sCube, sqView, sDim, sSub);
ViewRowDimensionSet(sCube, sqView, sDim, 4);

sDim = '3';
sSub = 'z_akt' | sProc;
sMDX = '{ HIERARCHIZE( {TM1FILTERBYLEVEL( {TM1SUBSETALL( [3] )}, 0)} ) }';
subsetdestroy(sDim, sSub);
subsetcreatebymdx( sSub, sMDX);
ViewSubsetAssign(sCube, sqView, sDim, sSub);
ViewRowDimensionSet(sCube, sqView, sDim, 5);

sDim = '6';
sSub = 'z_akt' | sProc;
sMDX = '{ HIERARCHIZE( {TM1FILTERBYLEVEL( {TM1SUBSETALL( [6] )}, 0)} ) }';
subsetdestroy(sDim, sSub);
subsetcreatebymdx( sSub, sMDX);
ViewSubsetAssign(sCube, sqView, sDim, sSub);
ViewRowDimensionSet(sCube, sqView, sDim, 6);

sDim = '7';
sSub = 'z_akt' | sProc;
sMDX = '{ HIERARCHIZE( {TM1FILTERBYLEVEL( {TM1SUBSETALL( [7] )}, 0)} ) }';
subsetdestroy(sDim, sSub);
subsetcreatebymdx( sSub, sMDX);
ViewSubsetAssign(sCube, sqView, sDim, sSub);
ViewRowDimensionSet(sCube, sqView, sDim, 7);

sDim = '8';
sSub = 'z_akt' | sProc;
sElem = 'Elem' ;
IF(SubsetExists(sDim, sSub) =0);
SubsetCreate(sDim, sSub);
ENDIF;
SubsetDeleteAllElements(sDim, sSub);
SubsetElementInsert(sDim, sSub, sElem, 1);
ViewSubsetAssign(sCube, sqView, sDim, sSub);
ViewRowDimensionSet(sCube, sqView, sDim, 8);

ViewExtractSkipCalcsSet (sCube, sqView, 0);
DataSourceNameForServer = sCube;
DataSourceCubeView = sqView;

Re: after Cube optimization -> TI won't run

Posted: Tue Nov 14, 2017 4:48 pm
by gtonkin
Should you be suppressing zeroes - you don't appear to be [ViewExtractSkipCalcsSet (sCube, sqView, 0); ]-this could be using too much memory - anything in your tm1server.log or tm1processerrors?

Re: after Cube optimization -> TI won't run

Posted: Tue Nov 14, 2017 5:14 pm
by Steve Rowe
You're using commands like ViewRowDimensionSet(sCube, sqView, sDim, 1); these are redundant when building a view to be used as a datasource (in my experience), on the basis that less code is better you could try removing them.

My personal preference would be to destroy the subsets if they exist rather than deleting all the elements.
I would also explicitly set all ViewExtract* items in the code and not rely on the defaults.

Also the obvious is sometimes easily overlooked, have you confirmed that there is really data where you think it should be?
Can you see the data point in the cube viewer if you select a single cell in the view with zero-suppression on? (i.e. are the N levels below the C level correctly fed? Do you have persistent feeders on? Have you deleted the .feeder files and restarted the instance? (This shouldn't be required but is worth a try!))
What happens if you leave the view behind and manually export it from the right click menu?

If this has happened twice then you should be able to establish a test instance so that you can raise a PMR with IBM, however they will probably tell you to move to IF7 or PA and retest, so if you are convinced this is a bug then your next step is probably an upgrade....