(57)【要約】【課題】コンテンツデータをテンプレートデータに配置して出力する際に、各レコードの注釈データをまとめて出力することで、出力物のアピール力を向上させる仕組みを提供することを目的とする。【解決手段】データベースの複数のレコード分のコンテンツデータをテンプレートデータに配置して出力する帳票出力制御装置であって、コンテンツデータが配置されるフィールド領域が定義されているテンプレートデータを記憶するテンプレート記憶手段と、テンプレートデータに配置される注釈情報を置き換えるための置換情報を設定する注釈置換設定手段と、複数のレコード分のコンテンツデータを、テンプレートデータに定義されているフィールド領域に配置する際に、各レコードの注釈情報を注釈置換設定により設定されている置換情報に置き換える置換手段と、を有することによって前記課題を解決する。【選択図】図３
2008003944.tif 000002
【特許請求の範囲】
【請求項１】
データベースの複数のレコード分のコンテンツデータをテンプレートデータに配置して出力する帳票出力制御装置であって、
コンテンツデータが配置されるフィールド領域が定義されているテンプレートデータを記憶するテンプレート記憶手段と、
前記テンプレートデータに配置される注釈情報を置き換えるための置換情報を設定する注釈置換設定手段と、
前記複数のレコード分のコンテンツデータを、前記テンプレートデータに定義されているフィールド領域に配置する際に、各レコードの注釈情報を前記注釈置換設定により設定されている置換情報に置き換える置換手段と、
を有することを特徴とする帳票出力制御装置。
【請求項２】
前記テンプレートデータは、置き換えられた注釈情報の出力方法が更に定義されており、
前記置換手段は、前記定義されている出力方法に従って、置き換えられた注釈情報の出力を行うことを特徴とする請求項１に記載の帳票出力制御装置。
【請求項３】
前記置換手段は、前記注釈情報が配置されたページを前記コンテンツデータが配置されるテンプレートデータのページ群に挿入して、前記注釈情報をまとめることを特徴とする請求項２に記載の帳票出力制御装置。
【請求項４】
前記置換手段は、前記注釈情報を、前記コンテンツデータが配置されるテンプレートデータのページ中に定義されている注釈出力フィールド領域にまとめることを特徴とする請求項２に記載の帳票出力制御装置。
【請求項５】
データベースの複数のレコード分のコンテンツデータをテンプレートデータに配置して出力する帳票出力制御装置における帳票出力制御方法であって、
テンプレート記憶手段に記憶されている、コンテンツデータが配置されるフィールド領域が定義されているテンプレートデータに、配置される注釈情報を置き換えるための置換情報を設定する注釈置換設定ステップと、
前記複数のレコード分のコンテンツデータを、前記テンプレートデータに定義されているフィールド領域に配置する際に、各レコードの注釈情報を前記注釈置換設定により設定されている置換情報に置き換える置換ステップと、
を有することを特徴とする帳票出力制御方法。
【請求項６】
前記テンプレートデータは、置き換えられた注釈情報の出力方法が更に定義されており、
前記置換ステップは、前記定義されている出力方法に従って、置き換えられた注釈情報の出力を行うことを特徴とする請求項５に記載の帳票出力制御方法。
【請求項７】
前記置換ステップは、前記注釈情報が配置されたページを前記コンテンツデータが配置されるテンプレートデータのページ群に挿入して、前記注釈情報をまとめることを特徴とする請求項６に記載の帳票出力制御方法。
【請求項８】
前記置換ステップは、前記注釈情報を、前記コンテンツデータが配置されるテンプレートデータのページ中に定義されている注釈出力フィールド領域にまとめることを特徴とする請求項６に記載の帳票出力制御方法。
【請求項９】
コンピュータに、
テンプレート記憶手段に記憶されている、コンテンツデータが配置されるフィールド領域が定義されているテンプレートデータに、配置される注釈情報を置き換えるための置換情報を設定する注釈置換設定ステップと、
前記複数のレコード分のコンテンツデータを、前記テンプレートデータに定義されているフィールド領域に配置する際に、各レコードの注釈情報を前記注釈置換設定により設定されている置換情報に置き換える置換ステップと、
を実行させることを特徴とするプログラム。
【請求項１０】
前記テンプレートデータは、置き換えられた注釈情報の出力方法が更に定義されており、
前記置換ステップは、前記定義されている出力方法に従って、置き換えられた注釈情報の出力を行うことを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記置換ステップは、前記注釈情報が配置されたページを前記コンテンツデータが配置されるテンプレートデータのページ群に挿入して、前記注釈情報をまとめることを特徴とする請求項１０に記載のプログラム。
【請求項１２】
前記置換ステップは、前記注釈情報を、前記コンテンツデータが配置されるテンプレートデータのページ中に定義されている注釈出力フィールド領域にまとめることを特徴とする請求項１０に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票出力制御装置及び帳票出力制御方法及びコンピュータ読み取り可能なプログラムに関する。
【背景技術】
【０００２】
文書の電子化、ネットワークの普及や記憶装置の大容量化などが進み、ドキュメントはサーバ上に一括管理され、複数のユーザから参照されるようになった。そして、情報の共有と一元化が進み、サーバ等で管理された情報を様々な状況に応じて加工して利用する、所謂ワンソース・マルチユースという考えが普及した。
【０００３】
そのような背景の中、共通で管理された複数の異なるデータを、各々、共通のテンプレートに挿入することで、自動的に帳票やカタログ或いはプレゼンテーションデータ等を作成する帳票出力機能が考えられた（例えば、特許文献１参照）。
【０００４】
【特許文献１】特開２００６−２４０２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら従来の帳票出力機能では、用意されたテンプレートに対して機械的にデータを当てはめるため、冗長な出力結果が作成されてしまうことが多い。例えば、一般的な商品カタログでは、商品そのものをアピールするために、重要性の低い注釈や付記情報は、注釈記号を残して一括表示される。しかし、帳票出力機能でカタログを作成すると、注釈や付記情報が商品に紐付いた情報であるため商品ごとに注釈や付記情報が出力され、重要性の低い情報が不要に繰り返されてしまう。
【０００６】
そのため、自動出力された出力結果に対して、手動で修正するなどの作業を行う必要があり、可変データ印刷（バリアブルプリントと呼ぶ）の利点をいかせないという問題がある。
【０００７】
本発明は前記の問題点に鑑みなされたもので、コンテンツデータをテンプレートデータに配置して出力する際に、各レコードの注釈データをまとめて出力することで、出力物のアピール力を向上させる仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、データベースの複数のレコード分のコンテンツデータをテンプレートデータに配置して出力する帳票出力制御装置であって、コンテンツデータが配置されるフィールド領域が定義されているテンプレートデータを記憶するテンプレート記憶手段と、前記テンプレートデータに配置される注釈情報を置き換えるための置換情報を設定する注釈置換設定手段と、前記複数のレコード分のコンテンツデータを、前記テンプレートデータに定義されているフィールド領域に配置する際に、各レコードの注釈情報を前記注釈置換設定により設定されている置換情報に置き換える置換手段と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、コンテンツデータをテンプレートデータに配置して出力する際に、各レコードの注釈データをまとめて出力することで、出力物のアピール力を向上させることができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施形態について図面に基づいて説明する。
【００１１】
図１は、ネットワークシステムの構成例を示す概略図である。
図１において、ネットワークシステムは、ＬＡＮ１０５、１０６、インターネット１０４を備えている。また、ネットワークシステムは、ＬＡＮ１０５に接続されたクライアントパーソナルコンピュータ１０１、１０２と、ＬＡＮ１０６に接続されたＨＴＴＰサーバ１０７と、Ｗｅｂアプリケーションサーバ１０８と、を含む。また、ネットワークシステムは、インターネット１０４に直接接続されたクライアントＰＣ１０３を含む。ここで、クライアントパーソナルコンピュータのことを、以下、クライアントＰＣと略称する。また、ＨＴＴＰとは、ハイパーテキストトランスファープロトコル（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）の略である。
【００１２】
クライアントＰＣ１０１、１０２、１０３は、Ｗｅｂアプリケーションサーバ１０８上に新規データファイルを登録したり、データファイルの検索や参照を行ったりする際に使用される。データファイルとは、可変データ印刷（バリアブルプリント）における可変データであるコンテンツデータに相当する。
【００１３】
ＨＴＴＰサーバ１０７は、ＬＡＮ１０５、インターネット１０４、ＬＡＮ１０６を経由してクライアントＰＣ１０１、１０２、１０３からＨＴＴＰプロトコルで送信されてきたリクエストを受け取るサーバである。Ｗｅｂアプリケーションサーバ１０８は、ＨＴＴＰサーバ１０７から転送されたクライアントＰＣからのリクエストを受け取ると、リクエストを基に処理を実行し、その処理結果をクライアントＰＣ１０１、１０２、１０３へ返信する。
【００１４】
データベース１０９は、Ｗｅｂアプリケーションサーバ１０８に接続されており、Ｗｅｂアプリケーションサーバ１０８が、クライアントＰＣ等から受信した電子データを保存する。
【００１５】
前記のＨＴＴＰサーバ１０７、Ｗｅｂアプリケーションサーバ１０８、データベース１０９を有機的に組み合わせることにより、Ｗｅｂデータベースシステムとして機能させることができる。なお、図１のシステムは、この構成の組合せに限るものではなく、クライアントＰＣ１０１とＷｅｂアプリケーションサーバ１０８とがＬＡＮ１０６を介して接続されているシステムとして構成されていてもよい。
【００１６】
図２は、操作履歴機能を管理する装置としてのＷＥＢアプリケーションサーバ１０８の構成例を示すブロック図である。図２において、ＷＥＢアプリケーションサーバ１０８は、システムバス１、ＣＰＵ２、プログラムメモリ３、外部記憶制御部４、入力制御部１０、キーボード１１、ポインティングデバイス１２、ビデオイメージメモリ７、表示出力制御部８を含む。また、ＷＥＢアプリケーションサーバ１０８は、ＣＲＴディスプレイを含む。ここで、プログラムメモリのことを、以下、ＰＭＥＭと略称する。また、ビデオイメージメモリのことを、以下、ＶＲＡＭと略称する。また、ＣＲＴディスプレイのことを、以下、ＣＲＴと略称する。
【００１７】
前記各構成要素はシステムバス１に接続されている。ＣＰＵ２は、システムバス１を介して各構成要素を制御する中央処理装置であり、ＲＯＭ（不図示）に格納された制御プログラムに基づき、処理を実行する。ＰＭＥＭ３は、条件分岐処理を実行するための制御プログラムを適宜ＲＯＭから選択して読み込むためのメモリである。また、キーボード１１から入力されたデータは、テキストメモリでもあるＰＭＥＭ３にコード情報として格納される。
【００１８】
外部記憶制御部４は、外部記憶装置（本実施形態ではハードディスクとフロッピー（登録商標）ディスク）に対するデータの書き込み／読み出しを制御する。ハードディスク（以下、ＨＤと略称する）５は、データファイル用の外部記憶装置である。フロッピー（登録商標）ディスク（以下、ＦＤと略称する）６は、データファイル用の外部記憶装置である。
【００１９】
入力制御部１０には、キーボード１１、ポインティングデバイス１２等の入力装置が接続される。操作者は、キーボード１１を操作することによりシステムに対する動作指令等を行う。ポインティングデバイス１２は、操作者がＣＲＴ９上で画像情報の加工を指示するためのものであり、本実施形態ではマウスを使用している（以下マウス１２と称する）。
【００２０】
操作者は、マウス１２により、ＣＲＴ９上のカーソルをＸ方向／Ｙ方向へ任意に移動させ、コマンドメニュー上のコマンドアイコンを選択して処理の指示を行う他、編集対象の指示や描画位置の指示等も行う。
【００２１】
ＶＲＡＭ７は、ＣＲＴ９に表示する文字データや図形データがビットマップデータとして展開されるメモリである。表示出力制御部８は、ＣＲＴ９に対する表示を制御する。ＣＲＴ９は、後述の図１１に示す画面等を表示する表示部である。なお、表示方式はＣＲＴに限定されず、液晶等でもよい。
【００２２】
なお、本実施形態では、プロセス定義モジュールを前記ＲＯＭ（不図示）に格納する構成としているが、ＨＤ５やＦＤ６に格納する構成としても、或いはネットワーク上に接続されている他の装置上に格納する構成としてもよい。また、ＷＥＢアプリケーションサーバ１０８は、プロセス定義モジュールを、記憶媒体やネットワークを介して他のシステムや他の装置に供給することができる。
【００２３】
図３は、本発明の帳票出力制御装置に好適なＷｅｂアプリケーションサーバ１０８のモジュールの構成例を示すブロック図である。
【００２４】
図３において、クライアントＰＣ１０１、１０２、１０３は、それぞれの装置内で動作するＷｅｂブラウザを用いて、Ｗｅｂアプリケーションサーバ１０８にアクセスする。Ｗｅｂアプリケーションサーバ１０８は、リクエスト処理モジュール３０１、編集モジュール３０２、データベース管理モジュール（データベース管理）３０３、データベース１０９、を備えている。
【００２５】
ＨＴＴＰサーバ１０７は、クライアントＰＣ１０１、１０２、１０６からのリクエストをＷｅｂアプリケーションサーバ１０８に転送する。
【００２６】
Ｗｅｂアプリケーションサーバ１０８において、リクエスト処理モジュール３０１は、ＨＴＴＰサーバ１０７から転送されたクライアントＰＣからのリクエストを処理するモジュールである。リクエスト処理モジュール３０７は、ユーザ認証を行う機能の他、編集モジュール３０２の各モジュールにアクセスするためのリクエスト処理機能を有している。編集モジュール３０２は、ユーザ管理、グループ管理、データ管理３０２−１、ファイル管理３０２−２、データ検索処理、履歴管理、各種ユーティリティ、帳票出力処理３０２−３、帳票管理３０２−４、帳票作成部３０２−５の各機能モジュールを有している。
【００２７】
データ管理３０２−１は、ファイル管理３０２−２と連携し、データと、ファイルと、を結びつけている。帳票出力処理３０２−３は、帳票管理３０２−４で管理する帳票にデータ及びファイルを当てはめて出力する。また、帳票作成部３０２−５は、図５で後述するテンプレートデータ（帳票）を作成する処理部であり、テンプレートデータ中に各データフィールドを定義したり、各データフィールドの配置属性を定義したりする機能を有している。そして、この帳票作成部３２０−５は更に、後述する注釈出力例の設定と、この注釈出力例により注釈情報が置換されたことにより新規に追加されるページの挿入位置をテンプレートデータに定義する機能を備えている。
【００２８】
データベース管理モジュール３０３は、編集モジュール３０２と、データベース１０９と、の間のアクセスを管理する。リクエスト処理モジュール３０１、編集モジュール３０２、データベース管理モジュール３０３は、クライアントＰＣからのリクエストに応じてＷｅｂアプリケーションサーバ１０８のメモリ上にロードされ、該当する処理を実行する。
【００２９】
次に、本発明の帳票出力制御装置としてのＷｅｂアプリケーションサーバ１０８の帳票出力処理３０２−３が行う処理に係る、帳票出力について、図４、図５、図６を用いて説明する。
図４は、複数の行（レコード行と呼ぶ）分の出力すべきコンテンツデータを格納しているデータベース１０９のテーブルを示す図（その１）である。図４に示されるように、テーブルには、コンテンツ項目が列として管理されている。図４の例では、列として、名前列４０１、価格列４０２、イメージファイルへのファイルパス（イメージ）列４０３、１つ目の注釈（注釈１）列４０４、２つ目の注釈（注釈２）列４０５、が含まれている。注釈１列４０４、注釈２列４０５には、注釈をマージ（置換）する属性が設定されている。レコード行４１１、４１２、４１３は、データベース（テーブル）のレコード行を示す。レコード行４１１、４１２、４１３は、ユーザがデータ検索／抽出操作、選択操作によって、出力対象として指示したレコード行であることを意味する。
なお、図４では、説明の便宜上、出力する情報のみを１テーブルとして記載しているが、出力する情報が別のデータベースやテーブルに存在していたり、出力しない情報がテーブルに含まれていたりしてもよい。
【００３０】
図５は、図４で示す各レコードのコンテンツデータをバリアブルデータ出力する際に、合成されるテンプレートデータを示す図である。このテンプレートデータは、帳票管理部３０２−４（テンプレート記憶手段）に記憶されているものとする。表紙テンプレート５０１は、表紙のテンプレートである。裏表紙テンプレート５０３は、裏表紙のテンプレートである。データ出力テンプレート５０２は、コンテンツデータが流し込まれる出力テンプレートであり、各コンテンツデータが配置されるデータフィールド領域を有しており、このデータ出力テンプレートは、出力するレコード数分、繰り返し用いられる。データフィールド領域は、イメージフィールド、テキストフィールド及び注釈フィールドという３つの属性のいずれかの属性が設定されている。イメージフィールド５１１は、イメージデータが配置されるフィールド領域であり、図４のファイルパス列４０３の各データに紐付けられたイメージを出力するための領域としてデータベースと関連付けられている。テキストフィールドは、文字列が配置されるフィールドであり、テキストフィールドである名前フィールド５１２は、図４の名前列４０１の各データを出力するための領域としてデータベースと関連付けられている。また、テキストフィールドである価格フィールド５１３は、図４の価格列４０２の各データを出力するための領域としてデータベースと関連付けられている。また、注釈フィールドである注釈１フィールド５１４は、図４の注釈１列４０４の各データを出力するための領域としてデータベースと関連付けられている。また、注釈フィールドである注釈２フィールド５１５は、図４の注釈２列４０５の各データを出力するための領域としてデータベースと関連付けられている。
【００３１】
図６は、Ｗｅｂアプリケーションサーバ１０８の帳票出力処理部３０２−３が、図４のレコード４１１、４１２、４１３の３レコード分のコンテンツデータを、図５のテンプレートに基づいて合成処理して、バリアブルデータ出力した例を示す図である。表紙６０１には、図５の表紙テンプレート５０１が出力される。裏表紙６０５には、図５の裏表紙テンプレート５０３が出力される。データ出力ページ６０２、６０３、６０４には、図５のデータ出力テンプレート５０２に、図４のレコード行４１１、４１２、４１３がそれぞれ挿入され、出力される。
【００３２】
出力ページ６０４上の、イメージ６１１は、イメージフィールド５１１に挿入された、ファイルパス列４０３、レコード行４１３のデータに紐付けられたイメージである。データ６１２は、名前フィールド５１２に挿入された、名前列４０１、レコード行４１３のデータである。データ６１３は、価格フィールド５１３に挿入された、価格列４０２、レコード行４１３のデータである。データ６１４は、注釈１フィールド５１４に挿入された、注釈１列４０４、レコード行４１３のデータである。データ６１５は、注釈２フィールド５１５に挿入された、注釈２列４０５、レコード行４１３のデータである。出力ページ６０２、６０３についても６０４と同様に、ページ６０２にはレコード行４１１、ページ６０３にはレコード行４１２のデータが挿入される。
なお、図５のテンプレートデータの各データフィールドには、配置すべきコンテンツデータに対する配置属性が定義されているものとする。例えば、イメージフィールドには、イメージデータの縦横比を維持したまま、フィールド領域内に収まるようにイメージデータを自動的に拡縮することが定義されている。また、各テキストフィールドには、コンテンツデータである配置すべきテキストデータのフォントサイズ、文字ピッチ、フォントタイプ、文字色が定義されている。そして、コンテンツデータをフィールド領域に配置する場合に、各フィールド領域に定義されている配置属性に従って、コンテンツデータを変換処理して配置することにより、出力ページ６０４が生成される。ここで、各フィール領域にコンテンツデータを配置するときの配置属性を定義すること自体は既知の技術であるため、より具体的な説明は省略する。
【００３３】
次に、帳票出力処理３０２−３等が行う処理に係る、注釈のマージのパターン（マージパターン１）について、図７、図８、図９、図１０を用いて説明する。マージパターンとは、注釈データのように、与えられたフィールド領域にすべてのレコードで繰り返し配置すべきでない場合に、どのように注釈データを出力するかを定義したものであり、このマージパターンを注釈出力方法（注釈出力タイプ）とも呼ぶ。また、マージパターンに従って、注釈データを変換して出力することを、本実施例では、マージまたは置換と呼ぶことにする。
図７は、図６で示す通常の帳票出力に対して、注釈をマージして出力した場合の例を示す図である。表紙７０１、裏表紙７０６は、それぞれ図６の表紙６０１、裏表紙６０５、と同じである。データ出力ページ７０２、７０３、７０４は、マージ対象である注釈１及び注釈２のフィールドを除いて、図６のデータ出力ページ６０２、６０３、６０４と同じである。ページ７０５は、注釈等の付記情報をまとめて出力するためのページである。ページ７０５は、図７では裏表紙の手前に挿入されているが、挿入位置は、前述したように帳票作成部３０２−５によりテンプレートデータに定義されている。
【００３４】
情報７１１は、注釈１、注釈２の情報を注釈記号に置き換えて表示したものである。また、注釈１及び注釈２は、マージ対象で、注釈１は、注釈２に関連付けられており、注釈１の注釈記号と、注釈２の注釈記号とが、注釈２フィールドに並べて出力される。
【００３５】
情報７１２は、注釈１の情報で、注釈１の注釈記号と、注釈１の内容と、が記載されている。情報７１３は、注釈２の情報で、注釈２の注釈記号と、注釈２の内容と、が記載されている。
【００３６】
図８及び図９は、帳票作成部３０２−５により提供される設定ダイアログであり、注釈記号の書式設定をユーザに入力させるための設定画面の一例を示す図である。コンテンツデータの注釈データを置き換えるための注釈記号には、文字をベースとしたものと、アイコンをベースとしたものと、２種類がある。図８は、文字をベースとした注釈記号の設定方法を示す図である。一方、図９は、アイコンをベースとした注釈記号の設定方法を示す図である。
【００３７】
図８のリストボックス８０１は、注釈記号のフォーマットを選択するリストボックスである。リストボックス８０２は、番号の書式を表すリストボックスである。エディットボックス８０３は、番号の桁数を表すエディットボックスである。エディットボックス８０４は、開始番号を表すエディットボックスである。出力例８０５は、操作者がリストボックス８０１、リストボックス８０２、エディットボックス８０３、エディットボックス８０４の設定を行った結果、作成される注釈記号のイメージである。つまり、出力例８０５は、注釈データをどのように置き換えられるかを示している。文字ベースの注釈記号は、マージ対象となる注釈情報に対して、順に番号が割り当てられる。
【００３８】
文字ベースの注釈記号では、全ての注釈に対してフォーマットを指定するのに対し、アイコンベースの注釈記号では、各注釈に対してアイコンを指定する。図９のリストボックス９０１は、注釈記号を割り当てる注釈情報を選択するリストボックスである。ここで選択項目として表示される内容は、図４のデータベーステーブルの注釈１、注釈２に対応している。また、注釈１列に複数種類のコメントが存在する場合、Ｗｅｂアプリケーションサーバ１０８は、種類分けをした上で、種類の区別をハイフンと、数字と、で表現する。
【００３９】
エディットボックス９０２は、リストボックス９０１で選択された注釈項目の内容を表示するエディットボックスである。イメージ９０３は、選択されたアイコンのイメージである。９０４は、アイコンの選択ボタンである。操作者は、選択ボタン９０４を押し、アイコンのイメージファイルを選択する。選択を行うと、選択したアイコンのイメージ９０３が表示される。９０５は、ＯＫボタンである。操作者が、ＯＫボタン９０５を押すと、注釈と、注釈記号アイコンと、の関連付けが確定される。９０６は、キャンセルボタンである。操作者が、キャンセルボタン９０６を押すと、注釈と、注釈記号アイコンと、の関連付けは設定されない。
このように、注釈データが置き換えられる置換情報は、出力例８０５のようにレコード毎に異なる関数で定義されることもでき、また、出力例９０３のように、注釈項目９０１毎に固定の情報（画像や図形）で定義されることもできる。
【００４０】
図１０は、注釈のマージパターン１に係る処理を含む帳票出力処理を行う際の編集モジュール３０２の各処理部における制御手順を示すフローチャートである。ユーザがクライアントＰＣ１０１（１０２、１０３）から、データ検索機能を用いて出力したいデータを選択し、テンプレートを指定して、Ｗｅｂアプリケーションサーバ１０８に出力要求を行う。Ｗｅｂアプリケーションサーバ１０８では、リクエスト処理モジュール３０１が出力要求を受信する。そして、リクエスト処理モジュール３０１が、データ管理モジュール３０２−１からデータを取得し、帳票管理モジュール３０２−４からテンプレートを取得して、帳票出力処理モジュール３０２−３に出力要求を出す。
【００４１】
帳票出力処理モジュール３０２−３は、まず、表紙テンプレート５０１を用いて表紙を作成する（ステップＳ１００１）。次に帳票出力処理モジュール３０２−３は、データ出力テンプレート５０２を用いて、データをテンプレートに挿入してページを作成して行く（ステップＳ１００２）。ループ処理の中で、データが複数存在する場合、帳票出力処理モジュール３０２−３は、データ出力テンプレート５０２をデータ数だけコピーする。各データにおいて、帳票出力処理モジュール３０２−３は、項目の数だけ挿入処理を行う（ステップＳ１００３）。
【００４２】
例えば、図４の例では、名前、価格、イメージ、注釈１、注釈２、が項目である。データ挿入時には、帳票出力処理モジュール３０２−３は、まず、マージ対象属性を参照し、マージ項目か否かを判定する（ステップＳ１００４）。ここで、マージ項目でなければ（ステップＳ１００４においてＮｏ）、帳票出力処理モジュール３０２−３は、そのままテンプレートへの出力処理を行う（ステップＳ１００５）。マージ項目の場合（ステップＳ１００４においてＹｅｓ）、帳票出力処理モジュール３０２−３は、データが存在するか否かを判定する（ステップＳ１００６）。
【００４３】
データが存在しない場合（ステップＳ１００６においてＹｅｓ）、出力する必要がないため、帳票出力処理モジュール３０２−３は、処理を行わない。データが存在する場合（ステップＳ１００６においてＮｏ）、帳票出力処理モジュール３０２−３は、そのマージ項目のデータに割り当てられた注釈記号をテンプレートに出力する（ステップＳ１００７）。
【００４４】
帳票出力処理モジュール３０２−３は、出力すべきであったデータを、後で出力するためにスタックに追加しておく（ステップＳ１００８）。このスタックは、マージ項目のデータに関して種類分けされており、同じデータであればマージされる。データを出力後、帳票出力処理モジュール３０２−３は、次の出力データが存在するか否かを判定する（ステップＳ１００９）。
【００４５】
次の出力データが存在する場合（ステップＳ１００９においてＮｏ）、帳票出力処理モジュール３０２−３は、次のページにデータ出力テンプレート５０２のコピーを挿入する（ステップＳ１０１０）。全データが出力されたら（ステップＳ１００９においてＹｅｓ）、帳票出力処理モジュール３０２−３は、省略したマージ項目のデータを出力するためのページを挿入する（ステップＳ１０１１）。そして、帳票出力処理モジュール３０２−３は、スタックに格納してあった注釈等のマージ項目データを出力する（ステップＳ１０１２）。続いて、帳票出力処理モジュール３０２−３は、裏表紙テンプレート５０３を用いて裏表紙を作成する（ステップＳ１０１５）。そして、帳票出力処理モジュール３０２−３は、図１０に示す処理を終了する。
【００４６】
次に、帳票出力処理３０２−３等が行う処理に係る、注釈のマージのパターン（マージパターン２）について、図１１、図１２、図１３、図１４、図１５、図１６を用いて説明する。
【００４７】
図１１は、バリアブルデータ出力するコンテンツデータを格納しているデータベースのテーブルを示す図（その２）である。図１１に示されるように、テーブルは、データ項目列として、名前列１１０１、価格列１１０２、イメージファイルへのファイルパス（イメージ）列１１０３、１つ目の注釈（注釈１）列１１０４、２つ目の注釈（注釈２）列１１０５、を含む。注釈１列１１０４、注釈２列１１０５には、注釈をマージする属性が設定されている。なお、図１１では、説明の便宜上、出力する情報のみを１テーブルとして記載しているが、出力する情報が別のデータベースやテーブルに存在していたり、出力しない情報がテーブルに含まれていたりしてもよい。
【００４８】
図１２は、図１１で示す各レコード行のコンテンツデータを配置するためのテンプレートデータを示す図である。データ出力テンプレート１２０１は、コンテンツデータが配置される１ページ分の出力テンプレートである。なお、図１２の例では用意していないが、図５で示したように、データ出力テンプレート１２０１に表紙、裏表紙を登録することも可能である。イメージフィールド１２１１は、ファイルパス列１１０３の各データに紐付けられたイメージを出力するための領域である。名前フィールド１２１２は、名前列１１０１の各データを出力するための領域である。価格フィールド１２１３は、価格列１１０２の各データを出力するための領域である。注釈１フィールド１２１４は、１つ目の注釈列１１０４の各データを出力するための領域である。注釈２フィールド１２１５は、２つ目の注釈列１１０５の各データを出力するための領域である。
【００４９】
データ出力テンプレート１２０１は、４つのデータを出力するための領域を持っている。出力するデータ数に応じて、各フィールド１２１１、１２１２、１２１３、１２１４、１２１５の領域が、１２１６、１２１７、１２１８の領域にコピーされる。データ出力テンプレート１２０１の例では、右方向に３つのコピーを作成する設定となっているが、下方向へコピーを作成する設定や、上下段組のように右方向と、下方向とにコピーを作成する設定もある。ページ内のデータが埋まると、帳票出力処理モジュール３０２−３は、次のページにデータ出力テンプレート１２０１のコピーを挿入する。
【００５０】
図１３は、図１１の情報を図１２のテンプレートに基づいて、帳票出力処理モジュール３０２−３が、注釈のマージを行わずに出力した例を示す図である。１３０１は、ページ１、１３０２は、ページ２を指す。データ出力テンプレート１２０１は、１ページに４つのデータを出力する設定となっており、出力するデータが６つであるため、ページ１（１３０１）に４つ、ページ２（１３０２）に２つのデータが出力されている。
【００５１】
１３１１は、データの境界線である。操作者は、線を引くか引かないかの選択が可能である。１３１２は、イメージ、１３１３は、名前、１３１４は、価格、１３１５は、注釈１、１３１６は、注釈２である。なお、１３１６の注釈２は、データが無いため何も表示されていない。
【００５２】
図１４は、図１１のデータを図１２のテンプレートを改良した図１５のテンプレートに基づいて、帳票出力処理モジュール３０２−３が、注釈のマージを行って出力した例を示す図である。１４０１は、ページ１、１４０２は、ページ２を指す。データの配置位置と、ページ作成手法と、は図１３と同様である。
【００５３】
１４１１は、データの境界線であり、操作者は、線を引くか引かないかの選択が可能である。１４１２は、イメージ、１４１３は、名前、１４１４は、価格、１４１５は、注釈１の領域、１４１６は、注釈２の領域である。注釈１及び注釈２は、マージ対象項目で、注釈２は、注釈１に関連付けされている。そのため、注釈１及び注釈２は、注釈記号に置き換えられると共に、注釈２の注釈記号は、注釈１フィールドに併記される。
【００５４】
１４１７は、注釈の内容である。図１５のテンプレートに定義されているように、ここでは、注釈はページ単位にマージされ、出力されている。ページ１（１４０１）には注釈記号※１と、注釈記号※２と、の注釈が存在しているため、注釈※１と、注釈※２と、の内容が出力されている。一方、ページ１４０２には注釈記号※２と、注釈記号※３と、の注釈が存在しているため、注釈※２と、注釈※３と、の内容が出力されている。
【００５５】
注釈内容を表示する位置の設定方法には、絶対位置と、相対位置と、の２通りがある。その設定方法を図１５で説明する。図１５は、設定方法を説明するための図である。
【００５６】
図１５の１５０１は、各コンテンツデータが配置されて出力されるテンプレートページを示す。境界線１５１１は、図１２に示したように、１レコード分のコンテンツデータが配置されるフィールド領域１２１１−１２１５が定義されている流し込み領域を示している。そして、点線１５１２は、流し込み領域１５１１を複数有する流し込み領域群を示している。点線１５１２は、説明の便宜上表示しているもので、実際に表示されるものではない。フィールド１５１３は、流し込み領域内で置換処理された注釈の内容を表示する注釈出力フィールドである。フィールド１５１３の線は説明の便宜上表示しているもので、図１４に示したように、実際に表示されるものではない。このように、テンプレートページ１５０１には、置換処理された注釈の内容を表示する注釈出力フィールド１５１３が定義されている。このテンプレートページ１５０１に従って可変データ出力を行うことにより、図１４の出力が得られる。次に、絶対位置設定と相対位置設定について説明する。
【００５７】
絶対位置設定とは、ページ上における注釈内容の位置を指定する方法である。例えば、次のような指定がされる。
（Ｘ座標、Ｙ座標）
【００５８】
相対位置設定とは、データ群からの位置を指定する方法である。データ群とは、点線１５１２の範囲を指し、点線１５１２に対してどこに配置するのか（左上、中央上、右上、左下、中央下、右下、等）、また、その配置場所とのマージンは幾つであるのかを指定する。例えば、次のような指定がされる。
（右下、上マージンが１０ｐｔ、右マージンが１０ｐｔ）
【００５９】
図１６は、注釈のマージパターン２に係る処理の流れを示すフローチャートである。ユーザがクライアントＰＣ１０１（１０２、１０３）から、データ検索機能を用いて出力したいデータを選択し、テンプレートを指定して、Ｗｅｂアプリケーションサーバ１０８に出力要求を行う。Ｗｅｂアプリケーションサーバ１０８では、リクエスト処理モジュール３０１が出力要求を受信する。そして、リクエスト処理モジュール３０１が、データ管理モジュール３０２−１からデータを取得し、帳票管理モジュール３０２−４からテンプレートを取得して、帳票出力処理モジュール３０２−３に出力要求を出す。
【００６０】
帳票出力処理モジュール３０２−３は、まず、データ出力テンプレート１２０１を用いて、データをテンプレートに挿入してページを作成して行く（ステップＳ１６０１）。ループ処理の中で、データが複数存在する場合、帳票出力処理モジュール３０２−３は、データ出力テンプレート１２０１をデータ数だけコピーする。各データにおいて、帳票出力処理モジュール３０２−３は、項目の数だけ挿入処理を行う（ステップＳ１６０２）。
【００６１】
例えば、図１１の例では、名前、価格、イメージ、注釈１、注釈２、が項目である。データ挿入時には、帳票出力処理モジュール３０２−３は、まず、マージ対象属性を参照し、マージ項目か否かを判定する（ステップＳ１６０３）。ここで、マージ項目でなければ（ステップＳ１６０３においてＮｏ）、帳票出力処理モジュール３０２−３は、そのままテンプレートへの出力処理を行う（ステップＳ１６０４）。マージ項目の場合（ステップＳ１６０３においてＹｅｓ）、帳票出力処理モジュール３０２−３は、データが存在するか否かを判定する（Ｓ１６０５）。
【００６２】
データが存在しない場合（Ｓ１６０５においてＹｅｓ）、出力する必要がないため、帳票出力処理モジュール３０２−３は、処理を行わない。データが存在する場合（Ｓ１６０５においてＮｏ）、帳票出力処理モジュール３０２−３は、そのマージ項目のデータに割り当てられた注釈記号をテンプレートに出力する（ステップＳ１６０６）。
【００６３】
帳票出力処理モジュール３０２−３は、出力すべきであったデータを、後で出力するためにスタックに追加しておく（ステップＳ１６０７）。このスタックは、マージ項目のデータに関して種類分けされており、同じデータであればマージされる。
【００６４】
帳票出力処理モジュール３０２−３は、未だ挿入するデータが存在するか否か、又は、次のデータを同じページに挿入可能か否かを判定する（ステップＳ１６０８）。未だ挿入するデータが存在し、同じページに挿入可能である場合（ステップＳ１６０８においてＮｏ）、次のデータへ進む。挿入するデータが存在しない、或いは、同ページには挿入できないという場合（ステップＳ１６０８においてＹｅｓ）、帳票出力処理モジュール３０２−３は、注釈の挿入処理を行う。
【００６５】
まず、帳票出力処理モジュール３０２−３は、注釈位置の取得を行う（ステップＳ１６０９）。そして、帳票出力処理モジュール３０２−３は、スタックに格納してあった注釈等のマージ項目データを出力し（ステップＳ１６１０）、スタックはクリアする（ステップＳ１６１１）。そして、帳票出力処理モジュール３０２−３は、次の出力データが存在するか否かを判定する（ステップＳ１６１２）。存在するようであれば（ステップＳ１６１２においてＮｏ）、帳票出力処理モジュール３０２−３は、次のページにデータ出力テンプレート１２０１のコピーを挿入する（ステップＳ１６１３）。
【００６６】
次に、帳票出力処理３０２−３等が行う処理に係る、注釈のマージのパターン（マージパターン３）について、図１７、図１８を用いて説明する。
【００６７】
図１７は、帳票出力処理モジュール３０２−３が、注釈のマージパターン３でマージを行って出力した例を示す図である。１７０１は、データの境界線である。１７０２は、イメージ、１７０３は、名前、１７０４は、価格、１７０５は、注釈の領域である。マージパターン３では、帳票出力処理３０２−３は、注釈の内容によってデータをソートする。
【００６８】
更に、帳票出力処理３０２−３は、データの境界線１７０１に関して、同じ注釈を持つデータ間の境界線を削除し、同じ注釈を持つ複数のデータがグループ化されたことを示す表示にする。そして、帳票出力処理３０２−３は、注釈の出力についてはグループ内の特定の注釈のみ出力させ、他は出力しないようにする。
【００６９】
図１８は、注釈のマージパターン３に係る処理の流れを示すフローチャートである。ユーザがクライアントＰＣ１０１（１０２、１０３）から、データ検索機能を用いて出力したいデータを選択し、テンプレートを指定して、Ｗｅｂアプリケーションサーバ１０８に出力要求を行う。Ｗｅｂアプリケーションサーバ１０８では、リクエスト処理モジュール３０１が出力要求を受信する。そして、リクエスト処理モジュール３０１が、データ管理モジュール３０２−１からデータを取得し、帳票管理モジュール３０２−４からテンプレートを取得して、帳票出力処理モジュール３０２−３に出力要求を出す。
【００７０】
帳票出力処理モジュール３０２−３では、まず、データをテンプレートに挿入して行く（ステップＳ１８０１）。各データにおいては、帳票出力処理モジュール３０２−３は、項目の数、ループして（ステップＳ１８０２）、仮出力処理を行う（ステップＳ１８０３）。注釈のマージパターン３では、ページ単位にデータをソートするため、帳票出力処理モジュール３０２−３は、一旦仮出力をする。
【００７１】
帳票出力処理モジュール３０２−３は、１ページ内のデータ出力可能数に達した、若しくは、出力するデータが最後か否かの判定を行う（ステップＳ１８０４）。１ページ内のデータ出力可能数に達しておらず、出力するデータの最後でもない場合（ステップＳ１８０４においてＮｏ）、帳票出力処理モジュール３０２−３は、引き続きデータの仮出力処理を行う。１ページ内のデータ出力可能数に達した、或いは、出力するデータが最後である場合（ステップＳ１８０４においてＹｅｓ）、帳票出力処理モジュール３０２−３は、仮出力したデータをマージ項目でソートする（ステップＳ１８０５）。
【００７２】
続いて、帳票出力処理モジュール３０２−３は、マージ項目が同じ内容のデータをグループ化する（ステップＳ１８０６）。帳票出力処理モジュール３０２−３は、グループ化したデータについて、境界線をグループ枠として修正し（ステップＳ１８０７）、特定のマージ項目以外を削除する（ステップＳ１８０８）。
【００７３】
帳票出力処理モジュール３０２−３は、仮出力で作成したデータを本出力する（ステップＳ１８０９）。そして、帳票出力処理モジュール３０２−３は、出力するデータが未だ存在するのかを判定する（ステップＳ１８１０）。存在する場合（ステップＳ１８１０においてＮｏ）、帳票出力処理モジュール３０２−３は、次のページにテンプレートのコピーを挿入する（ステップＳ１８１１）。
【００７４】
なお、本実施形態では、上述したように３種類のマージパターンを説明してきたが、操作者は、マージパターンを出力時に選択することができる。次に、マージパターンの選択に関して、図１９を用いて説明する。
【００７５】
図１９は、Ｗｅｂアプリケーションサーバ１０８等が提供する、マージパターンを選択するダイアログボックスを示す図である。リストボックス１９０１は、マージパターンを選択するリストボックスである。１９０２は、ＯＫボタンである。操作者が、ＯＫボタン１９０２を押すと、マージパターンが決定される。１９０３は、キャンセルボタンである。操作者が、キャンセルボタン１９０３を押すと、マージパターンの選択は行われない。なお、マージパターンに出力上の制限が存在する場合、ＯＫボタン１９０２が操作者によって押された際に、Ｗｅｂアプリケーションサーバ１０８において、出力対象のデータについて整合性のチェックが行われる。
【００７６】
［他の実施の形態］
上述した実施形態では、ＨＴＴＰサーバ１０７と、Ｗｅｂアプリケーションサーバ１０８と、を別構成とした場合を例に挙げた。しかしながら、これに限定されるものではなく、ＨＴＴＰサーバ１０７と、Ｗｅｂアプリケーションサーバ１０８と、を統合した単一の装置（筐体）としてもよい。
【００７７】
また、上述した実施形態では、Ｗｅｂアプリケーションを例として挙げたが、クライアント・サーバシステムとしてもよい。
【００７８】
また、上述した実施形態では、インターネット１０４、ＬＡＮ１０５、１０６、等のネットワークを利用した例を挙げたが、ネットワークを介さず、クライアント上で出力処理を行うようにしてもよい。
【００７９】
以上、上述した実施形態では、自動出力の結果において、重要性の低い情報が不要に繰り返されることを防ぐことができる。よって、ユーザ等が手動で出力結果を修正する作業が不要になる。
【００８０】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【００８１】
【図１】ネットワークシステムの構成例を示す概略図である。
【図２】操作履歴機能を管理する装置としてのＷＥＢアプリケーションサーバ１０８の構成例を示すブロック図である。
【図３】クライアントＰＣ及びＷｅｂアプリケーションサーバのモジュールの構成例を示すブロック図である。
【図４】出力するデータを格納しているデータベースのテーブルを示す図（その１）である。
【図５】図４で示す情報を出力する際のテンプレートデータを示す図である。
【図６】図４の情報を図５のテンプレートに基づいて出力した例を示す図である。
【図７】図６で示す通常の帳票出力に対して、注釈をマージして出力した場合の例を示す図である。
【図８】文字をベースとした注釈記号の設定方法を示す図である。
【図９】アイコンをベースとした注釈記号の設定方法を示す図である。
【図１０】注釈のマージパターン１に係る処理の流れを示すフローチャートである。
【図１１】出力するデータを格納しているデータベースのテーブルを示す図（その２）である。
【図１２】図１１で示す情報を出力する際のテンプレートデータを示す図である。
【図１３】図１１の情報を図１２のテンプレートに基づいて、帳票出力処理モジュール３０２−３が、注釈のマージを行わずに出力した例を示す図である。
【図１４】図１１のデータを図１２のテンプレートに基づいて、帳票出力処理モジュール３０２−３が、注釈のマージを行って出力した例を示す図である。
【図１５】設定方法を説明するための図である。
【図１６】注釈のマージパターン２に係る処理の流れを示すフローチャートである。
【図１７】帳票出力処理モジュール３０２−３が、注釈のマージパターン３でマージを行って出力した例を示す図である。
【図１８】注釈のマージパターン３に係る処理の流れを示すフローチャートである。
【図１９】Ｗｅｂアプリケーションサーバ１０８等が提供する、マージパターンを選択するダイアログボックスを示す図である。
【符号の説明】
【００８２】
１    システムバス
２    ＣＰＵ
３    ＰＭＥＭ
４    外部記憶制御部
５    ＨＤ
６    ＦＤ
７    ＶＲＡＭ
８    表示出力制御部
９    ＣＲＴ
１０  入力制御部
【図１】
2008003944.tif 000003
【図２】
2008003944.tif 000004
【図３】
2008003944.tif 000005
【図４】
2008003944.tif 000006
【図５】
2008003944.tif 000007
【図６】
2008003944.tif 000008
【図７】
2008003944.tif 000009
【図８】
2008003944.tif 000010
【図９】
2008003944.tif 000011
【図１０】
2008003944.tif 000012
【図１１】
2008003944.tif 000013
【図１２】
2008003944.tif 000014
【図１３】
2008003944.tif 000015
【図１４】
2008003944.tif 000016
【図１５】
2008003944.tif 000017
【図１６】
2008003944.tif 000018
【図１７】
2008003944.tif 000019
【図１８】
2008003944.tif 000020
【図１９】
2008003944.tif 000021