(57)【要約】【課題】  印刷要求した個々のクライアントに帳票フォームおよびデータが配信され、そのクライアントにて帳票フォームとデータの重ね合わせが行なわれ、印刷用データが生成される場合、個々のクライアントがより一層の処理能力を有していなければならない。【解決手段】  印刷用データを生成するために必要なデータをクライアントではなく、出力サーバに対して配信する。【選択図】  図９
2007058883.tif 000002
【特許請求の範囲】
【請求項１】
テンプレートデータと、可変データと可変データを識別するための識別情報の対応情報を受信する受信手段と、
テンプレートデータと可変データに基づいて印刷データを生成する生成手段と、
前記対応情報の中の識別情報に対応するテンプレートデータ中の領域を特定する特定手段と、
前記生成手段が印刷データを生成する場合に、前記特定手段が特定した領域に対して前記受信手段が受信した可変データを挿入する挿入手段と、
を備える情報処理装置。
【請求項２】
前記テンプレートデータに含まれる固定データを識別する固定データ識別情報に対応する固定データを前記情報処理装置内のデータベースの中から検索する検索手段と、
前記検索手段の検索によりデータベース内から固定データが見つかった場合は、当該固定データを前記挿入手段は、前記印刷データを生成する際に挿入する請求項１に記載の情報処理装置。
【請求項３】
前記検索手段の検索によりデータベース内から固定データが見つからなかった場合は、当該固定データを他の情報処理装置から取得する取得手段をさらに備える請求項１に記載の情報処理装置。
【請求項４】
テンプレートデータと、可変データと可変データを識別するための識別情報の対応情報を受信する受信ステップと、
テンプレートデータと可変データに基づいて印刷データを生成する生成ステップと、
前記対応情報の中の識別情報に対応するテンプレートデータ中の領域を特定する特定ステップと、
前記生成ステップが印刷データを生成する場合に、前記特定ステップが特定した領域に対して前記受信ステップが受信した可変データを挿入する挿入ステップと、
を備える情報処理方法。
【請求項５】
前記テンプレートデータに含まれる固定データを識別する固定データ識別情報に対応する固定データを前記情報処理装置内のデータベースの中から検索する検索ステップと、
前記検索ステップの検索によりデータベース内から固定データが見つかった場合は、当該固定データを前記挿入ステップは、前記印刷データを生成する際に挿入する請求項４に記載の情報処理方法。
【請求項６】
前記検索ステップの検索によりデータベース内から固定データが見つからなかった場合は、当該固定データを他の情報処理装置から取得する取得ステップをさらに備える請求項４に記載の情報処理方法。
【請求項７】
請求項４乃至６のいずれか１項に記載の方法をコンピュータに実行させる制御プログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して、帳票のプリントデータを生成して、帳票のプリントを行うネットワークプリントシステムに関するものである。
【背景技術】
【０００２】
インターネットの急速な発展とＷｅｂサーバの林立に伴い、業務処理のＷｅｂ化が推進されている。ネットワークに接続されたパーソナルコンピュータは、情報の表示と情報の入力が可能なＷｅｂブラウザ１０１を搭載するのみで、Ｗｅｂブラウザ１０１とＷｅｂサーバによる業務処理がひろく行われる様になっている。このとき、業務処理に必要な情報が、ＷｅｂサーバとＷｅｂブラウザ１０１の間で交換される。
【０００３】
Ｗｅｂサーバは、Ｗｅｂブラウザ１０１から入力された情報を受け取り、サーバ内でその情報を加工し、加工後の情報を再びＷｅｂブラウザ１０１に送信する。Ｗｅｂサーバは、その加工後の情報を表示する。これらの動作が繰り返し行われて、業務が遂行される。
【０００４】
しかし、Ｗｅｂブラウザ１０１とＷｅｂサーバによる業務処理において問題となっているのは、業務処理上欠かせないプリント処理に関する部分である。特に帳票等、フォーマットに従った美しいプリントを行う事ができなかった。
【０００５】
通常のＷｅｂブラウザ１０１はプリント機能を提供しているものの、この機能は、Ｗｅｂブラウザ１０１上に表示されたイメージのハードコピーを、Ｗｅｂブラウザ１０１配下のプリンタ（或いは、Ｗｅｂブラウザ１０１が起動されているコンピュータの配下にあるプリンタ）にプリントさせるものである。このプリント方式では、用紙サイズを越えるイメージや、複数ページにまたがるイメージの印刷では、ページ区切りをどのようにするかという問題があり、ユーザが所望するプリントが行なわれないことが多い。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
これを解決する方法として、Ｗｅｂサーバを有するプリントシステムサーバが、Ｗｅｂブラウザ１０１からの指示に応じて、印刷用データ（例えば、帳票プリントデータ）を生成し、それをＷｅｂサーバが起動されているクライアントに配信するプリントシステムが考えられる。このプリントシステムにおいては、サーバは、個々の指示に対する印刷用データを必ず生成し、それを逐次的にクライアントに返している。
【０００７】
特に、上記のようなプリントシステムにおいて、印刷する流れは以下の（１）もしくは（２）となっている。（１）印刷要求した個々のクライアントに印刷用データが配信され、そのクライアントからプリンタに対してデータが送られる。（２）印刷要求した個々のクライアントに帳票フォームおよびデータが配信され、そのクライアントにて帳票フォームとデータの重ね合わせが行なわれ、印刷用データが生成される。
【０００８】
しかし、（１）では、個々のクライアントが印刷に関してデータ送信や印刷管理を行う必要があるため、個々のクライアントが、ある程度以上のデータ送信処理能力を有していなければならない。
【０００９】
また、（２）では、（１）に比べ送信データ量を少なくすることが可能である一方、個々のクライアントが帳票フォームとデータの重ね合わせを実施しなければならないため、個々のクライアントがより一層の処理能力を有していなければならないという欠点があった。
【００１０】
従って、本発明は、上記課題を解決する為に考案されたものであり、印刷用データを生成するために必要なデータをクライアントではなく、出力サーバに対して配信し、出力サーバが、配信されたデータをプリンタ処理可能なデータに変換することにより、クライアントに負担をかけることなく印刷処理を効率よく行なうことができるようにする。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明に係る情報処理装置は、テンプレートデータと、可変データと可変データを識別するための識別情報の対応情報を受信する受信手段と、テンプレートデータと可変データに基づいて印刷データを生成する生成手段と、前記対応情報の中の識別情報に対応するテンプレートデータ中の領域を特定する特定手段と、前記生成手段が印刷データを生成する場合に、前記特定手段が特定した領域に対して前記受信手段が受信した可変データを挿入する挿入手段と、を備えることを特徴とする。
【００１２】
また、このプリントシステムでは、前記表示画面は、Ｗｅｂブラウザに表示されるページ画面であり、前記外部装置からの要求は、前記外部装置のＷｅｂブラウザと前記第１情報処理装置のＷｅｂサーバとで通信されることを特徴とする。
【００１３】
また、このプリントシステムでは、前記送信制御装置により送信された前記テンプレートと前記データとに基づいて、プリントデータを前記第２情報処理装置で生成する生成手段を有することを特徴とする。
【００１４】
また、このプリントシステムでは、前記テンプレートに挿入されるデータのうち一部のデータを前記第２情報処理装置で取得する取得手段を有することを特徴とする。
【００１５】
また、このプリントシステムでは、前記テンプレートに挿入されるデータであって、前記送信制御手段により送信されていないデータがあるか否かを判定する判定手段を有することを特徴とする。
【００１６】
また、このプリントシステムでは、前記テンプレートに挿入されるデータであって、前記第２情報処理装置にないデータを第３情報処理装置から取得する取得手段を有することを特徴とする。
【００１７】
また、このプリントシステムにおける情報処理装置は、第１外部装置からの要求に応じて、前記外部装置に表示されている表示画面に対応するプリントデータを生成するためのテンプレートと、前記テンプレートに挿入されるデータとを特定する特定手段と、
前記特定手段により特定されたテンプレートとデータとを前記第１外部装置とは異なる第２外部装置に送信させる送信制御手段とを有することを特徴とする。
【発明の効果】
【００１８】
以上から、本発明によれば、印刷用データを生成するために必要なデータをクライアントではなく、出力サーバに対して配信し、出力サーバが、配信されたデータをプリンタ処理可能なデータに変換することにより、クライアントに負担をかけることなく印刷処理を効率よく行なうことができる。
【００１９】
また、出力サーバは、印刷用データを生成するために必要な一部のデータをネットワークを経由して検索することにより、サーバが有していないデータをも印刷することができる。
【発明を実施するための最良の形態】
【００２０】
＜帳票プリントシステム＞
図１は、帳票プリントシステムの機能構成図である。１００は、帳票プリントシステムのクライアント（以下、クライアントと省略する）であるＰＣ等の情報処理装置である。１０１は、Ｗｅｂブラウザ１０１である。Ｗｅｂブラウザ１０１は、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などで記述された文書データファイル（Ｗｅｂドキュメント）を表示する機能を持つアプリケーションプログラムで、Ｗｅｂサーバから受信したＷｅｂドキュメントを表示する。また、Ｗｅｂブラウザは、単にＷｅｂドキュメントを表示するのみならず、ＨＴＭＬの記述に従って、画面上でデータを入力させ、それをＷｅｂサーバに返送する機能をも持つ。なお、Ｗｅｂブラウザは、入力されたＵＲＬに従って、サーバからＷｅｂドキュメントを取得する。
【００２１】
１０２は、帳票プリントシステムのサーバ（以下、サーバと省略する）に対してデータの入出力を行うデータ入出力部である。データ入出力部１０２は、電話回線やＬＡＮ等のネットワーク１０５を介してサーバ１０６とデータを交換するもので、ＨＴＴＰより低いレイヤの処理を行う。プリント出力部１０３は、所定の形式で記述されたプリントデータをプリンタに依存した出力形式に従ったデータ形式に変換してプリンタ１０４から出力させるほか、サーバ等から受信したプリンタの出力形式のデータをスプールにいれてプリンタ１０４により印刷させる。
【００２２】
１０３は、Ｗｅｂブラウザ１０１からの指示により、Ｗｅｂブラウザ１０１に表示されているイメージを標準的なプリント用データに変換する為のプリント出力部である。このプリント出力部は、主にプリントドライバと呼ばれる。
【００２３】
１０４及び１１３は印刷装置である。１０５は、サーバとクライアントとを結んでいるネットワークである。ネットワークの形態として、ＬＡＮ（ＬｏｃａｌＡｒｅａ  Ｎｅｔｗｏｒｋ）、インターネット、無線などがある。なお、ここでは、ネットワーク１０５は、Ｗｅｂ環境の通信手順（例えば、ＴＣＰ／ＩＰプロトコルやＨＴＴＰプロトコル）に対応したものであるとする。
【００２４】
１０６は、サーバである情報処理装置である。１０７は、Ｗｅｂサーバの機能を有するネットワーク通信制御部である。ここで、Ｗｅｂサーバ機能とは、Ｗｅｂサーバとは、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）やＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）等をサポートする機能であり、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｃｅ  Ｌｏｃａｔｏｒ）で指定された、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などで記述された文書データファイル（Ｗｅｂドキュメント）等を、要求に応じてネットワーク上のクライアントに送信することができるものである。
【００２５】
１０８は、帳票プリントの際に使用されるプリント用帳票フォームを示す帳票テンプレート（或いは、帳票テンプレートデータ）が格納されている帳票テンプレート格納部である。帳票テンプレート格納部１０８は、帳票プリントを行う為の帳票テンプレート等を格納する。なお、帳票テンプレートは、クライアントがサーバから読み出したＷｅｂドキュメントごとに、それぞれに対応したものがある。従って、サーバが帳票テンプレートに対応づけられるＷｅｂドキュメントをクライアントに送信した場合、そのＷｅドキュメントに対応する識別子をサーバは記憶しておく。また、帳票テンプレート格納部に格納される帳票テンプレートには、対応するＷｅｂドキュメントの識別子が帳票テンプレート識別子として関連付けられている。
【００２６】
１０９は、データベースで構築されているデータ格納部であり、各業務用データを格納している。このデータは予めデータベース化されているもののほか、Ｗｅｂブラウザで入力されたデータがそのままデータ格納部にかくのうされることもある。１１０は、データ処理部で、各業務用のアプリケーションプログラムに従ってデータ処理を行なう。
【００２７】
１１１は、帳票プリントデータを決められた様式に従って作成する画像生成部である。画像生成部１１１は、帳票プリントデータを、帳票フォーム及びそこにオーバーレイされるデータとの組み合わせにより、プリント出力部１１２で解釈可能な所定の形式で作成する。１１２は、画像生成部で作成されたデータをプリンタが出力できる形式に変換するプリント出力部であり、一般にはプリンタドライバと呼ばれている。
【００２８】
１１４はデータ管理部であり、一度作成された帳票プリントデータを効率よく保存し、その保存先をクライアントへ送信する。特に、変更の生じたプリント用帳票フォームに対して新たな帳票プリントデータを生成し、その旨ユーザに通知する役割を果たす。
【００２９】
図３は、クライアント及びサーバの構成を示すハードウエア構成図である。図１の各部（１０２、１０３、１０７、１１０〜１１２、１１４）は、それぞれに対応するプログラムがメモリ３０３にロードされ、コンピュータのＣＰＵ３０２によって実行されることにより実現されている。また、これらのプログラムや、データ格納部１０９あるいは帳票テンプレート格納部１０８は、ハードディスク等の外部メモリ３０５に格納される。外部メモリ３０５は、フロッピディスクやＣＤ−ＲＯＭ等の取り外し可能な記憶媒体を用いるものであっても良い。ディスプレイ３０４には、Ｗｅｂブラウザや画像が表示される。Ｉ／Ｏインターフェース３０６は、ネットワーク１０５やプリンタ１０４などの外部装置に接続するための口である。また、キーボードやポインティングデバイス３０１により、ユーザは必要な入力を行う。
【００３０】
＜Ｗｅｂブラウザ上の表示＞
つぎに、Ｗｅｂブラウザ１０１からのプリント指示について述べる。データ処理部１１０は、データ入出力部１０２と通信することにより、Ｗｅｂブラウザ１０１で入力されたデータの受付、解析、受付データに応じたデータ検索、検索結果のデータ入出力部への返信が行われる。Ｗｅｂブラウザ１０１は、データ処理部１１０から配信されたＷｅｂドキュメントに応じてボタンを表示しており、ユーザがそのボタンを押すと、データ入出力部１０２を介してサーバへ様々な要求が送られる。なお、このボタンは、コンピュータのディスプレイに表示されており、マウスなどのポインティングデバイスやキーボードからの入力により選択され、押されるものである。
【００３１】
特に、この帳票プリントシステムのおける印刷ボタンは、Ｗｅｂブラウザ１０１のイメージ表示領域に設けられる。図２は、一般的なＷｅｂブラウザ１０１において、業務処理用のページが表示されているのを示す図である。２０１は、クライアントのモニター或いはディスプレイ装置に表示されるＷｅｂブラウザ１０１のウインドウである。２０２のエリアにウインドウタイトルが表示される。２０３および２０４のエリアにはＷｅｂブラウザ１０１が持つコマンドが表示されている。Ｗｅｂブラウザ１０１に表示されているイメージを印刷する為のコマンドもここにある。２０５は、アクセスするサーバのアドレス（ＵＲＬ：Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｉｏｎなど）を入力するテキストフィールドである。
【００３２】
２０６及び２０７は、ユーザが各項目を選択可能になっているフィールドである。２０８は表示ボタンである。この表示ボタンが押されると、２０６と２０７でユーザにより選択されている項目がサーバに送信され、サーバからの応答を待つことになる。すると、サーバは、２０６で選択された帳票名及び２０７で選択された人名に基づき帳票の表示データを生成し、それをクライアントに送信する。Ｗｅｂサーバは、その帳票表示データをもとに、２０９のような帳票のイメージを表示する。図２の場合では、サーバは、正岡子規さんの当月の勤務状況に関するデータを、データ格納部１０９を検索して取得し、そのデータをもとに帳票表示データ（ここでは、帳票のイメージを表示するＷｅｂドキュメント）を生成し、それをクライアントに送信する。すると、月次帳票がＷｅｂブラウザの２０９に表示される。さらに、２１０はこの帳票プリントシステムにおける印刷ボタンである。
【００３３】
クライアントからサーバの帳票のページを読み出す場合、Ｗｅｂブラウザ１０１が、クライアントで起動される。ユーザが、図２のように、ｈｔｔｐ：／／２０２．２２８．１０２と入力すると、欄２０６〜２１０を含むＷｅｂドキュメントがサーバからＷｅｂブラウザに送られる。
【００３４】
＜サーバによるプリントデータの生成と出力＞
印刷ボタン２１０が押された場合の動作を示す。印刷では、形式識別子に対応したプリント用帳票テンプレートにデータが挿入されて、印刷すべき文書が作成される。印刷ボタンが押されると、印刷ボタンが押されたことを示す情報がサーバに送信される。サーバでは、印刷を要求してきたクライアントに送信してあるＷｅｂドキュメント（帳票ページ）に付された識別子を基に、帳票テンプレート格納部１０８に格納されている帳票テンプレートを検索する。各帳票テンプレートは、形式識別子から検索できるように格納されている。
【００３５】
図４は、印刷に用いられる帳票テンプレートの一例である。帳票テンプレート中の図形データは、固定データと可変データ（帳票データ）に分類される。帳票タイトルの文字列４０１、枠および日にち等を示す数字４０２、文字列及び枠４０３は固定データである。また、エリア４０４及び４０５のｓ１、ｎ１〜ｎ１２、ｎ５０、ｎ５１には、データベース等より検索された値（帳票データ）が埋め込まれる。
【００３６】
一方、図５は、図４の図形データに埋め込まれるべき可変データのテーブルである。このテーブルは、各帳票テンプレートごとに用意されており、どの帳票テンプレートのものであるかがわかるように、帳票テンプレート識別子５０４が付されている。図５のテーブルでは、各可変データｓ１、ｎ１〜ｎ５１ごとに、その可変データのインデックス（５０１）、その可変データの表示する文字サイズ（５０２）、その可変データの実際の値（数列或いは文字列）（５０３）が格納されている。図４の帳票テンプレートと図５の各可変データの値とが、インデックスに基づいてマージされることにより、帳票プリントデータが作成される。
【００３７】
図６は、サーバが実際に帳票プリントデータを生成し、出力する処理を示すフローチャートである。この処理は、サーバが、印刷ボタン２１０が押されたことを示す情報をサーバが受信したことにより、サーバにおいて実行される。この処理は、ステップＳ６０１〜Ｓ６０４がデータ処理部１１０により、ステップＳ６０５〜Ｓ６０６は画像生成部１１１により、ステップＳ６０７はプリント出力部１１２により行われる。なお、図６の処理では、印刷は印刷装置１１３で行なわれる。
【００３８】
まず、ステップＳ６０１で、サーバが、ボタンが押されたことを受信すると、ステップＳ６０２において、使用される帳票テンプレートを検索する。使用される帳票テンプレートは、クライアントにすでに送信しているＷｅｂドキュメントの識別子が記憶されているため、それをもとに検索可能である。
【００３９】
ステップＳ６０３では、検索で検出された帳票テンプレート内に組み込まれるべき可変データの欄の位置を検知する。次に、ステップＳ６０４で、インデックスデータを作成する。すなわち、図５のテーブルにおける可変データの値を、そのインデックスに応じて、ステップＳ６０３で抽出した可変データの欄の位置に合わせるようにして記述する。こうして、可変データ部分を記述したインデックスデータができる。
【００４０】
次に、ステップＳ６０５において、画像生成部１１１が、ステップＳ６０２で得られた帳票テンプレートの固定データ部分と、ステップＳ６０４で作成したインデックスデータとをマージさせる。ステップＳ６０６では、画像生成部１１１が、ステップＳ６０５でマージされたデータから、実際の画像形式、すなわちプリント出力部１１２にて解釈可能な形式で記述された帳票印刷データを作成する。
【００４１】
ステップＳ６０７では、プリント出力部１１２が、ステップＳ６０６で作成した帳票印刷データを、プリンタで出力可能な例えばページ記述言語のプリントイメージに変換し、プリントスプールに出力する。こうして、帳票プリントデータに基づくプリントイメージが印刷装置１１３でプリント出力される。
【００４２】
＜サーバによるプリントデータの生成と転送＞
図７は、サーバが実際に帳票プリントデータを生成し、クライアントに送信する処理を示すフローチャートである。この処理は、サーバが、印刷ボタン２１０が押されたことを示す情報をサーバが受信したことにより、サーバにおいて実行される。この処理は、ステップＳ７０１〜Ｓ７０４がデータ処理部１１０により、ステップＳ７０５〜Ｓ７０６は画像生成部１１１により、ステップＳ７０７はネットワーク通信制御部１０６により行われる。なお、図７の処理では、印刷は印刷装置１０４で行なわれる。
【００４３】
まず、ステップＳ７０１で、サーバが、ボタンが押されたことを受信すると、ステップＳ７０２において、使用される帳票テンプレートを検索する。使用される帳票テンプレートは、クライアントにすでに送信しているＷｅｂドキュメントの識別子が記憶されているため、それをもとに検索可能である。
【００４４】
ステップＳ７０３では、検索で検出された帳票テンプレート内に組み込まれるべき可変データの欄の位置を検知する。次に、ステップＳ７０４で、インデックスデータを作成する。すなわち、図５のテーブルにおける可変データの値を、そのインデックスに応じて、ステップＳ７０３で抽出した可変データの欄の位置に合わせるようにして記述する。こうして、可変データ部分を記述したインデックスデータができる。
【００４５】
次に、ステップＳ７０５において、画像生成部１１１が、ステップＳ７０２で得られた帳票テンプレートの固定データ部分と、ステップＳ７０４で作成したインデックスデータとをマージさせる。ステップＳ７０６では、画像生成部１１１が、ステップＳ７０５でマージされたデータから、実際の画像形式、すなわちプリント出力部１１２にて解釈可能な形式で記述された帳票印刷データを作成する。
【００４６】
ステップＳ７０７では、ステップＳ７０６で作成した帳票プリントデータを、クライアントに対して送信する。なお、このステップでは、説明を簡単にするためにデータをクライアントに送信するとしているが、実際には作成された帳票プリントデータそのものをクライアントに送信せず、作成された帳票プリントデータのデータファイルのＵＲＬをクライアントに送る。クライアントでは、Ｗｅｂブラウザが受信したＵＲＬを用いて、自動的に、ＨＴＴＰでなくＦＴＰを利用してデータファイルの送信を要求し、サーバからデータファイルを受信する。
【００４７】
＜クライアントによるプリントデータの受信と出力＞
図８は、図７のステップＳ７０７でサーバにより送信された帳票印刷データを受信したクライアントによる処理を示すフローチャートである。
【００４８】
まず、ステップＳ８０１では、プリント出力部が、受信した帳票印刷データを解析し、受信した帳票印刷データに適したプリンタを見つける。図１ではプリンタは１台しかないため、プリンタ１０４が選ばれる。ステップＳ８０２では、プリント出力部１０３が、解析結果に基づいて、プリンタ１０４で出力可能なプリントイメージを生成する。それをステップＳ８０３でプリントスプールに格納する。すると、印刷装置１０４で順次出力させる。以上を、受信した帳票印刷データが全て解析され、プリントイメージに変換されるまで繰り返し行う。
【００４９】
以上の手順により、クライアントからＷｅｂブラウザを用いて出力データを指定し、適当な形式で印刷を行わせることができる。また、印刷用に作成された帳票テンプレートを用いて帳票を印刷することにより、表示された帳票を印刷する場合と異なり、Ｗｅｂブラウザを用いて作成した画像を、高品質の印刷物として出力可能である。また、サーバでもクライアントでも、いずれのプリンタからでも高品質の帳票を利用者の都合に応じて印刷させることができる。また、帳票テンプレートを保持するのはサーバのみであり、データとの合成もサーバで行っているため、クライアントは、市販のＷｅｂブラウザを用意しておきさえすれば、サーバから高品質の帳票を印刷できる。またこのためにクライアントの負荷が軽く、処理能力の低い安価なパーソナルコンピュータ或いはＷｅｂブラウザ機能だけを有する携帯情報端末を利用できる。
【００５０】
＜出力サーバメイキング＞
上記の帳票プリントシステムでは、サーバが帳票プリントデータの生成を行なっていたが、必要に応じて、サーバが、クライアントからの要求に応じて、必要な帳票フォームと帳票データとをクライアントサイトの出力サーバに送信し、その出力サーバが帳票プリントデータを生成することも可能である。これを、出力サーバメイキング機能と呼ぶ。
【００５１】
図９は、出力サーバメイキング機能を提要可能な帳票プリントシステムの機能構成図である。このプリントシステムでは、出力サーバ９００があらたに存在する。そして、出力サーバは、データ入出力部９０１、帳票テンプレート格納部９０２、データ格納部９０３、画像生成部９０４、プリント出力部９０５を有している。その他は、機能構成は図１と同じである。
【００５２】
データ入出力部９０１は、サーバに対してデータの入出力を行う。帳票テンプレート格納部９０２は、帳票プリントを行う為の帳票テンプレートを格納する。データ格納部９０３は、帳票プリントを行う為のデータを格納する。画像生成部９０４は、帳票プリントデータを決められた様式に従って作成する。プリント出力部９０５は、画像生成部９０４で作成されたデータをプリンタが出力できる形式に変換するものであり、一般にはプリンタドライバと呼ばれている。９１０はプリンタ等の印刷装置である。
【００５３】
図１０は、帳票テンプレートを示す図である。ここでは、図４の帳票テンプレートとは少し異なる帳票テンプレートを説明する。
【００５４】
１００１は帳票テンプレート全体をあらわす領域で、通常、印刷する際の用紙１ページ分に相当する。このような帳票テンプレートは、帳票テンプレート格納部１０８に格納されている。また、帳票テンプレートは、表の選択と連動して、どの帳票テンプレートが使われるかが決定される。
【００５５】
図１０において、帳票テンプレート上の図形データは、固定の図形と可変データ（帳票データ）に分類される。１００２で示される枠線および日付等を示す数字、および１００３で示される文字列は固定のデータであり、印刷時は常に同じ図形となる。
【００５６】
１００４で示されるＮ１、Ｎ２、ｎａｍｅ、Ｘ１及びＹ１などで示される個所は可変データである。可変データはそれぞれ名称Ｎ１、Ｎ２、ｎａｍｅ、Ｘ１、Ｙ１等を持ち（この名称を可変データのインデックスという）、それぞれの個所には、データ格納部１０９より検索されたデータ値や、データ処理部１１０で加工されたデータ値が挿入される。
【００５７】
１００５で示される領域はｉｍａｇｅとタグ付けされているが、その領域にはイメージデータが挿入されることを示している。
【００５８】
図１１は、挿入される可変データのインデックスとそのデータ値が格納されたテーブルを示す図である。このテーブルには、各可変データごとに、その可変データの帳票テンプレート１００１上の名称（インデックス）１１０１と、その可変データの帳票テンプレート１００１上の対応する箇所に挿入されるデータ値１１０２が格納されている。図１１で示される組は、データ処理部１１０が、業務処理用のデータベースなどを参照しながら作成する。
【００５９】
図１０の帳票テンプレートに示す図形データに対し、図１１のテーブルを参照して、それぞれのインデックスに対応するデータ値をマージすることにより、帳票プリントデータが作成されることになる。また、図１１では、この帳票画像作成においてはＣＡ．ｊｐｇという名称で検索可能なイメージデータが使われることが示されている。
【００６０】
図１２は、図１０の帳票テンプレートに図１１の可変データが挿入された後の帳票プリントデータを示す。１２０１にはＣＡ．ｊｐｇという名称で検索されたイメージデータが挿入されている。
【００６１】
図１３は、サーバ１０６から出力サーバ９００へ送付されるデータの例を示す図である。左側のデータＡは、ＣＡ．ｊｐｇという名称で検索可能なイメージデータがサーバ１０６上で検索可能であった場合のもので、転送されるデータ中に帳票テンプレートデータとイメージデータの内容がすべて添付されている。右側のデータＢは、ＣＡ．ｊｐｇという名称で検索可能なイメージデータがサーバ１０６上で検索されず、転送されるデータ中にイメージデータの内容が添付されておらず、帳票テンプレートデータだけが添付されている。
【００６２】
＜出力サーバメイキングにおけるサーバの処理＞
図１４は、クライアントからの印刷要求を受けたサーバが、出力サーバに転送するデータを生成して、それを出力サーバに送信する処理を示すフローチャートである。なお、このフローチャートは、図２の印刷ボタン２１０が押下された際に実行される。
【００６３】
まず、ステップＳ１４０１では、印刷ボタンが押されたという通知を受信する。そのため、Ｗｅｂブラウザ１０１から受信した要求（ＨＴＴＰリクエスト）を解析する。次に、ステップＳ１４０２において、クライアントが要求している帳票プリントデータの生成に必要な帳票がどれであるかを判定し、その帳票の帳票フォームを特定する。
【００６４】
そして、ステップＳ１４０３では、帳票テンプレートデータを検索して読み込み、可変データのパターンを認識する。さらに、ステップＳ１４０４で、図１１のテーブルを参照して、各インデックスとデータ値を抽出し、インデックスにデータ値を付加してインデックスデータを生成する。
【００６５】
そして、ステップＳ１４０４で生成したインデックスデータと帳票テンプレートデータとを合成して、図１３のデータＢのようなデータを生成し、出力サーバに送信する。或いは、サーバでイメージデータが検索可能であった場合には、さらにイメージデータをも合成して、図１３のデータＡのようなデータを生成し、出力サーバに送信する。
【００６６】
＜出力サーバメイキングにおける出力サーバの処理＞
図１５は、サーバからデータを受信した出力サーバが、帳票プリントデータを生成して、プリントに印刷させる処理を示すフローチャートである。
【００６７】
ステップＳ１５０１で、サーバからのデータを受信すると、そのデータからインデックスデータや帳票テンプレートデータを抽出する。そして、ステップＳ１５０２で、抽出されたデータの内容を確認して、サーバから送られこなかった不足データがあるかどうかを調査する。
【００６８】
ステップＳ１５０３では、ステップＳ１５０２の調査結果がＹＥＳの場合、つまり、不足データがある場合には、ステップＳ１５０４で、不足データを出力サーバで検索し、不足データを獲得する。例えば、図１３のデータＢのようなデータがサーバから受信したときには、ＣＡ．ｊｐｇというイメージデータが不足すると判断して、ステップＳ１５０４でＣＡ．ｊｐｇという名称を用いてデータを検索する。
【００６９】
ステップＳ１５０５では、帳票テンプレートへインデックスデータおよび検索されたイメージデータを挿入し、ステップＳ１５０６で、最終的な帳票プリントデータを作成する。ステップＳ１５０７では、帳票プリントデータをプリンタに適したデータに変換して、変換後のデータをプリンタに出力させる。
【００７０】
なお、図９では、出力サーバを一つとしたが、出力サーバが複数あってもよい。図１６は、出力サーバが２台ある場合の例を示す図である。図では、出力サーバ９００Ａと出力サーバ９００Ｂとがあり、サーバ１０６は、それらの出力サーバのうちいずれかを選択して、データを転送する。出力サーバ９００Ａと出力サーバ９００Ｂはそれぞれ、データ格納部９０３Ａとデータ格納部９０３Ｂを備えている。
【００７１】
図１７は、図１６のデータ格納部９０３Ａとデータ格納部９０３Ｂにおけるデータの格納方法を示す図である。１７０１は出力サーバ９００Ａのデータ格納部９０３Ａに格納されているデータの例を示す。１７０２は、格納されているデータを検索するときに利用するインデックスである。１７０３はインデックスにそれぞれ対応する値であり、本例では出力サーバ内のファイルシステムにおけるデータの位置を示すファイル名である。同様に、１７１１は出力サーバ９００Ａのデータ格納部９０３Ａに格納されているデータの例を示す。１７１２は、格納されているデータを検索するときに利用するインデックスである。１７１３はインデックスにそれぞれ対応する値であり、本例では出力サーバ内のファイルシステムにおけるデータの位置を示すファイル名である。なお、図１７では、出力サーバ９００ＡにはインデックスＣＡ．ｊｐｇで示されるデータが存在せず、出力サーバ９００Ｂには、インデックスＣＡ．ｊｐｇで示されるデータが存在することがしめされている。これらの情報は、出力サーバが起動時から前回の要求までの処理の間で蓄積することができる。また、出力サーバに直接設定しても実現できる。
【００７２】
図１８は、ステップＳ１５０４の不足データを獲得する処理を詳細に示すフローチャートである。また、フローチャートの動作は、出力サーバ上で動作するプログラムによって実施される。
【００７３】
まず、ステップＳ１８０１では、出力対象とされた出力サーバ上で不足データを検索する。そして、ステップＳ１８０２で、検索の結果に基づいて、データが発見されたかどうかを判断する。たとえば、不足しているデータのインデックスがＣＡ．ｊｐｇで、出力サーバのデータ格納部の情報が図１７の１７０１のような状態であるとすると、インデックス群はＡ．ｊｐｇ、Ｂ．ｊｐｇ、Ｃ．ｊｐｇだけであるので、該当するデータが見つからないことになる。また、たとえば、不足しているデータのインデックスがＣＡ．ｊｐｇで、データ格納部の情報が図１７の１７０２であるとすると、インデックス群はにＣＡ．ｊｐｇがあるので、該当するデータが見つかることになる。
【００７４】
データが発見された場合はステップＳ１８０３にすすみ、発見されなかった場合はステップＳ１８０４に進む。ステップＳ１８０３では、発見されたデータを帳票画像作成に利用するために、データを取得する。
【００７５】
ステップＳ１８０４では、不足データに該当するデータが他の出力サーバから取得するべく、ネットワークでアクセス可能な他の出力サーバが存在するかどうかを検索する。検索には、ブロードキャストのような一般的なネットワーク検索方法を利用すれば良い。ステップＳ１８０５では、の検索の結果に基づいて、他の出力サーバが発見されたかどうかを判定する。利用可能なサーバが存在する場合は、ステップＳ１８０７に進み、利用可能なサーバが存在しない場合はステップＳ１８０６に進む。
【００７６】
ステップＳ１８０７では、発見された他の出力サーバを利用して不足データを検索する。検索は、出力サーバ９００Ａのデータ入出力部と出力サーバ９００Ｂのデータ入出力部とがお互いに通信しあうことで行なわれる。例えば、出力サーバ９００Ａが出力サーバ９００Ｂに不足データの検索要求を出すと、出力サーバ９００Ｂが実際の検索を実施し、その検索結果をネットワークを通じて出力サーバ９００Ａに送信する。
【００７７】
ステップＳ１８０８では、あらためて不足データが発見されたかどうかが判定される。発見された場合は、ステップＳ１８０３でそのデータを取得する。発見できなかった場合は、さらに他の出力サーバを検索して不足データを発見するためにステップＳ１８０４に戻る。ただし、既に該不足データが存在しないことが判明している出力サーバは除外する。
【００７８】
ステップＳ１８０６では、、最終的に検索すべき出力サーバが無くなったことを意味し、不足データが発見できなかったとする。この場合、作成される帳票にデータを挿入しない、もしくはエラーとしてまったく画像を生成しないことになる。
【００７９】
＜プログラムコードと記録媒体＞
なお、本発明に係るプログラムコード及び関連データは、フロッピー（登録商標）ディスク（ＦＤ）やＣＤ−ＲＯＭ中に記憶され、そこからコンピュータに供給される。図１９は、本発明に係るプログラムがメモリ３０３にロードされ、ＣＰＵ３０２により実行可能となった状態でのメモリマップを示す図である。図６〜８、１４、１５、１８のフローチャートそれぞれに対応するプログラムコードが記憶されている。
【００８０】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウエア（制御プログラム）のプログラムコードを記録した記憶媒体（図１９）を、図２０に示すようにコンピュータに供給し、そのコンピュータの装置（ＣＰＵ３０２）が記憶媒体に格納されたプログラムコードを読出し実行することによって達成される。
【００８１】
図１９に示すプログラムやデータをコンピュータに供給する方法として図２０に示すようにフロッピー（登録商標）ディスクＦＤ２００００に記憶させてコンピュータ本体２００２に（フロッピー（登録商標）ディスクドライブ２００１を介して）供給する方法が一般的である。この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００８２】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスクやハードディスク以外にも、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００８３】
【図１】帳票プリントシステムの機能構成図である。
【図２】一般的なＷｅｂブラウザにおいて、業務処理用のページが表示されているのを示す図である。
【図３】クライアント及びサーバの構成を示すハードウエア構成図である。
【図４】印刷に用いられる帳票テンプレートの一例である。
【図５】図形データに埋め込まれるべき可変データのテーブルである。
【図６】サーバが実際に帳票プリントデータを生成し、出力する処理を示すフローチャートである。
【図７】サーバが実際に帳票プリントデータを生成し、クライアントに送信する処理を示すフローチャートである。
【図８】サーバにより送信された帳票印刷データを受信したクライアントによる処理を示すフローチャートである。
【図９】出力サーバメイキング機能を提要可能な帳票プリントシステムの機能構成図である。
【図１０】帳票テンプレートを示す図である。
【図１１】挿入される可変データのインデックスとそのデータ値が格納されたテーブルを示す図である。
【図１２】帳票テンプレートに可変データが挿入された後の帳票プリントデータを示す図である。
【図１３】サーバ１０６から出力サーバ９００へ送付されるデータの例を示す図である。
【図１４】クライアントからの印刷要求を受けたサーバが、出力サーバに転送するデータを生成して、それを出力サーバに送信する処理を示すフローチャートである。
【図１５】図１５は、サーバからデータを受信した出力サーバが、帳票プリントデータを生成して、プリントに印刷させる処理を示すフローチャートである。
【図１６】出力サーバが２台ある場合の例を示す図である。
【図１７】図１６のデータ格納部９０３Ａとデータ格納部９０３Ｂにおけるデータの格納方法を示す図である。
【図１８】不足データを獲得する処理を詳細に示すフローチャートである。
【図１９】プログラムがメモリにロードされ、ＣＰＵにより実行可能となった状態でのメモリマップを示す図である。
【図２０】プログラムやデータをコンピュータに供給する方法を示す図である。
【符号の説明】
【００８４】
１００  プリントシステムのクライアント
１０１  Ｗｅｂブラウザ
１０２  データ入出力部
１０３  プリント出力部
１０４  プリンタ
１０５  ネットワーク
１０６  プリントシステムのサーバ
１０７  ネットワーク通信制御部
１０８  帳票テンプレート格納部
１０９  データ格納部
１１０  データ処理部
１１１  画像生成部
１１２  プリント出力部
１１３  プリンタ
３０１  キーボード
３０２  ＣＰＵ
３０３  メモリ
３０４  ディスプレイ
３０５  外部メモリ
３０６  Ｉ／Ｏインターフェース
【図１】
2007058883.tif 000003
【図２】
2007058883.tif 000004
【図３】
2007058883.tif 000005
【図４】
2007058883.tif 000006
【図５】
2007058883.tif 000007
【図６】
2007058883.tif 000008
【図７】
2007058883.tif 000009
【図８】
2007058883.tif 000010
【図９】
2007058883.tif 000011
【図１０】
2007058883.tif 000012
【図１１】
2007058883.tif 000013
【図１２】
2007058883.tif 000014
【図１３】
2007058883.tif 000015
【図１４】
2007058883.tif 000016
【図１５】
2007058883.tif 000017
【図１６】
2007058883.tif 000018
【図１７】
2007058883.tif 000019
【図１８】
2007058883.tif 000020
【図１９】
2007058883.tif 000021
【図２０】
2007058883.tif 000022