Category Archives: TI Processes

Turbo Integrator creates processes that can be executed.

TM1 Clear Attribute – an AttrClear Function

The AttrClear or ClearAttr function doesn’t exist in TM1. Here is an easy method to replicate what functions like these would do, with a downloadable example

How to Create Virtual Dimensions in TM1/Planning Analytics

Virtual Dimensions in TM1 and Planning Analytics allow you to use Attributes to create additional analytic capability. Here we explain how to create them with code examples.

“Joining” Text Files in a TM1 Turbo Integrator Process

How do you join text files in a TI when loading into TM1? In this post we discuss a method to emulate an SQL join in a TI where a csv or text file is the source for the Turbo Integrator process.

CubeClearData TM1 Function Syntax and Use

CubeClearData: TM1 and Cognos Express command for clearing all data from a TM1 cube without deleting and recreating the cube. It does not give the flexibility of deleting the data from only a slice of a cube.

Null Values in a Turbro Integrator Process

This is a short and simple post to help you check for null values. There is no direct TI command to check if values being loaded are null or not, but we have come up with two easy checks to search for a string or numeric null value.

TM1 SaveDataAll Data Locks

Recently I encountered a situation where we had a SaveDataAll process running every half hour that had started impacting the system performance.  The environment is largely for enterprise planning and we wanted the protection of having TM1 saved to disk regularly through the day to protect against any unforeseen outages. This was largely able to be executed in a couple of seconds and thus had no real impact. Then we added … Continue Reading

Exporting Data from TM1 to an External Database

I needed to create a rollup in a data warehouse the other day from elements that are stored in TM1. This process works just as well for SQL Server, Oracle, DB2 or any other database engine. Simple Method to get data out of TM1 and into a Database Simply, the easiest way to get data out of TM1 and into a database is to publish it out of TM1 using … Continue Reading

DatasourceNameForServer and DatasourceNameForClient TM1 Functions: Use and Syntax

Ever wondered how you can vary the data source for a Turbo Integrator process inside the actual process so it becomes dynamic? Well here is a method. Firstly, define a bunch of variables: sCurrentMonth = CellGetS ( ‘System Assumptions’, ‘No Year’, ‘No Month’, ‘Current Month’, ‘String’ ); sFileDir = ‘\\servername\folder\’; sFileName = sCurrentMonth | ‘ ‘ | SUBST(sCurrentYear,3,2) | ‘ Employees.csv’; sFilePath = sFileDir | sFileName; Then use DatasourceNameForServer and DatasourceNameForClient to … Continue Reading

ELLEV TM1 Function: Use and Syntax

The ELLEV function returns the numeric value of the level for an element in a dimension in TM1. Syntax The syntax is ELLEV(dimension, element); where: dimension, is the dimension you are interrogating, and element, is the element you want the level number for Use of ELLEV This function is used to determine the level of a specific element in a dimension.  It is often used in conjunction with an IF statement to … Continue Reading

How to Pad a Variable Length Element in TM1

Often we have a situation were we want to create a dimension with the contents of a code from a source system.  Sometimes, however the IDs in the source system are of a variable length and we want to present them uniformly.  To overcome this, we need to pad the code at the left with a constant character to make them all the same length. the method below will pad out … Continue Reading