(57)【特許請求の範囲】
【請求項１】
帳票の形式が定義されるフォーム定義情報と、帳票上の任意の位置にオブジェクトを描画するためのフィールドが定義されるフィールド定義情報とを含む帳票ファイルを出力装置に出力する帳票出力制御装置であって、
前記出力装置毎に設定された描画の要否を判定するために用いられる値を示す出力属性情報を記憶する出力属性情報記憶手段と、
複数のオブジェクトのうちのいずれかのオブジェクトを出力可能にすべく帳票上の重なる位置に前記フィールドが複数定義された前記フィールド定義情報を含む前記帳票ファイルに対し、前記出力装置へ出力する要求を受け付ける要求受付手段と、
前記要求受付手段により要求を受け付けた前記帳票ファイルに含まれる前記フィールド定義情報に定義されるフィールド夫々に対して設定された描画の要否を判定するために用いられる値を示すフィールド属性情報と、当該要求を受け付けた帳票ファイルの出力先である前記出力装置の前記出力属性情報とを比較して、当該比較の結果に応じて、前記帳票上の重なる位置に複数定義されたフィールドから描画するフィールドを特定する特定手段と、
前記特定手段により特定されたフィールドを描画し、当該特定されたフィールドと帳票上の重なる位置に定義された他のフィールドを描画しないよう、前記要求受付手段により受け付けた前記帳票ファイルを前記出力装置に出力する出力制御手段と
を有することを特徴とする帳票出力制御装置。
【請求項２】
前記出力属性情報及び前記フィールド属性情報は、描画の要否を判定するために用いられる値を複数レベルの属性情報として設定が可能であり、
前記特定手段は、前記出力属性情報と前記フィールド属性情報とに設定されるレベルの比較関係から前記描画するフィールドを特定することを特徴とする請求項１に記載の帳票出力制御装置。
【請求項３】
前記フィールド定義情報に定義されるフィールドには、描画オブジェクトの定義を有しないマスクをするためのフィールドを含むものであり、
前記出力制御手段は、帳票上の重なる位置に複数のフィールドが定義されている場合、レベルの低いフィールドの上に重ねて前記特定手段により特定されたフィールドを描画することを特徴とする請求項２に記載の帳票出力制御装置。
【請求項４】
前記要求受付手段は、前記出力装置に対する前記出力属性情報の指定を受け付け、
前記特定手段は、前記要求受付手段で指定を受け付けた前記出力装置に対する出力属性情報と、前記フィールド属性情報とを用いることにより、前記描画するフィールドを特定することを特徴とする請求項１乃至３のいずれか１項に記載の帳票出力制御装置。
【請求項５】
前記特定手段は、前記出力装置に前記出力属性情報が設定されていない場合、前記出力属性情報を解除する指示がされた場合、前記出力属性情報が解除された期間の場合のいずれかであるとき、前記出力属性情報記憶手段により記憶される出力属性情報を用いることなく、予め定められた出力属性情報を用いることを特徴とする請求項１乃至４のいずれか１項に記載の帳票出力制御装置。
【請求項６】
帳票の形式が定義されるフォーム定義情報と、帳票上の任意の位置にオブジェクトを描画するためのフィールドが定義されるフィールド定義情報とを含む帳票ファイルを出力装置に出力する帳票出力制御方法であって、
前記出力装置毎に設定された描画の要否を判定するために用いられる値を示す出力属性情報を記憶する出力属性情報記憶ステップと、
複数のオブジェクトのうちのいずれかのオブジェクトを出力可能にすべく帳票上の重なる位置に前記フィールドが複数定義された前記フィールド定義情報を含む前記帳票ファイルに対し、前記出力装置へ出力する要求を受け付ける要求受付ステップと、
前記要求受付ステップにより要求を受け付けた前記帳票ファイルに含まれる前記フィールド定義情報に定義されるフィールド夫々に対して設定された描画の要否を判定するために用いられる値を示すフィールド属性情報と、当該要求を受け付けた帳票ファイルの出力先である前記出力装置の前記出力属性情報とを比較して、当該比較の結果に応じて、前記帳票上の重なる位置に複数定義されたフィールドから描画するフィールドを特定する特定ステップと、
前記特定ステップにより特定されたフィールドを描画し、当該特定されたフィールドと帳票上の重なる位置に定義された他のフィールドを描画しないよう、前記要求受付ステップにより受け付けた前記帳票ファイルを前記出力装置に出力する出力制御ステップと
を有することを特徴とする帳票出力制御方法。
【請求項７】
帳票の形式が定義されるフォーム定義情報と、帳票上の任意の位置にオブジェクトを描画するためのフィールドが定義されるフィールド定義情報とを含む帳票ファイルを出力装置に出力する帳票出力制御方法をコンピュータに実行させるためのプログラムであって、
前記出力装置毎に設定された描画の要否を判定するために用いられる値を示す出力属性情報を記憶する出力属性情報記憶ステップと、
複数のオブジェクトのうちのいずれかのオブジェクトを出力可能にすべく帳票上の重なる位置に前記フィールドが複数定義された前記フィールド定義情報を含む前記帳票ファイルに対し、前記出力装置へ出力する要求を受け付ける要求受付ステップと、
前記要求受付ステップにより要求を受け付けた前記帳票ファイルに含まれる前記フィールド定義情報に定義されるフィールド夫々に対して設定された描画の要否を判定するために用いられる値を示すフィールド属性情報と、当該要求を受け付けた帳票ファイルの出力先である前記出力装置の前記出力属性情報とを比較して、当該比較の結果に応じて、前記帳票上の重なる位置に複数定義されたフィールドから描画するフィールドを特定する特定ステップと、
前記特定ステップにより特定されたフィールドを描画し、当該特定されたフィールドと帳票上の重なる位置に定義された他のフィールドを描画しないよう、前記要求受付ステップにより受け付けた前記帳票ファイルを前記出力装置に出力する出力制御ステップと
をコンピュータに実行させるためのプログラム。
【請求項８】
請求項７に記載のプログラムをコンピュータに読み取り可能に記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票ファイルを構成するフィールドを描画処理して帳票データとして出力する帳票出力制御装置、帳票出力制御方法、当該帳票出力制御方法をコンピュータに実行させるためのプログラム、及び当該プログラムを記憶したコンピュータ読み取り可能な記憶媒体に関するものである。
【背景技術】
【０００２】
従来、帳票設計モジュールで帳票の設計を行うときに、所定のフィールドを覆うようにマスク領域を指定しておくことで、帳票作成モジュールでは、出力時に指定されたマスク領域内のフィールドを非表示にする帳票ファイルを作成する。そして、プリントサーバの帳票出力モジュールにおいて、帳票作成サーバから配信されてきた帳票ファイル（この帳票ファイルは、「プレビュー保存ファイル」ともいう）に対し、指定されたマスク領域内のフィールドが非表示となるようにオーバレイすることで帳票データを生成し、保存処理や印刷処理を行っている。
【０００３】
このように従来のマスク領域指定は、出力時に指定されたフィールドを非表示にするために使われるだけで、例えば、マスク指定された領域を非表示とするだけでなく、出力装置ごとに、異なる表示をさせるため、異なるフィールドを上書きして表示するといったことまではできなかった。
【０００４】
出力される帳票データのマスキング技術の１つとして、下記の特許文献１には、取得したデータに自装置の識別子が付されていない場合には、取得したデータに指定されている非出力領域のデータを空白データに変換した後、印刷出力を行うデータ出力装置が開示されている。このデータ出力装置においては、特許文献１の明細書の段落番号［００３１］〜［００３９］等に記載されているように、複数の非出力領域を取得可能であり、且つ、各非出力領域についてその領域のデータを出力するグループの取得が可能となっている。
【０００５】
【特許文献１】特開平１１−３５５５４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載のデータ出力装置は、「出力装置ごとにデータのマスキングの有無を判定すること」を行うものであるため、各出力装置に対しては、対象となるデータ（フィールド）についてそのまま出力するか、あるいは、空白データとして出力するかの２通りの処理しか行うことができなかった。すなわち、特許文献１に記載のデータ出力装置では、対象となるデータ（フィールド）に対して他のデータ（フィールド）を上書きして、出力装置ごとに出力を行うことは困難であった。
【０００７】
本発明は上述の課題を解決するためになされたものであり、対象となるデータ（フィールド）に対してマスキングを行うことのみならず、他のデータ（フィールド）を上書きして、出力装置ごとに出力できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明の帳票出力制御装置は、帳票の形式が定義されるフォーム定義情報と、帳票上の任意の位置にオブジェクトを描画するためのフィールドが定義されるフィールド定義情報とを含む帳票ファイルを出力装置に出力する帳票出力制御装置であって、前記出力装置毎に設定された描画の要否を判定するために用いられる値を示す出力属性情報を記憶する出力属性情報記憶手段と、複数のオブジェクトのうちのいずれかのオブジェクトを出力可能にすべく帳票上の重なる位置に前記フィールドが複数定義された前記フィールド定義情報を含む前記帳票ファイルに対し、前記出力装置へ出力する要求を受け付ける要求受付手段と、前記要求受付手段により要求を受け付けた前記帳票ファイルに含まれる前記フィールド定義情報に定義されるフィールド夫々に対して設定された描画の要否を判定するために用いられる値を示すフィールド属性情報と、当該要求を受け付けた帳票ファイルの出力先である前記出力装置の前記出力属性情報とを比較して、当該比較の結果に応じて、前記帳票上の重なる位置に複数定義されたフィールドから描画するフィールドを特定する特定手段と、前記特定手段により特定されたフィールドを描画し、当該特定されたフィールドと帳票上の重なる位置に定義された他のフィールドを描画しないよう、前記要求受付手段により受け付けた前記帳票ファイルを前記出力装置に出力する出力制御手段とを有する。
【０００９】
本発明の帳票出力制御方法は、帳票の形式が定義されるフォーム定義情報と、帳票上の任意の位置にオブジェクトを描画するためのフィールドが定義されるフィールド定義情報とを含む帳票ファイルを出力装置に出力する帳票出力制御方法であって、前記出力装置毎に設定された描画の要否を判定するために用いられる値を示す出力属性情報を記憶する出力属性情報記憶ステップと、複数のオブジェクトのうちのいずれかのオブジェクトを出力可能にすべく帳票上の重なる位置に前記フィールドが複数定義された前記フィールド定義情報を含む前記帳票ファイルに対し、前記出力装置へ出力する要求を受け付ける要求受付ステップと、前記要求受付ステップにより要求を受け付けた前記帳票ファイルに含まれる前記フィールド定義情報に定義されるフィールド夫々に対して設定された描画の要否を判定するために用いられる値を示すフィールド属性情報と、当該要求を受け付けた帳票ファイルの出力先である前記出力装置の前記出力属性情報とを比較して、当該比較の結果に応じて、前記帳票上の重なる位置に複数定義されたフィールドから描画するフィールドを特定する特定ステップと、前記特定ステップにより特定されたフィールドを描画し、当該特定されたフィールドと帳票上の重なる位置に定義された他のフィールドを描画しないよう、前記要求受付ステップにより受け付けた前記帳票ファイルを前記出力装置に出力する出力制御ステップとを有する。
【００１０】
本発明のプログラムは、帳票の形式が定義されるフォーム定義情報と、帳票上の任意の位置にオブジェクトを描画するためのフィールドが定義されるフィールド定義情報とを含む帳票ファイルを出力装置に出力する帳票出力制御方法をコンピュータに実行させるためのプログラムであって、前記出力装置毎に設定された描画の要否を判定するために用いられる値を示す出力属性情報を記憶する出力属性情報記憶ステップと、複数のオブジェクトのうちのいずれかのオブジェクトを出力可能にすべく帳票上の重なる位置に前記フィールドが複数定義された前記フィールド定義情報を含む前記帳票ファイルに対し、前記出力装置へ出力する要求を受け付ける要求受付ステップと、前記要求受付ステップにより要求を受け付けた前記帳票ファイルに含まれる前記フィールド定義情報に定義されるフィールド夫々に対して設定された描画の要否を判定するために用いられる値を示すフィールド属性情報と、当該要求を受け付けた帳票ファイルの出力先である前記出力装置の前記出力属性情報とを比較して、当該比較の結果に応じて、前記帳票上の重なる位置に複数定義されたフィールドから描画するフィールドを特定する特定ステップと、前記特定ステップにより特定されたフィールドを描画し、当該特定されたフィールドと帳票上の重なる位置に定義された他のフィールドを描画しないよう、前記要求受付ステップにより受け付けた前記帳票ファイルを前記出力装置に出力する出力制御ステップとをコンピュータに実行させるためのものである。
【００１１】
本発明のコンピュータ読み取り可能な記憶媒体は、前記プログラムをコンピュータに読み取り可能に記憶する。
【発明の効果】
【００１２】
本発明によれば、対象となるデータ（フィールド）に対してマスキングを行うことのみならず、他のデータ（フィールド）を上書きして、出力装置ごとに出力を行うことが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
図１は、本発明の実施形態に係る帳票出力制御システムの概略構成を示す図である。
図１に示すように、本実施形態に係る帳票出力制御システムは、電子帳票を設計するクライアントＰＣ１０１と、帳票作成サーバ１０２と、プリントサーバ（帳票出力制御装置）１０３と、プリンタ１０５とを備えて構成されており、これらはネットワーク１０６を介して互いに通信可能に接続されている。
【００１４】
クライアントＰＣ１０１は、帳票設計アプリケーションを具備しており、各フィールドの出力レベルを示すフィールドマスクレベルの設定等の処理を行って帳票実行ファイルを作成するクライアント端末である。このクライアントＰＣ１０１における処理については、図４に基づいて後述する。帳票実行ファイルに、帳票における各種の定義情報を保存することで、上述したフィールドマスクレベルを設定することができる。この帳票実行ファイルのイメージについては図５に基づいて後述する。また、クライアントＰＣ１０１は、帳票設計アプリケーションで作成した帳票実行ファイルをネットワーク１０６を経由して帳票作成サーバ１０２に登録する。
【００１５】
帳票作成サーバ１０２は、帳票作成アプリケーションを具備しており、登録された帳票実行ファイルに基づいて、帳票の実データを合わせてプレビュー保存ファイル（帳票ファイル）を作成する。そして、帳票作成サーバ１０２は、作成したプレビュー保存ファイルをネットワーク１０６を経由して、プリントサーバ１０３に配信する。
【００１６】
プリントサーバ１０３は、帳票作成サーバ１０２から配信されてきたプレビュー保存ファイルの保存処理や、プレビュー保存ファイルに基づき帳票データを生成して印刷処理を行う。そして、印刷処理時には当該印刷要求時に指定されたプリンタ１０５にネットワーク１０６を経由して生成した帳票データを出力する。
【００１７】
プリントサーバ１０３の設定ファイルに、プリンタ１０５における出力マスクレベルを設定しておくことによって、プリントサーバ１０３では、配信されたプレビュー保存ファイルの各フィールドのフィールドマスクレベルと、指定されたプリンタの出力マスクレベルとを比較し、フィールド毎に出力を行うかどうかを決定する。このプリントサーバ１０３における処理については、図７に基づいて後述する。
【００１８】
プリンタ１０５は、プリントサーバ１０３から配信されてきた帳票データを用紙に印刷する。
【００１９】
ネットワーク１０６は、クライアントＰＣ１０１、帳票作成サーバ１０２、プリントサーバ１０３及びプリンタ１０５を通信可能に接続するものである。ネットワーク１０６の形態としては、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などがある。なお、図１のネットワーク上に接続される各種装置の構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
【００２０】
図２は、図１に示すクライアントＰＣ１０１、帳票作成サーバ１０２及びプリントサーバ１０３の各装置におけるハードウェア構成を示すブロック図である。
図１に示すクライアントＰＣ１０１、帳票作成サーバ１０２及びプリントサーバ１０３の各装置における動作は、それぞれに対応するプログラムが記憶装置２０３にロードされ、中央処理装置２０２によって実行されることにより実現される。また、これらのプログラムや、帳票に係るファイルやデータは、ハードディスク等の外部補助記憶装置２０５に格納される。
【００２１】
入力装置２０１は、自装置に対して必要な操作を行わせるために設けられている入力装置であり、一般には、キーボードやマウスなどのポインティングデバイスを示している。中央処理装置２０２は、アプリケーションの処理を実行するＣＰＵ（Ｃｏｎｃｅｎｔｒａｔｅｄ  Ｐｒｏｃｃｅｓｓｉｎｇ  Ｕｎｉｔ）に相当するものである。記憶装置２０３は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）に相当するものである。
【００２２】
表示装置２０４は、画像を表示するためのものであり、一般には、ＣＲＴや液晶表示装置を示している。外部補助記憶装置２０５は、ハードディスク等に相当するものである。ＩＯ＿Ｉ／Ｆ装置２０６は、Ｉ／Ｏにおけるインターフェース装置であり、ネットワーク１０６やプリンタ１０５などの外部装置と通信接続を行うためのものである。バス２０７は、上述した各装置２０１〜２０６間を接続するためのものである。バス２０７としては、アドレスバス、データバス及び制御バス等が挙げられる。
【００２３】
図３は、クライアントＰＣ１０１の帳票設計アプリケーションにおいて、フィールドマスクレベルの設定を行う際の設定画面を示す図である。このフィールドマスクレベルの設定は、各フィールド毎に行われる。
【００２４】
図３において、チェックボックス３０１にチェックを入れると、当該選択したフィールドにフィールドマスクレベルの設定が可能になる。入力ボックス３０２にフィールドマスクレベルの値が入力されると、当該入力値が当該フィールドにおけるフィールドマスクレベルとして設定される。入力ボックス３０３にマスク解除を行うプリンタが入力されると、当該プリンタにおいては入力ボックス３０２によるフィールドマスクレベルが無効とされる。
【００２５】
図４は、クライアントＰＣ１０１の帳票設計アプリケーションにおけるフィールドマスクレベルの設定処理を示すフローチャートである。図４の処理は、詳細には、クライアントＰＣ１０１の中央処理装置２０２によって実行される。
【００２６】
まず、ステップＳ４０１では、指定されたフィールドのフィールド属性プロパティを開く。すなわち、指定されたフィールドについて、図３に示すフィールドマスクレベルの設定画面を表示する。ここで、フィールドには、文字のみならず、図形等の描画オブジェクトや、文字及び図形等の描画オブジェクトを何ら有しない、いわゆるマスクも含まれる。
【００２７】
続いて、ステップＳ４０２では、チェックボックス３０１にチェックがされた場合に、入力ボックス３０２に入力された値を当該フィールドのフィールドマスクレベルとして決定する。また、この際、入力ボックス３０３にマスク解除プリンタが指定されている場合には、当該プリンタに対しては入力ボックス３０２によるマスクレベルを無効とする。
【００２８】
続いて、ステップＳ４０３では、帳票実行ファイルのフィールド定義情報に、フィールド属性として、フィールドマスクレベル指定の有無（例えば、指定有りの場合は１、指定無しの場合は０）、フィールドマスクレベルの値（例えば、０〜９までの値）、マスク解除プリンタを保存する。
【００２９】
ステップＳ４０１〜ステップＳ４０３の処理を経ることにより、クライアントＰＣ１０１によるフィールドマスクレベルの設定処理がなされる。
【００３０】
図５は、クライアントＰＣ１０１で作成される帳票実行ファイルが持つ情報のイメージを示す図である。
図５に示すように、帳票実行ファイルには、ファイル名やフォーム名等のファイルヘッダ情報５１と、帳票のフォームを規定するフォーム定義情報５２と、各フィールド（５３ａ〜５３ｃ、・・・）におけるフィールド定義情報５３が保存される。また、各フィールドにおけるフィールド定義情報５３としては、フィールド番号５３１、フィールド名５３２、フィールド位置５３３、フィールド属性５３４が含まれる。そして、フィールド属性５３４には、ステップＳ４０３で設定したフィールドマスクレベルに関する情報５３４ａが保持される。
【００３１】
前述したように、このクライアントＰＣ１０１で作成された帳票実行ファイルは、ネットワーク１０６を経由して帳票作成サーバ１０２に登録される。そして、帳票作成サーバ１０２では、登録された帳票実行ファイルに基づいて、プレビュー保存ファイル（帳票ファイル）を作成する。そして、帳票作成サーバ１０２は、このプレビュー保存ファイルをネットワーク１０６を経由して、プリントサーバ１０３に配信する。
【００３２】
図６は、プリントサーバ１０３の帳票出力モジュールで設定する設定ファイルのイメージを示す図である。図６に示す設定ファイルでは、プリンタ毎に出力マスクレベルの設定が可能である。ここで、プリントサーバ１０３は、受信したプレビュー保存ファイルにおけるフィールド定義情報５３のフィールドマスクレベルに関する情報５３４ａ等に基づいて、設定ファイルの設定を行う。
【００３３】
図６の６０１は、複合機プリンタｉＲ３２５０の出力マスクレベルを５にする設定がなされていることを示している。また、図６の６０２は、レーザビームプリンタＬＢＰ２１２０の出力マスクレベルを８にする設定、さらに、当該出力マスクレベルの解除期間を２００５年１２月３０日から２００６年１月３日にする設定がなされていることを示している。
【００３４】
図７は、プリントサーバ１０３の帳票出力モジュールにおける全体的な処理を示すフローチャートである。図７の処理は、詳細には、プリントサーバ１０３の中央処理装置２０２によって実行される。
【００３５】
まず、ステップＳ７０１では、出力要求に応じて、帳票作成サーバ１０２から該当するプレビュー保存ファイル（帳票ファイル）を受信する。
【００３６】
続いて、ステップＳ７０２では、指定された出力先のプリンタにおいて、プレビュー保存ファイルに基づく帳票データの保存の設定がされているか否かを判断する。この判断の結果、プレビュー保存ファイルに基づく帳票データの保存の設定がされている場合にはステップＳ７０３に進み、一方、プレビュー保存ファイルに基づく帳票データの保存の設定がされていない場合にはステップＳ７０６に進む。
【００３７】
ステップＳ７０３では、指定された出力先のプリンタにおける出力マスクレベルを検出する。このステップＳ７０３における出力マスクレベルの検出処理の詳細については、図８に基づいて後述する。
【００３８】
続いて、ステップＳ７０４では、ステップＳ７０３で検出した出力マスクレベルと、ステップＳ７０１で受信したプレビュー保存ファイルのフィールド定義情報５３に基づいて、帳票データを生成する。このステップＳ７０４における帳票データの生成処理の詳細については、図９に基づいて後述する。
【００３９】
続いて、ステップＳ７０５では、ステップＳ７０４で生成した帳票データを、自装置（プリントサーバ１０３）に設けられている所定の記憶媒体、例えば、外部補助記憶装置２０５に保存する。
【００４０】
続いて、ステップＳ７０６では、指定された出力先のプリンタにおいて、プレビュー保存ファイルに基づく帳票データの印刷の設定がされているか否かを判断する。この判断の結果、プレビュー保存ファイルに基づく帳票データの印刷の設定がされている場合にはステップＳ７０７に進み、一方、プレビュー保存ファイルに基づく帳票データの印刷の設定がされていない場合には当該フローチャートにおける処理を終了する。
【００４１】
続いて、ステップＳ７０７では、指定された出力先のプリンタにおける出力マスクレベルを検出する。このステップＳ７０７における処理は、ステップＳ７０３における処理と同様であり、その処理の詳細についても、後述する図８と同様である。
【００４２】
続いて、ステップＳ７０８では、ステップＳ７０７で検出した出力マスクレベルと、ステップＳ７０１で受信したプレビュー保存ファイルのフィールド定義情報５３に基づいて、帳票データを生成する。このステップＳ７０８における処理は、ステップＳ７０４における処理と同様であり、その処理の詳細についても、後述する図９と同様である。
【００４３】
続いて、ステップＳ７０９では、ステップＳ７０８で生成した帳票データを、自装置（プリントサーバ１０３）に設けられている所定の記憶媒体、例えば、外部補助記憶装置２０５に一旦保存した後、当該帳票データを指定された出力先のプリンタのドライバに送信する。その後、当該フローチャートにおける処理を終了する。
【００４４】
図８は、指定された出力先のプリンタにおける出力マスクレベルの検出処理（ステップＳ７０３、Ｓ７０７）の詳細を示すフローチャートである。
まず、ステップＳ８０１では、プレビュー保存ファイル作成要求に、指定された出力先のプリンタにおける出力マスクレベルの変更を示す設定がされているか否かを判断する。具体的には、図１４に示す入力ボックス１４０２に出力マスクレベルの変更を示す値（本実施形態では、０〜９）が入力されているか否かを判断する。ここで、出力マスクレベルの変更を行わない場合には、例えば、入力ボックス１４０２に「−」が入力されるものとする。
【００４５】
ステップＳ８０１での判断の結果、出力マスクレベルの変更を示す設定がされている場合には、ステップＳ８０２に進み、図１４の入力ボックス１４０２により設定されている値を、指定された出力先のプリンタにおける出力マスクレベルとして検出する。その後、図８に示す処理を終了する。一方、ステップＳ８０１での判断の結果、出力マスクレベルの変更を示す設定がされていない場合には、ステップＳ８０３に進む。
【００４６】
ステップＳ８０３では、指定されたプリンタに対する出力マスクレベルが設定されているか否かを判断する。具体的には、図６に示す設定ファイルの６０１や６０２に示す出力マスクレベルの設定がされているか否かを判断する。この判断の結果、指定されたプリンタに対する出力マスクレベルが設定されている場合にはステップＳ８０４に進み、一方、指定されたプリンタに対する出力マスクレベルが設定されていない場合にはステップＳ８０６に進む。
【００４７】
ステップＳ８０４では、指定されたプリンタがマスク解除プリンタであるか否かを判断する。具体的には、図６に示す設定ファイルに基づき判断を行う。この判断の結果、指定されたプリンタがマスク解除プリンタである場合には、ステップＳ８０６に進み、一方、指定されたプリンタがマスク解除プリンタでない場合には、ステップＳ８０５に進む。
【００４８】
ステップＳ８０５では、指定されたプリンタに図６の６０２に示すような出力マスクレベルの解除期間６０２が設定されており、現在がその出力マスクレベルの解除期間であるか否かを判断する。この判断の結果、現在がその出力マスクレベルの解除期間でない場合には、ステップＳ８０２に進んで、図６に示す設定ファイルに設定されている値を、指定された出力先のプリンタにおける出力マスクレベルとして検出する。その後、図８に示す処理を終了する。一方、ステップＳ８０５で現在がその出力マスクレベルの解除期間であると判断された場合には、ステップＳ８０６に進む。
【００４９】
ステップＳ８０３で指定されたプリンタに対する出力マスクレベルが設定されていないと判断された場合、ステップＳ８０４で指定されたプリンタがマスク解除プリンタであると判断された場合、あるいは、ステップＳ８０５で現在がその出力マスクレベルの解除期間であると判断された場合、続いて、ステップＳ８０６では、予め設定されているデフォルト値を、指定された出力先のプリンタにおける出力マスクレベルとして検出する。具体的に、本実施形態では、デフォルト値として９、すなわち最大値が設定されている。その後、図８に示す処理を終了する。
【００５０】
ステップＳ８０１〜ステップＳ８０６の処理を経ることにより、ステップＳ７０３又はＳ７０７に示す、指定された出力先のプリンタにおける出力マスクレベルの検出処理がなされる。
【００５１】
図９は、帳票データの生成処理（ステップＳ７０４、Ｓ７０８）の詳細を示すフローチャートである。
まず、ステップＳ９０１では、帳票作成サーバ１０２から配信されたプレビュー保存ファイルを開く。
【００５２】
続いて、ステップＳ９０２では、出力フィールドリストの作成処理を開始する。この出力フィールドリストとは、マスクレベルの比較の結果、出力する必要のあるフィールドを特定し選択するためのリストである。図１０は、出力フィールドリストのイメージを示す図である。
【００５３】
ステップＳ９０３では、プレビュー保存ファイルからフィールドを１つ取り出す。このフィールドは、それぞれ、図５のフィールド属性５３４にフィールドマスクレベルに関する情報５３４ａを保持している。
【００５４】
続いて、ステップＳ９０４では、ステップＳ９０３で取り出したフィールドにおけるフィールドマスクレベルに関する情報５３４ａを参照して、当該フィールドのフィールドマスクレベルを検出する。
【００５５】
続いて、ステップＳ９０５では、ステップＳ９０４で検出したフィールドマスクレベルと、ステップＳ７０３又はＳ７０８で検出した、指定された出力先のプリンタにおける出力マスクレベルとを比較し、フィールドマスクレベルが出力マスクレベル以下であるか否かを判断する。
【００５６】
ステップＳ９０５でフィールドマスクレベルが出力マスクレベル以下であると判断された場合には、続いて、ステップＳ９０６では、ステップＳ９０３で取り出したフィールドを出力を行うフィールドとして選択し、当該フィールドのフィールド番号及びフィールドマスクレベルを、図１０に示す出力フィールドリストのそれぞれ１００１及び１００２に追加する。
【００５７】
ステップＳ９０６の処理が終了した場合、あるいは、ステップＳ９０５でフィールドマスクレベルが出力マスクレベル以下でないと判断された場合、続いて、ステップＳ９０７では、プレビュー保存ファイルを構成する全てのフィールドの取り出しが終了したか否かを判断し、フィールドの取り出しが終了していない場合にはステップＳ９０２に戻り、全てのフィールドの取り出しが終了した場合には、ステップＳ９０８に進む。
【００５８】
ステップＳ９０８では、作成した出力フィールドリストに基づいて、フィールドマスクレベルの低いフィールドから順に背面にして描画処理を行い、指定された出力先のプリンタに送信する帳票データを生成する。このステップＳ９０８における処理の詳細については、図１１に基づいて後述する。その後、図９に示す処理を終了する。
【００５９】
ステップＳ９０１〜ステップＳ９０８の処理を経ることにより、ステップＳ７０４又はＳ７０８に示す、帳票データの生成処理がなされる。
【００６０】
図１１は、ステップＳ９０８における処理の詳細を示すフローチャートである。
まず、ステップＳ１１０１では、フィールドマスクレベルの低いフィールドから順に背面にして行う描画処理を開始する。この際、本実施形態では、フィールドマスクレベル「ｉ＝０」から開始して、「ｉ＝９（フィールドマスクレベルの最大値）」までの処理を繰り返して終了する。
【００６１】
ステップＳ１１０２では、出力フィールドリストのフィールドマスクレベルが「ｉ」であるフィールドを取得する。
【００６２】
続いて、ステップＳ１１０３では、ステップＳ１１０２で取得したフィールドを、フィールド定義情報５３のフィールド位置５３３に基づく所定の位置に描画する。ここで、すでに描画されているフィールドと位置が重なった場合は、上書きをする。
【００６３】
続いて、ステップＳ１１０４では、「ｉ＝ｉ＋１」とする。続いて、ステップＳ１１０５では、全てのフィールドマスクレベルの処理が終了したか否かを判断し、フィールドマスクレベルの処理が終了していない場合にはステップＳ１１０１に戻り、全てのフィールドマスクレベルの処理が終了した場合には、図１１に示す処理を終了する。
【００６４】
ステップＳ１１０１〜ステップＳ１１０５の処理を経ることにより、ステップＳ９０８に示す、フィールドマスクレベルの低いフィールドから順に背面にする描画処理がなされる。
【実施例】
【００６５】
次に、本発明の実施例について以下に説明する。
本発明の実施例として、「ある不動産紹介の営業所（千葉）は、１．その営業所で管理している物件と、２．親会社（東京）の不動産会社が管理している物件を取り扱っている。２．の物件の間取り図を顧客に紹介するときに、記載されている親会社の社名と連絡先を自社の情報に変更する」場合について考える。
【００６６】
従来では、記載されている親会社の情報を自社の情報に変更するためには、親会社の情報のフィールドに対して他のフィールド（自社の情報のフィールド）を上書きして出力を行うことが困難であったため、その親会社の情報を隠してコピーを取ってそのスペースに自社の情報を記入し、顧客に紹介していた。この場合、情報を書き直すコスト（コピー代と用紙代）や時間、労力がかかり、作業効率が悪く、また、顧客に見せる資料の見栄えも悪くなるといった問題があった。
【００６７】
図１２は、この問題を解決するための、本発明の実施例に係る帳票出力制御システムの概略構成を示す図である。
クライアントＰＣ１２１０は、帳票設計アプリケーションを備えており、各フィールドにフィールドマスクレベルを設定して帳票実行ファイルを作成し、データセンター１２２０が備えている帳票作成サーバ１２２１に登録を行う。
【００６８】
本実施例に係るクライアントＰＣ１２１０では、文字列「東京」のフィールド１２１１のフィールドマスクレベルを４に設定し、マスクのフィールド１２１２のフィールドマスクレベルを６に設定し、文字列「横浜」のフィールド１２１３のフィールドマスクレベルを８に設定している。
【００６９】
図１２のデータセンター１２２０は、帳票作成サーバ１２２１を備えている。この帳票作成サーバ１２２１は、各営業所１２３０、１２４０及び１２５０が備えるクライアントＰＣ１２６０からネットワーク１２６１を経由して送信される帳票作成要求により、クライアントＰＣ１２１０から登録された帳票実行ファイルから、プレビュー保存ファイルを作成する。このプレビュー保存ファイルは、フィールドマスクレベルを保持する。
【００７０】
東京本社１２３０、千葉営業所１２４０及び横浜営業所１２５０は、それぞれ、プリントサーバ１２３１、１２４１、１２５１を備えており、各プリントサーバは、それぞれ、帳票出力モジュール１２３２、１２４２、１２５２を備えている。
【００７１】
東京本社１２３０の帳票出力モジュール１２３２における設定ファイル１２３３では、出力先のプリンタ１２３４の出力マスクレベルが５に設定されている。千葉営業所１２４０の帳票出力モジュール１２４２の設定ファイル１２４３では、出力先のプリンタ１２４４の出力マスクレベルが７に設定されている。横浜営業所１２５０の帳票出力モジュール１２５２の設定ファイル１２５３では、出力先のプリンタ１２５５の出力マスクレベルが９に設定されている。
【００７２】
クライアントＰＣ１２６０は、各営業所がそれぞれ備えている、帳票作成要求を送信することができるＰＣである。ネットワーク１２６１は、例えばＷＡＮであり、当該ネットワークを経由して帳票作成要求が各帳票出力モジュールに送信される。また、言うまでもなく、各装置のハードウェアは、ネットワークで繋がっている。
【００７３】
図１３は、本発明の実施例に係るクライアントＰＣ１２１０の帳票設計アプリケーションにおけるフィールドマスクレベルの設定処理を示すフローチャートである。また、図１３には、当該フローチャートの右側に、各ステップにおけるフィールド配置のイメージを示している。ここで、このフィールドマスクレベルの設定は、図３に示す設定画面の入力に基づき行われる。
【００７４】
ステップＳ１３０１では、文字列「東京」のフィールド１２１１のフィールドマスクレベルを４に設定する。
【００７５】
続いて、ステップＳ１３０２では、マスクのフィールド１２１２のフィールドマスクレベルを６に設定する。また、マスクのフィールド１２１２の範囲を文字列「東京」のフィールド１２１１よりも大きめにし、文字列「東京」のフィールド１２１１が覆われるように重ねて配置する。このとき、重なっているフィールドをクリックすると別のダイアログが開き、フィールドの重なりが立体的に視覚化されるようになっている。
【００７６】
続いて、ステップＳ１３０３では、文字列「横浜」のフィールド１２１３のフィールドマスクレベルを８に設定する。また、文字列「横浜」のフィールド１２１３を、文字列「東京」のフィールド１２１１及びマスクのフィールド１２１２に上乗せするように重ねて配置する。このときも、重なっているフィールドをクリックすると別のダイアログが開き、フィールドの重なりが立体的に視覚化されるようになっている。
【００７７】
図１４は、サーブレット経由で帳票作成要求を送信するときのＷｅｂサイトのイメージ図である。
出力先指定の入力ボックス１４０１では、帳票データをどのプリンタに出力するかを選択するものである。出力マスクレベル変更を指定する入力ボックス１４０２では、当該帳票作成要求に限定した出力マスクレベルを指定するものである。この出力マスクレベル変更の指定がなされた場合には、図６に示す設定ファイルなどの設定に関わらず、最優先の値として用いられる。
【００７８】
図１５は、東京本社１２３０のプリントサーバ１２３１の帳票出力モジュール１２３２における印刷処理を示すフローチャートである。
【００７９】
まず、ステップＳ１５０１では、データセンター１２２０が備える帳票作成サーバ１２２１からプレビュー保存ファイル（帳票ファイル）を受信する。
【００８０】
続いて、ステップＳ１５０２では、指定された出力先のプリンタ１２３４の出力マスクレベルを検出する。具体的には、設定ファイル１２３３に設定されている出力マスクレベルを検出し、本実施例の場合は、出力マスクレベルが５として検出される。出力マスクレベルの検出処理の詳細については、図８に示す処理となる。
【００８１】
続いて、ステップＳ１５０３では、図１０に示す出力フィールドリストの作成を行う。出力フィールドリストの作成処理の詳細については、図９のステップＳ９０２〜ステップＳ９０７に示す処理となる。この東京本社１２３０の場合、指定された出力先のプリンタ１２３４の出力マスクレベルが５であるため、フィールドマスクレベルが５以下のフィールドである文字列「東京」のフィールド１２１１のみが出力フィールドリストに掲載される。
【００８２】
続いて、ステップＳ１５０４では、作成した出力フィールドリストに基づいて描画処理を行う。このステップＳ１５０４の処理の詳細については、図１１に示す処理となる。この描画処理により、文字列「東京」のフィールド１２１１における帳票データが生成される。
【００８３】
続いて、ステップＳ１５０５では、文字列「東京」のフィールド１２１１における帳票データを、指定された出力先のプリンタ１２３４のドライバに送信する。これにより、東京本社１２３０のプリンタ１２３４からは、処理対象箇所に「東京」が印字された印刷用紙１２３５が出力される。
【００８４】
図１６は、千葉営業所１２４０のプリントサーバ１２４１の帳票出力モジュール１２４２における印刷処理を示すフローチャートである。
【００８５】
まず、ステップＳ１６０１では、データセンター１２２０が備える帳票作成サーバ１２２１からプレビュー保存ファイル（帳票ファイル）を受信する。
【００８６】
続いて、ステップＳ１６０２では、指定された出力先のプリンタ１２４４の出力マスクレベルを検出する。具体的には、設定ファイル１２４３に設定されている出力マスクレベルを検出し、本実施例の場合は、出力マスクレベルが７として検出される。出力マスクレベルの検出処理の詳細については、図８に示す処理となる。
【００８７】
続いて、ステップＳ１６０３では、図１０に示す出力フィールドリストの作成を行う。出力フィールドリストの作成処理の詳細については、図９のステップＳ９０２〜ステップＳ９０７に示す処理となる。この千葉営業所１２４０の場合、指定された出力先のプリンタ１２４４の出力マスクレベルが７であるため、フィールドマスクレベルが７以下のフィールドである文字列「東京」のフィールド１２１１及びマスクのフィールド１２１２が出力フィールドリストに掲載される。
【００８８】
続いて、ステップＳ１６０４では、作成した出力フィールドリストに基づいて描画処理を行う。このステップＳ１６０４の処理の詳細については、図１１に示す処理となる。この描画処理では、まず、フィールドマスクレベルの低い文字列「東京」のフィールド１２１１が描画処理され、続いて、当該フィールド１２１１を覆うようにマスクのフィールド１２１２が描画処理される。すなわち、マスクのフィールド１２１２における帳票データが生成される。
【００８９】
続いて、ステップＳ１６０５では、マスクのフィールド１２１２における帳票データを、指定された出力先のプリンタ１２４４のドライバに送信する。これにより、千葉営業所１２４０のプリンタ１２４４からは、処理対象箇所が余白の印刷用紙１２４５が出力される。
【００９０】
図１７は、横浜営業所１２５０のプリントサーバ１２５１の帳票出力モジュール１２５２における印刷処理を示すフローチャートである。
【００９１】
まず、ステップＳ１７０１では、データセンター１２２０が備える帳票作成サーバ１２２１からプレビュー保存ファイル（帳票ファイル）を受信する。
【００９２】
続いて、ステップＳ１７０２では、指定された出力先のプリンタ１２５４の出力マスクレベルを検出する。具体的には、設定ファイル１２５３に設定されている出力マスクレベルを検出し、本実施例の場合は、出力マスクレベルが９として検出される。出力マスクレベルの検出処理の詳細については、図８に示す処理となる。
【００９３】
続いて、ステップＳ１７０３では、図１０に示す出力フィールドリストの作成を行う。出力フィールドリストの作成処理の詳細については、図９のステップＳ９０２〜ステップＳ９０７に示す処理となる。この横浜営業所１２５０の場合、指定された出力先のプリンタ１２５４の出力マスクレベルが９であるため、フィールドマスクレベルが９以下のフィールドである文字列「東京」のフィールド１２１１、マスクのフィールド１２１２及び文字列「横浜」のフィールド１２１３が出力フィールドリストに掲載される。
【００９４】
続いて、ステップＳ１７０４では、作成した出力フィールドリストに基づいて描画処理を行う。このステップＳ１７０４の処理の詳細については、図１１に示す処理となる。この描画処理では、まず、フィールドマスクレベルの低い文字列「東京」のフィールド１２１１が描画処理され、続いて、フィールドマスクレベルが２番目に低いマスクのフィールド１２１２が当該文字列「東京」のフィールド１２１１を覆うように描画処理され、続いて、フィールドマスクレベルが１番目に高い文字列「横浜」のフィールド１２１３が当該マスクのフィールド１２１２を覆うように描画処理される。すなわち、文字列「横浜」のフィールド１２１３における帳票データが生成される。
【００９５】
続いて、ステップＳ１７０５では、文字列「横浜」のフィールド１２１３における帳票データを、指定された出力先のプリンタ１２５４のドライバに送信する。これにより、横浜営業所１２５０のプリンタ１２５４からは、処理対象箇所に「横浜」が印字された印刷用紙１２５５が出力される。
【００９６】
以上説明したように、本発明の実施形態及び実施例に係るプリントサーバでは、指定されたプリンタの出力マスクレベルを検出するとともに、プレビュー保存ファイル（帳票ファイル）を構成する各フィールドのフィールドマスクレベルを検出し、検出した出力マスクレベルと検出した各フィールドマスクレベルとを比較して出力を行うフィールドを選択し、選択したフィールドを前記比較結果に基づく順序で描画処理して、指定されたプリンタに送信する帳票データを生成するようにしている。これにより、対象となるデータ（フィールド）に対してマスキングを行うことのみならず、他のデータ（フィールド）を上書きして、プリンタごとに出力を行うことが可能となる。さらに、対象となるデータ（フィールド）に対して他のデータ（フィールド）を上書きすることができるため、コピー代、用紙代、作業分の人件費等のコストダウンや、顧客に見せる資料の見栄えを良くすることも可能となる。
【００９７】
前述した本実施形態（本実施例）に係る帳票出力制御システムを構成する各手段、並びに帳票出力制御方法を示した各ステップは、コンピュータのＲＡＭやＲＯＭなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び当該プログラムを記録したコンピュータ読み取り可能な記憶媒体は本発明に含まれる。
【００９８】
具体的に、前記プログラムは、例えばＣＤ−ＲＯＭのような記憶媒体に記録し、或いは各種伝送媒体を介し、コンピュータに提供される。前記プログラムを記録する記憶媒体としては、ＣＤ−ＲＯＭ以外に、フレキシブルディスク、ハードディスク、磁気テープ、光磁気ディスク、不揮発性メモリカード等を用いることができる。他方、前記プログラムの伝送媒体としては、プログラム情報を搬送波として伝搬させて供給するためのコンピュータネットワーク（ＬＡＮ、インターネットの等のＷＡＮ、無線通信ネットワーク等）システムにおける通信媒体（光ファイバ等の有線回線や無線回線等）を用いることができる。
【００９９】
また、コンピュータが供給されたプログラムを実行することにより本実施形態（本実施例）に係る帳票出力制御システムが実現されるだけでなく、そのプログラムがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）或いは他のアプリケーションソフト等と共同して本実施形態（本実施例）に係る帳票出力制御システムの機能が実現される場合や、供給されたプログラムの処理の全て、或いは一部がコンピュータの機能拡張ボードや機能拡張ユニットにより行われて本実施形態（本実施例）に係る帳票出力制御システムの機能が実現される場合も、かかるプログラムは本発明に含まれる。
【図面の簡単な説明】
【０１００】
【図１】本発明の実施形態に係る帳票出力制御システムの概略構成を示す図である。
【図２】図１に示すクライアントＰＣ、帳票作成サーバ及びプリントサーバの各装置におけるハードウェア構成を示すブロック図である。
【図３】クライアントＰＣの帳票設計アプリケーションにおいて、フィールドマスクレベルの設定を行う際の設定画面を示す図である。
【図４】クライアントＰＣの帳票設計アプリケーションにおけるフィールドマスクレベルの設定処理を示すフローチャートである。
【図５】クライアントＰＣで作成される帳票実行ファイルが持つ情報のイメージを示す図である。
【図６】プリントサーバの帳票出力モジュールで設定する設定ファイルのイメージを示す図である。
【図７】プリントサーバの帳票出力モジュールにおける全体的な処理を示すフローチャートである。
【図８】指定された出力先のプリンタにおける出力マスクレベルの検出処理（ステップＳ７０３、Ｓ７０７）の詳細を示すフローチャートである。
【図９】帳票データの生成処理（ステップＳ７０４、Ｓ７０８）の詳細を示すフローチャートである。
【図１０】出力フィールドリストのイメージを示す図である。
【図１１】ステップＳ９０８における処理の詳細を示すフローチャートである。
【図１２】本発明の実施例に係る帳票出力制御システムの概略構成を示す図である。
【図１３】本発明の実施例に係るクライアントＰＣの帳票設計アプリケーションにおけるフィールドマスクレベルの設定処理を示すフローチャートである。
【図１４】サーブレット経由で帳票作成要求を送信するときのＷｅｂサイトのイメージ図である。
【図１５】東京本社のプリントサーバの帳票出力モジュールにおける印刷処理を示すフローチャートである。
【図１６】千葉営業所のプリントサーバの帳票出力モジュールにおける印刷処理を示すフローチャートである。
【図１７】横浜営業所のプリントサーバの帳票出力モジュールにおける印刷処理を示すフローチャートである。
【符号の説明】
【０１０１】
１０１  クライアントＰＣ
１０２  帳票作成サーバ
１０３  プリントサーバ（帳票出力制御装置）
１０５  プリンタ
１０６  ネットワーク
２０１  入力装置
２０２  中央処理装置
２０３  記憶装置
２０４  表示装置
２０５  外部補助記憶装置
２０６  ＩＯ＿Ｉ／Ｆ装置
２０７  バス
【図１】
0004766603.tif 000002
【図２】
0004766603.tif 000003
【図３】
0004766603.tif 000004
【図４】
0004766603.tif 000005
【図５】
0004766603.tif 000006
【図６】
0004766603.tif 000007
【図７】
0004766603.tif 000008
【図８】
0004766603.tif 000009
【図９】
0004766603.tif 000010
【図１０】
0004766603.tif 000011
【図１１】
0004766603.tif 000012
【図１２】
0004766603.tif 000013
【図１３】
0004766603.tif 000014
【図１４】
0004766603.tif 000015
【図１５】
0004766603.tif 000016
【図１６】
0004766603.tif 000017
【図１７】
0004766603.tif 000018