=SUBNM funcion Filtering
-
- Regular Participant
- Posts: 269
- Joined: Tue Apr 21, 2009 3:43 am
- OLAP Product: Cognos TM1, Planning
- Version: 9.1 SP3 9.4 MR1 FP1 9.5
- Excel Version: 2003
=SUBNM funcion Filtering
Is there anyway to filter the subnm function when used as a validation list in Excel...I noticed that when security is in place that the that specific elements that are allowed are shown but the restricted elements are also shown I think as index numbers...I'm not quiet sure have to check it out since the alias are also numbers.
-
- Site Admin
- Posts: 1458
- Joined: Wed May 28, 2008 9:09 am
Re: =SUBNM funcion Filtering
If the user has no access to an element, it won't come back from TM1. If the user has read or write access, it will. I don't think you get the index numbers back, though you should say what version you are on just in case it behaves oddly.
If you want to distinguish read and write access, you could make the ElementSecurity_<dimension> cube available to your code and pick up the status from there.
If you want to distinguish read and write access, you could make the ElementSecurity_<dimension> cube available to your code and pick up the status from there.
-
- Site Admin
- Posts: 6645
- Joined: Sun May 11, 2008 2:30 am
- OLAP Product: TM1
- Version: PA2.0.9.18 Classic NO PAW!
- Excel Version: 2013 and Office 365
- Location: Sydney, Australia
- Contact:
Re: =SUBNM funcion Filtering
Yes it will... if the subset is either the All or empty string ("") subset. (The aliases won't (since that involves reading from a cube, not just the dimension), but the base element name will if you access it by index number.) If it's any other public subset, you're correct. (http://forums.olapforums.com/viewtopic. ... 919&p=5318)David Usherwood wrote:If the user has no access to an element, it won't come back from TM1.
"To them, equipment failure is terrifying. To me, it’s 'Tuesday.' "
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
-
- Regular Participant
- Posts: 269
- Joined: Tue Apr 21, 2009 3:43 am
- OLAP Product: Cognos TM1, Planning
- Version: 9.1 SP3 9.4 MR1 FP1 9.5
- Excel Version: 2003
Re: =SUBNM funcion Filtering
I used an MDX filter to get the 0 level element since data entry happens on the leaf level. So what is the best approach on being able t use a dynamic subset as a validation data? Would a VBA Code be able to solve this?
-
- Site Admin
- Posts: 1458
- Joined: Wed May 28, 2008 9:09 am
Re: =SUBNM funcion Filtering
Alan - thanks. Can't think why I haven't been hit by this before.
Appleglaze28 - what are you trying to validate?
Appleglaze28 - what are you trying to validate?
- Steve Vincent
- Site Admin
- Posts: 1054
- Joined: Mon May 12, 2008 8:33 am
- OLAP Product: TM1
- Version: 10.2.2 FP1
- Excel Version: 2010
- Location: UK
Re: =SUBNM funcion Filtering
i got around it with an attribute "validationlist". If it is not blank then it gets ignored in a subset that is created with the following MDX;
In my case the attributes are manually administered, but its not changing all that often so its not much a burden.
Code: Select all
{FILTER( {TM1FILTERBYLEVEL( {TM1SORT( {TM1SUBSETALL( [Resource Breakdown] )}, ASC)}, 0)}, [Resource Breakdown].[ValidationList] = "")}
If this were a dictatorship, it would be a heck of a lot easier, just so long as I'm the dictator.
Production: Planning Analytics 64 bit 2.0.5, Windows 2016 Server. Excel 2016, IE11 for t'internet
Production: Planning Analytics 64 bit 2.0.5, Windows 2016 Server. Excel 2016, IE11 for t'internet
-
- Regular Participant
- Posts: 269
- Joined: Tue Apr 21, 2009 3:43 am
- OLAP Product: Cognos TM1, Planning
- Version: 9.1 SP3 9.4 MR1 FP1 9.5
- Excel Version: 2003
Re: =SUBNM funcion Filtering
Well I'm trying to create a drop down list a way for users to navigate in the excel template since most users who are not aware of TM1 would not notice that TM1 dimensions may be filtered by double clicking on the subset to determine what element they want. This is only noticed in the TM1 web since you will be able to see 2 arrow heads pointing downward on all cells containing SUBNM functions.
This will also be easier to navigate on valid cost center hierarchy whose rights are given to specific users. The list would and all its element would not be seen except whose rights you have.
This will also be easier to navigate on valid cost center hierarchy whose rights are given to specific users. The list would and all its element would not be seen except whose rights you have.
-
- Site Admin
- Posts: 6645
- Joined: Sun May 11, 2008 2:30 am
- OLAP Product: TM1
- Version: PA2.0.9.18 Classic NO PAW!
- Excel Version: 2013 and Office 365
- Location: Sydney, Australia
- Contact:
Re: =SUBNM funcion Filtering
Did you read the link that I gave in my previous post in this thread?appleglaze28 wrote:Well I'm trying to create a drop down list a way for users to navigate in the excel template since most users who are not aware of TM1 would not notice that TM1 dimensions may be filtered by double clicking on the subset to determine what element they want. This is only noticed in the TM1 web since you will be able to see 2 arrow heads pointing downward on all cells containing SUBNM functions.
This will also be easier to navigate on valid cost center hierarchy whose rights are given to specific users. The list would and all its element would not be seen except whose rights you have.
If you really want to do it that way (and I can't help but thinking that sticking an instruction on the sheet saying "Double click on the yellow (or whatever colour) cells to select your cost centre" would be considerably easier, but hey, your call...) you can:
- Create a hidden sheet;
- Put in a formula in cell A1 which has a formula like:
Code: Select all
=SUBNM("Server:CostCentres","Some Named Public Subset but NOT the one named 'All'",ROW(),"Descriptive Alias")
- Give the range of cells that contain the formula a name. You could even create it as a dynamic range name if you wanted to exclude the SubNMs which return an empty string, but that's left as an exercise for the reader;
- Create a Combo Box from the Control Toolbox toolbar;
- Assign the range name to the Combo Box's ListFillRange property.
The SubNM formulas will only return the elements that the user has access to. Those will therefore be the only ones which appear in the Combo Box. (Though you'll have a stack of empty values at the end of the list if you don't use a dynamic range name which resizes to the same size as the populated rows. Not that that matters as the users probably won't scroll down that far.)
This effectively does the same thing as using a public subset and a double clickable SubNm formula, just with vastly more work and overhead.
"To them, equipment failure is terrifying. To me, it’s 'Tuesday.' "
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
-
- Site Admin
- Posts: 6645
- Joined: Sun May 11, 2008 2:30 am
- OLAP Product: TM1
- Version: PA2.0.9.18 Classic NO PAW!
- Excel Version: 2013 and Office 365
- Location: Sydney, Australia
- Contact:
Re: =SUBNM funcion Filtering
Oh what the hey... I'll put it in here in case anyone else searches for this in future since the syntax is slightly obscure. Dynamic range names are typically created using the CountA function, but that won't work in this case since the SubNM's that don't return elements return empty strings. CountA doesn't see this as "empty".Alan Kirk wrote:- Put in a formula in cell A1 which has a formula like:- Copy that down as far as is necessary (ie, for as many rows as any user is likely to need, then a bunch more);Code: Select all
=SUBNM("Server:CostCentres","Some Named Public Subset but NOT the one named 'All'",ROW(),"Descriptive Alias")
- Give the range of cells that contain the formula a name. You could even create it as a dynamic range name if you wanted to exclude the SubNMs which return an empty string, but that's left as an exercise for the reader;
Assuming that the sheet which contains the SubNm formulas was named "Lists" and that the formulas were in column A, when the range is created the Refers To reference would be:
Code: Select all
=OFFSET(Lists!$A$1,0,0,COUNTIF(Lists!$A:$A,"?*"),1)
"To them, equipment failure is terrifying. To me, it’s 'Tuesday.' "
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
-
- Site Admin
- Posts: 6645
- Joined: Sun May 11, 2008 2:30 am
- OLAP Product: TM1
- Version: PA2.0.9.18 Classic NO PAW!
- Excel Version: 2013 and Office 365
- Location: Sydney, Australia
- Contact:
Re: =SUBNM funcion Filtering
Incidentally, there's another option there too (but again a river-lowering rather than bridge raising one IMHO); you can just put your own graphic object containing as many arrows as you want just near the element to be selected. You can then attach a VBA procedure to that graphic. The procedure can use the E_Pick macro which, by version 9 at least, does allow you to specify a particular subset as well if desired.appleglaze28 wrote:Well I'm trying to create a drop down list a way for users to navigate in the excel template since most users who are not aware of TM1 would not notice that TM1 dimensions may be filtered by double clicking on the subset to determine what element they want. This is only noticed in the TM1 web since you will be able to see 2 arrow heads pointing downward on all cells containing SUBNM functions.
"To them, equipment failure is terrifying. To me, it’s 'Tuesday.' "
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.
-----------
Before posting, please check the documentation, the FAQ, the Search function and FOR THE LOVE OF GLUB the Request Guidelines.