I have been creating a rule on the element attribute control cubes to generate alternate aliases - the rule works fine on 6 out of 7 of the dimensions, however, on the last one (which also happens to be the biggest one!), it has encountered performance issues whenever the dimension is being updated to modify or add new elements (however the user display in subset editor is fine).
The rule basically converts "desc+code" (static value) to "code+desc" (rule driven)
e.g. "0916999000 (Operating Expenses)" to "0916999000 Operating Expenses"
...so at this stage am consdering whether there is something wrong with my rule, whether my dimension has been corrupted (although I have tried adding/deleting a dummy element to "reset the index" and checked for duplicates) or whether the dimension is simply too large and I need to use TI to update to a static alias.
If anyone has any ideas, plz let me know

-Matt
P.S. yes I realize storing the main alias in a"desc+code" format is probably not the best practice, but unfortunately it was a legacy design embedded in almost all processes
Code: Select all
#========== }ElementAttributes_Account cube rules ============
FEEDSTRINGS;
# if desc+code is not blank, and the element string (enclosed in brackets) can be found in the desc+code
# ...then derive code+desc alias from desc+code
# ...else assign the same desc+code attribute to code+desc alias
['code+desc'] = S: If( AttrS('Account',!Account,'desc+code')@<>'' & Scan( '(' | !Account | ')' , AttrS('Account',!Account,'desc+code'))<>0 ,
# true
!Account | ' ' | Trim( Subst( AttrS('Account',!Account,'desc+code'),1 , Long(AttrS('Account',!Account,'desc+code'))-Long(!Account)-3 ) ),
# false
AttrS('Account',!Account,'desc+code')
);