本稿では、無料の試用ライセンスで実施できる、.NET向けExcel・PDF操作ライブラリ「DioDocs」による帳票生成ハンズオンを記事上で実施します。特に、新バージョンで追加された機能「テンプレート構文」にスポットを当てます。
はじめに
これまで何回かにわたり、グレープシティの「DioDocs」という製品を紹介してきました。
- .NET向けExcel・PDF操作ライブラリ「DioDocs」の衝撃! その魅力に迫る
- .NET向けExcel・PDF操作ライブラリ「DioDocs」を使ったアプリケーション構築~究極に軽量な帳票生成環境を手に入れる~
- DioDocsとAzure Functionsで帳票生成サービスを作ろう!
2019年12月には新しいバージョンであるV3Jがリリースされ、非常に強力な「テンプレート構文」が新たに追加されました。
そこで今回は、このテンプレート構文を利用した、誰でも実施できるハンズオンテキストとして本稿を執筆しました。誰でもExcelのテンプレートファイルから、PDF帳票を簡単に生成することができます。
試用はユーザー登録なども必要なく、NuGetからインストールするだけで無料で利用できます。さぁ! Visual Studioを開いて、記事を読みながらDioDocsを実際に体験してみましょう!
ハンズオンのゴール
データベースからデータを取得して、大量の帳票を一括生成することを可能とします。しかも、これ以上なく簡単に。
以下のようなテンプレートとなるExcelファイルを用意し
こんな簡単なコードを実行すると
using var command =
new SqlCommand(
File.ReadAllText("SelectInvoices.sql"),
connection);
using var dataTable = new DataTable();
dataTable.Load(command.ExecuteReader());
var workbook = new Workbook();
workbook.Open("Template.xlsx");
workbook.AddDataSource("Invoice", dataTable);
workbook.ProcessTemplate();
workbook.Save("Invoice.pdf", SaveFileFormat.Pdf);
以下の通り、複数ページのPDF帳票が簡単に生成できます。
DioDocsは、日々使い慣れているExcelのスキルに、ほんの少しDioDocsのエッセンスを身につけるだけで、PDF帳票が簡単に生成できるようになる魅力のライブラリです。
ハンズオン概略
対象者
本ハンズオンは以下の方を対象としています。
- 簡単なC#プログラムを書いたことがある
- 帳票生成に興味がある
- プログラムからExcelやPDFを操作すること興味がある
環境
本ハンズオンの環境は以下の通りです。
- Windows 10
- .NET Core 3.1
- Visual Studio 2019
- Docker Desktop
Dockerは帳票生成に利用するテストデータを取得するSQL Serverの実行に利用します。簡単なコマンドをいくつか叩くだけです。
誰でも利用可能な形で記載してあります。不慣れでもまったく問題ありません。
ハンズオンコンテンツ
ハンズオンの完成形はGitHub上で公開しています。
詰まった方は、適宜こちらを参考にしてください。
この記事は参考になりましたか?
- クラウド時代にマッチする、ドキュメント生成・更新APIライブラリ「DioDocs(ディオドック)」連載記事一覧
- この記事の著者
-
中村 充志(リコージャパン株式会社)(ナカムラ アツシ)
Microsoft MVP for Visual Studio and Development Technologies リコージャパン株式会社 金融事業部 金融ソリューション開発部所属。 エンタープライズ領域での業務システム開発におけるアプリケーション アーキテクト・プログラマおよび中間管理職。 業務ではWPFおよびASP.NETを用いた業務システム開発が中心。 SI案件において、テスト・保守容易性を担保した、アーキテクチャ構築を得意としている。 GitHub:https://github.com/nuitsjp Twitter:@nuits_jp 著書 『Essential Xamarin ネイティブからクロスプラットフォームまで モバイル.NETの世界』(共著) 『Extensive Xamarin ─ひろがるXamarinの世界─』(共著)
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社
この記事は参考になりましたか?
この記事をシェア
