Skip to main content

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


Download files

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

Source Distribution

pbi_core-0.3.6.tar.gz (117.8 kB view details)

Uploaded Source

Built Distribution

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

pbi_core-0.3.6-py3-none-any.whl (244.3 kB view details)

Uploaded Python 3

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

Hashes for pbi_core-0.3.6.tar.gz
Algorithm Hash digest
SHA256 2cbe0e3b0bd940c407ea76a19f06e83709d544b7539c64a51bf6ff084d3d152d
MD5 d18e35bbaa9793ff043e1737917c413b
BLAKE2b-256 80f831c62d56f9d2d0fa744014c1c86c2699548bcfe79df5ed7f7cc322457c52

See more details on using hashes here.

Provenance

The following attestation bundles were made for pbi_core-0.3.6.tar.gz:

Publisher: deploy.yml on douglassimonsen/pbi_core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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

Hashes for pbi_core-0.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 cd740d0ec4f5b54166729181f152aa577ebeae40d8333466cfc5f111a1e4349f
MD5 32a29eb31549bbd6cd4be6ef7d2e7f18
BLAKE2b-256 d2564476ee4a163bb5bc07adc1346ba81d24f5115200af073b6097cd4071e427

See more details on using hashes here.

Provenance

The following attestation bundles were made for pbi_core-0.3.6-py3-none-any.whl:

Publisher: deploy.yml on douglassimonsen/pbi_core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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