JP5634792B2 - 注文データ管理装置および注文データ管理方法 - Google Patents

注文データ管理装置および注文データ管理方法 Download PDF

Info

Publication number
JP5634792B2
JP5634792B2 JP2010180370A JP2010180370A JP5634792B2 JP 5634792 B2 JP5634792 B2 JP 5634792B2 JP 2010180370 A JP2010180370 A JP 2010180370A JP 2010180370 A JP2010180370 A JP 2010180370A JP 5634792 B2 JP5634792 B2 JP 5634792B2
Authority
JP
Japan
Prior art keywords
order data
management device
order
data
data management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010180370A
Other languages
English (en)
Other versions
JP2012038253A (ja
Inventor
菊地 善行
善行 菊地
澁谷 浩志
浩志 澁谷
森 雅之
雅之 森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Solutions Inc.
Original Assignee
Seiko Solutions Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Solutions Inc. filed Critical Seiko Solutions Inc.
Priority to JP2010180370A priority Critical patent/JP5634792B2/ja
Publication of JP2012038253A publication Critical patent/JP2012038253A/ja
Application granted granted Critical
Publication of JP5634792B2 publication Critical patent/JP5634792B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Cash Registers Or Receiving Machines (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、メイン管理装置とサブ管理装置で構成される注文データ管理装置において、メイン管理装置とサブ管理装置がそれぞれ保存するデータの完全一致を維持する注文データ管理装置および注文データ管理方法に関する。
レストラン、居酒屋あるいはホテル等の飲食店では、オーダーエントリシステムが使用されている。このオーダーエントリシステムでは、例えば、客から料理の注文を受けた場合、接客担当者は、携帯しているハンディターミナル(注文入力端末)にテーブル番号等と注文を受けた注文メニューを入力し、注文データを作成する。ハンディターミナルには、飲食店で提供するメニューリストが予め記憶されており、接客担当者は、注文メニューを入力する際、記憶されているメニューリストの中から選択入力する。また、同様のメニューリストは、注文データ管理装置にも記憶されている。ハンディターミナルで作成された注文データは、ハンディターミナルから無線送信される。
無線送信された注文データは、飲食店内の各コーナー等に設置された無線制御装置、メイン管理装置またはサブ管理装置によって受信され、各種データの処理や一元管理等を行う注文データ管理装置に送信される。注文データ管理装置は、注文データを受信すると、受信した注文データに注文データを受信した時刻、接客担当者を識別する番号等の情報を含めたデータを付加したオーダーデータを記憶装置に記憶する。
注文データ管理装置は、厨房に設置されたプリンタに調理指示用の伝票データを送信する。調理担当者は、プリンタより印刷出力された調理指示用の伝票を受け取り、受け取った調理指示用の伝票に従って調理を開始し、調理完了するとその旨を接客担当者に通知する。接客担当者は調理完了通知に従い、客から注文を受けた料理を提供する。一方、注文データ管理装置は、プリンタに会計用伝票データを送信する。接客担当者は、プリンタより印刷出力された会計用伝票を客に手渡し、客は会計時にこの会計用伝票を利用し、会計時に会計処理を行う。このようなオーダーエントリシステムについて、例えば、下記の特許文献1に提案されている。
図15は、上述のオーダーエントリシステムの構成の一例を表す図である。
この図に示すように、オーダーエントリシステムは、メイン管理装置1およびサブ管理装置2がハブ(HUB)3を介して接続されるとともに、このHUB3に会計装置であるPOS(Point−Of−Sale)4が接続される。ハンディターミナル5は、複数台がメイン管理装置1またはサブ管理装置2に対し無線によって接続される。プリンタ6は、無線によってメイン管理装置1またはサブ管理装置2に接続される。
このメイン管理装置1またはサブ管理装置2は、ハンディターミナル5等から注文データを受信し、プリンタ等の各出力機器に対しデータを送信する機能や、POS4との間で会計データの送受信を行う機能、オーダーエントリシステム内で用いられるデータを記憶する機能、個別の各機器(ハンディターミナル、プリンタ等)を制御する機能を有している。そのため、メイン管理装置1またはサブ管理装置2そのものが故障したとしても、オーダーエントリシステム全体の動作が停止してしまわないように、二重化を図っており、メイン管理装置1またはサブ管理装置2のいずれか一方が稼働することによって、システム全体をバックアップする機能がある。
バックアップ機能は、例えば、以下のようにして行われる。すなわち、注文データ管理装置として、メイン管理装置1、サブ管理装置2の二台が設けられ、メイン管理装置1、サブ管理装置2の両方が正常に動作している場合には、メイン管理装置1がシステム内でのデータ受信、データ管理およびデータ制御を主体的に実行する。このような主体的な動作を行うこと「運転状態」と定義する。そして、メイン管理装置1がハンディターミナル10等から注文データを受信しオーダーデータとしてメイン管理装置1の記憶装置に記憶した後、サブ管理装置2にオーダーデータを転送し、サブ管理装置2の記憶装置に記憶させることでバックアップをする。このサブ管理装置2のように、運転状態のメイン管理装置1からオーダーデータを受信して記憶装置に記憶する、いわゆるバックアップ動作を行うことを「待機状態」と定義する。またメイン管理装置1またはサブ管理装置2に障害が発生し、運転状態または待機状態として動作できない状態を「障害状態」と定義する。またメイン管理装置1とサブ管理装置2が相互のそれぞれの記憶装置に記憶するオーダーデータの相互チェックを行う状態を「確認状態」と定義し、メイン管理装置とサブ管理装置間でデータの完全一致を確認し保つ処理を同期処理と定義する。
メイン管理装置1が正常に動作し、サブ管理装置2に障害が発生し障害状態になった場合、メイン管理装置1は、サブ管理装置2にメイン管理装置1のオーダーデータをバックアップすることができないため、メイン管理装置1のみが運転状態として稼動する。一方、サブ管理装置2が正常に動作し、メイン管理装置1に障害が発生して障害状態になった場合、サブ管理装置2が運転状態として稼動する。
メイン管理装置1が運転状態で、サブ管理装置2が待機状態でいずれも正常に動作している状態を注文データ管理装置の「二重化運転状態」と定義する。二重化運転状態において、メイン管理装置1からサブ管理装置2へオーダーデータの転送が失敗、またはサブ管理装置2でオーダーデータの記憶装置への記憶に失敗した場合には、メイン管理装置1とサブ管理装置2の接続性が失われた(二重化通信をする相手の装置と通信ができなくなった)として、メイン管理装置1は運転状態を停止し確認状態になり、サブ管理装置2は待機状態から確認状態に移行し、メイン管理装置1とサブ管理装置2とが記憶するデータの相互チェックを行う。この相互チェックにおいて、メイン管理装置1は、サブ管理装置2との記憶するデータの差分を確認し、差分となるデータを発見した場合にはその差分データを記憶している注文データ管理装置から他方の注文データ管理装置へコピーして、メイン管理装置1とサブ管理装置2のオーダーデータが完全一致状態になるようにする。オーダーデータが完全一致状態になった場合、再度メイン管理装置1は運転状態になりサブ管理装置2は待機状態に戻る。二重化運転状態にあった注文データ管理装置内のメイン管理装置1またはサブ管理装置2が運転状態または待機状態を停止して確認状態に移行し、オーダーデータの相互チェックを行い、注文データ管理装置間でのオーダーデータの差分を考慮したデータコピー等を行うことで、メイン管理装置1、サブ管理2間のオーダーデータの完全一致を図る処理を二重化遷移処理といい、二重化遷移処理を行っている状態を二重化遷移状態という。またメイン管理装置1またはサブ管理装置2のいずれかが障害状態になり二重化運転状態で稼動できない場合を「単独運転状態」と定義する。
以降、メイン管理装置1を、主体的な動作を行う(運転状態として動作する)装置として事前設定したものとし、サブ管理装置2を、バックアップ動作を行う(待機状態として動作する)装置として事前設定したものとして説明する。
特開2001−76258号公報
しかしながら、上述した技術においては、メイン管理装置1とサブ管理装置2とで、保存されたデータの一致状態を保つことが必要であるが、保存されていたオーダーデータが失われる場合として、下記の3通りが考えられる。
(1)
メイン管理装置1とサブ管理装置2が二重化運転状態で正常に動作している際に、メイン管理装置1がハードウェア等の問題でハングアップ状態となり、ある期間停止し、その間、サブ管理装置2がメイン管理装置1の代わりに運転状態となり、ハンディターミナル5から注文データを受信してオーダーデータを保存したとする。ある期間が経過した後に、メイン管理装置1が復帰したとすると、この状態は、メイン管理装置1、サブ管理装置2の両方の注文データ管理装置がオーダーデータを受信保存できる動作状態(運転状態)であり、このような場合、メイン管理装置1が運転状態として事前設定されているため、メイン管理装置1のオーダーデータが優先される。よって、ここで二重化遷移処理を行うと、メイン管理装置1が記憶装置に記憶している、ある期間分欠如したオーダーデータがサブ管理装置2にコピーされ上書きされてしまう。よって、メイン管理装置1が停止中にサブ管理装置2で保存されたデータが失われる場合がある。
(2)
メイン管理装置1とサブ管理装置2との、二重化運転状態を維持するための両者間での通信が不安定になると、サブ管理装置2が、メイン管理装置1が動作していないものと勘違いし、確認状態を経て単独運転状態になる。その結果、上記(1)と同様に、メイン管理装置1、サブ管理装置2がいずれも単独運転状態でそれぞれ別々に注文データを受信し、互いに異なるオーダーデータを保持することになる。通信の不安定が解消し、二重化遷移状態に移行し二重化遷移処理が行われると、メイン管理装置1のデータがサブ管理装置2に上書きされることでメインのメイン管理装置1で受信しなかった注文データのオーダーデータが記憶されず、該オーダーデータが失われる場合がある。
(3)
メイン管理装置1が故障等して動作しなった場合、メイン管理装置1内のハードウェア部品を交換する等のメンテナンスを行うことがある。このような場合、サブ管理装置2には、メイン管理装置1が障害状態中に受信しオーダーデータとして記憶したオーダーデータが保存されているため、部品交換後には、サブ管理装置2から必要なオーダーデータをメイン管理装置1にコピーさせる必要がある。しかし、メイン管理装置1およびサブ管理装置2を停止状態にして部品交換を実施した後、メイン管理装置1を先に起動させサブ管理装置2を後から起動させると、メイン管理装置1に記憶された、あるオーダーデータが欠如した状態のオーダーデータがサブ管理装置2に上書きされ、サブ管理装置2に記憶されていたオーダーデータが失われることがある。
このように、運転状態を一旦停止し、メイン管理装置1とサブ管理装置2のオーダーデータの相互チェックを行い、差分データのコピーを行う、という二重化遷移処理の際、メイン管理装置1を優先して差分コピーを行うと、サブ管理装置2に新しいデータ(メイン管理装置1にはないオーダーデータ)があってもそのデータが上書きされて消えてしまうケースがあるという問題がある。
また、一般に、メイン管理装置1とサブ管理装置2との間で行うデータの相互チェックや差分データのコピーは、記憶する1つ1つのデータ同士の確認を行うため、長い時間を要する。よって、データの完全一致やシステムとしての信頼性を確保するための重要な処理とはいえ、メイン管理装置1とサブ管理装置2との間で頻繁にデータの相互チェックや差分データのコピーを行うことは、注文データ管理装置を使用し運用するユーザを、その都度、その時間だけ待たせることになる。よって、このような、データの完全一致を確保する二重化遷移処理は、できるだけ短時間で完了することが望まれている。
本発明は、このような事情に鑑みてなされたもので、その目的は、複数の機器間においてデータの完全一致状態を維持することができる注文データ管理装置、注文データ管理方法を提供することにある。
また、本願発明は、データの完全一致を維持するための処理に要する時間の短縮を図った注文データ管理装置、注文データ管理方法を提供することにある。
上述した課題を解決するために、本発明は、第1注文データ管理装置と第2注文データ管理装置とを有し、客からの注文に基づく注文データを注文入力端末から受信して記憶する注文データ管理装置であって、前記第1注文データ管理装置は、前記注文入力端末から受信した注文データに伝票番号を付与し、オーダーデータとして自装置の記憶部に記憶する第1データ記憶手段と、記憶した前記オーダーデータを前記第2注文データ管理装置に送信して記憶させるオーダーデータ通信手段とを有し、前記第2注文データ管理装置は、前記第1注文データ管理装置が前記注文入力端末からの注文データを記憶できない場合に前記注文入力端末からの注文データを受信して伝票番号を付与し、オーダーデータとして自装置の記憶部に記憶する第2データ記憶手段を有し、前記第1注文データ管理装置は、前記第2注文データ管理装置の記憶部に記憶されたオーダーデータを前記第1注文データ管理装置にサブ参照データとしてコピーするサブ参照データ生成部と、前記第1注文データ管理装置の記憶部に記憶されたオーダーデータとコピーした前記サブ参照データとをマージして、マージデータを生成するマージデータ生成部と、前記マージデータを前記第1注文データ管理装置の記憶部にあるオーダーデータと置き換えて記憶するとともに、前記マージデータを前記第2注文データ管理装置に送信して、前記第2注文データ管理装置の記憶部にあるオーダーデータと置き換えて記憶させるデータ整合部と、を有することを特徴とする。
これにより、必ず、第1または第2のどちらかの注文データ管理装置が、注文入力端末からの注文データを取得してオーダーデータとして記憶し、整合性が保たれて、完全一致が維持されたオーダーデータを両注文データ管理装置が保持することができる。
また、本願発明において、前記注文データは、前記注文を受け付けた注文入力端末と当該注文とを一意に識別する情報であるオーダー登録機器情報を含み、前記マージデータ生成部は、前記第1注文データ管理装置の記憶部にあるオーダーデータのうち、前記サブ参照データ内に存在しないオーダー登録機器情報を有するオーダーデータを、サブ参照データに加えてマージデータを生成することを特徴とする。
これにより、第1および第2の注文データ管理装置が記憶するオーダーデータに基づき、整合性が保たれて、完全一致が維持されたマージデータを作成することができる。
また、本発明の注文データ管理装置は、さらに伝票番号確認部を有し、前記第1データ記憶手段は、受信した注文データに対して前記第1注文データ管理装置が受信したことを識別可能とする伝票番号を付与し、前記第1注文データ管理装置の記憶部にオーダーデータとして記憶し、前記第2データ記憶手段は、受信した注文データに対して前記第2注文データ管理装置が受信したことを識別可能とする伝票番号を付与し、前記第2注文データ管理装置の記憶部にオーダーデータとして記憶し、前記伝票番号確認部は、前記第1注文データ管理装置の記憶部または前記第2注文データ管理装置の記憶部に、前記第2注文データ管理装置において付与された伝票番号を有するオーダーデータが存在するか否かを確認するものとする。
通常、第1注文データ管理装置に異常が発生しない限り、第1注文データ管理装置が注文入力端末機から注文データを受信して伝票番号を付与する。よって、伝票番号確認部の機能により、第1注文データ管理装置が伝票番号を付与しない状態(第2注文データ管理装置が注文データを受信して伝票番号を付与する状態)が発生した事実を、容易に認識することができ、全体として、データの完全一致を維持するための処理に要する時間の短縮化を図ることができる。
また、本発明は、前記伝票番号確認部が前記第1注文データ管理装置の記憶部および前記第2注文データ管理装置の記憶部のどちらにも、前記第2注文データ管理装置において付与された伝票番号を有するオーダーデータの存在を確認できない場合、前記データ整合部が、前記第1注文データ管理装置の記憶部に記憶されたオーダーデータを前記第2注文データ管理装置に送信して、前記第2注文データ管理装置の記憶部にあるオーダーデータと置き換えて記憶させるものとする。
これにより、伝票番号確認部による伝票番号の確認という単純な処理のみで、データの完全一致を維持するための処理の実施を迅速に決定することができる。
また、本発明は、前記伝票番号確認部が前記第1注文データ管理装置の記憶部または前記第2注文データ管理装置の記憶部に前記第2注文データ管理装置において付与された伝票番号を有するオーダーデータの存在を確認した場合、前記マージデータ生成部が、前記マージデータを作成するものとする。
これにより、伝票番号確認部による伝票番号の確認という単純な処理のみで、データのマージ処理の実施を迅速に決定することができ、オーダーデータの整合性を保ち、完全一致を維持することができる。
また本発明は、さらに、前回の稼動状態が、注文入力端末からの注文データを直接受信してオーダーデータとして記憶する状態である運転状態であったのか、または、他方の注文データ管理装置が受信した注文データに基づくオーダーデータを前記他方の注文データ管理装置から取得して記憶する状態である待機状態であったのか、を判断する稼動状態判断部と、前記第1注文データ管理装置と前記第2注文データ管理装置とで前回の稼動状態が同一であると前記稼動状態判断部が判断した場合に、前記第1注文データ管理装置の記憶部に記憶されているオーダーデータと前記第2注文データ管理装置の記憶部に記憶されているオーダーデータとが一致するか不一致であるかを判断するデータ一致判断部とを有し、前記伝票番号確認部が、前記データ一致判断部が前記第1注文データ管理装置の記憶部に記憶されているオーダーデータと前記第2注文データ管理装置の記憶部に記憶されているオーダーデータとが不一致であると判断した場合に伝票番号の確認を実施するものとする。
これにより、伝票番号の確認を実施するか否かを、前回の稼動状態の確認という簡単な処理のみで決定することができ、データの完全一致を維持するための処理の高速化を図ることができる。
また、本発明において、前記オーダー登録機器情報は、前記注文入力端末が、客からの注文に基づく注文データを作成するときに、当該注文入力端末を識別する情報と当該注文に対して前記注文入力端末が付与する識別情報とを用いて作成し、前記注文データと共に前記注文データ管理装置に送信する情報であるものとする。
このように、オーダー登録機器情報の一意性は極めて高く、データの完全一致を維持するための処理を実施する際に、オーダーデータの重複などを正確に把握することができる。
また、本発明は、前記第1注文データ管理装置が、注文入力端末からの注文データを直接受信してオーダーデータとして記憶する運転状態にあり、前記第2注文データ管理装置が、前記第1注文データ管理装置から前記オーダーデータを取得して記憶する待機状態にあり、前記第1注文データ管理装置と前記第2注文データ管理装置とが、集線装置を介した有線接続と、無線接続とによって、互いに通信可能に配置された状態において、前記有線接続による通信に異常が生じた場合、前記第1注文データ管理装置と前記第2注文データ管理装置とのうち、前記集線装置との通信が可能な注文データ管理装置を運転状態にさせ、前記接続機器と通信が不可能な注文データ管理装置を待機状態とさせる、稼動状態変更手段をさらに有するものとする。
これにより、集線装置との有線接続が確実に確立している注文データ管理装置を運転状態とすることができるため、通信不良等が原因となり得るデータ不整合の発生を低減することができる。
また、本発明は、第1注文データ管理装置と第2注文データ管理装置とを有し、客からの注文に基づく注文データを注文入力端末から受信して記憶する注文データ管理装置に用いられる注文データ管理方法であって、前記第1注文データ管理装置は、第1データ記憶手段と、オーダーデータ通信手段と、サブ参照データ生成部と、マージデータ生成部と、データ整合部とを有し、前記第2注文データ管理装置は、第2データ記憶手段を有し、前記第1注文データ管理装置の第1データ記憶手段が、前記注文入力端末から受信した注文データに伝票番号を付与し、オーダーデータとして自装置の記憶部に記憶するステップと、前記第1注文データ管理装置のオーダーデータ通信手段が、記憶した前記オーダーデータを前記第2注文データ管理装置に送信して記憶させるステップと、前記第2注文データ管理装置の第2データ記憶手段が、前記第1注文データ管理装置が前記注文入力端末からの注文データを記憶できない場合に前記注文入力端末からの注文データを受信して伝票番号を付与し、オーダーデータとして自装置の記憶部に記憶するステップと、前記第1注文データ管理装置のサブ参照データ生成部が、前記第2注文データ管理装置の記憶部に記憶されたオーダーデータを前記第1注文データ管理装置にサブ参照データとしてコピーするステップと、前記第1注文データ管理装置のマージデータ生成部が、前記第1注文データ管理装置の記憶部に記憶されたオーダーデータとコピーした前記サブ参照データとをマージして、マージデータを生成するステップと、前記第1注文データ管理装置のデータ整合部が、前記マージデータを前記第1注文データ管理装置の記憶部にあるオーダーデータと置き換えて記憶するとともに、前記マージデータを前記第2注文データ管理装置に送信して、前記第2注文データ管理装置の記憶部にあるオーダーデータと置き換えて記憶させるデータ整合部と、を有することを特徴とする注文データ管理方法である。
以上説明したように、この発明によれば、サブ管理装置に記憶されたオーダーデータをメイン管理装置にサブ参照データとしてコピーし、メイン管理装置に記憶されたオーダーデータとサブ参照データ内に存在しメイン管理装置内のオーダーデータに存在しないオーダーデータを抽出してマージデータを生成し、メイン管理装置に記憶されたマージデータをサブ管理装置にコピーし、メイン管理装置のマージデータをメイン管理装置のオーダーデータとしてコピーするようにしたので、双方に記憶されたデータからマージデータを生成する際に、データが欠落してしまうことを防止することができる。
また、オーダーデータに含まれるオーダー登録機器情報に基づいて、記憶されたオーダーデータのうち前記サブ参照データに存在しないオーダー登録機器情報を有するオーダーデータをサブ参照データに加えてマージデータを生成するようにしたので、データが二重登録されてしまうことを防止することができる。
また、伝票番号の番号体系を、伝票番号を付与する注文データ管理装置毎に異ならせたことによって、オーダーデータのマージ処理が必要な状態、すなわち、サブとして事前設定され「待機状態」であるはずの注文データ管理装置が「運転状態」になった、というイレギュラー状態を容易に確認することができる。メイン管理装置とサブ管理装置は、起動時に、両注文データ管理装置間で同期処理(二重化通信をする相手のメイン管理装置またはサブ管理装置と、データの完全一致を確認し保つ処理)を行うのだが、このときに伝票番号の番号体系の確認を行うことで前回の動作がイレギュラー状態であったか否かを容易に確認することができる。したがって、起動の際の同期処理において、前回の動作がイレギュラー状態であったときにのみデータ同期を実施すればよく、起動の度に長い時間をかけてデータ同期を行う頻度を減らすことができ、結果的に同期処理に要する時間を短縮することができる。これは特に、注文データ管理装置に特段の異常があったわけではなく、通常起動をするために注文データ管理装置に電源を投入した際、すばやく起動できるという点から、非常に有効である。
この発明の一実施形態によるオーダーエントリシステム100の構成を示す概略ブロック図である。 メイン管理装置40の構成を表すブロック図である。 オーダーエントリシステム100の動作の概略を説明する図である。 注文データ管理装置間で同期をとる場合を表す図である。 ハンディターミナル10から注文データ管理装置に送信される注文データの一例を表す図である。 メイン管理装置40の動作を示すフローチャートである。 オーダーデータ受信処理を説明するフローチャートである。 オーダーデータの登録の手順を表す図である。 受信したオーダー登録機器情報と記憶部に記憶されたオーダー登録機器情報について説明する図である。 同期処理について説明するフローチャートである。 同期処理について説明するフローチャートである。 同期処理について説明するフローチャートである。 印字フラグのデータの一例を表す図である。 印字完了フラグのデータの一例を表す図である。 オーダーエントリシステムの構成を表す図である。
以下、本発明の一実施形態によるオーダーエントリシステムについて図面を参照して説明する。図1は、この発明の一実施形態によるオーダーエントリシステム100の構成を示す概略ブロック図である。
オーダーエントリシステム100は、複数のハンディターミナル10、据置ターミナル20、無線制御装置30、メイン管理装置40、サブ管理装置50、無線プリンタ60、有線プリンタ61、HUB63、バーコードリーダ80、表示装置90を備えている。
ハンディターミナル10は、飲食店内の店員に携帯され、顧客からの注文に応じて入力された注文メニューの内容を注文データとして生成し、前記注文データをメイン管理装置40またはサブ管理装置50に、無線または無線制御装置30を介して有線で送信する。
据置ターミナル20は、飲食店内のテーブルにまたは料理置き場に設置され、顧客または店員が操作して入力された注文メニューの内容を注文データとして生成し、メイン管理装置40またはサブ管理装置50に、無線または無線制御装置30を介して有線で送信する。
なお、ハンディターミナル10および据置ターミナル20が、注文入力端末に相当する。
無線制御装置30は、ハンディターミナル10や据置ターミナル20などの無線通信をする装置から送信される注文データを受信して、その注文データを有線通信に変換してメイン管理装置40またはサブ管理装置50に転送するための中継を行う。図1において、ハンディターミナル10と据置ターミナル20は無線で注文データを送信する一例を示しているが、有線で送信しても良い。
メイン管理装置40(第1注文データ管理装置に相当する)およびサブ管理装置50(第2注文データ管理装置に相当する)は、ハンディターミナル10から送信される注文データを受信し、プリンタ等の各出力機器に対し伝票データを送信する機能や、POSとの間で会計データの送受信を行う機能、オーダーエントリシステム内で用いられるオーダーデータを記憶する機能、個別の各機器(ハンディターミナル、プリンタ等)を制御する機能を有している。このように、メイン管理装置40およびサブ管理装置50はオーダーエントリシステムを実質的に管理し、制御する装置であるため、メイン管理装置40またはサブ管理装置50の一方が故障したとしても、オーダーエントリシステム全体の動作が停止してしまわないように、メイン管理装置40またはサブ管理装置50のいずれか一方が稼働することによって、システム全体をバックアップする機能がある。なお、以後、メイン管理装置40およびサブ管理装置50を総称して指す場合には、符号のない「注文データ管理装置」と記載する。
システム全体をバックアップするために、メイン管理装置40またはサブ管理装置50は、どちらが主体的に動作(運転)するか、事前に設定されている。
本実施形態では、メイン管理装置40とサブ管理装置50は、同じ装置を使用し、事前設定でメイン管理装置40またはサブ管理装置50としているが、異なる装置を使用しても良い。ここでは、メイン管理装置40が主体的な動作を行う装置として事前設定されているものとし、サブ管理装置50がバックアップ動作を行う装置として事前設定されているものとする。
両注文データ管理装置が正常に動作している場合には、メイン管理装置40がシステム内でのデータ受信、データ管理およびデータ制御を主体的に実行する「運転状態」にある。そして、メイン管理装置40がハンディターミナル10等から注文データを受信して自身に記憶した後、「待機状態」であるサブ管理装置50にデータを送信して記憶(コピーという)させる。
メイン管理装置40とサブ管理装置50の間でのデータ送受信の信頼性を向上するために、メイン管理装置40およびサブ管理装置50は、HUB63を介して互いに有線通信し、また、互いに無線通信できるようになっており、一方の通信手段に障害等が発生しても他方の通信手段を用いて通信ができるような仕組みを採用している。
無線プリンタ60は、メイン管理装置40、サブ管理装置50に無線によって接続され、各種伝票データを印刷して伝票として出力する。有線プリンタ61は、メイン管理装置40、サブ管理装置50に有線によって接続され、各種伝票データを印刷して伝票として出力する。バーコードリーダ80は、例えば、会計用伝票に印刷されたバーコードを読み取る。表示装置90は、バーコードリーダ80によって読み取られたバーコードに基づくデータを表示する他、各種データを表示する。
図2は、メイン管理装置40の構成を表すブロック図である。なお、サブ管理装置50も同等の構成を有する。
この図において、メイン管理装置40は、CPU(Central Processing Unit)41、メモリ42、記憶部43、無線通信部44、有線通信部45、表示部46を有する。
また、メイン管理装置40またはサブ管理装置50は、CPU41、メモリ42、記憶部43、無線通信部44、有線通信部45と同等の機能があれば、異なる装置に搭載されて実現されても良い。
CPU41は、メイン管理装置40内の各部を制御する(詳細は後述する)。
メモリ42は、ROM(Read−Only−Memory)やRAM(Random−Access Memory)等であり、メイン管理装置40内において利用されるデータの一時記憶する、プログラムを記憶する等を行う。
記憶部43は、例えばハードディスクであり、オーダーエントリシステム100内において利用されるデータを記憶する。
無線通信部44は、ハンディターミナル10や無線プリンタ60、サブ管理装置50等の各種機器と、例えばWLAN(Wireless LAN(Local Area Network))によって通信を行う。
有線通信部45は、ハンディターミナル10や有線プリンタ61、サブ管理装置50等の各種機器と、例えばLANによってHUB63を介して通信を行う。
表示部46は、例えば、液晶表示装置であり、各種データを表示する。
またCPU41は、メモリ42にあるプログラムを実行することで、メイン管理装置40に発生する様々なイベントを監視するイベント監視手段、ハンディターミナル10からデータを受信し、記憶するまでの処理を行う受信処理手段、サブ管理装置50との同期処理を実施する同期処理手段、未印字のデータについて印字させる印字処理手段として機能する。
ここでCPU41は、発生したイベントが注文データの受信に関するものであり、受信処理手段として機能する場合には、ハンディターミナル10から受信した注文データに含まれる、後述するオーダー登録機器情報が、記憶部に記憶済みのオーダーデータに含まれるオーダー登録機器情報にあるか否かを判断する機能と、自注文データ管理装置の事前設定がメインであるか否かに応じて伝票番号を付与する機能と、自注文データ管理装置の実際の稼動状態が「運転状態」か「待機状態」かに応じてオーダーデータを記憶部に記憶させる機能と、オーダーデータを記憶できたか否かを示す応答をハンディターミナル10に送信する機能と、を実現する。
この伝票番号を付与する機能やオーダーデータを記憶させる機能が、第1データ記憶手段(自装置がメイン管理装置の場合)および第2データ記憶手段(自装置がサブ管理装置の場合)の機能に相当する。
またCPU41は、発生したイベントが同期処理(二重化通信をする相手の注文データ管理装置と、データの完全一致を確認し保つ処理。二重化遷移処理ともいう。)の実施に関するものであり、同期処理手段として機能する場合には、自注文データ管理装置の事前設定がメイン管理装置であるか否かを判断する機能と、現在、二重化状態であるか否かを判断する機能と、自注文データ管理装置と二重化通信をする相手の注文データ管理装置との前回の稼動状態を判断する機能(稼動状態判断部の機能に相当する)と、自注文データ管理装置と相手の注文データ管理装置について、前回の稼動状態が互いに異なる(一方が「運転状態」、他方が「待機状態」)状態であった場合に、「運転状態」であった注文データ管理装置のオーダーデータを「待機状態」であった注文データ管理装置へコピーする機能と、自注文データ管理装置と相手の注文データ管理装置について、前回の稼動状態が同一(両方とも「運転状態」、または両方とも「待機状態」)状態であった場合、に(1)両注文データ管理装置が記憶するオーダーデータのファイル日付とサイズの差異を判断する機能(データ一致判断部の機能に相当する)と、(2)サブ管理装置による伝票番号の付与があったか否かを判断する機能(伝票番号確認部の機能に相当する)と、(3)両注文データ管理装置のオーダーデータについてデータ同期処理を行う機能と、両注文データ管理装置の今回の稼動状態を決定する機能と、を実現する。
ここでデータ同期処理(二重化遷移処理)の機能とは、サブ管理装置に記憶されたオーダーデータを、メイン管理装置にコピーしてサブ参照データを生成する機能(サブ参照データ生成部の機能に相当する)と、メイン管理装置40のオーダーデータと生成したサブ参照データとを比較しサブ参照データに存在してメイン管理装置40のオーダーデータに存在しないデータを抽出しマージ(重複がないように統合)してマージデータを生成する機能(マージデータ作成部の機能に相当する)と、メイン管理装置40で生成されたマージデータをオーダーデータとしてサブ管理装置50にコピーし、メイン管理装置40のマージデータをオーダーデータとして、メイン管理装置40にコピーすることでデータの完全一致をとる機能(データ整合部の機能に相当する)とからなる。
なお、このデータ同期処理(二重化遷移処理)は、同期処理の実施に関するイベントの発生時以外にも、注文データ管理装置の起動時には必ず実施する処理である。
またCPU41は、発生したイベントが印字処理に関するものであり、印字処理手段として機能する場合には、伝票データをどのプリンタに印字すべきか判断する機能と、伝票データがどのプリンタから印字済みであるかを判断する機能と、印字すべきプリンタから印字済みでない伝票データがある場合に、当該プリンタに当該伝票データを印字させる機能とからなる。
次に、上述したオーダーエントリシステム100において、メイン管理装置40とサブ管理装置50のオーダーデータの完全一致を実現する処理(二重化遷移処理)の流れを模式的に説明する。
図3は、オーダーエントリシステム100において、メイン管理装置40とサブ管理装置50で障害発生によってオーダーデータの不一致が発生する状況の概略を説明する図である。メイン管理装置40とサブ管理装置50は、LANおよびWLANによって通信し、互いの存在を確認している。サブ管理装置50は、メイン管理装置40との通信が途絶えると、メイン管理装置40が動作を停止したものと誤判断し、「運転状態」としての動作を開始する場合がある。そのような誤動作を防止するため、複数の通信手段を用意する。すなわち、LANまたはWLANのどちらかの通信が切断されても、残りの一方で接続できれば、サブ管理装置50が「運転状態」にならないように制御される。
図3(a)は、メイン管理装置40とサブ管理装置50がいずれもデータAを記憶しており、データが一致状態であることを示している。ここでは、データAは、ヘッダ情報とオーダーデータXを含むデータである。オーダーデータXは、伝票番号が「0001」、「0002」、「0003」の注文データを含むデータである。
図3(b)は、メイン管理装置40が電源停止となった場合を示す図である。メイン管理装置40が電源停止となった場合、サブ管理装置50が「運転状態」となって動作を開始し、サブ管理装置50が、ハンディターミナル10から送信される注文データを受信する。サブ管理装置50が新しい注文データを受信した場合、記憶部内のデータが、メイン管理装置40のデータAとは異なり、サブ管理装置50がデータAにオーダーデータYを追加したデータBとなる。データBは、ヘッダ情報とオーダーデータXとオーダーデータYを含むデータである。オーダーデータYは、伝票番号が「3004」の注文データを含むデータである。
図3(c)は、サブ管理装置50の電源が停止し、メイン管理装置40が起動して、通常通り、注文データを受け付ける場合を示す図である。ここでは、メイン管理装置40が新たに注文データを受信することにより、メイン管理装置40の記憶部には、データCが記憶される。このデータCは、ヘッダ情報とオーダーデータXとオーダーデータZとを含むデータである。オーダーデータZは、伝票番号が「0004」の注文データを含むデータである。
このように、メイン管理装置40とサブ管理装置50とが異なるタイミングで電源停止状態となると、それぞれが記憶するデータに相違が生じる。
図4は、メイン管理装置40とサブ管理装置50とで実施する同期処理を示す概略図であり、図3(c)の状態の後に、注文データ管理装置のメイン管理装置40とサブ管理装置50間で同期処理を行う場合を表す図である。ここでは、メイン管理装置40にデータC、サブ管理装置50にデータBが記憶されている(図4(a))。
なお、この同期処理は、後述するように、メイン管理装置40の動作の中で優先度が最も高い処理であり、データの完全一致を保つ処理に関するイベントが発生すると、メイン管理装置40は即座に確認状態に移行し、同期処理を行う。
同期処理では、メイン管理装置40が、前回「運転状態」で動作していたか否かの判定処理を行う。運転状態であると判定された場合には、オーダーエントリシステムとしての運用に基づき、オーダーデータの登録処理や、プリンタに伝票データを出力する処理等が実施され、それによってデータの変更が行われている可能性がある。
また、同期処理では、メイン管理装置40が、自身に記憶されたオーダーデータとサブ管理装置50に記憶されメイン管理装置40にコピーしたサブ参照データを比較し、ファイルデータの更新日付とファイル内容や容量が一致するか否かを判定する。なお、オーダーデータが含む具体的な内容については、後述する。一致していると判定された場合、両注文データ管理装置が記憶するデータは同一である(完全に一致している)とみなし、同期処理を終了する。
一方、一致しないと判定された場合には、サブ管理装置50のみで記憶されたオーダーデータがあるか否かを判断し、それが存在した場合、自身に記憶されたデータCとサブ管理装置50に記憶されたデータBのマージ処理を行う。
ここでは、メイン管理装置40にマージ領域を作成して、その中でデータのマージ処理を実施する。メイン管理装置40には、図4(b)に示すように、データCの他に、マージデータ領域とサブ参照データ領域が確保され、サブ管理装置50からデータBがサブ参照データとしてコピーされ記憶される。マージデータDは、データCとサブ参照データから作成されるデータであり、ヘッダ情報と、データCに含まれるオーダーデータXと、オーダーデータYと、サブ参照データに存在しデータCに存在しないオーダーデータZとを含むデータである。
メイン管理装置40とサブ管理装置50との間でマージ処理されたマージデータDはメイン管理装置40に記憶されたのち、マージデータDがメイン管理装置40からサブ管理装置50へコピーされる(図4(c))。よって、サブ管理装置50には、データBに加え、マージデータDが記憶されることになる。そして、メイン管理装置40からサブ管理装置50に全てのマージデータDが送信されると、データの入れ替え処理を実行する(図4(d))。すなわち、メイン管理装置40は、マージデータDを残してデータCを削除し、マージデータDを今後利用するオーダーデータとし、サブ管理装置50は、マージデータDを残してデータBを削除し、マージデータDを今後利用するデータとする。
このマージデータは、今後利用するオーダーデータとして自注文データ管理装置のデータに上書きされて、データの入れ替え処理が実行されない限り、自注文データ管理装置内に残るようになっている。したがって、マージデータを作成したが、自注文データ管理装置のデータと入れ替えをする前に電源が停止した場合であっても、次回の電源投入時に、この残っているマージデータを自注文データ管理装置のオーダーデータと入れ替えることで、両注文データ管理装置間でのデータの完全一致を保ち、且つ、必要なデータの損失を防止することが可能である。
図5は、ハンディターミナル10からメイン管理装置40に送信される注文データに基づきメイン管理装置40が記憶するオーダーデータの一例を表す図である。
メイン管理装置40は、ヘッダ情報とオーダーデータを含むデータを記憶する。ヘッダ情報は、1つのオーダーデータに1つ対応付けられる情報であり、当該オーダーデータに含まれる注文データの数を表すデータ数と、当該オーダーデータのサイズを表すデータサイズと、最新の注文データに付与されている伝票番号シーケンシャルナンバーとを含む情報である。
オーダーデータは、伝票番号で識別される注文情報を1伝票番号分としたデータが、1つ以上の伝票番号分のデータから構成されるデータである。このオーダーデータ内の1伝票番号分のデータは、伝票番号、オーダー登録機器情報、テーブル番号、人数情報、登録日付情報、更新日付情報、会計済みフラグ、印字フラグ(図13を参照)、印字完了フラグ(図14を参照)、データサイズ、データ件数、チェック用データ、次データ番地、注文内容を含むデータである。
伝票番号は、利用可能な番号がメイン管理装置40、サブ管理装置50それぞれに予め割り当てられており、この割り当てられた範囲の番号のいずれかを伝票を発行する毎に用いられる。例えば、メイン管理装置40は、1〜3000までの番号を割り当て、サブ管理装置50は、3001以降の番号を割り当てる。この伝票番号は、例えば、来客した顧客のグループ(1人または複数人)に1つ割り当てられる。
オーダー登録機器情報は、注文データを送信したハンディターミナル10を識別する端末識別情報と、ハンディターミナル10が生成する伝票番号シーケンシャルナンバーを含むデータである。端末識別情報は、例えば、ハンディターミナル10の機器名称とハンディターミナル10のシリアルナンバーとの組み合わせのデータである。伝票番号シーケンシャルナンバーは、ハンディターミナル10がオーダー処理毎にインクリメント処理をすることによって生成される。例えば、複数の商品を1回の注文にて受け付けた場合には、1つのシーケンシャルナンバーが発行される。このオーダー登録機器情報は、ハンディターミナル10を識別するとともに注文をそれぞれ識別することができるものであり、固有の情報である。
テーブル番号は、注文をした顧客が利用しているテーブルを識別する番号である。
人数情報は、注文をした顧客のグループの入店人数であり、1人または複数人の人数が登録される。
登録日付情報は、オーダーデータが注文データ管理装置に登録された日を示す情報である。
更新日付情報は、オーダーデータを更新した日付を示す情報である。
会計済みフラグは、オーダーデータが示す注文内容に対する会計がPOSによって終了したか否かを示す情報である。
印字フラグは、印字を行う対象であるか否かを示す情報である。
印字完了フラグは、印字が完了したか否かを示す情報である。
データサイズは同一伝票番号内でのデータ量を示す情報である。
データ件数は、オーダーデータ内に含まれる注文内容の数を示す情報である。
チェック用データは、オーダーデータに誤りがあるか否かを判定するために用いる情報である。
次データ番地は、次の番地を示す情報である。
注文内容は、店員が顧客から受け付けた注文の内容を示す情報である。この注文内容には、必要に応じて付加情報が付加される。この付加情報は、例えば、注文内容をどの場所に設置されたプリンタで印字するかを指定する情報が含まれる。
図6は、注文データ管理装置の動作を示すフローチャートである。
まず、注文データ管理装置に電源が投入されると、注文データ管理装置は、起動し(ステップS101)、二重化通信を行う相手の注文データ管理装置と後述する同期処理を行い(ステップS102)、イベント(同期状態の変更、未印字のデータの存在の有無の判定、注文データの受信、等)が発生したか否かを監視し、イベント待ちをする(ステップS103)。
イベントが発生すると、注文データ管理装置は、そのイベントが同期状態の変更(二重化状態から単独状態への変更が生じたのか、または、単独状態から二重化状態への変更が生じたのか)のイベントであるか否かを判定する(ステップS104)。同期状態変更のイベントである場合には、ステップS102に移行し、同期状態変更のイベントではない場合には、自身が運転状態であるか待機状態であるかを判定する(ステップS105)。
待機状態である場合、注文データ管理装置は、ステップS103に移行する。一方、運転状態である場合、注文データ管理装置は、オーダーデータの印字完了フラグを参照し、未印字データがあるか否かを確認する(ステップS106)。
未印字データがある場合(ステップS108、”未印字データあり”)、注文データ管理装置は、後述する印字処理を行い(ステップS108)、ステップS103に移行し、未印字データがない場合(ステップS107、”Else”)には、ハンディターミナル10からデータを受信したか否かを確認し(ステップS109)、注文データに関する受信データがあるか否かを判定する(ステップS110)。
受信データがない場合、注文データ管理装置は、ステップS103に移行し、受信データがある場合には、後述する、ハンディターミナル10から送信される注文内容の受信処理を行い(ステップS111)、ステップS103に移行する。
このようにデータ注文データ管理装置は、二重化通信を行う相手の注文データ管理装置との、同期処理を優先した動作を実施する。
次に、上述したステップS113の注文データ受信処理、ステップS102の同期処理、ステップS109の印字処理について、順次説明する。
(A)注文データ受信処理
図7は、注文データ受信処理を説明するフローチャート、図8は、オーダーデータの登録の手順を表す図である。
注文データ管理装置は、受信処理(図7ステップS111)が開始され、ハンディターミナル10から注文データを受信すると(図7ステップS202、図8ステップS401)、受信した注文データに含まれるオーダー登録機器情報と、注文データ管理装置の記憶部43に記憶されたオーダーデータを参照して確認し(図7ステップS203)、同じオーダー登録機器情報が記憶され登録されているか否かを判定する(図7ステップS204)。
既に登録がされている場合(図7ステップS204、”登録済み”)、注文データ管理装置は、同じ注文データを受信したと判定し、既に受信していることを示す応答をハンディターミナル10へ送信し(図7ステップS216)、受信処理を終了し(図7ステップS217)、図6ステップS103へ移行する。
一方、オーダー登録機器情報がまだ登録されていない場合、注文データ管理装置は、自身がメイン管理装置40であるかサブ管理装置50であるかを判定する(図7ステップS205)。注文データ管理装置は、前述のように、メイン管理装置40であるかサブ管理装置50であるかが事前設定されており、それを表すフラグを記憶している。その一例として、フラグが「1」である注文データ管理装置がメイン管理装置40、フラグが「0」である注文データ管理装置がサブ管理装置50を示す。このフラグを参照することで、メイン管理装置40であるかサブ管理装置50であるかを判断することができる。
自注文データ管理装置がメイン管理装置40である場合(図7ステップS206、”メイン”)、自注文データ管理装置に割り当てられた伝票番号の範囲のうちいずれかの伝票番号(ここでは、1〜3000のうち、まだ発行していない番号)をオーダーデータに追加し(図7ステップS207)、メイン管理装置40の記憶部43に記憶する(図7ステップS208、図8ステップS402)。
一方、自注文データ管理装置がサブ管理装置50である場合(図7ステップS206、”サブ”)には、自注文データ管理装置に割り当てられた伝票番号の範囲のうちいずれかの伝票番号(ここでは、3001〜6000のうち、まだ発行していない番号)をオーダーデータに追加し(図7ステップS209)、サブ管理装置50の記憶部43に記憶する(図7ステップS208)。なお、オーダーデータは、図5に示したように、ハンディターミナル10から受信した注文データの他に種々の情報を含んでいる。
次に、注文データ管理装置は、オーダーデータの記憶が成功したか否かを判定し、失敗した場合(図7ステップS210、”失敗”)は、エラー処理を行い(図7ステップS211)、成功した場合(図7ステップS210、”成功”)には、二重化通信をする相手の注文データ管理装置と通信することができるか否かおよび自注文データ管理装置がメインであるか否かに基づいて、現在の二重化の状態を判定する(図7ステップS212)。
二重化通信をする相手の注文データ管理装置と通信することができない場合、または自注文データ管理装置がサブ管理装置50である場合(図7ステップS213、”二重化メインではない”)、注文データ管理装置は、ステップS216に移行してハンディターミナル10に応答を送信する。
一方、二重化通信をする相手の注文データ管理装置と通信することができ、かつ、自注文データ管理装置がメイン管理装置40である場合(図7ステップS213、”二重化状態でメイン”)、自注文データ管理装置が記憶したオーダーデータと同じデータをサブ管理装置50に送信して記憶させる(図7ステップS214、図8ステップS403)。
ステップS214においてオーダーデータをサブ管理装置50に追加した後、メイン管理装置40は、サブ管理装置50でオーダーデータの追加を行うことができたかを判定し、サブ管理装置50からオーダーデータ追加成功の応答があった場合(図7ステップS215、”成功”)には、追加成功と判定し、ハンディターミナル10へ応答を送信する(図7ステップS216、図8ステップS404)。
一方、サブ管理装置50でオーダーデータ追加が失敗した場合(図7ステップS215、”失敗”)、メイン管理装置40は、再度同期処理を行うことを決定し(図7ステップS218)、ハンディターミナル10へ登録失敗が失敗したことを示す応答を送信する(図7ステップS219)。
ここで、図8ステップS401〜S404の途中で、通信が途切れた場合には、下記のような手順にてオーダーデータを処理する。
ステップS401、402、404において通信が切断された場合、ハンディターミナル10への注文データ登録完了応答(ステップS404)が行われないことから、ハンディターミナル10は、何らかの原因で注文データ管理装置へのオーダーデータの登録に失敗したと判断し、注文データの再送信を実施する。
これにより、メイン管理装置40は、通信状況によっては、注文データを再度受信し、再度、オーダーデータの記憶(登録)処理を実施する。よって、メイン管理装置40またはサブ管理装置50に対し、オーダーデータが二重に登録されてしまう可能性がある。しかし、ハンディターミナル10から注文データを再度受信した際、受信したオーダー登録機器情報と記憶部に記憶されたオーダーデータのオーダー登録機器情報を比較し(図7ステップS203)、同じオーダー登録機器情報が存在する場合(図7ステップS204、”登録済み”)には、オーダーデータの登録を行わないで、ハンディターミナル10へ、完了通知を送信する(図7ステップS216)。
なお、ステップS403のサブ管理装置50へのデータ送信と記憶の処理に失敗した場合には、再度、同期処理を行うことを決定する。これは図7のステップS215、S218に相当する。その後、図6のフローにおけるステップS113の受信処理を完了し、同期状態変更イベントが発生した、ということで、ステップS102において同期処理を実行する。
このようにして、オーダーデータが二重に登録されることを回避する。
図9は、受信したオーダー登録機器情報と記憶部に記憶されるオーダー登録機器情報について説明する図である。ここでは、ハンディターミナル10aとハンディターミナル10bとがメイン管理装置40に接続され、メイン管理装置40とサブ管理装置50とが接続されている場合について説明する。また、ここでは、ハンディターミナル10aの端末識別情報が「8855812」であり、ハンディターミナル10b端末識別情報が「090135」である場合を一例として説明する。
ハンディターミナル10aは、店員によって注文に応じた内容が入力されると、注文内容を含む注文データをメイン管理装置40に送信する(ステップS501)。この注文データの伝票番号シーケンシャルナンバーは「1234」であるものとする。
メイン管理装置40は、この注文データをハンディターミナル10aから受信すると、受信した注文データに含まれるオーダー登録機器情報と一致するオーダー登録機器情報が記憶部43に記憶されているか否かを判定する。ここでは記憶されていないので、記憶部43にメイン管理装置のオーダーデータとして追加して記憶し(ステップS502)、応答信号をハンディターミナル10aへ送信し(ステップS503)、バックアップ用オーダーデータ書込み処理を行う。ここでは、伝票番号「0001」であって、オーダー登録機器情報が「HT885512−1234」である注文データが、メイン管理装置40からサブ管理装置50へサブ管理装置のオーダーデータとしてコピーされる(符号A)。
次に、ハンディターミナル10bは、店員によって注文に応じた内容が入力されると、注文内容を含む注文データをメイン管理装置40に送信する(ステップS504)。この注文データの伝票番号シーケンシャルナンバーは「9876」であるものとする。
メイン管理装置40は、この注文データをハンディターミナル10bから受信すると、受信した注文データに含まれるオーダー登録機器情報と一致するオーダー登録機器情報が記憶部43に記憶されているか否かを判定する。ここでは記憶されていないので、記憶部43に記憶し(ステップS505)、応答信号をハンディターミナル10bへ送信し、バックアップ用オーダーデータ書込み処理を行う。ここでは、伝票番号「0002」であって、オーダー登録機器情報が「HT090135−9876」である注文データが、メイン管理装置40からサブ管理装置50へコピーされ追加登録される(符号B)。なお、メイン管理装置40とハンディターミナル10bとの間で通信不良が発生すると、応答信号が、正常にハンディターミナル10bに受信されない(ステップS506)。
次に、ハンディターミナル10aは、店員によって注文に応じた内容が入力されると、注文内容を含む注文データをメイン管理装置40に送信する(ステップS507)。この注文データの伝票番号シーケンシャルナンバーは「1235」であるものとする。
メイン管理装置40は、この注文データをハンディターミナル10aから受信すると、記憶部43に記憶し(ステップS508)、応答信号をハンディターミナル10aへ送信し(ステップS509)、バックアップ用オーダーデータ書込み処理を行う。ここでは、伝票番号「0003」であって、オーダー登録機器情報が「HT885512−1235」である注文データが、メイン管理装置40からサブ管理装置50へコピーされ追加登録される(符号C)。
次に、ハンディターミナル10aは、店員によって注文に応じた内容が入力されると、注文内容を含む注文データをメイン管理装置40に送信する(ステップS510)。この注文データの伝票番号シーケンシャルナンバーは「1236」であるものとする。
メイン管理装置40は、この注文データをハンディターミナル10aから受信すると、記憶部43に記憶し(ステップS511)、応答信号をハンディターミナル10aへ送信し(ステップS512)、バックアップ用オーダーデータ書込み処理を行う。ここでは、伝票番号「0004」であって、オーダー登録機器情報が「HT885512−1236」である注文データが、メイン管理装置40からサブ管理装置50へコピーされ追加登録される(符号D)。
一方、ハンディターミナル10bは、ステップS504において送信した注文データに対する応答信号を受信したか否かを監視しており、一定時間が経過しても受信できない場合には、タイムアウトが発生したことを検出する。そして、ステップS504において送信した注文データを再度、メイン管理装置40に送信する(ステップS513)。メイン管理装置40は、受信した注文データに含まれるオーダー登録機器情報と一致するオーダー登録機器情報が記憶部43に記憶されているか否かを判定する。ここでは、既に記憶されているため、記憶部43の書き換えを行わず、応答信号をハンディターミナル10bへ送信する。ハンディターミナル10bは、この応答信号を受信する。
このように、メイン管理装置40は、未登録である注文データを受信した場合に、自身の記憶部43に記憶するとともに、バックアップ用オーダーデータ書込み処理を行い、サブ管理装置50とオーダーデータの完全一致を図ることができる。
(B)同期処理
次に、同期処理(図6ステップS102)について説明する。
同期処理(二重化状態においてメイン管理装置40とサブ管理装置50のデータの完全一致を確認し維持する処理)は、図6のステップS102〜S104にあるように、注文データ管理装置の動作の中で優先度が最も高い。注文データ管理装置は、相手の注文データ管理装置と通信ができないなどの二重化状態から単独状態への状態遷移または、単独状態から二重化状態への状態遷移するイベントが発生すると、即座に同期処理に移行する。注文データ管理装置は起動後、メイン管理装置とサブ管理装置間での通信障害の発生や、オーダーデータの不整合が生じたことを常に監視していて、通信障害やオーダーデータの不整合が生じた場合に、同期イベントを発生させ、同期処理が実行されることにより、データの完全一致が確保され、不整合を解消し、同じデータをお互いに記憶することができる。
図10および図11は、同期処理について説明するフローチャートである。
同期処理(図10ステップS102)が開始されると、注文データ管理装置は、自注文データ管理装置がメイン管理装置40であるかサブ管理装置50であるかを判定する(図10ステップS602)。この判定の仕方は、図7の受信処理のステップS205の処理と同等である。
メインとサブの判定が行われ自注文データ管理装置がメイン管理装置40であると判定すると(図10ステップS603”YES”)、注文データ管理装置は、マージデータが自身の記憶部43に存在するか否かを判定する(図10ステップS604、S605)。これは、前回の同期処理におけるデータ同期においてマージデータが作成され、それが自注文データ管理装置のオーダーデータにコピーされる前に電源が落とされた場合を想定している。注文データ管理装置は電源が落とされても作成したマージデータを保持しつづけ、次の同期処理においてそのマージデータを自注文データ管理装置のオーダーデータにコピーする仕組みとなっている。よって、マージデータが存在する場合(ステップS605、”あり”)、注文データ管理装置は、マージデータを自注文データ管理装置のオーダーデータにコピー(上書き)をする(図10ステップS606)。マージデータが存在しない場合(ステップS605、”なし”)図10ステップS607へ処理を進める。
注文データ管理装置は、二重化通信をする相手の注文データ管理装置と通信できるか否かを判定し(図10ステップS607、図11ステップS608)、二重化通信をする相手の注文データ管理装置と通信できない、または、相手となる注文データ管理装置がいない場合(ステップS608、”なし”)には、自注文データ管理装置の稼動フラグをONにし、「運転状態」かつ「単独運転状態」にする(図11ステップS630)。
ここで、稼動フラグに関して、オーダーエントリシステム内でのデータ受信、データ管理およびデータ制御を主体的に実行する、「運転状態」にある場合を稼動フラグ「ON(稼動)」とする。一方、稼動フラグが「ON」の装置からデータを受信して記憶する、いわゆるバックアップ動作を行う「待機状態」にある場合や、何らかの理由により装置が動作せず「障害状態」にある場合を、稼動フラグ「OFF(非稼動)」とする。
注文データ管理装置は、図11ステップS630において稼動フラグがONになることにより、二重化通信をする相手の注文データ管理装置がいない(稼動していない)のだが、自注文データ管理装置が稼動できるので、「運転状態」でかつ「単独運転状態」になる。
一方、二重化通信をする相手の注文データ管理装置と通信できた場合(図11ステップS608、”あり”)、注文データ管理装置は、メイン管理装置40とサブ管理装置50との間の有線通信の状況を検出する(図11ステップS609)。
注文データ管理装置は、無線通信や有線通信などの複数の通信手段によって相互接続性を維持している。複数ある通信手段の全てで相互接続性が保たれている場合はよいが、例えば、一方の注文データ管理装置の有線通信手段に障害(故障またはケーブル抜けなど)があり、他方の注文データ管理装置の有線通信手段に障害がなくHUB63との良好に通信できる場合、メイン管理装置40とサブ管理装置50との間の通信は、無線通信でのみ相互接続が保たれていることになる。一般に、無線通信による接続は、有線通信と比較して不安定である。また、オーダーエントリシステム内の装置は、HUB63を介して注文データ管理装置とデータ送受信することがある。よって、ここでは、メイン管理装置40(自身)とサブ管理装置50との間の有線通信の状況(通信可であるか、通信不可であるか)を検出し、システム全体を考えたときにどちらの注文データ管理装置を稼動状態とするべきかを決定する。
メイン管理装置40とサブ管理装置50との間の有線通信が可である場合(図11ステップS609、”可”)、ステップS613に進む。
一方、メイン管理装置40とサブ管理装置50との間の有線通信が不可である場合(図11ステップS609、”不可”)、図11ステップS610に進む。ステップS610、S611、S612では、有線通信の状況を加味してそれぞれの装置の稼動フラグや稼動状態を変更する(稼動状態変更手段の機能に相当する)。
図11ステップS610において、有線通信が不可となっているのがどちらの注文データ管理装置であるかを判定する。メイン管理装置40とHUB63まで有線通信の状況に関わらず、サブ管理装置50とHUB63まで有線通信が不可の場合(図11ステップS610、”サブ:有線不可”)、サブ管理装置50の稼動フラグを「OFF」とし、状態を「障害状態」とする。そして、メイン管理装置40の稼動フラグを「ON」にし、状態を「単独運転状態」とする(ステップS612)。その後、図11ステップS620に進み、同期処理を終了し、図6ステップS103に移行する。
一方、サブ管理装置50のHUB63まで有線通信が可の場合(図11ステップS610、”サブ:有線可”)、メイン管理装置40とHUB63まで有線通信の状況は不可であることになる。よって、サブ管理装置50の稼動フラグを「ON」にし、状態を「単独運転状態」とする。そして、メイン管理装置40の稼動フラグを「OFF」にし、状態を「障害状態」とする(図11ステップS611)。その後、図11ステップS623に進み、同期処理を終了する。
図11ステップS609に戻り、メイン管理装置40とサブ管理装置50との間の有線通信が可である場合(図11ステップS609、”可”)、注文データ管理装置は、自注文データ管理装置の前回の稼動フラグを読み出し、二重化通信をする相手の注文データ管理装置からは、通信によって前回の稼動フラグを取得する(図11ステップS613)。
そして、メイン管理装置40が非稼動(OFF)でありサブ管理装置50が稼動(ON)である場合(図11ステップS614”メイン:非稼動、サブ:稼動”)、メイン管理装置40は、サブ管理装置50のデータを自注文データ管理装置にコピーし(図11ステップS625)、メイン管理装置40の稼動フラグをONにし「二重化運転状態」、サブ管理装置50の稼動フラグをOFF「待機状態」にする(図11ステップS621)。前回、メイン管理装置40が非稼動でありサブ管理装置50が稼動である場合とは、例えば、サブ管理装置50が継続して動作状態にあり、メイン管理装置40が「異常状態」またはメイン管理装置40の電源が切断されていた場合、あるいはメイン管理装置40とHUB63まで有線通信の状況が不可であったことである。
一方、メイン管理装置40の稼動フラグが稼動(ON)であり、サブ管理装置50が非稼動(OFF)である場合(図11ステップS614、”メイン:稼動、サブ:非稼動)、メイン管理装置40は、自注文データ管理装置のデータをサブ管理装置50にコピーし(ステップS615)、メイン管理装置40の稼動フラグをON「二重化運転状態」にし、サブ管理装置50の稼動フラグをOFF「待機状態」にする(ステップS621)。前回、メイン管理装置40の稼動フラグが稼動(ON)であり、サブ管理装置50が非稼動(OFF)である場合とは、例えば、メイン管理装置40が「単独稼動状態」にあり、サブ管理装置50が「異常状態」または電源が切断されていた場合、あるいはサブ管理装置50とHUB63まで有線通信の状況が不可の場合である。
他方、メイン管理装置40とサブ管理装置50の稼動フラグが共に同じであり、ともに停止状態または運転状態である場合、メイン管理装置40は、自注文データ管理装置の記憶部43に記憶されたオーダーデータの更新日付情報とデータサイズと、二重化通信をする相手のサブ管理装置50に記憶されたオーダーデータの更新日付情報とデータサイズとを比較する(図11ステップS616)。いずれも一致する場合(図11ステップS617、”一致”)、メイン管理装置40は、オーダーデータがメイン管理装置40とサブ管理装置50とで完全一致が保たれていると判断し、図11ステップS621に移行する。いずれか1つでも一致しない場合(図11ステップS617,”不一致”)、3001以上の伝票番号のオーダーデータがサブ管理装置50の記憶部に記憶されているか否かを判定する(図11ステップS618)。3001以上の伝票番号のデータがある場合には(図11ステップS619、”あり”)、データの完全一致を図るためにデータ同期処理(図11ステップS620)を行い、図11ステップS621に移行する。サブ管理装置50が運転状態をとり、ハンディターミナル10から注文データを受信して伝票番号を付与した実績がある場合、メイン管理装置40にはそのオーダーデータが記憶されていない可能性もあるため、データ同期の処理が必要となる。
一方、3001以上の伝票番号のデータがない場合(図11ステップS619,”なし”)、メイン管理装置40は、サブ管理装置50にしかないオーダーデータが存在しないと判断し、メイン管理装置40のデータをサブ管理装置50へコピーし(図11ステップS615)、メイン管理装置40の稼動フラグをON「運転状態」にし、サブ管理装置50の稼動フラグをOFF「待機状態」にし(ステップS621)、同期処理を終了し(図11ステップS623)、図6ステップS103に移行する。
次に、図11ステップS620のデータの同期処理についてさらに説明する。データ同期処理は、注文データ管理装置間のデータに相違があり、且つ、サブ管理装置50が「運転状態」たった形跡がある場合に行う、データの完全一致を図る処理である。
図12は、図ステップS620におけるデータ同期処理について説明するフローチャートである。
このデータ同期処理が開始されると(ステップS620)、メイン管理装置40は、サブ管理装置50のデータをサブ参照データとしてコピーをする(ステップS71)。
次に、メイン管理装置40は、自注文データ管理装置のオーダーデータについて、自注文データ管理装置に記憶されたサブ参照データを比較し、メイン管理装置40に存在せずサブ参照データに存在するオーダーデータを抽出し、マージ(統合)してマージデータを生成する(ステップS72)。具体的には、メイン管理装置40に記憶されているオーダーデータと、サブ管理装置50に記憶されているオーダーデータ(サブ参照データ)とを合わせ、その中から、同じオーダー登録機器情報を有するオーダーデータを削除することで、重複データのない統合データ(マージデータ)を作成する。
次に、注文データ管理装置は、自注文データ管理装置が記憶するオーダーデータについて、オーダー登録機器情報が重複するか否かを判定し(ステップS73)。そして、重複がない場合には(ステップS74、”重複なし”)、ステップS76に移行し、重複がある場合には(ステップS74、”重複あり”)、確認データリストを作成するとともに、このリストを伝票データとして無線プリンタ60または有線プリンタ61に印字させる(ステップS75)。
次いで、マージされ生成されたマージデータから、例えば、未会計状態のオーダーデータ抽出し、未会計オーダー情報をアラート用の伝票データとして作成し、このアラート用の伝票データを無線プリンタ60または有線プリンタ61に印字させる(ステップS76)。そして、メイン管理装置40は、自注文データ管理装置の、マージデータをサブ管理装置50に送信してコピーをし(ステップS77)、自注文データ管理装置の、マージデータを自注文データ管理装置のオーダーデータにコピーし(ステップS78)、データ同期処理を終了し(ステップS79)、図11ステップS621に移行する。
以上説明したデータ同期処理においては、ステップS72においてマージ処理をすることで作成されたマージデータが、ステップS78において新たなオーダーデータとなるため、少なくともそれまでのオーダーデータよりもデータ量が大きくなる。よって、ヘッダ情報に含まれる(全オーダーデータに関する)データサイズやデータ数等が、今回の処理によって増加したオーダーデータの内容に応じて変更される。
オーダーデータの、伝票番号、およびオーダー登録機器情報は、上述したように必ずユニークなデータである。このため、メイン管理装置40のデータと、サブ管理装置50のデータとのマージ処理時に同じ伝票番号があった場合には、メイン管理装置40は、更新日付が同じであるかを判定する。注文データ管理装置が無線プリンタ60または有線プリンタ61に印字させる命令を送信する際に通信不良等で送信ミスが生じると、データ再送が行われ、これにより同一伝票番号のデータが複数存在する場合がある。よって、更新日付が異なり、かつ両方の伝票とも会計完了がされていない場合には、未会計処理(レジにて支払いを済ませていない)オーダーデータになり、これらの伝票一覧をステップS76において伝票データを生成して、無線プリンタ60または有線プリンタ61によって印刷をし、このシステムを使用するユーザ(店員)に未会計オーダーアラートを通知する。これは、データが変更されていることを示しているため、無線プリンタ60または有線プリンタ61等に伝票データが送られて印刷されることにより、データ変更が発生していることをユーザ(店員)に明示することができる。ここでは、伝票データに基づいて、表示装置90に表示することにより、アラートを行ってもよい。
なお、オーダーデータは、更新日付の新しいものを採用し、1つのマージデータとして登録する。
以上説明した実施形態によれば、ハンディターミナル10が注文データにユニークなオーダー登録機器情報を付与して送信し、メイン管理装置40が、受信した注文データについて、自注文データ管理装置が事前設定でメインとして設定されているか否かで、伝票番号の数値範囲を異ならせて付与する。そして、メイン管理装置40とサブ管理装置50との間でデータの完全一致を判定し維持するために同期処理が必要となり、同期処理を実施する際、(1)前回のそれぞれの動作状態を判断し、どちらも同じ運転状態であれば、(2)オーダーデータのファイルの日付や容量を検出し、両注文データ管理装置間でオーダーデータの不一致がある場合には、(3)オーダーデータにサブ管理装置50が付与した伝票番号のオーダーデータが存在するか否かを判断し、そのようなオーダーデータがある場合にのみ、データ同期処理を実行して、注文データ管理装置間のオーダーデータについて重複なく統合するマージ処理を行い、両注文データ管理装置にマージしたオーダーデータをコピーする。
これにより、既に記憶されたオーダーデータを欠落させることなく、注文データ管理装置間でお互いにオーダーデータを補完しつつ、記憶することができ、データの同期をとることができる。
また、メイン管理装置40が付与する伝票番号とサブ管理装置50が付与する伝票番号について、付与する範囲を分けるようにしたので、メイン管理装置40が「運転状態」で稼動した場合とサブ管理装置50が「運転状態」で稼動した場合とを伝票番号を確認することで識別することができる。
注文データ管理装置は、起動時や、注文データ管理装置間で何らかの原因によってデータの完全一致が乱れた場合、二重化通信をする相手の注文データ管理装置との通信に障害が発生した際などに、注文データ管理装置間の通信状態の検出とオーダーデータの欠落を防ぎデータの完全一致を保つため、同期処理を行う。しかし同期処理の、データの完全一致を保つ処理(データ同期処理)に関して、従来は、オーダーデータの差分を確認して両注文データ管理装置にコピーする処理が必要であった。これは、注文データ管理装置間のオーダーデータの1つ1つについて整合性を確認する処置であるため、かなり長い時間を要する処理である。
しかし、本実施形態のように、伝票番号の番号体系を、伝票番号を付与する注文データ管理装置間で異ならせたことによって、データ同期処理が必要な状態、すなわち、以前、サブ管理装置50が稼動したイレギュラーな運転状態が存在したことを容易に確認することができる。これにより、注文データ管理装置が同期処理を行う際、毎回、従来のように、長い時間をかけてデータ1つ1つの整合性を確認しながら差分をコピーするというデータ同期処理を実施する頻度を減らすことができ、結果的に同期処理に要する時間を短縮することができる。これは特に、(注文データ管理装置の同期処理について特段の異常があったわけではなく)通常の起動をするために注文データ管理装置に電源を投入した際、不必要なデータ同期処理を行わなくてすむにようになったことにより、従来と比較してすばやく起動できる、という点から、非常に有効な効果である。
また、上述した図12のマージ処理において、マージするオーダーデータの伝票番号は、マージ処理によって変更しないため、メイン管理装置40かサブ管理装置50のどちらで登録されたオーダーデータなのかを、注文データ管理装置の次の起動時に容易に判別することができる。これにより、注文データ管理装置の起動時の同期処理において、サブ管理装置50に記憶されたオーダーデータから伝票番号を確認し、伝票番号が3001以上の情報がないことが確認できれば(ステップS617、S618)、オーダー登録機器情報やファイル日付や容量の一致が確認できなくても、サブ管理装置50でオーダーデータを受けた形跡はないということになり、メイン管理装置40のデータをそのままサブ管理装置50へオーダーデータとしてコピーすればよいこととなる(ステップS615)。これにより、時間を要するデータ同期処理を行わなくてすむため、同期処理にかかる時間を短縮し、高速化を図ることができる。
(C)印字処理
次に、図6のステップS109の印字処理について説明をする。
注文データ管理装置がハンディターミナル10から注文データを受信し、注文データ管理装置上に、このデータを記憶する場合、どのプリンタに対して伝票データを出力するかを決定する。この際、図5のオーダーデータの印字フラグのデータが確定する。
図13は、印字フラグのデータの一例を表す図である。印字フラグには、無線プリンタ60または有線プリンタ61を表す印字先1〜Nのそれぞれについて、フラグが設定されている。このフラグが例えば「1」である印字先が印字を行うことを表し、「0」である印字先が印字を行わないことを表す。
注文データ管理装置は、この印字フラグを参照し、印字することが指定されている印字先のプリンタに対し、処理対象となっている伝票データを送信する。そして、送信が完了した場合には、その送信を行った印字先の印字完了フラグの印字済であることを表すフラグに書き換える。
図14は、印字完了フラグのデータの一例を表す図である。印字完了フラグには、無線プリンタ60または有線プリンタ61を表す印字先1〜Nのそれぞれについて、フラグが設定されている。このフラグが例えば「1」である印字先については、伝票データを送信済であることを表し、「0」である印字先については、伝票データの送信が完了していないことを表す。
図13、図14においては、印字先1、印字先2に対して伝票データの出力が行われ、既に印字出力先1には伝票データが出力済みであることを示している。二重化の同期後に上記フラグを読み込み、印字フラグが印字を表すフラグであるにも関わらず、印字完了フラグが印字完了を表すフラグではない場合には、伝票データ出力処理を行って印字を行わせ、印字完了フラグを印字済に書き換える。
以上説明した実施形態によれば、注文データ管理装置に予期せぬハードウェアの故障や、通信障害などが生じ、いかなるタイミングで電源断となっても、ハンディターミナルが送信する注文データにユニークなオーダー登録機器情報が付与され、その注文データに基づき注文データ管理装置が記憶するオーダーデータに注文データ管理装置毎に番号体系が異なる伝票番号が付与されて、上記図10から図12で説明した同期処理を実施することにより、注文データ管理装置間においてデータの完全一致性が保たれる。これは、注文データ管理装置の記憶部にあるデータは電源断では消失せず、注文データ管理装置間で同期処理を実施中に電源断となっても、次回の起動時に、記憶部にあるデータによって再度同期処理を実施することができ、同期処理によって作成したマージデータを両注文データ管理装置に上書きする前に電源断となっても、マージデータは消失せず、次回の起動時に自注文データ管理装置に上書き処理をすることができる、という仕組みによる。
また、同期処理において、メイン・サブの両方の注文データ管理装置の前回の稼動フラグが、互いに異なる場合は、データのファイル日付やサイズ確認、サブ管理装置50が付与した伝票番号があるかの確認、そしてそのような伝票番号がある場合のデータ同期処理を実施する、といった一連の確認や処理を実施する必要ない。メイン・サブの両方の注文データ管理装置の前回の稼動フラグが、互いに異なる場合には一方の注文データ管理装置のデータを他方の注文データ管理装置へと単純にコピーするだけでよく、処理時間を短くすることが可能である。
また、図1における注文データ管理装置(メイン管理装置40またはサブ管理装置50)の機能を実現するためのプログラムをコンピュータが読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりデータ管理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合におけるサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるものであってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
10 ハンディターミナル
20 据置ターミナル
30 無線制御装置
40 メイン管理装置(注文データ管理装置)
50 サブ管理装置(注文データ管理装置)
60 無線プリンタ
61 有線プリンタ
80 バーコードリーダ
90 表示装置

Claims (9)

  1. 第1注文データ管理装置と第2注文データ管理装置とを有し、客からの注文に基づく注文データを注文入力端末から受信して記憶する注文データ管理装置であって、
    前記第1注文データ管理装置は、前記注文入力端末から受信した注文データに伝票番号を付与し、オーダーデータとして自装置の記憶部に記憶する第1データ記憶手段と、記憶した前記オーダーデータを前記第2注文データ管理装置に送信して記憶させるオーダーデータ通信手段とを有し、
    前記第2注文データ管理装置は、前記第1注文データ管理装置が前記注文入力端末からの注文データを記憶できない場合に前記注文入力端末からの注文データを受信して伝票番号を付与し、オーダーデータとして自装置の記憶部に記憶する第2データ記憶手段を有し、
    前記第1注文データ管理装置は、
    前記第2注文データ管理装置の記憶部に記憶されたオーダーデータを前記第1注文データ管理装置にサブ参照データとしてコピーするサブ参照データ生成部と、
    前記第1注文データ管理装置の記憶部に記憶されたオーダーデータとコピーした前記サブ参照データとをマージして、マージデータを生成するマージデータ生成部と、
    前記マージデータを前記第1注文データ管理装置の記憶部にあるオーダーデータと置き換えて記憶するとともに、前記マージデータを前記第2注文データ管理装置に送信して、前記第2注文データ管理装置の記憶部にあるオーダーデータと置き換えて記憶させるデータ整合部と、
    を有することを特徴とする注文データ管理装置。
  2. 前記注文データは、前記注文を受け付けた注文入力端末と当該注文とを一意に識別する情報であるオーダー登録機器情報を含み、
    前記マージデータ生成部は、前記第1注文データ管理装置の記憶部にあるオーダーデータのうち、前記サブ参照データ内に存在しないオーダー登録機器情報を有するオーダーデータを、サブ参照データに加えてマージデータを生成する
    ことを特徴とする請求項1記載の注文データ管理装置。
  3. さらに伝票番号確認部を有し、
    前記第1データ記憶手段は、受信した注文データに対して前記第1注文データ管理装置が受信したことを識別可能とする伝票番号を付与し、前記第1注文データ管理装置の記憶部にオーダーデータとして記憶し、
    前記第2データ記憶手段は、受信した注文データに対して前記第2注文データ管理装置が受信したことを識別可能とする伝票番号を付与し、前記第2注文データ管理装置の記憶部にオーダーデータとして記憶し、
    前記伝票番号確認部は、前記第1注文データ管理装置の記憶部または前記第2注文データ管理装置の記憶部に、前記第2注文データ管理装置において付与された伝票番号を有するオーダーデータが存在するか否かを確認する、
    請求項1または請求項2に記載の注文データ管理装置。
  4. 前記伝票番号確認部が前記第1注文データ管理装置の記憶部および前記第2注文データ管理装置の記憶部のどちらにも、前記第2注文データ管理装置において付与された伝票番号を有するオーダーデータの存在を確認できない場合、前記データ整合部は、前記第1注文データ管理装置の記憶部に記憶されたオーダーデータを前記第2注文データ管理装置に送信して、前記第2注文データ管理装置の記憶部にあるオーダーデータと置き換えて記憶させる、請求項3に記載の注文データ管理装置。
  5. 前記伝票番号確認部が前記第1注文データ管理装置の記憶部または前記第2注文データ管理装置の記憶部に前記第2注文データ管理装置において付与された伝票番号を有するオーダーデータの存在を確認した場合、前記マージデータ生成部は、前記マージデータを作成する、請求項3に記載の注文データ管理装置。
  6. さらに、前回の稼動状態が、注文入力端末からの注文データを直接受信してオーダーデータとして記憶する状態である運転状態であったのか、または、他方の注文データ管理装置が受信した注文データに基づくオーダーデータを前記他方の注文データ管理装置から取得して記憶する状態である待機状態であったのか、を判断する稼動状態判断部と、
    前記第1注文データ管理装置と前記第2注文データ管理装置とで前回の稼動状態が同一であると前記稼動状態判断部が判断した場合に、前記第1注文データ管理装置の記憶部に記憶されているオーダーデータと前記第2注文データ管理装置の記憶部に記憶されているオーダーデータとが一致するか不一致であるかを判断するデータ一致判断部と を有し、
    前記伝票番号確認部は、前記データ一致判断部が前記第1注文データ管理装置の記憶部に記憶されているオーダーデータと前記第2注文データ管理装置の記憶部に記憶されているオーダーデータとが不一致であると判断した場合に伝票番号の確認を実施する、請求項3から5のいずれかに記載の注文データ管理装置。
  7. 前記オーダー登録機器情報は、前記注文入力端末が、客からの注文に基づく注文データを作成するときに、当該注文入力端末を識別する情報と当該注文に対して前記注文入力端末が付与する識別情報とを用いて作成し、前記注文データと共に前記注文データ管理装置に送信する情報である、請求項2に記載の注文データ管理装置。
  8. 前記第1注文データ管理装置が、注文入力端末からの注文データを直接受信してオーダーデータとして記憶する運転状態にあり、
    前記第2注文データ管理装置が、前記第1注文データ管理装置から前記オーダーデータを取得して記憶する待機状態にあり、
    前記第1注文データ管理装置と前記第2注文データ管理装置とが、集線装置を介した有線接続と、無線接続とによって、互いに通信可能に配置された状態において、
    前記有線接続による通信に異常が生じた場合、前記第1注文データ管理装置と前記第2注文データ管理装置とのうち、前記集線装置との通信が可能な注文データ管理装置を運転状態にさせ、前記接続機器と通信が不可能な注文データ管理装置を待機状態とさせる、稼動状態変更手段をさらに有する、
    請求項1から請求項7のいずれかに記載の注文データ管理装置。
  9. 第1注文データ管理装置と第2注文データ管理装置とを有し、客からの注文に基づく注文データを注文入力端末から受信して記憶する注文データ管理装置に用いられる注文データ管理方法であって、
    前記第1注文データ管理装置は、第1データ記憶手段と、オーダーデータ通信手段と、サブ参照データ生成部と、マージデータ生成部と、データ整合部とを有し、
    前記第2注文データ管理装置は、第2データ記憶手段を有し、
    前記第1注文データ管理装置の第1データ記憶手段が、前記注文入力端末から受信した注文データに伝票番号を付与し、オーダーデータとして自装置の記憶部に記憶するステップと、
    前記第1注文データ管理装置のオーダーデータ通信手段が、記憶した前記オーダーデータを前記第2注文データ管理装置に送信して記憶させるステップと、
    前記第2注文データ管理装置の第2データ記憶手段が、前記第1注文データ管理装置が前記注文入力端末からの注文データを記憶できない場合に前記注文入力端末からの注文データを受信して伝票番号を付与し、オーダーデータとして自装置の記憶部に記憶するステップと、
    前記第1注文データ管理装置のサブ参照データ生成部が、前記第2注文データ管理装置の記憶部に記憶されたオーダーデータを前記第1注文データ管理装置にサブ参照データとしてコピーするステップと、
    前記第1注文データ管理装置のマージデータ生成部が、前記第1注文データ管理装置の記憶部に記憶されたオーダーデータとコピーした前記サブ参照データとをマージして、マージデータを生成するステップと、
    前記第1注文データ管理装置のデータ整合部が、前記マージデータを前記第1注文データ管理装置の記憶部にあるオーダーデータと置き換えて記憶するとともに、前記マージデータを前記第2注文データ管理装置に送信して、前記第2注文データ管理装置の記憶部にあるオーダーデータと置き換えて記憶させるデータ整合部と、
    を有することを特徴とする注文データ管理方法。
JP2010180370A 2010-08-11 2010-08-11 注文データ管理装置および注文データ管理方法 Active JP5634792B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010180370A JP5634792B2 (ja) 2010-08-11 2010-08-11 注文データ管理装置および注文データ管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010180370A JP5634792B2 (ja) 2010-08-11 2010-08-11 注文データ管理装置および注文データ管理方法

Publications (2)

Publication Number Publication Date
JP2012038253A JP2012038253A (ja) 2012-02-23
JP5634792B2 true JP5634792B2 (ja) 2014-12-03

Family

ID=45850149

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010180370A Active JP5634792B2 (ja) 2010-08-11 2010-08-11 注文データ管理装置および注文データ管理方法

Country Status (1)

Country Link
JP (1) JP5634792B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5876331B2 (ja) * 2012-03-07 2016-03-02 セイコーソリューションズ株式会社 プリンタ装置、プリンタ制御プログラム、及び注文管理システム
JP5376695B2 (ja) * 2012-03-27 2013-12-25 Necインフロンティア株式会社 オーダエントリシステム
JP2014155310A (ja) * 2013-02-07 2014-08-25 Sii Data Service Kk 処理装置、および注文管理システム
JP6177608B2 (ja) * 2013-07-10 2017-08-09 セイコーソリューションズ株式会社 注文管理システムおよび注文管理プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0620191Y2 (ja) * 1987-12-31 1994-05-25 カシオ計算機株式会社 データ処理装置
JPH0293797A (ja) * 1988-09-30 1990-04-04 Casio Comput Co Ltd マルチマスターシステム
JPH05242110A (ja) * 1992-03-02 1993-09-21 Casio Comput Co Ltd ファイル処理装置
JP3955688B2 (ja) * 1998-10-07 2007-08-08 東芝テック株式会社 商品注文管理システム
JP2000207467A (ja) * 1999-01-19 2000-07-28 Seiko Instruments Inc 注文デ―タ管理装置
JP2001076258A (ja) * 1999-09-08 2001-03-23 Seiko Instruments Inc 注文データ管理装置及び管理方法
JP5209885B2 (ja) * 2007-02-14 2013-06-12 エスアイアイ・データサービス株式会社 注文情報管理装置、システム、および方法

Also Published As

Publication number Publication date
JP2012038253A (ja) 2012-02-23

Similar Documents

Publication Publication Date Title
US7114094B2 (en) Information processing system for judging if backup at secondary site is necessary upon failover
JP4254312B2 (ja) 印刷システムおよび代替印刷管理装置および印刷要求端末および印刷制御方法および代替印刷管理方法
JP4183967B2 (ja) 情報提供方法および情報提供システム
JP5634792B2 (ja) 注文データ管理装置および注文データ管理方法
JP5088801B2 (ja) マルチ・パス環境におけるデータ同期化装置、システム、及び記録媒体
JP5974827B2 (ja) 画像形成システム、画像形成装置及びプログラム
JP6511739B2 (ja) 冗長システムおよび冗長化方法
JPWO2007094041A1 (ja) サーバ管理装置及びサーバ管理プログラム
JP5764594B2 (ja) 注文管理システム、オーダ端末およびその制御プログラム
JP6572684B2 (ja) 画像形成装置及びプログラム
JP5209885B2 (ja) 注文情報管理装置、システム、および方法
JP5200252B2 (ja) 注文データ入力装置、データ管理装置
CN102722346A (zh) 管理装置、管理系统及管理方法
JP2017156925A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP5311546B2 (ja) オーダリングシステム及び情報管理システム及び注文情報消失防止方法及びプログラム
JP4757300B2 (ja) ボリューム管理装置およびボリューム管理方法
JP2007102331A (ja) 印刷システム及び印刷装置
JP2002269293A (ja) 顧客機器情報提供システム、顧客機器情報収集・管理装置、顧客機器情報提供装置及び顧客機器情報提供方法
JP2006236099A (ja) 注文管理システム
JP3526073B2 (ja) 電子メールの配信方法及び配信システム
JP7242303B2 (ja) ネットワークデバイス、方法およびプログラム
JP5876331B2 (ja) プリンタ装置、プリンタ制御プログラム、及び注文管理システム
JP2018036981A (ja) 通信装置およびプログラム
JP2020024605A (ja) 情報処理システム及び情報処理方法
JP6282989B2 (ja) データベースシステム及びそのマスター/スレーブ決定方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130611

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140311

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140508

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20140822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141007

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141015

R150 Certificate of patent or registration of utility model

Ref document number: 5634792

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250