Ejemplo n.º 1
0
        public static List<string> CreatePdfPerAccount(XtraReportDefaultTemplate xreport, ReportDataSet dSet, string pReportsPath)
        {
            List<string> _PdfFiles = new List<string>();
            foreach (DataRow row in dSet.account.Rows) {
                if (row.RowState == DataRowState.Deleted)
                    continue;

                var dSetClone = (ReportDataSet)dSet.Copy();
                var dset = dSetClone.account.Select(String.Format("NOT(account_id={0})", row["account_id"]));
                foreach (var rowD in dset)
                    rowD.Delete();

                dSetClone.AcceptChanges();
                string fileName = String.Format(@"{0}\{1}_{2}_{3}.pdf",
                    pReportsPath,
                    row["company_name"].ToString().Replace(" ", "_").Replace(":", "_").Replace("/", "").Replace(@"\", ""),
                    DateTime.Now.ToString("yyyy-MM-dd"),
                    Guid.NewGuid().ToString()
                );

                var report = xreport.CloneReport() as XtraReportDefaultTemplate;
                report.ReportHeader.Controls.Clear();
                PdfExportOptions pdfOptions = report.ExportOptions.Pdf;
                pdfOptions.Compressed = true;
                pdfOptions.ImageQuality = PdfJpegImageQuality.Low;
                report.DataSource = dSetClone;
                report.ExportToPdf(fileName);
                _PdfFiles.Add(fileName);
            }

            return _PdfFiles;
        }
Ejemplo n.º 2
0
        public static string SavePDF(XtraReportDefaultTemplate xreport, ReportDataSet dSet, string pReportsPath, bool pIsWebPortalCall = false)
        {
            // Set PDF-specific export options.
            //string reportPath = Directory.GetCurrentDirectory();

            //string reportPath = ConfigurationManager.AppSettings["PdfReportsPath"].ToString(); // for debugging purposes only
            //if (pIsWebPortalCall)
            //string reportPath = ConfigManager.AppSettings["PdfReportsPath"].ToString();

            if (!pIsWebPortalCall) {
                if (!Directory.Exists(@"C:\BrightVision"))
                    Directory.CreateDirectory(@"C:\BrightVision");

                if (!Directory.Exists(@"C:\BrightVision\PdfReports"))
                    Directory.CreateDirectory(@"C:\BrightVision\PdfReports");
            }

            string fileName = "";
            ReportDataSet dSetClone = new ReportDataSet();
            foreach (DataRow row in dSet.account.Rows) {
                if (row.RowState == DataRowState.Deleted)
                    continue;

                dSetClone = (ReportDataSet)dSet.Copy();
                var dset = dSetClone.account.Select(String.Format("NOT(account_id={0})", row["account_id"]));
                foreach (var rowD in dset)
                    rowD.Delete();

                dSetClone.AcceptChanges();
                fileName = String.Format(@"{0}\{1}_{2}_{3}.pdf",
                    pReportsPath,
                    row["company_name"].ToString().Replace(" ", "_").Replace(":", "_").Replace("/", "").Replace(@"\", ""),
                    DateTime.Now.ToString("yyyy-MM-dd"),
                    Guid.NewGuid().ToString()
                );
            }

            var report = xreport.CloneReport() as XtraReportDefaultTemplate;
            report.ReportHeader.Controls.Clear();
            PdfExportOptions pdfOptions = report.ExportOptions.Pdf;
            pdfOptions.Compressed = true;
            pdfOptions.ImageQuality = PdfJpegImageQuality.Low;
            report.DataSource = dSetClone;
            report.ExportToPdf(fileName);

            return fileName;
        }
Ejemplo n.º 3
0
        public static void SavePDFPerAccount(XtraReportDefaultTemplate xreport, ReportDataSet dSet)
        {
            FolderBrowserDialog folderBrowserDialog = new FolderBrowserDialog();
            string reportPath = string.Empty;
            if (folderBrowserDialog.ShowDialog() == DialogResult.OK) {
                foreach (DataRow row in dSet.account.Rows) {
                    if (row.RowState == DataRowState.Deleted)
                        continue;

                    var dSetClone = (ReportDataSet)dSet.Copy();
                    var dset = dSetClone.account.Select(String.Format("NOT(account_id={0})", row["account_id"]));
                    foreach (var rowD in dset)
                        rowD.Delete();

                    dSetClone.AcceptChanges();
                    reportPath = folderBrowserDialog.SelectedPath;
                    string fileName = String.Format(@"{0}\{1}_{2}_{3}.pdf",
                        reportPath,
                        row["company_name"].ToString().Replace(" ", "_").Replace(":", "_").Replace("/", "").Replace(@"\", ""),
                        DateTime.Now.ToString("yyyy-MM-dd"),
                        Guid.NewGuid().ToString()
                    );

                    //string fileName = String.Format("{0}\\{1}_{2}.pdf", reportPath, row["company_name"].ToString().Replace(" ", "_").Replace(":", "_"), DateTime.Now.ToString("yyyy-MM-dd_HH_mm_ss"));

                    var report = xreport.CloneReport() as XtraReportDefaultTemplate;
                    report.ReportHeader.Controls.Clear();
                    PdfExportOptions pdfOptions = report.ExportOptions.Pdf;
                    pdfOptions.Compressed = true;
                    pdfOptions.ImageQuality = PdfJpegImageQuality.Low;
                    report.DataSource = dSetClone;
                    report.ExportToPdf(fileName);
                }
                DialogResult _dlg = MessageBox.Show(
                    string.Format("Successfully generated reports.{0}Would you like to open the folder where the reports are saved?", Environment.NewLine),
                    "Brightvision Reports",
                    MessageBoxButtons.YesNo,
                    MessageBoxIcon.Question
                );
                if (_dlg == DialogResult.Yes)
                    System.Diagnostics.Process.Start(folderBrowserDialog.SelectedPath);
            }
        }