Product:

Planning Analytics 2.1.19

Issue:

How to get a Forecast for a cube view?

Solution:

To make a forecast happen, you need to have a few tings setup in your TM1 model. This is a list of suggestions that may be needed.

The cube you are doing the forecast must have a TIME dimension.  This are in TM1 Architect set on the cube properties.

The dimension for time, need to be in a format that TM1 understands.

Like Only years, or Year – quarters – months hierarchy.

Forecasting requires the time dimension to be placed on the column.

You must have data in all the periods, if you only have data in Quarters, but the dimension contain blank months, the predict may not work. You can get a message like:

Too many missing or zero values in the historical data.

The historical data must represent at least double what is being forecasted. If you forecast 2 years, you need 4 years of old data.

The view need empty periods where the prediction can be created. If you want to look 5 years forward, your TIME dimension need to contain empty elements for 5 years.

To begin forecasting, click an exploration view in a book, then click Forecast and click either Univariate or Multivariate, depending on which type of forecast you want to generate. A univariate forecast predicts the future values of a single variable based on historical data, using the Holt-Winters model.

Use the Set up tab to define the start date and end date for your forecast.

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=options-set-up-forecast-tab

You can preview only one time series at a time. The forecasting preview shows what the results for the forecast look like, based on your input.

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=forecasting-preview

 

If you do not have a }DimensionAttributes cube in your TM1 model, you need to create one from PAW.

Right click on the Dimension and select Dimension Attributes.

Enter the attribute name: DIMENSION_TYPE

Click Add.

Then in the view of the DimensionAttributes cube, find the row for your year dimension and enter TIME as DIMENSION_TYPE.

This is the TIME dimension that can be used by the forecast.

https://revelwood.com/ibm-planning-analytics-tips-tricks-planning-analytics-forecasting-configuring-the-time-dimension/ 

 

You can also use PAW to create a TIME dimension for you – that can be on monthly level.

The TIME dim created by PAW will look like this,  you may use it in your new models.

 

 

Above is only suggestions, depending on the version of PAW this can behave or look different.

More Information:

https://revelwood.com/use-the-planning-analytics-ai-assistant-for-smarter-data-analysis/ 

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=dimensions-time-in-planning-analytics-workspace 

  1. Right-click the Dimensions node in your database on the Databases tree, then click Create time dimension.

    Alternatively, you can create a time dimension by clicking the Configure time dimension option when you create a new dimension. The Configure time dimension option is only available for a dimension with one hierarchy and no members.

  2. If required, enter a name for the dimension.
  3. Select the Start year for the dimension.
  4. Select the End year for the dimension.
  5. Answer the How frequently do you plan? question by selecting the granularity of the dimension.
    Months
    This option gives you three levels: Months, Quarters, Years.
    Quarters
    This option gives you two levels: Quarters, Years.
    Years
    This option gives you one level: Years.
  6. Check the preview to confirm that it matches your expectation, then click Save.
    You can modify the time dimension in the dimension editor after you create it.

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=forecasting-requirements

Forecasting requires the time dimension to be placed on the column. The algorithm requires the time dimension members to be organized in order of increasing time, where each member of a level represents a consistent unit of time. Members within the dimension definition that do not conform to this requirement, for example calculated year-to-date member, can be hidden. Relevant time periods can be chosen to be ignored, resulting in a linear interpolation of values to be predicted from. Forecasting also supports hierarchical time dimensions and nested dimensions as time: year, quarter, and month dimensions.

One consequence of this is that leaves with multiple parents along the time series would result in non-contiguous time, so special care must be taken in these cases. If possible, it is advised to consider adding a special hierarchy for time series forecasting to support the required time configuration.

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=views-forecasting

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=forecasting-error-messages 

Something went wrong while generating the forecast for one or more series
This is a general message for any unsuccessful prediction. Please try again.

IBM Planning Analytics Tips & Tricks: Planning Analytics Forecasting – Configuring the Forecast Settings

 

IBM Planning Analytics Tips & Tricks: Planning Analytics Forecasting – Previewing the Forecast

 

IBM Planning Analytics Tips & Tricks: Planning Analytics Forecasting – Setting up the Forecast

 

Product: 
TM1 10

Issue:

TM1 SSL expire again in June 2026.

Solution:

Follow IBM recommendations.

 

TM1 SSL Certificate Generation – ApplixCA – Instructions

This document provides a script and/or step-by-step manual instructions for generating and deploying new applixca TM1 SSL certificates.  The script can be used to automate the generation of new certificates.  The manual steps are available to help with an understanding of the steps that the script has automated.

Prerequisites

1. Download and Install OpenSSL

Download Win64 OpenSSL v4.0.1 from:
https://slproweb.com/products/Win32OpenSSL.html

Install to the default location: C:\Program Files\OpenSSL-Win64

The OpenSSL executable will be located at: C:\Program Files\OpenSSL-Win64\bin\openssl.exe

2. Other Requirements

  • Administrative access to TM1 installation directories
  • TM1 services stopped before beginning

Important Notes

  • Password for CA keyapplix
  • Password for Java cacertschangeit
  • Password for tm1storeapplix
  • All commands should be run from a Command Prompt with administrative privileges

Automated Script:

For automated execution of these steps, use the included update-applixca-certs.bat script. The script performs all the above steps. To run the automated script:

  1. Download the update-applixca-certs.bat file here
  2. Place the update-applixca-certs.bat file in C:\Program Files\OpenSSL-Win64\bin\
  3. Open Command Prompt as Administrator
  4. Navigate to the C:\Program Files\OpenSSL-Win64\bin\ directory
  5. Run: update-applixca-certs.bat
  6. Follow the prompts to specify your TM1 SSL directory path, default C:\Program Files\ibm\cognos\tm1_64\bin64\ssl
  7. After certificates have been generated, the updated ssl folder will need to be provided to any users of Architect / Perspectives
  8. If using distributed installs, the updated ssl folders will need to be copied to additional installation directories
    1. Ensure all ssl folders are updated, including tm1store and cacerts files

Manual Instructions (what the automated script does):

Step 1: Set Environment Variables and Working Directory

  1. Open Command Prompt as Administrator
  2. Set the TM1_ROOT environment variable (replace with your actual TM1 installation path):
    set "TM1_ROOT=C:\Program Files\ibm\cognos\tm1_64"
  3. Verify tm1sd.exe exists in the bin64 directory:
    dir "%TM1_ROOT%\bin64\tm1sd.exe"
  4. Navigate to the OpenSSL bin directory (this will be your working directory):
    cd "C:\Program Files\OpenSSL-Win64\bin"

Note: The TM1_ROOT environment variable will be used in all subsequent commands. From this root path, the following paths are derived:

  • bin64 directory%TM1_ROOT%\bin64
  • bin64 SSL%TM1_ROOT%\bin64\ssl
  • bin SSL%TM1_ROOT%\bin\ssl
  • Webapps SSL%TM1_ROOT%\webapps\pmpsvc\WEB-INF\bin64\ssl
  • Java keytool%TM1_ROOT%\bin64\jre\7.0\bin\keytool.exe
  • Java cacerts%TM1_ROOT%\bin64\jre\7.0\lib\security\cacerts

Step 2: Backup Existing SSL Directories

Create backups of all SSL directories before making changes:

xcopy "%TM1_ROOT%\bin64\ssl" "%TM1_ROOT%\bin64\ssl_bkp\" /E /I /H /Y
xcopy "%TM1_ROOT%\bin\ssl" "%TM1_ROOT%\bin\ssl_bkp\" /E /I /H /Y
xcopy "%TM1_ROOT%\webapps\pmpsvc\WEB-INF\bin64\ssl" "%TM1_ROOT%\webapps\pmpsvc\WEB-INF\bin64\ssl_bkp\" /E /I /H /Y

Step 3: Delete Old Certificate Files

Delete the following files from the bin64\ssl directory:

del /q "%TM1_ROOT%\bin64\ssl\tm1admsvrcert.pem"
del /q "%TM1_ROOT%\bin64\ssl\tm1svrcert.pem"
del /q "%TM1_ROOT%\bin64\ssl\applixca.pem"
del /q "%TM1_ROOT%\bin64\ssl\applixca.der"
del /q "%TM1_ROOT%\bin64\ssl\applixca.crl"

Step 4: Create Certificate Authority (CA) Directory Structure

Create the CA structure in the OpenSSL bin directory (you should already be here from Step 1):

mkdir applixCA
mkdir applixCA\private
mkdir applixCA\newcerts
echo. > applixCA\index.txt
echo 01 > applixCA\serial

Step 5: Generate CA Private Key

Generate the CA private key (password: applix). Since you’re in the OpenSSL bin directory, use openssl.exe directly:

openssl.exe genrsa -des3 -out applixCA\private\applixcakey.pem -passout pass:applix 2048

Step 6: Generate CA Certificate

Create the CA certificate (password: applix):

openssl.exe req -new -x509 -days 3650 -key applixCA\private\applixcakey.pem -out applixCA\applixca.pem -subj "/C=US/ST=State/L=City/O=Organization/OU=Unit/CN=TM1 CA" -passin pass:applix

Step 7: Convert CA Certificate to DER Format

Convert the PEM certificate to DER format:

openssl.exe x509 -in applixCA\applixca.pem -outform DER -out applixCA\applixca.der

Step 8: Generate TM1 Server Certificate

Create the TM1 server certificate and key (password: applix):

openssl.exe req -new -nodes -out tm1svrcert.csr -keyout tm1svrcert.key -subj "/C=US/ST=State/L=City/O=Organization/OU=Unit/CN=localhost"

openssl.exe x509 -req -in tm1svrcert.csr -CA applixCA\applixca.pem -CAkey applixCA\private\applixcakey.pem -CAcreateserial -out tm1svrcert.crt -days 3650 -passin pass:applix

type tm1svrcert.crt tm1svrcert.key > tm1svrcert.pem

del tm1svrcert.csr
del tm1svrcert.crt
del tm1svrcert.key

Step 9: Generate TM1 Admin Server Certificate

Create the TM1 admin server certificate and key (password: applix):

openssl.exe req -new -nodes -out tm1admsvrcert.csr -keyout tm1admsvrcert.key -subj "/C=US/ST=State/L=City/O=Organization/OU=Unit/CN=localhost"

openssl.exe x509 -req -in tm1admsvrcert.csr -CA applixCA\applixca.pem -CAkey applixCA\private\applixcakey.pem -CAcreateserial -out tm1admsvrcert.crt -days 3650 -passin pass:applix

type tm1admsvrcert.crt tm1admsvrcert.key > tm1admsvrcert.pem

del tm1admsvrcert.csr
del tm1admsvrcert.crt
del tm1admsvrcert.key

Step 10: Create Certificate Revocation List (CRL)

Generate an empty CRL file (password: applix):

openssl.exe ca -gencrl -keyfile applixCA\private\applixcakey.pem -cert applixCA\applixca.pem -out applixCA\applixcacrl.pem -config nul -passin pass:applix

If this fails, create a basic empty CRL:

echo -----BEGIN X509 CRL----- > applixCA\applixcacrl.pem
echo -----END X509 CRL----- >> applixCA\applixcacrl.pem

Step 11: Copy Certificates to TM1 SSL Directories

Copy all generated certificates from the OpenSSL bin directory to the TM1 SSL directories:

To bin64\ssl:

copy /y applixCA\applixca.pem "%TM1_ROOT%\bin64\ssl\applixca.pem"
copy /y applixCA\applixca.der "%TM1_ROOT%\bin64\ssl\applixca.der"
copy /y applixCA\applixcacrl.pem "%TM1_ROOT%\bin64\ssl\applixcacrl.pem"
copy /y tm1svrcert.pem "%TM1_ROOT%\bin64\ssl\tm1svrcert.pem"
copy /y tm1admsvrcert.pem "%TM1_ROOT%\bin64\ssl\tm1admsvrcert.pem"

To bin\ssl (if exists):

copy /y applixCA\applixca.pem "%TM1_ROOT%\bin\ssl\applixca.pem"
copy /y applixCA\applixca.der "%TM1_ROOT%\bin\ssl\applixca.der"
copy /y applixCA\applixcacrl.pem "%TM1_ROOT%\bin\ssl\applixcacrl.pem"
copy /y tm1svrcert.pem "%TM1_ROOT%\bin\ssl\tm1svrcert.pem"
copy /y tm1admsvrcert.pem "%TM1_ROOT%\bin\ssl\tm1admsvrcert.pem"

To webapps SSL:

copy /y applixCA\applixca.pem "%TM1_ROOT%\webapps\pmpsvc\WEB-INF\bin64\ssl\applixca.pem"
copy /y applixCA\applixca.der "%TM1_ROOT%\webapps\pmpsvc\WEB-INF\bin64\ssl\applixca.der"
copy /y applixCA\applixcacrl.pem "%TM1_ROOT%\webapps\pmpsvc\WEB-INF\bin64\ssl\applixcacrl.pem"
copy /y tm1svrcert.pem "%TM1_ROOT%\webapps\pmpsvc\WEB-INF\bin64\ssl\tm1svrcert.pem"
copy /y tm1admsvrcert.pem "%TM1_ROOT%\webapps\pmpsvc\WEB-INF\bin64\ssl\tm1admsvrcert.pem"

Step 12: Update Java cacerts Keystore

Update the Java cacerts keystore with the new CA certificate (password: changeit):

cd "%TM1_ROOT%\bin64\jre\7.0\bin"

REM Remove existing applixca alias (ignore errors if not present)
keytool.exe -delete -alias applixca -keystore "..\lib\security\cacerts" -storepass changeit

REM Import new CA certificate
keytool.exe -import -trustcacerts -noprompt -file "%TM1_ROOT%\bin64\ssl\applixca.pem" -keystore "..\lib\security\cacerts" -storepass changeit -alias applixca

Find and Update All Other cacerts Files

Search for all cacerts files in the TM1 installation (excluding backups):

cd "%TM1_ROOT%"
dir /s /b cacerts | findstr /v /i "_bkp\ _backup\ backup\"

For each cacerts file found (other than the one just updated), copy the updated cacerts:

copy /y "%TM1_ROOT%\bin64\jre\7.0\lib\security\cacerts" "path\to\other\cacerts"

Step 13: Update tm1store Keystore

Update the tm1store keystore with the new CA certificate (password: applix):

cd "%TM1_ROOT%\bin64\jre\7.0\bin"

REM Remove existing applixca alias (ignore errors if not present)
keytool.exe -delete -alias applixca -keystore "%TM1_ROOT%\bin64\ssl\tm1store" -storepass applix

REM Import new CA certificate
keytool.exe -import -trustcacerts -noprompt -file "%TM1_ROOT%\bin64\ssl\applixca.pem" -keystore "%TM1_ROOT%\bin64\ssl\tm1store" -storepass applix -alias applixca

Find and Update All Other tm1store Files

Search for all tm1store files in the TM1 installation (excluding backups):

cd "%TM1_ROOT%"
dir /s /b tm1store | findstr /v /i "_bkp\ _backup\ backup\"

For each tm1store file found (other than the one just updated), copy the updated tm1store:

copy /y "%TM1_ROOT%\bin64\ssl\tm1store" "path\to\other\tm1store"

Step 14: Replace All SSL Folders

Search for all SSL folders in the TM1 installation (excluding backups):

cd "%TM1_ROOT%"
dir /s /b /ad ssl | findstr /v /i "_bkp\ _backup\ backup\"

For each SSL folder found (other than bin64\ssl which is the source):

  1. Create a timestamped backup:
    xcopy "path\to\ssl\folder" "path\to\ssl\folder_bkp_YYYYMMDD_HHMM\" /E /I /H /Y
  2. Copy updated certificates to the folder:
    xcopy "%TM1_ROOT%\bin64\ssl\*.*" "path\to\ssl\folder\" /Y

Step 15: Restart TM1 Services

After all certificates are deployed, restart your TM1 services


Verification

After completing all steps:

  1. Verify certificates are present in all SSL directories
  2. Ensure any distributed server or client installs have been updated with the newly generated certificates
  3. Test TM1 connections to ensure SSL is working properly

Troubleshooting

OpenSSL Command Not Found

Permission Denied Errors

  • Run Command Prompt as Administrator
  • Ensure TM1 services are stopped before modifying files

Certificate Import Failures

  • Verify the certificate file exists and is readable
  • Check that passwords are correct
  • Ensure keystore files are not corrupted

Services Won’t Start

  • Check TM1 logs for SSL-related errors
  • Verify certificate files are in the correct locations
  • Ensure certificate and key formats are correct

Enabling SSL Debug Logging

TM1 Admin Server:

  • Edit %TM1_ROOT%\bin64\tm1admsrv-log.properties
  • Update the rootLogger and logger sections from INFO to DEBUG:
    log4j.rootLogger=DEBUG, R1
    log4j.logger.TM1=DEBUG
  • SSL debug logging is written to tm1admsrv_<datetimestamp>.log files in the bin64 directory

TM1 Server:

  • Configure tm1s-log.properties file (located in same directory as tm1s.cfg)
  • Add the following line:
    log4j.logger.TM1.Comm.SSL=DEBUG
  • If file doesn’t exist, copy from sample directory:
    copy "%TM1_ROOT%\samples\tm1\PlanSamp\tm1s-log.properties" "path\to\your\tm1server\tm1s-log.properties"
  • No restart required – changes take effect immediately
  • SSL debug logging is written to tm1server.log file

 

More Information:

https://www.ibm.com/support/pages/node/7276835

 

 

Product:
Planning Analytics  TM1_version=TM1-AW64-ML-RTM-11.0.913.10-0

Windows Server 2019

Issue:

There are more than one IDE for TM1 now. How do I setup the browser based?

https://github.com/falconbi/tm1_ide

Solution:

On your windows laptop install node.js  – download the msi from https://nodejs.org/en/download 

Install the node-v24.18.0-x64.msi program to folder C:\Program Files\nodejs

Start powershell as administrator

Create a folder like IDE, go to that folder and enter below command:

git clone https://github.com/falconbi/tm1_ide.git

go to the new folder
cd tm1_ide

Remove security in powershell with command

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned

Run below to install

npm install

For native TM1 access, ensure the HTTPPortNumber are set in tm1s.cfg for your applications. If you use Admin with password apple, ensure that account exist in all your TM1 applications with the same password.

Go to folder  C:\ide\tm1_ide\config and create the text file servers.json in notepad++

Enter below text, and adjust it to your ip number to your TM1 server, and the user and password to use.

{
"adminHosts": [
{
"name": "MyLab",
"url": "http://192.168.1.220:5895",
"adapter": "direct-v11",
"loginServer": "proven_techniques",
"username": "admin",
"password": "apple",
"servers": ["24Retail", "proven_techniques"]
}
]
}

At servers row, list all the TM1 server you should access.

The port 5895 is for the TM1 admin service, that the IDE will talk to first.

Go to tm1_ide folder and copy file .env.example to .env

In the C:\ide\tm1_ide change the .env file to only contain one row

The port 8083 is the port the client will use for you to access it.

From powershell to start IDE enter

npm start
Start your chrome browser and go to  http://localhost:8083

There you are with a new tool to edit TM1. There are a few to select from now – both free and paid for.

 

More Information from the different IDE:

https://cubewisecare.atlassian.net/wiki/spaces/AIAC1/overview

https://marketplace.visualstudio.com/items?itemName=TimGeilen.pa-code

https://github.com/bgregs514/tm1_ide

TM1 IDE has been replaced by vscode-tm1, a Visual Studio Code extension for TM1. While many of the ideas from this project have been carried forward into vscode-tm1, this project has been deprecated and will be left here for reference.

Old Description

Still pending official name – for now TM1 IDE will be used. The goal of TM1 IDE is to implement a development environment with a desktop feel for both rules and processes. With the onset of the IBM provided Rest API, there has been a proliferation of web-based editors, but nothing that provides a true native experience for the more traditional developer. This project aims to cut through the feature overload that has become increasingly popular, and provide the average developer with a simple, clean interface that stays out of their way.

How to use

Ensure NodeJS/npm is installed.

Open a shell (Powershell in this example) and run the following after cloning to install project dependencies:

npm install
Then run the following to start the applicaton:
npm start
Architecture
  • Electron for desktop experience
  • NodeJS for core logic and integration
  • Monaco for the development area

https://open-vsx.org/extension/flamey3t1/vscode-tm1-ide

TM1 IDE — The Complete IDE for IBM Planning Analytics / TM1

Author: flameY3T1

TM1 IDE turns VS Code into a full development environment for IBM Planning Analytics / TM1. Write TI processes and rules with real autocomplete and a server-backed compile check, browse and edit cubes and dimensions visually, run MDX, trace process call graphs, test processes without touching your data, and mirror everything to Git — all from one tree, across as many servers as you like.

If you’ve been switching between Architect, PAW, and a text editor, TM1 IDE replaces all three with a single, modern, keyboard-driven workflow. No prior VS Code experience required — this guide gets you running.


Why TM1 IDE

Most TM1 editors stop at “edit a process, push it back.” TM1 IDE goes further:

  • Visual cube & dimension editing — pivot cubes, write back values, spread, and restructure hierarchies by drag-and-drop. Not just code.
  • Server compile-check on save — bad code never reaches the server. The save is blocked, not silently broken.
  • Configurable linter + formatter — per-server rule sets and severities: strict on Prod, relaxed on Sandbox.
  • Call-graph & references — see the blast radius of a process before you change it.
  • Git mirror — materialize processes and rules as files, with drift detection and diff.
  • Fully localized — complete English and German UI.

Getting Started

Step 1 — Install

  1. Open your favorite IDE (VS Code, Kiro, …).
  2. Open Extensions (Ctrl+Shift+X), search for “TM1 IDE”, click Install.
  3. Fully restart the IDE — a window reload is not enough.

A new TM1 Explorer icon appears in the activity bar — your main entry point.

https://www.tm1forum.com/viewtopic.php?t=15666

https://github.com/bgregs514/vscode-tm1/discussions/33

https://github.com/falconbi/tm1_ide

The Browser version of TM1 IDE

For environments where TM1 is accessed through PAW, do below steps to connect:

cp .env.example .env
Edit .env:
PAW_HOST=http://192.168.x.x
PAW_USERNAME=admin
PAW_PASSWORD=your_password
PAW_LOGIN_SERVER=Production
PORT=8083

# Optional: AI-powered MDX generation
ANTHROPIC_API_KEY=sk-ant-...
Edit config/servers.json:
[
  { "name": "Production" },
  { "name": "Development" }
]

See Authentication for multi-host and advanced adapter setups.

3. Run

 

npm start

Root cause: PAW validates all logins against one specific TM1 server — the TM1 Login Server — configured in PAW Admin Console → Configuration → TM1 Login Server URI. Users created on any other server are invisible to PAW auth.

Fix shipped:

  • Added PAW_LOGIN_SERVER to .env and .env.example
  • All 10 user/group routes in server.js now always target PAW_LOGIN_SERVER regardless of selected workspace server
  • README updated with new “PAW Login Server” section

V12 note: TM1 Login Server is a V11-only concept. User management in the IDE must be adapter-aware — disabled or routed to IdP on V12/OIDC environments.


2. PAW Architecture — Key Facts

 

  • PAW is not a separate user store — in TM1 native auth mode, TM1 }Clients IS the user store
  • PAW has one designated TM1 Login Server for auth — all logins validated there (V11 only)
  • PAW discovers TM1 servers via the TM1 Admin Host (port 5895 HTTP / 5898 HTTPS) — a separate service acting as a server registry. TM1 servers register themselves on startup
  • PAW V12 replaces the TM1 Login Server concept with OIDC — identity comes from the IdP, not }Clients
  • The TM1 Login Server constraint is V11-only

Admin Host discovery API (direct, reliable):

GET http://{adminhost}:5895/api/v1/Servers
GET https://{adminhost}:5898/api/v1/Servers

Source: TM1 Admin Server API

PAW proxy list API (unreliable):

GET {paw-host}/api/v1/tm1/Servers

Included in the IBM Postman collection but explicitly noted as “not exposed through the PAW proxy”. Do not depend on this without testing on your instance. tm1_paw_tree documents: “PAW has no endpoint to list TM1 server names”.


3. Arc vs Our IDE — Connection Model

 

Arc connects directly to TM1 via the Admin Host, bypassing PAW entirely. For IBM Cloud / AWS, Arc uses IBM IAM API keys → Bearer tokens — direct Admin Host is blocked by cloud firewalls.

Key discovery: the TM1 OData path suffix is identical across all deployment types:

{base}/api/{pawVersion}/tm1/{database}/api/v1/{endpoint}

Only the auth mechanism, base URL, and PAW API version prefix change. Our existing PAW-proxy architecture is the right shape — it just needs pluggable auth underneath.

Read more in there documentation.

https://marketplace.visualstudio.com/items?itemName=CarpeDatum.tm1-helper 

https://github.com/falconbi/tm1_ide/blob/main/docs/REST%20API%20README%20.md

https://marketplace.visualstudio.com/items?itemName=tm1-oss.rest-client-tm1-dev

https://code.cubewise.com/software/products/arc/

https://workspace.google.com/marketplace/app/teamone/112725458607

https://omnitm1.com/

https://github.com/ACG-Code/ACG-Utilities-for-IBM-Planning-Analytics

https://getgreenshot.org/

https://marketplace.visualstudio.com/items?itemName=flameY3T1.vscode-tm1-ide

https://marketplace.visualstudio.com/items?itemName=TimGeilen.pa-code

Product:
Planning Analytics 2.1.19 for excel
Microsoft Windows 2022 server

Issue:

In a PAFE (PAX) report where a cell have a formula with @DBRW the cell is not updateable, you have to write the full value again. Is there a way to edit the text in a cell without destroying the formula?

Solution:

Place the cursor in the cell to update.

In Excel press F2 followed by F9 and then edit text in cell, press enter when done.

If you publish the excel report to TM1WEB, then in TM1WEB you can edit the cell direct and the values are stored in the cube.

 

More Information:

https://blog.quebit.com/blog/quebit-blog-mastering-the-tm1-dbrw-excel-function

https://www.wimgielis.com/tm1_articles_EN.htm

https://www.ibm.com/docs/en/planning-analytics/2.1.0?topic=view-editing-data-in-cube-cells

https://www.ibm.com/docs/en/planning-analytics/2.1.0?topic=reports-preserve-overwrite-dbrw-formulas-formula-mode 

https://www.ibm.com/docs/en/planning-analytics/2.1.0?topic=bymftppame-benefits-using-planning-analytics-microsoft-excel-over-tm1-perspectives

https://www.ibm.com/docs/en/planning-analytics/2.1.0?topic=websheets-websheet-overview 

https://www.howtogeek.com/dont-ignore-the-power-of-f4-in-microsoft-excel/

Product:

Planning Analytics 2.1.19
Microsoft Windows 2022 server

Issue:

How dynamically set the data source to a tm1 view?

Solution:

In prolog build up the subset and view, and then add

#--- set the view to use
DataSourceType = 'VIEW' ;
DatasourceNameForServer = Cube ;
DatasourceNameForClient = Cube  ;
DatasourceCubeview = ViewName ;

# Change to get semicolon in the text file
# DatasourceASCIIQuoteCharacter='';
# DatasourceASCIIDelimiter = ';';

# Change to get comma in the text file
DatasourceASCIIDelimiter = ',';
DatasourceASCIIDecimalSeparator = '.';
DatasourceASCIIQuoteCharacter = '"';

More Information:

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=tlv-datasourcetype 

https://cubewise.com/functions-library/tm1-function-for-ti-datasourcetype/

https://exploringtm1.com/datasourcecubeview-syntax-use-example/

https://vrgultom.wordpress.com/2013/08/22/multiple-tm1-data-source-in-one-process/ 

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=variables-turbointegrator-local

 

Product:

Planning Analytics 2.1.x

Microsoft Windows 2022 server

Issue:

A TI process created in PAW, when open in TM1 Architect it appears to be blank.

 

Solution:

If you need to work with TI process in both TM1 Architect and Planning Analytics Workspace (PAW)

create the TI process first in TM1 Architect.

When you open a TI process in TM1 Architect, it will add this lines to the tabs.

#****Begin: Generated Statements***
#****End: Generated Statements****

This can erase the code you have written.

 

More Information:

When you create or edit a TurboIntegrator (TI) process in Planning Analytics Workspace (PAW), TM1 Architect often fails to read the code properly due to a known compatibility issue. When opened in Architect, the process can appear blank on certain tabs.

In latest version of PAW, you should have most of the functions you need – and therefor the need to use TM1 architect should be limited.

The Root Cause
This occurs because of a few structural differences between the two editors:
• Variable Mapping: PAW does not always send data source variable names and types to Architect properly.
• Auto-generated Code Comments: Architect relies on auto-generated comments (like the lines defining data source parameters in the Prolog/Data tabs). When you open a PAW-built process, Architect attempts to add them, which can wipe out existing code or leave the screen blank.

 

Warning PAW created/edited TI are not backwards compatible with Architect | Planning Analytics

What’s new in Planning Analytics Workspace – IBM Documentation

 

Product:

Planning Analytics 2.1.19
Microsoft Windows 2022 Server

Issue:

How install PAL latest version?

Here we install Planning Analytics Admin service and the new TM1WEB service (IBM Planning Analytics Spreadsheet Services)

Suggested solution:

Read the different articles on the IBM website on how to do it. Here is a example list of the steps for a upgrade.

https://www.ibm.com/docs/en/planning-analytics/2.1.0?topic=upal2-upgrading-planning-analytics-local-21-later-21-version

Take a full backup of the installed folders, by copy them to an other drive. That is folder: D:\Program Files\ibm\tm1_64

and D:\Program Files\ibm\cognos\tm1web

Take screen shoot how it looks like to login to TM1WEB, PAW and IIS. In case you have customize any web pages, so you can see when you have it back correct.

Take a backup of the TM1 applications, like zip the data folder to a other drive. Run SaveDataAll before you zip the data folder for the TM1 instance.

Download the new version from:

https://www.ibm.com/support/pages/ibm-planning-analytics-local-2119-now-available-download-fix-central 

Set all IBM planning analytics windows services to manual mode, and reboot the windows server, to ensure no open process are running.

Copy the media file to a folder on the Windows server, and start the installation as a administrator.

Ensure Anti-virus or SmartScreen program is excluding the install folder from scanning during the installation.

 

Click next

Click Next

Click Next

Change to correct folder, and click Next

Click Yes

Click Yes

If it was not a upgrade, then you have to choose if it is PROD or NONE-PROD you install to.

The file is created in folder D:\Program Files\ibm\tm1_64\swidtag

and have a name like this ibm.com_IBM_Planning_Analytics_TM1_Server_Non-Prod-2.1.10.swidtag

Click Install

Click Done

As you have the server restarted with no processes running, you can install the TM1WEB part to.

Run the installer program as administrator.

click Next

click Next

click Next

Select correct folder and click Next

click Yes

click install

click Done

Check this files, to compare them with the one – that you have in your backup folder.

D:\Program Files\ibm\cognos\tm1web\webapps\tm1web\home.jsp

D:\Program Files\ibm\cognos\tm1web\webapps\tm1web\scripts\tm1web\common\nls\sv\CommonMessages.js

D:\Program Files\ibm\cognos\tm1web\webapps\tm1web\scripts\tm1web\themes\carbon\standalone\images\login\PA_header.svg

Also check the D:\Program Files\ibm\cognos\tm1web\webapps\tm1web\WEB-INF\configuration\tm1web_config.xml file.

Update the new file with the missing values (if there are any) – that you had in your previous installation.

Set the IBM services to automatic and restart the server.

 

Start up the services and run some test with import from ODBC, cubes with rules and other demanding task.

Create a TI process with the function GetProcessErrorFileDirectory – run and check that it returns the result you want.

 

 

Copy the PAA agent files unique rows into the new file D:\Program Files\ibm\tm1_64\paa_agent\wlp\usr\servers\kate-agent\bootstrap.properties

Start command prompt as administrator and go to folder D:\Program Files\ibm\tm1_64\paa_agent\bin

Stop the service with command PAAAgentStop.bat or remove it with PAAAgentDelete.bat

Run PAAAgentSetJavaHome.bat to set JAVA_HOME for your Planning Analytics Administration agent.

Register it with PAAAgentRegister.bat

Start the service with PAAAgentStart.bat

Then go to the PAW (planning analytics workspace) to see if you have contact with the PAA agent.

Go to Administration – Agents – and check the details. Is it the new version?

Try to send a test mail to ensure the configuration is correct.

Check this folder for more detail error message for PAA Agent D:\Program Files\ibm\tm1_64\paa_agent\wlp\usr\servers\kate-agent\logs

 

More Information:

https://www.ibm.com/support/pages/ibm-planning-analytics-21-fix-lists

https://www.youtube.com/watch?v=bzwJFfBUkEs 

https://www.ibm.com/docs/en/planning-analytics/2.1.0?topic=icpaaalo-configure-agent-windows

https://www.ibm.com/docs/en/planning-analytics/2.1.0?topic=pctf-getprocesserrorfiledirectory

 

 

Product:
Planning Analytics 2.1.14
Microsoft Windows 2022 server

Issue:

Newly created tm1 instance does not start.

Does not leave any log files in the logs folder.

You get error:

The IBM TM1 Server x64 – tm1applicationname service terminated unexpectedly. It has done this 1 time(s).

 

Solution:

Start CMD

Go to folder d:\Program files\ibm\tm1_64\bin64

Remove the service

tm1sd.exe -remove  -n "tm1applicationname"

Reinstall the service with the correct path to the folder that contains the tm1s,cfg file

tm1sd.exe -install -n "tm1applicationname" -z "D:\TM1 Data\tm1applicationname\Config"

 

You should not include the tm1s,cfg file name in the path you supply.

You do not get log files, when the error is that it can not find the tm1s.cfg file.

More Information:

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=tso-setting-up-tm1-server-run-as-windows-service 

https://bihints.com/sites/default/files/tm1scfg.html 

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=local-tm1scfg-configuration-file

Planning Analytics Configuration File Breakdown

Product:

Planning Analytics Workspace 2.1.19

Microsoft Windows 2022 server

Issue:

PAA agent is not connecting to PAW.

The file serversinfo.json in folder D:\Program Files\IBM\tm1_64\paa_agent\paaAgentCache should contain the names of your Tm1 instances. If it is empty, the python script have maybe not been able to read the windows services information.

 

Error in messages file in folder D:\Program Files\IBM\tm1_64\paa_agent\wlp\usr\servers\kate-agent\logs

[5/5/26, 15:56:20:933 CEST] 00000046 com.ibm.pa.kate.agent.scheduler.ScheduledTask                E Error occurred while updating the server info json file
java.lang.NullPointerException: Cannot invoke “java.lang.String.length()” because “s” is null
at org.python.core.PyString.charsFitWidth(PyString.java:122)
at org.python.core.Py.fileSystemEncode(Py.java:786)
at org.python.core.PySystemState.initArgv(PySystemState.java:1324)

[5/5/26, 15:57:40:994 CEST] 00000046 ice.notification.PaKateServerUnresponsiveNotificationService E Error occurred while getting latest servers info from json file
java.lang.NullPointerException: Cannot read field “modules” because the return value of “org.python.core.Py.getSystemState()” is null
at org.python.core.PyModule.module___init__(PyModule.java:64)
at org.python.core.PyModule.<init>(PyModule.java:47)
at org.python.util.PythonInterpreter.<init>(PythonInterpreter.java:104)

Solution:

Restore to the bootstrap.properties file that was installed with the upgrade.

Do not use a backed up file of bootstrap.properties – only add the SMTP parameters you need manually to the new bootstrap.properties.

SMTP_EMAIL_START_TLS_ENABLE=FALSE

SMTP_EMAIL_PASSWORD=

SMTP_EMAIL_PORT=25

SMTP_EMAIL_AUTH=FALSE

SMTP_EMAIL_USERNAME=

PAA_EMAIL_ADDRESS=yourname@domain.com

SMTP_EMAIL_HOST=smtp.yourcompany.domain.com

SEND_GRID_API_KEY=””

 

Start the PAA agent from the bat file: D:\Program Files\IBM\tm1_64\paa_agent\bin\PAAAgentStart.bat

 

If above does not work also check this:

  • Re-register/Re-register the Agent Service: If upgrading to PAW 2.0.41 or higher, the agent must be updated.
      1. Stop the service.
      2. Run <install_dir>\paa\bin\PAAAgentDelete.bat.
      3. Run <install_dir>\paa_agent\bin\PAAAgentSetJavaHome.bat.
      4. Run <install_dir>\paa_agent\bin\PAAAgentRegister.bat.

  • Fix Java Path Issue: If the agent fails to start, run PAAAgentSetJavaHome.bat in <install_dir>\paa_agent\bin to ensure the correct Java home is set.

 

Generic:
  • Ensure the PAA Agent is updated to match the version of PA Workspace in use. If not, then download the newer PAA Agent .zip file from PA Workspace administration UI.
  • Review \paa_agent\wlp\usr\servers\kate-agent\bootstrap.properties for PAA Agent configuration errors
  • In \paa_agent\wlp\usr\servers\kate-agent\bootstrap.properties verify SERVERS_DIR points to the parent folder of the TM1 data directories, not directly to one specific data directory.
  • Review \paa_agent\wlp\usr\servers\kate-agent\server.xml for WLP-related errors
  • Review \paa_agent\wlp\usr\servers\kate-agent\logs\ for errors
  • Review \pa_workspace_install\logs\monitor\ for errors
     *The monitor service is what the PA Workspace Administration page uses to communicate with the PAA Agent
  • Review \pa_workspace_install\config\paw.env (or paw.ps1) file
Connectivity-Related Errors:
  • Ensure that the IBM Planning Analytics Administration Agent service is running
  • Ensure that the IBM Planning Analytics Administration Agent service account is configured with english locale
  • Verify that the PAA Agent URL is accessible in a web browser where PAA Agent is installed (ignore the SSL certificate warning)
    URL: https://localhost:9012
    If available, PAA Agent just responds “NOT FOUND The application or context root for this request has not been found”
    *PAA Agent runs on Port 9012 and uses SSL by default
  • Verify that PAA Agent is accessible from inside the docker virtual network of PA Workspace. Open Powershell and run these commands:
    docker exec -it monitor Powershell
    cd curl*
    cd bin
    .\curl -v telnet://paa_agent_servername ipaddress:9012

    Replace “paa_agent_servername” by the exact server name specified in \config\paw.ps1 for “TM1Location” parameter (since PA Workspace finds PAA Agent server from TM1 Admin Server location)

  • In the web browser, verify that the SSL Certificate is valid
    See: https://www.ibm.com/support/pages/node/6562425
  • Verify that the PAA Agent URL is also accessible through the Planning Analytics Workspace host by using browser or curl command
    URL: https://paa_agent_servername:9012
  • Verify that PAA Agent is listening on port 9012: from Windows start menu, run “resmon.exe”, select “Listening Ports”, and verify “javaw.exe” is listening on port 9012
  • In Planning Analytics Administration Tool page, verify the IP addresses returned for the Admin Host and TM1 Server
    URL: http://workspace_servername:8888
  • Does your PAA Agent bootstrap.properties file contain a AGENT_API_KEY setting?
  • Does your PAA Agent use custom SSL?
  • Does your TM1 Admin Server and TM1 Server use custom SSL?
    • Were the certificates imported into the PAA Agent keystore?
Other problems encountered with the PAA Agent might require extra debugging to be enabled for review.

 

Enable PAA Agent Debug Logging:
  • Stop the IBM Planning Analytics Administration Agent service
  • Update the \paa_agent\wlp\usr\servers\kate-agent\bootstrap.properties file to include
    • com.ibm.ws.logging.trace.specification=”*\=audit\:com.ibm.pa.kate.agent.*\=all”
    • com.ibm.ws.logging.console.log.level=ERROR
  • Start the IBM Planning Analytics Administration Agent service
  • Replicate the problem as required
  • Review the files in \paa_agent\wlp\usr\servers\kate-agent\logs\

 

More information:

https://www.ibm.com/support/pages/planning-analytics-administration-agent-not-reachable

https://www.ibm.com/support/pages/how-troubleshoot-planning-analytics-administration-agent

https://www.ibm.com/support/pages/how-obtain-planning-analytics-tm1-server-certificate 

https://www.ibm.com/docs/en/planning-analytics/2.1.0?topic=only-configure-agent-windows 

https://www.ibm.com/docs/en/planning-analytics/2.1.0?topic=cloud-configuring-premises-agent

If you find this error in the message.log for PAA agent instead;

[5/5/26, 17:04:14:303 CEST] 000003d9 bm.pa.kate.agent.service.fileManager.LocalFileManagerService E Failed to CREATE the ‘model_upload’ folder, err:
java.nio.file.NoSuchFileException: d:\tm1 data\faptest\Data\;.\Data_SysSettings\model_upload
at java.base/sun.nio.fs.WindowsException.translateToIOException(Unknown Source)
at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
at java.base/sun.nio.fs.WindowsFileSystemProvider.createDirectory(Unknown Source)

Then you have more than one DATA folder, and the model_upload folder is created in wrong data folder. PAW PA Agent does not support more than one DATA folder listed in TM1S.CFG file.

Product:
Planning Analytics 2.1.14
Microsoft Windows 2022 server

Issue:
How many RUNPROCESS can you run in parallel on a server?

RunProcess lets you run TurboIntegrator processes in parallel, each on its own thread that is managed by TM1® Server. This approach speeds up data load and other operations where TurboIntegrator processes are used to divide the work.

Suggested Solution:

You can only run, same number of virtual CPU cores you have on the server, with the RUNPROCESS command, to ensure proper data handling.

If you run more RUNPROCESS command than CPU cores, you may get that CELLPUTN command will not be executed, and you will not get a error. The process continue as all is fine.  On the other hand ASCIIOUTPUT maybe will work fine, so to run more RUNPROCESS in parallel to only create csv files works better.

If you have the ASCIIOUTPUT in the Data tab, and then the CELLPUTN in the Epilog tab of your TI process that you call from a RUNPROCESS command,

add a SLEEP (1001) before the CELLPUTN line, will in some cases solve the issue.

The solution is to add a delay somewhere in the processes, to make the server catch up with what you try to do.

 

More Information:

https://code.cubewise.com/blog/4-ways-to-speed-up-your-processes-in-ibm-tm1-and-planning-analytics/

https://www.ibm.com/docs/en/planning-analytics/2.1.0?topic=tf-process-control-turbointegrator-functions

https://aggregated.blogspot.com/2015/02/running-tm1-processes-from-outside-tm1.html

https://www.ibm.com/docs/fi/planning-analytics/2.0.0?topic=mtf-logoutput-1