Hi Gurus,
I am very new to tm1.
As of now i am working on the logic for below issue:
Implement using: TI process
Logic to be implemented:
If the product dimension already has a Product code in the target tm1 cube and it also has a cost in the data source, it needs to replace the TM1 Cube with the new code from data source.
If the product dimension does not have a product code in the target cube, it needs to populate the data from the data source.
If the product dimension has a Product code in the target cube and does not exist in the data source, the process should ignore it and leave the value in the TM1 cube untouched.
Please do the needful.
Thanks,
A
{Admin Edit: Moved to the correct forum.}
TI Process logic
-
- Posts: 20
- Joined: Tue Dec 27, 2011 3:31 pm
- OLAP Product: Cognos TM1
- Version: 9.5.1 and 9.5.2
- Excel Version: 2007 and 2010
-
- Site Admin
- Posts: 6667
- 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: TI Process logic
How far have you read through the TI guide? These issues are covered (to a greater or lesser extent) in there. The quick and dirty guide, though is this:Cognostm1.ibm wrote: As of now i am working on the logic for below issue:
Implement using: TI process
Logic to be implemented:
In the Metadata tab, you can use DimensionElementInsert to add any new elements to the dimension. If the element is already there (as is the case here), it will make no difference; the statement will just be ignored. You will probably also need to use DimensionElementComponentAdd to add the element to the relevant consolidation.Cognostm1.ibm wrote:If the product dimension already has a Product code in the target tm1 cube and it also has a cost in the data source, it needs to replace the TM1 Cube with the new code from data source.
However if you really want to skip over the code when the element already exists, you can use a DimIx test in conjunction with an If() statement. (These are all explained in the Reference Guide or the TurboIntegrator Guide, though I've added a hyperlink to the If() statement since it can be a sod to find.)
In the Data tab, you simply use a CellPutN statement to write the value to the cube.
If you need to add the value to any existing values, you first do a CellGetN to get the existing value, add that to the value from your data source, and write the total to the cube using CellPutN. This is called aggregation.
The Metadata code described above will add the new element to the dimension, readying it to receive data in the Data tab.Cognostm1.ibm wrote:If the product dimension does not have a product code in the target cube, it needs to populate the data from the data source.
The Data tab then writes the value as described above.
A TI process will not affect any elements or values that you don't tell it to affect, consequently there's no need to worry about this.Cognostm1.ibm wrote:If the product dimension has a Product code in the target cube and does not exist in the data source, the process should ignore it and leave the value in the TM1 cube untouched.
"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.