Skip to main content

creates an excel with all the dependent objects in a powerbi datasets or analysis services

Project description

#Prerequisities:

Before installing this package, ensure that you have the following packages: pandas (version 2.2.1 or higher) and pyadomd (version 0.1.1 or higher).

It's assumed that you hold administrative rights for the PowerBI dataset, Analysis Services, or localhost.

#Overview

This project deals with extracting information about data models objects and their dependencies. 

#Key Project Parameters Explained:

data_source: It provides two options for specifying the data source: "folder" or "live".

             folder: If you choose folder as the data source, you need to provide a folder path where the project will look for three specific csv files and you should also provide folder_path parameter along with it.

             live: you can connect to analysis services or powerbi datasets to get their objects and thier dependencies. If you choose live as the data source, you need to provider server, database parameters along with it.



folder_path: it assumes this path contains the tables.csv, measures.csv and calc_dependency.csv files in it. follow the below instructions to generate the following files in dax studio.



             tables.csv: This file contains information about the tables in the data model. You can generate this file in Dax Studio using the provided DAX DMV function:

             %SQL

             Select * from $SYSTEM.TMSCHEMA_TABLES

             

             measures.csv: This file contains information about the measures defined in the data model. You can generate this file in Dax Studio using the provided DAX DMV function:

             %SQL

             select * from $SYSTEM.TMSCHEMA_MEASURES



             calc_dependency.csv: This file contains information about the calculation dependencies within the data model. You can generate this file in Dax Studio using the provided DAX DMV function:

             %SQL

             select * from $SYSTEM.DISCOVER_CALC_DEPENDENCY



server: The server name or address of the Analysis Services server, Power BI dataset server, or even your local machine.



database: The specific catalog name or ID of the data model you want to analyze.



Additional Parameter:

             filename: This parameter allows you to specify the desired filename for the output CSV file containing the extracted nested dependent objects. This file is created after you call the set_parameters method within the project.

             adomd_path: This parameter specifies the location of the ADOMD.NET library, which is required if you're connecting directly using Analysis Services or live Power BI datasets. The project assumes you have Analysis Services installed and points to the default location for the latest version.

                         please utlize the double \\ instead of single \\\\ in ADOMD_Path



Note: The version number in the adomd_path might change depending on the specific Analysis Services version you have installed.

      If you don't have Analysis Services and choose the database connection method, you'll need to download and install SQL Server from Microsoft's website (https://www.microsoft.com/en-us/sql-server/sql-server-downloads) and ensure Analysis Services is included during the custom installation process.

By providing these parameters, the project can either read the data model information from the specified CSV files or connect directly to the database and extract details about the measures, calc_column, calc_tables and their dependencies within the data model.

#Follow the below demonstration on how to use the package:

#if data_source is the folder option then use the below code:

#code:

from nestedobjects import NestedObjects

NestedObjects.set_parameters(data_source="folder", folder_path = r"folderpath",filename = "filename")

#if data_source is the live option then use the below code:

from nestedobjects import NestedObjects

NestedObjects.set_parameters(data_source="live", server = "localhost" , database = "catalogname",filename = "filename")

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

nestedobjects-0.0.2.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

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

nestedobjects-0.0.2-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file nestedobjects-0.0.2.tar.gz.

File metadata

  • Download URL: nestedobjects-0.0.2.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for nestedobjects-0.0.2.tar.gz
Algorithm Hash digest
SHA256 4e9f7a69d94d87214369d82029c0cdd85576515bb14a1b461f26f012cfd4267f
MD5 d47877469333e6b2d04add2f7436a993
BLAKE2b-256 4ce3fae2fa099b348ecf15f276bc2065cdf2c847685e0ce318eda33453dc4ddb

See more details on using hashes here.

File details

Details for the file nestedobjects-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: nestedobjects-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for nestedobjects-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b6474487de26bfa65664af00f0824f5f834172cadf0919ccbd893285bcc871b6
MD5 25780ebf840faa329375acb94552077a
BLAKE2b-256 5abc9b3498690c088cfca356d91ac7cf413e7d0d2884087adc84e2410ee01b23

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