Forum Discussion

Akshay_B's avatar
Akshay_B
New Member
8 months ago
Solved

Display Dynamic Images from SharePoint List on Drill-through Page Based on Request ID

Body:

Hello Experts,

I have a scenario where I need help displaying images dynamically in Power BI.

Scenario

  • We have a Power BI App that allows users to upload images.

  • These images are stored in the backend SharePoint List as Image Library.

  • Power BI Desktop is connected to the SharePoint list, and we use this data to show multiple KPIs.

  • For each Request ID, a new image gets uploaded into the SharePoint list.

Requirement

I want to create a Drill-through page in Power BI where:

  1. A user selects a Request ID from any visual.

  2. The user drills through to a new page.

  3. That page should display the image corresponding to that Request ID, which is stored in the SharePoint list.

What I have already tried

  • Added the image column from the SharePoint list into Power BI.

  • Tried using Image URL and Binary image formats.

  • The image is not appearing dynamically when using drill-through filtering.

  • Only the Request ID filter passes through, but the image does not render correctly.

Data Structure

SharePoint List columns:

  • Request ID

  • Image (SharePoint Image column)

  • Other metadata fields

Question

What is the best way to display these SharePoint-stored images dynamically on a Power BI Drill-through page, based on the Request ID?
Do I need to convert the image column to a URL?
Or is there any workaround/visual that supports SharePoint image binary fields?

Any guidance or example steps would be greatly appreciated.

Thank you!

  • The Power BI service has no way to get to your SharePoint Document library (nor should it).

     

    Place your images on a public server or embed them in the semantic model.

  • Use the Request ID in the drill-through filter and an Image URL column from SharePoint; Power BI cannot drill on the binary image column itself.

    1. Build an image URL column from the SharePoint Image field

    In Power Query against the SharePoint list, create a custom column that concatenates the serverUrl and serverRelativeUrl from the Image JSON to a full HTTPS URL, then load that column into the model.
    In Data view, select this column and set Data category = Image URL so the Image or Table visual can render it.

    2. Set up the drill-through page

    • Ensure both tables (core KPIs and SharePoint images) contain Request ID and have a relationship on it (or use a single table).

    • On the drill-through page, drag Request ID into Drill-through filters, then add an Image visual (or a table with the Image URL field).

    • Drop the Image URL field in the visual; when a user drills through on a Request ID, the drill-through filter will restrict the page to that Request ID and the corresponding image URL will display dynamically.

    If your SharePoint site is secured, confirm the dataset’s credentials and gateway let the Power BI Service reach the list; otherwise images may appear as broken links even if the URL is correct.

  • hi Akshay_B 

    This is expected behavior in Power BI, and the issue is not with drill-through itself, but with how SharePoint Image columns are handled.

    Power BI cannot dynamically render binary images (SharePoint Image field) based on drill-through filter context. Even though the Request ID is passed correctly, the image does not update because the image column is not a true image URL.

    Why this happens

    SharePoint Image columns are stored as complex JSON / binary metadata, not as a direct image link.
    Power BI visuals only support dynamic images when the field is:

    A direct URL

    Categorized as Image URL

    Binary image fields do not respond to drill-through filtering.

    Supported and recommended approach

    1. Extract the image URL in Power Query
    Expand the Image column and retrieve:

    serverUrl

    serverRelativeUrl

    Create a new column:

    ImageURL = [serverUrl] & [serverRelativeUrl]


    2. Set the Data Category
    In Model view:

    Select the new column

    Set Data Category = Image URL

    This step is mandatory.

    3. Validate the relationship
    Ensure Request ID from your main table is related to Request ID in the SharePoint list.
    Drill-through will then filter the correct row.

    4. Build the drill-through page

    Add Request ID to the Drill-through filters pane

    Use a Table or Matrix (native visuals work best)

    Place the Image URL field in the visual

    Once drilled through, Power BI will automatically display the image for that Request ID.

    Key limitations to keep in mind

    SharePoint binary image fields are not supported in Power BI visuals

    Drill-through only works with URL-based images

    If multiple images exist per Request ID, you’ll need to control which one to show (FIRST, MAX, etc.)

    Summary

    ✔ Drill-through is working
    ✔ Request ID filter is passed
    Binary SharePoint images cannot be rendered

    Use Image URLs categorized as Image URL
    This is the only supported and reliable pattern today.

    Hope this helps clarify the limitation and the correct workaround.

6 Replies

  •  

    Hi Akshay_B , i understand you are having problem with displaying Dynamic Images from SharePoint List on Drill-through Page Based on Request ID

    Steps:

    1. Extract a usable image URL from SharePoint

    SharePoint "Image" columns don’t load directly into Power BI visuals.
    In Power Query, expand the Image column and extract the field Url or serverRelativeUrl.

    If you get a relative path, build a full URL:

    = "https://yourtenant.sharepoint.com" & [serverRelativeUrl]

    Name this column ImageFullUrl.

    2. Set the column as an Image URL

    In the model:

    • Select ImageFullUrl

    • Data Category → Image URL

    This tells Power BI to treat it as a picture source.[-

    3. Build the drill-through page

    • Create a new page

    • Drag Request ID into the Drill-through field well

    • Add an Image visual

    • Set its field to ImageFullUrl

    When users drill through using a Request ID, the page filters to that ID, and the image visual shows the corresponding image.

    4. Common pitfalls

    • If the image shows in Desktop but not Service → dataset credentials or SharePoint permissions.

    • If nothing displays → URL is wrong (not a full https URL).

    Hope this solution helps you make the most of Power BI! If it did, click 'Mark as Solution' to help others find the right answers.
    💡Found it helpful? Show some love with kudos 👍 as your support keeps our community thriving!
    🚀Let’s keep building smarter, data-driven solutions together!🚀 [Explore More]

  • Use the Request ID in the drill-through filter and an Image URL column from SharePoint; Power BI cannot drill on the binary image column itself.

    1. Build an image URL column from the SharePoint Image field

    In Power Query against the SharePoint list, create a custom column that concatenates the serverUrl and serverRelativeUrl from the Image JSON to a full HTTPS URL, then load that column into the model.
    In Data view, select this column and set Data category = Image URL so the Image or Table visual can render it.

    2. Set up the drill-through page

    • Ensure both tables (core KPIs and SharePoint images) contain Request ID and have a relationship on it (or use a single table).

    • On the drill-through page, drag Request ID into Drill-through filters, then add an Image visual (or a table with the Image URL field).

    • Drop the Image URL field in the visual; when a user drills through on a Request ID, the drill-through filter will restrict the page to that Request ID and the corresponding image URL will display dynamically.

    If your SharePoint site is secured, confirm the dataset’s credentials and gateway let the Power BI Service reach the list; otherwise images may appear as broken links even if the URL is correct.

  • hi Akshay_B 

    This is expected behavior in Power BI, and the issue is not with drill-through itself, but with how SharePoint Image columns are handled.

    Power BI cannot dynamically render binary images (SharePoint Image field) based on drill-through filter context. Even though the Request ID is passed correctly, the image does not update because the image column is not a true image URL.

    Why this happens

    SharePoint Image columns are stored as complex JSON / binary metadata, not as a direct image link.
    Power BI visuals only support dynamic images when the field is:

    A direct URL

    Categorized as Image URL

    Binary image fields do not respond to drill-through filtering.

    Supported and recommended approach

    1. Extract the image URL in Power Query
    Expand the Image column and retrieve:

    serverUrl

    serverRelativeUrl

    Create a new column:

    ImageURL = [serverUrl] & [serverRelativeUrl]


    2. Set the Data Category
    In Model view:

    Select the new column

    Set Data Category = Image URL

    This step is mandatory.

    3. Validate the relationship
    Ensure Request ID from your main table is related to Request ID in the SharePoint list.
    Drill-through will then filter the correct row.

    4. Build the drill-through page

    Add Request ID to the Drill-through filters pane

    Use a Table or Matrix (native visuals work best)

    Place the Image URL field in the visual

    Once drilled through, Power BI will automatically display the image for that Request ID.

    Key limitations to keep in mind

    SharePoint binary image fields are not supported in Power BI visuals

    Drill-through only works with URL-based images

    If multiple images exist per Request ID, you’ll need to control which one to show (FIRST, MAX, etc.)

    Summary

    ✔ Drill-through is working
    ✔ Request ID filter is passed
    Binary SharePoint images cannot be rendered

    Use Image URLs categorized as Image URL
    This is the only supported and reliable pattern today.

    Hope this helps clarify the limitation and the correct workaround.

  • The Power BI service has no way to get to your SharePoint Document library (nor should it).

     

    Place your images on a public server or embed them in the semantic model.

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Akshay_B 

    Thank you for reaching out to the Microsoft Fabric Forum Community.

    SavioFerraz lbendlin Shubham_rai955 GrowthNatives Thanks for the inputs.

    I hope the information provided by users was helpful. If you still have questions, please don't hesitate to reach out to the community.

     

    • Anonymous's avatar
      Anonymous
      Not applicable

      Hi Akshay_B 

      Hope everything’s going smoothly on your end. I wanted to check if the issue got sorted. if you have any other issues please reach community.