SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

クラウド時代にマッチする、ドキュメント生成・更新APIライブラリ「DioDocs(ディオドック)」(PR)

【DioDocs帳票生成ハンズオン】強力な新機能「テンプレート構文」を使ってみる

  • このエントリーをはてなブックマークに追加

 本稿では、無料の試用ライセンスで実施できる、.NET向けExcel・PDF操作ライブラリ「DioDocs」による帳票生成ハンズオンを記事上で実施します。特に、新バージョンで追加された機能「テンプレート構文」にスポットを当てます。

  • このエントリーをはてなブックマークに追加

はじめに

 これまで何回かにわたり、グレープシティの「DioDocs」という製品を紹介してきました。

 2019年12月には新しいバージョンであるV3Jがリリースされ、非常に強力な「テンプレート構文」が新たに追加されました。

 そこで今回は、このテンプレート構文を利用した、誰でも実施できるハンズオンテキストとして本稿を執筆しました。誰でもExcelのテンプレートファイルから、PDF帳票を簡単に生成することができます。

 試用はユーザー登録なども必要なく、NuGetからインストールするだけで無料で利用できます。さぁ! Visual Studioを開いて、記事を読みながらDioDocsを実際に体験してみましょう!

ハンズオンのゴール

 データベースからデータを取得して、大量の帳票を一括生成することを可能とします。しかも、これ以上なく簡単に。

 以下のようなテンプレートとなるExcelファイルを用意し

テンプレートとなるExcelファイル
テンプレートとなる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帳票が簡単に生成できます。

生成された複数ページのPDF帳票
生成された複数ページのPDF帳票

 DioDocsは、日々使い慣れているExcelのスキルに、ほんの少しDioDocsのエッセンスを身につけるだけで、PDF帳票が簡単に生成できるようになる魅力のライブラリです。

ハンズオン概略

対象者

 本ハンズオンは以下の方を対象としています。

  • 簡単なC#プログラムを書いたことがある
  • 帳票生成に興味がある
  • プログラムからExcelやPDFを操作すること興味がある

環境

 本ハンズオンの環境は以下の通りです。

  • Windows 10
  • .NET Core 3.1
  • Visual Studio 2019
  • Docker Desktop

 Dockerは帳票生成に利用するテストデータを取得するSQL Serverの実行に利用します。簡単なコマンドをいくつか叩くだけです。

 誰でも利用可能な形で記載してあります。不慣れでもまったく問題ありません。

ハンズオンコンテンツ

 ハンズオンの完成形はGitHub上で公開しています。

 詰まった方は、適宜こちらを参考にしてください。

次のページ
Hello, DioDocs!

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
クラウド時代にマッチする、ドキュメント生成・更新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の世界─』(共著)

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/12255 2020/05/28 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング