Exemple #1
0
        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());
        }
Exemple #2
0
        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));
        }
Exemple #3
0
        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]);
            }
        }
Exemple #4
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 { }
                }
            }
        }
Exemple #5
0
        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);
            }
        }
Exemple #6
0
        public static Byte[] GetOneReport(ReportBase reportPara, ListOfSelected parameter)
        {
            var reportParameters = BuildReportingParameters.GetReportParameter(reportPara.ReportType, parameter);

            return(getPDFReport(reportPara, reportParameters));
        }
Exemple #7
0
        public static Byte[] GetOneReport2(InputArg parameter, ReportBase reportPara)
        {
            var reportParameters = BuildReportingParameters.GetReportParameter(reportPara.ReportType, parameter);

            return(getPDFReport(reportPara, reportParameters));
        }