Add Reference: Microsoft.ReportViewer.WebForms
Using Microsoft.Reporting.WebForms.Internal.Soap.ReportingServices2005.Execution;
ReportExecutionService rs = new ReportExecutionService(); rs.Credentials = System.Net.CredentialCache.DefaultCredentials; rs.Url = "http://servername/reportserver/ReportExecution2005.asmx"; // Render arguments byte[] result = null; string reportPath = "/folder/reportname"; string format = "EXCEL"; string historyID = null; string devInfo = @""; // Prepare report parameter. ParameterValue[] parameters = new ParameterValue[1]; parameters[0] = new ParameterValue(); parameters[0].Name = "Date"; parameters[0].Value = "2012-05-07"; DataSourceCredentials[] credentials = null; string showHideToggle = null; string encoding; string mimeType; string extension; Warning[] warnings = null; ParameterValue[] reportHistoryParameters = null; string[] streamIDs = null; ExecutionInfo execInfo = new ExecutionInfo(); ExecutionHeader execHeader = new ExecutionHeader(); rs.ExecutionHeaderValue = execHeader; execInfo = rs.LoadReport(reportPath, historyID); False rs.SetExecutionParameters(parameters, "en-us");String SessionId = rs.ExecutionHeaderValue.ExecutionID; Console.WriteLine("SessionID: {0}", rs.ExecutionHeaderValue.ExecutionID); try { result = rs.Render(format, devInfo, out extension, out encoding, out mimeType, out warnings, out streamIDs); execInfo = rs.GetExecutionInfo(); Console.WriteLine("Execution date and time: {0}", execInfo.ExecutionDateTime); } catch (SoapException e) { Console.WriteLine(e.Detail.OuterXml); } // Write the contents of the report to an MHTML file. try { FileStream stream = File.Create("report.xls", result.Length); Console.WriteLine("File created."); stream.Write(result, 0, result.Length); Console.WriteLine("Result written to the file."); stream.Close(); } catch (Exception e) { Console.WriteLine(e.Message); }
For Share Point, Just change the below code:
ReplyDeletestring reportPath = “http:///Shared%20Documents/SimpleSelect.rdl”;
string devInfo = @”False”;