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.1.tar.gz (21.9 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.1-py3-none-any.whl (19.9 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for myabcm_corporate_client_api-0.2.1.tar.gz
Algorithm Hash digest
SHA256 e978f0080d27b96b4d31518880aca86b54681dc301072140e02e3c7a1180606f
MD5 8e4a0bd269f768b023c1150582354e44
BLAKE2b-256 c77e053af3c08a7badfcce60122ac24e998487458848a50bc4ca5e6c54a41cb2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for myabcm_corporate_client_api-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e6520c1594fd3ba1aee7332a538ac0a0eb7593ec3d97a2da0f5378788485ded4
MD5 17dac83becb5ed050804e9579ccaff9f
BLAKE2b-256 f142232623bb9ec0af411e718c911de3bfc33a5ae8ae1bcaf3514ad6da108ed5

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