【課題】本発明が解決しようとする課題は、税率変更前の売上データに対して、旧税率を適用して簡単に税額を求めることが可能となる商品販売データ処理装置およびプログラムを提供することである。
【解決手段】実施形態の商品販売データ処理装置は、販売された商品の売上データを記憶する第1記憶手段と、前記売上データから税額を算出する際に適用される税率を所定のタイミングで旧税率から新税率に変更する税率変更手段と、前記税率変更手段による前記旧税率から前記新税率への変更に際し、前記第1記憶手段が記憶した前記所定のタイミングまでの前記旧税率が適用される前記売上データを記憶する第2記憶手段と、を備える。
前記第1記憶手段は、前記税率変更手段により前記旧税率から前記新税率への変更前の前記旧税率が適用される売上データと、前記税率変更手段により前記旧税率から前記新税率への変更後の前記新税率が適用される売上データとを混在して記憶する、
請求項1または2に記載の商品販売データ処理装置。
【発明を実施するための形態】
【0008】
以下、
図1〜
図12を参照して、実施形態に係る商品販売データ処理装置およびプログラムを詳細に説明する。実施形態では、商品販売データ処理装置としてPOS(Point of Sales)端末を用いて説明する。なお、以下に説明する実施形態によりこの発明が限定されるものではない。
【0009】
図1は、実施形態のPOS端末を含むシステムを示す図である。
図1において、店舗に設置された複数台のPOS端末1が、例えばLAN(Local Area Network)等の通信回線2を介して、例えば店舗のバックヤードに設置されたSC3に接続されている。また、各店舗のSC3は、例えば専用回線やネットワーク等の通信回線4を介して本部に設置されたホストコンピュータ5に接続されている。
【0010】
POS端末1は、店舗で販売する商品の商品登録処理と決済処理を実行する。商品登録処理とは、顧客が購入する商品を販売製品として記憶する処理である。決済処理とは、商品登録処理後の金銭の授受に伴う処理である。
【0011】
SC3は、店舗のバックヤードに設置され、各POS端末1から受信した商品登録情報と決済情報を収集し、店舗の売り上げを管理する。また、SC3は、ホストコンピュータ5に対して収集した売上データを送信する。また、SC3は、ホストコンピュータ5から受信した商品マスタ(
図3を参照)情報をPOS端末1に送信する。
【0012】
ホストコンピュータ5は、本部に設置され、各SC3から受信した売上データを収集し、全体の売り上げを管理する。また、収集した売上データから例えば消費税等の税額を算出する。
【0013】
次に、
図2〜
図4を用いて、POS端末1のハードウェアについて説明する。
図2は、POS端末1のハードウェア構成を示すブロック図である。
図2において、POS端末1は、制御主体となるCPU(Central Processing Unit)11、各種プログラムを記憶するROM(Read Only Memory)12、各種データを展開するRAM(Random Access Memory)13、各種プログラムを記憶するメモリ部14等を備えており、CPU11、ROM12、RAM13、メモリ部14は、互いにデータバス15を介して接続されている。CPU11とROM12とRAM13が、制御部100を構成する。すなわち、制御部100は、CPU11がROM12やメモリ部14に記憶されRAM13に展開された制御プログラム141に従って動作することによって、後述する制御処理を実行する。
【0014】
メモリ部14は、電源を切っても記憶情報が保持されるHDD(Hard Disc Drive)やフラッシュメモリ等の不揮発性メモリで構成され、制御プログラム141を含むプログラム等を記憶する。また、メモリ部14は、税率設定テーブル部142(
図3を参照)と新税率設定テーブル部143を備えている。税率設定テーブル部142は、後述する税率設定テーブルを記憶する。新税率設定テーブル部143は、後述する新税率設定テーブルを記憶する。
【0015】
税率設定テーブル部142に記憶された税率設定テーブルは、
図3に示すように、商品マスタ1421と税率テーブル1422とを備えている。
図3において、商品マスタ1421は、商品コード部14211、商品名部14212、単価部14213、税区分部14214、その他部14215を備えている。
【0016】
商品コード部14211は、商品を特定する特定情報をコードで表す商品コードを記憶する。商品名部14212は、商品コードで特定される商品の商品名を記憶する。単価部14213は、商品コードで特定される商品の単価を記憶する。税区分部14214は、商品コードで特定される商品の税区分を商品毎に記憶する。税区分は、商品の単価に税が含まれない外税、商品の単価に税が含まれる内税、課税されない非課税の3種類のうちのいずれかの税であることを特定するための区分である。その他部14215は、商品のその他の情報(例えば商品のサイズ、産地、原料等の属性情報)を記憶する。
【0017】
税率テーブル1422は、例えば現在適用している消費税等の税率(旧税率)が記憶されている。税率テーブル1422に記憶した税率に基づいて、売上データに対する税額が算出される。外税の商品の売上データに対しては、売上データに税率テーブル1422に記憶した税率を乗算して税額を算出する。内税の商品の売上データに対しては、売上データに税率テーブル1422に記憶した税率を適用して売上データに含まれる税額を算出する。非課税の商品の売上データに対しては、税額を算出しない。
【0018】
新税率設定テーブル部143に記憶された新税率設定テーブルは、税率設定テーブルと同様に、商品マスタと税率テーブルとを備えている。新税率設定テーブルの税率テーブルには、変更される新しい税率(新税率)が記憶されている。なお、新税率設定テーブルの商品マスタには、商品マスタ1421と同様のデータが記憶されている。ただし、新税率設定テーブルの商品マスタの単価の欄には、税率変更後に使用される新たな単価が記憶されている場合がある。
【0019】
図2の説明に戻る。データバス15には、操作部17、操作者用表示部18、顧客用表示部19、読取部20、印字部21が、コントローラ16を介して接続されている。
【0020】
操作部17は、締めキー171、置数キー、ファンクションキー等を含む種々のキーを備えている。締めキー171は、一取引を終了するために操作するキーである。
【0021】
操作者用表示部18は、表示面を店員等の操作者に向けて設置され、操作者に対して情報を表示する。顧客用表示部19は、表示面を顧客に向けて設置され、顧客に対して情報を表示する。
【0022】
読取部20は、CCDイメージセンサ等で構成され、商品に付されたバーコードや2次元コード等のコードをCCDで読取って、商品コードを入力する。実施形態では、ハンディタイプの読取部20を用いており、操作者は、手に取った読取部20を商品に付されたコードに近づけるか接触させることでコードを読取る。なお、読取部20は、発光された光をポリゴンミラー等で走査し、コードで反射した光を受光する構成のスキャナであってもよい。
【0023】
印字部21は、POS端末1の本体内に収納されたロール状のレシート用紙を引き出して、例えば熱転写型の印字ヘッドを備えたサーマルプリンタ等で商品情報や決済情報等を印字し、レシートとして発行する。
【0024】
また、データバス15は、タイマー23を接続している。タイマー23は、後述する所定時刻を計時する。
【0025】
また、データバス15は、店舗内に設置された通信回線2と電気的に接続する通信I/F(Interface)24を接続している。通信I/F24は、通信回線2を介してSC3と接続している。
【0026】
図4は、POS端末1のRAM13の一部を示すメモリマップである。
図4において、RAM13は、合計器部131、旧合計器部132、実行フラグ部133、送信フラグ部134、リネームフラグ部135、完了フラグ部136、登録中フラグ部137、商品情報記憶部138を備えている。
【0027】
合計器部131は、所定期間内にPOS端末1が商品登録処理を実行した商品の売上データを記憶する。所定期間とは、例えば精算レポートを発行する精算処理から次の精算処理までの間をいう。所定期間の例として、例えば1日に1回精算レポートを発行する場合は24時間である。もちろん、24時間以外の所定期間としてもよい。内税の商品の売上データは、商品登録処理を実行した商品の単価の合計に税額が含まれたデータである。また、外税の商品の売上データは、商品登録処理を実行した商品の単価の合計データ(税額を含まない)である。
【0028】
旧合計器部132は、POS端末1が商品登録処理を実行した商品の売上データのうち、後述する所定のタイミングまでの売上データを記憶する。旧合計器部132は、後述する旧税率が適用される売上データを記憶する。
【0029】
実行フラグ部133は、所定のタイミングまでの旧税率が適用される売上データを旧合計器部132に記憶したか否か、また、後述する、新税率設定テーブル部143に記憶された新税率が含まれる新税率設定テーブルを税率設定テーブル部142にコピーして記憶したか否かを判断するフラグを記憶する。所定のタイミングまでの旧税率が適用される売上データを旧合計器部132に記憶し、かつ新税率設定テーブルを税率設定テーブル部142に記憶した場合に、実行フラグ部133の実行フラグは「1」にセットされる。所定のタイミングまでの旧税率が適用される売上データを旧合計器部132に記憶していない場合、あるいは新税率設定テーブルを税率設定テーブル部142に記憶していない場合は、実行フラグ部133の実行フラグは「0」にセットされる。
【0030】
送信フラグ部134は、旧合計器部132に記憶した所定のタイミングまでの旧税率が適用される売上データ(以降「旧売上データ」という)を、SC3に送信したか否かを示すフラグを記憶する。旧合計器部132に記憶した旧売上データは、例えばCSV(Comma Separated Values)データに変換され、SC3にFTP(File Transfer Protocol)送信される。SC3に送信された場合、送信フラグ部134の送信フラグは「1」にセットされる。SC3に送信されていない場合は、送信フラグは「0」にセットされる。
【0031】
リネームフラグ部135は、SC3に送信した旧合計器部132に記憶した旧売上データのファイルに付されたファイル名をリネームしたか否かを判断するフラグを記憶する。SC3は、POS端末1から送信されたすべての売上データを受信したか否かを、リネームデータを受信したか否かで判断する。そのため、POS端末1は、SC3に売上データを送信する場合、最後に、ファイル名をリネームしたリネームデータをSC3に送信する。POS端末1からSC3に対してリネームデータを送信した場合、リネームフラグ部135のリネームフラグは「1」にセットされる。POS端末1からSC3に対してリネームデータを送信していない場合、リネームフラグ部135のリネームフラグは「0」にセットされる。
【0032】
完了フラグ部136は、POS端末1がリネームデータを送信し、旧合計器部132に記憶した旧売上データの送信に係るすべての処理が終了したか否かを示すフラグを記憶する。すべての処理が終了した場合に、完了フラグ部136の完了フラグは「0」から「1」にセットされる。
【0033】
登録中フラグ部137は、POS端末1が顧客との取引中であるか否かを示すフラグを記憶する。POS端末1が顧客との取引中である場合は、登録中フラグ部137の登録中フラグは「1」にセットされる。顧客との取引をしていない場合には、登録中フラグは「0」にセットされる。
【0034】
商品情報記憶部138は、販売する商品の商品情報を記憶する。具体的には、読取部20から入力された商品コードに基づいて、商品マスタ1421から読み出した商品情報(商品名、単価、属性情報等)を、商品コードに対応させて記憶する。制御部100が商品情報記憶部138に商品情報を記憶する処理を商品登録処理という。
【0035】
次に、
図5〜
図6を用いて、SC3のハードウェアについて説明する。
図5は、SC3のハードウェア構成を示すブロック図である。
図5において、SC3は、制御主体となるCPU31、各種プログラムを記憶するROM32、各種データを展開するRAM33、各種プログラムを記憶するメモリ部34等を備えており、CPU31、ROM32、RAM33、メモリ部34は、互いにデータバス35を介して接続されている。CPU31とROM32とRAM33が、制御部300を構成する。すなわち、制御部300は、CPU31がROM32やメモリ部34に記憶されRAM33に展開された制御プログラム341に従って動作することによって、後述する制御処理を実行する。
【0036】
メモリ部34は、電源を切っても記憶情報が保持されるHDDやフラッシュメモリ等の不揮発性メモリで構成され、制御プログラム341を含むプログラム等を記憶する。
【0037】
データバス35には、操作部37、表示部38が、コントローラ36を介して接続されている。また、データバス35は、通信回線2と電気的に接続する通信I/F39を接続している。通信I/F39は、通信回線2を介してPOS端末1と接続している。また、データバス35は、通信回線4と電気的に接続する通信I/F40を接続している。通信I/F40は、通信回線4を介してホストコンピュータ5と接続している。
【0038】
図6は、SC3のRAM33の一部を示すメモリマップである。
図6において、RAM33は、合計器部331、旧合計器部332、合計器フラグ部333、旧合計器フラグ部334を備えている。
【0039】
合計器部331は、POS端末1から送信された、POS端末1の合計器部131に記憶された売上データを記憶する。旧合計器部332は、POS端末1から送信された、POS端末1の旧合計器部132に記憶された旧売上データを記憶する。
【0040】
合計器フラグ部333は、合計器部331に売上データが記憶されているか否かを示すフラグを記憶する。合計器部331に売上データが記憶されている場合に、合計器フラグ部333の合計器フラグは「1」にセットされる。合計器部331に売上データが記憶されていない場合に、合計器フラグ部333の合計器フラグは「0」にセットされる。
【0041】
旧合計器フラグ部334は、旧合計器部332に旧売上データが記憶されているか否かを示すフラグを記憶する。旧合計器部332に旧売上データが記憶されている場合に、旧合計器フラグ部334の旧合計器フラグは「1」にセットされる。旧合計器部332に旧売上データが記憶されていない場合に、旧合計器フラグ部334の旧合計器フラグは「0」にセットされる。
【0042】
次に、
図7を用いて、ホストコンピュータ5のハードウェアについて説明する。
図7において、ホストコンピュータ5は、制御主体となるCPU51、各種プログラムを記憶するROM52、各種データを展開するRAM53、各種プログラムを記憶するメモリ部54等を備えており、CPU51、ROM52、RAM53、メモリ部54は、互いにデータバス55を介して接続されている。CPU51とROM52とRAM53が、制御部500を構成する。すなわち、制御部500は、CPU51がROM52やメモリ部54に記憶されRAM53に展開された制御プログラム541に従って動作することによって、後述する制御処理を実行する。
【0043】
メモリ部54は、電源を切っても記憶情報が保持されるHDDやフラッシュメモリ等の不揮発性メモリで構成され、制御プログラム541を含むプログラム等を記憶する。
【0044】
データバス55には、操作部57、表示部58が、コントローラ56を介して接続されている。また、データバス55は、通信回線4と電気的に接続する通信I/F59を接続している。通信I/F59は、通信回線4を介してSC3と接続している。
【0045】
続いて、
図8〜
図10を用いて、POS端末1の制御処理について説明する。
図8は、POS端末の機能構成を示す機能ブロック図である。制御部100が、ROM12やメモリ部14に記憶された制御プログラム141を含む各種プログラムに従うことで、第1記憶手段101、税率変更手段102、第2記憶手段103、送信手段104を機能させる。
【0046】
第1記憶手段101は、販売された商品の売上データを記憶する機能を有する。
【0047】
税率変更手段102は、売上データから税額を算出する際に適用される税率を所定のタイミングで旧税率から新税率に変更する機能を有する。
【0048】
第2記憶手段103は、税率変更手段による前記旧税率から前記新税率への変更に際し、第1記憶手段101が記憶した前記所定のタイミングまでの前記旧税率が適用される前記売上データを記憶する機能を有する。
【0049】
送信手段104は、第2記憶手段103が記憶した前記旧税率が適用される前記売上データを上位装置に送信する機能を有する。
【0050】
図9および
図10は、POS端末の制御処理の流れを示すフローチャートである。
図9において、制御部100は、読取部20から商品に付された商品コードを読み取ることで、商品コードが入力されたか否かを判断する(ステップS11)。入力されたと判断した場合は(ステップS11のYes)、制御部100は、顧客との取引が開始されたまたは顧客との取引中であるとして、登録中フラグ部137の登録中フラグを「1」にセットする(ステップS12)。
【0051】
そして制御部100(第1記憶手段101)は、入力された商品コードに基づいて、商品マスタ1421から当該商品コードに対応した商品名、単価等を読み出して、商品情報記憶部138に記憶する商品登録処理を実行する(ステップS13)。そして制御部100は、処理を終了する。商品コードが入力される度に、ステップS12とステップS13の処理が実行される。そのため、商品情報記憶部138には、商品登録処理された商品の商品情報が蓄積される。
【0052】
また、商品コードが入力されていないと判断した場合は(ステップS11のNo)、制御部100は、締めキー171が操作されたか否かを判断する(ステップS21)。操作されたと判断した場合は(ステップS21のYes)、制御部100は、商品情報記憶部138に記憶された商品情報と入力された預り金額に基づいて、合計金額や釣銭を算出して、操作者用表示部18と顧客用表示部19に表示し、釣銭の払い出し指示をする等の、当該取引を終了する決済処理を実行する(ステップS22)。
【0053】
そして制御部100は、決済処理した商品情報に基づく売上データを合計器部131に累積記憶する(ステップS23)。そして制御部100は、決済処理が実行されたことにより商品登録処理が終了したため、登録中フラグ部137に記憶されている登録中フラグを「0」にセットする(ステップS24)。そして制御部100は処理を終了する。
【0054】
また、締めキー171が操作されていないと判断した場合は(ステップS21のNo)、制御部100は、精算処理の実行が指示されたか否かを判断する(ステップS31)。精算処理とは、POS端末1が所定期間(例えば24時間)に販売した商品の商品情報や決済情報等を精算レポートとして作成する処理をいう。精算レポートは、紙に出力して作成してもよいし、電子的に作成してもよい。精算処理の指示は、操作者が操作することにより任意に指示される場合や、予め定められた時刻に自動的に指示される場合や、SC3やホストコンピュータ5から指示される場合がある。
【0055】
精算指示がされたと判断した場合は(ステップS31のYes)、制御部100は、当該POS端末1での売上データに基づいて精算処理を実行する(ステップS32)。そして制御部100は、合計器部131に記憶された売上データを、通信回線2を介してSC3に送信する(ステップS33)。次に制御部100は、合計器部131に記憶された売上データをクリアする(ステップS34)。そして制御部100は、処理を終了する。
【0056】
また、精算処理の実行が指示されていないと判断した場合は(ステップS31のNo)、制御部100は、税率を変更するために新税率が記憶された新税率設定テーブルをSC3から受信したか否かを判断する(ステップS41)。受信したと判断した場合は(ステップS41のYes)、制御部100は、受信した新税率設定テーブルを新税率設定テーブル部143に記憶する(ステップS42)。
【0057】
また、新税率設定テーブルをSC3から受信していないと判断した場合は(ステップS41のNo)、制御部100は、税率を変更するために予め設定された所定のタイミングの一つである所定時刻(例えば日付が変わる午前0時)になったか否かを判断する(ステップS51)。所定時刻になったと判断した場合は(ステップS51のYes)、制御部100は、後述する税率変更の処理が完了したか否かを示す完了フラグが、完了したことを示す「1」であるか否かを判断する(ステップS52)。完了フラグが「1」でないと判断した場合は(ステップS52のNo)、税率変更処理が完了していないとして、制御部100は、
図10で詳細に説明する税率変更処理を実行する(ステップS53)。
【0058】
完了フラグが「1」であると判断した場合は(ステップS52のYes)、制御部100は、そのまま処理を終了する。また、ステップS51において、所定時刻になっていないと判断した場合は(ステップS51のNo)、制御部100は、ステップS11に戻って待機する。
【0059】
続いて、
図10を用いて、制御部100がステップS53で実行する税率変更処理について説明する。
図10において、制御部100は、まず登録中フラグ部137に記憶されている登録中フラグが「1」であるか否か、すなわち、POS端末1が顧客との取引が実行中か否かを判断する(ステップS61)。登録中フラグが「1」であると判断した場合(ステップS61のYes)、制御部100は、ステップS11に戻って待機する。登録中フラグが「1」であることは、顧客との取引が実行中であるため、この場合、制御部100は、実行中の当該取引について決済処理がなされ、取引が終了するまでは旧税率が適用され、税率変更の処理は実行しない。これは、取引最中に税率が変更されることにより、同一商品にかかる税額が異なることによる、取引の混乱を防止するためである。
【0060】
登録中フラグが「1」であると判断した場合、当該取引が終了して登録中フラグが「0」にセットされたタイミング(所定のタイミングの一例)でステップS53の税率変更処理が実行される。このため、次客の取引からは変更後の新税率が適用される。
【0061】
また、登録中フラグが「1」でなく「0」であると判断した場合は(ステップS61のNo)、POS端末1は顧客との取引中ではないので、制御部100は、新税率設定テーブル部143に、新税率設定テーブルが記憶されているか否かを判断する(ステップS62)。税率が変更される場合、SC3から、事前に新税率設定テーブルが送信され、POS端末1はこれを受信して新税率設定テーブル部143に記憶する。
【0062】
新税率設定テーブルが記憶されていないと判断した場合は(ステップS62のNo)、制御部100はそのまま処理を終了する。新税率設定テーブル部143に新税率設定テーブルが記憶されていると判断した場合は(ステップS62のYes)、制御部100は、実行フラグ部133に記憶されている実行フラグが「0」であるか否かを判断する(ステップS63)。実行フラグが「0」であると判断した場合は(ステップS63のYes)、税率変更処理が未だ実行されていないとして、制御部100(第2記憶手段103)は、合計器部131に記憶されている売上データを、旧合計器部132にコピーして旧売上データとして記憶する(ステップS64)。この際、旧合計器部132にコピーした旧売上データは、合計器部131から消去されない。
【0063】
この合計器部131から旧合計器部132にコピーされた旧売上データは、前回に精算処理された後から旧合計器部132にコピーされるまでの間に、ステップS34で合計器部131に蓄積された売上データである。また、旧売上データは、税率が変更されるまでの旧税率が適用される売上データである。実施形態では、売上データをコピーした合計器部131の売上データはクリアされない。なお、売上データが合計器部131から旧合計器部132にコピーされたタイミングで、合計器部131に記憶した売上データをクリアするようにしてもよい。
【0064】
次に制御部100(税率変更手段102)は、新税率設定テーブル部143に記憶されている新税率設定テーブルを税率設定テーブル部142にコピーする(ステップS65)。この処理によって新税率を含む新税率設定テーブルが税率設定テーブル部142に記憶される。この場合、旧税率を含む今まで税率設定テーブル部142に記憶していた税率設定テーブルは消去される。次に制御部100は、実行フラグ部133に記憶している実行フラグを「1」にセットする(ステップS66)。そして制御部100は処理を終了する。
【0065】
なお、ステップS64の処理とステップS65の処理の処理順は逆であってもよい。すなわち、制御部100(税率変更手段102)が、税率設定テーブル部143に記憶されている新税率設定テーブルを税率設定テーブル部142にコピーする処理(ステップS65)を実行後に、制御部100(第2記憶手段103)が、計器部131に記憶されている売上データを、旧合計器部132にコピーして旧売上データとして記憶する処理(ステップS64)を実行してもよい。
【0066】
一方、ステップS63において、実行フラグ部133に記憶されている実行フラグが「0」でないと判断した場合は(ステップS63のNo)、制御部100は、送信フラグ部134に記憶されている送信フラグが「0」であるか否かを判断する(ステップS71)。送信フラグが「0」であると判断した場合は(ステップS71のYes)、ステップS64で旧合計器部132に記憶した旧売上データがSC3に送信されていないので、制御部100は、旧売上データをSC3に送信可能か否かを判断する(ステップS72)。通信回線が断線等で不具合の場合や、SC3にトラブルが発生したりオフラインとなっている場合は、POS端末1からSC3への旧売上データが不可であると判断される。
【0067】
旧売上データをSC3に送信不可であると判断した場合は(ステップS72のNo)、制御部100はそのまま処理を終了する。一方送信可能であると判断した場合は(ステップS72のYes)、制御部100(送信手段104)は、旧合計器部132に記憶した旧売上データをSC3に送信する(ステップS73)。次に制御部100は、旧売上データの送信が完了したか否かを判断する(ステップS74)。完了するまで待機し(ステップS74のNo)、完了したと判断した場合は(ステップS74のYes)、制御部100は、送信フラグ部134に記憶されている送信フラグを「1」にセットする(ステップS75)。
【0068】
また、ステップS71において、送信フラグが「0」ではなく「1」であると判断した場合は(ステップS71のNo)、次に制御部100は、リネームフラグ部135に記憶されたリネームフラグが「0」であるか否かを判断する(ステップS81)。
【0069】
旧売上データは、CVSスタイルでFTP送信するため、SC3への送信が完了するまで時間を要する。そのため、POS端末1は、旧売上データを送信後、送信完了の信号として、送信ファイルの名前をリネームしてSC3に送信する。リネームデータを受信したSC3は、POS端末1からの旧売上データの受信完了を認識することができる。
【0070】
リネームフラグ部135に記憶されたリネームフラグが「0」であると判断した場合は(ステップS81のYes)、制御部100は、送信した旧売上データのファイルに付加するリネームデータを生成してSC3に送信する(ステップS82)。そして制御部100は、リネームフラグ部135に記憶されたリネームフラグを「1」にセットする(ステップS83)。そして制御部100は、処理を終了する。
【0071】
また、リネームフラグ部135に記憶されたリネームフラグが「0」ではなく「1」であると判断した場合は(ステップS81のNo)、次に制御部100は、完了フラグ部136に記憶された、すべての税率変更処理が完了したか否かを示す完了フラグが「0」であるか否かを判断する(ステップS91)。完了フラグが「0」であると判断した場合は(ステップS91のYes)、実行フラグ、送信フラグ、リネームフラグのいずれもが「1」にセットされている場合は、未だ完了フラグが「1」にセットされていないとして、完了フラグを「1」にセットする(ステップS92)。そして制御部100は処理を終了する。また、完了フラグが「1」であると判断した場合は、そのまま処理を終了する。なお、完了フラグが「0」でなく「1」であると判断した場合は(ステップS91のNo)、制御部100は、そのまま処理を終了する。
【0072】
このようなPOS端末1によれば、所定のタイミングである、例えば所定時刻になったタイミングあるいは登録中フラグが「0」にセットされたタイミングで、合計器部131に記憶された売上データを旧売上データとして旧合計器部132にコピーして記憶するため、税率変更前の売上データに対して旧税率を適用して税額を求めることが容易に可能となる。
【0073】
また、旧売上データとして旧合計器部132にコピーしたときに合計器部131に記憶された売上データを消去しないため、合計器部131は、前回の精算処理以降のすべての売上データを記憶している。そのため、例えば所定のタイミング以降に所定のタイミング以前の売上データに対して返品の要請があった場合、当該売上データに対する返品処理を、旧税率の下で実行することができる。
【0074】
次に、
図11を用いて、SC3の制御処理の流れについて説明する。
図11において、制御部300は、POS端末1から、ステップS33の処理に伴う売上データを受信したか否かを判断する(ステップS101)。受信したと判断した場合は(ステップS101のYes)、制御部300は、受信した売上データを、合計器部331に記憶する(ステップS102)。そして制御部300は、合計器フラグ部333に記憶されている合計器フラグを「1」にセットする(ステップS103)。そして制御部300は、処理を終了する。
【0075】
一方、POS端末1から、売上データを受信していないと判断した場合は(ステップS101のNo)、次に制御部300は、ステップS73の処理に伴う旧売上データを受信したか否かを判断する(ステップS111)。受信したと判断した場合は(ステップS111のYes)、制御部300は、受信した旧売上データを、旧合計器部332に記憶する(ステップS112)。そして制御部300は、旧合計器フラグ部334に記憶されている旧合計器フラグを「1」にセットする(ステップS113)。そして制御部300は、処理を終了する。
【0076】
また、旧売上データを受信していないと判断した場合は(ステップS111のNo)、制御部300は、ホストコンピュータ5への売上データ送信の指示があったか否かを判断する(ステップS121)。なかったと判断した場合は(ステップS121のNo)、そのまま処理を終了する。あったと判断した場合は(ステップS121のYes)、制御部300は、合計器フラグ部333に記憶されている合計器フラグと旧合計器フラグ部334に記憶された旧合計器フラグがともに「1」であるか否かを判断する(ステップS122)。
【0077】
ともに「1」であると判断した場合は(ステップS122のYes)、制御部300は、合計器部331に記憶されている売上データと旧合計器部332に記憶されている旧売上データを関連付けて、同時にホストコンピュータ5に送信する(ステップS123)。そして制御部300は、合計器フラグ部333に記憶されている合計器フラグと旧合計器フラグ部334に記憶された旧合計器フラグをともに「0」にセットする(ステップS124)。そして制御部300は処理を終了する。
【0078】
一方、合計器フラグ部333に記憶されている合計器フラグと旧合計器フラグ部334に記憶された旧合計器フラグがともに「1」ではないと判断した場合は(ステップS122のNo)、制御部300は、合計器フラグ部333に記憶されている合計器フラグが「1」であるか否かを判断する(ステップS125)。
【0079】
合計器フラグが「1」であると判断した場合は(ステップS125のYes)、制御部300は、合計器部331に記憶されている売上データをホストコンピュータ5に送信する(ステップS126)。そして制御部300は、合計器フラグ部333に記憶されている合計器フラグを「0」にセットする(ステップS127)。なお、合計器フラグが「1」ではないと判断した場合は(ステップS125のNo)、制御部300は、そのまま処理を終了する。
【0080】
このようなSC3によれば、POS端末1から受信した売上データと旧売上データとを関連付けてホストコンピュータ5に送信することができる。
【0081】
次に、
図12を用いて、ホストコンピュータ5の制御処理の流れについて説明する。
図12において、制御部500は、SC3からステップS123またはステップS126の処理に伴う売上データを受信したか否かを判断する(ステップS131)。受信していないと判断した場合は(ステップS131のNo)、そのまま処理を終了する。受信したと判断した場合は(ステップS131のYes)、制御部500は、受信した売上データに関連付けられた旧売上データがあるか否かを判断する(ステップS132)。関連付けられた旧売上データがあると判断した場合は(ステップS132のYes)、制御部500は、受信した売上データと、売上データに関連付けられた旧売上データとに基づいて税額を算出する(ステップS133)。具体的には、旧売上データに対して旧税率を適用して税額を算出する。また、売上データから旧売上データ分を減した売上データに対して、新税率を適用して税額を算出する。そして制御部500は、処理を終了する。
【0082】
一方、受信した売上データに関連付けられた旧売上データがないと判断した場合は(ステップS132のNo)、制御部500は、受信した売上データに新税率を適用して税額を算出する(ステップS134)。そして制御部500は、処理を終了する。
このようなホストコンピュータ5によれば、受信した売上データと旧売上データに基づいて、正確な税額を算出することができる。
【0083】
以上、本発明の実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更、組み合わせを行うことができる。これらの実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0084】
例えば、実施形態では、所定のタイミングで、新税率設定テーブル部143に記憶されている新税率設定テーブルを税率設定テーブル部142にコピーして、新税率に対する税率設定テーブルを作成したが、予め旧税率の税率設定テーブルと新税率の税率設定テーブルを別々に作成し、所定のタイミングまでは旧税率の税率設定テーブルを用い、所定のタイミング以降は新税率の税率設定テーブルを用いるようにしてもよい。
【0085】
なお、実施形態の商品販売データ処理装置で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【0086】
また、実施形態の商品販売データ処理装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、実施形態の商品販売データ処理装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【0087】
また、実施形態の商品販売データ処理装置で実行されるプログラムを、ROM等に予め組み込んで提供するように構成してもよい。