Accessing PBIX files programmatically
Project description
Dev Instructions
Set Up
python -m venv venv
venv\Scripts\activate
python -m pip install .[dev,docs,internationalization]
pre-commit install
Running the Documentation Server
python -m pip install .[docs]
mkdocs serve -f docs/mkdocs.yml
Testing
pip install -e .
filters, condition sources: arithmatic hierarchy aggregation
SSAS Entity Hierarchy
Unmapped Tables:
- alternate_of[Alternate Of]
- annotations[Annotations]
- calculation_group[Calculation Group]
- calculation_item[Calculation Item]
- data_source[Data Source]
- detail_row_definition[Detail Row Definition]
- extended_property[Extended Property]
- format_string_definition[Format String Definition]
- object_translation[Object Translation]
- perspective_column[Perspective Column]
- perspective_hierarchy[Perspective Hierarchy]
- perspective_measure[Perspective Measure]
- perspective_set[Perspective Set]
- perspective_table[Perspective Table]
- perspective[Perspective]
- refresh_policy[Refresh Policy]
- related_column_detail[Related Column Detail]
- set[Set]
flowchart TD
attribute_hierarchy[Attribute Hierarchy]
column_permission[Column Permission]
column[Column]
culture[Culture]
expression[Expression]
group_by_column[Group By Column]
hierarchy[Hierarchy]
kpi[KPI]
level[Level]
linguistic_metadata[Linguistic Metadata]
measure[Measure]
model[Model]
partition[Partition]
query_group[Query Group]
relationship[Relationship]
role_membership[Role Membership]
role[Role]
table_permission[Table Permission]
table[Table]
variation[Variation]
level --> attribute_hierarchy --> column
relationship & column_permission & group_by_column --> column --> table
linguistic_metadata --> culture --> model
expression --> query_group
level & variation --> hierarchy --> table
kpi --> measure --> table --> model
partition --> table & query_group
query_group --> model
variation --> relationship --> table
role_membership --> role --> model
table_permission --> table
Notes:
Refreshing
Refreshing is only possible when a "Microsoft.Mashup.Container.NetFX45.exe" instance is running. This gets created when Desktop does a refresh and stays forever(?)
The process is run with the arguments:
10440 9852 4 The first and second are references to pipes? Note: the first two are always multiples of 8 The 3rd is a UUID that stays the same across children, so I assume it's related to the SSAS instance. Could not find a match in the tables though The last indicates how many living/dead instances of the exe were run before this one (0-indexed)
ignored_names: set[str] = set(['_', '_parent'])
Added to _model_construction, line 372 of pydantic
Added
"python.analysis.diagnosticSeverityOverrides": {
"reportIncompatibleVariableOverride": false
}
to vscode settings
Prototype Query
Property:Microsoft.InfoNav.Explore.VisualContracts.SingleVisualConfig.PrototypeQuery Click on QueryDefinition C:\Program Files\Microsoft Power BI Desktop\bin\Microsoft.InfoNav.Explore.VisualContracts.dll C:\Program Files\Microsoft Power BI Desktop\bin\Microsoft.InfoNav.Insights.Engines.dll namespace: Microsoft.InfoNav.Experimental.Insights.Engines.DAX Writer.cs creates the string to SSAS
PBI SSAS definitions
"C:\Program Files\Microsoft Power BI Desktop\bin\Microsoft.PowerBI.Tabular.dll"
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pbi_core-0.3.6.tar.gz.
File metadata
- Download URL: pbi_core-0.3.6.tar.gz
- Upload date:
- Size: 117.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2cbe0e3b0bd940c407ea76a19f06e83709d544b7539c64a51bf6ff084d3d152d
|
|
| MD5 |
d18e35bbaa9793ff043e1737917c413b
|
|
| BLAKE2b-256 |
80f831c62d56f9d2d0fa744014c1c86c2699548bcfe79df5ed7f7cc322457c52
|
Provenance
The following attestation bundles were made for pbi_core-0.3.6.tar.gz:
Publisher:
deploy.yml on douglassimonsen/pbi_core
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pbi_core-0.3.6.tar.gz -
Subject digest:
2cbe0e3b0bd940c407ea76a19f06e83709d544b7539c64a51bf6ff084d3d152d - Sigstore transparency entry: 358703616
- Sigstore integration time:
-
Permalink:
douglassimonsen/pbi_core@fdc55668ce307429b11d0a0f9cb1887409821040 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/douglassimonsen
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@fdc55668ce307429b11d0a0f9cb1887409821040 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pbi_core-0.3.6-py3-none-any.whl.
File metadata
- Download URL: pbi_core-0.3.6-py3-none-any.whl
- Upload date:
- Size: 244.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cd740d0ec4f5b54166729181f152aa577ebeae40d8333466cfc5f111a1e4349f
|
|
| MD5 |
32a29eb31549bbd6cd4be6ef7d2e7f18
|
|
| BLAKE2b-256 |
d2564476ee4a163bb5bc07adc1346ba81d24f5115200af073b6097cd4071e427
|
Provenance
The following attestation bundles were made for pbi_core-0.3.6-py3-none-any.whl:
Publisher:
deploy.yml on douglassimonsen/pbi_core
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pbi_core-0.3.6-py3-none-any.whl -
Subject digest:
cd740d0ec4f5b54166729181f152aa577ebeae40d8333466cfc5f111a1e4349f - Sigstore transparency entry: 358703631
- Sigstore integration time:
-
Permalink:
douglassimonsen/pbi_core@fdc55668ce307429b11d0a0f9cb1887409821040 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/douglassimonsen
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@fdc55668ce307429b11d0a0f9cb1887409821040 -
Trigger Event:
push
-
Statement type: