Exemplo n.º 1
0
 public void Dispose()
 {
     CutEventOff();
     this.CurrentReport     = null;
     this._dataSource       = null;
     this._groupName        = null;
     this._preReport        = null;
     this.SelectedDataRange = null;
     this.SubReport         = null;
     GC.Collect();
 }
Exemplo n.º 2
0
        public ReportGenerator(DataTable dataSource, Option <string> groupName, string reportName = null) : this(reportName)
        {
            if (dataSource == null || dataSource.Rows.Count == 0)
            {
                throw new ArgumentNullException("dataSource");
            }

            this._preReport    = null;
            this._dataSource   = dataSource;
            this._groupName    = groupName;
            this._isRootReport = true;

            GenerateReport();
        }
Exemplo n.º 3
0
 public void ChangePreReport(ReportGenerator preReport, DataTable dataSource)
 {
     if (preReport == null)
     {
         throw new ArgumentNullException("preReport");
     }
     if (this._preReport != null)
     {
         this.CurrentReportDestroying -= _preReport.DropSubReport;
     }
     this._preReport = preReport;
     this.CurrentReportDestroying += _preReport.DropSubReport;
     this._dataSource              = dataSource;
     GenerateReport();
 }
Exemplo n.º 4
0
        public ReportGenerator(DataTable dataSource, Option<string> groupName, string reportName = null)
            : this(reportName)
        {
            if (dataSource == null || dataSource.Rows.Count == 0)
            {
                throw new ArgumentNullException("dataSource");
            }

            this._preReport = null;
            this._dataSource = dataSource;
            this._groupName = groupName;
            this._isRootReport = true;

            GenerateReport();
        }
Exemplo n.º 5
0
 public void ChangeSubReport(ReportGenerator subReport)
 {
     if (this.SubReport != null)
     {
         this.SelectedDataRangeChanged -= this.SubReport.DataSourceChanged;
     }
     if (subReport == null)
     {
         this.SubReport = null;
     }
     else
     {
         this.SubReport = subReport;
         this.SelectedDataRangeChanged += this.SubReport.DataSourceChanged;
     }
 }
Exemplo n.º 6
0
        public ReportGenerator AddSubReport(Option <string> groupName, string reportName = null)
        {
            ReportGenerator sub = new ReportGenerator(reportName);

            if (SubReport != null)
            {
                var grandson = SubReport;
                this.ChangeSubReport(sub);
                sub.ChangePreReport(this, this.SelectedDataRange);
                sub.ChangeSubReport(grandson);
                grandson.ChangePreReport(sub, sub.SelectedDataRange);
            }
            else
            {
                this.ChangeSubReport(sub);
                sub.ChangePreReport(this, this.SelectedDataRange);
            }

            return(sub);
        }
Exemplo n.º 7
0
        public ReportGenerator AddSubReport(Option<string> groupName, string reportName = null)
        {
            ReportGenerator sub = new ReportGenerator(reportName);
            if (SubReport != null)
            {
                var grandson = SubReport;
                this.ChangeSubReport(sub);
                sub.ChangePreReport(this, this.SelectedDataRange);
                sub.ChangeSubReport(grandson);
                grandson.ChangePreReport(sub, sub.SelectedDataRange);
            }
            else
            {
                this.ChangeSubReport(sub);
                sub.ChangePreReport(this, this.SelectedDataRange);
            }

            return sub;
        }
Exemplo n.º 8
0
        /// <summary>
        /// drop the sub report link, and then link to the grandson report if it existed.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void DropSubReport(object sender, EventArgs e)
        {
            if (SubReport.SubReport != null)
            {
                var grandsonReport = SubReport.SubReport;

                this.ChangeSubReport(grandsonReport);
                grandsonReport.ChangePreReport(this, this.SelectedDataRange);

                this.SubReport = grandsonReport;
            }
            else
            {
                this.SubReport = null;
            }
        }
Exemplo n.º 9
0
 public void Dispose()
 {
     CutEventOff();
     this.CurrentReport = null;
     this._dataSource = null;
     this._groupName = null;
     this._preReport = null;
     this.SelectedDataRange = null;
     this.SubReport = null;
     GC.Collect();
 }
Exemplo n.º 10
0
 public void ChangeSubReport(ReportGenerator subReport)
 {
     if (this.SubReport != null)
     {
         this.SelectedDataRangeChanged -= this.SubReport.DataSourceChanged;
     }
     if (subReport == null)
     {
         this.SubReport = null;
     }
     else
     {
         this.SubReport = subReport;
         this.SelectedDataRangeChanged += this.SubReport.DataSourceChanged;
     }
 }
Exemplo n.º 11
0
 public void ChangePreReport(ReportGenerator preReport, DataTable dataSource)
 {
     if (preReport == null)
     {
         throw new ArgumentNullException("preReport");
     }
     if (this._preReport != null)
     {
         this.CurrentReportDestroying -= _preReport.DropSubReport;
     }
     this._preReport = preReport;
     this.CurrentReportDestroying += _preReport.DropSubReport;
     this._dataSource = dataSource;
     GenerateReport();
 }