帳票ベンダ・インタビュー 第15回 Biz/Browserの印刷機能を強化する 帳票生成エンジンが登場 吉田育代 2007/5/17 |
40万クライアントの導入実績を持つリッチクライアント製品Biz/Browserに、Javaプログラムのクラスファイルとして提供される帳票生成エンジンが登場した |
帳票サーバ導入は荷が重いという企業へ。 エンジンだけ入れてWebでさくっと本格帳票。 |
オープン環境の企業情報システムにおいて、帳票ニーズはいまどのような状況になっており、それに対して帳票ベンダはどのようなソリューションを提供しているのか。帳票ベンダへの直接取材でその解を探るシリーズ。第15回は、アクシスソフトを取り上げる。
同社はWebシステムのメインストリーム化の中で早くから帳票印刷の問題に着目し、業務に耐える印刷品質を実現する帳票サーバを提供してきた。今回はそれをさらに手軽に使いたいというニーズをくみ、帳票生成エンジンそのものを切り出して発売に踏み切った。コンセプトは“Webでも簡単に本格帳票”。マーケットを見極めた製品作りが特徴的だ。
中堅中小規模の企業に帳票サーバは“重い” |
企業において、業務システムのアーキテクチャはWebアプリケーションがすっかり主流になりつつあるようである。クライアントモジュールを配布せずに済み、アプリケーション管理が一元的に行えて、アップデートしやすくそのメリットをユーザーがすぐに享受できる。こうした点が評価されて、今日、クライアント/サーバ型アプリケーションは続々とWebアプリケーションへと移行されている。
ただ1点だけ、この変化により問題も生じている。それが印刷だ。Webブラウザはもともと情報を画面に表示することを目的に開発されたツールであるため、印刷機能が著しく低い。
これまで、メインフレーム時代も含めて印刷の機能はアプリケーションの一部として、画面と同等に実装されてきたため、品質が問題になることはなかった。それが、Webアプリケーションの主流化に伴ってこの部分に関してはデグレードを起こしているというわけだ。
もちろん、大多数の企業はこの状況に甘んじることなく、各自要件に合った帳票ソリューションを導入し、この問題を回避している。しかし、比較的規模の小さな企業の場合は少々事情が異なるようだ。そう語るのは、アクシスソフト プロダクト事業本部 開発部 チームエンジニア 岸本信介氏である。
アクシスソフト プロダクト事業本部 開発部 チームエンジニア 岸本信介氏 |
「中堅中小企業は、Web印刷の限界に直面し、いまだ解決できずに困っています」 岸本氏が指摘するそうした企業にとってのWeb印刷の問題は、大きく3つある。
1つ目は、市場にある帳票ツールの多くは大企業をターゲットとしたもので多機能過ぎ、中堅中小企業にとって不要な機能が多過ぎる。また多機能であるために開発の難易度が高く、導入コストが増大するというものだ。不要なものの一例として、同氏は大量のバッチ印刷機能やプリンタをネイティブ制御する機能を挙げた。
確かに、すべての企業が数万枚規模の帳票印刷や複数プリンタのコントロールを必要とするわけではない。1台しかないプリンタで個表がささっと印刷できればいいと考えているスモールオフィスにとって、それらの機能はオーバースペックといえるだろう。
2つ目は、多くの製品が帳票サーバの構築を必要とするが、そうなるとアプリケーションサーバとの間でサーバ間通信が必要になる。このやりとりは煩雑になりがちでトラブルの原因になることが多い、と岸本氏は強調する。
3つ目は帳票サーバが加わることで、システム環境のサーバ構成が複雑になるという点だ。アプリケーションサーバが数少ないときならまだいいが、アクセスが増えたり、重要性が増したためにサーバ台数を増強するとなると、帳票サーバとの関係が複雑になり、それにつれてサーバ保守コストも増大するという。
クラスファイルで提供される帳票製品 |
「帳票サーバを構築するような大掛かりな仕掛けは荷が重い。そう考える中堅中小企業は、いまでもWebブラウザの標準印刷機能を“我慢して”使っています。そうした状況を何とかしたいとアクシスソフトが開発したのが、PrintStream Coreです。コンセプトは“Web環境でも簡単に本格帳票を実現する”です」(岸本氏)。
製品のありようが面白い。一口でいえば帳票生成エンジンなのだが、これはJavaプログラムのクラスファイルとして提供される。そのため、専用の帳票サーバを構築する必要はない。すでに企業で構築されたアプリケーションサーバ上にコピーして利用するのだ。サーバ内で既存のアプリケーションから直接このエンジンを呼び出して、帳票生成を行う。これにより、上記に挙げたサーバ間通信や複雑になりがちなサーバ構成、サーバ保守といった問題を解消できるというわけだ。
またJavaプログラムであるため、これが動作する環境であればOSの種類やバージョンによらず利用することができる。
実は、PrintStream Coreは、同社が1999年から展開している帳票サーバ Biz/PrintServerのエンジン部分を切り出したものである。この製品を販売する現場で顧客ニーズに接するうちに、帳票サーバ構築を負担に感じる企業が意外に多いことを知って、こういう製品提供のスタイルを思い付いたのだという。
PrintStream Coreのシステム構成 |
標準構成として提供される製品は、この帳票生成エンジンと、FormEditorと呼ばれる専用の帳票設計ツールである。FormEditorは、エンドユーザーがノンプログラミングで帳票を作成することを想定して開発された。デモを見せてもらったのだが、操作はウィザード形式で行われた。
まず帳票のテンプレートを選び、出力する用紙サイズを選び、そこに入力するデータファイルを選ぶ。基本的にはそれだけだ。プレビュー機能を利用してデータの入力状況を確認、データフィールド幅に過不足があるようなら、マウスで調整する。Excelを操作するのと同じ感覚である。
また、高精度テキスト描画機能により、文字ピッチ、行ピッチを0.1ポイント単位で指定できるのも大きな特長だろう。読者にも経験があるのではないだろうか。設計画面ではデータがきちんとフィールドに収まっているのに、いざ印刷してみると文字がはみ出してしまう。
そのため、あらかじめこれを考慮に入れて設計したうえに、設計画面とプレビュー画面との間を行ったり来たりして確認しながら作業しなければならない……。こういうことがPrintStream Coreの場合は起こらないようだ。プリント解像度の影響を受けないので、設計画面をそのまま印刷画面と受け取ることができるというわけだ。
画面1 PrintStream Form Editorの設計画面 (クリックして拡大表示) |
ただ、あらかじめ用意されているテンプレートはそれほど多いわけではない、作成したい帳票とずれがある場合は、テンプレートにかなり手を加えていかなければならない。相当複雑な構造の帳票を作成したいときは、PrintStreamスクリプトというJavaScript互換のスクリプト言語で、フォームファイルに追加要件を書き加えていくことになる。これによりニーズにぴったり合った帳票の作成は可能だが、エンドユーザーの手には少し余ってしまいそうだ。
この製品はまた、中堅中小規模の企業を対象としたものでありながら、日本特有の業務帳票要件をきちんと満たすことを考えられている。それがよく表れているのは、けい線や背景の種類、文字修飾、外字対応機能だ。
例えば、けい線や背景では、帳票枠に丸みを付けたり、二重線を使用でき、特定の部分を網掛けにしたり、辺ごとにけい線の種類を変えたりすることができる。けた区切り線も実線、短線、点線を選べる。
文字修飾で面白いのは、かつてワープロ専用機で使用されていた、横倍角や縦倍角での文字表現を可能にしていることだ。数は少数であるものの、昔の帳票をそのまま再現したいという希望があることから盛り込んだ機能だという。
外字にもこだわっている。ユーザー定義文字をサポートしているのだが、普通外字はビットマップ形式で画像として帳票の中に埋め込む。解像度があまり高くないため、帳票を拡大していくと文字ラインがギザギザになってしまう。
そこでPrintStream Coreではベクトル形式を採用。これだと100ポイント級の拡大であっても、滑らかな文字ライン描画が可能だ。またそうした外字フォントをクライアントPCに配布してしまってはWebシステムの利点がなくなると、サーバ上において利用する方法を開発。これで同社は特許を取得したそうだ。
Biz/Browserとの高い親和性がポイント |
PrintStream Coreの実現するシステム形態を簡単に示すと図1のようになる。
図1 PrintStream Coreのシステム構成(クリックして拡大表示)出典:アクシスソフト |
入力できるファイル形式としては、CSV、プレーンテキスト、XMLファイルなどのほかに、データベースとのダイレクト接続もサポートしている。それが帳票生成エンジン上でFormEditorによりあらかじめ設計されたフォームファイルと合体すると、3種類のファイルフォーマットのいずれかで出力できる。その3種類とは、PDF形式、アクシスソフト独自のPSS形式、二次元図形表示のためのSVG形式である。
PDFでは、PDFデータを直接生成するネイティブエンジンを開発しており、高速な帳票生成が可能だ。ファイル暗号化、パスワード設定、印刷・データ変更・コピーなどの権限管理など、PDFの実現しているセキュリティ機能にも対応している。
同社独自のPSS形式を選択するメリットは、高速なストリーミング印刷が利用できる点だ。印刷イメージを分割し、圧縮して生成済みページから随時送信することができるので、クライアントで56kbps程度の低速回線を利用していても、ストレスのない印刷出力が可能だという。しかし、それではPSS形式でファイルを見られるビューアを、あらかじめクライアント環境に配布しておく必要があるから、Webシステムの利点が損なわれると思われるかもしれない。
ところが、アクシスソフトには強力な援軍を持っているのだ。それが国内ですでに40万クライアントも導入実績を持つリッチクライアント製品Biz/Browserだ。これがすでにインストールされている環境であれば、PSS形式のファイルは難なく読め、Biz/Browserの画面キャッシュ機能なども活用することができるというわけだ。
いや、Biz/Browserを導入する予定はない、という企業であっても、PrintStream for InternetExplorerというActiveXモジュールのオプション製品を利用すれば、IEでPSS形式のファイルを扱うことが可能だ。
アクシスソフト プロダクト事業本部 販売推進部 部長 西村修氏は、PrintStream Coreの市場におけるポジショニングを次のように語る。
「市場にある帳票関連ツール製品は、どちらかというと導入負荷が掛かりがちです。さくっと入れてすぐ使いたいというニーズに対応できていません。幸い当社は、Biz/Browserというすでに多くの企業に受け入れられている製品を持っているので、これを足掛かりに本格帳票がWebでも簡単に実現できることを訴えていきたい。こういう部品での提供であるため、システムインテグレータへのOEM提供も積極的に進めていきたいと考えています」
- GASで棒、円、折れ線など各種グラフを作成、変更、削除するための基本 (2017/7/12)
資料を作る際に、「グラフ」は必要不可欠な存在だ。今回は、「グラフの新規作成」「グラフの変更」「グラフの削除」について解説する - GET/POSTでフォームから送信された値をPHPで受け取る「定義済みの変数」【更新】 (2017/7/10)
HTMLのフォーム機能についておさらいし、get/postメソッドなどの内容を連想配列で格納するPHPの「定義済みの変数」の中身や、フォーム送信値の取り扱いにおける注意点について解説します【PHP 7.1含め2017年の情報に合うように更新】 - PHPのfor文&ループ脱出のbreak/スキップのcontinue【更新】 (2017/6/26)
素数判定のロジックからbreak文やcontinue文の利点と使い方を解説。for文を使ったループ処理の基本とwhile文との違い、無限ループなども併せて紹介します【PHP 7.1含め2017年の情報に合うように更新】 - Spreadsheetデータの選択、削除、挿入、コピー、移動、ソート (2017/6/12)
Spreadsheetデータの選択、挿入、削除、コピー、移動、ソートに使うメソッドの使い方などを解説する
|
|