以下、実施形態に係る支援システムについて図面を用いて説明する。
図1及び図2は、実施形態に係る支援システム1及び支援システム1に含まれる構成要素の要部回路構成の一例を示すブロック図である。支援システム1は、買物支援サービスを提供する。買物支援サービスは、リストサービス及びセルフスキャンサービスを含む。リストサービスは、情報機器上で使用可能なショッピングリストを提供する。セルフスキャンサービスは、店舗などにおいて商品に付されたバーコードなどを読み込ませることで、当該商品を買い上げ登録することができるサービスである。買い上げ登録された商品は、レジにおいて商品に付されたバーコードなどを読み込ませる必要が無くなる。支援システム1は、支援サーバー10、POS(point of sale)サーバー20、アプリサーバー30、ユーザー端末40及びPOS端末50を含む。支援サーバー10、POSサーバー20、アプリサーバー30、ユーザー端末40及びPOS端末50は、ネットワークNWに接続されている。ネットワークNWは、典型的にはインターネットを含む通信網である。また、ネットワークNWは、イントラネット、公衆携帯電話網、公衆交換電話網、又はその他の通信網を含んでも良い。
なお、図1及び図2には支援サーバー10、POSサーバー20、アプリサーバー30、ユーザー端末40及びPOS端末50を1台ずつ示すが、それぞれ複数あっても良い。
支援サーバー10は、買物支援サービスを提供するために用いられる。支援サーバー10は、プロセッサー11、ROM(read-only memory)12、RAM(random-access memory)13、補助記憶デバイス14、通信インターフェース15及びバス16を含む。
プロセッサー11は、支援サーバー10の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー11は、ROM12又は補助記憶デバイス14などに記憶されたシステムソフトウェア、アプリケーションソフトウェア又はファームウェアなどのプログラムに基づいて、支援サーバー10の各種の機能を実現するべく各部を制御する。プロセッサー11は、例えば、CPU(central processing unit)、MPU(micro processing unit)、SoC(system on a chip)、DSP(digital signal processor)又はGPU(graphics processing unit)などである。あるいは、プロセッサー11は、これらの組み合わせである。プロセッサー11は、制御部の一例である。プロセッサー11を中枢とするコンピューターは、制御部の一例である。
ROM12は、プロセッサー11を中枢とするコンピューターの主記憶装置に相当する。ROM12は、専らデータの読み出しに用いられる不揮発性メモリである。ROM12は、上記のプログラムを記憶する。また、ROM12は、プロセッサー11が各種の処理を行う上で使用するデータ又は各種の設定値などを記憶する。
RAM13は、プロセッサー11を中枢とするコンピューターの主記憶装置に相当する。RAM13は、データの読み書きに用いられるメモリである。RAM13は、プロセッサー11が各種の処理を行う上で一時的に使用するデータを記憶しておく、いわゆるワークエリアなどとして利用される。
補助記憶デバイス14は、プロセッサー11を中枢とするコンピューターの補助記憶装置に相当する。補助記憶デバイス14は、例えばEEPROM(登録商標)(electric erasable programmable read-only memory)、HDD(hard disk drive)又はSSD(solid state drive)などである。補助記憶デバイス14は、上記のプログラムを記憶する場合がある。また、補助記憶デバイス14は、プロセッサー11が各種の処理を行う上で使用するデータ、プロセッサー11での処理によって生成されたデータ又は各種の設定値などを保存する。
また、補助記憶デバイス14は、会員DB(database)141、リストDB142、辞書DB143及び関連DB144を記憶する。
会員DB141は、買物支援サービスの各会員の情報などを記憶する。会員DB141は、例えば、図3に示すような会員テーブルT1を含む。図3は、会員テーブルT1の一例を示す図である。会員テーブルT1は、会員ID(identifier)と当該会員IDで示される会員の会員名、性別及び生年月日などとを関連付ける。会員IDは、買物支援サービスの会員ごとにユニークに割り当てられた識別符号である。
リストDB142は、ショッピングリストに関する情報などを記憶する。リストDB142は、図4に示すようなリストテーブルT2及び図5に示すような登録テーブルT3を含む。図4は、リストテーブルT2の一例を示す図である。図5は、登録テーブルT3の一例を示す図である。
リストテーブルT2は、ショッピングリストの作成者などを規定する。リストテーブルT2は、リストIDと、当該リストIDで特定されるショッピングリストを作成した会員の会員IDと、当該リストIDで特定されるショッピングリストの作成日などとを関連付ける。リストIDは、ショッピングリストごとにユニークに割り当てられた識別符号である。
登録テーブルT3は、ショッピングリストに登録される購入予定商品についての情報を規定する。登録テーブルT3は、購入予定IDと、当該購入予定IDで特定される購入予定商品が登録されたショッピングリストのリストIDと、当該購入予定商品が当該ショッピングリストの何番目に表示されるかを示す表示順と、当該購入予定商品を表す名称と、当該購入予定商品の購入予定個数と、当該購入予定商品を購入済であることを示す購入フラグと、当該購入予定商品の購入日時などとを関連付ける。購入予定IDは、ショッピングリストに含まれる購入予定商品ごとにユニークに割り当てられた識別符号である。
辞書DB143は、商品の商品名と当該商品の別称とを関連付ける紐付辞書などを記憶する。辞書DB143は、図6に示すような辞書テーブルT4を含む。辞書テーブルT4は、複数の商品のそれぞれについて、商品ID及び商品名と当該商品の別称とを関連付ける。商品IDは、商品ごとにユニークに割り当てられた識別符号である。
関連DB144は、図7に示すような関連テーブルT5などを含む。図8は、関連テーブルT5のレコード構成の一例を示す図である。関連テーブルT5は、商品IDとリストIDとを関連付ける。関連テーブルT5は、ショッピングリストに基づいて購入された購入商品を当該ショッピングリストに関連付ける。
ROM12又は補助記憶デバイス14に記憶されるプログラムは、後述する処理を実行するための制御プログラムを含む。一例として、支援サーバー10は、制御プログラムがROM12又は補助記憶デバイス14に記憶された状態で支援サーバー10の管理者などへと譲渡される。しかしながら、支援サーバー10は、後述する処理を実行するための制御プログラムがROM12又は補助記憶デバイス14に記憶されない状態で当該管理者などに譲渡されても良い。また、支援サーバー10は、別の制御プログラムがROM12又は補助記憶デバイス14に記憶された状態で当該管理者などに譲渡されても良い。そして、後述する処理を実行するための制御プログラムが別途に当該管理者などへと譲渡され、当該管理者又はサービスマンなどによる操作の下にROM12又は補助記憶デバイス14へと書き込まれても良い。このときの制御プログラムの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記憶媒体に記録して、あるいはネットワークNWを介したダウンロードにより実現できる。
通信インターフェース15は、支援サーバー10がネットワークNWなどを介して通信するためのインターフェースである。通信インターフェース15は、第1の通信部の一例である。
バス16は、コントロールバス、アドレスバス及びデータバスなどを含み、支援サーバー10の各部で授受される信号を伝送する。
POSサーバー20は、POSシステムを動作させるためのサーバーである。POSサーバー20は、例えば店舗又は商店ごとに設置される。POSサーバー20は、POSシステム上の商取引に関するデータを記憶する。POSサーバー20は、プロセッサー21、ROM22、RAM23、補助記憶デバイス24、通信インターフェース25及びバス26を含む。
プロセッサー21は、POSサーバー20の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー21は、ROM22又は補助記憶デバイス24などに記憶されたシステムソフトウェア、アプリケーションソフトウェア又はファームウェアなどのプログラムに基づいて、POSサーバー20の各種の機能を実現するべく各部を制御する。プロセッサー21は、例えば、CPU、MPU、SoC、DSP又はGPUなどである。あるいは、プロセッサー21は、これらの組み合わせである。
ROM22は、プロセッサー21を中枢とするコンピューターの主記憶装置に相当する。ROM22は、専らデータの読み出しに用いられる不揮発性メモリである。ROM22は、上記のプログラムを記憶する。また、ROM22は、プロセッサー21が各種の処理を行う上で使用するデータ又は各種の設定値などを記憶する。
RAM23は、プロセッサー21を中枢とするコンピューターの主記憶装置に相当する。RAM23は、データの読み書きに用いられるメモリである。RAM23は、プロセッサー21が各種の処理を行う上で一時的に使用するデータを記憶しておく、いわゆるワークエリアなどとして利用される。
補助記憶デバイス24は、プロセッサー21を中枢とするコンピューターの補助記憶装置に相当する。補助記憶デバイス24は、例えばEEPROM、HDD又はSSDなどである。補助記憶デバイス24は、上記のプログラムを記憶する場合がある。また、補助記憶デバイス24は、プロセッサー21が各種の処理を行う上で使用するデータ、プロセッサー21での処理によって生成されたデータ又は各種の設定値などを保存する。
また、補助記憶デバイス24は、商品DB241及び履歴DB242を記憶する。
商品DB241は、各商品についての情報などを記憶する。商品DB241は、例えば、図8に示すような商品テーブルT11を含む。図8は、商品テーブルT11のレコード構成の一例を示す図である。商品テーブルT11は、商品IDと当該商品IDで特定される商品のカテゴリ、商品名、価格、在庫個数及び重量などの商品情報とを関連付ける。
履歴DB242は、商品の販売記録などを記憶する。履歴DB242は、例えば、図9に示すような履歴テーブルT12を含む。図9は、履歴テーブルT12のレコード構成の一例を示す図である。履歴テーブルT12は、取引IDと、当該取引IDについての販売情報などを関連付ける。取引IDは、商取引ごとにユニークに割り当てられた識別符号である。また、履歴DB242は、取引IDとリストIDとの関連付けも行う。
ROM22又は補助記憶デバイス24に記憶されるプログラムは、後述する処理を実行するための制御プログラムを含む。一例として、POSサーバー20は、後述する処理を実行するための制御プログラムがROM22又は補助記憶デバイス24に記憶された状態でPOSサーバー20の管理者などへと譲渡される。しかしながら、POSサーバー20は、後述する処理を実行するための制御プログラムがROM22又は補助記憶デバイス24に記憶されない状態で当該管理者などに譲渡されても良い。また、POSサーバー20は、別の制御プログラムがROM22又は補助記憶デバイス24に記憶された状態で当該管理者などに譲渡されても良い。そして、後述する処理を実行するための制御プログラムが別途に当該管理者などへと譲渡され、当該管理者又はサービスマンなどによる操作の下にROM22又は補助記憶デバイス24へと書き込まれても良い。このときの制御プログラムの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記憶媒体に記録して、あるいはネットワークNWを介したダウンロードにより実現できる。
通信インターフェース25は、POSサーバー20がネットワークNWなどを介して通信するためのインターフェースである。
バス26は、コントロールバス、アドレスバス及びデータバスなどを含み、POSサーバー20の各部で授受される信号を伝送する。
アプリサーバー30は、リストアプリAP1及びセルフスキャンアプリAP2などのアプリケーションソフトウェアを記憶する。また、アプリサーバー30は、要求に応じてリストアプリAP1又はセルフスキャンアプリAP2を送信する。
リストアプリAP1は、リストサービスを利用する場合に用いられるアプリケーションソフトウェアである。リストアプリAP1は、リストサービスのソフトウェアであっても良いし、汎用のウェブブラウザーなどであっても良い。
セルフスキャンアプリAP2は、セルフスキャンサービスを利用する場合に用いられるアプリケーションソフトウェアである。セルフスキャンアプリAP2は、セルフスキャンサービス用のソフトウェアであっても良いし、汎用のウェブブラウザーなどであっても良い。
ユーザー端末40は、買物支援サービスのユーザーが操作者として操作する装置である。ユーザー端末40は、例えば、スマートホンなどの携帯電話、PC(personal computer)又はタブレットPCなどである。ユーザー端末40は、プロセッサー41、ROM42、RAM43、補助記憶デバイス44、通信インターフェース45、入力デバイス46、表示デバイス47、カメラ48及びバス49を含む。ユーザー端末40は、端末装置の一例である。
プロセッサー41は、ユーザー端末40の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー41は、ROM42又は補助記憶デバイス44などに記憶されたシステムソフトウェア、アプリケーションソフトウェア又はファームウェアなどのプログラムに基づいて、ユーザー端末40の各種の機能を実現するべく各部を制御する。プロセッサー41は、例えば、CPU、MPU、SoC、DSP又はGPUなどである。あるいは、プロセッサー41は、これらの組み合わせである。
ROM42は、プロセッサー41を中枢とするコンピューターの主記憶装置に相当する。ROM42は、専らデータの読み出しに用いられる不揮発性メモリである。ROM42は、上記のプログラムを記憶する。また、ROM42は、プロセッサー41が各種の処理を行う上で使用するデータ又は各種の設定値などを記憶する。
RAM43は、プロセッサー41を中枢とするコンピューターの主記憶装置に相当する。RAM43は、データの読み書きに用いられるメモリである。RAM43は、プロセッサー41が各種の処理を行う上で一時的に使用するデータを記憶しておく、いわゆるワークエリアなどとして利用される。
補助記憶デバイス44は、プロセッサー41を中枢とするコンピューターの補助記憶装置に相当する。補助記憶デバイス44は、例えばEEPROM、HDD又はSSDなどである。補助記憶デバイス44は、上記のプログラムを記憶する場合がある。また、補助記憶デバイス44は、プロセッサー41が各種の処理を行う上で使用するデータ、プロセッサー41での処理によって生成されたデータ又は各種の設定値などを保存する。
また、RAM43又は補助記憶デバイス44は、会員IDを記憶する。
ROM42又は補助記憶デバイス44に記憶されるプログラムは、後述する処理を実行するためのアプリケーションソフトウェアとしてリストアプリ及びセルフスキャンアプリを含む。一例として、ユーザー端末40は、リストアプリ及びセルフスキャンアプリがROM42又は補助記憶デバイス44に記憶されない状態でユーザー端末40の管理者などへと譲渡される。そして、別途に当該管理者などへと譲渡されたリストアプリ及びセルフスキャンアプリが、当該管理者などによる操作の下に補助記憶デバイス44へと書き込まれる。しかしながら、ユーザー端末40は、リストアプリ及びセルフスキャンアプリがROM42又は補助記憶デバイス44に記憶された状態で当該管理者などへと譲渡されても良い。上述の制御プログラムの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記憶媒体に記録して、あるいはネットワークNWを介したアプリサーバー30などからのダウンロードにより実現できる。
通信インターフェース45は、ユーザー端末40がネットワークNWなどを介して通信するためのインターフェースである。通信インターフェース45は、第2の通信部の一例である。
入力デバイス46は、ユーザー端末40の操作者による操作を受け付ける。入力デバイス46は、例えば、キーボード、キーパッド、タッチパッド又はマウスなどである。
表示デバイス47は、ユーザー端末40の操作者に各種情報を通知するための画面を表示する。表示デバイス47は、例えば、液晶ディスプレイ又は有機EL(electro-luminescence)ディスプレイなどのディスプレイである。また、入力デバイス46及び表示デバイス47としては、タッチパネルを用いることもできる。すなわち、タッチパネルが備える表示パネルを表示デバイス47として、タッチパネルが備えるタッチパッドを入力デバイス46として用いることができる。表示デバイス47は、表示部の一例である。
カメラ48は、バーコードなどを撮像する。
バス49は、コントロールバス、アドレスバス及びデータバスなどを含み、ユーザー端末40の各部で授受される信号を伝送する。
POS端末50は、スーパーマーケット又はコンビニなどの商店に設置される。POS端末50は、決済対象となる商品の買上登録及び登録された商品についての決済などのレジ業務などのために設定される。POS端末50は、例えば、主に店舗の店員などによって操作される。あるいは、POS端末50は、店舗の買物客などによって操作されるセルフ方式の端末であっても良い。また、POS端末50は、商品の買上登録を行う登録装置と、登録された商品についての決済を行う決済装置とを含むセミセルフ方式の端末であっても良い。セミセルフ方式のPOS端末50は、典型的には、登録装置を店員が操作し、決済装置を買物客が操作する。POS端末50のそれぞれは、ユニークなPOSIDが割り当てられている。そして、POS端末50のそれぞれは、当該POSIDが記録されたバーコードが付されている。なお、一例として、POS端末50は主に店員によって操作される方式であるものとして以下の説明を行う。POS端末50は、プロセッサー501、ROM502、RAM503、補助記憶デバイス504、通信インターフェース505、入力デバイス506、表示デバイス507、客側タッチパネル508、スキャナー509及びバス510を含む。
プロセッサー501は、POS端末50の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー501は、ROM502又は補助記憶デバイス504などに記憶されたシステムソフトウェア、アプリケーションソフトウェア又はファームウェアなどのプログラムに基づいて、POS端末50の各種の機能を実現するべく各部を制御する。プロセッサー501は、例えば、CPU、MPU、SoC、DSP又はGPUなどである。あるいは、プロセッサー501は、これらの組み合わせである。
ROM502は、プロセッサー501を中枢とするコンピューターの主記憶装置に相当する。ROM502は、専らデータの読み出しに用いられる不揮発性メモリである。ROM502は、上記のプログラムを記憶する。また、ROM502は、プロセッサー501が各種の処理を行う上で使用するデータ又は各種の設定値などを記憶する。
RAM503は、プロセッサー501を中枢とするコンピューターの主記憶装置に相当する。RAM503は、データの読み書きに用いられるメモリである。RAM503は、プロセッサー501が各種の処理を行う上で一時的に使用するデータを記憶しておく、いわゆるワークエリアなどとして利用される。
補助記憶デバイス504は、プロセッサー501を中枢とするコンピューターの補助記憶装置に相当する。補助記憶デバイス504は、例えばEEPROM、HDD又はSSDなどである。補助記憶デバイス504は、上記のプログラムを記憶する場合がある。また、補助記憶デバイス504は、プロセッサー501が各種の処理を行う上で使用するデータ、プロセッサー501での処理によって生成されたデータ又は各種の設定値などを保存する。また、補助記憶デバイス504は、買上商品として登録された商品のリストである商品リストも記憶する。あるいは、RAM503が、上記商品リストを記憶しても良い。さらに、補助記憶デバイス504は、店舗で販売されている商品についての商品コード、商品名及び金額などの各種情報を含む商品データベースも記憶する。
ROM502又は補助記憶デバイス504に記憶されるプログラムは、後述する処理を実行するための制御プログラムを含む。一例として、POS端末50は、後述する処理を実行するための制御プログラムがROM502又は補助記憶デバイス504に記憶された状態でPOS端末50の管理者などへと譲渡される。しかしながら、POS端末50は、後述する処理を実行するための制御プログラムがROM502又は補助記憶デバイス504に記憶されない状態で当該管理者などに譲渡されても良い。また、POS端末50は、別の制御プログラムがROM502又は補助記憶デバイス504に記憶された状態で当該管理者などに譲渡されても良い。そして、後述する処理を実行するための制御プログラムが別途に当該管理者などへと譲渡され、当該管理者又はサービスマンなどによる操作の下にROM502又は補助記憶デバイス504へと書き込まれても良い。このときの制御プログラムの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記憶媒体に記録して、あるいはネットワークNWを介したダウンロードにより実現できる。
通信インターフェース505は、POS端末50がネットワークNWなどを介して通信するためのインターフェースである。
入力デバイス506は、POS端末50の操作者による操作を受け付ける。入力デバイス506は、例えば、キーボード、キーパッド、タッチパッド又はマウスなどである。
表示デバイス507は、POS端末50の操作者に各種情報を通知するための画面を表示する。表示デバイス507は、例えば、液晶ディスプレイ又は有機ELディスプレイなどのディスプレイである。また、表示デバイス507としては、タッチパッドに重ねて配置された表示パネルを用いることもできる。すなわち、タッチパネルが備える表示パネルを表示デバイス507として、タッチパネルが備えるタッチパッドを入力デバイス506として用いることができる。
客側タッチパネル508は買物客に各種情報を通知するための画面を表示する表示デバイスとして機能する。また、客側タッチパネル508は、当該買物客によるタッチ操作を受け付ける入力デバイスとして機能する。なお、前述したようにPOS端末50の操作者は主に店員であるが、客側タッチパネル508については、買物客が操作者となって操作する。
スキャナー509は、商品などに表示されたバーコードを読取って、このバーコードが表した商品コードを出力する。スキャナー509は、手で持って使用するタイプでも良いし、レジ台などに固定するタイプでも良い。
バス510は、コントロールバス、アドレスバス及びデータバスなどを含み、POS端末50の各部で授受される信号を伝送する。
以下、実施形態に係る支援システム1の動作を図10~図22などに基づいて説明する。なお、以下の動作説明における処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。図10~図16は、ユーザー端末40のプロセッサー41による処理のフローチャートである。プロセッサー41は、ROM42又は補助記憶デバイス44などに記憶されたリストアプリに基づいて図10~図15の処理を実行する。プロセッサー41は、ROM42又は補助記憶デバイス44などに記憶されたセルフスキャンアプリに基づいて図16の処理を実行する。図17~図19は、支援サーバー10のプロセッサー11による処理のフローチャートである。プロセッサー11は、ROM12又は補助記憶デバイス14などに記憶された制御プログラムに基づいてこの処理を実行する。図20及び図21は、POS端末50のプロセッサー501による処理のフローチャートである。プロセッサー501は、ROM502又は補助記憶デバイス504などに記憶された制御プログラムに基づいてこの処理を実行する。なお、特に説明が無い限り、プロセッサー11、プロセッサー41及びプロセッサー501は、Act(n)(nは、自然数。)の処理の後、Act(n+1)へと進むものとする。なお、以下の説明で支援サーバー10が行う処理は、1台のユーザー端末40又は1台のPOS端末50に対して行うものである。実際には、支援サーバー10は、複数のユーザー端末40及び複数のPOS端末50のそれぞれに対して同様の処理を行う。
図10のAct1においてユーザー端末40のプロセッサー41は、ユーザー端末40がリストサービスにログインした状態であるか否かを判定する。プロセッサー41は、ユーザー端末40がリストサービスにログインした状態であるならば、Act1においてYesと判定してAct3へと進む。対して、プロセッサー41は、ユーザー端末40がリストサービスにログインした状態でないならば、Act1においてNoと判定してAct2へと進む。
Act2においてプロセッサー41は、ユーザー端末40をリストサービスにログインした状態にするためのログイン処理を行う。ログイン処理については、周知の方法を用いることができる。ログイン処理により、RAM43又は補助記憶デバイス44は、ログインに用いられた会員IDを記憶する。また、支援サーバー10は、ユーザー端末40が当該会員IDでリストサービスにログインしていることを識別する。
Act3においてプロセッサー41は、スタート画面に対応した画像を生成する。そして、プロセッサー41は、生成したこの画像を表示するように表示デバイス47に対して指示する。この指示を受けて表示デバイス47は、スタート画面を表示する。
スタート画面は、一例として、作成開始ボタン及び買物開始ボタンを含む。作成開始ボタンは、ショッピングリストを作成する場合に操作者が操作するためのボタンである。買物開始ボタンは、作成したショッピングリストを用いて買い物を開始する場合に操作者が操作するためのボタンである。
Act4においてプロセッサー41は、ショッピングリストの作成開始を指示する操作が行われたか否かを判定する。すなわち、プロセッサー41は、作成開始ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、ショッピングリストの作成開始を指示する操作が行われないならば、Act4においてNoと判定してAct5へと進む。
Act5においてプロセッサー41は、買物の開始を指示する操作が行われたか否かを判定する。すなわち、プロセッサー41は、買物開始ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、買物の開始を指示する操作が行われないならば、Act5においてNoと判定してAct4へと戻る。かくして、プロセッサー41は、ショッピングリストの作成開始を指示する操作が行われるか、買物の開始を指示する操作が行われるまでAct4及びAct5を繰り返す。
ユーザー端末40の操作者は、保存済みのショッピングリストを編集する、又は新規にショッピングリストを作成して編集するなどの方法によりショッピングリストを作成する場合、作成開始ボタンを操作する。
プロセッサー41は、Act4及びAct5の待受状態にあるときにショッピングリストの作成開始を指示する操作が行われたならば、Act4においてYesと判定してAct6へと進む。
Act6においてプロセッサー41は、ショッピングリストを作成することを示す作成開始要求を生成する。当該作成開始要求は、RAM43又は補助記憶デバイス44に記憶されている会員IDを含む。そして、プロセッサー41は、生成した作成開始要求を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該作成開始要求を支援サーバー10に送信する。送信された当該作成開始要求は、支援サーバー10の通信インターフェース15によって受信される。
一方、図17のAct201において支援サーバー10のプロセッサー11は、通信インターフェース15によって作成開始要求が受信されたか否かを判定する。プロセッサー11は、作成開始要求が受信されないならば、Act201においてNoと判定してAct202へと進む。
Act202においてプロセッサー11は、通信インターフェース15によって登録開始要求が受信されたか否かを判定する。プロセッサー11は、登録開始要求が受信されないならば、Act202においてNoと判定してAct203へと進む。なお、登録開始要求については後述する。
Act203においてプロセッサー11は、POS端末50からログインが行われたか否かを判定する。プロセッサー11は、POS端末50からログインが行われていないならば、Act203においてNoと判定してAct201へと戻る。かくして、プロセッサー11は、作成開始要求又は登録開始要求が受信されるかPOS端末50からログインが行われるまでAct201~Act203を繰り返す。
プロセッサー11は、Act201~Act203の待受状態にあるときに作成開始要求が受信されたならば、Act201においてYesと判定してAct204へと進む。 Act204においてプロセッサー11は、ショッピングリストの作成を許諾することを示す作成許諾応答を生成する。当該作成許諾応答は、Act201で受信された作成開始要求に含まれる会員IDに関連付けられたショッピングリストの一覧を含む。プロセッサー11は、当該ショッピングリストの一覧を、例えば、リストテーブルT2から取得する。当該ショッピングリストの一覧は、当該ショッピングリストそれぞれのリストID及び作成日時などを含む。そして、プロセッサー11は、生成した当該作成許諾応答をユーザー端末40に送信するように通信インターフェース15に対して指示する。この指示を受けて通信インターフェース15は、当該作成許諾応答をユーザー端末40に送信する。送信された当該作成許諾応答は、ユーザー端末40の通信インターフェース45によって受信される。
一方、図10のAct7においてプロセッサー41は、ユーザー端末40の通信インターフェース45によって作成許諾応答が受信されるのを待ち受けている。プロセッサー41は、作成許諾応答が受信されたならば、Act7においてYesと判定してAct8へと進む。
Act8においてプロセッサー41は、第1のリスト一覧画面に対応した画像を生成する。そして、プロセッサー41は、生成したこの画像を表示するように表示デバイス47に対して指示する。この指示を受けて表示デバイス47は、第1のリスト一覧画面を表示する。
第1のリスト一覧画面は、一例として、新規作成ボタン、及びAct7で受信された作成許諾応答に含まれるショッピングリストの一覧を含む。新規作成ボタンは、ショッピングリストの新規作成を指示する場合にユーザー端末40の操作者が操作するためのボタンである。
Act9においてプロセッサー41は、ショッピングリストの新規作成を指示する操作が行われたか否かを判定する。すなわち、プロセッサー41は、新規作成ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、ショッピングリストの新規作成を指示する操作が行われないならば、Act9においてNoと判定してAct10へと進む。
Act10においてプロセッサー41は、第1のリスト一覧画面に含まれるショッピングリストの一覧からショッピングリストが選択されたか否かを判定する。プロセッサー41は、ショッピングリストが選択されていないならば、Act10においてNoと判定してAct9へと戻る。かくして、プロセッサー41は、ショッピングリストの新規作成を指示する操作が行われるか、ショッピングリストが選択されるまでAct9及びAct10を繰り返す。
ユーザー端末40の操作者は、新規にショッピングリストを作成したい場合、新規作成ボタンを操作する。
プロセッサー41は、Act9及びAct10の待受状態にあるときにショッピングリストの新規作成を指示する操作が行われたならば、Act9においてYesと判定してAct11へと進む。
Act11においてプロセッサー41は、ショッピングリストの新規作成を支援サーバー10に要求するために新規要求を生成する。当該新規要求は、補助記憶デバイス44に記憶された会員IDを含む。そして、プロセッサー41は、生成した当該新規要求を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該新規要求を支援サーバー10に送信する。送信された当該新規要求は、支援サーバー10の通信インターフェース15によって受信される。また、プロセッサー41は、ショッピングリストを新規に作成してRAM43又は補助記憶デバイス44に記憶させる。当該ショッピングリストは、購入予定商品が登録されていないものである。さらに、プロセッサー41は、新規作成されたショッピングリストのリストIDをRAM43又は補助記憶デバイス44に記憶させる。なお、当該リストIDは、後述するように、支援サーバー10から送信される。
一方、図17のAct205において支援サーバー10のプロセッサー11は、ユーザー端末40によってリストの取得が行われたか否かを判定する。プロセッサー11は、リストの取得が行われていないならば、Act205においてNoと判定してAct206へと進む。
Act206においてプロセッサー11は、通信インターフェース15によって新規要求が受信されたか否かを判定する。プロセッサー11は、新規要求が受信されていないならば、Act206においてNoと判定してAct205へと戻る。かくして、プロセッサー11は、ユーザー端末40によってリストの取得が行われるか、通信インターフェース15によって新規要求が受信されるまでAct205及びAct206を繰り返す。
プロセッサー11は、Act205及びAct206の待受状態にあるときに新規要求が受信されたならば、Act206においてYesと判定してAct207へと進む。 Act207においてユーザー端末40のプロセッサー41は、ショッピングリストを新規作成する。すなわち、プロセッサー41は、リストテーブルT2にレコードを追加する。このとき、プロセッサー41は、新規作成されたショッピングリストにユニークなリストIDを割り当てる。追加されたレコードは、当該リストID、及びAct206で受信された新規要求に含まれる会員IDを含む。また、プロセッサー41は、当該リストIDをユーザー端末40に送信するように通信インターフェース15に対して指示する。この指示を受けて通信インターフェース15は、当該リストIDをユーザー端末40に送信する。送信された当該リストIDは、ユーザー端末40の通信インターフェース45によって受信される。当該リストIDは、前述したように、RAM43又は補助記憶デバイス44に記憶される。
対して、ユーザー端末40の操作者は、保存済みのショッピングリストを編集したい場合、第1のリスト一覧画面に含まれるショッピングリストの一覧から編集したいショッピングリストを選択する。ユーザー端末40の操作者は、例えば、第1のリスト一覧画面に表示された作成日時などによって所望のショッピングリストを特定する。
プロセッサー41は、図10のAct9及びAct10の待受状態にあるときにショッピングリストが選択されたならば、Act10においてYesと判定してAct12へと進む。
Act12においてユーザー端末40のプロセッサー41は、Act10で選択されたショッピングリストを支援サーバー10から取得する。そして、プロセッサー41は、取得したショッピングリストをRAM43又は補助記憶デバイス44に記憶させる。また、プロセッサー41は、当該ショッピングリストに対応するリストIDをRAM43又は補助記憶デバイス44に記憶させる。
なお、Act11又はAct12でRAM43又は補助記憶デバイス44に記憶されたリストIDを、以下「作成対象リストID」というものとする。
プロセッサー41は、Act11又はAct12の処理の後、図11のAct21へと進む。
Act21においてプロセッサー41は、登録画面に対応した画像を生成する。そして、プロセッサー41は、生成したこの画像を表示するように表示デバイス47に対して指示する。この指示を受けて表示デバイス47は、登録画面を表示する。
登録画面は、一例として、購入予定商品の一覧、登録ボタン、削除ボタン及び終了ボタンを含む。当該購入予定商品の一覧は、RAM43又は補助記憶デバイス44に記憶されたショッピングリストに含まれる購入予定商品の一覧である。登録ボタンは、ショッピングリストに購入予定商品を追加登録する場合にユーザー端末40の操作者が操作するためのボタンである。削除ボタンは、ショッピングリリストに登録された購入予定商品を削除する場合にユーザー端末40の操作者が操作するためのボタンである。終了ボタンは、ショッピングリストの編集を終了する場合にユーザー端末40の操作者が操作するためのボタンである。
Act22においてプロセッサー41は、購入予定商品の追加登録を指示する操作が行われたか否かを判定する。すなわち、プロセッサー41は、登録ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、購入予定商品の追加登録を指示する操作が行われないならば、Act22においてNoと判定してAct23へと進む。
Act23においてプロセッサー41は、購入予定商品の削除を指示する操作が行われたか否かを判定する。すなわち、プロセッサー41は、削除ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、購入予定商品の削除を指示する操作が行われないならば、Act23においてNoと判定してAct24へと進む。
Act24においてプロセッサー41は、ショッピングリストの編集の終了を指示する操作が行われたか否かを判定する。すなわち、プロセッサー41は、終了ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、ショッピングリストの編集の終了を指示する操作が行われないならば、Act24においてNoと判定してAct22へと戻る。かくして、プロセッサー41は、購入予定商品の追加登録を指示する操作、購入予定商品の削除を指示する操作、又はショッピングリストの編集の終了を指示する操作が行われるまでAct22~Act24を繰り返す。
プロセッサー41は、Act22~Act24の待受状態にあるときに購入予定商品の追加登録を指示する操作が行われたならば、Act22においてYesと判定して図12のAct31へと進む。
Act31においてプロセッサー41は、追加する購入予定商品を選択するための追加選択画面に対応した画像を生成する。そして、プロセッサー41は、生成したこの画像を表示するように表示デバイス47に対して指示する。この指示を受けて表示デバイス47は、追加選択画面を表示する。
追加選択画面は、例えば、商品の一覧、登録終了ボタン及び登録ボタンを含む。当該商品の一覧に含まれる商品は、ユーザー端末40の操作者によって商品を選択する操作が行われることで選択状態となる。また、選択状態である商品は、ユーザー端末40の操作者によって商品の選択を解除する操作が行われることで非選択状態となる。登録終了ボタンは、購入予定商品の追加登録を終了する場合にユーザー端末40の操作者が操作するためのボタンである。登録ボタンは、選択状態の商品をショッピングリストに購入予定商品として追加登録する場合にユーザー端末40の操作者が操作するためのボタンである。
Act32においてプロセッサー41は、購入予定商品の追加登録の終了を指示する操作が行われたか否かを判定する。すなわち、プロセッサー41は、登録終了ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、購入予定商品の追加登録の終了を指示する操作が行われないならば、Act32においてNoと判定してAct33へと進む。
Act33においてプロセッサー41は、商品が選択状態となったか否かを判定する。プロセッサー41は、商品が選択状態となっていないならば、Act33においてNoと判定してAct32へと戻る。かくして、プロセッサー41は、購入予定商品の追加登録の終了を指示する操作が行われるか、商品が選択状態となるまでAct32及びAct33を繰り返す。
プロセッサー41は、Act32及びAct33の待受状態にあるときに購入予定商品の追加登録の終了を指示する操作が行われたならば、Act32においてYesと判定して図11のAct21へと戻る。対して、プロセッサー41は、図12のAct32及びAct33の待受状態にあるときに商品が選択状態となったならば、Act33においてYesと判定してAct34へと進む。
Act34においてプロセッサー41は、Act33で選択状態になった商品が非選択状態になったか否かを判定する。プロセッサー41は、選択状態の商品が非選択状態になっていないならば、Act34においてNoと判定してAct35へと進む。
Act35においてプロセッサー41は、Act33で選択状態となった商品をショッピングリストに追加登録するように指示する操作が行われたか否かを判定する。すなわち、プロセッサー41は、登録ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、選択状態の商品をショッピングリストに追加登録するように指示する操作が行われないならば、Act35においてNoと判定してAct34へと戻る。かくして、プロセッサー41は、選択状態の商品が非選択状態になるか、選択状態の商品をショッピングリストに追加登録するように指示する操作が行われるまでAct34及びAct35を繰り返す。
プロセッサー41は、Act34及びAct35の待受状態にあるときに選択状態の商品が非選択状態となったならば、Act34においてYesと判定してAct32へと戻る。対して、Act34及びAct35の待受状態にあるときに選択状態の商品をショッピングリストに追加登録するように指示する操作が行われたならば、Act35においてYesと判定してAct36へと進む。
Act36においてプロセッサー41は、選択状態の商品をショッピングリストに追加登録するように支援サーバー10に指示するための登録要求を生成する。当該登録要求は、作成対象リストID及び選択状態の商品の商品IDを含む。そして、プロセッサー41は、生成した当該登録要求を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該登録要求を支援サーバー10に送信する。送信された当該登録要求は、支援サーバー10の通信インターフェース15によって受信される。プロセッサー41は、Act36の処理の後、図11のAct26へと進む。
一方、プロセッサー41は、Act22~Act24の待受状態にあるときに購入予定商品の削除を指示する操作が行われたならば、Act23においてYesと判定して図13のAct41へと進む。
Act41においてプロセッサー41は、削除する購入予定商品を選択するための削除画面に対応した画像を生成する。そして、プロセッサー41は、生成したこの画像を表示するように表示デバイス47に対して指示する。この指示を受けて表示デバイス47は、削除画面を表示する。
削除画面は、例えば、ショッピングリストに登録された購入予定商品の一覧、削除終了ボタン及び削除ボタンを含む。当該購入予定商品の一覧に含まれる購入予定商品は、ユーザー端末40の操作者によって購入予定商品を選択する操作が行われることで選択状態となる。また、選択状態である購入予定商品は、ユーザー端末40の操作者によって購入予定商品の選択を解除する操作が行われることで非選択状態となる。削除終了ボタンは、購入予定商品の削除を終了する場合にユーザー端末40の操作者が操作するためのボタンである。削除ボタンは、選択状態の購入予定商品をショッピングリストから削除する場合にユーザー端末40の操作者が操作するためのボタンである。
Act42においてプロセッサー41は、購入予定商品の削除の終了を指示する操作が行われたか否かを判定する。すなわち、プロセッサー41は、削除終了ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、購入予定商品の削除の終了を指示する操作が行われないならば、Act42においてNoと判定してAct43へと進む。
Act43においてプロセッサー41は、商品が選択状態となったか否かを判定する。プロセッサー41は、商品が選択状態となっていないならば、Act43においてNoと判定してAct42へと戻る。かくして、プロセッサー41は、購入予定商品の削除の終了を指示する操作が行われるか、購入予定商品が選択状態となるまでAct42及びAct43を繰り返す。
プロセッサー41は、Act42及びAct43の待受状態にあるときに購入予定商品の削除の終了を指示する操作が行われたならば、Act42においてYesと判定して図11のAct21へと戻る。対して、プロセッサー41は、図12のAct42及びAct43の待受状態にあるときに購入予定商品が選択状態となったならば、Act43においてYesと判定してAct44へと進む。
Act44においてプロセッサー41は、Act43で選択状態になった購入予定商品が非選択状態になったか否かを判定する。プロセッサー41は、選択状態の購入予定商品が非選択状態になっていないならば、Act44においてNoと判定してAct45へと進む。
Act45においてプロセッサー41は、Act43で選択状態となった購入予定商品をショッピングリストから削除するように指示する操作が行われたか否かを判定する。すなわち、プロセッサー41は、削除ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、選択状態の購入予定商品をショッピングリストから削除するように指示する操作が行われないならば、Act45においてNoと判定してAct44へと戻る。かくして、プロセッサー41は、選択状態の購入予定商品が非選択状態になるか、選択状態の購入予定商品をショッピングリストから削除するように指示する操作が行われるまでAct44及びAct45を繰り返す。
プロセッサー41は、Act44及びAct45の待受状態にあるときに選択状態の購入予定商品が非選択状態となったならば、Act44においてYesと判定してAct42へと戻る。対して、Act44及びAct45の待受状態にあるときに選択状態の購入予定商品をショッピングリストから削除するように指示する操作が行われたならば、Act45においてYesと判定してAct46へと進む。
Act46においてプロセッサー41は、選択状態の購入予定商品をショッピングリストから削除するように支援サーバー10に指示するための削除要求を生成する。当該削除要求は、作成対象リストID及び選択状態の購入予定商品の購入予定IDを含む。そして、プロセッサー41は、生成した当該削除要求を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該削除要求を支援サーバー10に送信する。送信された当該削除要求は、支援サーバー10の通信インターフェース15によって受信される。プロセッサー41は、Act46の処理の後、図11のAct26へと進む。
一方、図17のAct208において支援サーバー10のプロセッサー11は、通信インターフェース15によって登録要求が受信されたか否かを判定する。プロセッサー11は、通信インターフェース15によって登録要求が受信されていないならば、Act208においてNoと判定してAct209へと進む。
Act209においてプロセッサー11は、通信インターフェース15によって削除要求が受信されたか否かを判定する。プロセッサー11は、通信インターフェース15によって削除要求が受信されていないならば、Act209においてNoと判定してAct210へと進む。
Act210においてプロセッサー11は、通信インターフェース15によって終了要求が受信されたか否かを判定する。なお、終了要求については後述する。プロセッサー11は、通信インターフェース15によって終了要求が受信されていないならば、Act210においてNoと判定してAct208へと戻る。かくして、プロセッサー11は、通信インターフェース15によって登録要求、削除要求又は終了要求が受信されるまでAct208~Act210を繰り返す。
プロセッサー11は、Act208~Act210の待受状態にあるときに登録要求が受信されたならば、Act208においてYesと判定してAct211へと進む。
Act211においてプロセッサー11は、当該登録要求に含まれる作成対象リストIDで特定されるショッピングリストに、当該登録要求に含まれる商品IDで特定される商品を購入予定商品として追加登録する。すなわち、プロセッサー11は、登録テーブルT3にレコードを追加する。このとき、プロセッサー11は、当該購入予定商品にユニークな購入予定IDを割り当てる。追加されたレコードは、当該購入予定ID、当該作成対象リストID及び当該商品IDを含む。なお、追加されたレコードに含まれる購入フラグの初期値は、Falseである。また、追加されたレコードに含まれる表示順は、例えば、作成対象リストIDに関連付けられた購入予定IDの数である。
また、プロセッサー11は、Act208~Act210の待受状態にあるときに削除要求が受信されたならば、Act208においてYesと判定してAct212へと進む。
Act212においてプロセッサー11は、当該削除要求に含まれる作成対象リストIDで特定されるショッピングリストから、当該削除要求に含まれる購入予定IDで特定される購入予定商品を削除する。すなわち、プロセッサー11は、登録テーブルT3から当該購入予定IDで特定されるレコードを削除する。
プロセッサー11は、Act211又はAct212の処理の後、Act213へと進む。
Act213においてプロセッサー11は、登録又は削除が完了したことを示す第1の完了通知を生成する。当該第1の完了通知は、作成対象リストIDで特定されるショッピングリストを含む。そして、プロセッサー11は、生成した当該第1の完了通知をユーザー端末40に送信するように通信インターフェース15に対して指示する。この指示を受けて通信インターフェース15は、当該第1の完了通知をユーザー端末40に送信する。送信された当該第1の完了通知は、ユーザー端末40の通信インターフェース45によって受信される。プロセッサー11は、Act213の処理の後、Act210へと戻る。
一方、図11のAct26においてユーザー端末40のプロセッサー41は、通信インターフェース45によって第1の完了通知が受信されるのを待ち受けている。プロセッサー41は、第1の完了通知が受信されたならば、Act26においてYesと判定してAct27へと進む。
Act27においてプロセッサー41は、Act26で受信された第1の完了通知に含まれるショッピングリストをRAM43又は補助記憶デバイス44に記憶させる。なお、プロセッサー41は、当該ショッピングリストを、既にRAM43又は補助記憶デバイス44に記憶されているショッピングリストに上書きして記憶させる。プロセッサー41は、Act27の処理の後、Act21へと戻る。
なお、プロセッサー41は、Act22~Act24の待受状態にあるときにショッピングリストの編集の終了を指示する操作が行われたならば、Act24においてYesと判定してAct25へと進む。
Act25においてプロセッサー41は、ショッピングリストの編集を終了することを示す終了要求を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該終了要求を支援サーバー10に送信する。送信された当該終了要求は、支援サーバー10の通信インターフェース15によって受信される。
一方、支援サーバー10のプロセッサー11は、図17のAct208~Act210の待受状態にあるときに終了要求が受信されたならば、Act210においてYesと判定してAct201へと戻る。
そして、ユーザー端末40の操作者は、作成したショッピングリストを用いて買物をする場合、買物開始ボタンを操作する。
ユーザー端末40のプロセッサー41は、図10のAct4及びAct5の待受状態にあるときに買物の開始を指示する操作が行われたならば、Act5においてYesと判定してAct13へと進む。
Act13においてプロセッサー41は、買い物を開始することを示す買物開始要求を生成する。当該買物開始要求は、RAM43又は補助記憶デバイス44に記憶されている会員IDを含む。そして、プロセッサー41は、生成した当該買物開始要求を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該買物開始要求を支援サーバー10に送信する。送信された当該買物開始要求は、支援サーバー10の通信インターフェース15によって受信される。
一方、支援サーバー10のプロセッサー11は、図17のAct201~Act203の待受状態にあるときに買物開始要求が受信されたならば、Act202においてYesと判定してAct214へと進む。
Act214においてプロセッサー11は、ショッピングリストを用いた買い物の開始を許諾することを示す買物許諾応答を生成する。当該買物許諾応答は、Act202で受信された買物開始要求に含まれる会員IDに関連付けられたショッピングリストの一覧を含む。プロセッサー11は、当該ショッピングリストの一覧を、例えば、リストテーブルT2から取得する。当該ショッピングリストの一覧は、当該ショッピングリストのリストID及び作成日時などを含む。そして、プロセッサー11は、生成した当該買物許諾応答をユーザー端末40に送信するように通信インターフェース15に対して指示する。この指示を受けて通信インターフェース15は、当該買物許諾応答をユーザー端末40に送信する。送信された当該買物許諾応答は、ユーザー端末40の通信インターフェース45によって受信される。
一方、図10のAct14においてユーザー端末40のプロセッサー41は、通信インターフェース45によって買物許諾応答が受信されるのを待ち受けている。プロセッサー41は、買物許諾応答が受信されたならば、Act14においてYesと判定してAct15へと進む。
Act15においてプロセッサー41は、第2のリスト一覧画面に対応した画像を生成する。そして、プロセッサー41は、生成したこの画像を表示するように表示デバイス47に対して指示する。この指示を受けて表示デバイス47は、第2のリスト一覧画面を表示する。
第2のリスト一覧画面は、一例として、Act14で受信された買物許諾応答に含まれるショッピングリストの一覧を含む。
ユーザー端末40の操作者は、第2のリスト一覧画面に表示された保存済みのショッピングリストから、買物に用いるショッピングリストを選択する。ユーザー端末40の操作者は、例えば、第2のリスト一覧画面に表示された作成日時などによって所望のショッピングリストを特定する。
Act17においてユーザー端末40のプロセッサー41は、Act16で選択されたショッピングリストを支援サーバー10から取得する。そして、プロセッサー41は、取得したショッピングリストをRAM43又は補助記憶デバイス44に記憶させる。また、プロセッサー41は、当該ショッピングリストに対応するリストIDをRAM43又は補助記憶デバイス44に記憶させる。なお、Act17でRAM43又は補助記憶デバイス44に記憶されたリストIDを「買物対象リストID」というものとする。
一方、図17のAct215において支援サーバー10のプロセッサー11は、ユーザー端末40によってリストの取得が行われるのを待ち受ける。プロセッサー11は、ユーザー端末40によってリストの取得が行われたならば、Act215においてYesと判定して図18のAct221へと進む。
一方、ユーザー端末40のプロセッサー41は、図10のAct17の処理の後、図14のAct51へと進む。
Act51においてプロセッサー41は、セルフスキャンアプリを起動させる。セルフスキャンアプリの起動に応じて、プロセッサー41は、図16に示す処理を開始する。なお、プロセッサー41は、図16に示す処理を、図10~図15に示す処理と並行又は並列で処理を行う。また、Act51の処理によって起動されたセルフスキャンアプリは、リストアプリと連携して動作する。
図16のAct101においてプロセッサー41は、ユーザー端末40がセルフスキャンサービスにログインした状態であるか否かを判定する。プロセッサー41は、ユーザー端末40がセルフスキャンサービスにログインした状態であるならば、Act101においてYesと判定してAct103へと進む。対して、プロセッサー41は、ユーザー端末40がセルフスキャンサービスにログインした状態でないならば、Act101においてNoと判定してAct102へと進む。
Act102においてプロセッサー41は、ユーザー端末40をセルフスキャンサービスにログインした状態にするためのログイン処理を行う。ログイン処理については、周知の方法を用いることができる。ログイン処理により、RAM43又は補助記憶デバイス44は、ログインに用いられた会員IDを記憶する。また、支援サーバー10は、ユーザー端末40が当該会員IDでセルフスキャンサービスにログインしていることを識別する。なお、ユーザー端末40の操作者は、例えば、ログイン時などにセルフスキャンサービスを使用する店舗を指定する。これにより、支援サーバー10は、ユーザー端末40がどの店舗でセルフスキャンサービスを用いるかを識別する。以下、支援サーバー10は、POSサーバー20と通信する場合、当該店舗に対応するPOSサーバー20と通信を行う。
Act103においてプロセッサー41は、カメラ48を起動する。
Act104においてプロセッサー41は、商品に付されたバーコードがカメラ48によって読み込まれたか否かを判定する。プロセッサー41は、商品に付されたバーコードがカメラ48によって読み込まれていないならば、Act104においてNoと判定してAct105へと進む。
Act105においてプロセッサー41は、セルフスキャンアプリに決済コマンドが入力されたか否かを判定する。プロセッサー41は、セルフスキャンアプリに決済コマンドが入力されていないならば、Act105においてNoと判定してAct104へと戻る。かくして、プロセッサー41は、商品に付されたバーコードがカメラ48によって読み込まれるか、セルフスキャンアプリに決済コマンドが入力されるまでAct104及びAct105を繰り返す。
一方、図14のAct52においてプロセッサー41は、セルフスキャンアプリが起動するのを待ち受ける。プロセッサー41は、セルフスキャンアプリが起動したならば、Act52においてYesと判定して図15のAct53へと進む。
Act53においてプロセッサー41は、図21に示すようなリスト画面SC1に対応した画像を生成する。そして、プロセッサー41は、生成したこの画像を表示するように表示デバイス47に対して指示する。この指示を受けて表示デバイス47は、リスト画面SC1を表示する。
図21は、リスト画面SC1の一例を示す図である。リスト画面SC1は、RAM43又は補助記憶デバイス44に記憶されたショッピングリストに含まれる購入予定商品の一覧が表示された領域A1及び終了ボタンB1を含む。ここで領域A1に表示される購入予定商品の並び順は、例えば、登録テーブルT3に示された並び順の値が小さい順である。領域A1は、図22では、一例として、パン、牛肉、りんご、豚肉、タマネギ、ぶどうがこの順で表示されている。なお、購入フラグの値がTrueである購入予定商品が表示された領域には、チェックマークなどが表示される。また、領域A1に含まれる各購入予定商品が表示された領域は、それぞれがボタンになっている。当該それぞれのボタンは、それぞれのボタン内に表示された購入予定商品を選択する場合にユーザー端末40の操作者が操作するためのボタンである。当該ボタンが操作されると、対応する購入予定商品は選択状態になる。終了ボタンB1は、ショッピングリストを用いた買物を終了する場合にユーザー端末40の操作者が操作するためのボタンである。
Act54においてプロセッサー41は、リスト画面SC1に表示された購入予定商品を選択する操作が行われたか否かを判定する。プロセッサー41は、購入予定商品を選択する操作が行われていないならば、Act54においてNoと判定してAct55へと進む。
Act55においてプロセッサー41は、通信インターフェース45によって確認要求又は選択要求などの要求が受信されたか否かを判定する。プロセッサー41は、要求が受信されていないならば、Act55においてNoと判定してAct56へと進む。なお、確認要求及び選択要求については、後述する。
Act56においてプロセッサー41は、通信インターフェース45によって第3の完了通知が受信されたか否かを判定する。プロセッサー41は、第3の完了通知が受信されていないならば、Act56においてNoと判定してAct57へと進む。なお、第3の完了通知については、後述する。
Act57においてプロセッサー41は、買い物を終了して決済を行うための操作が行われたか否かを判定する。すなわち、プロセッサー41は、決済ボタンB3を操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、買い物を終了して決済を行うための操作が行われないならば、Act57においてNoと判定してAct54へと戻る。かくして、プロセッサー41は、購入予定商品を選択する操作が行われるか、要求又は第3の完了通知が受信されるか、買い物を終了して決済を行うための操作が行われるまでAct54~Act57を繰り返す。
ユーザー端末40の操作者は、例えば、陳列棚などの陳列場所から購入予定商品を取得してカゴなどに入れる。この際、ユーザー端末40の操作者は、ショッピングリストに含まれる購入予定商品の中から当該商品に該当する購入予定商品を、取得済み又は購入済みであることが分かるような状態(以下「購入済状態」という。)にするために例えば以下の(1)又は(2)の操作を行う。なお、ユーザー端末40の操作者が、陳列棚などから「りんご」を取ったものとして以下の説明を行う。
(1)操作A
ユーザー端末40の操作者は、リスト画面SC1に表示された購入予定商品の中から陳列場所から取得した商品に該当する購入予定商品を選択する。すなわち、ユーザー端末40の操作者は、リスト画面SC1に表示された購入予定商品の中から「りんご」に対応するボタンを操作して「りんご」を選択する。
(2)操作B
ユーザー端末40の操作者は、陳列場所から取得した商品に付されたバーコードをカメラ48によって読み取らせる。すなわち、ユーザー端末40の操作者は、りんごに付されたバーコードをカメラ48によって読み取らせる。
プロセッサー41は、Act54~Act57の待受状態にあるときに購入予定商品を選択する操作が行われたならば、Act54においてYesと判定してAct58へと進む。
Act58においてプロセッサー41は、選択済み画面に対応した画像を生成する。そして、プロセッサー41は、生成したこの画像を表示するように表示デバイス47に対して指示する。この指示を受けて表示デバイス47は、選択済み画面を表示する。
選択済み画面は、領域A2を含む。領域A2は、例えば、リスト画面SC1上にポップアップ表示される。領域A2は、文字列S21、チェックボタンB21及び解除ボタンB22を含む。文字列S21は、選択状態の購入予定商品を陳列場所などから取ったか否かを問う文字列又は当該購入予定商品を購入済状態にして良いか否かを問う文字列などを含む。文字列S21は、例えば、「「りんご」をカゴに入れますか?」のような文字列である。チェックボタンB21は、文字列S21に示される購入予定商品を購入済状態にする場合にユーザー端末40の操作者が操作するボタンである。一例として、プロセッサー41は、当該購入予定商品の横にチェックマークを表示することで購入済状態にする。あるいは例えば、プロセッサー41は、当該購入予定商品が表示された領域の一部又は全部の色を変えるなどして購入済状態にする。解除ボタンB22は、文字列S21に示される商品を陳列場所から取っていないなどの理由で、選択状態の購入予定商品の選択を解除する場合にユーザー端末40の操作者が操作するためのボタンである。解除ボタンB22が操作されると、選択状態の購入予定商品の選択が解除される。なお、購入済状態でない購入予定商品の状態を「未購入状態」というものとする。未購入状態の購入予定商品は、未取得又は未購入であることが分かるような状態である。
なお、図21は、未購入状態の商品が選択された場合の選択済み画面SC2である。購入済状態が選択された場合の選択済み画面は、文字列S21に代えて文字列S22を含み、チェックボタンB21に代えてキャンセルボタンB23を含む。文字列S22は、選択状態の購入予定商品を陳列場所に戻したか否かを問う文字列又は当該購入予定商品を未購入状態にして良いかを問う文字列などを含む。キャンセルボタンB23は、文字列S21に示される購入予定商品を未購入状態にする場合にユーザー端末40の操作者が操作するボタンである。
Act59においてプロセッサー41は、選択状態の購入予定商品の選択を解除する操作が行われたか否かを判定する。すなわち、プロセッサー41は、解除ボタンB22を操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、選択状態の購入予定商品の選択を解除する操作が行われないならば、Act59においてNoと判定してAct60へと進む。
Act60においてプロセッサー41は、購入予定商品を購入済状態にする操作が行われたか否かを判定する。すなわち、プロセッサー41は、チェックボタンB21を操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、購入予定商品を購入済状態にする操作が行われないならば、Act60においてNoと判定してAct61へと進む。
Act61においてプロセッサー41は、購入予定商品を未購入状態にする操作が行われたか否かを判定する。すなわち、プロセッサー41は、キャンセルボタンB23を操作するなどの予め定められた操作が行われたか否かを判定する。プロセッサー41は、購入予定商品を未購入状態にする操作が行われないならば、Act61においてNoと判定してAct59へと戻る。かくして、プロセッサー41は、選択状態の購入予定商品の選択を解除する操作、購入予定商品を購入済状態にする操作、又は購入予定商品を未購入状態にする操作が行われるまでAct59~Act61を繰り返す。
プロセッサー41は、Act59~Act61の待受状態にあるときに選択状態の購入予定商品の選択を解除する操作が行われたならば、Act59においてYesと判定してAct53へと戻る。
対して、プロセッサー41は、Act59~Act61の待受状態にあるときに購入予定商品を購入済状態にする操作が行われたならば、Act60においてYesと判定してAct62へと進む。
Act62においてプロセッサー41は、購入予定商品を購入済状態にするように指示するためのチェック要求を生成する。当該チェック要求は、買物対象リストIDと選択状態の購入予定商品の購入予定IDとRAM43又は補助記憶デバイス44に記憶されている会員IDとを含む。そして、プロセッサー41は、生成した当該チェック要求を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該チェック要求を支援サーバー10に送信する。送信された当該チェック要求は、支援サーバー10の通信インターフェース15によって受信される。
一方、図18のAct221において支援サーバー10のプロセッサー11は、通信インターフェース15によってチェック要求が受信されたか否かを判定する。プロセッサー11は、通信インターフェース15によってチェック要求が受信されていないならば、Act221においてNoと判定してAct222へと進む。
Act222においてプロセッサー11は、通信インターフェース15によってキャンセル要求が受信されたか否かを判定する。なお、キャンセル要求については、後述する。プロセッサー11は、通信インターフェース15によってキャンセル要求が受信されていないならば、Act222においてNoと判定してAct223へと進む。
Act223においてプロセッサー11は、通信インターフェース15によって買上要求が受信されたか否かを判定する。なお、買上要求については、後述する。プロセッサー11は、通信インターフェース15によって買上要求が受信されていないならば、Act223においてNoと判定してAct224へと進む。
Act224においてプロセッサー11は、通信インターフェース15によって決済要求が受信されたか否かを判定する。なお、決済要求については後述する。プロセッサー11は、通信インターフェース15によって決済要求が受信されていないならば、Act224においてNoと判定してAct221へと戻る。かくして、プロセッサー11は、チェック要求、キャンセル要求、買上要求又は決済要求が受信されるまでAct221~Act224を繰り返す。
プロセッサー11は、Act221~Act224の待受状態にあるときにチェック要求が受信されたならば、Act221においてYesと判定してAct225へと進む。 Act225においてプロセッサー11は、Act221で受信されたチェック要求に含まれる購入予定IDで特定される購入予定商品を購入済状態にするために、登録テーブルT3で当該購入予定IDに関連付けられた購入フラグの値をTrueにする。また、プロセッサー11は、登録テーブルT3で当該購入予定IDに関連付けられた購入日時に現在時刻を代入する。
また、ユーザー端末40のプロセッサー41は、図14のAct59~Act61の待受状態にあるときに購入予定商品を未購入状態にする操作が行われたならば、Act61においてYesと判定してAct63へと進む。
Act63においてプロセッサー41は、購入予定商品を未購入状態にするように指示するためのキャンセル要求を生成する。当該キャンセル要求は、買物対象リストIDと選択状態の購入予定商品の購入予定IDとRAM43又は補助記憶デバイス44に記憶されている会員IDとを含む。そして、プロセッサー41は、生成した当該キャンセル要求を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該キャンセル要求を支援サーバー10に送信する。送信された当該キャンセル要求は、支援サーバー10の通信インターフェース15によって受信される。
一方、プロセッサー11は、図18のAct221~Act224の待受状態にあるときにキャンセル要求が受信されたならば、Act222においてYesと判定してAct226へと進む。
Act226においてプロセッサー11は、Act222で受信されたキャンセル要求に含まれる購入予定IDで特定される購入予定商品を未購入状態にするために、登録テーブルT3で当該購入予定IDに関連付けられた購入フラグの値をFalseにする。
プロセッサー11は、Act225又はAct226の処理の後、Act227へと進む。
Act227においてプロセッサー11は、Act221又はAct222で受信されたチェック要求又はキャンセル要求に含まれる購入予定IDで特定される購入予定商品を購入済状態又は未購入状態にすることが完了したことを示す第2の完了通知を生成する。当該第2の完了通知は、Act221又はAct222で受信されたチェック要求又はキャンセル要求に含まれる買物対象リストIDで特定されるショッピングリストを含む。そして、プロセッサー11は、生成した当該第2の完了通知をユーザー端末40に送信するように通信インターフェース15に対して指示する。この指示を受けて通信インターフェース15は、当該第2の完了通知をユーザー端末40に送信する。送信された当該第2の完了通知は、ユーザー端末40の通信インターフェース45によって受信される。
プロセッサー11は、Act227の処理の後、Act224へと戻る。
一方、ユーザー端末40のプロセッサー41は、図14のAct62又はAct63の処理の後、Act64へと進む。
Act64においてプロセッサー41は、通信インターフェース45によって第2の完了通知が受信されるのを待ち受けている。プロセッサー41は、第2の完了通知が受信されたならば、Act64においてYesと判定してAct65へと進む。
Act65においてプロセッサー41は、Act64で受信された第2の完了通知に含まれるショッピングリストをRAM43又は補助記憶デバイス44に記憶させる。なお、プロセッサー41は、当該ショッピングリストを、既にRAM43又は補助記憶デバイス44に記憶されているショッピングリストに上書きして記憶させる。プロセッサー41は、Act65の処理の後、Act53へと戻る。なお、Act65からAct53に戻った場合にAct53の処理において表示されるリスト画面SC1は、Act65の処理によって上書きされたショッピングリストに基づく。
一方、プロセッサー41は、図16のAct104及びAct105の待受状態にあるときに商品に付されたバーコードがカメラ48によって読み込まれたならば、Act104においてYesと判定してAct106へと進む。
Act106においてプロセッサー41は、Act104で読み込まれたバーコードを買い上げ登録するように要求するための買上要求を生成する。当該買上要求は、買物対象リストID及び当該バーコードに記録された商品IDを含む。そして、プロセッサー41は、生成した当該買上要求を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該買上要求を支援サーバー10に送信する。送信された当該買上要求は、支援サーバー10の通信インターフェース15によって受信される。
一方、支援サーバー10のプロセッサー11は、図18のAct221~Act224の待受状態にあるときに買上要求が受信されたならば、Act223においてYesと判定して図19のAct241へと進む。なお、Act223又はAct230で受信された買上要求に含まれる商品IDを以下「登録対象ID」というものとする。
Act241においてプロセッサー11は、登録対象IDで特定される商品の情報を取得するために商品情報要求を生成する。当該商品情報要求は、当該商品IDを含む。そして、プロセッサー11は、生成した当該商品情報要求をPOSサーバー20に送信するように通信インターフェース15に対して指示する。この指示を受けて通信インターフェース15は、当該商品情報要求をPOSサーバー20に送信する。送信された当該商品情報要求は、POSサーバー20の通信インターフェース25によって受信される。
一方、POSサーバー20は、商品情報要求を受信したならば、商品DB241を参照して、当該商品情報要求に含まれる商品IDで特定される商品についての商品情報を取得する。そして、POSサーバー20は、当該商品情報を支援サーバー10に対して送信する。
一方、図19のAct242において支援サーバー10のプロセッサー11は、通信インターフェース25によって商品情報が受信されるのを待ち受けている。プロセッサー11は、商品情報が受信されたならば、Act242においてYesと判定してAct243へと進む。なお、Act242で受信された商品情報の商品名が「シナノゴールド」であるとして以下の説明を行う。「シナノゴールド」は、りんごの1種である。
Act243においてプロセッサー11は、取引ファイルが未作成である場合、取引ファイルを作成する。プロセッサー11は、当該取引ファイルを、買上要求に含まれる買物対象リストIDと関連付けて補助記憶デバイス14などに記憶させる。当該取引ファイルは、会員IDを含む会員情報、買上商品として登録した商品の一覧である商品リスト、及び買物対象リストIDなどを含む。そして、プロセッサー11は、Act242で受信された商品情報に基づいて、取引ファイルを更新する。すなわち、プロセッサー11は、登録対象ID及びAct242で受信された商品情報に基づき、取引ファイルに含まれる商品リストに、当該商品IDで特定される商品を登録する。
Act244においてプロセッサー11は、買物対象リストIDで特定されるショッピングリストに、登録対象IDで特定される商品と同一名称の購入予定商品が含まれるか否かを判定する。例えば、プロセッサー11は、登録対象IDで特定される商品が「シナノゴールド」である場合、リストDB142を参照して、買物対象リストIDで特定されるショッピングリストに名称が「シナノゴールド」である購入予定商品が含まれるか否かを判定する。プロセッサー11は、買物対象リストIDで特定されるショッピングリストに、登録対象IDで特定される商品と同一名称の購入予定商品が含まれるなら、Act244においてYesと判定してAct245へと進む。なお、当該ショッピングリストに「りんご」が含まれる場合でも、「シナノゴールド」と「りんご」は一致する名称ではないので、プロセッサー11は、Act244の処理においては「シナノゴールド」が「りんご」であることを特定しない。
Act245においてプロセッサー11は、登録対象IDで特定される商品と同一の購入予定商品を購入済状態にするために、当該購入予定商品に対応する購入予定IDに登録テーブルT3で関連付けられた購入フラグの値をTrueにする。
Act246においてプロセッサー11は、登録対象IDで特定される商品を取引ファイルに登録したことを示す第3の完了通知を生成する。当該第3の完了通知は、買上要求に含まれる買物対象リストIDで特定されるショッピングリストを含む。そして、プロセッサー11は、生成した当該第3の完了通知を買上要求の送信元に送信するよう通信インターフェース15に対して指示する。この指示を受けて通信インターフェース15は、当該第3の完了通知を例えばユーザー端末40に送信する。ユーザー端末40に送信された当該第3の完了通知は、通信インターフェース45によって受信される。
一方、図16のAct107においてユーザー端末40のプロセッサー41は、通信インターフェース45によって第2の完了通知又は第3の完了通知が受信されるのを待ち受けている。プロセッサー41は、第2の完了通知又は第3の完了通知が受信されたならば、Act107においてYesと判定してAct104へと戻る。
また、プロセッサー41は、図14のAct54~Act57の待受状態にあるときに第2の完了通知又は第3の完了通知が受信されたならば、Act56においてYesと判定してAct66へと進む。
Act66においてプロセッサー41は、Act56で受信された第3の完了通知に含まれるショッピングリストをRAM43又は補助記憶デバイス44に記憶させる。なお、プロセッサー41は、当該ショッピングリストを、既にRAM43又は補助記憶デバイス44に記憶されているショッピングリストに上書きして記憶させる。プロセッサー41は、Act66の処理の後、Act53へと戻る。
一方、図19のAct247において支援サーバー10のプロセッサー11は、買上要求の送信元がPOS端末50であるか否かを判定する。プロセッサー11は、買上要求の送信元がPOS端末50でないならば、Act247においてNoと判定して図18のAct224へと戻る。
なお、プロセッサー11は、買物対象リストIDで特定されるショッピングリストに、登録対象IDで特定される商品と同一名称の購入予定商品が含まれないならば、Act244においてNoと判定してAct248へと進む。
Act248においてプロセッサー11は、紐付辞書を用いて、登録対象IDで特定される商品名の別称が、買物対象リストIDで特定されるショッピングリストに含まれるいずれかの購入予定商品の名称と同一であるようなものを探索する。すなわち、プロセッサー11は、辞書テーブルT4から、商品名が登録対象IDで特定される商品名であり、且つ別称が当該ショッピングリストに含まれるいずれかの購入予定商品の名称と同一であるレコードを探索する。あるいは、プロセッサー11は、辞書テーブルT4から、商品IDが登録対象IDであり、且つ別称が当該ショッピングリストに含まれるいずれかの購入予定商品の名称と同一であるレコードを探索する。また、プロセッサー11は、当該レコードを見つけたならば、当該レコードの別称と同一の名称である購入予定商品の購入予定IDをRAM13などに記憶させる。
例えば、登録対象IDで特定される商品名が「シナノゴールド」であり、当該ショッピングリストに含まれる商品の商品名が「パン」、「牛肉」、「りんご」、…である場合、プロセッサー11は、以下のようにする。すなわち、プロセッサー11は、辞書テーブルT4から商品IDが登録対象IDであるレコード又は商品名が「シナノゴールド」であるレコードを探索し、条件に合うレコードを見つけたならば抜き出す。そして、プロセッサー11は、抜き出したレコードの中から、別称が、当該ショッピングリストに含まれる商品の商品名「パン」、「牛肉」、「りんご」、…のいずれかと一致するレコードを探索する。これにより、例えば、商品名が「シナノゴールド」で別称が「りんご」であるようなレコードが辞書テーブルT4にあったならば、プロセッサー11は、当該レコードを見つける。
Act249においてプロセッサー11は、Act248の処理によって条件を満たすレコードを見つけたか否かを判定する。プロセッサー11は、Act248の処理によって条件を満たすレコードを見つけたならば、Act249においてYesと判定してAct250へと進む。
Act250においてプロセッサー11は、Act248において記憶した購入予定IDで特定される購入予定商品を購入済状態にするために、Act248において記憶した購入予定IDに登録テーブルT3で関連付けられた購入フラグの値をTrueにする。プロセッサー11は、Act250の処理の後、Act246へと進む。
対して、プロセッサー11は、Act248の処理によって条件を満たすレコードを見つけられなかったならば、Act249においてNoと判定してAct251へと進む。例えば、辞書テーブルT4によって「シナノゴールド」と「りんご」とが関連付けられていなかった場合にプロセッサー11は、Act249においてNoと判定する。
Act251においてプロセッサー11は、登録対象IDと買物対象リストIDとを関連付ける。すなわち、プロセッサー11は、関連テーブルT5に、商品IDが登録対象IDで、リストIDが買物対象リストIDであるレコードを追加する。
Act252においてプロセッサー11は、登録対象IDで特定される商品の別称を特定するための探索を行う。まず、プロセッサー11は、関連テーブルT5から、商品IDが登録対象IDであるレコードを抜き出す。さらに、プロセッサー11は、登録テーブルT3を参照して、抜き出したレコードに含まれるショッピングリストIDで特定されるショッピングリスト(以下「抜き出し対象リスト」という。)に関連付けられた名称を抜き出す。さらに、プロセッサー11は、抜き出した名称ごとに、抜き出した数をカウントする。例えば、抜き出し対象リストのうち、名称が「りんご」である購入予定商品を含むものがn個あったならば、りんごのカウントはnである。そして、プロセッサー11は、既に辞書テーブルT4によって登録対象IDに別称として関連付けられている名称を除いた中から、カウントが最も多い名称を、登録対象IDで特定される商品の別称候補として決定する。別称候補は、第1の名称の一例である。また、登録対象IDで特定される商品の商品名は、第2の名称の一例である。
Act253においてプロセッサー11は、登録対象IDで特定される商品の別称である可能性が高い別称候補(以下「対象候補」という。)が見つかったか否かを判定する。すなわち、プロセッサー11は、Act252の処理によって、別称候補が見つかっていない場合、対象候補が見つからなかったと判定する。そして、プロセッサー11は、Act252の処理によって別称候補が見つかった場合、条件を満たす場合に対象候補が見つかったと判定する。対して、プロセッサー11は、当該条件を満たさない場合に対象候補が見つからなかったと判定する。当該条件の例として、以下に(A)~(C)の3種類を示す。なお、対象候補は、第1の名称の一例である。
(A)条件A
カウントnの値が予め定められた閾値以上である。当該閾値は、例えば、支援システム1の設計者又は管理者などによって定められる。
(B)条件B
(抜き出し対象リストの数)÷(リストDB142に含まれるショッピングリストの数)が予め定められた閾値以上である。当該閾値は、例えば、支援システム1の設計者又は管理者などによって定められる。
(C)条件C
(カウントnの値)÷(抜き出し対象リストの数)が予め定められた閾値以上である。当該閾値は、例えば、支援システム1の設計者又は管理者などによって定められる。
プロセッサー11は、対象候補が見つかったならば、Act253においてYesと判定してAct254へと進む。
Act254においてプロセッサー11は、対象候補が登録対象IDで特定される商品の別称であることを買物支援サービスのユーザーに確認させるために確認要求を生成する。当該確認要求は、対象候補と登録対象IDで特定される商品名とを含む。例えば、当該確認要求は、当該対象候補として「りんご」、当該商品名として「シナノゴールド」を含む。そして、プロセッサー11は、生成した当該確認要求を買上要求の送信元に送信するように通信インターフェース15に対して指示する。この指示を受けて通信インターフェース15は、当該確認要求を例えばユーザー端末40に送信する。送信された当該確認要求は、ユーザー端末40の通信インターフェース45によって受信される。
一方、ユーザー端末40のプロセッサー41は、図14のAct54~Act57の待受状態にあるときに確認要求などの要求が受信されたならば、Act55においてYesと判定して図15のAct81へと進む。
Act81においてプロセッサー41は、Act54で受信された要求が確認要求であるか否かを判定する。プロセッサー41は、Act54で受信された要求が確認要求であるならば、Act81においてYesと判定してAct82へと進む。
Act82においてプロセッサー41は、第1の確認画面に対応した画像を生成する。そして、プロセッサー41は、生成したこの画像を表示するように表示デバイス47に対して指示する。この指示を受けて表示デバイス47は、第1の確認画面を表示する。
第1の確認画面は、確認要求に含まれる対象候補が、確認要求に含まれる商品名の別称であることが正しいか否かをユーザー端末40の操作者に問うための画面である。第1の確認画面は、例えば、文字列S31、肯定ボタンB31及び否定ボタンB32を含む。文字列S31は、例えば、「「シナノゴールド」は「りんご」ですか?」のような文字列である。肯定ボタンB31は、ユーザー端末40の操作者が、当該対象候補が当該商品名の別称であると判断した場合に操作するためのボタンである。否定ボタンB32は、ユーザー端末40の操作者が、当該対象候補が当該商品名の別称でないと判断した場合に操作するためのボタンである。
Act83においてプロセッサー41は、第1の確認画面に表示された肯定ボタンB31又は否定ボタンB32が操作されるのを待ち受ける。プロセッサー41は、肯定ボタンB31又は否定ボタンB32が操作されたならば、Act83においてYesと判定してAct84へと進む。
Act84においてプロセッサー41は、肯定ボタンB31及び否定ボタンB32のいずれのボタンが操作されたかを示す確認応答を生成する。そして、プロセッサー41は、生成した当該確認応答を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該確認応答を支援サーバー10に送信する。送信された当該確認応答は、支援サーバー10の通信インターフェース15によって受信される。プロセッサー41は、Act84の処理の後、図14のAct54へと戻る。
一方、図19のAct255において支援サーバー10のプロセッサー11は、通信インターフェース15によって選択応答が受信されるのを待ち受けている。プロセッサー11は、選択応答が受信されたならば、Act255においてYesと判定してAct256へと進む。
Act256においてプロセッサー11は、Act255で受信された確認応答が、肯定ボタンB31が操作されたことを示すか否かを判定する。プロセッサー11は、Act255で受信された確認応答が、肯定ボタンB31が操作されたことを示すならば、Act256においてYesと判定してAct257へと進む。
Act257においてプロセッサー11は、紐付辞書を更新する。すなわち、プロセッサー11は、辞書テーブルT4にレコードを追加する。当該レコードは、商品IDが登録対象ID、商品名が登録対象IDで特定される商品名、別称が対象候補である。例えば、当該レコードは、商品名が「シナノゴールド」、別称が「りんご」である。これにより、「シナノゴールド」の別称が「りんご」であることが紐付辞書に記録される。
一方、プロセッサー11は、対象候補が見つからなかったならば、Act253においてNoと判定してAct258へと進む。また、プロセッサー11は、Act255で受信された確認応答が、否定ボタンB32が操作されたことを示すならば、Act256においてNoと判定してAct258へと進む。
Act258においてプロセッサー11は、登録対象IDで特定される商品の別称が、買物対象リストIDで特定されるショッピングリストに含まれるどの購入予定商品を示すかを買物支援サービスのユーザーに選択させるために選択要求を生成する。当該選択要求は、登録対象IDで特定される商品名を含む。例えば、当該確認要求は、当該商品名として「シナノゴールド」を含む。そして、プロセッサー11は、生成した当該選択要求を買上要求の送信元に送信するように通信インターフェース15に対して指示する。この指示を受けて通信インターフェース15は、当該選択要求を例えばユーザー端末40に送信する。送信された当該選択要求は、ユーザー端末40の通信インターフェース45によって受信される。
一方、ユーザー端末40のプロセッサー41は、図14のAct54~Act57の待受状態にあるときに選択要求などの要求が受信されたならば、Act55においてYesと判定して図15のAct81へと進む。
そして、プロセッサー41は、Act54で受信された要求が確認要求でないならば、Act81においてNoと判定してAct85へと進む。
Act85においてプロセッサー41は、Act54で受信された要求が選択要求であるか否かを判定する。プロセッサー41は、Act54で受信された要求が選択要求でないならば、Act85においてNoと判定して受信された要求に応じた処理を行う。対して、プロセッサー41は、Act54で受信された要求が選択要求であるならば、Act85においてYesと判定してAct86へと進む。
Act86においてプロセッサー41は、第1の選択画面に対応した画像を生成する。そして、プロセッサー41は、生成したこの画像を表示するように表示デバイス47に対して指示する。この指示を受けて表示デバイス47は、第1の選択画面を表示する。
第1の選択画面は、選択要求に含まれる商品名が、買物対象リストIDで特定されるショッピングリストに含まれるどの購入予定商品を示すかをユーザー端末40の操作者に問うための画面である。第1の選択画面は、例えば、文字列S41、複数の選択ボタンB41、及び否定ボタンB42を含む。文字列S41は、例えば、「「シナノゴールド」は、以下に表示されたどの購入予定商品ですか?」のような文字列である。複数の選択ボタンB41は、それぞれが、RAM43又は補助記憶デバイス44に記憶されたショッピングリストに含まれる購入予定商品を示す。したがって、例えば、リスト画面SC1の領域A1と同様に、一例として、パン、牛肉、りんご、豚肉、タマネギ、ぶどうなどにそれぞれ対応するボタンB41が複数表示される。否定ボタンB42は、選択要求に含まれる商品名が、当該ショッピングリストに含まれるいずれの購入予定商品でもない場合などに、ユーザー端末40の操作者が操作するためのボタンである。
Act87においてプロセッサー41は、複数の選択ボタンB41及び否定ボタンB42のいずれかが操作されるのを待ち受ける。プロセッサー41は、複数の選択ボタンB41及び否定ボタンB42のいずれかが操作されたならば、Act87においてYesと判定してAct88へと進む。
Act88においてプロセッサー41は、複数の選択ボタンB41及び否定ボタンB42のいずれのボタンが操作されたかを示す選択応答を生成する。当該選択応答は、選択ボタンB41が操作されたことを示す場合、当該選択ボタンB41に対応する名称を含む。例えば、当該名称は「りんご」である。そして、プロセッサー41は、生成した当該選択応答を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該選択応答を支援サーバー10に送信する。送信された当該選択応答は、支援サーバー10の通信インターフェース15によって受信される。プロセッサー41は、Act88の処理の後、図14のAct54へと戻る。
一方、図19のAct259において支援サーバー10のプロセッサー11は、通信インターフェース45によって選択応答が受信されるのを待ち受けている。プロセッサー11は、選択応答が受信されたならば、Act259においてYesと判定してAct260へと進む。
Act260においてプロセッサー11は、Act255で受信された確認応答が、いずれかの選択ボタンB41が操作されたことを示すか否かを判定する。プロセッサー11は、Act255で受信された確認応答が、否定ボタンB42が操作されたことを示すならば、Act260においてNoと判定してAct246へと進む。対して、プロセッサー11は、Act255で受信された確認応答が、いずれかの選択ボタンB41が操作されたことを示すならば、Act260においてYesと判定してAct261へと進む。
Act261においてプロセッサー11は、紐付辞書を更新する。すなわち、プロセッサー11は、辞書テーブルT4にレコードを追加する。当該レコードは、商品IDが登録対象ID、商品名が登録対象IDで特定される商品名、別称が選択応答に含まれる名称である。例えば、当該レコードは、商品名が「シナノゴールド」、別称が「りんご」である。これにより、「シナノゴールド」の別称が「りんご」であることが紐付辞書に記録される。
プロセッサー11は、Act257又はAct261の処理の後、Act262へと進む。
Act262においてプロセッサー11は、登録対象IDで特定される商品が示す購入予定商品を購入済状態にするために、当該購入予定商品に対応する購入予定IDに登録テーブルT3で関連付けられた購入フラグの値をTrueにする。プロセッサー11は、Act262の処理の後、Act246へと進む。
なお、ユーザー端末40のプロセッサー41は、図14のAct54~Act57の待受状態にあるときに買い物を終了して決済を行うための操作が行われたならば、Act57においてYesと判定してAct67へと進む。
Act67においてプロセッサー41は、RAM43又は補助記憶デバイス44に記憶されたショッピングリストに未購入状態の購入予定商品があるか否かを判定する。プロセッサー41は、RAM43又は補助記憶デバイス44に記憶されたショッピングリストに未購入状態の購入予定商品があるならば、Act67においてYesと判定してAct68へと進む。
Act68においてプロセッサー41は、未購入の購入予定商品があることをユーザー端末40の操作者に報知するための動作を行うよう制御する。当該動作は、例えば、画面表示又は音声による報知である。
対して、プロセッサー41は、ショッピングリストに未購入状態の購入予定商品がないならば、Act67においてNoと判定してAct69へと進む。また、プロセッサー41は、Act68の処理の後もAct69へと進む。
Act69においてプロセッサー41は、決済を行うことを指示するために決済コマンドをセルフスキャンアプリに入力する。
一方、プロセッサー41は、図16のAct104及びAct105の待受状態にあるときに決済コマンドが入力されたならば、Act105においてYesと判定してAct108へと進む。
Act108においてプロセッサー41は、決済を行うことを示す決済要求を生成する。当該決済要求は、RAM43又は補助記憶デバイス44に記憶されている買物対象リストIDを含む。そして、プロセッサー41は、生成した当該決済要求を支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該決済要求を支援サーバー10に送信する。送信された当該決済要求は、支援サーバー10の通信インターフェース15によって受信される。
一方、支援サーバー10のプロセッサー11は、図18のAct221~Act224の待受状態にあるときに決済要求が受信されたならば、Act224においてYesと判定してAct228へと進む。
一方、ユーザー端末40の操作者は、会計を行うPOS端末50に付されたバーコードをカメラ48によって読み取らせる。
図16のAct109においてユーザー端末40のプロセッサー41は、カメラ48によって、POSIDが記憶されたバーコード読み込まれるのを待ち受ける。プロセッサー41は、POSIDが記憶されたバーコード読み込まれたならば、Act109においてYesと判定してAct110へと進む。
Act110においてプロセッサー41は、Act109で読み込まれたバーコードに記憶されたPOSIDを支援サーバー10に送信するように通信インターフェース45に対して指示する。この指示を受けて通信インターフェース45は、当該POSIDを支援サーバー10に送信する。送信された当該POSIDは、支援サーバー10の通信インターフェース15によって受信される。
一方、図18のAct228において支援サーバー10のプロセッサー11は、通信インターフェース15によってPOSIDが受信されるのを待ち受けている。プロセッサー11は、POSIDが受信されたならば、Act228においてYesと判定してAct229へと進む。
Act229においてプロセッサー11は、Act224で受信された決済要求に含まれる買物対象リストIDで特定されるショッピングリスト及び当該対象リストに関連付けられた取引ファイルを、POSIDで特定されるPOS端末50に送信する。
一方、図20のAct301においてPOS端末50のプロセッサー501は、通信インターフェース15によってショッピングリスト及び取引ファイルが受信されたか否かを判定する。プロセッサー501は、ショッピングリスト及び取引ファイルが受信されていないならば、Act301においてNoと判定してAct302へと進む。
Act302においてプロセッサー501は、POS端末50を買物支援サービスへログインさせるための操作が行われたか否かを判定する。プロセッサー501は、買物支援サービスへログインさせるための操作が行われていないならば、Act302においてNoと判定してAct301へと戻る。かくして、プロセッサー501は、ショッピングリスト及び取引ファイルが受信されるか、買物支援サービスへログインさせるための操作が行われるまでAct301及びAct302を繰り返す。
プロセッサー501は、Act301及びAct302の待受状態にあるときにショッピングリスト及び取引ファイルが受信されたならば、Act301においてYesと判定してAct303へと進む。
Act303においてプロセッサー501は、Act301で受信されたショッピングリスト及び取引ファイルをRAM503又は補助記憶デバイス504などに記憶させる。 Act304においてプロセッサー501は、Act301で受信された取引ファイルに含まれる商品リストを表示デバイス507に表示させる。
Act305においてプロセッサー501は、Act301で受信されたショッピングリストを客側タッチパネル508に表示させる。
買物客は、例えば、客側タッチパネル508を操作して、ログインに必要な情報を入力することで、POS端末50を用いて買物支援サービスにログインすることができる。この操作によって、POS端末50は、ログインに用いられた会員IDなどを補助記憶デバイス504RAM503などに記憶する。
プロセッサー501は、Act301及びAct302の待受状態にあるときにPOS端末50を買物支援サービスへログインさせるための操作が行われたならば、Act302においてYesと判定してAct306へと進む。
一方、支援サーバー10のプロセッサー11は、図17のAct201~Act203の待受状態にあるときにPOS端末50からログインが行われたならば、Act203においてYesと判定して図18のAct231へと進む。
一方、図20のAct306においてプロセッサー501は、ショッピングリストを支援サーバー10から取得する。ここで取得するショッピングリストは、例えば、補助記憶デバイス504RAM503などにされた会員IDに関連付けられたショッピングリストのうち、作成日時が最も新しいものである。あるいは、ここで取得するショッピングリストは、当該会員IDで特定される会員によって予め指定されたショッピングリストである。
Act307においてプロセッサー501は、商品の登録を完了して決済を開始するための操作が行われたか否かを判定する。すなわちプロセッサー501は、表示デバイス507に表示された小計ボタンをタッチするなどの予め定められた操作が行われたか否かを判定する。プロセッサー501は、登録完了を指示する操作が行われないならば、Act307においてNoと判定してAct308へと進む。
Act308においてプロセッサー501は、商品IDが入力されたか否かを判定する。なお、商品IDは、一例として以下に示すようにプロセッサー501に入力される。POS端末50の操作者は、商品に付されたバーコードをスキャナー509に読み込ませる。これにより、当該バーコードに記録された商品IDがプロセッサー501に入力される。プロセッサー501は、商品IDが入力されないならば、Act308においてNoと判定してAct307へと戻る。かくして、プロセッサー501は、決済を開始するための操作が行われるか、商品IDが入力されるまでAct307及びAct308を繰り返す。
一方、図16のAct111においてユーザー端末40のプロセッサー41は、終了コマンドをリストアプリに入力する。プロセッサー41は、Act111の処理の後、セルフスキャンアプリを終了する。
一方、図15のAct70においてプロセッサー41は、リストアプリに終了コマンドが入力されるのを待ち受ける。プロセッサー41は、終了コマンドが入力されたならば、Act70においてYesと判定して図10のAct3へと戻る。
一方、POS端末50のプロセッサー501は、Act307及びAct308の待受状態にあるときに商品IDが入力されたならば、Act308においてYesと判定してAct309へと進む。
Act309においてプロセッサー501は、Act308で入力された商品IDで特定される商品を買い上げ登録するように要求するための買上要求を生成する。当該買上要求は、買物対象リストID及びAct308で入力された商品IDを含む。そして、プロセッサー501は、生成した当該買上要求を支援サーバー10に送信するように通信インターフェース505に対して指示する。この指示を受けて通信インターフェース505は、当該買上要求を支援サーバー10に送信する。送信された当該商品IDは、支援サーバー10の通信インターフェース15によって受信される。
一方、図18のAct230において支援サーバー10のプロセッサー11は、通信インターフェース15によって買上要求が受信されたか否かを判定する。プロセッサー11は、買上要求が受信されていないならば、Act230においてNoと判定してAct231へと進む。
Act231においてプロセッサー11は、通信インターフェース15によって終了通知が受信されたか否かを判定する。プロセッサー11は、終了通知が受信されていないならば、Act231においてNoと判定してAct230へと戻る。かくして、プロセッサー11は、通信インターフェース15によって買上要求又は終了通知が受信されるまでAct230及びAct231を繰り返す。
プロセッサー11は、Act230及びAct231の待受状態にあるときに通信インターフェース15によって買上要求が受信されたならば、Act230においてYesと判定して図19のAct241へと進む。
なお、図18のAct230から図19のAct241へと進んだ場合、Act246において通信インターフェース15は、第3の完了通知をPOS端末50に送信する。送信された当該第3の完了通知は、POS端末50の通信インターフェース55によって受信される。同様に、Act254において通信インターフェース15は、確認要求をPOS端末50に送信する。送信された当該確認要求は、POS端末50の通信インターフェース55によって受信される。また同様に、Act258において通信インターフェース15は、選択要求をPOS端末50に送信する。送信された当該選択要求は、POS端末50の通信インターフェース55によって受信される。
また、プロセッサー11は、買上要求の送信元がPOS端末50であるならば、Act247においてYesと判定して図18のAct231へと戻る。
一方、図20のAct310においてPOS端末50のプロセッサー501は、通信インターフェース15によって第3の完了通知が受信されるのを待ち受けている。プロセッサー501は、第3の完了通知が受信されないならば、Act310においてNoと判定してAct311へと進む。
Act311においてプロセッサー501は、通信インターフェース45によって確認要求又は選択要求などの要求が受信されたか否かを判定する。プロセッサー501は、通確認要求又は選択要求などの要求が受信されていないならば、Act311においてNoと判定してAct310へと戻る。かくして、プロセッサー501は、第3の完了通知又は要求が受信されるまでAct310及びAct311を繰り返す。プロセッサー501は、Act310及びAct311の待受状態において第3の完了通知が受信されたならば、Act310においてYesと判定してAct312へと進む。
Act312においてプロセッサー501は、Act308で入力された商品IDで特定される商品を補助記憶デバイス504などに記憶された商品リストに追加する。また、当該商品リストに基づき、プロセッサー501は、表示デバイス507に表示された商品リストを更新する。
以上のように、セルフスキャンアプリによってバーコードが読み込まれていない商品についても、POS端末50で当該バーコードを読み込むことで取引リストへの登録が可能である。
Act313においてプロセッサー501は、Act310で受信された第2の完了通知に含まれるショッピングリストをRAM503又は補助記憶デバイス504などに記憶させる。なお、プロセッサー501は、当該ショッピングリストを、既にRAM503又は補助記憶デバイス504に記憶されているショッピングリストに上書きして記憶させる。また、当該ショッピングリストに基づき、プロセッサー501は、客側タッチパネル508に表示されたショッピングリストを更新する。なお、プロセッサー501は、Act310で第3の完了通知が受信された場合には、Act313の処理をスキップする。プロセッサー501は、Act313の処理の後、Act307へと戻る。
また、プロセッサー501は、Act310及びAct311の待受状態において確認要求又は選択要求などの要求が受信されたならば、Act310においてYesと判定して図21のAct321へと進む。
Act321においてプロセッサー501は、Act311で受信された要求が確認要求であるか否かを判定する。プロセッサー501は、Act311で受信された要求が確認要求であるならば、Act321においてYesと判定してAct322へと進む。
Act322においてプロセッサー501は、第2の確認画面に対応した画像を生成する。そして、プロセッサー501は、生成したこの画像を表示するように客側タッチパネル508に対して指示する。この指示を受けて客側タッチパネル508は、第2の確認画面を表示する。
第2の確認画面は、確認要求に含まれる対象候補が、確認要求に含まれる商品名の別称であることが正しいか否かをPOS端末50の操作者に問うための画面である。第2の確認画面の表示内容は、第1の確認画面と同様である。
Act323においてプロセッサー501は、第2の確認画面に表示された肯定ボタンB31又は否定ボタンB32が操作されるのを待ち受ける。プロセッサー501は、肯定ボタンB31又は否定ボタンB32が操作されたならば、Act323においてYesと判定してAct324へと進む。
Act324においてプロセッサー501は、確認応答を生成する。そして、プロセッサー501は、生成した当該確認応答を支援サーバー10に送信するように通信インターフェース505に対して指示する。この指示を受けて通信インターフェース505は、当該確認応答を支援サーバー10に送信する。送信された当該確認応答は、支援サーバー10の通信インターフェース15によって受信される。プロセッサー501は、Act324の処理の後、図20のAct310へと戻る。
また、プロセッサー501は、図21のAct311で受信された要求が確認要求でないならば、Act321においてNoと判定してAct325へと進む。
Act325においてプロセッサー501は、Act311で受信された選択が確認要求であるか否かを判定する。プロセッサー501は、Act311で受信された選択が確認要求でないならば、Act325においてNoと判定して受信された要求に応じた処理を行う。対して、プロセッサー501は、Act311で受信された選択が確認要求であるならば、Act325においてYesと判定してAct326へと進む。
Act326においてプロセッサー501は、第2の選択画面に対応した画像を生成する。そして、プロセッサー501は、生成したこの画像を表示するように客側タッチパネル508に対して指示する。この指示を受けて客側タッチパネル508は、第2の選択画面を表示する。
第2の選択画面は、買物対象リストIDで特定されるショッピングリストに含まれるどの購入予定商品を示すかをPOS端末50の操作者に問うための画面である。第2の選択画面の表示内容は、第1の選択画面と同様である。
Act327においてプロセッサー501は、複数の選択ボタンB41及び否定ボタンB42のいずれかが操作されるのを待ち受ける。プロセッサー501は、複数の選択ボタンB41及び否定ボタンB42のいずれかが操作されたならば、Act327においてYesと判定してAct328へと進む。
Act328においてプロセッサー501は、選択応答を生成する。そして、プロセッサー501は、生成した当該選択応答を支援サーバー10に送信するように通信インターフェース505に対して指示する。この指示を受けて通信インターフェース505は、当該選択応答を支援サーバー10に送信する。送信された当該選択応答は、支援サーバー10の通信インターフェース15によって受信される。プロセッサー501は、Act328の処理の後、図20のAct310へと戻る。
プロセッサー501は、Act307及びAct308の待受状態にあるときに商品の登録を完了するための操作が行われたならば、Act307においてYesと判定してAct314へと進む。
Act314においてプロセッサー501は、RAM503又は補助記憶デバイス504に記憶されたショッピングリストに未購入状態の購入予定商品があるか否かを判定する。プロセッサー501は、RAM503又は補助記憶デバイス504に記憶されたショッピングリストに未購入状態の購入予定商品があるならば、Act314においてYesと判定してAct315へと進む。
Act315においてプロセッサー501は、未購入の購入予定商品があることを買物客に報知するための動作を行うよう制御する。当該動作は、例えば、画面表示又は音声による報知である。
対して、プロセッサー501は、RAM503又は補助記憶デバイス504に記憶されたショッピングリストに未購入状態の購入予定商品がないならば、Act314においてNoと判定してAct316へと進む。また、プロセッサー501は、Act315の処理の後もAct316へと進む。
Act316においてプロセッサー501は、商品リストに登録された商品IDに基づいて決済処理を行う。なお、プロセッサー501は、当該商品IDで示される商品の金額及び商品名などは、商品DB241などから取得する。決済処理については、周知の処理であるため詳細な説明は省略する。
Act317においてプロセッサー501は、Act316の決済内容に基づいてレシートを発行するようプリンターを制御する。
Act318においてプロセッサー501は、Act316の決済内容に基づく商品販売履歴をPOSサーバー20に送信するように通信インターフェース505に対して指示する。この指示を受けて通信インターフェース505は、当該商品販売履歴をPOSサーバー20に送信する。当該商品販売履歴は、RAM503又は補助記憶デバイス504などに記憶されたショッピングリストのリストIDも含む。送信された当該商品販売履歴は、POSサーバー20の通信インターフェース25によって受信される。POSサーバー20は、当該商品販売履歴に基づき、履歴テーブルT12に、Act316で決済された商品それぞれに対応するレコードを追加することで、商品販売履歴を履歴DB242に記憶させる。また、POSサーバー20は、受信した商品販売履歴に対応する取引IDと商品販売履歴に含まれるリストIDとを関連付ける情報を履歴DB242に記憶させる。
Act319においてプロセッサー501は、決済を終了したことを示す終了通知を支援サーバー10に送信するように通信インターフェース505に対して指示する。この指示を受けて通信インターフェース505は、当該終了通知を支援サーバー10に送信する。送信された当該終了通知は、支援サーバー10の通信インターフェース15によって受信される。プロセッサー501は、Act319の処理の後、Act301へと戻る。
一方、支援サーバー10のプロセッサー11は、図18のAct230及びAct231の待受状態にあるときに通信インターフェース15によって終了通知が受信されたならば、Act231においてYesと判定して図17のAct201へと戻る。
実施形態の買物支援システム1によれば、支援サーバー10は、登録対象IDが関連付けられたショッピングリストのうち、例えば最も多くのショッピングリストに含まれる購入予定商品の名称を、当該登録対象IDで特定される商品の別称として決定する。したがって、支援サーバー10は、紐付辞書を自動的に更新することができる。このため、紐付辞書を手入力によって作成又は更新する手間が不要である。
実施形態の買物支援システム1によれば、支援サーバー10は、確認画面を表示させることで、商品名の別称が正しいか否かを操作者による操作に基づいて確認する。したがって、支援サーバー10は、間違った別称が商品名に関連付けられることを防ぐことができる。
実施形態の買物支援システム1によれば、登録対象IDで特定される商品の商品名又は別称が、ショッピングリストに含まれる購入予定商品と一致しなかった場合、関連テーブルT5を用いて、当該登録対象IDと当該ショッピングリストのリストIDとを関連付ける。このようにしておくことで、登録対象IDで特定される商品の別称を特定するための探索を高速に行うことができる。このように関連付けを行っていなかった場合、プロセッサー11は、例えば、リストDB142及び履歴DB242を参照する必要がある。
実施形態の買物支援システム1によれば、支援サーバー10は、登録対象IDで特定される商品の商品名が、ショッピングリストに含まれるどの購入予定商品であるかを操作者が選択する。そして、支援サーバー10は、当該購入予定商品の名称を、登録対象IDで特定される商品の別称として決定する。このため、紐付辞書を、買物支援システム1の運営者などが手入力によって作成又は更新する必要がない。このため、買物支援システム1の運営者などの手間が軽減される。
実施形態の買物支援システム1は、POS端末50を用いて買物支援サービスにログインすることができる。したがって、買物支援サービスのユーザーは、携帯可能なユーザー端末40を所持していない場合でも買物支援サービスを利用することができる。
また、実施形態の支援システム1によれば、支援サーバー10は、セルフスキャンアプリを用いて商品IDが読み込まれた商品の商品名又は別称と一致する名称の購入予定商品がショッピングリストに含まれる場合、当該購入予定商品を購入済状態にする。したがって、ユーザー端末40の操作者は、商品に付されたバーコードなどを一度読み込ませることで、リストサービスに係るショッピングリストとセルフスキャンサービスに係る取引ファイルの両方を更新させることができる。
上記の実施形態は以下のような変形も可能である。
上記の実施形態では、紐付辞書は、商品名と別称とを関連付ける。しかしながら、紐付辞書は、商品名と別称とに限らず、2つの名称を互いに関連付けるものなどであっても良い。
支援サーバー10は、関連テーブルT5に代えてリストDB142及び履歴DB242を参照することで、登録対象IDで特定される商品の別称を特定するための探索を行っても良い。リストDB142及び履歴DB242は、ショッピングリストに基づいて購入された購入商品を当該ショッピングリストに関連付ける。
上記の実施形態では、紐付辞書の更新を、Act251~Act257に示す方法と、Act258~Act261に示す方法の2種類の方法を用いる。しかしながら、支援システム1は、当該2種類の方法のいずれか一方の方法を用いる態様であっても良い。
ユーザー端末40は、陳列場所から取得してカゴに入れた購入予定商品の名称を文字入力、手書き入力又は音声入力などによって入力することが可能であっても良い。この場合、支援サーバー10のプロセッサー11は、紐付辞書を参照して、入力された名称の別称と同一名称の購入予定商品を購入済状態にすることができる。
上記の実施形態では、紐付辞書の更新が、商品の買い上げ登録が行われたことに応じて行われる。しかしながら、プロセッサー11は、例えば、夜間などの計算資源が余っている時間帯に紐付辞書の更新を行っても良い。この場合、プロセッサー11は、例えば、登録対象IDに代えて商品DB241に含まれる商品IDのそれぞれを用いて、Act252~Act257と同様の処理を行う。ただし、この場合、プロセッサー11は、Act254~Act256の処理についてはスキップする。また、この場合の閾値は、上記の実施形態とは異なる値であっても良い。
ユーザー端末40は、店舗内に設置されたデジタルサイネージ又は分散型キオスク端末などであっても良い。当該デジタルサイネージ又は分散型キオスク端末は、例えば店舗内に複数設置される。買物客は、例えば、陳列棚などから商品を取った後、近くにあるいずれかのデジタルサイネージ又は分散型キオスク端末を用いてリストサービス及びセルフスキャンサービスにログインする。そして、当該買物客は、当該商品に該当する購入予定商品を購入済状態にするための操作を行う。以上の場合、買物支援サービスのユーザーは、携帯可能なユーザー端末40を所持していない場合でも買物支援サービスを利用することができる。
ユーザー端末40は、買い物カゴなどに取り付けられた端末であっても良い。買物客は、当該端末を用いてリストサービス及びセルフスキャンサービスにログインする。そして、当該買物客は、例えば、陳列棚などから商品を取ってカゴに入れる。この際、当該買物客は、当該商品に該当する購入予定商品を購入済状態にするための操作を行う。以上の場合、買物客は、携帯可能なユーザー端末40を所持していない場合でも買物支援サービスを利用することができる。
なお、買物客は、ショッピングリストの作成を予めPCなどで行った後、上記のデジタルサイネージ、分散型キオスク端末又は買い物カゴなどに取り付けられた端末で当該ショッピングリストを利用することができる。
ユーザー端末40又はPOS端末50は、IC(integrated circuit)カードを読み取るためのカードリーダーなどを備えていても良い。この場合、ICカードをユーザー端末40に読み込ませることで、リストサービス及びセルフスキャンサービスにログインすることが可能であっても良い。この場合、ユーザー端末40又はPOS端末50の操作者は、ログインIDの入力などが不要である。店舗の会員カードをログインに用いるICカードとしても用いることができるため、上記のデジタルサイネージ、分散型キオスク端末又は買い物カゴなどに取り付けられた端末で特に好適である。
ユーザー端末40又はPOS端末50は、生体認証を行うためのデバイスを備えていても良い。この場合、生体認証を行うことで、リストサービス及びセルフスキャンサービスにログインすることが可能であっても良い。この場合、ユーザー端末40又はPOS端末50の操作者は、ログインIDの入力などが不要である。さらに、ユーザー端末40又はPOS端末50の操作者は、ログインに用いるためのICカードの携帯なども不要である。このため、上記のデジタルサイネージ、分散型キオスク端末又は買い物カゴなどに取り付けられた端末で特に好適である。
ユーザー端末40は、カメラ48に代えてバーコードを読み込むためのスキャナーなどを備えていても良い。
支援システム1は、バーコードに代えてICタグが用いられても良い。この場合、ユーザー端末40及びPOS端末50は、バーコードに代えてICタグを読み込む。なお、ユーザー端末40及びPOS端末50は、NFC(near field radio communication)リーダーなどを用いてICタグを読み込む。
上記の実施形態で支援サーバー10が行った処理の一部をユーザー端末40が行っても良い。また、上記の実施形態でユーザー端末40が行った処理の一部を支援サーバー10が行っても良い。
上記の実施形態で支援サーバー10が行った処理の一部をPOS端末50が行っても良い。また、上記の実施形態でPOS端末50が行った処理の一部を支援サーバー10が行っても良い。
したがって、支援サーバー10、ユーザー端末40又はPOS端末50は、買物支援装置の一例である。あるいは、支援サーバー10とユーザー端末40とが協働して、買物支援装置として動作する。またあるいは、支援サーバー10とPOS端末50とが協働して、買物支援装置として動作する。また、支援システム1は、買物支援装置の一例である。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。