Skip to main content

MyABCM Corporate Python Client API

Project description

MyABCM Corporate Python client API

Overview

MyABCM Corporate (v13 or newer) provides a simple and extensive REST API for end users to connect and control MyABCM from other languages.

The purpose of this package is to simplify the usage of MyABCM Corporate REST API by wrapping the most common calls in a simple to use Python class.

A bit of history

MyABCM Corporate since its first versions, provided a REST API so users could control it from external systems/programs.

To make the use of the REST API simpler, MyABCM even released a command line utility named "MyABCM.Client.Shell" that used the provided REST API to control the basic functions of MyABCM Corporate.

The initial goal of "MyABCM.Client.Shell" was to serve as a simple example of the potential of MyABCM Corporate API but many users ended up using the utility in production to automate processes like model imports, calculation and fact/cube generation.

MyABCM.Client.Shell certainly served its purpose, but it is limited in flexibility as it does not implement the functionality of a full scripting language. Due to that limitation came the idea of implementing a Python package that could wrap around MyABCM Corporate REST API and make it easier for end users to control MyABCM Corporate from Python scripts.

How does it work?

This package implements a single class named CorporateServer that implements multiple methods to control MyABCM Corporate.

Here is a simple example of a Python script to connect to MyABCM and calculate a model:

from myabcm_corporate_client_api import CorporateServer

# Create a new instance of CorporateServer class with the provided servername and credentials
corporate_server = CorporateServer("https://corporate.my-company.com/proxy", "user123", "myabcm123")

# Logon to MyABCM Corporate
corporate_server.logon()

# Select a model 
corporate_server.select_model("MY-MODEL-REFERENCE-ABC")

# Execute calculation
corporate_server.calculate_model("JAN2025", "ACTUAL" , False)

# Logoff from MyABCM Corporate
corporate_server.logoff()

   

This python package is designed to connect to the version v1 of the server API, so when you inform the API URL, you must not inform the API version (as it is already embedded inside the Python code). If just for example, the "API URL" returned by Abm.Server.WEB.Shell.exe LIST_PARAMETERS returns myabcm.mycompany.com/v1, you should use myabcm,mycompany.com without the v1

   

Methods provided by the CorporateServer class

Here are all methods exposed by the CorporateServer class. Additional details on the parameters required for each method can be obtained directly from most Python code editors as the source code of the package is fully documented using Docstrings.

 
 

With the exception of process_fact_associations, all other methods are executed synchronously. This means if you call a method like execute_import, execute_export or any other method that executes as an operation in the server, the call will block until the operation ends.

 
 

Logon/logoff methods

Method Description
logon Logon to the Corporate server informed in the class constructor
logoff Logoff from the server

 
 

Model related methods

Method Description
model_exists Check if a model exists
select_model Select a model
remove_model Remove a model
add_model Add a new model
calculate_model Calculate a specific association
reset_association Reset an existing association
remove_cubes_from_olap_server Remove ALL cubes from OLAP Server (tabular and SSAS)
scenario_builder Execute scenario builder

 
 

File store related methods

Method Description
upload_file Upload a local file to the server
download_file Download a file from server
file_exists Check if a file exists in the user's file store
remove_file Remove a file from user's file store

 
 

Import related methods

Method Description
import_exists Check if an import exists
add_import Add a new import
remove_import Remove an import
execute_import Execute import

 
 

Export related methods

Method Description
add_export Add a new export
remove_export Remove an export
execute_export Execute an export

 
 

Scripts related methods

Method Description
add_script Add a new script
remove_script Remove script
execute_script Execute script
add_md_cube_to_script Add a multidimensional cube to a script
add_tb_cube_to_script Add a tabular cube to a script
add_export_to_script Add an export to a script
add_import_to_script Add an import to a script
add_model_calculation_to_script Add a calculate model operation to a script
add_etlx_file_to_script Add an ETLX package processing operation to a script
add_etlx_database_to_script Add an ETLX(Database) package processing operation to a script
add_fact_to_script Add a fact processing operation to a script

 
 

Fact related methods

Method Description
add_fact_associations Add new associations to a fact
remove_fact_associations Remove associations to a fact
process_fact_associations Process a fact association
process_fact Process all fact associations

 
 

Cube related methods

Method Description
process_regular_cube Process a regular (SSAS) cube
process_tabular_cube Process a tabular cube

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

myabcm_corporate_client_api-0.2.3.tar.gz (25.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

myabcm_corporate_client_api-0.2.3-py3-none-any.whl (24.2 kB view details)

Uploaded Python 3

File details

Details for the file myabcm_corporate_client_api-0.2.3.tar.gz.

File metadata

File hashes

Hashes for myabcm_corporate_client_api-0.2.3.tar.gz
Algorithm Hash digest
SHA256 d949f76eb46427a1ec56bc67b3b3769a102f92713f38e02c831a55f0790bf661
MD5 46f921b95b7cfac669bf8a69c9ab17b8
BLAKE2b-256 fa16e09ee24e302dea7c68401ee78df1627aff6fc3c477383432303cec01878c

See more details on using hashes here.

File details

Details for the file myabcm_corporate_client_api-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for myabcm_corporate_client_api-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5c4703667c1a5f664098479d5d6d4aa3474cc722d6e91525623ed7b1d06519a0
MD5 ddd74871be7eb0402b41afb44da4b50c
BLAKE2b-256 88d83572c55bfbef7a1290ecaca7ea469607e9940d9e158bfd1d1d0917ddbb32

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page