public static Byte[] GetMultipleReports(ReportBase reportPara, List <ListOfSelected> myList) { Document doc = new Document(); MemoryStream msOutput = new MemoryStream(); PdfCopy pCopy = new PdfSmartCopy(doc, msOutput); // using iTextSharp pdf function doc.Open(); foreach (var item in myList) { try { Byte[] myPDF = GetOneReport(reportPara, item); // item => ListOFSelected if (myPDF.Length > 10) { AddFileToPCopy(ref pCopy, myPDF); } } catch { } } try { pCopy.Close(); doc.Close(); } catch { } return(msOutput.ToArray()); }
public static Byte[] GetOneReport(ReportBase reportPara, InputArg parameter) { var reportParameters = GetSpecificReportParamaters.GetReportParameters(reportPara.ReportType, parameter); // var reportParameters = BuildReportingParameters.GetReportParameter(reportPara.ReportType, parameter); return(getPDFReport(reportPara, reportParameters)); }
private static Byte[] getPDFReport(ReportBase reportPara, List <ReportParameter> _reportParameter) { // Byte[] result; try { ReportingWebService.ReportExecutionService RS = new ReportingWebService.ReportExecutionService(); // CredentialCache cache = new CredentialCache(); string accessUser = WebConfigurationManager.AppSettings["WebServiceUser"]; // WebConfig.ReportUser(); string accessRWSPW = WebConfigurationManager.AppSettings["WebServiceWP"]; // WebConfig.ReportPW(); string accessDomain = WebConfigurationManager.AppSettings["NetWorkDomain"]; // WebConfig.DomainName(); // string reportingServices = WebConfigurationManager.AppSettings["ReportingService"];// WebConfig.ReportServices(); // string reportPath = WebConfigurationManager.AppSettings["ReportPathWS"];// WebConfig.ReportPathWS() + "/" + _reportName; string format = reportPara.ReportFormat; RS.Url = reportPara.ReportService; RS.Credentials = new System.Net.NetworkCredential(accessUser, accessRWSPW, accessDomain); string report = reportPara.ReportPath + reportPara.ReportName; string historyID = null; string devInfo = "<DeviceInfo><Toolbar>False</Toolbar></DeviceInfo>"; string encoding = ""; string mimeType = ""; ReportingWebService.Warning[] warnings = new ReportingWebService.Warning[0]; string[] streamIDs = null; ReportingWebService.ServerInfoHeader sh = new ReportingWebService.ServerInfoHeader(); RS.ServerInfoHeaderValue = sh; var rptParameters = GetReportingServiceParameters(_reportParameter); ReportingWebService.ExecutionInfo execInfo = new ReportingWebService.ExecutionInfo(); ReportingWebService.ExecutionHeader execHeader = new ReportingWebService.ExecutionHeader(); execInfo = RS.LoadReport(report, historyID); RS.SetExecutionParameters(rptParameters, "en-us"); string extension = ""; string SessionId = RS.ExecutionHeaderValue.ExecutionID; return(RS.Render(format, devInfo, out extension, out encoding, out mimeType, out warnings, out streamIDs)); } catch (Exception ex) { string error = ex.Message; return(new Byte[0]); } }
public static void SaveDocuments(ReportBase reportPara, List <InputArg> myList) { foreach (var item in myList) { if (item.ObjID != "") { try { Byte[] myPDF; myPDF = GeneratePDFReport.GetOneReport(reportPara, item); // item => InputArg string fileName = reportPara.ReportName + " " + item.SchoolYear + " " + item.ObjID + " " + item.ObjNo + "." + reportPara.ReportFormat; string filePath = "C:Temp/" + reportPara.ReportName; SaveDocumentToFile(myPDF, fileName, filePath); } catch { } } } }
public static void RenderDocument(ReportBase reportPara, List <InputArg> myList) { try { Byte[] myDoc; if (myList.Count == 1) { myDoc = GeneratePDFReport.GetOneReport(reportPara, myList[0]); } else { myDoc = GeneratePDFReport.GetMultipleReports(reportPara, myList); } ShowDocument.Show(reportPara.ReportName, reportPara.ReportFormat, myDoc); } catch (Exception ex) { throw new Exception(ex.Message); } }
public static Byte[] GetOneReport(ReportBase reportPara, ListOfSelected parameter) { var reportParameters = BuildReportingParameters.GetReportParameter(reportPara.ReportType, parameter); return(getPDFReport(reportPara, reportParameters)); }
public static Byte[] GetOneReport2(InputArg parameter, ReportBase reportPara) { var reportParameters = BuildReportingParameters.GetReportParameter(reportPara.ReportType, parameter); return(getPDFReport(reportPara, reportParameters)); }