GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - cubewise-code/tm1py: TM1py is a Python package that wraps the TM1 REST API in a simple to use library.

BranchesTags
Open more actions menu

Latest commit

 

History

1,474 Commits
1,474 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
Images
Images
 
 
TM1py
TM1py
 
 
Tests
Tests
 
 
docs
docs
 
 
.gitignore
.gitignore
 
 
CNAME
CNAME
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
mkdocs.yml
mkdocs.yml
 
 
pyproject.toml
pyproject.toml
 
 
setup.py
setup.py
 
 

Repository files navigation

PyPI - License PyPI - Version Pepy Total Downloads

TM1py is the python package for IBM Planning Analytics (TM1).

with TM1Service(address='localhost', port=8001, user='admin', password='apple', ssl=True) as tm1:
    subset = Subset(dimension_name='Month', subset_name='Q1', elements=['Jan', 'Feb', 'Mar'])
    tm1.subsets.create(subset, private=True)

Features

TM1py offers handy features to interact with TM1 from Python, such as

  • Functions to read data from cubes through cube views or MDX queries (e.g. tm1.cells.execute_mdx)
  • Functions to write data to cubes (e.g. tm1.cells.write)
  • Functions to update dimensions and hierarchies (e.g. tm1.hierarchies.get)
  • Functions to update metadata, clear or write to cubes directly from pandas dataframes (e.g. tm1.elements.get_elements_dataframe)
  • Async functions to easily parallelize your read or write operations (e.g. tm1.cells.write_async)
  • Functions to execute TI process or loose statements of TI (e.g. tm1.processes.execute_with_return)
  • CRUD features for all TM1 objects (cubes, dimensions, subsets, etc.)

Requirements

  • Python (3.7 or higher)
  • TM1/Planning Analytics (v11 or higher)

Optional Python Packages

  • pandas
  • networkx

Install

without pandas

pip install tm1py

with pandas

pip install "tm1py[pandas]"

Usage

TM1 11 on-premise

from TM1py.Services import TM1Service

with TM1Service(address='localhost', port=8001, user='admin', password='apple', ssl=True) as tm1:
    print(tm1.server.get_product_version())

TM1 11 on IBM cloud

with TM1Service(
        base_url='https://mycompany.planning-analytics.ibmcloud.com/tm1/api/tm1/',
        user="non_interactive_user",
        namespace="LDAP",
        password="U3lSn5QLwoQZY2",
        ssl=True,
        verify=True,
        async_requests_mode=True) as tm1:
    print(tm1.server.get_product_version())

TM1 12 PAaaS

from TM1py import TM1Service

params = {
    "base_url": "https://us-east-1.planninganalytics.saas.ibm.com/api/<TenantId>/v0/tm1/<DatabaseName>/",
    "user": "apikey",
    "password": "<TheActualApiKey>",
    "async_requests_mode": True,
    "ssl": True,
    "verify": True
}

with TM1Service(**params) as tm1:
    print(tm1.server.get_product_version())

TM1 12 on-premise & Cloud Pak For Data

with TM1Service(
        address="tm1-ibm-operands-services.apps.cluster.your-cluster.company.com",
        instance="your instance name",
        database="your database name",
        application_client_id="client id",
        application_client_secret="client secret",
        user="admin",
        ssl=True) as tm1:

    print(tm1.server.get_product_version())

TM1 12 on-premise with access token

params = {
    "base_url": "https://pa12.dev.net/api/<InstanceId>/v0/tm1/<DatabaseName>",
    "user": "8643fd6....8a6b",
    "access_token":"<TheActualAccessToken>",
    "async_requests_mode": True,
    "ssl": True,
    "verify": True
}

with TM1Service(**params) as tm1:
    print(tm1.server.get_product_version())

Documentation

https://tm1py.org/

Issues

If you find issues, sign up in GitHub and open an Issue in this repository

Contribution

TM1py is an open source project. It thrives on contribution from the TM1 community. If you find a bug or feel like you can contribute please fork the repository, update the code and then create a pull request so we can merge in the changes.

About

TM1py is a Python package that wraps the TM1 REST API in a simple to use library.

tm1py.org

Topics

cubewiseibmplanning-analyticspythontm1tm1-rest-api

Resources

Readme
MIT license

Contributing

Contributing
Activity
Custom properties

Stars

222 stars

Watchers

77 watching

Forks

127 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.