(57)【特許請求の範囲】
【請求項１】
ＯＳカーネル層のオペレーティングシステムによって動作しアプリケーション層に備えられるアプリケーションによって所定の処理を実行する、２以上の通信ポートを有するコンピューターにおいて、前記アプリケーションから出力されるデバイス向けデータの分散処理を実行させる分散処理方法であって、
前記分散処理方法が、
前記ＯＳカーネル層で、前記アプリケーション層から所定の１の前記通信ポートへ出力される前記デバイス向けデータを、当該通信ポートが受け取る前に取得するデータ取得工程と、
前記ＯＳカーネル層で、前記データ取得工程で取得した前記デバイス向けデータを前記アプリケーション層に送付するデータ送付工程と、
前記アプリケーション層で、前記データ取得工程で取得され、前記データ送付工程で送付された前記デバイス向けデータを解析し、当該解析の結果に基づいて、当該デバイス向けデータを出力するデバイスを決定し、当該決定したデバイスが接続される通信ポートにデバイス向けデータを出力するデータ処理工程と、を有する
ことを特徴とする分散処理方法。
【請求項２】
請求項１において、
前記接続されるデバイスは、印刷装置及び表示装置であり、
前記アプリケーションから出力されるデバイス向けデータは、印刷装置向けデータ又は表示装置向けデータである
ことを特徴とする分散処理方法。
【請求項３】
請求項１あるいは２において、
前記接続されるデバイスの数が２であり、前記アプリケーションから出力されるデバイス向けデータにデバイス切替信号が含まれる場合には、当該切替信号に基づいて前記出力するデバイスが決定される
ことを特徴とする分散処理方法。
【請求項４】
ＯＳカーネル層のオペレーティングシステムによって動作しアプリケーション層に備えられるアプリケーションによって所定の処理を実行する、２以上の通信ポートを有するコンピューターで構成され、前記アプリケーションから出力されるデバイス向けデータの分散処理を実行する分散処理装置であって、
前記ＯＳカーネル層で、前記アプリケーション層から所定の１の前記通信ポートへ出力される前記デバイス向けデータを、当該通信ポートが受け取る前に取得するデータ取得部と、
前記ＯＳカーネル層で、前記データ取得部で取得した前記デバイス向けデータを前記アプリケーション層に送付するデータ送付部と、
前記アプリケーション層で、前記データ取得部で取得され、前記データ送付部で送付された前記デバイス向けデータを解析し、当該解析の結果に基づいて、当該デバイス向けデータを出力するデバイスを決定し、当該決定したデバイスが接続される通信ポートにデバイス向けデータを出力するデータ処理部と、を有する
ことを特徴とする分散処理装置。
【請求項５】
請求項４において、
前記接続されるデバイスは、印刷装置及び表示装置であり、
前記アプリケーションから出力されるデバイス向けデータは、印刷装置向けデータ又は表示装置向けデータである
ことを特徴とする分散処理装置。
【請求項６】
請求項４あるいは５において、
前記接続されるデバイスの数が２であり、前記アプリケーションから出力されるデバイス向けデータにデバイス切替信号が含まれる場合には、当該切替信号に基づいて前記出力するデバイスが決定される
ことを特徴とする分散処理装置。
【請求項７】
コンピューターに、請求項１乃至３のいずれか１項に記載の分散処理方法における各工程を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、既存アプリケーションから各デバイス向けに出力されるデータを処理するプログラム等に関し、特に、既存アプリケーションのプログラムを変更することなしに、容易に各デバイスへのデータ分散処理を行うことのできる分散処理プログラム等に関する。
【背景技術】
【０００２】
スーパーマーケットなどの小売販売業においては販売管理システムであるＰＯＳシステムが普及しており、当該システムでは、サーバーとネットワークで接続される複数の端末装置（レジ）が当該装置に備えられるアプリケーションに従って動作し各種の処理を実行する。また、通常、当該端末装置には、それぞれ、プリンターやディスプレイが設けられ、上記アプリケーションの指示によりレシート、クーポン等の出力、ユーザーへの情報表示を実行する。また、このような出力を伴うＰＯＳシステムと類似した構成のシステムとしては、病院で用いられるシステム、運送会社で用いられるシステムなどがある。
【０００３】
このようなシステムにおいても、導入後の技術向上や業務改善要望に伴って、機能拡張、装置のリプレースの必要が出てくるが、かかるシステムは一般に業務の中枢として常時利用されているものであり、また、他のシステムとも複雑に連携している場合も多いため、そのアプリケーション等を改変することは通常容易ではない。
【０００４】
かかる課題については、出力処理系の機能に関し、従来、以下のような提案がなされている。
【０００５】
下記特許文献１では、すでに存在するアプリケーションプログラムを修正する必要なしに、従来のモデムに必要とされていたマイクロプロセッサおよびメモリを除去することが可能なパーソナルコンピュータ中でモデム機能を実行する装置について記載されている。
【０００６】
また、下記特許文献２には、アプリケーションを変更することなく、１つの通信ポートにアクセスすることにより、他の通信ポートに接続されているプリンターへも同時に印刷を実行させることができ、複製印刷を可能にする装置について記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平８−６９４２７号公報
【特許文献２】特開２００６−３３８４４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記特許文献１及び２に記載の内容では、モデム機能、複製印刷機能など出力系の限られた機能を実現するに留まり、他の多彩な要望を実現することはできない。また、上記特許文献２では、ＯＳカーネル層での処理であるため、一般に機能構築（プログラム開発等）が容易ではなく機能も限られてしまうという課題がある。
【０００９】
そして、プリンター機能の向上により、プリンターの増設や交換を伴う出力系の機能拡張、例えば、用途に応じたプリンターの使い分け等、が望まれている。
【００１０】
また、既存の装置では、一つの通信ポートにプリンターとディスプレイが接続され、両
デバイスを切り替えて用いるものもあるが、このような装置をリプレースして各デバイスを異なる通信ポートに接続する場合にも、既存アプリケーションプログラムを変更することなく容易にシステムの移行を行いたいというニーズもある。
【００１１】
そこで、本発明の目的は、既存アプリケーションから各デバイス向けに出力されるデータを処理するプログラムであって、既存アプリケーションのプログラムを変更することなしに、容易に各デバイスへのデータ分散処理を行うことのできる分散処理プログラム、等を提供することである。
【課題を解決するための手段】
【００１２】
上記の目的を達成するために、本発明の一つの側面は、ＯＳカーネル層のオペレーティングシステムによって動作しアプリケーション層に備えられるアプリケーションによって所定の処理を実行する、２以上の通信ポートを有するコンピューターにおいて、前記アプリケーションから出力されるデバイス向けデータの分散処理を実行させる分散処理方法であって、前記分散処理方法が、前記ＯＳカーネル層で、前記アプリケーション層から所定の１の前記通信ポートへ出力される前記デバイス向けデータを、当該通信ポートが受け取る前に取得するデータ取得工程と、前記ＯＳカーネル層で、前記データ取得工程で取得した前記デバイス向けデータを前記アプリケーション層に送付するデータ送付工程と、前記アプリケーション層で、前記データ取得工程で取得され、前記データ送付工程で送付された前記デバイス向けデータを解析し、当該解析の結果に基づいて、当該デバイス向けデータを出力するデバイスを決定し、当該決定したデバイスが接続される通信ポートにデバイス向けデータを出力するデータ処理工程と、を有する、ことである。
【００１３】
更に、上記の発明において、一つの態様は、前記接続されるデバイスは、印刷装置及び表示装置であり、前記アプリケーションから出力されるデバイス向けデータは、印刷装置向けデータ又は表示装置向けデータである、ことを特徴とする。
【００１４】
更に、上記の発明において、一つの態様は、前記接続されるデバイスの数が２であり、前記アプリケーションから出力されるデバイス向けデータにデバイス切替信号が含まれる場合には、当該切替信号に基づいて前記出力するデバイスが決定される、ことを特徴とする。
【００１５】
上記の目的を達成するために、本発明の別の側面は、ＯＳカーネル層のオペレーティングシステムによって動作しアプリケーション層に備えられるアプリケーションによって所定の処理を実行する、２以上の通信ポートを有するコンピューターで構成され、前記アプリケーションから出力されるデバイス向けデータの分散処理を実行する分散処理装置であって、前記ＯＳカーネル層で、前記アプリケーション層から所定の１の前記通信ポートへ出力される前記デバイス向けデータを、当該通信ポートが受け取る前に取得するデータ取得部と、前記ＯＳカーネル層で、前記データ取得部で取得した前記デバイス向けデータを前記アプリケーション層に送付するデータ送付部と、前記アプリケーション層で、前記データ取得部で取得され、前記データ送付部で送付された前記デバイス向けデータを解析し、当該解析の結果に基づいて、当該デバイス向けデータを出力するデバイスを決定し、当該決定したデバイスが接続される通信ポートにデバイス向けデータを出力するデータ処理部と、を有する、ことである。
【００１６】
上記の目的を達成するために、本発明の更に別の側面は、コンピューターに、上記に記載の分散処理方法における各工程を実行させるためのプログラムである。
【００１７】
本発明の更なる目的及び、特徴は、以下に説明する発明の実施の形態から明らかになる。
【図面の簡単な説明】
【００１８】
【図１】本発明を適用したＰＯＳ端末装置の実施の形態例に係る概略構成図である。
【図２】ＰＯＳ端末装置の概略機能構成図である。
【図３】出力先分散処理の処理手順を例示したフローチャートである。
【図４】ＰＯＳシステムの改良を説明するための図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照して本発明の実施の形態例を説明する。しかしながら、かかる実施の形態例が、本発明の技術的範囲を限定するものではない。なお、図において、同一又は類似のものには同一の参照番号又は参照記号を付して説明する。
【００２０】
図１は、本発明を適用したＰＯＳ端末装置の実施の形態例に係る概略構成図である。また、図２は、当該ＰＯＳ端末装置の概略機能構成図である。図１及び図２に示すＰＯＳ端末装置２が本発明を適用した装置であり、当該装置では、ＰＯＳアプリケーション２０１から出力されるデバイス向けのデータをＯＳカーネル層２３０の仮想ポート２０３（データ取得部）で取得する。そして、取得したデータをアプリケーション層２２０のポートハンドラー２０４で受け取り、そのデータの解析結果に基づいて所定の出力先を決定する。その後、ポートハンドラー２０４から決定された通信ポート２０９へ処理後のデータを出力する。本ＰＯＳ端末装置２は、かかる処理を実行することにより、ＰＯＳアプリケーション２０１のプログラムを変更することなく、デバイス向けデータの分散処理を容易に実現するものである。
【００２１】
本実施の形態例では、スーパーマーケットなどで用いられるＰＯＳシステムを想定しており、図１に示すように、ＰＯＳサーバー１にネットワーク４を介して複数のＰＯＳ端末装置２が接続される構成をしている。ＰＯＳサーバー１は、コンピューターシステムで構成され、上記複数のＰＯＳ端末装置２の管理とそれらのＰＯＳ端末装置２から取得される各種データの集計、管理等の処理を実行する。
【００２２】
ＰＯＳ端末装置２は各レジに設置され、それぞれ、プリンター３と接続される。プリンター３は、ＰＯＳ端末装置２から出力されるデバイス向けデータのうちの印刷データに従って、レシートやクーポンを出力する。従って、ＰＯＳ端末装置２はプリンター３のホスト装置と位置づけられる。
【００２３】
また、ＰＯＳ端末装置２には、ディスプレイ５が接続され、当該ディスプレイ５では、ＰＯＳ端末装置２から出力されるデバイス向けデータのうちの表示データに従って、顧客に示す商品の金額等が表示される。
【００２４】
各ＰＯＳ端末装置２は、図１に示すように、ＰＯＳ端末本体２１、キーボード２３、バーコードリーダー２４、及びカードリーダー２５等を備える。キーボード２３は、価格や商品コードなどの商品情報、性別、年代などの顧客情報をオペレーターが入力するために用いられる。また、バーコードリーダー２４は、商品に付されたバーコードを読み取って商品情報を取得し、カードリーダー２５は、各種カードに記憶された情報を読み取って、清算に必要な情報などを取得する。
【００２５】
ＰＯＳ端末本体２１は、上述したキーボード２３、バーコードリーダー２４、及びカー
ドリーダー２５から取得される情報に基づいて、レシートやクーポンに印刷する情報を生成して、プリンター３へ出力したり、ディスプレイ５に表示する情報を生成して出力する。当該ＰＯＳ端末本体２１は、コンピューターで構成され、図示していないが、ＣＰＵ、ＲＡＭ、ＲＯＭ、ＨＤＤなどを備えている。後述するＰＯＳアプリケーション２０１のプログラムや上記分散処理のためのプログラムは、ＲＯＭに記憶され、それらのプログラムに従ってＣＰＵが動作することにより各処理が実行される。
【００２６】
また、ＰＯＳ端末装置２は、図２に示すような機能構成となっている。ＰＯＳアプリケーション２０１は、上述したレシートやクーポンに印刷する情報、ディスプレイ５に表示する情報を生成してそれらを出力させる処理を行うが、ここで生成されるデータは出力先の分散処理を行う前の元データである。また、生成される印刷データは、そのままプリンター３Ａへ出力できる形式の、すなわち、プリンター３Ａの機種（デバイス）に依存したコマンドの、印刷データ、あるいは、プリンター３Ａ用ドライバー２０２に渡す形式のデータである。前者は、テキストだけの印刷など簡単な印刷データの場合に生成される。また、表示データもそのままディスプレイ５に出力される形式のデータである。
【００２７】
また、プリンター３Ａ用ドライバー２０２は、プリンター３Ａ用のプリンタードライバーであり、ＰＯＳアプリケーション２０１から出力されたデータを、プリンター３Ａの機種（デバイス）に依存したコマンドによる、プリンター３Ａが受信して印刷可能な印刷データとして出力する。
【００２８】
なお、ＰＯＳアプリケーション２０１とプリンター３Ａ用ドライバー２０２は、図２に示すように、コンピューターのオペレーティングシステム（ＯＳ）に基づきその上でプログラムが各処理を実行するアプリケーション層２２０に位置する。また、両者は、それぞれの処理内容を指示する上記ＲＯＭに格納されたプログラムと当該プログラムに従って処理を実行する上記ＣＰＵ等によって構成される。また、両者は、本発明によって新たに追加、改良される部分ではなく、従来装置のものがそのまま用いられる。
【００２９】
次に、仮想ポート２０３は、ＰＯＳアプリケーション２０１又はプリンター３Ａ用ドライバー２０２から出力された印刷データ又は表示データ（ここでは、元データと呼ぶ）を、通信ポート２０９が受け取る前に上記オペレーティングシステムが位置するＯＳカーネル層２３０で受け取る部分である。そして、仮想ポート２０３は、取得した元データをポートハンドラー２０４へ引き渡す。
【００３０】
次に、ポートハンドラー２０４、データ解析部２０５、データ加工部２０６、コマンド変換部２０７、及びデータ格納部２０８は、元データを用いて出力先分散処理を実行するデータ処理部であり、これら各部の処理により、上記ＰＯＳアプリケーション２０１の機能は拡張され得る。
【００３１】
ポートハンドラー２０４は、上記仮想ポート２０３から引き渡された元データをデータ解析部２０５に転送すると共に、出力先分散処理後のデータ（ここでは、処理後データと呼ぶ）を受け取って、当該データに対応した通信ポート２０９へ処理後データを出力する処理を行う。
【００３２】
データ解析部２０５は、元データを解析して処理内容を決定すると共に、処理後データを出力する通信ポート２０９を決定する部分である。
【００３３】
データ加工部２０６は、データ解析部２０５が決定した処理内容に従って、元データを加工する部分である。
【００３４】
また、コマンド変換部２０７は、元データで指定されていた通信ポート２０９に接続されたプリンター３と、処理後データが出力される通信ポート２０９に接続されたプリンター３とで使用コマンドが異なる場合に、コマンドを変更する処理を行う部分である。
【００３５】
データ格納部２０８は、上記データ解析部２０５及びデータ加工部２０６が使用する各種データを記憶する部分である。ここには、キーワードデータベースとプリンターデータベースが格納されており、前者には、キーワードとなる各文字列又は各イメージと、それらに対応する処理内容等が対応付けて収められ、後者には、各プリンター３の使用コマンド、印刷設定の情報、接続される通信ポート２０９の情報等が収められている。なお、当該データ格納部２０８は上記ＨＤＤ等で構成される。
【００３６】
以上説明したデータ処理部における処理の具体的な手順については後述する。
【００３７】
なお、仮想ポート２０３、ポートハンドラー２０４、データ解析部２０５、データ加工部２０６、及び、コマンド変換部２０７は、それぞれ、各部が行う処理を指示するプログラムと当該プログラムに従って処理を実行する上記ＣＰＵ等によって構成される。また、これらの部分に係るプログラムが本発明の分散処理プログラムに相当する。
【００３８】
次に、ＰＯＳ端末装置２には、物理層２４０に通信ポート２０９Ａ及び２０９Ｂが備えられ、それぞれ、プリンター３Ａ又はディスプレイ５と、プリンター３Ｂに接続される。ここでは、一例として、通信ポート２０９Ａは、シリアル通信のＣＯＭ通信ポートであり、通信ポート２０９Ｂは、ＵＳＢ通信を行うＵＳＢ通信ポートである。また、プリンター３については、一例として、プリンター３Ａがモノクロプリンターであり、プリンター３Ｂがカラープリンターである。なお、ここでは、２つ通信ポート２０９が備えられ、２つのプリンター３がＰＯＳ端末装置２に接続されるが、接続される通信ポート２０９及びプリンター３の数はこれに限定されることはなく３以上でもよい。また、通信ポート２０９の種類も、両方をＵＳＢ通信ポートとするなど、他の構成とすることができる。また、プリンター３の種類に関しても、ＳＩＤＭプリンターとレーザープリンターの組合せ、あるいは、ＳＩＤＭプリンターとＴＭプリンターの組合せにするなど、用途に応じ他の構成とすることができる。
【００３９】
以上説明したような構成を有する本ＰＯＳ端末装置２では、元データを用いた出力先分散処理に特徴があり、以下、その具体的な処理手順について説明する。図３は、当該出力先分散処理の処理手順を例示したフローチャートである。なお、ここでは、プリンター３Ａ及び３Ｂが設けられ、デバイス向けデータが印刷データである場合について説明する。
【００４０】
まず、前述の通り、ＰＯＳアプリケーション２０１から直接、又は、プリンター３Ａ用ドライバー２０２を介して、元データが出力される（ステップＳ１）。例えば、当該元データは、プリンター３Ａから出力することを想定しているレシートの印刷データであり、従って、出力先の通信ポートには通信ポート２０９Ａが指定され、プリンター３Ａに依存したコマンドで表現されている。
【００４１】
次に、出力された元データは、指定された通信ポートに（ここでは、通信ポート２０９Ａに）届く前に仮想ポート２０３によって受け取られる（ステップＳ２）。かかる処理は、いずれの通信ポート２０９へ向けたデータも、まず、仮想ポート２０３が受け取るように、レジストリーの（優先度の）設定を変更しておくことで実現され、かかる設定変更はＯＳの起動時に実行される。その後、受け取られた元データは、仮想ポート２０３からアプリケーション層２２０のポートハンドラー２０４に送付される（ステップＳ２）。
【００４２】
次に、ポートハンドラー２０４は、送付された元データを、データ解析部２０５に転送
する（ステップＳ３）。データ解析部２０５では、元データのコマンドを解釈し、当該データの内容を解析する（ステップＳ４）。そして、解析結果から、処理内容及び出力先通信ポート２０９を決定する。
【００４３】
具体的には、データ解析部２０５は、元データの中から上記データ格納部２０８に記憶されるキーワードを検出して、そのキーワードに対応付けられている処理内容を実施すると決定し、当該処理に応じた出力先の通信ポート２０９を決定する。当該処理は、出力先を分散する処理であり、その処理内容としては、元データの印刷内容を複数に分割し、それらを、それぞれの内容に相応しい出力先へ出力する処理（分割処理）、元データの印刷内容を複数の出力先へ出力する処理（複製処理）、及び、印刷データの出力先を変更する処理（振分処理）等があり、これらの中から所定の内容が上記キーワードに対して予め定められている。なお、より具体的な処理内容の例については後述する。
【００４４】
当該データ解析部２０５で決定された上記出力先通信ポート２０９は、ポートハンドラー２０４に通知され、また、決定された上記処理内容は、データ加工部２０６に通知される。なお、元データに関わらず処理内容及び出力先が固定の場合には、当該データ解析部２０５は必要なく、元データはポートハンドラー２０４からデータ加工部２０６に引き渡される。
【００４５】
次に、データ加工部２０６が元データに対するデータ加工処理を実行する（ステップＳ５）。具体的には、上記決定された処理内容に従って印刷データの加工を実行し、処理後印刷データを生成する。主な処理としては、上述した印刷内容の分割、出力先の仕様に合ったデータへの改変などが行われる。具体的な処理例については後述する。なお、かかる加工処理においても、上述したプリンターデータベースの情報など、必要に応じてデータ格納部２０８のデータが参照される。
【００４６】
また、当該データ加工部２０６は、複数の処理内容がある場合には、各処理内容に対応した複数の加工部から構成されてもよい。また、上記データ解析部２０５の判断が、処理（データ加工）を行わないというものである場合には、当該データ加工部２０６は加工処理を実行しない。
【００４７】
次に、データ加工部２０６で生成された上記処理後印刷データについてコマンドの変更を必要とする場合には、コマンド変換部２０７がコマンドの変換処理を実行する（ステップＳ６）。前述のとおり、印刷データは出力先のプリンター３に依存したコマンドで表現されているので、元データのコマンドと、上記決定された出力先のプリンター３のコマンドが異なる場合には、当該出力先に適したコマンドに変換する。本実施例では、元データがプリンター３Ａ用のコマンドで表現されているので、出力先がプリンター３Ｂ（機種がプリンター３Ａと異なる）に変更される場合には当該コマンド変換処理を実行する。処理後のデータはポートハンドラー２０４へ引き渡される。なお、コマンド変換を必要としない場合には、データ加工部２０６から転送された印刷データがポートハンドラー２０４へ引き渡される。
【００４８】
次に、ポートハンドラー２０４は、引き渡された処理後印刷データを上記決定された通信ポート２０９へ出力する（ステップＳ７）。本実施例では、通信ポート２０９Ａ及び／又は通信ポート２０９Ｂへ出力される。
【００４９】
その後、印刷データが通信ポート２０９から接続されるプリンター３へ送信され、プリンター３において当該印刷データによる印刷が実行され、レシートなどの印刷物が出力される（ステップＳ８）。例えば、プリンター３Ａから出力されればモノクロの印刷物が得られ、プリンター３Ｂから出力されればカラーの印刷物が得られる。
【００５０】
以上説明したような手順で、本ＰＯＳ端末装置２における出力先分散処理が実行されるが、以下に、出力先分散処理の具体例を説明する。
【００５１】
まず、上述した分割処理の具体例について説明する。例えば、当該ＰＯＳシステムがレストランに設置され、料理内容により厨房が異なる場所にあり、各厨房にプリンター３が設けられているケースを想定する。この場合に、注文票を出力するための元データがＰＯＳアプリケーション２０１から発せられ、そのデータに複数の厨房で料理する品物が含まれていれば、当該分割処理を行って、各厨房で料理すべき品物だけを示す注文票をその厨房に設けられたプリンター３から出力させる。当該処理では、データ解析部２０５は、上述したデータ格納部２０８のデータを参照し、元データに含まれる品物の文字列をキーワードにして、その品物に対応付けられている厨房（プリンター３）を出力先として決定する。データ加工部２０６は、その各品物に対する決定に基づいて、元データの内容を各厨房に分割し、各厨房の注文票データを生成する。その後、コマンド変換部２０７における必要な変換処理が行われた後、ポートハンドラー２０４から各注文票の印刷データが各出力先に出力される。
【００５２】
また、同様の例で、元データがレシート出力のためのものである場合に、その通りレシート出力用の印刷データを出力すると共に、品物の情報を注文票の形で各厨房に分割して出力してもよい。
【００５３】
次に、上述した複製処理の例としては、出力する印刷物の控も同時に出力しておきたい場合（正本と副本を作っておきたい場合）、複数毎のクーポンを早く出力した場合などがある。かかる印刷データの処理では、データ解析部２０５が、元データに含まれる所定のキーワードを検出した場合に、例えば、所定のクーポン券を示す文字列を検出した場合に、複製処理を行うと決定し、データ加工部２０６が、当該決定に従って各プリンター３へ出力する印刷データを同じ印刷内容で生成する。その後、コマンド変換部２０７における必要な変換処理が行われた後、ポートハンドラー２０４から各印刷データが各出力先に出力される。
【００５４】
また、上述した振分処理の例としては、出力する印刷物の種類に応じて適切なプリンター３で印刷されるように出力先を決定する場合がある。例えば、印刷物がレシートである場合には、モノクロであるプリンター３Ａから出力されるように処理し、印刷物がクーポンである場合には、カラーであるプリンター３Ｂから出力されるように処理する。また、印刷物が保証書である場合には、色があせないようにＳＩＤＭプリンターから出力されるように出力先を決定するといったこともできる。また、印刷物によって印刷紙の品質を変えたい場合にも、備えられる印刷紙が異なるプリンター３を備えれば、同様の処理で実現できる。
【００５５】
かかる振分処理では、データ解析部２０５が、元データに含まれる所定のキーワードを検出してその印刷物の種類を把握し、その種類に相応したプリンター３を決定する。データ加工部２０６は、当該決定に従ってそのプリンター３へ出力する印刷データを生成する。その後、コマンド変換部２０７における必要な変換処理が行われた後、ポートハンドラー２０４から印刷データが出力先に出力される。
【００５６】
また、本ＰＯＳ端末装置２にディスプレイ５とプリンター３Ｂが接続される構成の場合には、ＰＯＳアプリケーション２０１から同じ通信ポート２０９Ａへ出力された、ディスプレイ５向けの表示データとプリンター３Ｂ向けの印刷データを、それぞれ、所定の出力先に振り分ける（分散する）処理が行われる。前述したように、ＰＯＳアプリケーション２０１は従来装置に備えられていたものであるので、従来装置が、シリアル通信の通信ポ
ートを一つのみ備え、そこから、プリンターとディスプレイがシリアルに接続されている場合には、ＰＯＳアプリケーション２０１からプリンター３用データとディスプレイ５用データが同じその通信ポートへ出力されるからである。
【００５７】
具体的には、図３に基づいて説明した全て印刷データである場合と同様に、どちらかのデータを仮想ポート２０３が取得して、当該データがポートハンドラー２０４を介してデータ解析部２０５に渡される。データ解析部２０５では、データの種類が印刷データであるか表示データであるかを解析し、その結果に応じて出力先デバイス及びそのデバイスが接続される通信ポート２０９を決定する。その後、出力先に応じた所定の処理がデータ加工部２０６及びコマンド変換部２０７で行われて、処理後のデータがポートハンドラー２０４を介して、決定された通信ポート２０９へ出力される。そして、印刷データである場合には、プリンター３Ｂから出力され、表示データである場合には、ディスプレイ５に表示が行われる。
【００５８】
なお、ＰＯＳアプリケーション２０１からデバイス切替信号が出力される場合には、データ解析部２０５が、当該信号を検出することにより、出力先の通信ポート２０９を決定することもできる。すなわち、図２に示すように、１つのディスプレイ５と１つのプリンター３Ｂが接続される構成においては、上記デバイス切替信号が出力されることにより、切替先が決定するので、その信号の有無により通信ポート２０９を決定することができる。
【００５９】
以上説明したように、本実施の形態例に係るＰＯＳ端末装置２では、ＰＯＳアプリケーション２０１から出力されたデータの出力先分散処理を実行することができる。そして、当該処理を行わないＰＯＳ端末装置及びＰＯＳシステムを、比較的容易な方法で本ＰＯＳ端末装置２及びそれを含むＰＯＳシステムに改良することができる。
【００６０】
図４は、当該改良を説明するための図である。当該図は、図２と同じ機能構成図であり、実線部分が上述した改良前のＰＯＳ端末装置及びＰＯＳシステムを示している。すなわち、改良前のシステムは、ＰＯＳアプリケーション２０１から直接又はプリンタードライバー２０２を介して出力されたデータが通信ポート２０９Ａで受け取られ、プリンター３Ａ又はディスプレイ５から出力がなされる構成となっている。そして、このような構成のシステムに対して、破線で示される部分を追加することにより、本ＰＯＳ端末装置２及びそれを含むＰＯＳシステムにすることが可能である。
【００６１】
すなわち、既存のＰＯＳアプリケーション２０１を変更することなく、上述したデータ処理プログラム、データ格納部２０８のデータ、及び新たなプリンター３Ｂを追加することにより、既存のＰＯＳシステムの機能の拡張が可能となる。そして、この改良（追加）は、新たなプリンター３Ｂの設置と上記データ処理プログラムとデータを含む当該プリンタードライバーソフトウェアのインストールという作業で実行され得る。なお、プリンター３Ａやディスプレイ５も新設してよいし、さらに、既存のＰＯＳアプリケーション２０１のプログラムを変えずに、ＰＯＳ端末装置２を構成するコンピューター自体を新しいものに変えてもよい。
【００６２】
このように、本実施の形態例に係る分散処理プログラムを用いることにより、既存のＰＯＳアプリケーションプログラムの変更を伴わない容易な方法で、多彩な出力先の分散処理によるＰＯＳシステムの機能拡張を実現することができるようになる。また、それを実現するための主な処理は、コンピューターのアプリケーション層で行うように構成するので、多彩な処理を実行させるプログラムの開発を容易に行うことができる。
【００６３】
また、当該プログラムの適用により、出力がよりユーザーに相応しい内容で実行できる
ようになるので、ユーザー利便性を向上させることができる。
【００６４】
また、当該プログラムの適用により、出力が分散されるので、所定のケースでは、出力を早く行うことができるようになる。また、合わせて、コンピューターや通信形態を新しいものに変えることにより、より出力を早くすることができる。
【００６５】
なお、本実施の形態例では、ＰＯＳサーバー１が複数のＰＯＳ端末装置２と接続されるシステムであったが、本発明は、当該構成に限らず、ＰＯＳ端末装置とプリンター等が接続される環境に対して適用することができる。
【００６６】
また、本実施の形態例ではＰＯＳシステムの例を示したが、本発明は、ＰＯＳシステムに限らず、病院や運送会社で使用されるシステムなど、プリンターからの印刷物の出力を含む所定のアプリケーションを備えたシステムに適用可能であり、特に、既存のアプリケーションプログラムの改変が困難である場合に有効である。
【００６７】
また、本実施の形態例では、ＰＯＳアプリケーションのプログラムや分散処理のためのプログラムがＲＯＭに記憶されている例を示したが、これらプログラムはＲＯＭに限らず、ＲＡＭやＨＤＤ等の記憶媒体に記憶されていてもよい。また、これらプログラムは別々の記憶媒体に記憶されていてもよい。
【００６８】
本発明の保護範囲は、上記の実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶものである。
【符号の説明】
【００６９】
１  ＰＯＳサーバー、  ２  ＰＯＳ端末装置（分散処理装置）、  ３  プリンター、  ４  ネットワーク、  ５  ディスプレイ、  ２１  ＰＯＳ端末本体、  ２３  キーボード、  ２４  バーコードリーダー、  ２５  カードリーダー、  ２０１  ＰＯＳアプリケーション、  ２０２  プリンター３Ａ用ドライバー、  ２０３  仮想ポート、  ２０４  ポートハンドラー、  ２０５  データ解析部、  ２０６  データ加工部、  ２０７  コマンド変換部、  ２０８  データ格納部、  ２０９  通信ポート、  ２２０  アプリケーション層、  ２３０  ＯＳカーネル層、  ２４０  物理層
【図１】
0005609453.tif 000002
【図２】
0005609453.tif 000003
【図３】
0005609453.tif 000004
【図４】
0005609453.tif 000005