Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Don't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.

Reply
arock-well
Responsive Resident
Responsive Resident

Getting SSRS report data using a Web URL

We have third party software that uses an on-prem SQL Server database. Trying to understand all the data we need to create a Power BI report has proven to be complicated to figure out what all they're doing behind the scenes.

 

However, the software does have SSRS paginated reports and allows you to create custom ones. Looking at the SQL query that made a particular report was around 7000 lines of SQL, which has been hard to reverse engineer.

 

So instead of trying to recreate the SQL query from scratch, it appears I can connect directly to an SSRS report via a Web URL and get the data that way (see article: https://learn.microsoft.com/en-us/sql/reporting-services/export-a-report-using-url-access?view=sql-s....

 

Connecting using this as an Excel export allowed me to get to that data and seems to work: https://myrshost/ReportServer/Pages/ReportViewer.aspx?/ReportFolder/Report001&rs:Format=Excel

 

Is this a good alternative way to do this? What issues could I run into connecting this way?

 

Any suggestions would be welcomed.

1 REPLY 1
JSpe
New Member

Here is the easiest way to get your SSRS URL (often found as an AtomSVC file) as a dataset in PBi:  

 

 

let
    // Basis: 
    OpenAtomSVCFile = (atomsvc_Contents as text) =>
        let
            Source = Xml.Tables(atomsvc_Contents),
            Table0 = Source{0}[Table],
            Table = Table0{1}[Table],
            #"Changed Type" = Table.TransformColumnTypes(Table, {{"Attribute:href", type text}}),
            #"Attribute:href" = #"Changed Type"{0}[#"Attribute:href"],
            #"Clean Ampersands" = Text.Replace(#"Attribute:href", "amp;", ""),
            #"Change to CSV Format" = Text.Replace(#"Clean Ampersands", "Format=ATOM", "Format=csv"),
            Request = Csv.Document(Web.Contents(#"Change to CSV Format"), [Delimiter=","]),
            
            #"Promoted Headers" = Table.PromoteHeaders(#"Request", [PromoteAllScalars=true])
        in
            #"Promoted Headers"
in
    OpenAtomSVCFile

 

 

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.