knowledgecenter-breadcrum

Knowledge Center

10 Nov, 2020

How to convert SSRS report in word format using JavaScript?

Posted on 10 Nov, 2020 by Admin, Posted in Dynamics 365 Dynamics-365 Sales

How to convert SSRS report in word format using JavaScript? Blogs

How to convert SSRS report in word format using JavaScript?

Introduction

In this blog, I am going to explain how we can export SSRS reports as Word Document. To know how we can execute SSRS reports, you can refer below blog:

https://themscrmexpert.wordpress.com/2016/12/19/how-to-send-ssrs-report-as-a-pdf-in-email-in-dynamics-crm-online/

Solution

To get SSRS report in word format, first we need to execute SSRS report, you can refer above link to execute report. Then we will get the response in which we will get ReportSession and ControlID. We will need these report session and control id to generate word document version of SSRS report.

Now, create a query string to get word version of SSRS report as follows:

let queryString = [Organization URI] + "/Reserved.ReportViewerWebControl.axd?ReportSession=" + ReportSession + "&Culture=1033&CultureOverrides=True&UICulture=1033&UICultureOverrides=True&ReportStack=1&ControlID=" + ControlID + "&OpType=Export&FileName=public&ContentDisposition=OnlyHtmlInline&Format=DOCX";

Now, create request object that will be called to convert the response in DOCX base64 string:

function fnConvertReportToWord(queryString){
 var retrieveEntityReq = new XMLHttpRequest();
 retrieveEntityReq.open("GET", queryString, true);
 retrieveEntityReq.setRequestHeader("Accept", "*/*");
 retrieveEntityReq.responseType = "arraybuffer";
 retrieveEntityReq.onreadystatechange = function () { // This is the call-back function.
 if (retrieveEntityReq.readyState == 4 && retrieveEntityReq.status == 200) {
   var binary = "";
   var bytes = new Uint8Array(this.response);
   for (var i = 0; i < bytes xss=removed xss=removed xss=removed>[removed] + base64WordString;
   //open or download report in word format
   window.open(base64DataUrl);
 }
};
//This statement sends the request for execution asynchronously. Callback function will be called on completion of the request.
retrieveEntityReq.send();
}

You will get a data URL base64DataUrl of word version of SSRS report to print or download report in word format. You can use base64WordString to attach as an email attachments and send report as word document.

Comment

This is a Required Field

Loading

Recent Updates

Business Central thumbnail image
Blogs
06 Jan, 2025

What is Dynamics 365 Business Central? A Comprehensive Beginner's Guide

Dynamics 365 Business Central is a unified business management system offered by Microsoft. It helps businesses automate and manage various…

READ MORE
Thumbnail D365 for Marketing
Blogs
16 Dec, 2024

10 Reasons Why You Need Dynamics 365 for Marketing

This blog discusses the top 10 reasons to choose Dynamics 365 for Marketing to improve your business's marketing efforts.  …

READ MORE
Thumbnail_top 10 benefits of
Blogs
02 Dec, 2024

Top 10 Benefits of Microsoft Dynamics 365

This blog lists the advantages of Microsoft Dynamics 365, focusing on how it can improve your business operations.    …

READ MORE