mstrio > project_objects > datasets > super_cube¶
- class mstrio.project_objects.datasets.super_cube.SuperCube(connection, id=None, name=None, description=None, instance_id=None, progress_bar=True, parallel=True)¶
Bases:
_Cube
,CertifyMixin
Manage multiple table cube (MTDI aka Super Cube) - according to EnumDSSXMLObjectSubTypes its subtype is 779 (DssXmlSubTypeReportEmmaCube). It inherits all properties from Cube.
- Parameters:
connection (Connection) –
id (str | None) –
name (str | None) –
description (str | None) –
instance_id (str | None) –
progress_bar (bool) –
parallel (bool) –
- connection¶
Strategy One connection object returned by connection.Connection().
- id¶
Identifier of a pre-existing cube.
- instance_id¶
Identifier of a cube instance if already initialized, None by default.
- Type:
str
- name¶
Name of the SuperCube.
- description¶
Description given to the SuperCube.
- id¶
Unique identifier for the super cube. Used to update a existing super cube or generated after creating a new super cube. (deprecated)
- upload_body¶
upload body of super cube
- Type:
string
- session_id¶
ID of session used for uploading and publishing super cube
- Type:
string
- size¶
size of cube
- Type:
integer
- status¶
status of cube
- Type:
integer
- path¶
full path of the cube on environment
- Type:
string
- owner_id¶
ID of cube’s owner
- Type:
string
- attributes¶
all attributes of cube
- Type:
list
- metrics¶
all metrics of cube
- Type:
list
- attr_elements¶
all attributes elements of cube
- Type:
list
- selected_attributes¶
IDs of filtered attributes
- Type:
list
- selected_metrics¶
IDs of filtered metrics
- Type:
list
- selected_attr_elements¶
IDs of filtered attribute elements
- Type:
list
- dataframe¶
content of a cube extracted into a Pandas DataFrame
- Type:
object
- table_definition¶
- acl_add(rights, trustees, denied=False, inheritable=None, propagate_to_children=None, propagation_behavior=None)¶
Add Access Control Element (ACE) to the object ACL.
Note
To add rights for the Root Folder and the Freeform Objects, apply the required rights for these folders:
Root Folder: D43364C684E34A5F9B2F9AD7108F7828
Freeform Objects: 93D8CF3849C1F85DC1A48E8B9E4271F1
Argument propagate_to_children is used only for objects with type ObjectTypes.FOLDER.
- Parameters:
rights (int | Rights | AggregatedRights) – The degree to which the user or group is granted or denied access to the object. The available permissions are defined in Rights and AggregatedRights Enums
trustees (list[UserOrGroup] | UserOrGroup) – list of trustees (User or UserGroup objects or ids) to update the ACE for
denied (bool) – flag to indicate granted or denied access to the object
inheritable (bool | None) – Applies only to folders. If set, any objects placed in the folder inherit the folder’s entry in the ACL.
propagate_to_children (bool | None) – used for folder objects only, default value is None, if set to True/False adds propagateACLToChildren keyword to the request body and sets its value accordingly
propagation_behavior (PropagationBehavior | str | None) – Behavior of ACL propagation to children.
self (Entity) –
- Return type:
None
Examples
>>> obj.acl_add(rights=Rights.BROWSE | Rights.EXECUTE, >>> trustees=user_obj, denied=True)
- acl_alter(rights, trustees, denied=False, inheritable=None, propagate_to_children=None, propagation_behavior=None)¶
Alter an existing Access Control Element (ACE) of the object ACL.
Note
To alter rights for the Root Folder and the Freeform Objects, change the required rights for these folders:
Root Folder: D43364C684E34A5F9B2F9AD7108F7828
Freeform Objects: 93D8CF3849C1F85DC1A48E8B9E4271F1
Argument propagate_to_children is used only for objects with type ObjectTypes.FOLDER.
- Parameters:
rights (int | Rights | AggregatedRights) – The degree to which the user or group is granted or denied access to the object. The available permissions are defined in Rights and AggregatedRights Enums
trustees (list[UserOrGroup] | UserOrGroup) – list of trustees (User or UserGroup objects or ids) to update the ACE for
denied (bool) – flag to indicate granted or denied access to the object
inheritable (bool | None) – Applies only to folders. If set, any objects placed in the folder inherit the folder’s entry in the ACL.
propagate_to_children (bool | None) – used for folder objects only, default value is None, if set to True/False adds propagateACLToChildren keyword to the request body and sets its value accordingly
propagation_behavior (PropagationBehavior | str | None) – Behavior of ACL propagation to children.
self (Entity) –
- Return type:
None
Examples
>>> obj.acl_alter(rights=Rights.BROWSE | Rights.EXECUTE, >>> trustees=user_obj, denied=True)
- acl_remove(rights, trustees, denied=False, inheritable=None, propagate_to_children=None, propagation_behavior=None)¶
Remove Access Control Element (ACE) from the object ACL.
Note
To remove rights from the Root Folder and the Freeform Objects, remove them from these folders:
Root Folder: D43364C684E34A5F9B2F9AD7108F7828
Freeform Objects: 93D8CF3849C1F85DC1A48E8B9E4271F1
Argument propagate_to_children is used only for objects with type ObjectTypes.FOLDER.
- Parameters:
rights (int | Rights | AggregatedRights) – The degree to which the user or group is granted or denied access to the object. The available permissions are defined in Rights and AggregatedRights Enums
trustees (list[UserOrGroup] | UserOrGroup) – list of trustees (User or UserGroup objects or ids) to update the ACE for
denied (bool) – flag to indicate granted or denied access to the object
inheritable (bool | None) – Applies only to folders. If set, any objects placed in the folder inherit the folder’s entry in the ACL.
propagate_to_children (bool | None) – used for folder objects only, default value is None, if set to True/False adds propagateACLToChildren keyword to the request body and sets its value accordingly
propagation_behavior (PropagationBehavior | str | None) – Behavior of ACL propagation to children.
self (Entity) –
- Return type:
None
Examples
>>> obj.acl_remove(rights=Rights.BROWSE | Rights.EXECUTE, >>> trustees=user_obj, denied=True)
- add_table(name, data_frame, update_policy, to_metric=None, to_attribute=None)¶
Add a Pandas.DataFrame to a collection of tables which are later used to populate the Strategy One super cube with data.
- Parameters:
name (str) – Logical name of the table that is visible to users of the super cube in Strategy One.
data_frame (
pandas.DataFrame
) – Pandas DataFrame to add or update.update_policy (str) – Update operation to perform. One of ‘add’ (inserts new, unique rows), ‘update’ (updates data in existing rows and columns), ‘upsert’ (updates existing data and inserts new rows), or ‘replace’ (replaces the existing data with new data).
to_metric (optional,
list
of str) – By default, Python numeric data types are treated as metrics while character and date types are treated as attributes. For example, a column of integer-like strings (“1”, “2”, “3”) would, by default, be an attribute. If the intent is to format this data as a metric, provide the respective column name as a string in a list to the to_metric parameter.to_attribute (optional,
list
of str) – Logical opposite of to_metric. Helpful for formatting an integer-based row identifier as a primary key in the super cube.
- add_translation(translations)¶
Adds translations to the Object.
- Parameters:
translations (list[OperationData]) – list of translations to be added to the Object
self (Entity) –
- Returns:
A list of translations for the Object.
- Return type:
list[’Translation’]
- alter(name=None, description=None, abbreviation=None, hidden=None, comments=None, owner=None)¶
Alter Cube properties.
- Parameters:
name (str | None) – new name of the Dataset
description (str | None) – new description of the Dataset
abbreviation (str | None) – new abbreviation of the Dataset
hidden (bool | None) – Specifies whether the Dataset is hidden
comments (str | None) – new long description of the Dataset
owner (str | User | None) – (str, User, optional): owner of the Dataset
- alter_translation(translations)¶
Alters translations of the Object.
- Parameters:
translations (list[OperationData]) – list of translations to be added to the Object
self (Entity) –
- Return type:
None
- alter_vldb_settings(property_set_name, name, value, project=None)¶
Alter VLDB settings for a given property set.
- Parameters:
self (Entity) –
property_set_name (str) –
name (str) –
value (dict) –
project (str | None) –
- Return type:
None
- apply_filters(attributes=None, metrics=None, attr_elements=None, operator='In')¶
Apply filters on the cube’s objects.
Filter by attributes, metrics and attribute elements.
- Parameters:
attributes (list or None, optional) – ids of attributes to be included in the filter. If list is empty, no attributes will be selected and metric data will be aggregated.
metrics (list or None, optional) – ids of metrics to be included in the filter. If list is empty, no metrics will be selected.
attr_elements (list or None, optional) – attribute elements to be included in the filter.
operator (str, optional) – a str flag used to specify if the attribute elements selected inside the filter should be included or excluded. Allowed values are: ‘In’, ‘NotIn’.
- Return type:
None
- classmethod bulk_from_dict(source_list, connection=None, to_snake_case=True, with_missing_value=False)¶
Creates multiple objects from a list of dictionaries. For each dictionary provided the keys in camel case are changed to object’s attribute names (by default in snake case) and dict values are composed to their proper data types such as Enums, list of Enums etc. as specified in the object’s _FROM_DICT_MAP.
- Parameters:
cls (T) – Class (type) of the objects that should be created.
source_list (List[Dict[str, Any]]) – A list of dictionaries from which the objects will be constructed.
connection (Connection, optional) – A MSTR Connection object. Defaults to None.
to_snake_case (bool, optional) – Set to True if attribute names should be converted from camel case to snake case. Defaults to True.
with_missing_value (bool) – (bool, optional): If True, class attributes possible to fetch and missing in source will be set as MissingValue objects.
- Returns:
A list of objects of type T.
- Return type:
T
- certify()¶
Certify object. :param success_msg: Custom message displayed on success.
- Returns:
True on success, False otherwise.
- Parameters:
self (Entity) –
- Return type:
bool
- clear_filters()¶
Clear previously set filters, allowing all attributes, metrics, and attribute elements to be retrieved.
- Return type:
None
- create(folder_id=None, auto_upload=True, auto_publish=True, chunksize=100000, force=False, attribute_forms=None)¶
Create a new super cube and initialize cube object after successful creation. This function does not return new super cube, but it updates object inplace.
- Parameters:
folder_id (str, optional) – ID of the shared folder in which the super cube will be created. If None, defaults to the user’s My Reports folder.
auto_upload (bool, optional) – If True, automatically uploads the data to the I-Server. If False, simply creates the super cube definition but does not upload data to it.
auto_publish (bool, optional) – If True, automatically publishes the data used to create the super cube definition. If False, simply creates the super cube but does not publish it. To publish the super cube, data has to be uploaded first.
chunksize (int, optional) – Number of rows to transmit to the I-Server with each request when uploading.
force (bool, optional) – If True, skip checking if a super cube already exist in the folder with the given name. Defaults to False.
attribute_forms (list[SuperCubeAttribute], optional) – list
SuperCubeAttribute (of instances of) –
to (it contains mapping of columns) –
not (different forms of the same attribute. If this argument is) –
provided (name. If it is) –
column (a separate attribute is created for every distinct) –
provided –
to –
that (attributes as different form of an attribute. For all columns) –
expression (are not part of any attribute's form) –
attribute (separate) –
created. (will be) –
- Return type:
None
- create_shortcut(target_folder_id=None, target_folder_path=None, target_folder=None, project_id=None, project_name=None, project=None, to_dictionary=False)¶
Create a shortcut to the object.
- Parameters:
target_folder_id (str, optional) – ID of the target folder. Target folder must be specified, but target_folder_id may be substituted with target_folder_path or target_folder.
target_folder_path (str, optional) – Path to the target folder, e.g. ‘/MicroStrategy Tutorial/Public Objects’. May be used instead of target_folder_id.
target_folder (Folder, optional) – Target folder object. May be used instead of target_folder_id.
project_id (str, optional) – ID of the target project of the new shortcut. The project may be specified by either project_id, project_name or project. If the project is not specified in either way, the project from the connection object is used.
project_name (str, optional) – Name of the target project. May be used instead of project_id.
project (Project, optional) – Project object specifying the target project. May be used instead of project_id.
to_dictionary (bool, optional) – If True, the method will return a dictionary with the shortcut’s properties instead of a Shortcut object. Defaults to False.
- Return type:
- decertify()¶
Decertify object. :param success_msg: Custom message displayed on success.
- Returns:
True on success, False otherwise.
- Parameters:
self (Entity) –
- Return type:
bool
- delete(force=False)¶
Delete object.
- Parameters:
force (bool) – If True, then no additional prompt will be shown before deleting object.
self (Entity) –
- Returns:
True on success. False otherwise.
- Return type:
bool
- export_sql_view()¶
Export SQL View of a Super Cube.
- Returns:
SQL View of a Super Cube.
- Return type:
str
- fetch(attr=None)¶
Fetch the latest object’s state from the I-Server.
Note
This method can overwrite local changes made to the object.
- Parameters:
attr (Optional[str]) – Attribute name to be fetched. If not specified
dictionary. (it will use all getters specified in _API_GETTERS) –
None. (Defaults to) –
- Raises:
ValueError – If attr cannot be fetched.
- Return type:
None
- fetch_vldb_settings()¶
- classmethod from_dict(source, connection, to_snake_case=True, with_missing_value=False)¶
- Overrides Dictable.from_dict() to instantiate an object from
a dictionary without calling any additional getters.
- Parameters:
cls (T) – Class (type) of an object that should be created.
source (dict[str, Any]) – a dictionary from which an object will be constructed.
connection (Connection) – A Strategy One Connection object.
to_snake_case (bool, optional) – Set to True if attribute names should be converted from camel case to snake case, default True.
with_missing_value (bool) – (bool, optional): If True, class attributes possible to fetch and missing in source will be set as MissingValue objects.
- Returns:
An object of type T.
- Return type:
T
- get(name)¶
Get object’s attribute by its name.
- get_caches()¶
Get list of caches of the cube.
- Returns:
list of caches of the cube
- Return type:
list[’CubeCache’]
- list_acl(to_dataframe=False, to_dictionary=False, **filters)¶
Get Access Control List (ACL) for this object. Optionally filter ACLs by specifying filters.
- Parameters:
to_dataframe (bool, optional) – if True, return datasets as pandas DataFrame
to_dictionary (bool, optional) – if True, return datasets as dicts
**filters – Available filter parameters: [deny, type, rights, trustee_id, trustee_name, trustee_type, trustee_subtype, inheritable]
- Return type:
DataFrame | list[dict | mstrio.utils.acl.ACE]
Examples
>>> list_acl(deny=True, trustee_name="John")
- list_dependencies(project=None, name=None, pattern=4, domain=2, object_types=None, used_by_recursive=False, root=None, root_path=None, limit=None, offset=None, results_format='LIST', to_dictionary=True, **filters)¶
List list_dependencies of an object.
- Parameters:
project (string) – Project object or ID
name (string) – Value the search pattern is set to, which will be applied to the names of object types being searched. For example, search for all report objects (type) whose name begins with (pattern) B (name).
pattern (integer or enum class object) – Pattern to search for, such as Begin With or Exactly. Possible values are available in ENUM mstrio.object_management.SearchPattern. Default value is CONTAINS (4).
domain (integer or enum class object) – Domain where the search will be performed, such as Local or Project. Possible values are available in ENUM mstrio.object_management.SearchDomain. Default value is PROJECT (2).
root (string, optional) – Folder ID of the root folder where the search will be performed.
root_path (str, optional) –
Path of the root folder in which the search will be performed. Can be provided as an alternative to root parameter. If both are provided, root is used.
- the path has to be provided in the following format:
- if it’s inside of a project, example:
/MicroStrategy Tutorial/Public Objects/Metrics
- if it’s a root folder, example:
/CASTOR_SERVER_CONFIGURATION/Users
class (object_types(enum class object or integer or list of enum) – objects or integers): Type(s) of object(s) to be searched, such as Folder, Attribute or User. Possible values available in ENUMs mstrio.types.ObjectTypes and mstrio.types.ObjectSubTypes
used_by_recursive (boolean, optional) – Control the Intelligence server to also find objects that are used by the given objects indirectly. Default value is false.
results_format (SearchResultsFormat) – either a list or a tree format
to_dictionary (bool) – If False returns objects, by default (True) returns dictionaries.
limit (int) – limit the number of elements returned. If None (default), all objects are returned.
offset (int) – Starting point within the collection of returned results. Used to control paging behavior. Default is 0.
**filters – Available filter parameters: [‘id’, ‘name’, ‘description’ ,’date_created’, ‘date_modified’, ‘acg’]
self (Entity) –
object_types (TypeOrSubtype | None) –
- Returns:
list of objects or list of dictionaries
- list_dependents(project=None, name=None, pattern=4, domain=2, object_types=None, uses_recursive=False, root=None, root_path=None, limit=None, offset=None, results_format='LIST', to_dictionary=True, **filters)¶
List dependents of an object.
- Parameters:
project (string) – Project object or ID
name (string) – Value the search pattern is set to, which will be applied to the names of object types being searched. For example, search for all report objects (type) whose name begins with (pattern) B (name).
pattern (integer or enum class object) – Pattern to search for, such as Begin With or Exactly. Possible values are available in ENUM mstrio.object_management.SearchPattern. Default value is CONTAINS (4).
domain (integer or enum class object) – Domain where the search will be performed, such as Local or Project. Possible values are available in ENUM mstrio.object_management.SearchDomain. Default value is PROJECT (2).
root (string, optional) – Folder ID of the root folder where the search will be performed.
root_path (str, optional) –
Path of the root folder in which the search will be performed. Can be provided as an alternative to root parameter. If both are provided, root is used.
- the path has to be provided in the following format:
- if it’s inside of a project, example:
/MicroStrategy Tutorial/Public Objects/Metrics
- if it’s a root folder, example:
/CASTOR_SERVER_CONFIGURATION/Users
class (object_types(enum class object or integer or list of enum) – objects or integers): Type(s) of object(s) to be searched, such as Folder, Attribute or User. Possible values available in ENUMs mstrio.types.ObjectTypes and mstrio.types.ObjectSubTypes
uses_recursive (boolean) – Control the Intelligence server to also find objects that use the given objects indirectly. Default value is false.
results_format (SearchResultsFormat) – either a list or a tree format
to_dictionary (bool) – If False returns objects, by default (True) returns dictionaries.
limit (int) – limit the number of elements returned. If None (default), all objects are returned.
offset (int) – Starting point within the collection of returned results. Used to control paging behavior. Default is 0.
**filters – Available filter parameters: [‘id’, ‘name’, ‘description’ ,’date_created’, ‘date_modified’, ‘acg’]
self (Entity) –
object_types (TypeOrSubtype | None) –
- Returns:
list of objects or list of dictionaries
- list_properties()¶
List all properties of the object.
- Return type:
dict
- list_translations(languages=None, to_dictionary=False)¶
Lists translations for the Object.
- Parameters:
languages (list, optional) –
list of languages to list the translations for, only translations from these languages will be listed. Languages in the list should be one of the following:
lcid attribute of the language
ID of the language
Language class object
to_dictionary (bool, optional) – If True returns dict, by default (False) returns Translation objects
self (Entity) –
- Returns:
A list of dictionaries representing translations for the Object or a list of Translation Objects.
- Return type:
list[’Translation’] | list[dict]
- list_vldb_settings(project=None)¶
List VLDB settings.
- Parameters:
self (Entity) –
project (str | None) –
- Return type:
list
- print()¶
Pretty Print all properties of the object.
- Return type:
None
- publish()¶
Publish the uploaded data to the selected super cube.
Note
A super cube can be published just once.
- Returns:
True if the data was published successfully, else False.
- Return type:
bool
- publish_status()¶
Check the status of data that was uploaded to a super cube.
- Returns: status: The status of the publication process as a dictionary.
In the ‘status’ key, “1” denotes completion.
- refresh()¶
Refresh a Cube without interaction. This method sends an asynchronous request to refresh a Cube, which results in the creation of a Job instance. The result of the operation can be monitored by checking the status of the returned Job instance or by calling the refresh_status() method on the Cube. Refreshing a Cube is effectively the same as republishing it. :returns: An instance representing the asynchronous job created for the
Cube refresh operation.
- Return type:
- refresh_status()¶
Refresh cube’s status and show which states it represents.
- Return type:
None
- remove_table(name)¶
Removes a table from a collection of tables which are later used to populate the Strategy One super cube with data.
- Note: this operation is executed locally and is used only to prepare
data before sending it to server. You can check current state of tables with property tables.
- Parameters:
name (str) – Logical name of the table that is visible to users of the super cube in Strategy One.
- remove_translation(translations)¶
Removes translations from the Object.
- Parameters:
translations (list[OperationData]) – list of translations to be added to the Object
self (Entity) –
- Return type:
None
- reset_session()¶
Reset upload session.
- reset_vldb_settings(project=None)¶
Reset VLDB settings to default values.
- Parameters:
self (Entity) –
project (str | None) –
- Return type:
None
- save_as(name, description=None, folder_id=None, table_name=None)¶
Creates a new single-table cube with the data frame stored in the SuperCube instance SuperCube.dataframe.
- Parameters:
name (str) – Name of cube.
description (str) – Description of the cube.
folder_id (str, optional) – ID of the shared folder that the super cube should be created within. If None, defaults to the user’s My Reports folder.
table_name (str, optional) – Name of the table. If None (default), the first table name of the original cube will be used.
- Return type:
- show_status()¶
Show which states are represented by cube’s status.
- Return type:
list[str]
- classmethod to_csv(objects, name, path=None, properties=None)¶
Exports MSTR objects to a csv file.
Optionally, saves only the object properties specified in the properties parameter.
- Parameters:
objects (T | list[T]) – List of objects of the same type that
exported. (will be) –
name (str) – The name of the csv file ending with ‘.csv’
path (Optional[str], optional) – A path to the directory where the file will be saved. Defaults to None.
properties (Optional[list[str]], optional) – A list of object’s attribute names that should be included in the exported file. Defaults to None.
- Raises:
TypeError – If objects is not of type T or list of type T
objects. –
- Return type:
None
- to_dataframe(limit=None, multi_df=False)¶
Extract contents of a cube into a Pandas DataFrame.
- Parameters:
limit (None or int, optional) – Used to control data extract behavior. By default (None) the limit is calculated automatically, based on an optimized physical size of one chunk. Setting limit manually will force the number of rows per chunk. Depending on system resources, a higher limit (e.g. 50,000) may reduce the total time required to extract the entire dataset.
multi_df (bool, optional) – If True, return a list of data frames resembling the table structure of the cube. If False (default), returns one data frame.
- Returns:
Pandas Data Frame containing the cube contents
- to_dict(camel_case=True)¶
Converts an object to a dictionary excluding object’s private properties. When converting the object to a dictionary, the object’s attributes become the dictionary’s keys and are in camel case by default Attribute values stored as objects are automatically converted to non-/ primitive data structures.
- Parameters:
camel_case (bool, optional) – Set to True if attribute names should be converted from snake case to camel case. Defaults to True.
- Returns:
- A dictionary representation of object’s attributes and values.
By default, the dictionary keys are in camel case.
- Return type:
dict
- unpublish(force=False)¶
Unpublish Cube by removing all of its caches.
- Parameters:
force (bool) – If True, then no additional prompt will be shown before deleting Cube.
- Returns:
True when all of cube’s caches were deleted and it was successfully unpublished. False otherwise.
- Return type:
bool
- update(chunksize=100000, auto_publish=True)¶
Updates a super cube with new data.
- Parameters:
chunksize (int, optional) – Number of rows to transmit to the server with each request.
auto_publish (bool) – If True, automatically publishes the data used to update the super cube definition to the super cube. If False, simply updates the super cube but does not publish it.
- update_properties()¶
Save compatible local changes of the object attributes to the I-Server. Changes are retrieved from the self._altered_properties dictionary. After the process of update has finished, self._altered_properties is cleared. For this method to work properly, you must override the _alter_properties() method in a subclass.
- Raises:
requests.HTTPError – If I-Server raises exception
- Return type:
None
- static upload_status(connection, id, session_id)¶
Check the status of data that was uploaded to a super cube.
- Parameters:
connection (Optional[Connection]) – Strategy One connection object returned by connection.Connection().
id (Optional[str]) – Identifier of a pre-existing super cube.
session_id (Optional[str]) – Identifier of the server session used for collecting uploaded data.
- Returns:
- The status of the publication process as a dictionary. In
the ‘status’ key, “1” denotes completion.
- Return type:
status
- class mstrio.project_objects.datasets.super_cube.SuperCubeAttribute(name, forms)¶
Bases:
object
A class representing a multiform attribute for Super Cubes.
- Parameters:
name (str) –
forms (list[SuperCubeAttributeForm]) –
- name¶
a name of multiform attribute
- Type:
str
- forms¶
a list of attribute forms
- Type:
list[SuperCubeAttributeForm]
- to_dict()¶
- forms: list[SuperCubeAttributeForm]¶
- name: str¶
- class mstrio.project_objects.datasets.super_cube.SuperCubeAttributeForm(category, expressions)¶
Bases:
object
A class representing an attribute form for used to define multiform attributes for Super Cubes.
- Parameters:
category (str) –
expressions (list[SuperCubeFormExpression]) –
- category¶
form’s category
- Type:
str
- expressions¶
list of form expressions
- Type:
list[SuperCubeFormExpressions]
- to_dict()¶
- category: str¶
- expressions: list[SuperCubeFormExpression]¶
- class mstrio.project_objects.datasets.super_cube.SuperCubeFormExpression(table, column)¶
Bases:
object
A class representing a form expression used to define multiform attributes for Super Cubes. Links an attribute form to the column in the table.
- Parameters:
table (str) –
column (str) –
- table¶
name of a table
- Type:
str
- column¶
name of a column
- Type:
str
- to_dict()¶
- column: str¶
- table: str¶
- mstrio.project_objects.datasets.super_cube.list_super_cubes(connection, name=None, search_pattern=SearchPattern.CONTAINS, project_id=None, project_name=None, to_dictionary=False, limit=None, **filters)¶
Get list of SuperCube objects or dicts with them. Optionally filter cubes by specifying ‘name’.
Optionally use to_dictionary to choose output format.
- Wildcards available for ‘name’:
? - any character * - 0 or more of any characters e.g. name = ?onny will return Sonny and Tonny
Specify either project_id or project_name. When project_id is provided (not None), project_name is omitted.
Note
When project_id is None and project_name is None, then its value is overwritten by project_id from connection object.
- Parameters:
connection (Connection) – Strategy One connection object returned by connection.Connection()
name (string, optional) – value the search pattern is set to, which will be applied to the names of super cubes being searched
search_pattern (SearchPattern enum or int, optional) – pattern to search for, such as Begin With or Contains. Possible values are available in ENUM mstrio.object_management.SearchPattern. Default value is BEGIN WITH (4).
project_id (string, optional) – Project ID
project_name (string, optional) – Project name
to_dictionary (bool, optional) – If True returns dict, by default (False) returns SuperCube objects
limit (integer, optional) – limit the number of elements returned. If None all object are returned.
**filters – Available filter parameters: [‘id’, ‘name’, ‘type’, ‘subtype’, ‘date_created’, ‘date_modified’, ‘version’, ‘owner’, ‘ext_type’, ‘view_media’, ‘certified_info’]
- Returns:
list with SuperCubes or list of dictionaries
- Return type:
list[SuperCube] | list[dict]