コード例 #1
0
        public override void GenerateReport()
        {
            base.ReportModel.ReportSettings.ReportType = GlobalEnums.ReportType.DataReport;
            base.ReportModel.ReportSettings.DataModel  = GlobalEnums.PushPullModel.PullData;
            base.GenerateReport();
            GlobalEnums.ReportLayout reportLayout = ReportStructure.ReportLayout;
            AbstractLayout           layout       = LayoutFactory.CreateGenerator(reportLayout, base.ReportModel, base.ReportItemCollection);

            layout.CreateReportHeader();
            layout.CreatePageHeader();
            layout.CreateDataSection(base.ReportModel.DetailSection);
            layout.CreatePageFooter();
            base.WriteToXml();
        }
コード例 #2
0
        public override void GenerateReport()
        {
            base.ReportModel.ReportSettings.ReportType = GlobalEnums.ReportType.DataReport;
            base.ReportModel.ReportSettings.DataModel  = GlobalEnums.PushPullModel.PushData;
            base.ReportModel.ReportSettings.AvailableFieldsCollection.AddRange(reportStructure.AvailableFieldsCollection);
            base.GenerateReport();
            GlobalEnums.ReportLayout reportLayout = (GlobalEnums.ReportLayout)base.Properties.Get("ReportLayout");
            AbstractLayout           layout       = LayoutFactory.CreateGenerator(reportLayout, base.ReportModel, base.ReportItemCollection);

            layout.CreateReportHeader();
            layout.CreatePageHeader();
            layout.CreateDataSection(base.ReportModel.DetailSection);
            layout.CreatePageFooter();
            base.WriteToXml();
        }
コード例 #3
0
        void CreateDetail(ICSharpCode.Reports.Core.BaseRowItem detailRow, Point insertLocation)
        {
            AdjustContainer(Container, detailRow);
            detailRow.Location = insertLocation;
            detailRow.Size     = new Size(detailRow.Size.Width, 30);
            int defX = AbstractLayout.CalculateControlWidth(detailRow, ReportItems);

            int startX = GlobalValues.ControlMargins.Left;

            foreach (ICSharpCode.Reports.Core.BaseReportItem ir in ReportItems)
            {
                Point np = new Point(startX, GlobalValues.ControlMargins.Top);
                startX     += defX;
                ir.Location = np;
                ir.Parent   = detailRow;
                detailRow.Items.Add(ir);
            }
        }
コード例 #4
0
        public static AbstractLayout CreateGenerator(GlobalEnums.ReportLayout reportLayout,
                                                     ReportModel model,
                                                     ReportItemCollection items)
        {
            AbstractLayout layout = null;

            switch (reportLayout)
            {
            case GlobalEnums.ReportLayout.ListLayout:
                layout = new ListLayout(model, items);
                break;

            case GlobalEnums.ReportLayout.TableLayout:
                layout = new TableLayout(model, items);
                break;
            }
            return(layout);
        }
コード例 #5
0
        protected ICSharpCode.Reports.Core.BaseRowItem CreateRowWithTextColumns(ISimpleContainer parent)
        {
            ReportItemCollection colDetail = AbstractLayout.HeaderColumnsFromReportItems(ReportItems);

            ICSharpCode.Reports.Core.BaseRowItem row = new ICSharpCode.Reports.Core.BaseRowItem();
            AdjustContainer(parent, row);

            int defY      = GlobalValues.ControlMargins.Top;
            int ctrlWidth = CalculateControlWidth(row, colDetail);
            int startX    = parent.Location.X + GlobalValues.ControlMargins.Left;

            foreach (ICSharpCode.Reports.Core.BaseTextItem ir in colDetail)
            {
                Point np = new Point(startX, defY);
                startX     += ctrlWidth;
                ir.Location = np;
                ir.Parent   = row;
                row.Items.Add(ir);
            }
            return(row);
        }
コード例 #6
0
        protected static ICSharpCode.Reports.Core.BaseRowItem CreateRowWithTextColumns(BaseReportItem parent, ReportItemCollection items)
        {
            ReportItemCollection colDetail = AbstractLayout.HeaderColumnsFromReportItems(items);

            ICSharpCode.Reports.Core.BaseRowItem row = new ICSharpCode.Reports.Core.BaseRowItem();
            AdjustContainer(parent, row);

            int defY   = parent.Location.Y + GlobalValues.ControlMargins.Top;
            int defX   = row.Size.Width / colDetail.Count;
            int startX = parent.Location.X + GlobalValues.ControlMargins.Left;

            foreach (ICSharpCode.Reports.Core.BaseTextItem ir in colDetail)
            {
                Point np = new Point(startX, defY);
                startX     += defX;
                ir.Location = np;
                ir.Parent   = row;
                row.Items.Add(ir);
            }
            return(row);
        }