(57)【特許請求の範囲】
【請求項１】
ＯＳカーネル層のオペレーティングシステムによって動作し、アプリケーション層のアプリケーションが印刷データを出力する、通信ポートを備えたコンピューターに、売上情報の取得処理を実行させる売上分析用プログラムであって、
ルール設定モードの時に、
前記ＯＳカーネル層で、前記アプリケーションから出力された印刷データを受信し、前記アプリケーション層で、複数の前記受信した印刷データに基づいて取得ルールを生成する工程を、前記コンピューターに実行させ、
前記ルール設定モードでない時に、
前記ＯＳカーネル層で、前記アプリケーションから出力された印刷データを受信する工程と、
前記アプリケーション層で、前記取得ルールに従って、前記受信された印刷データから、売上情報を抽出する工程と、
前記アプリケーション層で、前記抽出された売上情報を、売上分析アプリケーションが処理可能なデータ形式に変換する工程と、
前記変換後の売上情報を、前記コンピューターに接続される売上分析アプリケーションに出力する工程と、
前記受信された印刷データを、プリンターが接続される前記通信ポートへ出力する工程と、を前記コンピューターに実行させる
ことを特徴とする売上分析用プログラム。
【請求項２】
請求項１において、
前記取得ルールは、取得すべき売上情報の内容と所在に関する情報を含む
ことを特徴とする売上分析用プログラム。
【請求項３】
ＯＳカーネル層のオペレーティングシステムによって動作し、アプリケーション層のアプリケーションが印刷データを出力する、通信ポートを備えたコンピューターからなる売上情報取得装置であって、
前記アプリケーションから出力された印刷データを前記ＯＳカーネル層で受信する仮想ポートと、
前記アプリケーション層で、複数の前記受信された印刷データに基づいて取得ルールを生成するルール設定部と、
前記アプリケーション層で、前記取得ルールに従って、前記受信された印刷データから、売上情報を抽出する売上情報抽出部と、
前記アプリケーション層で、前記抽出された売上情報を、売上分析アプリケーションが処理可能なデータ形式に変換するデータ変換部と、
前記変換後の売上情報を、前記コンピューターに接続される売上分析アプリケーションに出力する売上情報出力部と、を有し、
前記受信された印刷データを、プリンターが接続される前記通信ポートへ出力する
ことを特徴とする売上情報取得装置。
【請求項４】
請求項３において、
前記取得ルールは、取得すべき売上情報の内容と所在に関する情報を含む
ことを特徴とする売上情報取得装置。
【請求項５】
ＯＳカーネル層のオペレーティングシステムによって動作し、アプリケーション層のアプリケーションが印刷データを出力する、通信ポートを備えたコンピューターにおける売上情報取得方法であって、
ルール設定モードの時に、
前記コンピューターが、前記ＯＳカーネル層で、前記アプリケーションから出力された印刷データを受信し、前記アプリケーション層で、複数の前記受信した印刷データに基づいて取得ルールを生成する工程を、有し、
前記ルール設定モードでない時に、
前記コンピューターが、前記アプリケーションから出力された印刷データを前記ＯＳカーネル層で受信する工程と、
前記コンピューターが、前記アプリケーション層で、前記取得ルールに従って、前記受信された印刷データから、売上情報を抽出する工程と、
前記コンピューターが、前記アプリケーション層で、前記抽出された売上情報を、売上分析アプリケーションが処理可能なデータ形式に変換する工程と、
前記コンピューターが、前記変換後の売上情報を、前記コンピューターに接続される売上分析アプリケーションに出力する工程と、
前記コンピューターが、前記受信された印刷データを、プリンターが接続される前記通信ポートへ出力する工程と、を有する
ことを特徴とする売上情報取得方法。
【請求項６】
請求項５において、
前記取得ルールは、取得すべき売上情報の内容と所在に関する情報を含む
ことを特徴とする売上情報取得方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、既存アプリケーションから出力される印刷データを用いて売上分析を可能にするためのプログラム等に関し、特に、既存アプリケーションのプログラムを変更することなく、容易に、当該機能を実現できる売上分析用プログラム等に関する。
【背景技術】
【０００２】
スーパーマーケットなどの小売販売業においては販売管理システムであるＰＯＳシステムが普及しており、当該システムでは、サーバーとネットワークで接続される複数の端末装置（レジ）が当該装置に備えられるアプリケーションに従って動作し各種の処理を実行する。また、通常、当該端末装置には、それぞれ、プリンターが設けられ、上記アプリケーションの指示によりレシートやクーポンの出力を実行する。
【０００３】
このようなＰＯＳシステムにおいても、導入後の技術向上や業務改善要望に伴って、機能拡張、機能変更の必要が出てくるが、このようなシステムは一般に業務の中枢として常時利用されているものであり、また、他のシステムとも複雑に連携している場合も多いため、そのアプリケーションを改変することは通常容易ではない。また、上記機能拡張としては、売上分析の機能を追加したいという要望がある。
【０００４】
かかる課題については、出力処理系の機能に関し、従来、以下のような提案がなされている。
【０００５】
下記特許文献１では、すでに存在するアプリケーションプログラムを修正する必要なしに、従来のモデムに必要とされていたマイクロプロセッサおよびメモリを除去することが可能なパーソナルコンピュータ中でモデム機能を実行する装置について記載されている。
【０００６】
また、下記特許文献２には、アプリケーションを変更することなく、１つの通信ポートにアクセスすることにより、他の通信ポートに接続されているプリンターへも同時に印刷を実行させることができ、複製印刷を可能にする装置について記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平８−６９４２７号公報
【特許文献２】特開２００６−３３８４４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記特許文献１及び２に記載の内容では、モデム機能、複製印刷機能など出力系の限られた機能を実現するに留まり、他の多彩な要望を実現することはできない。特に、上記売上分析の機能追加をすることはできない。また、上記特許文献２では、ＯＳカーネル層での処理であるため、一般に機能構築（プログラム開発等）が容易ではなく機能も限られてしまうという課題がある。
【０００９】
そこで、本発明の目的は、既存アプリケーションから出力される印刷データを用いて売上分析を可能にするためのプログラムであって、既存アプリケーションのプログラムを変更することなく、容易に、当該機能を実現できる売上分析用プログラム、等を提供することである。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために、本発明の一つの側面は、ＯＳカーネル層のオペレーティングシステムによって動作し、アプリケーション層のアプリケーションが印刷データを出力する、通信ポートを備えたコンピューターに、売上情報の取得処理を実行させる売上分析用プログラムが、ルール設定モードの時に、前記ＯＳカーネル層で、前記アプリケーションから出力された印刷データを受信し、前記アプリケーション層で、複数の前記受信した印刷データに基づいて取得ルールを生成する工程を、前記コンピューターに実行させ、前記ルール設定モードでない時に、前記ＯＳカーネル層で、前記アプリケーションから出力された印刷データを受信する工程と、前記アプリケーション層で、前記取得ルールに従って、前記受信された印刷データから、売上情報を抽出する工程と、前記アプリケーション層で、前記抽出された売上情報を、売上分析アプリケーションが処理可能なデータ形式に変換する工程と、前記変換後の売上情報を、前記コンピューターに接続される売上分析アプリケーションに出力する工程と、前記受信された印刷データを、プリンターが接続される前記通信ポートへ出力する工程と、を前記コンピューターに実行させる、ことである。
【００１２】
更にまた、上記の発明において、その好ましい態様は、前記取得ルールは、取得すべき売上情報の内容と所在に関する情報を含む、ことを特徴とする。
【００１３】
上記の目的を達成するために、本発明の別の側面は、ＯＳカーネル層のオペレーティングシステムによって動作し、アプリケーション層のアプリケーションが印刷データを出力する、通信ポートを備えたコンピューターからなる売上情報取得装置が、前記アプリケーションから出力された印刷データを前記ＯＳカーネル層で受信する仮想ポートと、前記アプリケーション層で、複数の前記受信された印刷データに基づいて取得ルールを生成するルール設定部と、前記アプリケーション層で、前記取得ルールに従って、前記受信された印刷データから、売上情報を抽出する売上情報抽出部と、前記アプリケーション層で、前記抽出された売上情報を、売上分析アプリケーションが処理可能なデータ形式に変換するデータ変換部と、前記変換後の売上情報を、前記コンピューターに接続される売上分析アプリケーションに出力する売上情報出力部と、を有し、前記受信された印刷データを、プリンターが接続される前記通信ポートへ出力する、ことである。
【００１５】
更にまた、上記の発明において、その好ましい態様は、前記取得ルールは、取得すべき売上情報の内容と所在に関する情報を含む、ことを特徴とする。
【００１６】
上記の目的を達成するために、本発明の更に別の側面は、ＯＳカーネル層のオペレーティングシステムによって動作し、アプリケーション層のアプリケーションが印刷データを出力する、通信ポートを備えたコンピューターにおける売上情報取得方法が、ルール設定モードの時に、前記コンピューターが、前記ＯＳカーネル層で、前記アプリケーションから出力された印刷データを受信し、前記アプリケーション層で、複数の前記受信した印刷データに基づいて取得ルールを生成する工程を、有し、前記ルール設定モードでない時に、前記コンピューターが、前記アプリケーションから出力された印刷データを前記ＯＳカーネル層で受信する工程と、前記コンピューターが、前記アプリケーション層で、前記取得ルールに従って、前記受信された印刷データから、売上情報を抽出する工程と、前記コンピューターが、前記アプリケーション層で、前記抽出された売上情報を、売上分析アプリケーションが処理可能なデータ形式に変換する工程と、前記コンピューターが、前記変換後の売上情報を、前記コンピューターに接続される売上分析アプリケーションに出力する工程と、前記コンピューターが、前記受信された印刷データを、プリンターが接続される前記通信ポートへ出力する工程と、を有する、ことである。
【００１８】
更にまた、上記の発明において、その好ましい態様は、前記取得ルールは、取得すべき売上情報の内容と所在に関する情報を含む、ことを特徴とする。
【００１９】
本発明の更なる目的及び、特徴は、以下に説明する発明の実施の形態から明らかになる。
【図面の簡単な説明】
【００２０】
【図１】本発明を適用したＰＯＳ端末装置の実施の形態例に係る概略構成図である。
【図２】ＰＯＳ端末装置の概略機能構成図である。
【図３】取得ルールの設定処理の手順を例示したフローチャートである。
【図４】売上情報を取得するレシートの一例を示した図である。
【図５】売上情報の取得処理の手順を例示したフローチャートである。
【図６】ＰＯＳシステムの改良を説明するための図である。
【発明を実施するための形態】
【００２１】
以下、図面を参照して本発明の実施の形態例を説明する。しかしながら、かかる実施の形態例が、本発明の技術的範囲を限定するものではない。なお、図において、同一又は類似のものには同一の参照番号又は参照記号を付して説明する。
【００２２】
図１は、本発明を適用したＰＯＳ端末装置の実施の形態例に係る概略構成図である。また、図２は、当該ＰＯＳ端末装置の概略機能構成図である。図１及び図２に示すＰＯＳ端末装置２（売上情報取得装置）が本発明を適用した装置であり、当該装置では、ＰＯＳアプリケーション２０１から出力される印刷データ（例えば、レシートのデータ）を、通信ポート２０９に出力される前にＯＳカーネル層２３０の仮想ポート２０３で受信する。そして、受信したデータをアプリケーション層２２０の売上情報抽出部２０４で受け取り、予め定められた取得ルールに従って、その印刷データの中から売上情報を抽出する。その後、抽出された売上情報は、データ変換部２０５によって売上分析アプリケーション５が処理可能な標準フォーマットに変換され、売上情報出力部２０６から当該アプリケーションに出力される。一方、印刷データは通信ポート２０９に出力されプリンター３から印刷物が出力される。
【００２３】
また、当該ＰＯＳ端末装置２には、上述した売上情報の取得ルールの生成機能が備えられる。当該生成機能によれば、すなわち、ルール設定部２０８は、印刷物、例えばレシートの複数の印刷データを比較し、印刷内容について、オブジェクト毎に固定部又は可変部を判断する。その後、各可変部について、その印刷内容や配置位置等からどのような売上情報であるかを判定し、その結果に基づいて、当該印刷物のどこにどのような売上情報が含まれるかを取得ルールとして記憶しておく。
【００２４】
本ＰＯＳ端末装置２では、かかる処理を実行することにより、既存アプリケーションのプログラムを変更することなく、容易に、売上分析の機能追加を可能にする。
【００２５】
本実施の形態例では、販売店舗などで用いられるＰＯＳシステムを想定しており、図１に示すように、ＰＯＳサーバー１にネットワーク４を介して複数のＰＯＳ端末装置２が接続される構成をしている。ＰＯＳサーバー１は、コンピューターシステムで構成され、上記複数のＰＯＳ端末装置２の管理とそれらのＰＯＳ端末装置２から取得される各種データの集計、管理等の処理を実行する。
【００２６】
ＰＯＳ端末装置２は各レジに設置され、それぞれ、プリンター３と接続される。プリンター３は、ＰＯＳ端末装置２から出力される印刷データに従って、レシート等を出力する。従って、ＰＯＳ端末装置２はプリンター３のホスト装置と位置づけられる。
【００２７】
各ＰＯＳ端末装置２は、図１に示すように、ＰＯＳ端末本体２１、ディスプレイ２２、キーボード・マウス２３、バーコードリーダー２４、及びカードリーダー２５等を備える。ディスプレイ２２は、顧客に商品の金額等を表示し、キーボード・マウス２３は、価格や商品コードなどの商品情報、性別、年代などの顧客情報をオペレーターが入力するために用いられる。また、バーコードリーダー２４は、商品に付されたバーコードを読み取って商品情報を取得し、カードリーダー２５は、各種カードに記憶された情報を読み取って、清算に必要な情報などを取得する。
【００２８】
ＰＯＳ端末本体２１は、上述したキーボード・マウス２３、バーコードリーダー２４、及びカードリーダー２５から取得される情報に基づいて、レシートやクーポンに印刷する情報を生成して、プリンター３へ出力する。当該ＰＯＳ端末本体２１は、コンピューターで構成され、図示していないが、ＣＰＵ、ＲＡＭ、ＲＯＭ、ＨＤＤなどを備えている。後述するＰＯＳアプリケーション２０１のプログラムや売上情報取得処理等のためのプログラムなどは、上記ＲＯＭに記憶され、それらのプログラムに従って上記ＣＰＵが動作することにより各処理が実行される。
【００２９】
また、ＰＯＳ端末装置２は、図２に示すような機能構成となっている。ＰＯＳアプリケーション２０１は、上述したレシート等に印刷する情報を生成して出力する処理などを行うが、売上を分析する機能、分析するための機能については、備えていないか機能が乏しいものとする。また、上記生成して出力される印刷データは、そのままプリンター３へ出力できる形式のデータ、あるいは、プリンター３用ドライバー２０２に渡す形式のデータである。前者は、テキストだけの印刷など簡単な印刷データの場合に生成される。
【００３０】
また、プリンター３用ドライバー２０２は、プリンター３用のプリンタードライバーであり、ＰＯＳアプリケーション２０１から出力されたデータを、プリンター３の機種（デバイス）に依存したコマンドによる、プリンター３が受信して印刷可能な印刷データとして出力する。
【００３１】
なお、ＰＯＳアプリケーション２０１とプリンター３用ドライバー２０２は、図２に示すように、コンピューターのオペレーティングシステム（ＯＳ）に基づきその上でプログラムが各処理を実行するアプリケーション層２２０に位置する。また、両者は、それぞれの処理内容を指示する上記ＲＯＭに格納されたプログラムと当該プログラムに従って処理を実行する上記ＣＰＵ等によって構成される。また、ＰＯＳアプリケーション２０１とプリンター３用ドライバー２０２は、本発明を適用する前の従来装置で用いられていたものがそのまま使用される。
【００３２】
次に、仮想ポート２０３は、ＰＯＳアプリケーション２０１又はプリンター３用ドライバー２０２から出力された印刷データを、通信ポート２０９が受け取る前に上記オペレーティングシステムが位置するＯＳカーネル層２３０で受け取る部分である。そして、仮想ポート２０３は、取得した印刷データを売上情報抽出部２０４へ引き渡す。
【００３３】
次に、売上情報抽出部２０４、データ変換部２０５、売上情報出力部２０６、ルール設定部２０８、及びデータ格納部２０７は、印刷データから売上情報を取得する処理等を行う部分であり、これら各部の処理により、上記ＰＯＳアプリケーション２０１から出力された印刷データを用いて、ＰＯＳアプリケーション２０１が備えていない売上分析の処理が可能になる。
【００３４】
売上情報抽出部２０４は、転送された上記印刷データから売上情報を抽出する部分であり、その処理の際には、データ格納部２０７に格納される取得ルールを用いる。また、当該抽出処理の後は、印刷データを、そこに設定されている通信ポート２０９に向けて出力する。なお、売上情報抽出部２０４は、ＰＯＳアプリケーション２０１又はプリンター３用ドライバー２０２から出力された印刷データを解釈可能な機能を備えている。
【００３５】
また、データ変換部２０５は、上記抽出された売上情報のデータ形式を変換する部分であり、具体的には、売上情報抽出部２０４が処理したデータ形式を、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、ＣＳＶ（Ｃｏｍｍａ−Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅ）などの一般的な売上分析アプリケーション（ソフトウェア）が処理可能な標準フォーマットに変換する。
【００３６】
次に、売上情報出力部２０６は、上記フォーマット変換後の売上情報を所定の売上分析アプリケーション５に出力する部分である。ここでは、図２に示されるように、ネットワーク４を介して出力され、売上分析アプリケーション５は、上述した一般的な売上分析アプリケーションであり、ネットワーク４を介して通信可能なコンピューターに備えられている。
【００３７】
次に、ルール設定部２０８は、上述した取得ルールを生成してデータ格納部２０７に設定する部分である。当該ルール設定処理は、印刷データからの売上情報取得処理を行う前に予め実行される。なお、その具体的な処理内容は後述する。
【００３８】
以上の、仮想ポート２０３、売上情報抽出部２０４、データ変換部２０５、売上情報出力部２０６、及び、ルール設定部２０８は、それぞれ、上記ＲＯＭに格納され各部が行う処理を指示するプログラムと当該プログラムに従って処理を実行する上記ＣＰＵ等によって構成される。また、これらプログラムが本発明の売上分析用プログラムに相当する。
【００３９】
データ格納部２０７は、上記取得ルール等、売上情報抽出部２０４が使用する情報を記憶する部分である。なお、当該データ格納部２０７は上記ＨＤＤ等で構成される。
【００４０】
次に、ＰＯＳ端末装置２には、物理層２４０に通信ポート２０９が備えられ、プリンター３に接続される。プリンター３は、本発明を適用する前の従来システムにおけるプリンターがそのまま用いられる。なお、通信ポート２０９は、シリアル通信のＣＯＭ通信ポートやＵＳＢ通信を行うＵＳＢ通信ポートなどである。
【００４１】
以上説明したような構成を有する本ＰＯＳ端末装置２では、上述した売上情報の取得ルールの生成及びそれを用いた印刷物出力時の売上情報の取得処理に特徴があり、以下、その具体的な処理手順について説明する。
【００４２】
まず、ルール設定部２０８による取得ルールの設定処理について説明する。図３は、当該設定処理の手順を例示したフローチャートである。ルール設定をする場合には、まず、ＰＯＳ端末装置２のユーザーがその旨の指示をディスプレイ２２、キーボード・マウス２３を用いて行い、その指示がルール設定部２０８に受信される（ステップＳ１）。すると、ルール設定部２０８は、売上情報抽出部２０４にルール設定のモードであることを通知する。
【００４３】
その後、ルール設定部２０８は、上記ユーザーに売上情報を取得する印刷物の印刷データをＰＯＳアプリケーション２０１から出力させるように、ディスプレイ２２等を用いて指示する。これを受けて、ユーザーは、当該印刷物を通常出力する場合と同様の操作を実施して、印刷データを出力させる。
【００４４】
なお、ここでは、上記印刷物をレシートとし、レシートの印刷データから売上情報を取得する場合について説明する。図４は、当該レシートの一例を示した図である。
【００４５】
上記出力された印刷データは、通信ポート２０９へ向けてＰＯＳアプリケーション２０１又はプリンター３用ドライバー２０２から発せられる。当該印刷データは、通信ポート２０９で受け取られる前に仮想ポート２０３で受信され、その後、売上情報抽出部２０４へ転送される。なお、上記仮想ポート２０３による受信の仕組みは後述する。
【００４６】
次に、売上情報抽出部２０４は、上述したように、ルール設定のモードであることを通知されているので、転送された印刷データをルール設定部２０８へ送信する。売上情報抽出部２０４は、当該印刷データに対してこれ以上の処理を実行しない。
【００４７】
ルール設定部２０８は、送信された印刷データを受信し（ステップＳ２）、当該印刷データに含まれる印刷内容をオブジェクト化する（ステップＳ３）。ここでは、印刷物上（レシート上）で改行やスペースによって区切られない連続した文字列、１画像（イメージ）、及び１図形（グラフィックス）をオブジェクトとし、上記印刷データの内容をこのオブジェクトに分割する処理を実行する。
【００４８】
図４に示す例では、レシート内の矩形で囲われた各部分がオブジェクトであり、この例では、１６のオブジェクトに分割されている。当該オブジェクト化の処理は、ルール設定部２０８が、印刷データの各コマンドを解釈し、レシートの印刷内容について上記オブジェクトの定義に従って１つずつオブジェクトを抽出していく処理によって行なわれる。抽出された各オブジェクトは、その印刷内容及び印刷位置の情報と共に上記ＲＡＭに保持される。
【００４９】
次に、ルール設定部２０８は、同じ形式のレシートについて次の印刷データを出力するように指示を出し、上述の場合と同様のユーザー操作及び印刷データの出力・受信・転送がなされて、次の印刷データを受信する（ステップＳ４）。
【００５０】
ルール設定部２０８は、受信した印刷データについてステップＳ３と同様のオブジェクト化を実行し（ステップＳ５）、上記保持したオブジェクトと当該抽出したオブジェクトとの比較を行う（ステップＳ６）。具体的には、上記保持した各オブジェクトの印刷内容を、当該抽出したオブジェクトの印刷内容と、順次、比較する。
【００５１】
その結果、同じ印刷内容のオブジェクトが当該抽出したオブジェクトの中に存在すれば、すなわち、同じオブジェクトが上記次の印刷データの中に存在すれば、当該オブジェクトの出現回数を１つカウントアップする（ステップＳ７）。ここでは、出現回数が１となる。また、同じ印刷内容のオブジェクトが存在しなければ出現回数のカウントアップを行わない。
【００５２】
図４に示す例では、「エプソン松本南店」（ＦＯ１）は、店舗名であり、どのレシートにも印刷されるので、ここで出現回数がカウントアップされる。また、「野菜」（ＶＯ７）は、購入された商品名であり、毎回出現するとは限らないので、出現回数がカウントアップされない可能性が高い。
【００５３】
上記保持した全てのオブジェクトについて当該処理が終了すると、当該他の印刷データとの比較処理（ステップＳ４−Ｓ７）が所定回数（枚数）実行されたかをチェックし（ステップＳ８）、所定回数実行されていなければ（ステップＳ８のＮｏ）、ステップＳ４からの処理を実行する。所定回数（枚数）は、例えば、１０回（枚）とすることができる。
【００５４】
所定回数分の処理が実行されれば（ステップＳ８のＹｅｓ）、ルール設定部２０８は、上記保持した各オブジェクトについて、固定部であるか又は可変部であるかの判断を行う（ステップＳ９）。具体的には、この時点での各オブジェクトの上記出現回数によって判断する。なお、固定部とは、各印刷データによって印刷内容が変化しない固定内容の部分（オブジェクト）であり、店舗名や定型句などが含まれる。また、可変部とは、各印刷データによって印刷内容が変化し得る部分（オブジェクト）であり、購入された商品名やその金額などが含まれる。
【００５５】
上記判断の一例としては、出現回数が上記所定回数（枚数）（例えば、１０）と一致するオブジェクトは固定部と判断し、出現回数が上記所定回数（枚数）よりも少なければ可変部と判断する。
【００５６】
その後、ルール設定部２０８は、上記保持したオブジェクトの中で売上情報として取得すべきものを決定する（ステップＳ１０）。ルール設定部２０８は、基本的には、上記可変部と判断したオブジェクトは売上情報を含んでいると判断する。そして、ルール設定部２０８は、予め定められた規則に従って、可変部の売上情報を把握し、取得すべきと決定していく。例えば、「担当」という印刷内容の固定部の次に印刷される可変部の印刷内容は担当者の情報であるという規則に従って、「担当」という固定部を探し、その次の可変部が担当者を表していると把握し、それを取得すべきとする。また、例えば、「領収書」という印刷内容の固定部の次行から、「合計」という印刷内容の固定部の前行までに印刷される可変部であって、印刷内容が文字であるものは購入した商品の名称であり、その商品名と同じ行にあり印刷内容が「\」の後に数字であるものは、その価格であるという規
則に従って、商品名とその価格の情報を把握し、それらの情報を取得すべきと決定する。
【００５７】
図４に示す例では、前者の規則にしたって、「担当」という固定部オブジェクトＦＯ４を探し、その次の「米山」という可変部オブジェクトＶＯ５を担当者情報と把握し、その情報を取得すべき情報として決定する。また、後者の規則に従って、「領収書」ＦＯ６と「合計」ＦＯ１３が検索され、その間の各行において、文字オブジェクト（ＶＯ７、９、１１）と数字オブジェクト（ＶＯ８、１０、１２）がそれぞれ商品名とその価格であると把握し、取得すべき情報と決定する。
【００５８】
同様の規則に従って、「合計」という固定部オブジェクトＦＯ１３を探し、その次の「\６００」という可変部オブジェクトＶＯ１４を合計金額の情報と把握し、その情報を取得すべき情報として決定する。また、可変部オブジェクト「２０１０／０５／２０／１２：１０」ＶＯ１５は、印刷内容が日時を表す形式であることから日時情報であると把握し、その情報を取得すべきと決定する。
【００５９】
次に、ルール設定部２０８は、上記決定した売上情報を取得するための取得ルールを生成してデータ格納部２０７に記憶する（ステップＳ１１）。具体的には、レシート上のどこに位置するオブジェクトの印刷内容を、どのような情報として取得すべきかを示すルールを生成して、記憶する。すなわち、取得ルールには、取得すべき情報を含む各オブジェクトの所在及び情報項目が示される。この取得ルールは、上記ステップＳ３において保持したオブジェクトの情報及び上記ステップＳ１０において把握した売上情報の内容に従って生成される。この際、オブジェクトの所在情報については、印刷順でそのオブジェクトの前に、固定部と印刷領域が一定範囲内の可変部のみがある場合には、上記保持している位置情報をそのまま使用し、すなわち、絶対位置情報としてもち、そうでない場合には、相対位置情報としてもつ。
【００６０】
図４の例では、まず、上述した担当者情報を含むオブジェクト（ＶＯ５）の情報を取得する必要があり、その情報の前に、固定部のみしかないので、オブジェクトＶＯ５の絶対位置にあるオブジェクトの内容を担当者情報として取得すべきである、というルールが生成されて記憶される。
【００６１】
また、上述した商品名と価格の情報については、その先頭のオブジェクトＶＯ７の前に固定部と印刷領域が一定範囲内の可変部のみしかないので、オブジェクトＶＯ７の絶対位置から、順次、各２つのオブジェクトの内容を、商品名とその価格の情報として、「合計」（ＦＯ１３）というオブジェクトの前まで取得すべきである、というルールが生成されて記憶される。
【００６２】
また、「合計」（ＦＯ１３）というオブジェクトの次に来るオブジェクト（ＶＯ１４）の内容を合計金額の情報として取得すべきである、というルールが生成されて記憶される。
【００６３】
さらに、その次のオブジェクト（ＶＯ１５）を日時情報として取得すべきである、というルールが生成されて記憶される。
【００６４】
このように図４の例では、４つのルールが取得ルールとして記憶されることになる。
【００６５】
以上説明したように、取得ルールが設定される。なお、上述の内容では、所定枚数分の印刷データの指示及びユーザーによる操作がなされるが、最初に所定枚数分の印刷データを一辺に出力させるようにしても良い。この場合には、ルール設定部２０８は、所定枚数分の印刷データを上記ＲＡＭに保持しておく。また、これら印刷データにおいては、上述のとおり、「担当」の情報を可変部として判断したいので、意識的に担当者を変更させた印刷データを生成して出力するようにすることが好ましい。
【００６６】
次に、上記設定した取得ルールを用いた売上情報の取得時の処理について説明する。図５は、売上情報の取得処理の手順を例示したフローチャートである。
【００６７】
まず、前述の通り、ＰＯＳアプリケーション２０１から直接、又は、プリンター３用ドライバー２０２を介して、印刷データが出力される（ステップＳ２１）。ここでは、当該印刷データは、プリンター３から出力するレシートの印刷データであり、従って、出力先の通信ポートには通信ポート２０９が指定され、プリンター３に依存したコマンドで表現されている。
【００６８】
次に、出力された印刷データは、指定された通信ポート２０９に届く前に仮想ポート２０３によって受け取られる（ステップＳ２２）。かかる処理は、いずれの通信ポート２０９へ向けたデータも、まず、仮想ポート２０３が受け取るように、レジストリーの（優先度の）設定を変更しておくことで実現され、かかる設定変更はＯＳの起動時に実行される。その後、受け取られた印刷データは、仮想ポート２０３からアプリケーション層２２０の売上情報抽出部２０４に送信される（ステップＳ２２）。
【００６９】
売上情報抽出部２０４は、送信された印刷データから印刷情報の抽出を行う（ステップＳ２３）。なお、売上情報抽出部２０４は、この実際の印刷データを出力する時点では、ルール設定部２０８からの上述した通知はないので、ルール設定モードではないと判断し、自ら情報抽出の処理を開始する。
【００７０】
具体的には、上記データ格納部２０７に記憶された取得ルールに従って、上記送信された印刷データの、当該ルールで指示される位置にある情報を、当該ルールで定められた情報内容として抽出する。
【００７１】
図４に示した例では、上述したとおりの４つのルールが記憶されているので、まず、オブジェクトＶＯ５の開始位置からスペース又は改行コマンドまでの文字列が担当者情報として抽出される。次に、オブジェクトＶＯ７の開始位置から、スペース又は改行コマンドで区切られる間の情報が、「合計」（ＦＯ１３）という文字列が現れるまで、商品名の情報、その価格情報の順番で、これらの情報として抽出される。さらに、「合計」（ＦＯ１３）という文字列とそれに続くスペース又は改行コマンドの直後から、スペース又は改行コマンドの間の情報が、合計金額情報として抽出される。最後に、その後のスペース又は改行コマンドの直後から、スペース又は改行コマンドの間の情報が、日時情報として抽出される。
【００７２】
このようにして、出力されたレシートの印刷データから、当該売り上げについて、担当者、購入された商品及びその価格、合計金額、及び日時の情報が抽出される。
【００７３】
次に、抽出された情報は、データ変換部２０５に渡され、データ変換部２０５は、当該抽出された売上情報のデータ形式を、ＸＭＬ、ＣＳＶなどの一般的な売上分析アプリケーション（ソフトウェア）が処理可能な標準フォーマットに変換する（ステップＳ２４）。ここでは、売上分析アプリケーション５が処理可能なフォーマットに変換する。
【００７４】
当該変換後の売上情報は、売上情報出力部２０６に渡され、売上情報出力部２０６は、当該売上情報をネットワーク４を介して売上分析アプリケーション５に送信する（ステップＳ２５）。売上分析アプリケーション５は、当該売上情報を受信して各種の売上分析処理を実行する。なお、当該売上分析アプリケーション５への出力は、各レシートの出力毎に行わなくてもよく、すなわち、売上情報出力部２０６が売上情報を受け取る度に行わなくてもよく、各レシートの情報を上記ＲＡＭ又はＨＤＤに保持しておき、所定のタイミングで、例えば、毎日閉店時に、溜まった情報を一辺に出力するようにしても良い。
【００７５】
次に、前記仮想ポート２０３から転送された印刷データを、売上情報抽出部２０４は、当該データに設定されている通信ポート２０９へ向けて出力する（ステップＳ２６）。なお、当該処理は、売上情報抽出部２０４が当該データから売上情報を抽出した直後、あるいは、売上情報抽出部２０４が受け取った印刷データをコピーして保持する場合には、当該コピーの直後に、行われることが好ましい。特に、上記売上情報の出力（Ｓ２５）を直ぐに行わない場合には、当該出力を待たずに実行される。
【００７６】
その後、印刷データは通信ポート２０９を介してプリンター３へ送信され、プリンター３の処理によりレシートが出力される（ステップＳ２７）。
【００７７】
以上のようにして、ＰＯＳアプリケーション２０１から出力された印刷データを用いた売上情報の取得処理が実行される。
【００７８】
なお、上記実施の形態例では、印刷データから売上情報を取得する機能について述べたが、さらに、ＰＯＳアプリケーション２０１から出力される印刷データを用いて、ＰＯＳシステムの異なる機能拡張を実行するようにすることもできる。例えば、レシートの印刷データに所定商品名が含まれている場合にはクーポン券を発行する、所定の印刷物である場合には複数毎印刷する、印刷物のレイアウトを変更する、印刷物によって出力先プリンターを変更する、などの処理を追加することができる。
【００７９】
これら他の処理を実行する場合には、売上情報抽出部２０４が受け取った印刷データについて以下の処理を実行する機能を備える。まず、印刷データを解析して、印刷物を判別し、あるいは、そのデータに含まれる所定の情報を検出して、印刷物によって定められている、あるいは、その所定の情報に対して定められている処理を決定する。そして、決定された処理に印刷データの加工が必要な場合にはその加工を実行する。その後、印刷データを、上記決定された処理に相応しいプリンターに対応したコマンドで、そのプリンターが接続される通信ポートへ出力する。なお、図２においては、１つの通信ポート２０９と１台のプリンター３のみを示しているが、ＰＯＳ端末装置２は、複数の通信ポートを備えることが可能であり、従って、それらに接続される複数のプリンターを用いることが可能である。
【００８０】
また、この場合にも、印刷物と処理の内容、あるいは、上記所定の情報と処理の内容を関係付けて示す情報は、予めデータ格納部２０７に保存される。
【００８１】
以上説明したように、本実施の形態例に係るＰＯＳ端末装置２では、ＰＯＳアプリケーション２０１から出力された印刷データを用いて売上分析機能を付加することができる。そして、売上分析機能を備えないあるいはその機能が乏しいＰＯＳ端末装置及びＰＯＳシステムを、比較的容易な方法で本ＰＯＳ端末装置２及びそれを含むＰＯＳシステムに改良することができる。
【００８２】
図６は、当該改良を説明するための図である。当該図は、図２と同じ機能構成図であり、実線部分が上述した改良前のＰＯＳ端末装置及びＰＯＳシステムを示している。すなわち、改良前のシステムは、ＰＯＳアプリケーション２０１から直接又はプリンタードライバー２０２を介して出力された印刷データが通信ポート２０９で受け取られ、プリンター３から出力がなされる構成となっている。そして、このような構成のシステムに対して、点線で示される部分を追加することにより、本ＰＯＳ端末装置２及びそれを含むＰＯＳシステムにすることが可能である。
【００８３】
すなわち、既存のＰＯＳアプリケーション２０１を変更することなく、点線で示される部分のプログラム、及び、データ格納部２０７のデータを追加することにより、既存のＰＯＳシステムの機能拡張が可能となる。また、合わせて、一点鎖線で示す新たなプリンター３Ｂを追加してもよく、この場合の改良は、新たなプリンター３Ｂの設置と上記プログラムとデータを含む当該プリンタードライバーソフトウェアのインストールという作業で実行され得る。なお、プリンター３やＰＯＳ端末装置２を構成するコンピューター自身も新しい装置に置き換えることが可能である。
【００８４】
このように、本実施の形態例に係るＰＯＳ端末装置２を用いることにより、既存のＰＯＳアプリケーションプログラムの変更を伴わない容易な方法で、売上分析機能の追加を可能にすることができる。また、その他の既存システムに対する機能拡張も、同様に、容易に実現できる。
【００８５】
また、そのための主な処理は、コンピューターのアプリケーション層で行うように構成するので、多彩な処理を実行させるプログラムの開発を容易に行うことができる。
【００８６】
また、ルール設定部２０８により容易に取得ルールが生成され、売上情報の取得時に当該ルールが用いられるので、取得処理の精度と速度を向上させることができる。
【００８７】
なお、本実施の形態例では、ＰＯＳサーバー１が複数のＰＯＳ端末装置２と接続されるシステムであったが、本発明は、当該構成に限らず、ＰＯＳ端末装置とプリンターが接続される環境に対して適用することができる。
【００８８】
また、本実施の形態例では、ＰＯＳ端末装置２のプログラムがＲＯＭに記憶されている例を示したが、これらプログラムはＲＯＭに限らず、ＲＡＭやＨＤＤ等の記憶媒体に記憶されていてもよい。また、これらプログラムは別々の記憶媒体に記憶されていてもよい。
【００８９】
本発明の保護範囲は、上記の実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶものである。
【符号の説明】
【００９０】
１  ＰＯＳサーバー、  ２  ＰＯＳ端末装置、  ３  プリンター、  ４  ネットワーク、  ５  売上分析アプリケーション、  ２１  ＰＯＳ端末本体、  ２２  ディスプレイ、
２３  キーボード・マウス、  ２４  バーコードリーダー、  ２５  カードリーダー、
２０１  ＰＯＳアプリケーション、  ２０２  プリンター３用ドライバー、  ２０３  仮想ポート、  ２０４  売上情報抽出部、  ２０５  データ変換部、  ２０６  売上情報出力部、  ２０７  データ格納部、  ２０８  ルール設定部、  ２０９  通信ポート、  ２２０  アプリケーション層、  ２３０  ＯＳカーネル層、  ２４０  物理層
【図１】
0005736851.tif 000002
【図２】
0005736851.tif 000003
【図３】
0005736851.tif 000004
【図４】
0005736851.tif 000005
【図５】
0005736851.tif 000006
【図６】
0005736851.tif 000007