業務システムにおいて帳票出力を実現する際には,いわゆる帳票開発ツールを用いることが一般的になっています。
ところが,開発規模の小さなシステムでの帳票開発ツールの選定は,大規模システム以上の困難を伴います。予算上の制約や開発環境の都合などにより,選択肢が非常に限られるためです。
そのため,以下のような代替手段が取られることもありますが,開発効率や印刷品質の面でのリスクが大きく,本格的な帳票出力機能を実現することは困難な状況でした。
フィールドワークスは,中小規模システムでの導入が容易な帳票開発ツールをコンセプトとし,PDF帳票開発ツール「Field Reports」を開発するに至りました。
開発にあたっては,以下の目標を掲げました。
本質的でない機能は省き必要な機能に集中する合理的な設計を行うことで,
低コスト化を実現しました。
具体的には,PDFをテンプレートとして利用することと出力媒体をPDFに一本化することで,大幅なスリム化に成功しました。
また,関数プログラミング言語OCamlをはじめとするオープンソースを積極的に活用したことで,開発コストを抑えることができました。
中小規模システム向けの帳票ツールには,様々なプログラミング言語やプラットフォームに柔軟に対応できるポータビリティが必要であると考えました。
ポータビリティの実現にあたっては,ここでもOCamlの特長が生かされました。ネイティブコードを生成できる機能を利用し,多様なプログラミング言語から利用できる共有ライブラリ(WindowsではDLL)を作成することができたためです。
OCamlは関数型プログラミング言語の一種であり,強力な静的型システムと高速なネイティブコードを生成できるコンパイラを持つこと等を特長としています。Visual Studio 2010からはOCamlから派生したF#が標準搭載されたこともあり,近年注目を集めています。