C#.NETでOpenOfficeを使おう!
業務系アプリケーションには帳票の出力機能が必要になることが多々あります。そこで無料で利用できる「OpenOffece」を使って帳票出力ができれば何かと便利そうです。
というわけで、ここではC#.NETからOpenOffice Calcの利用方法について調べてみましょう。
まず最初の作業としてC#.NETのプロジェクトにUNO/CLI用のライブラリを参照設定します。バージョン3.0の場合は、「[OpenOfficeをインストールしたフォルダ]\program\assembly\」フォルダの下に
「cli_basetypes.dll」
「cli_cppuhelper.dll」
「cli_oootypes.dll」
「cli_ure.dll」
「cli_uretypes.dll」
という5つのファイルと、「[OpenOfficeをインストールしたフォルダ]\URE\bin\」フォルダの下に
「cli_uno.dll」
というファイルがありますので、これを適切なフォルダにコピーして参照設定に追加します。
(私はプロジェクト内に「Resources」というフォルダを作成してファイルをコピーして参照させました。)
それではこれから実際に「OpenOffice.org Calc」をC#.NETから使ってみましょう!!
1.プロセスの起動
OpenOffice.orgのアプリケーションを起動するための手順を記載しています。2.画像シェイプの挿入
OpenOffice.orgで画像ファイルを挿入するための手順を記載しています。3.ディスパッチの利用
OpenOffice.orgでディスパッチを用いてアプリケーションを操作する手順を記載しています。4.クラスサンプル
OpenOffice.orgを業務系アプリケーションの帳票出力に使用するためのクラスサンプルです。<おまけ:筆者より>
OpenOffice.orgをどうやって業務系アプリケーションに使うかというと、例えばCalcで印刷用に罫線等をレイアウトしているシート(「印刷用」というシート)と入力用に項目を縦に並べたシート(「入力用」というシート)の2枚を用意します。
「印刷用」のシートに「入力用」のシートの対象となるセルを参照設定や書式設定しておき、業務系アプリケーションからは「入力用」のシートにデータを出力するようプログラミングしておけば、かなり柔軟性の高い単票を作れます。
私自身が作ったシステムでMS-Excelで店頭チラシを作成する機能などをいくつか作っていますが、ユーザーサイドでの柔軟性が高く重宝しています。
同じようなことがOpenOffice.org Calcでできないかなぁと思って調べてみました。