(57)【特許請求の範囲】
【請求項１】
使用者からの入力を受け取るデータ入力部と、
商品に関連する情報を格納する商品管理データベースと、
該商品管理データベースに格納された該商品に関連する情報から、予め定められた複数の判定要素に各々対応するお勧め商品候補を抽出するお勧め商品候補抽出部と、
該お勧め商品候補抽出部によって抽出された該お勧め商品候補から、お勧め商品情報を作成するお勧め商品情報作成部と、
使用者に出力を行うデータ表示部と
を備え、
前記お勧め商品候補抽出部が、前記複数の判定要素に各々対応する基準値を前記データ入力部から受け取り、該基準値に基づいて前記商品に関連する情報から前記複数の判定要素に各々対応する前記お勧め商品候補を抽出し、該お勧め商品候補の各々の抽出件数を前記データ表示部に表示した後に、
前記お勧め商品情報作成部が、前記複数の判定要素間の優先度及び前記複数の判定要素に各々対応するお勧め商品の表示件数のうちの少なくとも一つを前記データ入力部から受け取り、該優先度及び該表示件数に基づいて前記お勧め商品候補から前記お勧め商品情報を作成し、該お勧め商品情報に基づいてお勧め商品一覧表を前記データ表示部に表示する、お勧め商品管理システム。
【請求項２】
前記複数の判定要素は、粗利額と消費期限残日数と在庫数とのうちの少なくとも一つを含む、請求項１に記載のお勧め商品管理システム。
【請求項３】
前記お勧め商品候補抽出部及び前記お勧め商品情報作成部は、前記商品管理データベースに格納された前記商品に関連する情報に仕入日の異なる同一種別の商品が存在する場合に、前記仕入日の異なる同一種別の商品を区別して取り扱う、請求項１又は２に記載のお勧め商品管理システム。
【請求項４】
商品に関連する情報を格納する商品管理データベースを備えるシステムを、お勧め商品管理システムとして機能させるお勧め商品管理プログラムであって、
前記システムを、
使用者からの入力を受け取るデータ入力部と、
前記商品管理データベースに格納された前記商品に関連する情報から、予め定められた複数の判定要素に各々対応するお勧め商品候補を抽出するお勧め商品候補抽出部と、
該お勧め商品候補抽出部によって抽出された該お勧め商品候補から、お勧め商品情報を作成するお勧め商品情報作成部と、
使用者に出力を行うデータ表示部と
して機能させ、
前記お勧め商品候補抽出部が、前記複数の判定要素に各々対応する基準値を前記データ入力部から受け取り、該基準値に基づいて前記商品に関連する情報から前記複数の判定要素に各々対応する前記お勧め商品候補を抽出し、該お勧め商品候補の各々の抽出件数を前記データ表示部に表示した後に、
前記お勧め商品情報作成部が、前記複数の判定要素間の優先度及び前記複数の判定要素に各々対応するお勧め商品の表示件数のうちの少なくとも一つを前記データ入力部から受け取り、該優先度及び該表示件数に基づいて前記お勧め商品候補から前記お勧め商品情報を作成し、該お勧め商品情報に基づいてお勧め商品一覧表を前記データ表示部に表示する、お勧め商品管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、お勧め商品に指定する商品を、指定された複数の条件に基づいて自動的に抽出するための、お勧め商品管理システム及びプログラムに関する。
【背景技術】
【０００２】
販売店（例えば、スーパーマーケットや商店等）では、買い物客に積極的に勧めたい商品を「お勧め商品」として指定し、広告やラベル等を用いて表示することにより、買い物客の購買意欲を促進している。
従来、どの商品をお勧め商品に指定するかには、これといった判定要素や基準はなく、各販売店員の経験や勘に頼ることが多く、新製品や年間を通じて平均的に売れる定番商品という観点で指定することも多い。
【０００３】
また、従来、廃棄処分の必要に迫られた商品に対して販売促進を行うシステムが知られている。例えば、特許文献１に記載されている自動販売機管理システムでは、特定の商品の在庫数を販売予想値と比較し、売れ残りが発生することが予想される場合には、処分、値引き、販売場所の変更等を行う事項が記載されている。
【０００４】
【特許文献１】特開２００１−１８４５４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、販売店員の経験や勘に頼ってお勧め商品を指定する方法では、販売店員の経験の度合いや勘の善し悪しによって、どの商品をお勧め商品に指定するかが大きく異なり、必ずしも販売店の利益を最大化するようなお勧め商品の指定が行われていないという問題があった。
また、単一の判定要素のみを用いてお勧め商品を自動的に抽出するようなシステムでは、様々な要素によって決まる販売店の利益を最大化するようなお勧め商品の抽出が行えないという問題があった。
そのため、販売することで利益が出やすい商品を積極的に販売できない、消費期限が近づいている商品の販売機会を失い廃棄しなければならなくなる、過剰な在庫をもつ商品を効率よく販売できない等の問題があった。
【０００６】
本発明は、このような問題点を解決するためになされたものであり、販売店員の経験や勘に依存することなく、指定された複数の条件に基づいてお勧め商品を自動的に抽出するための、お勧め商品管理システム及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の問題点を解決するため、本発明に係るお勧め商品管理システムは、使用者からの入力を受け取るデータ入力部と、商品に関連する情報を格納する商品管理データベースと、商品管理データベースに格納された商品に関連する情報から、予め定められた複数の判定要素に各々対応するお勧め商品候補を抽出するお勧め商品候補抽出部と、お勧め商品候補抽出部によって抽出されたお勧め商品候補から、お勧め商品情報を作成するお勧め商品情報作成部と、使用者に出力を行うデータ表示部とを備え、お勧め商品候補抽出部が、複数の判定要素に各々対応する基準値をデータ入力部から受け取り、基準値に基づいて商品に関連する情報から複数の判定要素に各々対応するお勧め商品候補を抽出し、お勧め商品候補の各々の抽出件数をデータ表示部に表示した後に、お勧め商品情報作成部が、複数の判定要素間の優先度及び複数の判定要素に各々対応するお勧め商品の表示件数のうちの少なくとも一つをデータ入力部から受け取り、優先度及び表示件数に基づいてお勧め商品候補からお勧め商品情報を作成し、お勧め商品情報に基づいてお勧め商品一覧表をデータ表示部に表示する。
【０００９】
複数の判定要素は、粗利額と消費期限残日数と在庫数とのうちの少なくとも一つを含んでいてもよい。
【００１０】
お勧め商品候補抽出部及びお勧め商品情報作成部は、商品管理データベースに格納された商品に関連する情報に仕入日の異なる同一種別の商品が存在する場合に、仕入日の異なる同一種別の商品を区別して取り扱ってもよい。
【００１１】
また、本発明に係るお勧め商品管理プログラムは、商品に関連する情報を格納する商品管理データベースを備えるシステムを、お勧め商品管理システムとして機能させるお勧め商品管理プログラムであって、システムを、使用者からの入力を受け取るデータ入力部と、商品管理データベースに格納された商品に関連する情報から、予め定められた複数の判定要素に各々対応するお勧め商品候補を抽出するお勧め商品候補抽出部と、お勧め商品候補抽出部によって抽出されたお勧め商品候補から、お勧め商品情報を作成するお勧め商品情報作成部と、使用者に出力を行うデータ表示部として機能させ、お勧め商品候補抽出部が、複数の判定要素に各々対応する基準値をデータ入力部から受け取り、基準値に基づいて商品に関連する情報から複数の判定要素に各々対応するお勧め商品候補を抽出し、お勧め商品候補の各々の抽出件数をデータ表示部に表示した後に、お勧め商品情報作成部が、複数の判定要素間の優先度及び複数の判定要素に各々対応するお勧め商品の表示件数のうちの少なくとも一つをデータ入力部から受け取り、優先度及び表示件数に基づいてお勧め商品候補からお勧め商品情報を作成し、お勧め商品情報に基づいてお勧め商品一覧表をデータ表示部に表示する。
【発明の効果】
【００１２】
本発明に係るお勧め商品管理システム及びプログラムによれば、予め複数の判定要素が定められており、使用者により指定された各判定要素に各々対応する基準値に基づいてお勧め商品候補を抽出し、各々の件数を表示した後、使用者により指定された判定要素間の優先度及び各判定要素に各々対応するお勧め商品の表示件数に基づいて、お勧め商品一覧表を表示する。そのため、販売店員の経験や勘に依存することなく、指定された条件に基づいて、お勧め商品を自動的に抽出することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態を図面に基づいて説明する。
実施の形態１．
本発明の実施の形態１に係るお勧め商品管理システムは、判定要素Ａ＝粗利額、判定要素Ｂ＝消費期限残日数、及び判定要素Ｃ＝在庫数という予め定められた３つの判定要素をもつ。お勧め商品管理システムは、使用者により指定された判定要素Ａ〜Ｃに各々対応する基準値に基づいてお勧め商品候補を抽出し、各々の件数を表示した後、使用者により指定された判定要素Ａ〜Ｃ間の優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数に基づいてお勧め商品一覧表を表示する。
図１に、本発明の実施の形態１に係るお勧め商品管理システムの構成の一例を示す。お勧め商品管理システム１０は、販売店に設置され、販売店の店員等が使用するコンピュータシステムである。お勧め商品管理システム１０は、周知のコンピュータとしての構成を有し、使用者からの入力を受け取るデータ入力部１と、使用者に出力を行うデータ表示部５と、演算を行う演算手段２０と、情報を格納する記憶手段３０とを備える。データ入力部１はキーボート及びマウスを含み、データ表示部５は、ディスプレイ及びプリンタを含み、演算手段２０は、ＣＰＵ（中央処理装置）を含み、記憶手段３０はメモリ及びＨＤＤ（ハードディスクドライブ）を含む。
【００１４】
記憶手段３０は、商品管理データベース２を格納する。商品管理データベース２は、商品に関する情報を格納する「商品情報管理マスタファイル２ａ」、商品の仕入時期及び在庫数に関する情報を格納する「仕入在庫管理ファイル２ｂ」、判定要素Ａ（＝粗利額）に基づいてお勧め商品候補を抽出した結果を格納する「お勧め商品候補（粗利額）抽出結果ファイル２ｃ」、判定要素Ｂ（＝消費期限残日数）に基づいてお勧め商品候補を抽出した結果を格納する「お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄ」、判定要素Ｃ（＝在庫数）に基づいてお勧め商品候補を抽出した結果を格納する「お勧め商品候補（在庫数）抽出結果ファイル２ｅ」、及び判定要素Ａ〜Ｃに基づいてお勧め商品情報を作成した結果を格納する「お勧め商品情報ファイル２ｆ」を含むが、これらの構成については、図２〜３、図４〜６、及び図７を用いて後述する。
演算手段２０は、記憶手段３０に格納されるお勧め商品管理プログラム（図示せず）を実行することによって、後述するような、お勧め商品候補抽出部３、及びお勧め商品情報作成部４として機能する。
【００１５】
図２に、商品情報管理マスタファイル２ａの構成の一例を示す。これは、商品に関する情報を格納する表形式のデータベースファイルである。このファイルの内容は、販売店の店員等が、自店で取り扱う商品に関する情報としてお勧め商品管理システム１０のデータ入力部１を介して入力するものである。図２では、８種類の商品に関する情報が入力され格納されている。
【００１６】
商品情報管理マスタファイル２ａに含まれる項目について、以下に説明する。
「商品コード」は、商品の種別ごとに割り当てられた数字列であり、商品種別を一意に識別するためのものである。また、商品コードは、このマスタファイルの主キーとなる。「商品名」は商品の名称である。「仕入値」は、商品を仕入れる際の値段であり、「売値」は、商品を販売する際の値段である。
図２に示す例では、商品コードが０００１である商品の商品名は、「生ビール」であり、その仕入値は１００円、売値は３００円となる。なお、簡単のため商品の仕入値及び売値は、時期によらず一定として取り扱う例を示しているが、本発明はこれに限定されるものではない。
【００１７】
図３に、仕入在庫管理ファイル２ｂの構成の一例を示す。これは、商品の仕入時期及び在庫数に関する情報を格納する表形式のデータベースファイルである。このファイルの内容は、販売店の店員等が日々の業務において、商品を仕入れた際に情報を追加（行を追加）入力していく。また、時間の経過及び商品の販売状況によって内容が更新されていく。
【００１８】
仕入在庫管理ファイル２ｂに含まれる項目について、以下に説明する。
「仕入通番」は、商品を仕入れた際に一意に割り付けられる通し番号であり、このファイルの主キーとなる。「商品コード」は、図２の説明で述べたものと同じものである。「仕入日」は、その商品を仕入れた日付である。「消費期限残日数」は、その商品が消費期限切れになるまでに、あと何日残っているかを示すものである。「在庫数」は、現在、その商品の在庫が何個存在するかを示すものである。なお、在庫数は、商品が販売されるたびに販売個数ずつ減算される。
図３に示す例では、仕入通番が３００１の行を見ると、商品コード０００１の商品が２月１日に仕入れられており、それらの商品が消費期限切れになるまでの残日数は５日であり、現在の在庫数は１０個である。
【００１９】
図４に、お勧め商品候補（粗利額）抽出結果ファイル２ｃの構成の一例を示す。これは、判定要素Ａ（＝粗利額）に基づいてお勧め商品候補を抽出した結果を格納する表形式の一時データベースファイルである。この内容は、お勧め商品候補抽出部３が、商品情報管理マスタファイル２ａ、及び後述する使用者によって入力された「粗利額抽出基準値」に基づいて作成するものである。
【００２０】
お勧め商品候補（粗利額）抽出結果ファイル２ｃに含まれる項目について、以下に説明する。
「商品コード」と「商品名」は、図２の説明で述べたものと同じものであり、「商品コード」は、この一時データベースファイルの主キーとなる。「粗利額」は、その商品を１つ販売した際に得られる利益額であり、売値から仕入値を減算することによって得られる値である。「判定値」は、粗利額、及び使用者によって入力された粗利額抽出基準値に基づいて算出される値であり、この値が１以上の場合、お勧め商品候補と判定する。また、この値が大きいほど、お勧めの順位が高くなる。判定値の算出方法については、後述する。
【００２１】
図５に、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄの構成の一例を示す。これは、判定要素Ｂ（＝消費期限残日数）に基づいてお勧め商品候補を抽出した結果を格納する表形式の一時データベースファイルである。この内容は、お勧め商品候補抽出部３が、商品情報管理マスタファイル２ａ、仕入在庫管理ファイル２ｂ、及び後述する使用者によって入力された「消費期限残日数抽出基準値」に基づいて作成するものである。
【００２２】
お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄに含まれる項目について、以下に説明する。
「商品コード」と「商品名」は、図２の説明で述べたものと同じものであり、「商品コード」は、この一時データベースファイルの主キーとなる。「消費期限残日数」は、図３の説明で述べたものと同じものである。「判定値」は、消費期限残日数、及び使用者によって入力された消費期限残日数抽出基準値に基づいて算出される値であり、この値が１以上の場合、お勧め商品候補と判定する。また、この値が大きいほど、お勧めの順位が高くなる。判定値の算出方法については、後述する。
【００２３】
図６に、お勧め商品候補（在庫数）抽出結果ファイル２ｅの構成の一例を示す。これは、判定要素Ｃ（＝在庫数）に基づいてお勧め商品候補を抽出した結果を格納する表形式の一時データベースファイルである。この内容は、お勧め商品候補抽出部３が、商品情報管理マスタファイル２ａ、仕入在庫管理ファイル２ｂ、及び後述する使用者によって入力された「在庫数抽出基準値」に基づいて作成するものである。
【００２４】
お勧め商品候補（在庫数）抽出結果ファイル２ｅに含まれる項目について、以下に説明する。
「商品コード」と「商品名」は、図２の説明で述べたものと同じものであり、「商品コード」は、この一時データベースファイルの主キーとなる。「在庫数」は、図３の説明で述べたものと同じものである。「判定値」は、在庫数、及び使用者によって入力された在庫数抽出基準値に基づいて算出される値であり、この値が１以上の場合、お勧め商品候補と判定する。また、この値が大きいほど、お勧めの順位が高くなる。判定値の算出方法については、後述する。
【００２５】
図７に、お勧め商品情報ファイル２ｆの構成の一例を示す。これは、判定要素Ａ（＝粗利額）、判定要素Ｂ（＝消費期限残日数）、及び判定要素Ｃ（＝在庫数）に基づいて、お勧め商品情報を作成した結果を格納するデータベースファイルである。この内容は、お勧め商品情報作成部４が、お勧め商品候補（粗利額）抽出結果ファイル２ｃ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄ、お勧め商品候補（在庫数）抽出結果ファイル２ｅ、及び後述する使用者によって入力された「判定要素Ａ〜Ｃ間での優先度」と「判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数」とに基づいて作成するものである。
【００２６】
お勧め商品情報ファイル２ｆに含まれる項目について、以下に説明する。
「商品コード」と「商品名」は、図２の説明で述べたものと同じものであり、「商品コード」は、このデータベースファイルの主キーとなる。「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、及び「判定要素Ｃ（在庫数）」は、ＴＲＵＥ又はＦＡＬＳＥの値をとる項目であり、商品がその判定要素に基づいてお勧め商品と判定された場合にはＴＲＵＥ、そうでない場合にはＦＡＬＳＥの値をとる。
また、お勧め商品情報ファイル２ｆでは、表の上位の行に位置する商品ほど、お勧めの順位が高くなる。
図７に示す例では、お勧めの順位が最も高い商品コード０００５のウイスキーは、判定要素Ａ（＝粗利額）によってお勧め商品と判定されている。また、お勧めの順位が３番目に高い商品コード０００１の生ビールは、判定要素Ｂ（＝消費期限残日数）、及び判定要素Ｃ（＝在庫数）によってお勧め商品と判定されている。
【００２７】
以上のように構成される本発明の実施の形態１に係るお勧め商品管理システム１０における処理の流れを、図８に示すフローチャートを用いて説明する。
図８は、お勧め商品候補抽出部３、及びお勧め商品情報作成部４が、使用者の指示を受けて、お勧め商品一覧表を表示する際の処理の流れを説明するフローチャートである。
【００２８】
ステップＳ１において、お勧め商品候補抽出部３は「お勧め商品候補基準値の入力画面」をデータ表示部５に表示させ、使用者にお勧め商品候補の抽出基準、すなわち判定要素Ａ〜Ｃに各々対応する基準値を指定させる。
詳細には、判定要素Ａ（＝粗利額）の基準値である「粗利額抽出基準値」、判定要素Ｂ（＝消費期限残日数）の基準値である「消費期限残日数抽出基準値」、及び判定要素Ｃ（＝在庫数）の基準値である「在庫数抽出基準値」を指定させる。
図９に「お勧め商品候補基準値の入力画面」の一例を示す。図９では、使用者に、粗利額抽出基準値入力フィールド９ａ、消費期限残日数抽出基準値入力フィールド９ｂ、及び在庫数抽出基準値入力フィールド９ｃにキーボード等から数値を入力させる。この例では、粗利額抽出基準値として３００円、消費期限残日数抽出基準値として５０日、在庫数抽出基準値として６０個が指定されている。
お勧め商品候補抽出ボタン９ｄは、マウス又はキーボード等により押下することが可能であり、これが使用者により押下されると、ステップＳ２に移行する。
【００２９】
ステップＳ２において、お勧め商品候補抽出部３は、商品情報管理マスタファイル２ａからステップＳ１で取得した粗利額抽出基準値に基づいて、粗利額抽出基準を満たす商品情報を抽出し、お勧め商品候補（粗利額）抽出結果ファイル２ｃを作成する。
詳細には、商品情報管理マスタファイル２ａの各行の商品情報に対して、売値項目の値から仕入値項目の値を減算することにより粗利額を算出した後、
判定値＝粗利額／粗利額抽出基準値  …………  式（１）
で定義される判定値を算出する。ここで、判定値が１以上の場合は、その行に対応付けられた商品に関する「商品コード」、「商品名」、「粗利額」、及び「判定値」の項目を含む新たな行を、お勧め商品候補（粗利額）抽出結果ファイル２ｃに追加する。判定値が１未満の場合は追加しない。
商品情報管理マスタファイル２ａに格納されている全ての商品情報に対して上記の操作を行った後、お勧め商品候補（粗利額）抽出結果ファイル２ｃの各行を判定値の降順にソートする。
以上の操作が終了すると、お勧め商品候補（粗利額）抽出結果ファイル２ｃには、商品情報管理マスタファイル２ａに格納されている商品の中で、粗利額が粗利額抽出基準値以上である商品が、粗利額の大きい順に格納されることになる。
図４に示す例では、粗利額抽出基準値が３００円の場合に、６つの商品が抽出され、それらの中では、商品コード０００５のウイスキーの粗利額が最も大きく、商品コード０００３の焼酎の粗利額が最も小さい。
【００３０】
ステップＳ３において、お勧め商品候補抽出部３は、商品情報管理マスタファイル２ａ及び仕入在庫管理ファイル２ｂからステップＳ１で取得した消費期限残日数抽出基準値に基づいて、消費期限残日数抽出基準を満たす商品情報を抽出し、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄを作成する。
詳細には、商品情報管理マスタファイル２ａの各行の商品情報に対して、仕入在庫管理ファイル２ｂより商品コードをキーとして商品の消費期限残日数を取得した後、
判定値＝消費期限残日数抽出基準値／消費期限残日数  …………  式（２）
で定義される判定値を算出する。ここで、判定値が１以上の場合は、その行に対応付けられた商品に関する「商品コード」、「商品名」、「消費期限残日数」、及び「判定値」の項目を含む新たな行を、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄに追加する。判定値が１未満の場合は追加しない。
商品情報管理マスタファイル２ａに格納されている全ての商品情報に対して上記の操作を行った後、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄの各行を判定値の降順にソートする。
以上の操作が終了すると、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄには、商品情報管理マスタファイル２ａに格納されている商品の中で、消費期限残日数が消費期限残日数抽出基準値以下である商品が、消費期限残日数の短い順に格納されることになる。
図５に示す例では、消費期限残日数抽出基準値が５０日の場合に、６つの商品が抽出され、それらの中では、商品コード０００１の生ビールの消費期限残日数が最も短く、商品コード０００４の日本酒、商品コード０００６の赤ワイン、及び商品コード０００７の白ワインの消費期限残日数が最も長い。
尚、商品情報管理マスタファイル２ａの各行の商品情報に対して、仕入在庫管理ファイル２ｂより商品コードをキーとして商品の消費期限残日数を取得する際に、その商品コードに対して複数の消費期限残日数が存在する場合もありえる。そのような場合には、複数の消費期限残日数の中で最も短いものを、その商品コードの商品に対応する消費期限残日数として取り扱う。例えば図３では、商品コード０００１の商品（図２より、これは生ビールである）は２月１日に仕入れられ消費期限残日数が５日のものと、２月２０日に仕入れられ消費期限残日数が５５日のものが存在する。この場合、商品コード０００１の商品の消費期限残日数は５日として取り扱う。
【００３１】
ステップＳ４において、お勧め商品候補抽出部３は、商品情報管理マスタファイル２ａ及び仕入在庫管理ファイル２ｂからステップＳ１で取得した在庫数抽出基準値に基づいて、在庫数抽出基準を満たす商品情報を抽出し、お勧め商品候補（在庫数）抽出結果ファイル２ｅを作成する。
詳細には、商品情報管理マスタファイル２ａの各行の商品情報に対して、仕入在庫管理ファイル２ｂより商品コードをキーとして商品の在庫数を取得した後、
判定値＝在庫数／在庫数抽出基準値  …………  式（３）
で定義される判定値を算出する。ここで、判定値が１以上の場合は、その行に対応付けられた商品に関する「商品コード」、「商品名」、「在庫数」、及び「判定値」を含む新たな行を、お勧め商品（在庫数）抽出結果ファイル２ｅに追加する。判定値が１未満の場合は追加しない。
商品情報管理マスタファイル２ａに格納されている全ての商品情報に対して上記の操作を行った後、お勧め商品候補（在庫数）抽出結果ファイル２ｅの各行を判定値の降順にソートする。
以上の操作が終了すると、お勧め商品候補（在庫数）抽出結果ファイル２ｅには、商品情報管理マスタファイル２ａに格納されている商品の中で、在庫数が在庫数抽出基準値以上である商品が、在庫数の多い順に格納されることになる。
図６に示す例では、在庫数抽出基準値が６０個の場合に、３つの商品が抽出され、それらの中では、商品コード０００８のラム酒の在庫数が最も多く、商品コード０００７の白ワインの在庫数が最も少ない。
尚、商品情報管理マスタファイル２ａの各行の商品情報に対して、仕入在庫管理ファイル２ｂより商品コードをキーとして商品の在庫数を取得する際に、その商品コードに対して複数の在庫数が存在する場合もありえる。そのような場合には、それら複数の在庫数の総和をその商品コードの商品に対応する在庫数として取り扱う。例えば図３では、商品コード０００１の商品（図２より、これは生ビールである）は２月１日に仕入れられ在庫数が１０個のものと、２月２０日に仕入れられ在庫数が１００個のものが存在する。この場合、商品コード０００１の商品の在庫数は１１０個として取り扱う。
【００３２】
ステップＳ５において、お勧め商品候補抽出部３は「お勧め商品候補件数の表示画面」をデータ表示部５に表示させ、使用者に判定要素Ａ〜Ｃに各々対応する抽出基準である粗利額抽出基準、消費期限残日数抽出基準、及び在庫数抽出基準を満たす商品が、それぞれ何件存在するかを示すとともに、判定要素Ａ〜Ｃ間での優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数を指定するボタンを押下するように促す。
図１０に「お勧め商品候補件数の表示画面」の一例を示す。図１０に示す例では、使用者による編集が不能なフィールドであるお勧め商品候補（粗利額）該当件数の表示フィールド１０ａ、お勧め商品候補（消費期限残日数）該当件数の表示フィールド１０ｂ、及びお勧め商品候補（在庫数）該当件数の表示フィールド１０ｃによって、各々の該当件数を使用者に示す。また、優先度と表示件数の指定ボタン１０ｄを押下することにより、判定要素Ａ〜Ｃ間での優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数を指定するように使用者に促す。優先度と表示件数の指定ボタン１０ｄは、マウス又はキーボード等により押下することが可能であり、これが使用者により押下されると、ステップＳ６に移行する。
【００３３】
ステップＳ６において、お勧め商品情報作成部４は「優先度と表示件数の指定画面」をデータ表示部５に表示させ、使用者にお勧め商品一覧表を表示する際の判定要素Ａ〜Ｃ間での優先度、すわわち、判定要素Ａ（＝粗利額）、判定要素Ｂ（＝消費期限残日数）、及び判定要素Ｃ（＝在庫数）の間での優先度を指定させる。また、抽出基準を満たした各々のお勧め商品候補の中から、お勧め商品一覧表上に表示する商品の件数を指定させる。図１１に「優先度と表示件数の指定画面」の一例を示す。
図１１に示す例では、「優先度と表示件数の指定画面」は、優先度指定カテゴリ１１ａ、表示件数指定カテゴリ１１ｅ、及びお勧め商品一覧表の表示ボタン１１ｉをもつ。
優先度指定カテゴリ１１ａは、判定要素Ａ〜Ｃに各々対応する粗利額アイテム１１ｂ、消費期限残日数アイテム１１ｃ、及び在庫数アイテム１１ｄをもつ。これらのアイテムの横方向の並び順は、使用者にマウスによるドラッグ＆ドロップにより変更させることが可能であり、これらアイテムの横方向の並び順により判定要素Ａ〜Ｃ間の優先度を指定させることができる。この例では、判定要素Ａ〜Ｃ間の優先度は、判定要素Ａ（＝粗利額）＞判定要素Ｂ（＝消費期限残日数）＞判定要素Ｃ（＝在庫数）の順である。尚、これらのアイテムの初期の並び順は、判定要素Ａ（＝粗利額）、判定要素Ｂ（＝消費期限残日数）、判定要素Ｃ（＝在庫数）の順である。
表示件数指定カテゴリ１１ｂには、使用者により数値を入力可能なフィールド１１ｆ〜ｈが横方向に３つ並んでおり、使用者にこれらのフィールド１１ｆ〜ｈに数値を入力させることにより、そのフィールドの直上のアイテムに対応するお勧め商品候補の中から、幾つの商品を一覧表上に表示させるかを指定させることができる。この例では、判定要素Ａ（＝粗利額）に基づくお勧め商品候補から２件、判定要素Ｂ（＝消費期限残日数）に基づくお勧め商品候補から３件、判定要素Ｃ（＝在庫数）に基づくお勧め商品候補から３件を一覧表上に表示させるように指定されている。尚、これらのフィールド１１ｆ〜ｈの初期値は、そのフィールドの直上の判定要素アイテムに対応するお勧め商品候補の総件数であり、優先度指定カテゴリ１１ａにおいてアイテムの順番が並べ替えられた場合には、これらのフィールド１１ｆ〜ｈの数値も付随して並べ替える。
お勧め商品一覧表の表示ボタン１１ｉは、マウス又はキーボード等により押下することが可能であり、これが使用者により押下されると、ステップＳ７に移行する。
【００３４】
ステップＳ７において、お勧め商品情報作成部４は、ステップＳ２〜４で作成したお勧め商品候補（粗利額）抽出結果ファイル２ｃ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄ、及びお勧め商品候補（在庫数）抽出結果ファイル２ｅ、並びに、ステップＳ６で取得した判定要素Ａ〜Ｃ間での優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数に基づいて、お勧め商品一覧表上に表示する商品情報を抽出し、お勧め商品情報ファイル２ｆを作成する。
詳細には、指定された優先度の高い順に、各判定要素に対応するお勧め商品候補抽出結果ファイルから、指定された表示件数分だけ商品情報を取得する。
取得した商品情報の商品コードを含む行が、お勧め商品情報ファイル２ｆ中に存在しない場合には、「商品コード」、「商品名」、「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、「判定要素Ｃ（在庫数）」の項目を含む新たな行を、お勧め商品情報ファイル２ｆに追加する。このとき、「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、及び「判定要素Ｃ（在庫数）」の項目の中で、その判定要素に対応する項目の値はＴＲＵＥで、他の判定要素に対応する項目の値はＦＡＬＳＥで初期化する。
取得した商品情報の商品コードを含む行が、お勧め商品情報ファイル２ｆ中に既に存在する場合には、「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、及び「判定要素Ｃ（在庫数）」の項目の中で、その判定要素に対応する項目の値をＦＡＬＳＥからＴＲＵＥに書き換える。
【００３５】
以下に、図４〜図６、及び図７を例として上記動作を具体的に説明する。
この例では、判定要素Ａ〜Ｃ間での優先度が、判定要素Ａ（＝粗利額）＞判定要素Ｂ（＝消費期限残日数）＞判定要素Ｃ（＝在庫数）と指定され、判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数が、判定要素Ａ（＝粗利額）２件、判定要素Ｂ（＝消費期限残日数）３件、判定要素Ｃ（＝在庫数）３件と指定されているものとする。
【００３６】
はじめに、優先度が最も高い判定要素Ａ（＝粗利額）に対応するお勧め商品候補（粗利額）抽出結果ファイル２ｃ（図４参照）から、上位２件を抽出する。すなわち、商品コード０００５のウイスキー及び商品コード０００４の日本酒を抽出する。商品コード０００５及び商品コード０００４を含む行は、お勧め商品情報ファイル２ｆには、この段階ではまだ存在しないので、新たな行を追加する。このとき、「判定要素Ａ（粗利額）」の項目の値をＴＲＵＥで初期化し、「判定要素Ｂ（消費期限残日数）」及び「判定要素Ｃ（在庫数）」の項目の値をＦＡＬＳＥで初期化する。
【００３７】
次に、優先度が２番目に高い判定要素Ｂ（＝消費期限残日数）に対応するお勧め商品候補（消費期限残日数）抽出結果ファイル２ｄ（図５参照）から、上位３件を抽出する。すわわち、商品コード０００１の生ビール、商品コード０００２の黒ビール、及び商品コード０００３の焼酎を抽出する。商品コード０００１、商品コード０００２、及び商品コード０００３を含む行は、お勧め商品情報ファイル２ｆには、この段階ではまだ存在しないので、新たな行を追加する。このとき、「判定要素Ｂ（消費期限残日数）」の項目の値をＴＲＵＥで初期化し、「判定要素Ａ（粗利額）」及び「判定要素Ｃ（在庫数）」の項目の値をＦＡＬＳＥで初期化する。
【００３８】
最後に、優先度が最も低い判定要素Ｃ（＝在庫数）に対応するお勧め商品候補（在庫数）抽出結果ファイル２ｅ（図６参照）から、上位３件を抽出する。すなわち、商品コード０００８のラム酒、商品コード０００１の生ビール、及び商品コード０００７の白ワインを抽出する。商品コード０００１を含む行は、既にお勧め商品情報ファイル２ｆに存在するので、その行の「判定要素Ｃ（在庫数）」の項目の値をＦＡＬＳＥからＴＲＵＥに書き換える。結果として、商品コード０００１を含む行は、「判定要素Ａ（粗利額）」の項目の値はＦＡＬＳＥ、「判定要素Ｂ（消費期限残日数）」及び「判定要素Ｃ（在庫数）」の項目の値はＴＲＵＥになる。商品コード０００８及び商品コード０００７を含む行は、お勧め商品情報ファイル２ｆには、この段階ではまだ存在しないので、新たな行を追加する。このとき、「判定要素Ｃ（在庫数）」の項目の値をＴＲＵＥで初期化し、「判定要素Ａ（粗利額）」及び「判定要素Ｂ（消費期限残日数）」の項目の値をＦＡＬＳＥで初期化する。
【００３９】
以上の操作が全て終了した後のお勧め商品情報ファイル２ｆは、図７に示すような状態になる。このとき、お勧めの順位が高い順に商品情報が並んでいる。
【００４０】
ステップＳ８において、お勧め商品情報作成部４は、お勧め商品情報ファイル２ｆに基づいて「お勧め商品一覧表の表示画面」をデータ表示部５に表示させ、使用者にお勧めとなる商品の順位、商品名、及び判定要素Ａ〜Ｃの中のどの要素によってお勧めと判定されたかを示す。その後、使用者によりＯＫボタンが押下されると処理を終了する。
図１２に「お勧め商品一覧表の表示画面」の一例を示す。図１２に示す例では、「順位」、「商品名」、「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、「判定要素Ｃ（在庫数）」の項目を持つ。「順位」の項目は商品のお勧めの順位を表示し、「商品名」の項目は商品の名称を表示する。「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、及び「判定要素Ｃ（在庫数）」の項目は、商品がその判定要素に基づいてお勧め商品と判定された場合には○を表示し、そうでない場合には何も表示しない。この例では、お勧め商品として７件の商品が抽出されており、最もお勧めの順位が高いのはウイスキーであり、判定要素Ａ（＝粗利額）によってお勧めであると判定されている。また、お勧めの順位が３番目の生ビールは、判定要素Ｂ（＝消費期限残日数）及び判定要素Ｃ（＝在庫数）によってお勧めであると判定されている。
【００４１】
以上のように動作するお勧め商品管理システム１０の使用例を、以下に説明する。
まず、お勧め商品管理プログラム（図示せず）を実行させる前に、販売店の店員等は、お勧め商品管理システム１０の使用者として商品管理データベース２の商品情報管理マスタファイル２ａに自店で取り扱う商品の情報を入力する。また、日々の業務において、入荷在庫管理ファイル２ｂに、商品の入荷と在庫の情報を入力する。入荷在庫管理ファイル２ｂの「消費期限残日数（日）」は、お勧め商品管理プログラムが実行にタイミングに合わせて、仕入日とシステムで保持するシステム日付により、算出されるものであり、「消費期限残日数（日）」は実行のタイミングで更新される。
図２に示す例では、商品情報管理マスタファイル２ａに、８種類の商品の情報が入力され格納されている。また、図３に示す例では、入荷在庫管理ファイル２ｂに、２月１日に入荷した８種類の商品の情報、及び２月２０日に入荷した２種類の商品の情報が入力され格納されている。
【００４２】
使用者によりお勧め商品管理プログラムの実行が開始されると、お勧め商品管理システム１０は、ステップＳ１において、「お勧め商品候補基準値の入力画面（図９参照）」を表示し、使用者に判定要素Ａ〜Ｃに各々対応する基準値である粗利額抽出基準値、消費期限残日数抽出基準値、及び在庫数抽出基準値の入力を促す。
【００４３】
使用者が「お勧め商品候補基準値の入力画面」において、粗利額抽出基準値、消費期限残日数抽出基準値、及び在庫数抽出基準値を入力した後、お勧め商品候補抽出ボタン９ｄを押下すると、お勧め商品管理システム１０は、ステップＳ２〜４において、商品情報管理マスタファイル２ａ、入荷在庫管理ファイル２ｂ、並びに、使用者により指定された粗利額抽出基準値、消費期限残日数抽出基準値、及び在庫数抽出基準値に基づいて、お勧め商品候補（粗利額）抽出結果ファイル２ｃ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄ、及びお勧め商品候補（在庫数）抽出結果ファイル２ｅを作成する。
続いて、お勧め商品管理システム１０は、ステップＳ５において、「お勧め商品候補件数の表示画面（図１０参照）」を表示し、粗利額抽出基準、消費期限残日数抽出基準、及び在庫数抽出基準を満たす商品が、それぞれ何件存在するかを使用者に示す。
【００４４】
使用者が優先度と表示件数の指定ボタン１０ｄを押下すると、お勧め商品管理システム１０は「優先度と表示件数の指定画面（図１１参照）」を表示し、使用者に判定要素Ａ〜Ｃ間での優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数を指定するように促す。
【００４５】
使用者が、判定要素Ａ〜Ｃ間での優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数を指定し、お勧め商品一覧表の表示ボタン１１ｉを押下すると、お勧め商品管理システム１０は、ステップＳ７において、ステップＳ２〜４で作成したお勧め商品候補（粗利額）抽出結果ファイル２ｃ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄ、及びお勧め商品候補（在庫数）抽出結果ファイル２ｅ、並びに、ステップＳ６で取得した判定要素Ａ〜Ｃ間での優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数に基づいて、お勧め商品情報ファイル２ｆを作成する。
続いて、お勧め商品管理システム１０は、ステップＳ８において、「お勧め商品一覧表の表示画面（図１２参照）」を表示し、使用者にお勧めとなる商品の順位、商品名、判定要素Ａ〜Ｃの中のどの要素によってお勧めと判定されたかを示す。その後、使用者によりＯＫボタンが押下されると処理を終了する。
【００４６】
以上説明されるように、本発明に係るお勧め商品管理システム１０によれば、使用者により「お勧め商品候補基準値の入力画面（図９参照）」で指定された判定要素Ａ〜Ｃに各々対応する基準値である粗利額抽出基準値、消費期限残日数抽出基準値、及び在庫数抽出基準値に基づいて抽出したお勧め商品候補の件数を「お勧め商品候補件数の表示画面（図１０参照）」に表示した後、使用者により「優先度と表示件数の指定画面（図１１参照）」で指定された判定要素Ａ〜Ｃ間での優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数に基づいて「お勧め商品一覧表の表示画面（図１２参照）」を表示する。そのため、販売店員の経験や勘に依存することなく、指定された条件に基づいて、お勧め商品を自動的に抽出することができる。
【００４７】
また、使用者は、判定要素Ａ〜Ｃに各々対応する基準値である粗利額抽出基準値、消費期限残日数抽出基準値、及び在庫数抽出基準値に基づいて抽出されたお勧め商品候補の件数を「お勧め商品候補件数の表示画面（図１０参照）」上で把握した後、判定要素Ａ〜Ｃ間の優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数を指定できるので、販売戦略に応じたお勧め商品を抽出することができる。
【００４８】
また、使用者は、どの判定要素によりお勧め商品と判定されたのかが「お勧め商品一覧表の表示画面（図１２）」の「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、及び「判定要素Ｃ（在庫数）」の項目の値により把握できるので、販売戦略を立案しやすい。例えば、販売することにより利益に繋がりやすい商品の把握が可能になり、それらの商品を優先して販売することができる。或いは、消費期限が差し迫っている商品や在庫が過剰である商品の把握が可能になり、それらの商品を効率よく販売することができる。
【００４９】
実施の形態２．
次に、本発明の実施の形態２に係るお勧め商品管理システムについて説明する。
実施の形態１では、同一種別（商品コードが同一）であるが仕入日の異なる商品が存在する場合、複数の消費期限残日数の中で最も短いものをその商品種別（商品コード）に対応する消費期限残日数とし、それらの在庫数の総和をその商品種別に対応する在庫数として取り扱っていた。それに対して、実施の形態２では、同一種別であるが仕入日の異なる商品が存在する場合、それらを区別して取り扱う。
以下、実施の形態１と同一の構成及び同一の動作については説明を省略し、実施の形態１と異なる構成及び動作についてのみ詳細に説明する。
【００５０】
本発明の実施の形態２に係るお勧め商品管理システムは、実施の形態１と同様に、判定要素Ａ＝粗利額、判定要素Ｂ＝消費期限残日数、及び判定要素Ｃ＝在庫数という予め定められた３つの判定要素をもつ。お勧め商品管理システムは、使用者により指定された判定要素Ａ〜Ｃに各々対応する基準値に基づいてお勧め商品候補を抽出し、各々の件数を表示した後、使用者により指定された判定要素Ａ〜Ｃ間の優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数に基づいてお勧め商品一覧表を表示する。
図１３に、本発明の実施の形態２に係るお勧め商品管理システムの構成の一例を示す。ここで、商品管理データベース１０２、お勧め商品候補抽出部１０３、及びお勧め商品情報作成部１０４の構成以外は、実施の形態１（図１参照）と同一である。
商品管理データベース１０２は、実施の形態１と同様に、商品情報管理マスタファイル２ａ、仕入在庫管理ファイル２ｂ、お勧め商品候補（粗利額）抽出結果ファイル２ｇ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｈ、お勧め商品候補（在庫数）抽出結果ファイル２ｉ、及びお勧め商品情報ファイル２ｊを含む。
これらのうち、商品情報管理マスタファイル２ａ及び仕入在庫管理ファイル２ｂの構成は、実施の形態１（図２及び図３参照）と同一である。
お勧め商品候補（粗利額）抽出結果ファイル２ｇ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｈ、お勧め商品候補（在庫数）抽出結果ファイル２ｉ、及びお勧め商品情報ファイル２ｊの構成について、図１４〜１７を用いて以下に説明する。尚、以下の説明で、「商品コード」と「商品名」は、図２の説明で述べたものと同じものであり、「仕入日」は図３の説明で述べたものと同じものである。
【００５１】
図１４に、お勧め商品候補（粗利額）抽出結果ファイル２ｇの構成の一例を示す。「商品コード」と「仕入日」は複合キーとして、この一時データベースファイルの主キーとなる。「粗利額」と「判定値」は、図４の説明で述べたものと同じものである。
【００５２】
図１５に、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｈの構成の一例を示す。「商品コード」と「仕入日」は複合キーとして、この一時データベースファイルの主キーとなる。「消費期限残日数」と「判定値」は、図５の説明で述べたものと同じものである。
【００５３】
図１６に、お勧め商品候補（在庫数）抽出結果ファイル２ｉの構成の一例を示す。「商品コード」と「仕入日」は複合キーとして、この一時データベースファイルの主キーとなる。「在庫数」と「判定値」は、図６の説明で述べたものと同じものである。
【００５４】
図１７に、お勧め商品情報ファイル２ｊの構成の一例を示す。「商品コード」と「仕入日」は複合キーとして、この一時データベースファイルの主キーとなる。「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、及び「判定要素Ｃ（在庫数）」は、図７の説明で述べたものと同じものである。
【００５５】
以上のように構成される本発明の実施の形態２に係るお勧め商品管理システム１００における処理の流れを、図１８に示すフローチャートを用いて説明する。
図１８は、お勧め商品候補抽出部１０３、及びお勧め商品情報作成部１０４が、使用者の指示を受けて、お勧め商品一覧表を表示する際の処理の流れを説明するフローチャートである。
尚、実施の形態１と同一の動作については説明を省略し、実施の形態１と異なる動作についてのみ詳細に説明する。
【００５６】
ステップＳ１０１において、お勧め商品候補抽出部１０３は「お勧め商品候補基準値の入力画面（図９参照）」をデータ表示部５に表示させ、使用者にお勧め商品候補の抽出基準、すなわち、判定要素Ａ〜Ｃに各々対応する基準値である粗利額抽出基準値、消費期限残日数抽出基準値、及び在庫数抽出基準値を指定させる。
【００５７】
ステップＳ１０２において、お勧め商品候補抽出部１０３は、商品情報管理マスタファイル２ａ及び仕入在庫管理ファイル２ｂからステップＳ１０１で取得した粗利額抽出基準値に基づいて、粗利額抽出基準を満たす商品情報を抽出し、お勧め商品候補（粗利額）抽出結果ファイル２ｇ（図１４参照）を作成する。
詳細には、商品情報管理マスタファイル２ａの各行の商品情報に対して、売値項目の値から仕入値項目の値を減算することにより粗利額を算出した後、式（１）で定義される判定値を算出する。ここで、判定値が１以上の場合は、仕入在庫管理ファイル２ｂより商品コードをキーとして商品の仕入日を取得した後、その行に対応付けられた商品に関する「商品コード」、「仕入日」、「商品名」、「粗利額」、及び「判定値」の項目を含む新たな行を、お勧め商品候補（粗利額）抽出結果ファイル２ｇに追加する。判定値が１未満の場合は追加しない。
商品情報管理マスタファイル２ａに格納されている全ての商品情報に対して上記の操作を行った後、お勧め商品候補（粗利額）抽出結果ファイル２ｇの各行を判定値の降順にソートする。
尚、商品情報管理マスタファイル２ａの各行の商品情報に対して、仕入在庫管理ファイル２ｂより、商品コードをキーとして商品の仕入日を取得する際に、その商品コードに対して複数の行が存在する場合もありえる。このような場合には、これらを区別して取り扱う。
例えば図３では、商品コード０００１の商品（図２より、これは生ビールである）は２月１日に仕入れられたものと、２月２０日に仕入れられたものが存在する。この場合、（各々の判定値が１以上であれば）商品コード０００１で仕入日が２月１日の行と、商品コード０００１で仕入日が２月２０日の行を、お勧め商品候補（粗利額）抽出結果ファイル２ｇに追加する。
【００５８】
ステップＳ１０３において、お勧め商品候補抽出部１０３は、商品情報管理マスタファイル２ａ及び仕入在庫管理ファイル２ｂからステップＳ１０１で取得した消費期限残日数抽出基準値に基づいて、消費期限残日数抽出基準を満たす商品情報を抽出し、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｈ（図１５参照）を作成する。
詳細には、商品情報管理マスタファイル２ａの各行の商品情報に対して、仕入在庫管理ファイル２ｂより商品コードをキーとして商品の仕入日及び消費期限残日数を取得した後、式（２）で定義される判定値を算出する。ここで、判定値が１以上の場合は、その行に対応付けられた商品に関する「商品コード」、「仕入日」、「商品名」、「消費期限残日数」、及び「判定値」の項目を含む新たな行を、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｈに追加する。判定値が１未満の場合は追加しない。
商品情報管理マスタファイル２ａに格納されている全ての商品情報に対して上記の操作を行った後、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｈの各行を判定値の降順にソートする。
尚、商品情報管理マスタファイル２ａの各行の商品情報に対して、仕入在庫管理ファイル２ｂより商品コードをキーとして商品の仕入日及び消費期限残日数を取得する際に、その商品コードに対して複数の行が存在する場合もありえる。このような場合には、これらを区別して取り扱う。
例えば図３では、商品コード０００１の商品（図２より、これは生ビールである）は２月１日に仕入れられ消費期限残日数が５日のものと、２月２０日に仕入れられ消費期限残日数が５５日のものが存在する。この場合、（各々の基準値が１以上であれば）商品コード０００１で仕入日が２月１日の行と、商品コード０００１で仕入日が２月２０日の行を、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｈに追加する。
【００５９】
ステップＳ１０４において、お勧め商品候補抽出部１０３は、商品情報管理マスタファイル２ａ及び仕入在庫管理ファイル２ｂからステップＳ１０１で取得した在庫数抽出基準値に基づいて、在庫数抽出基準を満たす商品情報を抽出し、お勧め商品候補（在庫数）抽出結果ファイル２ｉ（図１６参照）を作成する。
詳細には、商品情報管理マスタファイル２ａの各行の商品情報に対して、仕入在庫管理ファイル２ｂより商品コードをキーとして商品の仕入日及び在庫数を取得した後、式（３）で定義される判定値を算出する。ここで、判定値が１以上の場合は、その行に対応付けられた商品に関する「商品コード」、「仕入日」、「商品名」、「在庫数」、及び「判定値」を含む新たな行を、お勧め商品（在庫数）抽出結果ファイル２ｉに追加する。判定値が１未満の場合は追加しない。
商品情報管理マスタファイル２ａに格納されている全ての商品情報に対して上記の操作を行った後、お勧め商品候補（在庫数）抽出結果ファイル２ｉの各行を判定値の降順にソートする。
尚、商品情報管理マスタファイル２ａの各行の商品情報に対して、仕入在庫管理ファイル２ｂより商品コードをキーとして商品の仕入日及び在庫数を取得する際に、その商品コードに対して複数の行が存在する場合もありえる。このような場合には、これらを区別して取り扱う。
例えば図３では、商品コード０００１の商品（図２より、これは生ビールである）は２月１日に仕入れられ在庫数が１０個のものと、２月２０日に仕入れられ在庫数が１００個のものが存在する。この場合、（各々の基準値が１以上であれば）商品コード０００１で仕入日が２月1日の行と、商品コード０００１で仕入日が２月２０日の行を、お勧め商品候補（在庫数）抽出結果ファイル２ｉに追加する。
【００６０】
ステップＳ１０５において、お勧め商品候補抽出部１０３は「お勧め商品候補件数の表示画面（図１０参照）」をデータ表示部５に表示させ、使用者に判定要素Ａ〜Ｃに各々対応する抽出基準である粗利額抽出基準、消費期限残日数抽出基準、及び在庫数抽出基準を満たす商品が、それぞれ何件存在するかを示すとともに、判定要素Ａ〜Ｃ間での優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数を指定するボタンを押下するように促す。
【００６１】
ステップＳ１０６において、お勧め商品情報作成部１０４は「優先度と表示件数の指定画面（図１１参照）」をデータ表示部５に表示させ、使用者にお勧め商品一覧表を表示する際の判定要素Ａ〜Ｃ間での優先度、すなわち、判定要素Ａ（＝粗利額）、判定要素Ｂ（＝消費期限残日数）、及び判定要素Ｃ（＝在庫数）の間での優先度を指定させる。また、抽出基準を満たした各々のお勧め商品候補の中から、お勧め商品一覧表上に表示する商品の件数を指定させる。
【００６２】
ステップＳ１０７において、お勧め商品情報作成部１０４は、ステップＳ１０２〜１０４で作成したお勧め商品候補（粗利額）抽出結果ファイル２ｇ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｈ、及びお勧め商品候補（在庫数）抽出結果ファイル２ｉ、並びに、ステップＳ１０６で取得した判定要素Ａ〜Ｃ間での優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数に基づいて、お勧め商品一覧表上に表示する商品情報を抽出し、お勧め商品情報ファイル２ｊ（図１７参照）を作成する。
詳細には、指定された優先度の高い順に、各判定要素に対応するお勧め商品候補抽出結果ファイルから、指定された表示件数分だけ商品情報を取得する。
取得した商品情報の商品コード及び仕入日からなる複合キーを含む行が、お勧め商品情報ファイル２ｊ中に存在しない場合には、「商品コード」、「仕入日」、「商品名」、「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、「判定要素Ｃ（在庫数）」の項目を含む新たな行を、お勧め商品情報ファイル２ｊに追加する。このとき、「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、及び「判定要素Ｃ（在庫数）」の項目の中で、その判定要素に対応する項目の値はＴＲＵＥで、他の判定要素に対応する項目の値はＦＡＬＳＥで初期化する。
取得した商品情報の商品コード及び仕入日からなる複合キーを含む行が、お勧め商品情報ファイル２ｊ中に既に存在する場合には、「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、及び「判定要素Ｃ（在庫数）」の項目の中で、その判定要素に対応する項目の値をＦＡＬＳＥからＴＲＵＥに書き換える。
【００６３】
ステップＳ１０８において、お勧め商品情報作成部１０４は、お勧め商品情報ファイル２ｊに基づいて「お勧め商品一覧表の表示画面（図１９参照）」をデータ表示部５に表示させ、使用者にお勧めとなる商品の順位、商品名、仕入日、及び判定要素Ａ〜Ｃの中のどの要素によってお勧めと判定されたかを示す。その後、使用者によりＯＫボタンが押下されると処理を終了する。
【００６４】
上述の実施の形態１及び２では、ステップＳ２〜４，Ｓ１０２〜１０４を実行する順番は任意に入れ換えてよい。また、ステップＳ２〜４，Ｓ１０２〜１０４を複数のプロセッサにより並列に実行させてもよい。
【００６５】
上述の実施の形態１及び２では、お勧め商品管理システム１０，１００のデータ入力部１とデータ表示部５とは別構成となっていたが、タッチパネル等の機器を用いることにより、これらを兼用させてもよい。
【００６６】
上述の実施の形態１及び２では、お勧め商品管理システム１０，１００の商品管理データベース２，１０２における販売店での商品管理情報を格納するファイルは、商品情報管理マスタファイル２ａと仕入在庫管理ファイル２ｂとで構成されていたが、実際の販売業務の際に必要となる他の多くの項目を追加し、またさらに分割した構成としてもよい。
【００６７】
上述の実施の形態１及び２では、ステップＳ１，Ｓ１０１において、使用者に判定要素Ａ〜Ｃに各々対応する基準値を指定させ、ステップＳ２〜５，Ｓ１０２〜１０５において、お勧め商品候補を抽出し各々の件数を表示した後、ステップＳ６，Ｓ１０６において、使用者に判定要素Ａ〜Ｃ間の優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数を指定させていた。
変形例として、判定要素Ａ〜Ｃ間の優先度及び判定要素Ａ〜Ｃに各々対応するお勧め商品の表示件数のうちの少なくとも一方は、ステップＳ１，Ｓ１０１において使用者に指定させ、残りの一方のみをステップＳ６，Ｓ１０６において使用者に指定させるようにしてもよい。
【００６８】
上述の実施の形態１及び２では、ステップＳ２〜４，Ｓ１０２〜１０４において、お勧め商品候補を抽出し、お勧め商品候補（粗利額）抽出結果ファイル２ｃ，２ｇ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄ，２ｈ、及びお勧め商品候補（在庫数）抽出結果ファイル２ｅ，２ｉを作成する際には各々の商品に関して式（１）〜（３）で定義される「判定値」を算出していた。
変形例として、判定値を算出するのではなく、使用者により指定された基準値よりも大きい／小さい要素値をもつ行だけを抽出した後、これらを降順／昇順にソートすることにより、お勧め商品候補（粗利額）抽出結果ファイル２ｃ，２ｇ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄ，２ｈ、及びお勧め商品候補（在庫数）抽出結果ファイル２ｅ，２ｉを作成してもよい。
例えば、粗利額抽出基準値が３００円以上と指定された場合、商品情報管理マスタファイル２ａを参照して粗利額が３００円以上の商品を抽出した後、これらを粗利額の降順にソートすることにより、お勧め商品候補（粗利額）抽出結果ファイル２ｃ，２ｇを作成する。
【００６９】
上述の実施の形態１及び２では、ステップＳ２〜４，Ｓ１０２〜１０４において、お勧め商品候補抽出部３，１０３により、お勧め商品候補（粗利額）抽出結果ファイル２ｃ，２ｇ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄ，２ｈ、及びお勧め商品候補（在庫数）抽出結果ファイル２ｅ，２ｉを作成する際に、判定値が同一の商品の間での順位は不定であった。
変形例として、ステップＳ７，Ｓ１０７におけるお勧め商品情報ファイル２ｆ，２ｊの作成処理を行う前に、判定値が同一の商品を、他の判定要素を優先度の高い順に用いてソートしてもよい。
例えば、図５に示すお勧め商品候補（消費期限残日数）抽出結果ファイル２ｄでは、商品コード０００４の日本酒、商品コード０００６の赤ワイン、及び商品コード０００７の白ワインの判定値は１．００と同一であり、これらの商品の間での順位は不定である。
判定要素Ａ〜Ｃ間の優先度が判定要素Ａ（＝粗利額）＞判定要素Ｂ（＝消費期限残日数）＞判定要素Ｃ（＝在庫数）と指定されているとすると、ステップＳ７の処理を行う前に、まず商品管理マスタファイル２ａを参照してこれら３つの商品の粗利額を算出し、粗利額の降順にソートする。図２に示す例では、日本酒の粗利額は５００円、赤ワイン及び白ワインの粗利額は４００円である。それゆえ、これら３つの商品の間での順位は、１位は日本酒に確定するが赤ワインと白ワインの間での順位は未だ確定しない。
次に、仕入在庫管理ファイル２ｂを参照して、赤ワインと白ワインの在庫数を取得する。図３に示す例では、赤ワインの在庫数は１０個、白ワインの在庫数は１００個である。それゆえ、２位は白ワイン、３位は赤ワインとなる。
以上の操作により、上記３つの商品の間での順位は、日本酒、白ワイン、赤ワインの順となる。
【００７０】
上述の実施の形態２では、同一種別（商品コードが同一）であるが仕入日の異なる商品が存在する場合、それらを区別して取り扱っていた。
変形例として、在庫数については、仕入日の異なる同一種別の商品を区別して取り扱わずに、複数の仕入日における在庫数の総和として取り扱ってもよい。
詳細には、図１８に示したお勧め商品一覧表の表示のフローチャートにおいて、ステップＳ１０４の処理の代わりに、実施の形態１で述べたステップＳ４の処理を行い、お勧め商品候補（在庫数）抽出結果ファイル２ｅ（図６参照）を作成する。
また、ステップＳ１０７の処理において、お勧め商品候補（在庫数）抽出結果ファイル２ｅから、指定された表示件数分だけ商品情報を取得し、お勧め商品情報ファイル２ｋ（図２０参照）に追加する際、以下のように行う。
取得した商品情報の商品コードを含む行が、お勧め商品情報ファイル２ｋ中に存在しない場合には、「商品コード」、「仕入日」、「商品名」、「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、「判定要素Ｃ（在庫数）」の項目を含む新たな行を、お勧め商品情報ファイル２ｋに追加する。このとき、「仕入日」の項目の値はＮＵＬＬで初期化する。また、「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、及び「判定要素Ｃ（在庫数）」の項目の中で、その判定要素に対応する項目の値はＴＲＵＥで、他の判定要素に対応する項目の値はＦＡＬＳＥで初期化する。
取得した商品情報の商品コードを含む行が、お勧め商品情報ファイル２ｋ中に既に存在する場合には、「判定要素Ａ（粗利額）」、「判定要素Ｂ（消費期限残日数）」、及び「判定要素Ｃ（在庫数）」の項目の中で、その判定要素に対応する項目の値をＦＡＬＳＥからＴＲＵＥに書き換える。
最後に、ステップＳ１０８の処理において、「お勧め商品一覧表の表示画面（図２１参照）」を表示する際に、お勧め商品情報ファイル２ｋの「仕入日」の項目の値がＮＵＬＬの場合には、「仕入日」を表示する箇所に横線を表示する。
【００７１】
上述の実施の形態１及び２では、お勧め商品管理システム１０，１００を構成するデータ入力部１、商品管理データベース２，１０２、お勧め商品候補抽出部３，１０３、お勧め商品情報作成部４，１０４、及びデータ表示部５は、単一のコンピュータに含まれている。
変形例として、これらは複数のコンピュータに分散して設けられていてもよい。
例えば、あるコンピュータが商品管理サーバとして、商品情報管理マスタファイル２ａ及び仕入在庫管理ファイル２ｂを有し、別のコンピュータがお勧め商品候補抽出サーバとして、お勧め商品候補抽出部３，１０３を有し、お勧め商品候補（粗利額）抽出結果ファイル２ｃ，２ｇ、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄ，２ｈ、お勧め商品候補（在庫数）抽出結果ファイル２ｅ，２ｉを作成し、さらに別のコンピュータがお勧め商品情報作成サーバとして、お勧め商品情報作成部４，１０４を有し、お勧め商品情報ファイル２ｆ，２ｊを作成し、さらに別のコンピュータがクライアントマシンとして、データ入力部１及びデータ表示部５を有し、商品情報の入力及びお勧め商品一覧表の表示を行い、これらがネットワーク等を介して互いに通信しあうことにより、お勧め商品管理システム１０，１００を構成してもよい。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施の形態１に係る、お勧め商品管理システムの構成の一例を示す。
【図２】本発明に係る商品情報管理マスタファイル２ａの構成の一例を示す。
【図３】本発明に係る仕入在庫管理ファイル２ｂの構成の一例を示す。
【図４】本発明の実施の形態１に係る、お勧め商品候補（粗利額）抽出結果ファイル２ｃの構成の一例を示す。
【図５】本発明の実施の形態１に係る、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｄの構成の一例を示す。
【図６】本発明の実施の形態１に係る、お勧め商品候補（在庫数）抽出結果ファイル２ｅの構成の一例を示す。
【図７】本発明の実施の形態１に係る、お勧め商品情報ファイル２ｆの構成の一例を示す。
【図８】本発明の実施の形態１に係る、お勧め商品候補抽出部３及びお勧め商品情報作成部４が、使用者の指示を受けてお勧め商品一覧表を表示する際の処理の流れを説明するフローチャートである。
【図９】本発明に係る、お勧め商品候補基準値の入力画面の一例を示す。
【図１０】本発明に係る、お勧め商品候補件数の表示画面の一例を示す。
【図１１】本発明に係る、優先度と表示件数の指定画面の一例を示す。
【図１２】本発明の実施の形態１に係る、お勧め商品一覧表の表示画面の一例を示す。
【図１３】本発明の実施の形態２に係る、お勧め商品管理システムの構成の一例を示す。
【図１４】本発明の実施の形態２に係る、お勧め商品候補（粗利額）抽出結果ファイル２ｇの構成の一例を示す。
【図１５】本発明の実施の形態２に係る、お勧め商品候補（消費期限残日数）抽出結果ファイル２ｈの構成の一例を示す。
【図１６】本発明の実施の形態２に係る、お勧め商品候補（在庫数）抽出結果ファイル２ｉの構成の一例を示す。
【図１７】本発明の実施の形態２に係る、お勧め商品情報ファイル２ｊの構成の一例を示す。
【図１８】本発明の実施の形態２に係る、お勧め商品候補抽出部１０３及びお勧め商品情報作成部１０４が、使用者の指示を受けてお勧め商品一覧表を表示する際の処理の流れを説明するフローチャートである。
【図１９】本発明の実施の形態２に係る、お勧め商品一覧表の表示画面の一例を示す。
【図２０】本発明の実施の形態２の変形例に係る、お勧め商品情報ファイル２ｋの構成の一例を示す。
【図２１】本発明の実施の形態２の変形例に係る、お勧め商品一覧表の表示画面の一例を示す。
【符号の説明】
【００７３】
１  データ入力部、２  商品管理データベース、３  お勧め商品抽出部、４  お勧め商品情報作成部、５  データ表示部、１０  お勧め商品管理システム。
【図１】
0004719761.tif 000002
【図２】
0004719761.tif 000003
【図３】
0004719761.tif 000004
【図４】
0004719761.tif 000005
【図５】
0004719761.tif 000006
【図６】
0004719761.tif 000007
【図７】
0004719761.tif 000008
【図８】
0004719761.tif 000009
【図９】
0004719761.tif 000010
【図１０】
0004719761.tif 000011
【図１１】
0004719761.tif 000012
【図１２】
0004719761.tif 000013
【図１３】
0004719761.tif 000014
【図１４】
0004719761.tif 000015
【図１５】
0004719761.tif 000016
【図１６】
0004719761.tif 000017
【図１７】
0004719761.tif 000018
【図１８】
0004719761.tif 000019
【図１９】
0004719761.tif 000020
【図２０】
0004719761.tif 000021
【図２１】
0004719761.tif 000022