Arc Process Editor

Arc Process Editor

Overview

The Arc TM1 Process Editor is a browser-based interface for creating and editing TurboIntegrator (TI) processes in IBM Planning Analytics / TM1. Developed by Cubewise, Arc extends the default TM1 developer experience with modern code editing features — including syntax highlighting, auto-complete, real-time error detection, and search/replace — that are not available in the native IBM Architect or Planning Analytics Workspace (PAW) clients.

This page is a comprehensive reference for TM1 developers, administrators, and power users working with the Arc Process Editor. It covers the interface structure, core features, TI process phases, and best practices.

Key Concepts

Term

Definition

Term

Definition

TurboIntegrator (TI)

TM1's scripting language used for ETL processes, data loading, dimension manipulation, and automation.

Process Editor

The UI component in Arc for writing, editing, and running TI processes.

Arc

A web-based TM1 development tool by Cubewise, providing a modern alternative to IBM Architect and PAW.

Process Phases (Prolog / Metadata / Data / Epilog)

The four execution stages of a TI process, each represented as a separate code tab in the editor.

Parameters

Input variables passed to a TI process at runtime, configurable via the Parameters tab.

Process Editor Interface

Data Source Tab

Defines the input source for the TI process. Supported data source types include: None, TM1 Cube View, ASCII/CSV File, ODBC, TM1 Dimension Subset, and IBM Cognos TM1 Package.

Parameters Tab

Allows developers to define named parameters (String or Numeric) with default values. Parameters are accessible across all code tabs and can be passed dynamically at runtime by chores, other processes, or user prompts.

Variables Tab

Displays the variables mapped from data source columns. Variable types (String/Numeric) and their usage context (Element, Data, Other) are configurable here.

Code Tabs: Prolog, Metadata, Data, Epilog

Phase

Execution Timing

Typical Use

Phase

Execution Timing

Typical Use

Prolog

Once, before the data loop

Initialisation, locking cubes, clearing data

Metadata

Once per record (dimension changes)

Creating/updating dimension elements and hierarchies

Data

Once per record (cube writes)

Writing values to TM1 cubes

Epilog

Once, after the data loop

Cleanup, logging, triggering downstream processes

Key Features

Syntax Highlighting

Full TurboIntegrator syntax highlighting distinguishes functions, variables, strings, comments, and control flow keywords. This significantly improves readability for complex processes.

Auto-Complete

Intelligent auto-complete suggestions for TM1 built-in functions, user-defined parameters, and variables reduce typing errors and speed up development.

Real-Time Error Detection

Arc validates TI code in real time and flags syntax errors inline before the process is saved or executed. This pre-execution validation reduces failed runs and debugging overhead.

Search & Replace

A built-in search and replace tool lets developers quickly find function calls, variable names, or string literals across all code tabs within a process.

Run & Debug

Processes can be executed directly from the editor. Arc surfaces execution results, error messages, and log output inline — removing the need to consult TM1 server logs during development.

Best Practices

  • Use comments generously — TI code can become complex. Comment each block with a clear description of intent.

  • Prefer parameters over hardcoded values — Makes processes reusable and easier to maintain.

  • Use Prolog for setup, Epilog for teardown — Reserve the Data tab for cube writes to keep logic separated and clear.

  • Always validate before running — Use Arc's real-time validation to catch syntax errors before execution.

  • Apply consistent naming conventions — Use prefixes (e.g. } for system processes) to organise and make processes easily discoverable.

Common TI Functions Reference

Function

Description

Function

Description

CellPutN / CellPutS

Write numeric or string values to a cube cell.

DimensionElementInsert

Add a new element to a TM1 dimension.

ExecuteProcess

Invoke another TI process from within the current one.

ProcessError / ProcessQuit

Terminate a process with an error or exit gracefully.

SubsetCreateByMDX

Create a dimension subset using an MDX expression.

ViewExtractSkipCalcsSet

Control whether calculated cells are included when extracting from a cube view.

Related Resources