private void AddKessanJigyouUchiwakeReport(DataDynamics.ActiveReports.ActiveReport parentReport)
        {
            models.query.JigyouKatsudouUchiwake uchiwake = new models.query.JigyouKatsudouUchiwake(Context.KaikeiDatabase);
            uchiwake.Calc(form.StartDate.Value, form.EndDate.Value, form.KaikeiKubun, hideInnerKaikeiKubunKamoku: true, omitZeroRow: form.OmitZeroRow);

            if (uchiwake.NumCols <= 5 - uchiwake.NumStaticCols)
            {
                var report = new views.reports.JigyouSyuushiUchiwake5();
                AddKessanJigyouUchiwakeReportSub(report, report.Engine, uchiwake, 0, uchiwake.NumCols - 1);
                parentReport.Document.Pages.AddRange(report.Document.Pages.GetRange(0, report.Document.Pages.Count));
            }
            else
            {
                int startCol = 0;

                while (startCol <= uchiwake.NumCols - 1)
                {
                    int endCol = Math.Min(startCol + 7 - uchiwake.NumStaticCols - 1, uchiwake.NumCols - 1);
                    var report = new views.reports.JigyouSyuushiUchiwake7();
                    AddKessanJigyouUchiwakeReportSub(report, report.Engine, uchiwake, startCol, endCol);
                    parentReport.Document.Pages.AddRange(report.Document.Pages.GetRange(0, report.Document.Pages.Count));

                    startCol = endCol + 1;
                }
            }
        }
        private void AddKessanJigyouUchiwakeReportSub(DataDynamics.ActiveReports.ActiveReport report, views.reports.JigyouSyuushiUchiwakeEngine engine, models.query.JigyouKatsudouUchiwake uchiwake, int startCol, int endCol)
        {
            engine.SetDB(Context.KaikeiDatabase);

            int rootKaikeiKubunId = Context.KaikeiDatabase.MTKaikeiKubun.RootNodeId;

            models.db.Row rootRow   = Context.KaikeiDatabase.MTKaikeiKubun.GetRowFromCache(rootKaikeiKubunId);
            string        houjinMei = rootRow.GetStr("name");
            string        title     = "拠点区分事業活動明細書";
            string        youshiki  = "別紙3(⑪)";

            if (form.KaikeiKubun == 1)
            {
                title    = "事業活動内訳表";
                youshiki = "第二号第二様式";
            }
            else if (form.KaikeiKubun == 2)
            {
                title    = "事業区分事業活動内訳表";
                youshiki = "第二号第三様式";
            }
            engine.SetHeader(form.StartDate.Value, form.EndDate.Value, houjinMei, uchiwake.GetColCaptions(startCol, endCol), title, youshiki);
            engine.SetFooter(
                uchiwake.GetSummaryRow(models.query.JigyouKatsudou.SummaryItem.ToukiKatsudouZougenSagaku, startCol, endCol),
                uchiwake.GetSummaryRow(models.query.JigyouKatsudou.SummaryItem.ZenkiKurikoshiZougenSagaku, startCol, endCol),
                uchiwake.GetSummaryRow(models.query.JigyouKatsudou.SummaryItem.ToukimatsuKurikoshiKatsudouZougenSagaku, startCol, endCol),
                uchiwake.GetSummaryRow(models.query.JigyouKatsudou.SummaryItem.KihonkinTorikuzushiGaku, startCol, endCol),
                uchiwake.GetSummaryRow(models.query.JigyouKatsudou.SummaryItem.SonotaTsumitateTorikuzushiGaku, startCol, endCol),
                uchiwake.GetSummaryRow(models.query.JigyouKatsudou.SummaryItem.SonotaTsumitateGaku, startCol, endCol),
                uchiwake.GetSummaryRow(models.query.JigyouKatsudou.SummaryItem.JikiKurikoshiKatsudouZougenSagaku, startCol, endCol)
                );

            var source = uchiwake.GetRows(startCol, endCol);

            report.DataSource = source;
            report.Run();
        }