Creating and editing TurboIntegrator processes

Keep in mind the following items when creating and editing TurboIntegrator processes.

  • TurboIntegrator compiles a new or altered dimension only at the conclusion of the procedure in which the dimension is created or altered.

    In the case of a new dimension, this means that you cannot access the new dimension (through TurboIntegrator or otherwise) until the procedure in which the dimension is created has finished processing all records in the data source. In the case of an altered dimension, this means that you cannot access any new elements in the dimension until the procedure in which the dimension is altered has finished processing.

  • TurboIntegrator and rules functions (with the exception of STET) can be used in any procedure of a process. Further, there are no restrictions regarding which functions can be used in a given procedure; all functions are valid in any TurboIntegrator procedure.
  • See "Formulas" in the Introduction to Rules chapter of the TM1 Rules documentation for information on using different kinds of operators, such as logical and arithmetic operators in TI processes and rules.
  • In the TurboIntegrator process, null values are converted into zeroes for Numeric values and NULL values are converted into empty strings for String Values.
  • If you try to put a Consolidated element under an existing N-level element, the N-level element changes to a Consolidated element and any data in the original N-level element will be lost.

However, you must create a logical sequence of functions to ensure that a process accomplishes your goal. For example, if you want to build a process that adds new elements to a dimension and updates data values for the new elements, you must be sure that the process adds the new elements and compiles the dimension before attempting to update data values for the new elements. In most circumstances, you would add the new elements in the Metadata procedure using the DimensionElementInsert function, then update values in the Data procedure using the CellPutN function.

Using the above example, if you attempt to build a process in which both new elements are added and corresponding data values are updated in the Data procedure, the process will fail. The failure occurs because, as noted above, altered dimensions are compiled only at the conclusion of a procedure. Until the dimension is compiled, the new elements do not exist. TurboIntegrator cannot update data values for elements that do not exist, so the process fails.