<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Report Analysis in Notebook Gallery</title>
    <link>https://community.fabric.microsoft.com/t5/Notebook-Gallery/Report-Analysis/m-p/4623058#M8</link>
    <description>&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;Download this notebook from: &lt;A href="https://github.com/microsoft/semantic-link-labs/blob/main/notebooks/Report%20Analysis.ipynb" target="_blank" rel="noopener"&gt;semantic-link-labs/notebooks/Report Analysis.ipynb at main · microsoft/semantic-link-labs · GitHub&lt;/A&gt;&lt;/H3&gt;&lt;H3&gt;&amp;nbsp;&lt;/H3&gt;&lt;H3&gt;&lt;STRONG&gt;Install the latest .whl package&lt;/STRONG&gt;&lt;/H3&gt;&lt;P&gt;Check &lt;A href="https://pypi.org/project/semantic-link-labs/" target="_blank" rel="noopener"&gt;here&lt;/A&gt; to see the latest version.&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;%pip install semantic-link-labs&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;&lt;STRONG&gt;Import the library and set the initial parameters&lt;/STRONG&gt;&lt;/H3&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;import sempy_labs as labs
import sempy_labs.report as rep
from sempy_labs.report import ReportWrapper

# For checking reports
report_name = '' # Enter the report name
report_workspace = None # Enter the workspace in which the report exists
rpt = ReportWrapper(report=report_name, workspace=report_workspace)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;&lt;STRONG&gt;Report Best Practice Analyzer (BPA)&lt;/STRONG&gt;&lt;/H3&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rep.run_report_bpa(report=report_name, workspace=report_workspace)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H4&gt;&lt;STRONG&gt;Report BPA using custom rules&lt;/STRONG&gt;&lt;/H4&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;import pandas as pd

rules = pd.DataFrame(
    [
        (
            "Error Prevention",
            "Semantic Model",
            "Error",
            "Fix report objects which reference invalid semantic model objects",
            lambda df: df["Valid Semantic Model Object"] == False,
            "This rule highlights visuals, report filters, page filters or visual filters which reference an invalid semantic model object (i.e Measure/Column/Hierarchy).",
            "",
        ),
        (
            "Performance",
            "Page",
            "Warning",
            "Reduce the number of visible visuals on the page",
            lambda df: df["Visible Visual Count"] &amp;gt; 15,
            'Reducing the number of visable visuals on a page will lead to faster report performance. This rule flags pages with over " + visVisuals + " visible visuals.',
        ),
        (
            "Performance",
            "Visual",
            "Warning",
            "Reduce the number of objects within visuals",
            lambda df: df["Visual Object Count"] &amp;gt; 5,
            "Reducing the number of objects (i.e. measures, columns) which are used in a visual will lead to faster report performance.",
        )
    ],
    columns=[
        "Category",
        "Scope",
        "Severity",
        "Rule Name",
        "Expression",
        "Description",
        "URL",
    ],
)

rep.run_report_bpa(report=report_name, workspace=report_workspace, rules=rules)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;&lt;STRONG&gt;View all semantic model objects within a report&lt;/STRONG&gt;&lt;/H3&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_semantic_model_objects()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H4&gt;&lt;STRONG&gt;View broken report objects (if any semantic model objects used in the report do not exist within the semantic model)&lt;/STRONG&gt;&lt;/H4&gt;&lt;P&gt;The 'Valid Object' column indicates if the object (measure/column/hierarchy) exists within the semantic model used by the report&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_semantic_model_objects(extended=True)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H4&gt;&lt;STRONG&gt;View broken report objects across all reports tied to a semantic model&lt;/STRONG&gt;&lt;/H4&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;dataset_name = '' # Enter the semantic model name
dataset_workspace = None # Enter the workspace name in which the semantic model exists (if set to None it will use the workspace in which the notebook is running)
labs.list_report_semantic_model_objects(dataset=dataset_name, workspace=dataset_workspace, extended=True)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;&lt;STRONG&gt;List functions within the ReportWrapper&lt;/STRONG&gt;&lt;/H3&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_custom_visuals()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_pages()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_visuals()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_visual_objects()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_report_filters()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_page_filters()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_visual_filters()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_report_level_measures()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_visual_interactions()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_bookmarks()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;&lt;STRONG&gt;Perform actions on a report&lt;/STRONG&gt;&lt;/H3&gt;&lt;P&gt;Set a custom theme for a report based on a Power BI theme file&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.set_theme(theme_file_path='/lakehouse/default/Files/CY23SU09.json')&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.set_theme(theme_file_path='https://raw.githubusercontent.com/PowerBiDevCamp/FabricUserApiDemo/main/FabricUserApiDemo/DefinitionTemplates/Shared/Reports/StaticResources/SharedResources/BaseThemes/CY23SU08.json')&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Set whether a Power BI report page is hidden or visible&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.set_page_visibility(page_name='Page 1', hidden=True)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Set the active page (page shown upon opening the report)&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.set_active_page(page_name='Page 2')&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Disable the 'show items with no data' for all visuals within a Power BI report&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.disable_show_items_with_no_data()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Remove all custom visuals in a Power BI report which are not used in any visuals within the report&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.remove_unnecessary_custom_visuals()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Hide all pages which are used for a tooltip or drillthrough&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.hide_tooltip_drillthrough_pages()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="msgUrl hidden"&gt;https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fsemantic-link-labs%2Fblob%2Fmain%2Fnotebooks%2FReport%2520Analysis.ipynb&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Mon, 24 Mar 2025 22:09:32 GMT</pubDate>
    <dc:creator>mikova</dc:creator>
    <dc:date>2025-03-24T22:09:32Z</dc:date>
    <item>
      <title>Report Analysis</title>
      <link>https://community.fabric.microsoft.com/t5/Notebook-Gallery/Report-Analysis/m-p/4623058#M8</link>
      <description>&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;Download this notebook from: &lt;A href="https://github.com/microsoft/semantic-link-labs/blob/main/notebooks/Report%20Analysis.ipynb" target="_blank" rel="noopener"&gt;semantic-link-labs/notebooks/Report Analysis.ipynb at main · microsoft/semantic-link-labs · GitHub&lt;/A&gt;&lt;/H3&gt;&lt;H3&gt;&amp;nbsp;&lt;/H3&gt;&lt;H3&gt;&lt;STRONG&gt;Install the latest .whl package&lt;/STRONG&gt;&lt;/H3&gt;&lt;P&gt;Check &lt;A href="https://pypi.org/project/semantic-link-labs/" target="_blank" rel="noopener"&gt;here&lt;/A&gt; to see the latest version.&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;%pip install semantic-link-labs&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;&lt;STRONG&gt;Import the library and set the initial parameters&lt;/STRONG&gt;&lt;/H3&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;import sempy_labs as labs
import sempy_labs.report as rep
from sempy_labs.report import ReportWrapper

# For checking reports
report_name = '' # Enter the report name
report_workspace = None # Enter the workspace in which the report exists
rpt = ReportWrapper(report=report_name, workspace=report_workspace)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;&lt;STRONG&gt;Report Best Practice Analyzer (BPA)&lt;/STRONG&gt;&lt;/H3&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rep.run_report_bpa(report=report_name, workspace=report_workspace)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H4&gt;&lt;STRONG&gt;Report BPA using custom rules&lt;/STRONG&gt;&lt;/H4&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;import pandas as pd

rules = pd.DataFrame(
    [
        (
            "Error Prevention",
            "Semantic Model",
            "Error",
            "Fix report objects which reference invalid semantic model objects",
            lambda df: df["Valid Semantic Model Object"] == False,
            "This rule highlights visuals, report filters, page filters or visual filters which reference an invalid semantic model object (i.e Measure/Column/Hierarchy).",
            "",
        ),
        (
            "Performance",
            "Page",
            "Warning",
            "Reduce the number of visible visuals on the page",
            lambda df: df["Visible Visual Count"] &amp;gt; 15,
            'Reducing the number of visable visuals on a page will lead to faster report performance. This rule flags pages with over " + visVisuals + " visible visuals.',
        ),
        (
            "Performance",
            "Visual",
            "Warning",
            "Reduce the number of objects within visuals",
            lambda df: df["Visual Object Count"] &amp;gt; 5,
            "Reducing the number of objects (i.e. measures, columns) which are used in a visual will lead to faster report performance.",
        )
    ],
    columns=[
        "Category",
        "Scope",
        "Severity",
        "Rule Name",
        "Expression",
        "Description",
        "URL",
    ],
)

rep.run_report_bpa(report=report_name, workspace=report_workspace, rules=rules)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;&lt;STRONG&gt;View all semantic model objects within a report&lt;/STRONG&gt;&lt;/H3&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_semantic_model_objects()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H4&gt;&lt;STRONG&gt;View broken report objects (if any semantic model objects used in the report do not exist within the semantic model)&lt;/STRONG&gt;&lt;/H4&gt;&lt;P&gt;The 'Valid Object' column indicates if the object (measure/column/hierarchy) exists within the semantic model used by the report&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_semantic_model_objects(extended=True)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H4&gt;&lt;STRONG&gt;View broken report objects across all reports tied to a semantic model&lt;/STRONG&gt;&lt;/H4&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;dataset_name = '' # Enter the semantic model name
dataset_workspace = None # Enter the workspace name in which the semantic model exists (if set to None it will use the workspace in which the notebook is running)
labs.list_report_semantic_model_objects(dataset=dataset_name, workspace=dataset_workspace, extended=True)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;&lt;STRONG&gt;List functions within the ReportWrapper&lt;/STRONG&gt;&lt;/H3&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_custom_visuals()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_pages()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_visuals()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_visual_objects()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_report_filters()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_page_filters()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_visual_filters()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_report_level_measures()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_visual_interactions()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.list_bookmarks()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;H3&gt;&lt;STRONG&gt;Perform actions on a report&lt;/STRONG&gt;&lt;/H3&gt;&lt;P&gt;Set a custom theme for a report based on a Power BI theme file&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.set_theme(theme_file_path='/lakehouse/default/Files/CY23SU09.json')&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.set_theme(theme_file_path='https://raw.githubusercontent.com/PowerBiDevCamp/FabricUserApiDemo/main/FabricUserApiDemo/DefinitionTemplates/Shared/Reports/StaticResources/SharedResources/BaseThemes/CY23SU08.json')&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Set whether a Power BI report page is hidden or visible&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.set_page_visibility(page_name='Page 1', hidden=True)&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Set the active page (page shown upon opening the report)&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.set_active_page(page_name='Page 2')&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Disable the 'show items with no data' for all visuals within a Power BI report&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.disable_show_items_with_no_data()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Remove all custom visuals in a Power BI report which are not used in any visuals within the report&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.remove_unnecessary_custom_visuals()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;Hide all pages which are used for a tooltip or drillthrough&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;PRE&gt;rpt.hide_tooltip_drillthrough_pages()&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="msgUrl hidden"&gt;https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fsemantic-link-labs%2Fblob%2Fmain%2Fnotebooks%2FReport%2520Analysis.ipynb&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 24 Mar 2025 22:09:32 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Notebook-Gallery/Report-Analysis/m-p/4623058#M8</guid>
      <dc:creator>mikova</dc:creator>
      <dc:date>2025-03-24T22:09:32Z</dc:date>
    </item>
    <item>
      <title>Re: Report Analysis</title>
      <link>https://community.fabric.microsoft.com/t5/Notebook-Gallery/Report-Analysis/m-p/4672730#M15</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="137720" data-lia-user-login="mikova" class="lia-mention lia-mention-user"&gt;mikova&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;thanks for this fantastic notebook. I got a general question.&lt;/P&gt;&lt;LI-CODE lang="python"&gt;rpt.list_semantic_model_objects(extended=True)&lt;/LI-CODE&gt;&lt;P&gt;Why is this list showing me dependencies that are not really in my report? I got a lot of FALSE results in my report and after checking the visuals, I was not able to find an issue or something broken (a missing dependency).&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there any way to programatically clean the visuals of this old/not correct information?&amp;nbsp;&lt;/P&gt;&lt;P&gt;thanks!&lt;/P&gt;</description>
      <pubDate>Tue, 29 Apr 2025 10:29:27 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Notebook-Gallery/Report-Analysis/m-p/4672730#M15</guid>
      <dc:creator>ricardo_ona</dc:creator>
      <dc:date>2025-04-29T10:29:27Z</dc:date>
    </item>
    <item>
      <title>Re: Report Analysis</title>
      <link>https://community.fabric.microsoft.com/t5/Notebook-Gallery/Report-Analysis/m-p/4772284#M17</link>
      <description>&lt;P&gt;Thannks for this amazing overview of functions!&lt;BR /&gt;&lt;BR /&gt;However, I do run into the foloowing issue. Reportwrapper only works with .pbir files, which is not the file type version on app.powerbi.com. Only option I come across is downloading both the file and the notebook locally. Is there a possibility to use reportwrapper while staying in fabric lakehouse environment of app.powerbi.com?&lt;BR /&gt;&lt;BR /&gt;kind regards, Lidewij&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jul 2025 12:34:53 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Notebook-Gallery/Report-Analysis/m-p/4772284#M17</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2025-07-22T12:34:53Z</dc:date>
    </item>
  </channel>
</rss>

