VB-Report 10.0 for .NET - ASP.NET MVC デモ

合計請求書

合計請求書の作成例です。複雑な可変帳票の作成に向いている Page.Repeat 機能を使用して実装しています。


サンプルコード

  • VB.NET
  • C#
  • Public Function CreateInvoice() As ReportData
        ' 帳票作成処理(デザインファイル使用)
        CellReport1.FileName = Path.Combine(basePath, "PageRepeatSample.xlsx")
        ' 帳票出力時にセルの計算式を再計算
        CellReport1.ApplyFormula = True
        CellReport1.Report.Start(ReportMode.Speed)
        CellReport1.Report.File()
        ' デザインファイル内の「合計請求書」シートを帳票レイアウトとして指定し、帳票ページを作成
        CellReport1.Page.Start("合計請求書", "1-99999")
        ' シート内でレイアウトとしてコピーする行範囲を Page.Repeat で指定
        CellReport1.Page.Repeat(1, 16)
        CellReport1.Cell("B4").Value = "〒910-XXXX"
        CellReport1.Cell("B5").Value = "福井県○○市○○ X-X"
        CellReport1.Cell("B6").Value = "株式会社○○○○"
        CellReport1.Cell("C9").Value = "A-00001-B"
        CellReport1.Cell("F3").Value = DateTime.Now
        CellReport1.Cell("K3").Value = 2511
        CellReport1.Cell("B14").Value = 500000
        CellReport1.Cell("C14").Value = 1000000
        CellReport1.Cell("F14").Value = 1200000
        CellReport1.Cell("**BIKO").Value = "お支払いは 20 日までにお願いします。"
        ' Page.Repeat でコピーした行範囲の編集を終了
        CellReport1.Page.Next(True)
        ' Page.Repeat - Next は Page.Start - End 内で繰り返す事が可能
        CellReport1.Page.Repeat(1, 16)
        CellReport1.Cell("B4").Value = "〒910-XXXX"
        CellReport1.Cell("B5").Value = "福井県□□市□□ X丁目XX-X"
        CellReport1.Cell("B6").Value = "有限会社□□□□"
        CellReport1.Cell("C9").Value = "A-00633-C"
        CellReport1.Cell("F3").Value = DateTime.Now
        CellReport1.Cell("K3").Value = 3261
        CellReport1.Cell("B14").Value = 320000
        CellReport1.Cell("C14").Value = 680000
        CellReport1.Cell("F14").Value = 400000
        CellReport1.Cell("**BIKO").Value = "お支払いは 20 日までにお願いします。"
        CellReport1.Page.Next(True)
        ' ページ終了処理
        CellReport1.Page.End()
        ' 帳票終了処理
        CellReport1.Report.End()
        ' 作成した帳票を SVG 形式で取得
        Dim document As String = CellReport1.Report.GetSvgReport(SvgSaveType.IncludeExcelPdf)

        Dim reportData As ReportData = New ReportData()
        reportData.Document = document
        Return reportData
    End Function
  • public ReportData CreateInvoice()
    {
        // 帳票作成処理(デザインファイル使用)
        cellReport1.FileName = Path.Combine(basePath, "PageRepeatSample.xlsx");
        // 帳票出力時にセルの計算式を再計算
        cellReport1.ApplyFormula = true;
        cellReport1.Report.Start(ReportMode.Speed);
        cellReport1.Report.File();
        // デザインファイル内の「合計請求書」シートを帳票レイアウトとして指定し、帳票ページを作成
        cellReport1.Page.Start("合計請求書", "1-99999");
        // シート内でレイアウトとしてコピーする行範囲を Page.Repeat で指定
        cellReport1.Page.Repeat(1, 16);
        cellReport1.Cell("B4").Value = "〒910-XXXX";
        cellReport1.Cell("B5").Value = "福井県○○市○○ X-X";
        cellReport1.Cell("B6").Value = "株式会社○○○○";
        cellReport1.Cell("C9").Value = "A-00001-B";
        cellReport1.Cell("F3").Value = DateTime.Now;
        cellReport1.Cell("K3").Value = 2511;
        cellReport1.Cell("B14").Value = 500000;
        cellReport1.Cell("C14").Value = 1000000;
        cellReport1.Cell("F14").Value = 1200000;
        cellReport1.Cell("**BIKO").Value = "お支払いは 20 日までにお願いします。";
        // Page.Repeat でコピーした行範囲の編集を終了
        cellReport1.Page.Next(true);
        // Page.Repeat - Next は Page.Start - End 内で繰り返す事が可能
        cellReport1.Page.Repeat(1, 16);
        cellReport1.Cell("B4").Value = "〒910-XXXX";
        cellReport1.Cell("B5").Value = "福井県□□市□□ X丁目XX-X";
        cellReport1.Cell("B6").Value = "有限会社□□□□";
        cellReport1.Cell("C9").Value = "A-00633-C";
        cellReport1.Cell("F3").Value = DateTime.Now;
        cellReport1.Cell("K3").Value = 3261;
        cellReport1.Cell("B14").Value = 320000;
        cellReport1.Cell("C14").Value = 680000;
        cellReport1.Cell("F14").Value = 400000;
        cellReport1.Cell("**BIKO").Value = "お支払いは 20 日までにお願いします。";
        cellReport1.Page.Next(true);
        // ページ終了処理
        cellReport1.Page.End();
        // 帳票終了処理
        cellReport1.Report.End();
        // 作成した帳票を SVG 形式で取得
        string document = cellReport1.Report.GetSvgReport(SvgSaveType.IncludeExcelPdf);

        ReportData reportData = new ReportData();
        reportData.Document = document;
        return reportData;
    }