diff --git a/docs-mintlify/admin/connect-to-data/visualization-tools/powerbi.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/powerbi.mdx index cc8ad4b8ce0fa..5f69fa8204688 100644 --- a/docs-mintlify/admin/connect-to-data/visualization-tools/powerbi.mdx +++ b/docs-mintlify/admin/connect-to-data/visualization-tools/powerbi.mdx @@ -50,20 +50,17 @@ Cube Cloud supports the following authentication methods for Power BI: ### Connection methods -Power BI provides [three methods][link-powerbi-connection] to connect to data -sources: _live connection_, _DirectQuery_, and _import mode_. +Cube uses Power BI's [_live connection_][link-powerbi-live] mode. You compose +queries using the Power BI UI, and they run against your Cube semantic model in +real time, so you always work with up-to-date data and an up-to-date model. -| | Live connection | DirectQuery | Import mode | -| --- | --- | --- | --- | -| Data location | 🟢 Data source | 🟢 Data source | 🟡 Power BI | -| Data freshness | 🟢 Real-time data | 🟢 Real-time data | 🟡 Stale copy | -| Semantic model | 🟢 Up-to-date model | 🟡 Stale copy | 🟡 Stale copy | -| Queries | 🟢 Composed in UI
🔴 No custom queries | 🟢 Composed in UI
🟢 Custom queries | 🟢 Composed in UI
🟢 Custom queries | + -__It's recommended to use a _live connection_ whenever possible.__ Use _DirectQuery_ -if you need to write your own DAX queries, but be aware that you must manually -synchronize semantic models as they evolve. _Import mode_ is not recommended, as -it removes the benefits of using a semantic layer. +Power BI's other connection methods, [_DirectQuery_][link-powerbi-directquery] +and _import mode_, are not supported. Because writing your own DAX queries +requires _DirectQuery_, custom DAX queries are not supported either. + + ## Connect to the SQL API @@ -82,5 +79,6 @@ than the DAX API. However, this is the only option when using Cube Core. [ref-kerberos]: /docs/integrations/power-bi/kerberos [ref-ntlm]: /docs/integrations/power-bi/ntlm [ref-ntlm-desktop]: /docs/integrations/power-bi/ntlm#power-bi-desktop -[link-powerbi-connection]: https://learn.microsoft.com/en-us/power-bi/connect-data/service-live-connect-dq-datasets +[link-powerbi-live]: https://learn.microsoft.com/en-us/power-bi/connect-data/desktop-directquery-about#live-connections +[link-powerbi-directquery]: https://learn.microsoft.com/en-us/power-bi/connect-data/desktop-directquery-about [ref-opdg]: /docs/integrations/power-bi/ntlm#configuration \ No newline at end of file diff --git a/docs-mintlify/docs/integrations/power-bi/index.mdx b/docs-mintlify/docs/integrations/power-bi/index.mdx index 5a947c3e377c6..e167bb1f5f580 100644 --- a/docs-mintlify/docs/integrations/power-bi/index.mdx +++ b/docs-mintlify/docs/integrations/power-bi/index.mdx @@ -43,20 +43,17 @@ Cube Cloud supports the following authentication methods for Power BI: ### Connection methods -Power BI provides [three methods][link-powerbi-connection] to connect to data -sources: _live connection_, _DirectQuery_, and _import mode_. +Cube uses Power BI's [_live connection_][link-powerbi-live] mode. You compose +queries using the Power BI UI, and they run against your Cube semantic model in +real time, so you always work with up-to-date data and an up-to-date model. -| | Live connection | DirectQuery | Import mode | -| --- | --- | --- | --- | -| Data location | 🟢 Data source | 🟢 Data source | 🟡 Power BI | -| Data freshness | 🟢 Real-time data | 🟢 Real-time data | 🟡 Stale copy | -| Semantic model | 🟢 Up-to-date model | 🟡 Stale copy | 🟡 Stale copy | -| Queries | 🟢 Composed in UI
🔴 No custom queries | 🟢 Composed in UI
🟢 Custom queries | 🟢 Composed in UI
🟢 Custom queries | + -__It's recommended to use a _live connection_ whenever possible.__ Use _DirectQuery_ -if you need to write your own DAX queries, but be aware that you must manually -synchronize semantic models as they evolve. _Import mode_ is not recommended, as -it removes the benefits of using a semantic layer. +Power BI's other connection methods, [_DirectQuery_][link-powerbi-directquery] +and _import mode_, are not supported. Because writing your own DAX queries +requires _DirectQuery_, custom DAX queries are not supported either. + + ## Connect to the SQL API @@ -75,5 +72,6 @@ than the DAX API. However, this is the only option when using Cube Core. [ref-kerberos]: /docs/integrations/power-bi/kerberos [ref-ntlm]: /docs/integrations/power-bi/ntlm [ref-ntlm-desktop]: /docs/integrations/power-bi/ntlm#power-bi-desktop -[link-powerbi-connection]: https://learn.microsoft.com/en-us/power-bi/connect-data/service-live-connect-dq-datasets +[link-powerbi-live]: https://learn.microsoft.com/en-us/power-bi/connect-data/desktop-directquery-about#live-connections +[link-powerbi-directquery]: https://learn.microsoft.com/en-us/power-bi/connect-data/desktop-directquery-about [ref-opdg]: /docs/integrations/power-bi/ntlm#configuration \ No newline at end of file diff --git a/docs-mintlify/reference/core-data-apis/dax-api/cross-view-filter.mdx b/docs-mintlify/reference/core-data-apis/dax-api/cross-view-filter.mdx index fddf78c726cda..cfae22b7d94ac 100644 --- a/docs-mintlify/reference/core-data-apis/dax-api/cross-view-filter.mdx +++ b/docs-mintlify/reference/core-data-apis/dax-api/cross-view-filter.mdx @@ -10,8 +10,6 @@ and dimensions across views. Cross-view filtering removes this limitation, letting you build dashboards that span multiple views and apply filters consistently across visualizations. -It is supported in both [Live connection](#live-connection-mode) and -[DirectQuery](#directquery-mode) modes. To use cross-view filters such as slicers, you must enable single-perspective mode in the DAX API. To enable single-perspective mode in the DAX API, @@ -29,10 +27,10 @@ enabling this environment variable. -## Live connection mode +## How it works -In Live connection mode, cross-view filters work automatically, provided that -the following two conditions are met: +Cross-view filters work automatically, provided that the following two +conditions are met: - The column used in the filter must be present in every view that the cross-filter has to be applied to, and named exactly the same in each view. @@ -52,36 +50,6 @@ Likewise, if `orders_view` exposes an `address_country` column pointing to `country.country`, cross-filtering will not be applied, because the column names differ between the views. -## DirectQuery mode - -In DirectQuery mode, cross-view filters require the same two conditions as in -[Live connection mode](#live-connection-mode): the filter column must be -present in every view with the exact same name, and it must resolve to the -same cube member across those views. - -In addition, you must manually configure relationships between tables in Power -BI so that filters propagate across views: - -- Open **Model view** in the left sidebar. -- On the right, open the **Data** sidebar, then the **Model** tab. -- Right-click **Relationships** and choose **New relationship**. -- In the **Properties** sidebar, select a table and a column. -- For cardinality, choose **Many to many (\*:\*)**. Ignore the warning. -- Select another table with the same column. -- For cross-filter direction, select **Both**. -- Click **Apply changes**. - -Once the relationship is configured correctly, cross-view filters will work in -DirectQuery mode. - -The steps above describe configuring a relationship between two tables. When -many views need to be cross-filtered, the best practice is to create a single -view in the Cube data model that includes all the columns from the views that -need to be cross-filtered, and then create relationships between this large -view and each of the other views. This keeps the relationship graph in Power -BI simple and avoids configuring pairwise relationships between every -combination of views. - [ref-dax-api]: /reference/core-data-apis/dax-api [ref-views]: /docs/data-modeling/views diff --git a/docs-mintlify/reference/core-data-apis/dax-api/index.mdx b/docs-mintlify/reference/core-data-apis/dax-api/index.mdx index a1e49ed4468ae..94c263d0c93ef 100644 --- a/docs-mintlify/reference/core-data-apis/dax-api/index.mdx +++ b/docs-mintlify/reference/core-data-apis/dax-api/index.mdx @@ -78,8 +78,7 @@ The DAX API only exposes [views][ref-views], not cubes. By default, each view is exposed as a separate perspective in Power BI, so visualizations from different views can't share the same filters. Cross-view filtering lets you build dashboards that span multiple views and apply filters -consistently across visualizations, in both Live connection and DirectQuery -modes. +consistently across visualizations. See [Cross-view filtering][ref-cross-view-filter] for details on how to enable and use it.