(57)【要約】【課題】ユーザに安価な食材を選択して、その食材を全て献立スケジュールに従って消費できるように、食材の購入を支援する。【解決手段】情報処理装置は、日ごとの献立スケジュールを作成する献立スケジュール作成し、献立に必要な食材の日ごとのリストである購入食材リストを作成する。そして、購入食材リストに記録された食材に関する商品の購入スケジュールを作成し、その購入スケジュールに従って、販売事業者サーバは、その食材に関する商品の購入をおこなう。このとき、販売情報サーバより内容量と価格、在庫の情報からなる販売情報を取得し、購入食材リストを参照して、食材ごとに最も単価が安く、献立スケジュールに従ってその食材の消費期限内に余りなく食材を消費できるように、食材に関する商品と、その商品を購入する個数と、その商品を購入する日を指定する購入スケジュールを作成する。【選択図】  図１
2013122706.tif 000002
【特許請求の範囲】
【請求項１】
食材に関する商品のオンラインショッピングを提供する販売事業者サーバにネットワーク経由で接続し、前記商品の購入の注文をおこなう情報処理装置において、
前記販売事業者サーバに接続し、通信をおこなう通信処理手段と、
操作画面を表示する表示手段と、
前記表示手段の表示内容の切り換えに関するユーザ指示を入力する指示入力手段と、
前記指示入力手段からの入力により前記表示手段の表示を切り換えるＵＩ制御手段と、
前記販売事業者サーバから食材に関する商品の内容量と価格、在庫の情報からなる販売情報を取得する販売情報取得手段と、
食材ごとの消費期限を管理する消費期限管理手段と、
ユーザの日ごとの献立スケジュールを作成する献立スケジュール作成手段と、
ユーザが指定した献立に必要な食材の日ごとのリストである購入食材リストを作成する購入食材リスト作成手段と、
前記購入食材リストに記録された食材に関する商品の購入スケジュールを作成する購入スケジュール作成手段と、
前記購入スケジュール作成手段が指定した日に食材の購入の注文をおこなう購入処理手段とを有し、
前記購入スケジュール作成手段は、前記販売情報取得手段によって、前記販売情報サーバより前記販売情報を取得し、前記購入食材リストを参照して、食材ごとに最も単価が安く、前記献立スケジュールに従って前記消費期限管理手段が管理するその食材の消費期限内に余りなく食材を消費できるように、前記食材に関する商品と、その商品を購入する個数と、その商品を購入する日を指定する購入スケジュールを作成することを特徴とする情報処理装置。
【請求項２】
購入食材リスト作成手段は、ユーザが前記指示入力手段により在庫がある食材の量と、その食材の購入日を入力した在庫食材情報に基づき、前記購入食材リストを更新することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記購入処理手段は、
前記購入スケジュール作成手段が指定した日に、前記販売情報取得手段によって前記販売情報を取得し、前記購入スケジュール作成手段が指定した商品が購入できるか否かを確認し、購入できない商品があった場合、前記商品の代替として使用することができる商品を前記販売情報の中から検索し、代替となる商品が見つかった場合は、前記購入スケジュールの中の前記購入できない商品を代替となる商品に置換し、代替となる食材が見つからなかった場合は、前記表示手段に献立の変更を推奨するメッセージ表示をおこなうことを特徴とする請求項１記載の情報処理装置。
【請求項４】
前記購入処理手段は、
前記購入スケジュール作成手段が指定した日に、前記販売情報取得手段によって前記販売情報を取得し、前記購入スケジュール作成手段が指定した前記購入スケジュールの中から前記指示入力手段によって指定された商品の同種の食材に関する商品である関連商品を検索し、前記関連商品が見つかった場合、前記指定された商品を前記関連商品に変更して購入することを特徴とする請求項１記載の情報処理装置。
【請求項５】
食材に関する商品のオンラインショッピングを提供する販売事業者サーバと、前記販売事業者サーバにネットワーク経由で接続され、前記販売事業者サーバから前記商品の購入の注文をおこなう情報処理装置とからなる情報処理システムの食材購入支援方法において、
前記情報処理装置は、
献立に使用する食材を定義する献立リストと、
食材ごとの消費期限を保持する消費期限情報テーブルと、
日ごとの献立の予定を記録する献立スケジュールと、
食材に関する商品ごとの内容量と価格、在庫の情報を記録する販売情報テーブルと、
ユーザが指定した献立に必要な食材の日ごとのリストである購入食材リストと、
前記購入食材リストに掲載された食材に関する商品の購入の予定を記録する購入スケジュールとを備え、
前記情報処理装置が、前記販売事業者サーバに接続し、前記販売事業者サーバから食材に関する商品の販売情報を取得し、前記販売情報テーブルに保持するステップと、
前記情報処理装置からユーザに日ごとの献立を入力させて、前記献立スケジュールを作成するステップと、
前記献立リストと前記献立スケジュールとに基づき、前記購入食材リストを作成するステップと、
前記購入食材リストに記録された食材に関する商品の購入スケジュールを作成するステップと、
前記情報処理装置が、前記販売情報サーバから前記購入スケジュールに従って食材に関する商品の購入の注文をおこなう購入ステップとを有し、
食材に関する商品の購入スケジュールを作成するステップでは、
前記販売情報テーブルと、消費期限情報テーブルと、前記前記購入食材リストとを参照して、食材ごとに最も単価が安く、前記献立スケジュールに従って前記消費期限管理手段が管理するその食材の消費期限内に余りなく食材を消費できるように、前記食材に関する商品と、その商品を購入する個数と、その商品を購入する日を指定する購入スケジュールを作成することを特徴とする食材購入支援方法。
【請求項６】
さらに、前記情報処理装置は、ユーザの在庫の食材に関する在庫食材情報テーブルを有し、
ユーザに前記指示入力手段により在庫がある食材の量と、その食材の購入日を入力させ、前記消費期限情報テーブルを参照し、その食材の消費期限を求めて、前記在庫食材情報テーブルに記録し、前記在庫食材情報テーブルを参照して、前記購入食材リストを更新することを特徴とする請求項５記載の食材購入支援方法。
【請求項７】
さらに、前記購入スケジュールが指定した日に、前記販売情報を取得して、前記販売情報テーブルを更新し、前記購入スケジュールが指定した商品が購入できるか否かを確認し、購入できない商品があった場合、前記商品の代替として使用することができる商品を前記更新された販売情報テーブルの中から検索し、代替となる商品が見つかった場合は、前記購入スケジュールの中の前記購入できない商品を代替となる商品に置換し、代替となる食材が見つからなかった場合は、献立の変更を推奨するメッセージ表示をおこなうステップを有することを特徴とする請求項５記載の食材購入支援方法。
【請求項８】
さらに、前記購入スケジュールが指定した日に、前記販売情報を取得して、前記販売情報テーブルを更新し、前記購入スケジュールが指定した前記購入スケジュールの中から前記ユーザによって指定された商品の同種の食材に関する商品である関連商品を検索し、前記関連商品が見つかった場合、前記指定された商品を前記関連商品に変更して購入するステップを有することを特徴とする請求項５記載の食材購入支援方法。
【請求項９】
食材に関する商品のオンラインショッピングを提供する販売事業者サーバと、食材購入支援に関するプログラムを実行するアプリケーションサーバと、前記商品の購入の注文をおこなうクライアント端末装置とを備える食材購入支援システムにおいて、
前記販売事業者サーバと、前記アプリケーションサーバと、前記クライアント端末は、各々相互にネットワークが接続され、各々通信する手段を有し、
前記クライアント端末装置は、
操作画面を表示する表示手段と、
前記表示手段の表示内容の切り換えに関するユーザ指示を入力する指示入力手段と、
前記指示入力手段からの入力により前記表示手段の表示を切り換えるＵＩ制御手段とを有し、
前記アプリケーションサーバは、
前記販売事業者サーバから食材に関する商品の内容量と価格、在庫の情報からなる販売情報を取得する販売情報取得手段と、
食材ごとの消費期限を管理する消費期限管理手段と、
前記クライアント端末からユーザが入力した情報に基づき、ユーザの日ごとの献立スケジュールを作成する献立スケジュール作成手段と、
ユーザが指定した献立に必要な食材の日ごとのリストである購入食材リストを作成する購入食材リスト作成手段と、
前記購入食材リストに記録された食材に関する商品の購入スケジュールを作成する購入スケジュール作成手段と、
前記購入スケジュール作成手段が指定した日に、食材に関する商品の購入の注文を、前記販売情報サーバに対しておこなう購入処理手段とを有し、
前記購入スケジュール作成手段は、前記販売情報取得手段によって、前記販売情報サーバより前記販売情報を取得し、前記購入食材リストを参照して、食材ごとに最も単価が安く、前記献立スケジュールに従って前記消費期限管理手段が管理するその食材の消費期限内に余りなく食材を消費できるように、前記食材に関する商品と、その商品を購入する個数と、その商品を購入する日を指定する購入スケジュールを作成することを特徴とする食材購入支援システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、食材購入支援方法、および、食材購入支援システムに係り、電子商取引で、食材を購入するときに、食材の消費期限を考慮して、ユーザに経済的な食材購入のスケジュールを提示するのに好適な情報処理装置、食材購入支援方法、および、食材購入支援システムに関する。
【背景技術】
【０００２】
近年、インターネットや専用線のようなコンピュータネットワーク上での電子的な情報交換によって、商品やサービスを分配したり売買する電子商取引（Electronic commerce）が普及してきている。
【０００３】
そして、このようなネットワークによる通信販売の普及により、ネットワークにより購入できる商品は多様化しており、日常の家庭で調理する食品の材料（食材）についても、食材の宅配サービスとして自宅のパーソナルコンピュータにより購入する消費者が増加しつつある。
【０００４】
例えば、特許文献１には、顧客によって操作され一定期間分の希望献立メニューを販売店舗での食材の売価情報を参照し、希望献立メニューに必要な食材が最も経済的に購入できる順序で、希望献立メニューの各献立を並び替え、記憶する商品売価テーブルを備えている。献立テーブルと商品テーブルにより、商品売価テーブルを参照して入力手段で入力された希望献立メニューに必要な食材が最も経済的に購入できる順序で、該希望献立メニューの各献立を並び替える各献立に必要な食材の買い物リストとともに顧客に提示する献立提案装置が開示されている（要約、図１４、図１５、段落番号００３９、００４０）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−３０２５３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記特許文献１には、販売店舗での食材の売価情報を利用して、ユーザが入力した一定期間の希望献立を必要な食材が最も経済的に購入できる順序で並び替え、献立ごとに必要な食材リストをユーザに提示する仕組みが記載されている。しかしながら、特許文献１の献立提案装置は、販売店舗の特売情報を優先して献立が並び替えられてしまうことために、ユーザの希望通りの献立のスケジュールを組み立てることができない。
【０００７】
また、上記特許文献１には、特売の日に複数の献立の材料をまとめて購入する仕組みが記載されており、材料をまとめて購入することで安く購入できることは期待できる。しかしながら、生鮮食品にはいずれも消費期限があり、大量に購入した結果すべてを消費する前に鮮度が落ちて使えなくなってしまうというユーザにとっての問題点があった。
【０００８】
本発明は、上記問題点を解決するためになされたもので、その目的は、ユーザが指定した一定期間の献立スケジュールに従い、献立間で重複する食材は単価の安い複数個のパック商品を選択し、加えて、食材ごとの消費期限を考慮して消費期限内に使い切ることができるパックを選択して、食材購入スケジュールを提示することのできる食材購入支援システムを提供することにある。
【課題を解決するための手段】
【０００９】
本発明の食材購入支援システムに係る情報処理装置では、食材に関する商品のオンラインショッピングを提供する販売事業者サーバにネットワーク経由で接続し、前記商品のオンラインショッピングをおこなう。
【００１０】
そして、販売事業者サーバから食材に関する商品の内容量と価格、在庫の情報からなる販売情報を取得する販売情報取得する手段と、食材ごとの消費期限を管理する消費期限管理手段と、ユーザの日ごとの献立スケジュールを作成する献立スケジュール作成手段と、ユーザが指定した献立に必要な食材の日ごとのリストである購入食材リストを作成する購入食材リスト作成手段と、購入食材リストに記録された食材に関する商品の購入スケジュールを作成する購入スケジュール作成手段と、記購入スケジュール作成手段が指定した日に食材の購入をおこなう購入処理手段とを有している。
【００１１】
購入スケジュール作成手段は、販売情報取得手段によって、販売情報サーバより販売情報を取得し、購入食材リストを参照して、食材ごとに最も単価が安く、献立スケジュールに従って消費期限管理手段が管理するその食材の消費期限内に余りなく食材を消費できるように、食材に関する商品と、その商品を購入する個数と、その商品を購入する日を指定する購入スケジュールを作成する。
【００１２】
また、購入食材リスト作成手段は、ユーザに入力させた在庫がある食材の量と、その食材の購入日からなる在庫食材情報に基づき、購入食材リストを更新する。
【００１３】
さらに、購入処理手段は、購入スケジュール作成手段が指定した日に、販売情報取得手段によって販売情報を取得し、購入スケジュール作成手段が指定した商品が購入できるか否かを確認し、購入できない商品があった場合、商品の代替として使用することができる商品を販売情報の中から検索し、代替となる商品が見つかった場合は、購入スケジュールの中の購入できない商品を代替となる商品に置換し、代替となる食材が見つからなかった場合は、情報処理装置の表示装置上に献立の変更を推奨するメッセージ表示をおこなう。
【００１４】
さらに、購入処理手段は、購入スケジュール作成手段が指定した日に、販売情報取得手段によって販売情報を取得し、購入スケジュール作成手段が指定した購入スケジュールの中から、ユーザから指定された商品の同種の食材に関する商品である関連商品を検索し、関連商品が見つかった場合、指定された商品を関連商品に変更して購入するようにする。
【００１５】
上記の食材購入支援システムに係る情報処理装置によれば、献立間で重複する食材はまとめて、安価なものを購入することにより購入費用を抑えることができる。また、食材の消費期限を参照して、購入食材リストを作成するのだ、買いすぎにより鮮度が落ちてしまうことがないような食材購入スケジュールを作成することができる。
【発明の効果】
【００１６】
本発明によれば、ユーザが指定した一定期間の献立スケジュールに従い、献立間で重複する食材は単価の安い複数個のパック商品を選択し、加えて、食材ごとの消費期限を考慮して消費期限内に使い切ることができるパックを選択して、食材購入スケジュールを提示することのできる食材購入支援システムを提供することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の第一の実施形態に係る食材購入支援システムの構成を示すブロック図である。
【図２】献立リスト１２０の一例を示す図である。
【図３】献立スケジュール１２１の一例を示す図である。
【図４Ａ】購入食材リスト１２４の一例を示す図である（その一）。
【図４Ｂ】購入食材リスト１２４の一例を示す図である（その二）。
【図４Ｃ】購入食材リスト１２４の一例を示す図である（その三）。
【図５】購入スケジュール１２７の一例を示す図である。
【図６】在庫食材情報テーブル１２３の一例を示す図である。
【図７】販売情報テーブル１２５の一例を示す図である。
【図８】食材・商品対応テーブル１２６の一例を示す図である。
【図９】消費期限情報テーブル１２２の一例を示す図である。
【図１０】食材購入支援システムのメイン処理を示すフローチャートである。
【図１１】献立設定・購入食材リスト作成処理を示すフローチャートである。
【図１２】在庫食材情報を購入食材リストに反映する処理を示すフローチャートである。
【図１３】購入スケジュールを作成する処理を示すフローチャートである。
【図１４】食材の購入処理を示すフローチャートである。
【図１５】商品購入可否の確認処理を示すフローチャートである。
【図１６】献立スケジュールが設定されていないときのメッセージを表示している画面を示す図である。
【図１７】献立スケジュールが設定されているときの本日の献立の内容を表示している画面を示す図である。
【図１８】献立スケジュール設定画面を示す図である。
【図１９】献立選択画面を示す図である。
【図２０Ａ】食材購入設定画面を示す図である（その一）。
【図２０Ｂ】食材購入設定画面を示す図である（その二）。
【図２１】在庫食材設定画面を示す図である。
【図２２】関連商品選択画面を示す図である。
【図２３】本発明の第二の実施形態に係る食材購入支援システムの構成を示すブロック図である。
【発明を実施するための形態】
【００１８】
以下、本発明に係る各実施形態を、図１ないし図２３を用いて説明する。
【００１９】
〔実施形態１〕
以下、本発明に係る第一の実施形態を、図１ないし図２２を用いて説明する。
先ず、図１を用いて第一の実施形態に係る情報処理装置による食材購入支援システムの構成について説明する。
図１は、本発明の第一の実施形態に係る食材購入支援システムの構成を示すブロック図である。
【００２０】
本発明の第一の実施形態に係る食材購入支援システムは、図１に示されるように、販売事業者サーバ１０と、情報処理装置１００がネットワーク２０により接続された形態である。
【００２１】
販売事業者サーバ１０は、オンラインショッピングを提供する事業者のサーバであり、ユーザの情報処理装置１００からネットワーク２０を介して、商品購入やサービス提供の注文を受けたり、決済などをおこなう。
【００２２】
ネットワーク２０は、インターネットなどの公共ネットワークである。ただし、販売事業者サーバ１０とユーザの情報処理装置１００を接続するＬＡＮなどのプライベートネットワークでもよい。
【００２３】
そして、情報処理装置１００は、ネットワーク２０を介して販売事業者サーバ１０と通信をおこない、販売情報の取得や、食材の注文・決済をおこなう端末である。この情報処理装置１００は、図１と以下に説明するような構成を持っていればよく、例えば、ユーザのパーソナルコンピュータ（ＰＣ）でもよいし、専用の注文端末でもよい。
【００２４】
情報処理装置１００は、図１に示されるように、表示装置１０１、指示入力部１０２、Ｉ／Ｏインターフェース１０３、ネットワークインターフェース１０４、ＣＰＵ１０５、メモリ１０６、タイマー１０７、補助記憶インターフェース１０８、補助記憶装置１０９が、バスにより結合された形態である。
【００２５】
表示装置１０１は、ＬＣＤ（Liquid Crystal Display）、有機ＥＬ（Electroluminescence）などの表示機構に情報を表示する部分であり、商品や献立の情報、購入画面など、本実施形態の一連の操作画面を表示する。
【００２６】
指示入力部１０２は、ユーザからの操作指示を受け付ける装置であり、ボタンの他に、マウスに代表されるポインティングデバイス、表示装置１０１と一体化したタッチパネルなどである。
【００２７】
本システムの基本的な操作は、表示装置１０１に表示したボタンを、指示入力部１０２のマウスなどのポインティングデバイス、または、タッチパネルを用いて操作するものである。
【００２８】
表示装置１０１と指示入力部１０２は、Ｉ／Ｏインターフェース１０３によって、その他の部分と接続されている。
【００２９】
ネットワークインターフェース１０４は、情報処理装置１００がネットワーク２０を経由して販売事業者サーバ１０と通信をおこなうためのインターフェースてある。
【００３０】
ＣＰＵ(Central Processing Unit)１０５は、メモリ１０６にロードされた食材購入支援プログラム１１０を実行し、情報処理装置１００の各部を制御する。
【００３１】
メモリ１０６は、ＤＲＡＭ(Dynamic Random Access Memory)などの半導体装置で構成されて、プログラムやデータを一時的に格納する領域である。
【００３２】
タイマー１０７は、水晶発振機構などにより現在時刻を保持する。
【００３３】
補助記憶インターフェース１０８は、補助記憶装置１０９とその他の部分を接続する役割を果たす。
【００３４】
補助記憶装置１０９は、ＨＤＤ（Hard Disk Drive）、または、ＳＳＤ（Solid State Drive）などの半導体記憶装置であり、食材購入支援プログラム１１０、および、食材購入支援プログラム１１０に関連するデータを格納する。
【００３５】
食材購入支援プログラム１１０に関連するデータは、献立リスト１２０、献立スケジュール１２１、消費期限情報テーブル１２２、在庫食材情報テーブル１２３、購入食材リスト１２４、販売情報テーブル１２５、食材・商品対応テーブル１２６、購入スケジュール１２７である。
【００３６】
食材購入支援プログラム１１０は、機能別に構成を示すと、ＵＩ制御部１１１、販売情報取得部１１２、消費期限管理部１１３、購入食材リスト作成部１１４、献立スケジュール作成部１１５、購入スケジュール作成部１１６、購入処理部１１７からなる。
【００３７】
ＵＩ制御部１１１は、画面の表示・切り替えをおこなう部分であり、表示装置１０１への表示を制御する。
【００３８】
販売情報取得部１１２は、ネットワークインターフェース１０４を介して、販売事業者サーバ１０から販売情報を取得し、補助記憶装置１０９に格納する。
【００３９】
消費期限管理部１１３は、食材ごとに、消費期限の情報として製造日、または、出荷日から消費期限までの日数を保持する。なお、本実施形態では、消費期限までの日数は食材ごとに固定値が設定されているものとして説明するが、販売事業者サーバ１０から、その都度、食材ごとに消費期限を取得してもよいし、ユーザが任意に設定できるようにしてもよい。そのように販売事業者サーバ１０から入手すれことにすれば、食材ごとの細かな消費期限の情報を入手することができる。また、ユーザが任意に設定できるようにすれば、例えば、冷蔵庫の有無などの保存環境に合わせてユーザが消費期限をより長く設定したり、逆に短く設定したりすることができる。
【００４０】
購入食材リスト作成部１１４は、ユーザが指定した献立から必要な食材のリストを作成する。
【００４１】
献立スケジュール作成部１１５は、ユーザの入力に基づき献立スケジュールの設定をする。
【００４２】
購入スケジュール作成部１１６は、購入食材リスト作成部１１４が作成した購入食材リスト１２４と販売事業者１０から取得した販売情報テーブル１２５、消費期限管理部１１３から取得した食材の消費期限情報１１８をもとに購入スケジュール１２１を作成する。
【００４３】
購入処理部１０９は、販売事業者サーバ１０に対して、ネットワークインターフェース１０４を介して、商品注文をおこなう。
【００４４】
献立リスト１２０は、料理する可能性のある献立と、その献立ごとの材料を保持するリストである。
【００４５】
献立スケジュール１２１は、日ごとの献立の予定をまとめたリストである。
【００４６】
消費期限情報テーブル１２２は、食材ごとの消費期限を格納するテーブルである。
【００４７】
在庫食材情報テーブル１２３は、購入食材リスト１２４に反映していない食材のである在庫食材に関する情報を保持するテーブルである。
【００４８】
購入食材リスト１２４は、購入する予定の食材を日ごとにまとめたリストである。
【００４９】
販売情報テーブル１２５は、食材が商品として販売されているときの情報を格納するテーブルである。
【００５０】
食材・商品対応テーブル１２６は、献立の食材に対して、どの商品を購入すればよいかの対応を示すテーブルである。
【００５１】
購入スケジュール１２７は、購入食材リスト１２４を修正して、実際に購入する予定の食材を日ごとにまとめたリストである。
【００５２】
次に、図２ないし図９を用いて本発明の食材購入支援システムに用いられるデータ構造について説明する。
図２は、献立リスト１２０の一例を示す図である。
図３は、献立スケジュール１２１の一例を示す図である。
図４Ａないし図４Ｃは、購入食材リスト１２４の一例を示す図である。
図５は、購入スケジュール１２７の一例を示す図である。
図６は、在庫食材情報テーブル１２３の一例を示す図である。
図７は、販売情報テーブル１２５の一例を示す図である。
図８は、食材・商品対応テーブル１２６の一例を示す図である。
図９は、消費期限情報テーブル１２２の一例を示す図である。
【００５３】
献立リスト１２０は、料理する可能性のある献立と、その献立ごとの材料を保持するリストであり、図２に示されるように、献立ＩＤ１６０１、献立名１６０２、食材リスト１６０３の各フィールドからなる。
【００５４】
献立ＩＤ１６０１は、各献立を識別するための識別子である。献立名１６０２は、献立の名称である。食材リスト１６０３は、一人分の料理を作るのに必要な食材を列挙したリストである。
【００５５】
献立スケジュール１２１は、図３に示されるように、日ごとに調理する献立のスケジュールを示すリストである。献立には、「焼きそば」、「カレー」などのように料理名が格納される。なお、図に示されるように、８月５日〜８日は、明示的に献立を設定していない日である。
【００５６】
購入食材リスト１２４は、図４Ａないし図４Ｃに示されるように、献立リスト１２０と献立スケジュール１２１に基づいて、購入の必要がある、日にち毎の献立に対応した食材の候補を保持するリストである。図４Ａは、後に説明する在庫食材に関する情報が反映される前のデータが格納された購入食材リスト１２４を示しており、図４Ｂは、在庫食材に関する情報が反映された後のデータが格納された購入食材リスト１２４を示しており、図４Ｃは、購入スケジュール作成したときの図４Ｂの購入食材リスト１２４を更新したときの購入食材リスト１２４を示している。
【００５７】
購入スケジュール１２７は、図５に示されるように、日にち毎に購入する商品のスケジュールを示すリストであり、商品名と購入する個数からなる。購入スケジュール１２７は、購入食材リスト１２４に基づき、作成される。
【００５８】
在庫食材情報テーブル１２３は、購入食材リスト１２４に反映していない食材である在庫食材に関する情報を保持するテーブルであり、図６に示されるように、在庫ＩＤ１９０１、食材ＩＤ１９０２、食材名１９０３、個数１９０４、消費期限１９０５の各フィールドからなる。在庫食材は、調理時に使われなくて、あまった食材や、この食材購入支援システムによらずに、購入した食材などがこれに該当する。
【００５９】
在庫ＩＤ１９０１は、在庫食材を一意的に識別する識別子である。
【００６０】
食材ＩＤ１９０２は、食材を一意的に識別する識別子である。
【００６１】
食材名１９０３は、食材の名称を表す文字列である。
【００６２】
個数１９０４は、食材の分量や個数である。
【００６３】
消費期限１９０５は、この在庫食材の消費期限である。
【００６４】
図６に示される例は、例えば、食材ＩＤ０００２の食材名「じゃがいも」が、４個あり、その消費期限が８月１１日であることを示している。
【００６５】
販売情報テーブル１２５は、ユーザが現時点において、販売事業者サーバ１０から購入できる商品の情報を格納するテーブルであり、図７に示されるように、商品ＩＤ２２０１、商品名２２０２、内容量２２０３、単価２２０４、価格２２０５、在庫２２０６の各フィールドからなる。
【００６６】
商品ＩＤ２２０１は、商品を一意的に識別する識別子である。商品名２２０２は、商品の名称を表す文字列である。内容量２２０３は、商品の個数や重量などの内容量を示す値であり、パックになっている食材は含まれる数、カットされている食材は、何分の一のサイズなのかなどを示している。単価２２０４は、個数あたり、１００ｇあたりなどの値段であり、価格２２０５を、内容量２２０３で除算した値である。価格２２０５は、この商品の値段である。在庫２２０６は、この商品の在庫の有無を表すフラグである。
【００６７】
図７に示される例は、例えば、商品ＩＤ０００１の商品名「キャベツ（岡山産）」が、内容量１個であり、価格が１９８円（単価：１９８円）で、在庫があり、商品ＩＤ００１１の「豚バラ肉国産６００ｇ」が、内容量６００ｇであり、価格が７６８円（単価：１２８円）で、在庫がないことを示している。
【００６８】
食材・商品対応テーブル１２６は、図８に示されるように、献立の食材に対して、どの商品を購入すればよいかの対応を示すテーブルであり、食材ＩＤ２５０１、食材名２５０２、商品ＩＤ２５０３、商品名２５０４、カテゴリ２５０５の各フィールドからなる。
【００６９】
食材ＩＤ２５０１は、食材を一意的に識別する識別子である。
【００７０】
食材名２５０２は、食材の名称を表す文字列である。
【００７１】
商品ＩＤ２５０３は、商品を一意的に識別する識別子である。
【００７２】
商品名２５０４は、商品の名称を表す文字列である。
【００７３】
カテゴリ２５０５は、食材のカテゴリを示す文字列であり、同一のカテゴリを有する食材は、代替可能であることを示す。このカテゴリ２５０５は、食材名と同一であってもよいし、食材を上位概念でおきかえるものであってもよい（「豚バラ肉」→「豚肉」など）。
【００７４】
図８に示される例は、例えば、食材ＩＤが０００２の食材名「じゃがいも」は、商品ＩＤ０００６の商品名「じゃがいも男爵」と、商品ＩＤ０００７の商品名「じゃがいも男爵３個パック」に対応しており、共にカテゴリが「じゃがいも」に属し、食材ＩＤが０００７の食材名「カレー牛肉」は、商品ＩＤ００２０の商品名「カレー牛肉オーストラリア産４００ｇ」に対応しており、カテゴリが「牛肉」であることを示している。
【００７５】
消費期限情報テーブル１２２は、食材ごとの消費期限を格納するテーブルであり、図９に示されるように、食材ＩＤ２６０１、食材名２６０２、消費期限２６０３の各フィールドからなる。
【００７６】
食材ＩＤ２６０１は、食材を一意的に識別する識別子である。
【００７７】
食材名２６０２は、食材の名称を表す文字列である。
【００７８】
消費期限２６０３は、この食材購入支援システムにおいて、その食材に設定される消費期限を表す日数である。
【００７９】
次に、図１０ないし図２２を用いて本発明の食材購入支援システムの処理について説明する。
図１０は、食材購入支援システムのメイン処理を示すフローチャートである。
図１１は、献立設定・購入食材リスト作成処理を示すフローチャートである。
図１２は、在庫食材情報を購入食材リストに反映する処理を示すフローチャートである。
図１３は、購入スケジュールを作成する処理を示すフローチャートである。
図１４は、食材の購入処理を示すフローチャートである。
図１５は、商品購入可否の確認処理を示すフローチャートである。
図１６は、献立スケジュールが設定されていないときのメッセージを表示している画面を示す図である。
図１７は、献立スケジュールが設定されているときの本日の献立の内容を表示している画面を示す図である。
図１８は、献立スケジュール設定画面を示す図である。
図１９は、献立選択画面を示す図である。
図２０Ａ，図２０Ｂは、食材購入設定画面を示す図である。
図２１は、在庫食材設定画面を示す図である。
図２２は、関連商品選択画面を示す図である。
【００８０】
先ず、図１０を用いて食材購入支援システムのメイン処理について説明する。
【００８１】
情報処理装置１００において、食材購入支援システムのトップページが起動されると、最初に献立が設定されているか否かを確認する（Ｓ２０１）。献立が設定されていないときには、ＵＩ制御部１１１が、メッセージ欄に献立設定を要求するメッセージを表示する（Ｓ２０２）。
【００８２】
トップページで、献立設定を要求するメッセージを表示するときには、図１６に示されるように、献立設定を要求するメッセージをユーザに表示する。
【００８３】
トップページは、画面種別表示欄８０１、現在日時８０２、献立設定開始ボタン８０３。献立内容表示欄８０４、メッセージ欄８０５、終了ボタン８０６からなる。
【００８４】
画面種別表示欄８０１には、この画面の種別を表す文字列「トップ」が表示される。現在日時８０２は、この情報処理装置が有するカレンダーの日時が表示される。献立設定開始ボタン８０３は、献立設定開始を指示するボタンである（図２０Ａに遷移：後述）。献立内容表示欄８０４は、その日ごとの献立を表示するが、献立が未設定の場合は何も表示しない。メッセージ欄８０５は、ユーザへのメッセージを表示する部分であり、この場合には、献立が設定されていないため、献立を設定するよう促すメッセージが表示されている。終了ボタン８０６は、食材購入支援システムを終了するときの指示するボタンである。
【００８５】
なお、ここでは、本日の献立が設定されていない場合に、メッセージを表示するようにしたが、献立が設定されていても、例えば、明日までの献立設定しかされていないなど、献立が設定済みの日数が残り少ない場合も同様にメッセージを表示するようにしてもよい。
【００８６】
ここで、ユーザが献立設定をおこなうとき（Ｓ２０３：ＹＥＳ）には、献立設定開始ボタン８０３をマウスなどのポインティングデバイスによりクリックする。
【００８７】
なにもせずに終了する（Ｓ２０３：ＮＯ）ときには、終了ボタン８０６をマウスなどのポインティングデバイスによりクリックする。
【００８８】
献立設定開始ボタン８０３をクリックすると、献立設定・購入スケジュール作成処理をおこなう（Ｓ２０４）。献立設定・購入スケジュール作成処理の詳細は、後に、図１１を用いて説明する。
【００８９】
Ｓ２０１の判断で、献立が設定されているとき、あるいは、Ｓ２０４の処理で献立設定・購入スケジュール作成したときには、ＵＩ制御部１１１が献立の内容を確認表示する（Ｓ２０５）。
【００９０】
図１７には、献立の内容が設定されているときの本日の献立の内容を表示している状態を示している。この例では、本日（８月１日）の献立が「焼きそば」であり、明日（８月２日）の献立の例が、「カレー」であることを示している。
【００９１】
このときのトップ画面の左端の指示ボタンは、買い物開始ボタン１２０１、献立設定ボタン１２０２、購入スケジュールボタン１２０３に変化している。
【００９２】
買い物開始ボタン１２０１は、献立の内容を元に、購入スケジュールを作成し、献立に必要な食材に関する商品の購入をおこなう処理の開始を指示するためのボタンである。
【００９３】
献立設定ボタン１２０２は、購入スケジュールボタン１２０３は、購入スケジュールの変更や確認をおこなうために指示するボタンである。
【００９４】
そして、ユーザが購入処理をおこなうとき（Ｓ２０６：ＹＥＳ）には、買い物開始ボタン１２０１をマウスなどのポインティングデバイスによりクリックする。
【００９５】
ユーザが購入処理をおこなわないとき（Ｓ２０６：ＮＯ）には、終了ボタン８０６をマウスなどのポインティングデバイスによりクリックする。
【００９６】
買い物開始ボタン１２０１をクリックすると、購入処理をおこなう（Ｓ２０７）。購入処理の詳細は、後に、図１４を用いて説明する。
【００９７】
次に、図１１を用いて献立設定・購入食材リスト作成処理について説明する。
【００９８】
献立設定・購入食材リスト作成処理は、図１０のＳ２０４のステップでおこなわれる処理である。
【００９９】
先ず、献立スケジュールの設定をおこなう（Ｓ３０１）。
【０１００】
献立スケジュールの設定は、図１６の献立設定ボタン８０３か、図１７のＰの献立設定ボタン８０３をマウスなどのポインティングデバイスによりクリックされることにより開始される。
【０１０１】
図１６の献立設定ボタン８０３か、図１７のＰの献立設定ボタン８０３をクリックされると、ＵＩ制御部１１１が表示画面を図１８の献立スケジュール設定画面に切り換え、献立スケジュール作成部１１５が献立スケジュールの設定を受け付ける。献立スケジュールを設定するときには、図２に示した献立リストの中から選択され、日にちごとに設定される。ここでは２週間分の献立を設定するものとして説明するが、２週間より短い期間でもよく、また、より長い期間でもよい。
【０１０２】
献立スケジュール設定画面は、日にちごとに献立を入力する画面であり、次のページボタン９０１、前のページボタン９０２、献立選択ボタン９０３、設定なしボタン９０４、購入食材設定ボタン９０５、終了ボタン９０６、カレンダー９１０を有する。
【０１０３】
そして、ユーザによって指示入力部１０２によりカレンダー９１０の中の日付が選択されると、ＵＩ制御部１１１によって選択枠９１１が表示される。次のページボタン９０１、前のページボタン９０２は、カレンダー９１０のページを切り替えるためのボタンである。献立を設定する日に選択枠９０８が合った状態で、マウスなどのポインティングデバイスにより献立選択ボタン９０３が選択されると、ＵＩ制御部１１１は、図１９に示される献立選択画面を表示する。また、設定なしボタン９０４を選択させることにより、ユーザは、明示的に献立を設定しない日を指定することができる。これは、例えば、ユーザに外食や旅行の予定があり食事を作らないといった場合に対応するものである。
【０１０４】
献立選択画面は、ユーザに選択のための献立を提示して、選択させるための画面であり、図１９に示されるように、次のページボタン１００１、前のページボタン１００２、決定ボタン１００３、献立一覧１０１０、を有する。
【０１０５】
献立一覧１０１０の献立は、図２に示した献立リスト１２０が反映されている。
【０１０６】
そして、ユーザによって指示入力部１０２により献立一覧１０１０の中の献立が選択されると、ＵＩ制御部１１１によって選択枠１０１１が表示される。次のページボタン１００１、前のページボタン１００２は、献立が複数ページに渡る場合に、ページを切り替えるためのボタンである。決定ボタン１００３が選択されると、選択枠１００５が表示されている欄の献立が選択され、該当する日付における献立が決定される。同時に、ＵＩ制御部１１１が図１８の献立スケジュール設定画面に表示を戻し、該当する日付に決定された献立を反映させる。そして、ユーザは、別の日を選択することが可能になる。
【０１０７】
以上の動作を２週間分のすべての日についておこなうことにより、献立スケジュールの設定が完了する。ユーザの設定は、図３に示した献立スケジュール１２１として、補助記憶装置１０９に保存される。
【０１０８】
次に、食材購入支援システムは、献立スケジュールに必要な食材を購入するための購入食材リストを作成する（Ｓ３０２）。
【０１０９】
この処理では、購入食材リスト作成部１１４は、献立の各食材の必要量に人数を掛け合わせた量を算出し、図２に示される献立リストと図３に示される献立スケジュールに基づいて、図４Ａに示される購入食材リスト１２４を補助記憶装置１０９に作成する。
【０１１０】
献立の各食材の必要量に人数は、予め何人分の料理を作るかをユーザに指定させた人数である。この人数は、デフォルトで設定しておき、日にちごと、献立ごとに変更するようにしてもよい。この例では、人数はすべて４人分としている。
【０１１１】
ここで、購入食材リスト１２４を作成するために、ユーザは、購入食材設定ボタン９０５をマウスなどのポインティングデバイスによりクリックする。
【０１１２】
購入食材設定ボタン９０５をクリックすると、図２０Ａに示される食材購入設定画面が表示装置１０１に表示される。
【０１１３】
食材購入設定画面は、ユーザに購入食材に関する情報を入力させるための画面であり、図２０Ａに示されるように、食材購入ボタン１３０１、関連商品検索ボタン１３０２、在庫食材設定ボタン１３０３、買い物中止ボタン１３０４、購入商品リスト１３１０を有する。
【０１１４】
食材購入ボタン１３０１は、食材の購入を開始を指示するためのボタンである。関連商品検索ボタン１３０２は、献立に使用される食材の関連商品を指定するときに指示するためのボタンである。在庫食材設定ボタン１３０３は、在庫食材の設定をするために指示するボタンである。買い物中止ボタン１３０４は、食材の設定や購入を中止し、トップ画面に戻ることを指示するボタンである。購入商品リスト１３１０は、本日、購入を予定している商品の情報を表示する欄である。
【０１１５】
次に、在庫食材の入力をするときには（Ｓ３０３）、食材購入設定画面の在庫食材設定ボタン１３０３をマウスなどのポインティングデバイスによりクリックする。
【０１１６】
ここで、在庫食材とは、既に説明したように、購入済みの食材で以前購入したまま使用せず余ってしまった食材などで、未だ購入食材リスト１２４に反映していない食材である。この在庫食材の情報を加味することにより、ユーザは、食材を余計に購入することを防ぎ、現状のユーザの食材の準備状況に適合させることができる。ユーザに入力を求める情報は、食材それぞれの量と購入日である。食材の購入日は、消費期限までの残り日数を計算するために必要な情報である。
【０１１７】
在庫食材設定ボタン１３０３をクリックすると、図２１に示される在庫食材設定画面が表示される。
【０１１８】
在庫食材設定画面は、在庫食材に関する情報を表示するための画面であり、図２１に示されるように、新規登録ボタン１１０１、修正ボタン１１０２、削除ボタン１１０３、完了ボタン１１０４、在庫食材表示欄１１０５を有する。
【０１１９】
新規登録ボタン１１０１は、在庫食材に関して新規に入力して、図６に示される在庫食材情報テーブル１２３に登録するために指示するボタンである。
【０１２０】
修正ボタン１１０２は、在庫食材情報テーブル１２３に登録した内容を、修正するために指示するボタンである。
【０１２１】
削除ボタン１１０３、在庫食材情報テーブル１２３に登録した内容を、削除するために指示するボタンである。
【０１２２】
完了ボタン１１０４は、入力した在庫食材に関する情報を、在庫食材情報テーブル１２３に反映するために指示するボタンである。
【０１２３】
在庫食材表示欄１１０５には、入力した食材名、内容量、購入日に関する情報を表示する。
【０１２４】
入力された購入日は、図９に示される消費期限情報テーブル１２２に基づき、入力した購入日からその食材の消費期限を算出して、図６に示される形式の在庫食材情報テーブル１２３の消費期限１９０５に格納される。
【０１２５】
完了ボタン１１０４がクリックされると、在庫食材設定画面が閉じられ、購入食材リスト作成部１１４は、入力した在庫食材に関する情報を、図６に示される在庫食材情報テーブル１２３に反映する（Ｓ３０４）。
【０１２６】
在庫食材情報テーブル１２３に設定した情報を、購入食材リスト１２４に反映する処理については、後に、図１２を用いて詳細に説明する。
【０１２７】
次に、購入スケジュール作成部１１５が、ネットワークインターフェース１０４を介して販売事業者サーバ１０から販売情報を取得し、販売情報テーブル１２５に格納する（Ｓ３０５）。
【０１２８】
次に、購入スケジュール作成部１１６は、更新した販売情報テーブル１２５に基づき、いつどの食材をどのくらい購入すればよいかを決める購入スケジュールを作成する（Ｓ３０６）。
【０１２９】
次に、図１２を用いて在庫食材情報を購入食材リストに反映する処理について、具体例を交えて説明する。
【０１３０】
在庫食材情報を購入食材リストに反映する処理は、図１１のＳ３０４のステップでおこなわれる処理である。
【０１３１】
先ず、図６に示される在庫食材情報テーブル１２３の最初のレコードに記録された食材であるＩＤ０００１「じゃがいも」に着目する（Ｓ４０１）。
【０１３２】
次に、図４Ａに示された購入食材リスト１２４にじゃがいもがあるか否かを確認する（Ｓ４０２）。
【０１３３】
図４Ａに示された購入食材リスト１２４では、８月３日にじゃがいも４個を使用予定であるため、次に、食材のじゃがいもが消費期限内か否かを確認する（Ｓ４０３）。
【０１３４】
じゃがいもの消費期限は、図６に示される在庫食材情報テーブル１２３の消費期限１９０５の値が示す８月１１日である。したがって、使用予定の８月３日は、消費期限内であり、この日に在庫食材リストのじゃがいもを使用できるため、購入食材リスト１２４から８月３日のじゃがいも４個を削除する（Ｓ４０４）。
【０１３５】
これで、一つのレコードの処理が終了したので、次に、他の在庫食材かあるかを判定する（Ｓ４０５）。
【０１３６】
図６に示される在庫食材情報テーブル１２３の例では、次のＩＤ０００２の「米」に着目する（Ｓ４０６）。
【０１３７】
米が、図４Ａに示された購入食材リスト１２４にあるかを否かを確認すると（Ｓ４０２）、８月２日、３日、４日、９日〜１４日にあり、それぞれ２合（３００ｇ）ずつ、計２．７ｋｇを使用予定であることが分かる。次に消費期限内か否かを確認する（Ｓ４０３）。
【０１３８】
米の消費期限は、在庫食材情報テーブル１２３の消費期限１９０５の値が示す８月１４日であり、消費期限内に個数１９０４に示された１．５ｋｇの米を使用できるのは、８月２日、３日、４日、９日、１０日であり、この日の米を図４Ａに示された購入食材リスト１２４から削除する（Ｓ４０４）。
【０１３９】
同様にＩＤ０００３，０００４の「なす」も、図４Ａに示された購入食材リスト１２４の８月３日の欄に存在し、かつ、その日が消費期限（１個が８月７日、３個が８月８日）内であるため、購入食材リスト１２４から削除する。
【０１４０】
このように、図６に示された在庫食材情報テーブルの情報が反映されると、購入食材リスト１２４は、図４Ｂに示されるようになる。
【０１４１】
次に、図１３を用いて購入スケジュールを作成する処理を、具体例を交えて説明する。
【０１４２】
購入スケジュールを作成する処理は、図１１のＳ３０６のステップでおこなわれる処理である。
【０１４３】
ここでは、ユーザは、購入食材リストの前日に購入するものとし、８月１日と８月２日の購入食材リストの食材を購入する例について説明する。また、図７の販売情報テーブル１２５は、その時点での販売事業者サーバにおける最新の販売情報を表しているものとする。
【０１４４】
先ず、購入スケジュール作成部１１６は、図４Ｂに示された購入食材リスト１２４の８月１日の最初の食材の「焼きそば用麺」に着目する（Ｓ５０１）。次に着目した食材が他の日でも使う予定がないか否かを確認する（Ｓ５０２）と、購入食材リスト１２４において「焼きそば用麺」が含まれているはこの日のみである。
【０１４５】
次に「焼きそば用麺」の消費期限を確認する（Ｓ５０３）。図９の消費期限情報テーブルを参照すると「焼きそば用麺」の消費期限は１０日である。
【０１４６】
次に、食材の「焼きそば用麺」に該当する商品を、図８に示された食材・商品対応テーブル１２６より検索する。この場合には、商品ＩＤ００１２の「焼きそば用麺４食パック」が検索される。そして、単価が異なる複数のパックが販売されているか否かを確認する（Ｓ５０４）。複数種類のパックがある場合は、Ｓ５０５に進み、どのパックを購入するのが最適かを判断するが、「焼きそば用麺」は１種類のパックしかないため、このパックの商品を選択して（Ｓ５０６）、購入食材リスト１２４より、食材の「焼きそば用麺」を削除し、図５に示した購入スケジュールに商品の「焼きそば用麺４食パック」を１個購入として登録し、次の食材の処理に遷移する（Ｓ５０７、Ｓ５０８）。
【０１４７】
次は、「豚バラ肉」に着目する。「豚バラ肉」が他の日でも使う予定がないか否かを確認すると（Ｓ５０２）、「豚バラ肉」が含まれている購入リストは、８月１日、９日、１２日である。次に、図９の消費期限情報テーブルを参照して、消費期限を取得する（Ｓ５０３）。図９の消費期限情報テーブル１２２を参照すると「豚バラ肉」の消費期限は、２日であることが分かる。
【０１４８】
次に、食材の「豚バラ肉」に該当する商品を、図８に示された食材・商品対応テーブル１２６より検索する。この場合には、商品ＩＤ０００９の「豚バラ肉国産２００ｇ」、商品ＩＤ００１０の「豚バラ肉国産４００ｇ」、商品ＩＤ００１１の「豚バラ肉国産６００ｇ」が検索される。そして、図７の販売情報テーブル１２５を参照し、単価が異なる複数のパックが販売されているか否かを確認する（Ｓ５０４）。「豚バラ肉」に対応する商品としては、商品ＩＤ００１１の「豚バラ肉国産６００ｇ」が在庫がなく、商品ＩＤ０００９の「豚バラ肉国産２００ｇ」、商品ＩＤ００１０の「豚バラ肉国産４００ｇ」の二商品に在庫があり、入手可能であることが分かる。しかしながら、単価がすべて同じであるため、着目している日に使用する量である４００ｇのパックである商品ＩＤ００１０の「豚バラ肉国産４００ｇ」を選択して、１個購入として（Ｓ５０６）、図５に示した購入スケジュールに反映する。
【０１４９】
次に、食材の「キャベツ」に着目する（Ｓ５０１）。「キャベツ」が含まれている食材購入リスト１２１の日を確認すると、８月１日、９日、１２日となる（Ｓ５０２）。また、消費期限は１０日である（Ｓ５０３）。
【０１５０】
次に、食材の「キャベツ」に該当する商品を、図８に示された食材・商品対応テーブル１２６より検索する。この場合には、商品ＩＤ０００１の「キャベツ（岡山産）」、商品ＩＤ０００２の「キャベツ１／２（岡山産）」が検索される。そして、図７の販売情報テーブル１２５を参照し、単価が異なるパックが販売されているかを確認すると１／２個と１個のパックがあるので（Ｓ５０４）、最も単価の安い１個のパックに着目する（Ｓ５０５）。８月１日の献立に必要な量は１／２個であるが、キャベツの消費期限である１０日以内となる８月９日の献立でもキャベツを１／２個使用することになっているため、７月３１日に購入しても、８月１０日の消費期限内に消費可能と判断し（Ｓ５０７）、７月３１日に商品ＩＤ０００１の「キャベツ（岡山産）」を１個購入するように、購入スケジュール１２７に追加する。
【０１５１】
そして、購入食材リスト１２４から、８月１日のキャベツ１／２個と、８月９日のキャベツ１／２個の登録を削除する（Ｓ５０９）。
【０１５２】
次に、８月２日の「カレー用牛肉」に着目する（Ｓ５０２）。「カレー用牛肉」が含まれている食材購入リスト１２１の日を確認すると、８月２日のみである（Ｓ５０２）。また、消費期限は２日である（Ｓ５０３）。食材の「カレー用牛肉」に該当する商品を、図８に示された食材・商品対応テーブル１２６より検索する。この場合には、商品ＩＤ００２０の「カレー用牛肉オーストラリア産４００ｇ」、商品ＩＤ００２１の「カレー用牛肉米国産４００ｇ」、商品ＩＤ００２２の「カレー用牛肉国産４００ｇ」、商品ＩＤ００２３の「カレー用牛肉国産和牛４００ｇ」が検索される。そして、図７の販売情報テーブル１２５を参照し、最も単価の安い商品ＩＤ００２０の「カレー用牛肉オーストラリア産４００ｇ」のパックを１個購入する（Ｓ５０４、Ｓ５０６）。
【０１５３】
次に、食材の「にんじん」に着目する（Ｓ５０２）。図４Ｂの食材購入リスト１２１で「にんじん」が使用される日を確認すると、８月２日、１２日、１３日と分かる（Ｓ５０２）。図９の消費期限情報テーブル１２２を参照すると「にんじん」の消費期限は１０日である（Ｓ５０３）。
【０１５４】
食材の「にんじん」に該当する商品を、図８に示された食材・商品対応テーブル１２６より検索する。この場合には、商品ＩＤ０００３の「ニンジン２本パック」、商品ＩＤ０００４の「ニンジン４本パック」、商品ＩＤ０００５の「ニンジン６本パック」が検索される。
【０１５５】
次に、図７の販売情報テーブル１２５単価が異なる複数の商品のパックが販売されているか否かを確認すると、４本パックと６本パックがあることが分かる（Ｓ５０４）。ここで最も単価の安い６本パックの「ニンジン６本パック」の商品に着目する（Ｓ５０５）。次に、６本パックを購入したときに、消費期限内に消費可能か否かを確認する（Ｓ５０７）。８月１日に購入した場合、消費期限は８月１０日となる。８月２日に４本を消費し２本が余るが、次に、にんじんを消費する日は８月１２日であり、消費期限の８月１０日を過ぎてしまう。消費期限内に消費することができないため、次に、単価の安い４本パックに着目する（Ｓ５０８）。このパックの場合は、８月２日に使いきることになるため、消費期限内に消費が可能であるので、商品ＩＤ０００４の「ニンジン４本パック」を１個購入することを購入スケジュールに登録する（Ｓ５０９）。
【０１５６】
このようにして、図４Ｂに示される購入食材リスト１２４に基づき、作成される８月１日と８月２日に使用する食材の購入スケジュール１２７は、図５に示されるようになり、購入スケジュール作成後の購入食材リスト１２４は、図４Ｃに示されるようになる。
【０１５７】
この購入スケジュール１２７と購入食材リスト１２４は、更新後に補助記憶装置１０９に保存される。そして、この購入スケジュールに従って、購入処理部１０９が日ごとに食材の購入を実行する。
【０１５８】
次に、図１４を用いて食材の購入処理について説明する。
【０１５９】
食材の購入処理は、図１０のＳ２０７のステップでおこなわれる処理である。
【０１６０】
購入スケジュール１２７は、登録された種類・量の食材の在庫があり、また、スケジュール作成時に販売事業者から入手した販売情報から食材の商品が購入可能である前提で作成される。しかしながら、残っていた食材をすでに使ってしまった、また、予想より鮮度が落ちて使えなくなることが考えられる。また、購入予定の商品が、その時点では販売事業者で在庫切れとなり入手できない場合も考えられる。こうした場合を考慮して、購入時に再度、在庫食材の確認と購入予定の食材の商品の販売状況の確認をおこなう。
【０１６１】
先ず、購入処理部１０９は、ＵＩ制御部を介して、表示装置１０１に図２１に示す在庫食材情報設定画面を表示させて在庫食材の確認をおこなう（Ｓ６０１）。ユーザは表示される在庫情報と実際の在庫が異なっていれば、ここで修正ボタン１１０２をクリックして、修正の登録をおこなう。
【０１６２】
そして、在庫食材の変更があった場合は（Ｓ６０２）、再び、入力した在庫食材に関する情報を、在庫食材情報テーブル１２３に反映する処理（Ｓ３０４の処理）をおこない（Ｓ６０３）、販売事業者サーバ１０から販売情報を取得する処理（Ｓ３０５の処理）をおこない（Ｓ６０４）、購入スケジュールを作成する処理（Ｓ３０６の処理）をおこなう（Ｓ６０５）。
【０１６３】
次に、購入処理部１０９は、商品購入可否の確認処理をおこなう（Ｓ６０６）。
【０１６４】
商品購入可否の確認処理の詳細は、後に、図１５を用いて説明する。
【０１６５】
次に、商品購入可否の確認処理の結果、表示装置１０１に図２０Ａに示す食材購入設定画面を表示させる（Ｓ６０７）。ここで、購入商品リスト１３１０には、本日、８月１日に購入する商品の情報が表示されている。図では、「カレー用牛肉オーストラリア産４００ｇ」、「ニンジン４本パック」、「玉ねぎ淡路産  ４個入り」が購入予定の商品として表示している。
【０１６６】
ユーザが購入スケジュールに従い、購入商品リスト１３１０に表示された内容の商品を購入するときには（Ｓ６０８）、購入ボタン１３０１を選択し、購入処理部１０９は、それにより購入処理を実行する（Ｓ６１２）。購入処理は、通常の電子取引の手順に従って、購入商品の内容確認、配送先確認、購入の意思確認、支払い手段（クレジットカード、振込み、代金引換）の選択などがおこなわれるが、詳細は省略する。
【０１６７】
ユーザが購入スケジュールに従わず別の商品を選択したいと思ったときには、購入商品リスト１３１０の商品をマウスなどのポインティングデバイスによりクリックして選択すると、選択枠１３１１が表示され、その状態で、関連商品検索ボタン１３０２をクリックする。それにより、購入処理部１０９は、ＵＩ制御部を介して、表示装置１０１に、図２２に示す関連商品選択画面を表示させる。図では、「カレー用牛肉オーストラリア産４００ｇ」が選択枠１３１１として、表示されている。
【０１６８】
関連商品選択画面は、図２２に示されるように、食材購入設定に戻るボタン１５０１、商品変更ボタン１５０２、元商品表示欄１５０３、関連商品リスト１５１０を有する。
【０１６９】
戻るボタン１５０１をクリックすると、この関連商品選択画面を閉じて、図２０Ａに示す食材購入設定画面を表示する。商品変更ボタン１５０２は、ユーザが選択した商品を、元の商品と置き換えることを指示するボタンである。元商品表示欄１５０３は、図２０Ａに示す食材購入設定画面で選択された元の商品名を表示する欄である。関連商品リスト１５１０は、元の商品と関連ある商品を表示するリストである。
【０１７０】
システムは、元の選択された商品の関連商品情報を取得して（Ｓ６０９）、関連商品リスト１５１０に表示する。
【０１７１】
図２２に示される例では、元の商品として、関連商品リスト１５１０に「カレー用牛肉オーストラリア産４００ｇ」が表示されており、これの関連商品として、「カレー用牛肉米国産４００ｇ」、「カレー用牛肉国産４００ｇ」、「カレー用牛肉国産黒毛和牛４００ｇ」が表示されている。
【０１７２】
関連商品の検索は、食材・商品対応テーブル１２６を参照し、元の商品とカテゴリが同一の商品が検索される。この例では、元の商品ＩＤ００２０の「カレー用牛肉オーストラリア産４００ｇ」のカテゴリは、「カレー用牛肉」とされており、商品ＩＤ００２１の「カレー用牛肉米国産４００ｇ」、商品ＩＤ００２２の「カレー用牛肉国産４００ｇ」、商品ＩＤ００２３の「カレー用牛肉国産黒毛和牛４００ｇ」とは、同一のカテゴリに属する。
【０１７３】
そして、ユーザが元の商品を変更するときには（Ｓ６１０）、指示入力部１０２により関連食材リスト１５０４の中の関連食材が選択し、それに従ってＵＩ制御部１１１によって選択枠１５１１が表示される。この状態で商品変更ボタン１５０２を選択すると、購入処理部１０９は、元商品表示欄１５０３に表示されている商品を、選択された商品に変更し、購入スケジュールを修整する（Ｓ６１１）。そして、ＵＩ制御部１１１によって、図２０Ａに示す食材購入設定画面に戻る。
【０１７４】
そして、食材購入設定画面の購入ボタン１３０１が選択されることによって購入処理がおこなわれる（Ｓ６１２）。
【０１７５】
本システムでは、最も安い商品を選択するようになっているが、この処理により、ユーザが高くても質の良い食材の商品を選択したいという場合に、関連商品の検索をおこない、ユーザに本システムが提示した食材と比較検討させることができる。
【０１７６】
次に、図１４を用いて商品購入可否の確認処理を説明する。
【０１７７】
商品購入可否の確認処理は、図１４のＳ６０２のステップでおこなわれる処理である。
【０１７８】
先ず、ネットワークインターフェース１０４を介して販売事業者サーバ１０から販売情報を取得し、販売情報テーブル１２５を更新する（Ｓ７０１）。
【０１７９】
次に、その日の購入予定の購入商品リスト１３１０にある商品について、購入可能か否かを確認する（Ｓ７０２）。
【０１８０】
そして、購入商品リスト１３１０の商品がすべて購入可能であれば終了する。
【０１８１】
購入できない商品がある場合は、代替商品がないか否かを調べる（Ｓ７０３〜）。ここでの代替商品とは、図８に示した食材・商品対応テーブル１２６のカテゴリ欄が購入不可とされた商品と同一になる商品である。ここで、同じ食材に関する商品で異なる数のパックの商品、または、同種で産地や品種が異なる食材に関する商品が、その商品の代替の商品となる候補である。購入可能な代替商品がない場合は、購入処理部１０９は、図２０Ｂに示されるように、ＵＩ制御部を介して、表示装置１０１に予定の食材が購入できず、代替商品もなかった旨と献立の変更を勧めるメッセージを表示して終了する（Ｓ７０６）。
【０１８２】
代替商品が見つかった場合、最も単価の安い商品を選択する（Ｓ７０４）。
【０１８３】
例えば、図２０Ａに示された食材購入設定画面の購入商品リスト１３１０の内で、「カレー用牛肉オーストラリア産４００ｇ」の在庫が切れていたとする。そのときには、代替商品として、食材・商品対応テーブル１２６のカテゴリ欄が購入不可とされた「カレー用牛肉オーストラリア産４００ｇ」と同一の「カレー用牛肉米国産４００ｇ」、「カレー用牛肉国産４００ｇ」、「カレー用牛肉国産和牛４００ｇ」が検索され、この内で、単価が一番安い「カレー用牛肉米国産４００ｇ」が選択される（Ｓ７０５）。
【０１８４】
次に、他にも購入不可の商品があれば、その商品について同様の処理をおこなう（Ｓ７０７、Ｓ７０８）。このようにして、購入商品リスト１３１０にある購入予定のすべての商品について確認をおこなう。
【０１８５】
〔実施形態２〕
以下、本発明に係る第二の実施形態を、図２３を用いて説明する。
図２３は、本発明の第二の実施形態に係る食材購入支援システムの構成を示すブロック図である。
【０１８６】
第一の実施形態では、システム構成としては、情報処理装置１００に販売事業者サーバ１０がネットワークにより接続され、食材購入支援システムの主要なアプリケーションソフトウェアとデータは、情報処理装置１００側に置かれ、ユーザサイトで実行されていた。
【０１８７】
これに対して、本実施形態では、システム構成として、クライアント端末装置２４００と販売事業者サーバ１０に加えて、アプリケーションサーバ３０とで構成したものである。アプリケーションサーバ３０で、データベースとしてユーザ毎に、データを管理している。そして、アプリケーションサーバ３０で、食材購入支援システムの主要なアプリケーションソフトウェアを実行させるようにして、クライアント端末装置２４は、クライアントとして、アプリケーションサーバ３０から処理結果を受け取り、表示する。そのため、クライアント端末装置２４００のクライアント側プログラム２４１０は、ＵＩ制御部２４１１と通信制御部２４１２のみである。
【０１８８】
本システムでは、通信制御部２４１２はネットワークインターフェース２４０４を介してアプリケーションサーバ３０に指示を出し、アプリケーションサーバ３０上で各種処理を実行させる。クライアント端末装置２４では、大きな記憶部を持たなくてもよい分、安価になる利点がある。また、サーバ上にデータを持つことにより、例えば、スマートフォンとＰＣなど、異なる複数のクライアントから同じデータを共用できる。
【符号の説明】
【０１８９】
１０…販売事業者サーバ
２０…ネットワーク
１００…情報処理装置
１０１…表示装置
１０２…指示入力部
１０３…Ｉ／Ｏインターフェース
１０４…ネットワークインターフェース
１０５…ＣＰＵ
１０６…メモリ
１０７…タイマー
１０８…補助記憶インターフェース
１０９…補助記憶装置
１１０…食材購入支援プログラム
１１１…ＵＩ制御部
１１２…販売情報取得部
１１３…消費期限管理部
１１４…購入食材リスト作成部
１１５…献立スケジュール作成部
１１６…購入スケジュール作成部
１１７…購入処理部
１１７…販売情報
１２０…献立リスト
１２１…献立スケジュール
１２２…消費期限情報テーブル
１２３…在庫食材情報テーブル
１２４…購入食材リスト
１２５…販売情報テーブル
１２６…食材・商品対応テーブル
１２７…購入スケジュール
【図１】
2013122706.tif 000003
【図２】
2013122706.tif 000004
【図３】
2013122706.tif 000005
【図４Ａ】
2013122706.tif 000006
【図４Ｂ】
2013122706.tif 000007
【図４Ｃ】
2013122706.tif 000008
【図５】
2013122706.tif 000009
【図６】
2013122706.tif 000010
【図７】
2013122706.tif 000011
【図８】
2013122706.tif 000012
【図９】
2013122706.tif 000013
【図１０】
2013122706.tif 000014
【図１１】
2013122706.tif 000015
【図１２】
2013122706.tif 000016
【図１３】
2013122706.tif 000017
【図１４】
2013122706.tif 000018
【図１５】
2013122706.tif 000019
【図１６】
2013122706.tif 000020
【図１７】
2013122706.tif 000021
【図１８】
2013122706.tif 000022
【図１９】
2013122706.tif 000023
【図２０Ａ】
2013122706.tif 000024
【図２０Ｂ】
2013122706.tif 000025
【図２１】
2013122706.tif 000026
【図２２】
2013122706.tif 000027
【図２３】
2013122706.tif 000028