Ultimate Long TM1 quiz
- Elessar
- Community Contributor
- Posts: 401
- Joined: Mon Nov 21, 2011 12:33 pm
- OLAP Product: PA 2
- Version: 2.0.9
- Excel Version: 2016
- Contact:
Re: Ultimate Long TM1 quiz
Correct answer:
}Picklist cube has priority over "picklist" attribute (if cell is not empty).
Winner of this round is MarenC!
Question #25:
(One of my favorite ones)
Write a rule to make not SUM, but PRODUCT of descendants in consolidated elements:
}Picklist cube has priority over "picklist" attribute (if cell is not empty).
Winner of this round is MarenC!
Question #25:
(One of my favorite ones)
Write a rule to make not SUM, but PRODUCT of descendants in consolidated elements:
-
- Community Contributor
- Posts: 296
- Joined: Tue Sep 06, 2016 7:55 am
- OLAP Product: TM1
- Version: 10.1.1
- Excel Version: Excel 2010
Re: Ultimate Long TM1 quiz
Hi,
Don't think anything new in planning Analytics solves this, so the old method should still work.
Create a new measure called MinusValue
Rule for MinusValue is:
Create a new measure called NatLog
Rule for NatLog is:
Rule for C Level is:
Old method is outlined here: viewtopic.php?p=26007#p26007
regards,
Mark
Don't think anything new in planning Analytics solves this, so the old method should still work.
Create a new measure called MinusValue
Rule for MinusValue is:
Code: Select all
['MinusValue']=N: IF(['B']<0,1,0);
Rule for NatLog is:
Code: Select all
['NatLog']=N:IF(['B']<>0, LN(ABS(['B'])),0);
Code: Select all
['B']=C:EXP(['NatLog']) * -1^['MinusValue'];
regards,
Mark
-
- Regular Participant
- Posts: 221
- Joined: Sat Dec 04, 2010 2:35 pm
- OLAP Product: PAL
- Version: 2.0.9
- Excel Version: 2016
Re: Ultimate Long TM1 quiz
As I Completely forget features on exp and logarithm and don't want to refresh my memory
so I have another solution The most part of IFs has aim to avoid multiplying for zero (as a I understand we don't want to receive zero as answer although it seems it is correct answer for input data)
so I have another solution The most part of IFs has aim to avoid multiplying for zero (as a I understand we don't want to receive zero as answer although it seems it is correct answer for input data)
- Elessar
- Community Contributor
- Posts: 401
- Joined: Mon Nov 21, 2011 12:33 pm
- OLAP Product: PA 2
- Version: 2.0.9
- Excel Version: 2016
- Contact:
Re: Ultimate Long TM1 quiz
Correct answer:
Is described here: viewtopic.php?p=83664#p83664
Beautiful solution with a little Math and without recursion and next/previous elements.
Winner of this round is Mark RMBC! Welcome on board!
Question #26:
There are 4 rules to transfer data from ABC cube to ABC1 cube. Which of them will work correctly? Which is the best?
Is described here: viewtopic.php?p=83664#p83664
Beautiful solution with a little Math and without recursion and next/previous elements.
Winner of this round is Mark RMBC! Welcome on board!
Question #26:
There are 4 rules to transfer data from ABC cube to ABC1 cube. Which of them will work correctly? Which is the best?
-
- Regular Participant
- Posts: 405
- Joined: Sat Jun 08, 2019 9:55 am
- OLAP Product: Planning Analytics
- Version: Planning Analytics 2.0
- Excel Version: Excel 2016
Re: Ultimate Long TM1 quiz
Hi,
I believe the first 2 rules in your screenshot will work and the other 2 will error, as ABC1 is the not the primary name of the element in ABC.
Funnily enough I don't know which of the first 2 is best, be interested to see the thinking behind the answer to that one. But given you are feeding from a text attribute I will guess that the first rule is the best one to use!
Maren
I believe the first 2 rules in your screenshot will work and the other 2 will error, as ABC1 is the not the primary name of the element in ABC.
Funnily enough I don't know which of the first 2 is best, be interested to see the thinking behind the answer to that one. But given you are feeding from a text attribute I will guess that the first rule is the best one to use!
Maren
-
- Posts: 118
- Joined: Wed Apr 03, 2019 12:10 am
- OLAP Product: IBM PA
- Version: 2.0.9.x
- Excel Version: Microsoft 365 x64
Re: Ultimate Long TM1 quiz
I like the first choice the most but would opt for DB against }ElementAttributes vs ATTRS as wiser people than me have said it’s faster.
I don’t like the Alias approaches as that doesn’t scale beyond 1 to 1 mapping. Same for DIMIX, that doesn’t scale when element order is different between ABC and ABC1.
I don’t like the Alias approaches as that doesn’t scale beyond 1 to 1 mapping. Same for DIMIX, that doesn’t scale when element order is different between ABC and ABC1.
- Elessar
- Community Contributor
- Posts: 401
- Joined: Mon Nov 21, 2011 12:33 pm
- OLAP Product: PA 2
- Version: 2.0.9
- Excel Version: 2016
- Contact:
Re: Ultimate Long TM1 quiz
Correct answer:
1st and 2nd will work. For "What is best" - it's a discussion question, firstly to discuss what mapping is better to use - text attribute-based, or alias-based. I prefer text attribute: this allows you to make not only 1*1 mappings, and also allows crazy mappings like "Map ABC1's B1 to ABC's C1".
And also, thanks Adam for note: Cubewise has proved that DB(}ElementAttributes...) works faster than ATTRS: https://code.cubewise.com/blog/7-tips-t ... ics-rules/
Winner of this round is MarenC!
Question #27:
A user has suppressed zero rows and wants to save list of non-zero accounts to a private subset. How can he perform this?
1st and 2nd will work. For "What is best" - it's a discussion question, firstly to discuss what mapping is better to use - text attribute-based, or alias-based. I prefer text attribute: this allows you to make not only 1*1 mappings, and also allows crazy mappings like "Map ABC1's B1 to ABC's C1".
And also, thanks Adam for note: Cubewise has proved that DB(}ElementAttributes...) works faster than ATTRS: https://code.cubewise.com/blog/7-tips-t ... ics-rules/
Winner of this round is MarenC!
Question #27:
A user has suppressed zero rows and wants to save list of non-zero accounts to a private subset. How can he perform this?
-
- Posts: 18
- Joined: Thu Dec 03, 2020 3:45 pm
- OLAP Product: TM1
- Version: 2.1
- Excel Version: 2016
Re: Ultimate Long TM1 quiz
What I always do is apply "suppress zeros" in the rows. Then, I select all the elements in the rows of the suppressed view by clicking on the row header. Next, I right-click on any element and choose "keep". In the subset editor for the dimension in the rows, the subset I want to save will be on the right side. Finally, I choose "save as" and select "private".
-
- Regular Participant
- Posts: 405
- Joined: Sat Jun 08, 2019 9:55 am
- OLAP Product: Planning Analytics
- Version: Planning Analytics 2.0
- Excel Version: Excel 2016
Re: Ultimate Long TM1 quiz
Hi,
I usually ensure access to the set editor is switched off, then I don't have to worry about this!
Maren
I usually ensure access to the set editor is switched off, then I don't have to worry about this!
Maren
- Elessar
- Community Contributor
- Posts: 401
- Joined: Mon Nov 21, 2011 12:33 pm
- OLAP Product: PA 2
- Version: 2.0.9
- Excel Version: 2016
- Contact:
Re: Ultimate Long TM1 quiz
Correct answer:
I'll be on a vacation next 2 weeks, so here are 2 questions in a row:
Question #28:
User has READ access to the process, which writes data to a cube. User does not have access to the cube (NONE in }CubeSecurity). What will happen when user launches the process?
Question #29:
How can you transfer data between two different servers (let's say we are on on_prem PA)? What are PROs and CONs? Which is the best?
- michalb's one: "I select all the elements in the rows of the suppressed view by clicking on the row header. Next, I right-click on any element and choose "keep". In the subset editor for the dimension in the rows, the subset I want to save will be on the right side. Finally, I choose "save as" and select "private"."
- Export to excel, copy-paste accounts to subset editor
- Write an MDX pointing to cube (need to know MDX)
- (for mammoths): In Architect, save view and use filter by view extract
I'll be on a vacation next 2 weeks, so here are 2 questions in a row:
Question #28:
User has READ access to the process, which writes data to a cube. User does not have access to the cube (NONE in }CubeSecurity). What will happen when user launches the process?
Question #29:
How can you transfer data between two different servers (let's say we are on on_prem PA)? What are PROs and CONs? Which is the best?
-
- Regular Participant
- Posts: 221
- Joined: Sat Dec 04, 2010 2:35 pm
- OLAP Product: PAL
- Version: 2.0.9
- Excel Version: 2016
Re: Ultimate Long TM1 quiz
28
Process copys data in the cube although user doesn't see the cube of course. Process launches with dataadmin rights.
29
1. I usually put data in text from server 1 and launch process which upload text file on server 2 (the process launches in the same process on server 1 using RunTI). It is the most resilient way although it is a shame for IBM that we have to use it
2. ODBO source in TI process. Sometimes it works but in the most part - don't. I don't know why. It seems it depends of volume of data. Small volume it can copy but if volume is more it stops working
Process copys data in the cube although user doesn't see the cube of course. Process launches with dataadmin rights.
29
1. I usually put data in text from server 1 and launch process which upload text file on server 2 (the process launches in the same process on server 1 using RunTI). It is the most resilient way although it is a shame for IBM that we have to use it
2. ODBO source in TI process. Sometimes it works but in the most part - don't. I don't know why. It seems it depends of volume of data. Small volume it can copy but if volume is more it stops working
-
- Regular Participant
- Posts: 405
- Joined: Sat Jun 08, 2019 9:55 am
- OLAP Product: Planning Analytics
- Version: Planning Analytics 2.0
- Excel Version: Excel 2016
Re: Ultimate Long TM1 quiz
Hi,
Other methods to copy data between servers:
Use TI to Ascii output from one server and use the Ascii as the datasource on the other server to import the data. Pros, quick to process. Cons, need processes on both servers.
Copy data folder objects from one server to the other if the whole cube is being copied. Pros, no new processes required. Cons, have to stop the server.
Maren
I would say more than this, the process actually runs as the admin user. But maybe that is only the case when a process is called from a master process?Process launches with dataadmin rights.
Other methods to copy data between servers:
Use TI to Ascii output from one server and use the Ascii as the datasource on the other server to import the data. Pros, quick to process. Cons, need processes on both servers.
Copy data folder objects from one server to the other if the whole cube is being copied. Pros, no new processes required. Cons, have to stop the server.
Maren
-
- Regular Participant
- Posts: 221
- Joined: Sat Dec 04, 2010 2:35 pm
- OLAP Product: PAL
- Version: 2.0.9
- Excel Version: 2016
Re: Ultimate Long TM1 quiz
For my observation - as dataadmin. In some special cases like when are made some reseravations in a cube (for example reservations nodes of tree by users in approval type applications) dataadmin rights aren't enough privileges for fill the cube and you have to launch process to fill the cube with RUNTI process by user with admin rights.
- gtonkin
- MVP
- Posts: 1235
- Joined: Thu May 06, 2010 3:03 pm
- OLAP Product: TM1
- Version: Latest and greatest
- Excel Version: Office 365 64-bit
- Location: JHB, South Africa
- Contact:
Re: Ultimate Long TM1 quiz
And likewise with Global Security Overlays - data admin cannot write to blocked cells but Admin can.
- Elessar
- Community Contributor
- Posts: 401
- Joined: Mon Nov 21, 2011 12:33 pm
- OLAP Product: PA 2
- Version: 2.0.9
- Excel Version: 2016
- Contact:
Re: Ultimate Long TM1 quiz
I'm back!
Correct answer:
Question 28
Data will be written successfully.
Question 29
There are many ways:
Winner of both rounds is EP_explorer!
Here is the question for this week:
Question #30:
For process from question # 28, what will happen if a target element is locked (most frequently because it is submitted using Contributor / TM1 Applications)? - this was already answered, process will not write data.
The question is: How can we handle this (for example, user needs to copy data from working to locked submitted version)?
Correct answer:
Question 28
Data will be written successfully.
Question 29
There are many ways:
- Use export to text file, import from file
- Use replication (need to know all caveats! Very dangerous option)
- Use REST API
- Use tm1py
- Use ODBO
- Migrate the whole .cub file
Winner of both rounds is EP_explorer!
Here is the question for this week:
Question #30:
For process from question # 28, what will happen if a target element is locked (most frequently because it is submitted using Contributor / TM1 Applications)? - this was already answered, process will not write data.
The question is: How can we handle this (for example, user needs to copy data from working to locked submitted version)?
-
- Regular Participant
- Posts: 405
- Joined: Sat Jun 08, 2019 9:55 am
- OLAP Product: Planning Analytics
- Version: Planning Analytics 2.0
- Excel Version: Excel 2016
Re: Ultimate Long TM1 quiz
Hi,
add CubeLockOverride(1) to the beginning of the Prolog and ensure the process has security access ticked.
Add CubeLockOverride(0) to the epilog, probably not strictly necessary but why not!
Maren
add CubeLockOverride(1) to the beginning of the Prolog and ensure the process has security access ticked.
Add CubeLockOverride(0) to the epilog, probably not strictly necessary but why not!
Maren
- Elessar
- Community Contributor
- Posts: 401
- Joined: Mon Nov 21, 2011 12:33 pm
- OLAP Product: PA 2
- Version: 2.0.9
- Excel Version: 2016
- Contact:
Re: Ultimate Long TM1 quiz
Correct answer:
Use CubeLockOverride function. It is undocumented, but works fine for years already.
Winner of this round is MarenC!
Question #31:
I want to insert a new element to dimension and add it to consolidation using TI process.
"DimensionElementComponentAdd('Dimension', 'Consolidation', 'Element', 1);" command will insert new element and add it to consolidation in one row. Is there any reason to make this in two rows: first insert element to dimension, then add it to consolidation?
Use CubeLockOverride function. It is undocumented, but works fine for years already.
Winner of this round is MarenC!
Question #31:
I want to insert a new element to dimension and add it to consolidation using TI process.
"DimensionElementComponentAdd('Dimension', 'Consolidation', 'Element', 1);" command will insert new element and add it to consolidation in one row. Is there any reason to make this in two rows: first insert element to dimension, then add it to consolidation?
-
- Community Contributor
- Posts: 304
- Joined: Fri Feb 15, 2013 5:49 pm
- OLAP Product: TM1
- Version: PA 2.0.9.1
- Excel Version: 365
- Location: Minneapolis, USA
Re: Ultimate Long TM1 quiz
If you want 'Element' to be of type S or C and not N, you'd first want to do a DimensionElementInsert.
-
- Community Contributor
- Posts: 296
- Joined: Tue Sep 06, 2016 7:55 am
- OLAP Product: TM1
- Version: 10.1.1
- Excel Version: Excel 2010
Re: Ultimate Long TM1 quiz
Hi,
I would add that DimensionElementInsert also allows you to specify the Insertion point.
regards,
Mark
I would add that DimensionElementInsert also allows you to specify the Insertion point.
regards,
Mark
- Elessar
- Community Contributor
- Posts: 401
- Joined: Mon Nov 21, 2011 12:33 pm
- OLAP Product: PA 2
- Version: 2.0.9
- Excel Version: 2016
- Contact:
Re: Ultimate Long TM1 quiz
Correct answer:
Question #32:
You can list multiple data directories (yes, you can: https://www.ibm.com/docs/en/planning-an ... irectory-1) for DataBaseDirectory parameter in tm1s.cfg file. How does it work? How can you use it?
- You can specify element type
- You can specify insertion point
- DimensionElementInsert will throw an error if the element already exists as an alias. DimensionElementComponentAdd alone will just add existing element to consolidation
Question #32:
You can list multiple data directories (yes, you can: https://www.ibm.com/docs/en/planning-an ... irectory-1) for DataBaseDirectory parameter in tm1s.cfg file. How does it work? How can you use it?