Page 1 of 1

How do I write a TI code in Prolog tab for my requirement?

Posted: Tue Jan 10, 2017 10:55 am
by msrao186
OLAP Product: TM1
Version: 10.2.2 64 bit
Excel Version: 2010
Area Facing issue: Prolog tab

Hello Everyone,

I have a requirement to build the dimensions and measures using the TI process in the Prolog section for one of my internal client. I know how to build/create these dimensions and measures manually in TM1 Architect and then load the data from the data sources, but my client does not want to go with this regular approach. My client wants everything to be done from the TI process like building the dimensions, measures and cubes then load the data into the cube by writing the code in Prolog selection.

I am very new to this Prolog coding and I am getting stuck and confused at this point and hence sincerely request for help on this.

Here are my dimensions and measures as follows below
Company Number,
Division Number,
Customer Name,
Job Type Description,
Month,
Year,
Lots,
Job City,
Contract Amount,
Revenue,
Budget Cost of Sales,
Actual Cost of Sales

Here months are divided into four Quarters (Q1, Q2, Q3, Q4) and here the Quarter roll-up is required. For example Q1 acts as Parent element and Jan, Feb and Mar are the child elements for Q1.

How do I build the code could anyone help me on writing the code for the above requirement? Please need help on this.

Thanks in advance..!
Rao

Re: How do I write a TI code in Prolog tab for my requirement?

Posted: Tue Jan 10, 2017 1:38 pm
by TrevorGoss
Hello Rao,

You will be lucky if someone on here writes your code for you, but below are some links to the functions that can help you do what you want to do.

http://www.ibm.com/support/knowledgecen ... ons_N71607 ... This link will take you to the TI functions that pertain to dimension manipulation.

http://www.ibm.com/support/knowledgecen ... ons_N7121E ... This one for cubes.

There are some functions for dimension editing that have "Direct" on the end. This means that the change will be made straight away, without the Direct in the name the changes you make to any dimension will not come into effect until the Prolog tab has finished. It is important to take into account that apart from the Direct functions, changes you make will not be saved to disk until the Prolog tab has finished.

Trev

Re: How do I write a TI code in Prolog tab for my requirement?

Posted: Tue Jan 10, 2017 1:53 pm
by tomok
msrao186 wrote:My client wants everything to be done from the TI process like building the dimensions, measures and cubes then load the data into the cube by writing the code in Prolog selection.
By definition (think of what the word "Prologue" means) the Prolog tab would be code that get's executed BEFORE you have access to the records in the data source of the TI process. How are you going to add all the Companies, Divisions, Customers, etc., if you don't know what they are? What you do is create the dimensions and cubes in the Prolog tab, add the elements in the Metadata tab, and load the data in the Data tab. This is pretty basic TI stuff and is covered very adequately in the user manuals.

Re: How do I write a TI code in Prolog tab for my requirement?

Posted: Tue Jan 10, 2017 3:02 pm
by msrao186
TrevorGoss wrote:Hello Rao,

You will be lucky if someone on here writes your code for you, but below are some links to the functions that can help you do what you want to do.

http://www.ibm.com/support/knowledgecen ... ons_N71607 ... This link will take you to the TI functions that pertain to dimension manipulation.

http://www.ibm.com/support/knowledgecen ... ons_N7121E ... This one for cubes.

There are some functions for dimension editing that have "Direct" on the end. This means that the change will be made straight away, without the Direct in the name the changes you make to any dimension will not come into effect until the Prolog tab has finished. It is important to take into account that apart from the Direct functions, changes you make will not be saved to disk until the Prolog tab has finished.

Trev
Thank you very much Trevor. The links which you have sent are very useful to me I am working on this now.

Re: How do I write a TI code in Prolog tab for my requirement?

Posted: Tue Jan 10, 2017 3:05 pm
by msrao186
tomok wrote:
msrao186 wrote:My client wants everything to be done from the TI process like building the dimensions, measures and cubes then load the data into the cube by writing the code in Prolog selection.
By definition (think of what the word "Prologue" means) the Prolog tab would be code that get's executed BEFORE you have access to the records in the data source of the TI process. How are you going to add all the Companies, Divisions, Customers, etc., if you don't know what they are? What you do is create the dimensions and cubes in the Prolog tab, add the elements in the Metadata tab, and load the data in the Data tab. This is pretty basic TI stuff and is covered very adequately in the user manuals.

Thank you Tom.! I will do the same. I appreciate your time for quickly responding.

Re: How do I write a TI code in Prolog tab for my requirement?

Posted: Tue Jan 10, 2017 3:25 pm
by Mark RMBC
I don’t know about anyone else but for example, I have a model with 30 dimensions and I think I am safe to say that no 2 dimensions are built in the same way!

Some just add an element to the top consolidated level, others delete all the consolidated levels on the prolog and then rebuild the hierarchy again on the metadata, others create subsets as part of the build and some create the attributes. On one I use the Prolog to build the hierarchy by doing a while loop over the dimension, but that is another story. So I would say you need to think very carefully about how to future proof your dimension builds.

Also, in my opinion if you have a static dimension that will never change and only has a few elements within it then there is no need to TI this, no matter what the client thinks!

One more thing, if I have a dimension with one consolidated element I will create that first manually and then TI the for any updates etc.

Re: How do I write a TI code in Prolog tab for my requirement?

Posted: Tue Jan 10, 2017 4:38 pm
by msrao186
Mark RMBC wrote:I don’t know about anyone else but for example, I have a model with 30 dimensions and I think I am safe to say that no 2 dimensions are built in the same way!

Some just add an element to the top consolidated level, others delete all the consolidated levels on the prolog and then rebuild the hierarchy again on the metadata, others create subsets as part of the build and some create the attributes. On one I use the Prolog to build the hierarchy by doing a while loop over the dimension, but that is another story. So I would say you need to think very carefully about how to future proof your dimension builds.

Also, in my opinion if you have a static dimension that will never change and only has a few elements within it then there is no need to TI this, no matter what the client thinks!

One more thing, if I have a dimension with one consolidated element I will create that first manually and then TI the for any updates etc.
Thank you Mark.! for sharing you view point and appreciate your time for responding to my query.