(58)【調査した分野】(Int.Cl.,DB名)
1ケースに格納される物品の数であるピース数の最大値を示すケース入数情報と、前記物品のケースごとの作業工数単価及びピースごとの作業工数単価を示す作業工数単価情報と、前記物品の納品先ごとの発注数を示す発注情報と、前記各納品先が発注数に追加して受け入れ可能な前記物品の数を決定する条件を示す受入条件情報と、前記物品の納品先ごとの過去の発注数を示す過去発注情報と、を保持する記憶部と、
前記発注情報及び前記受入条件情報に基づいて、前記各納品先が受け入れ可能な前記物品の数の最大値である受入最大数を計算し、少なくとも一つの前記納品先の発注数を前記受入最大数を超えない範囲で増加させた一つ以上の発注数案を生成する発注数算出部と、
前記ケース入数情報及び前記作業工数単価情報に基づいて、前記発注数案ごとの物流費を算出し、前記発注数の変更前と比較して前記物流費が小さくなる一つ以上の発注数案を抽出する発注数抽出部と、
前記抽出された一つ以上の発注数案を出力する表示部と、を有し、
前記受入条件情報は、前記納品先ごとに、発注された物品の数に追加して受け入れ可能な物品の具体的な数を指定する情報、及び、過去の発注数を基準とした数を示す情報のいずれかを含むことを特徴とする物流支援システム。
【発明を実施するための形態】
【0012】
以下、図面を用いて本発明の実施例を説明する。
【0013】
図1は、本発明の実施例の推奨発注数算出装置の機能構成の例を示すブロック図である。
【0014】
推奨発注数算出装置100は、後述する推奨発注数の算出等を行うことで物流を支援する装置であり、入力部110、記憶部120、発注数算出部130、発注数抽出部140、及び表示部150を有する。
【0015】
入力部110は、装置の外部に保存されたデータ(外部データ)の読み込みを行うユーザインターフェースである。
【0016】
記憶部120は、入力部110で読み込んだデータを格納する。
【0017】
発注数算出部130は、商品マスタ情報121、過去発注情報123、過去配分情報124、受入条件情報125及び発注情報126を読込み、受入最大数情報127、需要予測情報128及び推奨発注数案情報129を算出する。
【0018】
発注数抽出部140は、作業工数マスタ情報122及び推奨発注数案情報129を読込み、物流費を削減する推奨発注数案を抽出する。
【0019】
表示部150は、受入最大数情報127と、作業工数マスタ情報122及び推奨発注数案情報129から算出された物流費が削減される案の物流費と、発注数変更店舗数と、を表示するためのユーザインターフェースである。
【0020】
推奨発注数算出装置100は、推奨発注数算出処理を実装した推奨発注数算出プログラム(図示省略)によって制御される。
【0021】
図2は、本発明の実施例の推奨発注数算出装置100のハードウェア構成およびシステム構成の例を示すブロック図である。
【0022】
推奨発注数算出装置100は、CPU(Central Processing Unit)201、RAM(Random Access Memory)210、ROM(Read Only Memory)220、補助記憶装置230、表示装置240、入力装置250、メディア読取装置260、及び通信装置270を有する。
【0023】
CPU201は、各種演算を実行するユニットである。CPU201は、補助記憶装置230からRAM210にロードした所定の推奨発注数算出プログラムを実行することによって、各種処理を実行する。すなわち、以下の説明において発注数算出部130及び発注数抽出部140が実行する処理は、実際にはCPU201が推奨発注数算出プログラムに従って実行する。また、入力部110及び表示部150が実行する処理は、実際にはCPU201が推奨発注数算出プログラムに従って入力装置250、メディア読取装置260、通信装置270及び表示装置240等を制御することによって実行される。
【0024】
推奨発注数算出プログラムは、例えば、OS(Operation System)プログラム上で実行可能なアプリケーションプログラムである。
【0025】
推奨発注数算出プログラムは、例えば、メディア読取装置260を介して可搬型記憶媒体から、補助記憶装置230にインストールされてもよい。
【0026】
RAM210は、CPU201により実行されるプログラム、及び、プログラムの実行に必要なデータなどを格納するメモリである。
【0027】
ROM220は、推奨発注数算出装置100の起動に必要なプログラムなどを格納するメモリである。
【0028】
補助記憶装置230は、例えば、HDD(Hard Disk Drive)などの装置である。補助記憶装置230は、フラッシュメモリなどを用いたSSD(Solid State Drive)であってもよい。
【0029】
表示装置240は、例えば、CRTディスプレイ、LCD(Liquid Crystal Display)、及び有機EL(Electro-Luminescence)ディスプレイなどの装置である。
【0030】
入力装置250は、例えば、キーボード、マウス、及びマイクなどの装置である。
【0031】
メディア読取装置260は、CD−ROM等の可搬性を有する可搬型記憶媒体の情報を読み出す装置である。
【0032】
通信装置270は、ネットワーク280を介して外部装置との間でデータの入出力を行う。
【0033】
推奨発注数算出装置100は、ネットワーク280を介して、Warehouse Management System(WMS)290から商品マスタ情報121、作業工数マスタ情報122、過去発注情報123及び過去配分情報124を取得してもよい。
【0034】
推奨発注数算出装置100は、ネットワーク280を介して、顧客システム292から、受入条件情報125及び発注情報126を取得してもよい。
【0035】
図3は、本発明の実施例の推奨発注数算出装置100が実行する推奨発注数算出処理の例を示すフローチャートである。
【0036】
推奨発注数算出処理では、次の(1)〜(3)の処理が実行される。(1)入力部110が外部データ読込み処理310を行い、記憶部120に格納する。(2)発注数算出部130及び発注数抽出部140が推奨発注数算出・抽出処理320を実施して、物流費を削減する発注数案を抽出する。(3)結果出力処理330では、記憶部120に格納された結果が検索され、表示部150に表示される。
【0037】
以下、
図3の各処理(1)〜(3)について
図4〜
図17を参照して説明する。
【0038】
(1)外部データ読込み処理310
図3の外部データ読込み処理310では、入力部110が外部データである商品マスタ情報、作業工数マスタ情報、過去発注情報、過去配分情報、受入条件情報及び発注情報を読込み、記憶部120に格納する。具体的には、メディア読取装置260または通信装置270が外部データを取り込み、補助記憶装置230に格納する。
【0039】
図4は、本発明の実施例の推奨発注数算出装置100が保持する商品マスタ情報121の例を示す説明図である。
【0040】
商品マスタ情報121は、少なくとも、商品コード410、商品名称420、及びケース入数430を定義するデータ項目を有する。商品コード410及び商品名称420は、各商品の品目を識別する情報である。これらは、それぞれ、
図5以降の商品コード510等及び商品名称520等に対応する。ケース入数430は、1つのケースに格納できる商品のピース数の最大値である。
【0041】
図5は、本発明の実施例の推奨発注数算出装置100が保持する作業工数マスタ情報122の例を示す説明図である。
【0042】
作業工数マスタ情報122は、少なくとも、商品コード510、商品名称520、ピース作業工数単価530及びケース作業工数単価540を定義するデータ項目を有する。商品コード510及び商品名称520は、各商品の品目を識別する情報である。ピース作業工数単価530は、商品単位の作業工数の単価(すなわち1ピース当たりの作業工数)である。ケース作業工数単価540は、梱包単位の作業工数の単価(すなわち1ケース当たりの作業工数)である。
【0043】
図6Aから
図6Cは、本発明の実施例の推奨発注数算出装置100が保持する過去発注情報123の例を示す説明図である。
【0044】
過去発注情報123には、少なくとも、日付610、店舗名称620、商品コード630及び発注数640を定義するデータ項目を有する。これらは、それぞれ、過去に実際に商品が発注された日付、その商品の納品先を識別する情報、その商品の品目を識別する情報、及びその商品が発注された個数(ピース数)である。
図6Aから
図6Cには、それぞれ、商品コードA0001からA0003に関する過去発注情報123を示す。
【0045】
図7は、本発明の実施例の推奨発注数算出装置100が保持する過去配分情報124の例を示す説明図である。
【0046】
過去配分情報124は、少なくとも、日付710、店舗名称720、商品コード730及び過去配分数740を定義するデータ項目を有する。これらは、それぞれ、過去に実際に商品の配分が行われた日付、その配分の対象となった納品先を識別する情報、配分された商品を識別する情報、及び配分された商品の個数(ピース数)である。ここで、配分とは、商品の発注数が追加されることであり、追加された分の数量が配分数である。
【0047】
図8は、本発明の実施例の推奨発注数算出装置100が保持する受入条件情報125の例を示す説明図である。
【0048】
受入条件情報125は、少なくとも、店舗名称810、商品コード820及び受入条件830を定義するデータ項目を有する。これらは、それぞれ、商品の納品先を識別する情報、商品の品目を識別する情報、及び、当該納品先の店舗が当該商品の配分を受け入れる条件(言い換えると、当該店舗が当該商品を最初に発注された数量に追加して受け入れ可能な数量を決定する条件)である。受入条件830としては、具体的な数の指定による条件のほか、過去の発注数を基準とする条件が設定されてもよい。これによって、各店舗の実情に合った発注数案を作成することができる。
【0049】
ここで、
図8に示した受入条件830の具体例について説明する。例えば、
図8の受入条件情報125の最初のレコードは、店舗名称が「納品先A」である店舗(以下、単に「納品先A」とも記載する。他の店舗についても同様)は、商品コードが「A0001」である商品(以下、単に「商品A0001」とも記載する。他の商品についても同様)の配分を、1日当たり2ピースまで受け入れ可能であること(言い換えると、例えば最初の発注数が「8」である場合、発注数を「9」又は「10」に変更可能であること)を示している。
【0050】
3番目のレコードは、納品先Aが商品A0003の配分を受け入れられないことを示している。
【0051】
6番目のレコードは、納品先Bが過去に受け入れた実績のある商品A0003の配分数の最大数までであれば、納品先Bが商品A0003の配分を受け入れられることを示している。
【0052】
9番目のレコードは、納品先Cが過去に商品A0003の配分を受け入れたことがあれば、納品先Cが商品A0003の配分を受け入れられることを示している。
【0053】
10番目及び11番目のレコードは、納品先Dが過去に商品A0001の配分を受け入れたことがあり、かつ、連続する4日間の配分数が5ピース以内であれば、納品先Dが商品A0001の配分を受け入れられることを示している。
【0054】
16番目及び17番目のレコードは、納品先Eが商品A0003を1日当たり2ピースまでであれば受け入れ可能だが、前回の発注時に納品先Eが商品A0003の配分を受け入れていた場合、今回の発注時には受け入れられないことを示している。
【0055】
図9は、本発明の実施例の推奨発注数算出装置100が保持する発注情報126の例を示す説明図である。
【0056】
発注情報126は、少なくとも、日付910、店舗名称920、商品コード930及び発注数940を定義するデータ項目を有する。これらは、それぞれ、発注の対象の日付、発注された商品の納品先の店舗を識別する情報、発注された商品の品目を識別する情報、及び、発注された商品の数量である。なお、本実施例では、例えば「納品先A」によって識別される店舗を納品先とする商品の発注を、便宜上、「納品先Aからの発注」のように記載する場合があるが、実際には、このような発注が納品先A以外の者(例えば納品先Aを含む複数の店舗を統括して管理する者等)によって行われる場合がある。
【0057】
以上、
図4〜
図9に示す外部データ読込みが終了すると、推奨発注数算出装置100は、(2)推奨発注数算出・抽出処理320を開始する。
【0058】
(2)推奨発注数算出・抽出処理320
図3の推奨発注数算出・抽出処理320では、発注数算出部130が受入最大数、発注数案を算出し、発注数抽出部140が物流費を計算し、物流費が削減される案を抽出する。
【0059】
図10は、本発明の実施例の推奨発注数算出装置100が実行する推奨発注数算出・抽出処理320の例を示すフローチャートである。
【0060】
推奨発注数算出・抽出処理320では、次の(2−1)〜(2−3)の処理が実行される。(2−1)発注数算出部130が、記憶部120に格納された受入条件情報125を検索し、各店舗の受入最大数を算出する処理1010を行う。(2−2)発注数算出部130が、(2−1)にて算出した受入最大数の範囲で、店舗の発注数を商品の梱包単位の倍数に切り上げることができる発注数の案を生成する処理1020を行う。(2−3)発注数抽出部140が、生成された発注数の各案に対して物流費を算出して、物流費が削減される発注数案を抽出する処理1030を行う。その後、終了条件が満たされるか否かを判定する処理1040が行われ、終了条件が満たされるまで(2−2)及び(2−3)が繰り返し実施される。例えば、全ての発注数の案に対して処理を実行したときに終了条件が満たされたと判定されてもよい。以下、
図10の各処理について説明する。
【0061】
(2−1)受入最大数算出処理1010
図10の受入最大数算出処理1010では、発注数算出部130が、記憶部120に格納された受入条件情報125の受入条件830を満たすように、各納品先が受け入れ可能な各品目の商品の数の最大値である受入最大数を算出する。
【0062】
発注数算出部130は、まず、記憶部120に格納された過去発注情報123を検索し、次の手順によって需要予測情報を算出する。すなわち、発注数算出部130は、発注情報126から店舗名称920、商品コード930及び発注数940を一行ずつ抜き出す。そして、発注数算出部130は、抜き出した行の店舗名称920及び商品コード930と同一の店舗名称620及び商品コード630を有し、かつ、抜き出した行の発注数940以上の発注数640を有する全ての行を、過去発注情報123に含まれる所定の日数(本実施例では6日間)分のデータから検索する。そして、発注数算出部130は、発注情報126から抜き出した店舗名称920、商品コード930及び発注数940と、過去発注情報123から検索された行の数と、から比率を算出し、これを将来店舗が発注する確率である需要確率として取得する。
【0063】
ここで
図6A〜
図6C及び
図9の例を参照すると、12月7日の納品先Aから商品A0001に対する発注数940は8である。一方、12月1日から6日までの6日間のうち、納品先Aから商品A0001に対する発注数が8だった日が1日、9だった日が1日、10だった日が4日あった。すなわち、発注数が8以上だった日が6日中6日(すなわち100%)、9以上だった日が6日中5日(すなわち約83%)、10以上だった日が6日中4日(すなわち約67%)となり、これらの値が12月7日の時点で計算される納品先Aの商品A0001に関する需要確率となる。
【0064】
この需要確率は、納品先Aにおける商品A0001の需要の大きさを示す指標である。例えば、12月7日の納品先Aからの商品A0001に対する当初の発注数が「8」である場合に、その発注数が推奨発注数案に従って「10」に変更された場合、追加された2個は12月7日の時点では余剰となり得る。しかし、発注数「10」の需要確率が高ければ、近い将来に10ピースの商品A0001の発注が行われる確率が高いため、12月7日の10個の発注は、その将来の発注を前倒しで行ったものであると考えることができる。商品が長期間売れ残るリスク等を避けるためには、需要確率がある程度高い範囲内で発注数を変更することが望ましい。
【0065】
次に、発注数算出部130は受入最大数を算出する。具体的には、発注数算出部130は、受入可能条件情報の受入条件830を参照し、現在の情報のみに基づいて算出可能な受入条件、例えば「1日xピースまで可能」が指定された場合には、その受入条件に基づいて受入最大数を算出する。過去の情報が必要となる受入条件、例えば「受入実績があれば可能」又は「過去実績の最大数まで可能」が指定された場合には、指定された受入条件、過去発注情報123、発注情報126、過去配分情報124及び需要予測情報128に基づいて受入最大数を算出する。
【0066】
ここで、本実施例における受入最大数の算出の具体例を説明する。ある店舗及び商品を対象として受入最大数を算出する場合、まず、発注数算出部130は、受入条件情報125から、対象の店舗及び商品を識別する店舗名称810及び商品コード820(これらの値を当該店舗名称及び当該商品コードとも記載する)に対応する受入条件830を抜き出す。次に、発注数算出部130は、抜き出した受入条件830が「1日xピースまで可能」である場合、発注情報126から当該店舗名称及び当該商品コードに対応する発注数940を特定し、特定した発注数940にxを加算した値を受入最大数とする。
【0067】
抜き出した受入条件830が「過去実績の最大数まで可能」である場合、発注数算出部130は、過去配分情報124から当該店舗名称及び当該商品コードに対応する過去配分数740を全て抜き出し、抜き出した過去配分数740の最大数に発注数940を加算した値を受入最大数とする。
【0068】
抜き出した受入条件830が、「x日間の合計配分数がyピース以内」である場合、発注数算出部130は、過去配分情報124から当該店舗名称及び当該商品コードに対応する過去x日分の過去配分数740を抜き出し、それらの合計量を算出する。算出された合計量がyピース未満である場合、発注数算出部130は、yと合計量の差分を当該店舗名称及び当該商品コードに対応する発注数940に加算した値を受入最大数とする。
【0069】
抜き出した受入条件830が「前回受入れた場合不可」である場合、発注数算出部130は、過去発注情報123から当該店舗名称及び当該商品コードに対応する日付を検索し、それらの中の最終日の日付を特定する。さらに、発注数算出部130は、過去配分情報124から当該店舗名称と当該商品コードに対応する日付を検索し、過去発注情報123から特定された最終日に一致する日付610を有するレコードが存在する場合、受入不可とし、存在しない場合、受入可能とし、過去発注情報123から検索される当該店舗名称及び当該商品コードに対応する発注数640の最大数を、当該店舗名称及び当該商品コードの受入最大数とする。
【0070】
抜き出した受入条件830が「過去に配分されていれば可能」である場合、発注数算出部130は、過去配分情報124から当該店舗名称及び当該商品コードに対応する情報を抜き出し、当該日付以前のレコードが存在しない場合、受入不可とする。当該日付以前のレコードが存在する場合、受入可能とし、過去発注情報123から検索される当該店舗名称及び当該商品コードに対応する発注数640の最大数を、当該店舗名称及び当該商品コードの受入最大数とする。
【0071】
当該店舗名称及び当該商品コードに対応する受入条件830が複数ある場合、発注数算出部130は、各受入条件に対して算出した受入最大数の中の最小数を最終的な受入最大数とする。
【0072】
発注数算出部130は、受入条件から算出した追加分の発注数が次回以降の発注数の前倒しの範囲となる可能性を評価するために、需要予測情報128から、当該店舗名称、当該商品コード、および、当該追加分を追加することによって変更された発注数が一致する需要確率を保持する。例えば、納品先Dの商品コードA0003の発注数を当初の値「3」に「1」を追加した「4」に変更する発注数案が生成された場合、後述する
図12から「納品先D」、「A0003」及び「4ピース以上」に対応する需要確率「67%」が特定され、当該発注数案に対応する需要確率として保持される。
【0073】
図11は、本発明の実施例の推奨発注数算出装置100が保持する受入最大数情報127の例を示す説明図である。
【0074】
受入最大数情報127は、少なくとも、店舗名称1110、商品コード1120及び受入最大数1130を定義するデータ項目を有する。これらは、それぞれ、商品の納品先を識別する情報、商品の品目を識別する情報、及び、
図10の処理によって計算された受入最大数である。例えば、
図9に示すように、12月7日に納品先Aが商品A0001を8個発注しており、
図8に示すように、納品先Aが商品A0001を2個受け入れ可能である場合、12月7日における納品先Aの商品A0001の受入最大数1130は10個となる。これは、12月7日における納品先Aの商品A0001の実際の受入数が、8個、9個又は10個のいずれかとなり得ること、言い換えると、12月7日における納品先Aの商品A0001の発注数を、元の発注数である8個から9個又は10個に変更可能であることを示している。
【0075】
図12は、本発明の実施例の推奨発注数算出装置100が保持する需要予測情報128の例を示す説明図である。
【0076】
需要予測情報128は、少なくとも、店舗名称1210、商品コード1220、発注数1230及び確率1240を定義するデータ項目を有する。この確率1240は、店舗名称1210によって識別される納品先が、商品コード1220によって識別される商品を、発注数1230に示す数以上発注する確率(すなわち需要確率)であり、
図10の処理によって計算される。
【0077】
(2−2)推奨発注数算出処理1020
図10の推奨発注数算出処理1020では、発注数算出部130は、記憶部120に格納された受入最大数情報127を検索し、受入最大数1130を超えない範囲で、少なくとも一つの店舗の発注数を増加させることによって、一つ以上の発注数案を生成する。例えば、発注数算出部130は、各商品コードの発注数を全店舗名称について合計した合計発注数、または、各商品コードの発注数のうち、少なくとも一つの店舗名称の発注数が、ケース入数430の倍数になるような発注数を算出する。
【0078】
また本処理では、発注数算出部130は、合計発注数をケース入数430単位に切り上げた案に対して、各店舗の発注数をケース入数430の倍数に切り上げることができる場合、合計発注数と各店舗の発注数をケース入数430の倍数にした際の双方の物流費削減効果を評価するために、合計発注数をケース入数430の倍数に切り上げた案から、さらに店舗の発注数をケース入数430の倍数に切り上げた発注数案を算出する。
【0079】
図9及び
図11の例では、商品コードA0001を発注している店舗名称の中で、受入最大数1130が発注数940以上となっている店舗名称は、納品先Aと納品先Dである。納品先Aの発注数は8ピース、受入最大数は10ピースであるため、1つの店舗名称の発注数を受入最大数まで変更する場合、発注数算出部130は、商品コードA0001の納品先Aの発注数を9ピース及び10ピースに順次変更する。
図4の商品マスタ情報121に示すように、商品コードA0001のケース入数430は10ピースであるため、発注数算出部130は、商品コードA0001の元の発注数8ピース、変更した発注数9ピース及び10ピースの中で、商品コードA0001の合計発注数または納品先Aの発注数が梱包単位の倍数(この例では1倍)となる10ピースの発注数を推奨発注数案として生成する。
【0080】
納品先Dについても同様に、発注数算出部130は、商品コードA0001の納品先Dの元の発注数3ピースを4ピース及び5ピースに順次変更する。これらの中に、商品コードA0001の合計発注数または納品先Dの発注数が梱包単位の倍数となる案は存在しないため、推奨発注数案を生成しない。
【0081】
2つの店舗名称の発注数を変更する場合は、発注数算出部130は、納品先Aの発注数を9ピース、納品先Dの発注数を4ピースとした発注数案、納品先Aの発注数を9ピース、納品先Dの発注数を5ピースとした発注数案、の各案の中で、商品コードA0001の合計発注数が商品コードA0001のケース入数の倍数になる案、並びに、納品先A及び納品先Dそれぞれの発注数が商品コードA0001のケース入数の倍数になる案を推奨発注数案として生成する。
【0082】
本実施例では、発注数算出部130は、納品先A及び納品先Dの発注数を、それぞれ、9ピース及び5ピースに変更した推奨発注数案を生成する(後述する
図13の案1)。この案では、納品先A、納品先Dのいずれの発注数も商品コードA0001のケース入数の倍数にならないが、全納品先の合計発注数は30ピース、すなわち、商品コードA0001のケース入数(10ピース)の倍数となる。さらに、発注数算出部130は、納品先A及び納品先Dの発注数を、それぞれ、10ピース及び4ピースに変更した推奨発注数案を生成する(後述する
図13の案3)。この案では、納品先Aの発注数、及び、全納品先の合計発注数が、商品コードA0001のケース入数の倍数となる。このように、発注数算出部130は、商品の品目ごとに、発注数を変更可能な納品先の発注数を変更した場合のピース数の一つ以上の組合せを推奨発注数案として生成する。
【0083】
また、発注数算出部130は、発注数を変更しない案を案0として、推奨発注数案情報129に格納する。
【0084】
図13、
図14及び
図15は、それぞれ、本発明の実施例の推奨発注数算出装置100が生成する商品コードA0001、A0002及びA0003に関する推奨発注数案情報129の例を示す説明図である。
【0085】
推奨発注数案情報129は、少なくとも、案No1310、店舗名称1320、商品コード1330、発注数1340及び物流費1350を定義するデータ項目を有する。これらは、それぞれ、生成した推奨発注数案を識別する情報、商品の納品先を識別する情報、商品の品目を識別する情報、当該納品先への当該商品の発注数、及び、その発注数の場合の物流費(すなわちコスト)である。物流費1350は、次に説明する推奨発注数抽出処理1030において算出される。
【0086】
(2−3)推奨発注数抽出処理1030
発注数抽出部140は、(2−2)によって作成された推奨発注数案情報129に含まれる各推奨発注数案に対して、発注情報126から推奨発注数を決定し、算出した推奨発注数から商品マスタ情報及び作業工数マスタ情報に基づいてケース作業工数およびピース作業工数を求めて物流費1350を算出する。
【0087】
まず、推奨発注数の決定手順を説明する。発注数抽出部140は、推奨発注数案情報129から推奨発注数を決定する案No1310の値を1つ選択し、選択した値を案No1310として有する推奨発注数案を全て抽出する。ここで抽出した情報を当該案No推奨発注数案情報と呼ぶ。例えば、
図15に示す商品コードA0003に関する推奨発注数案情報129において案No1310の値「案8」が選択された場合、14番目から16番目のレコードが当該案No推奨発注数案情報として抽出される。
【0088】
次に、発注数抽出部140は、当該案No推奨発注数案情報から1つの情報を取り出し、当該案No推奨発注数案情報の商品コード1330の値をキーにして発注情報126を検索し、当該商品コード1330の値と一致する値を商品コード930として有する全ての発注情報を抽出する。抽出した発注情報を当該商品コード発注情報と呼ぶ。例えば、上記のように
図15に示す商品コードA0003に関する推奨発注数案情報129の14番目から16番目のレコードが当該案No推奨発注数案情報として抽出された場合、
図9に示す発注情報126から、商品コード930の値が「A0003」である11番目から15番目までのレコードが当該商品コード発注情報として抽出される。
【0089】
次に、発注数抽出部140は、当該商品コード発注情報の中から1つずつ発注情報を抜き出し、当該発注情報の店舗名称に対して推奨発注数を決定する。具体的には、発注数抽出部140は、当該発注情報の店舗名称920の値をキーにして当該案No推奨発注数案情報を検索し、当該店舗名称920の値と一致する値を店舗名称1320として有する推奨発注数案情報が存在する場合には、検索した推奨発注数案情報の発注数1340の値を推奨発注数とする。一方、当該店舗名称920の値と一致する値を店舗名称1320として有する推奨発注数案情報が存在しない場合には、発注数抽出部140は、当該発注情報の発注数940の値を推奨発注数とする。発注数抽出部140は、上記の手順を当該商品コード発注情報に含まれる全ての発注情報に対して行う。その後、発注数抽出部140は、当該商品コード発注情報に含まれる全ての発注情報に対して決定した推奨発注数を合計して合計推奨発注数を算出する。
【0090】
例えば、上記のように
図15の14番目から15番目のレコードが当該案No推奨発注数案情報として抽出され、
図9の11番目から15番目までのレコードが当該商品コード発注情報として抽出された場合、
図9の12番目から14番目のレコードの店舗名称920の値(すなわち納品先Bから納品先D)が、それぞれ、
図15の14番目から16番目のレコードの店舗名称1320の値と一致する。この場合、納品先B、納品先C及び納品先Dに対応する推奨発注数は、それぞれ、発注数940の値「3」、「7」及び「3」となる代わりに、発注数1340の値「4」、「12」及び「4」となる。そして、納品先A及び納品先Eの推奨発注数は、それぞれ、発注数940の値「9」及び「12」となる。
【0091】
次に、発注数抽出部140は、当該商品コード発注情報の商品コード930の値(上記の例では「A0003」)をキーにして商品マスタ情報121を検索し、当該商品コード930の値に一致する値を商品コード410として有する商品マスタ情報(上記の例では
図4に示す3番目のレコード)を抽出し、抽出した商品マスタ情報のケース入数430の値(上記の例では「12」)を当該商品コードのケース入数として特定する。
【0092】
次に、発注数抽出部140は、上述した手順によって求めた当該案Noの合計推奨発注数と当該商品コード発注情報の各発注情報の推奨発注数の各々に対して、当該商品コードのケース入数で割った余りと商を算出する。余りの値をピース作業工数、商の値をケース作業工数と定める。上記の例では、商品コードA0001の納品先A〜納品先Eの推奨発注数がそれぞれ「9」、「4」、「12」、「4」及び「12」であり、合計推奨発注数が「41」である。この場合、ケース入数が「12」であるとすると、合計推奨発注数に関するピース作業工数及びケース作業工数はそれぞれ「5」及び「3」である。納品先Aに関するピース作業工数及びケース作業工数はそれぞれ「9」及び「0」である。納品先Bに関するピース作業工数及びケース作業工数はそれぞれ「4」及び「0」である。納品先Cに関するピース作業工数及びケース作業工数はそれぞれ「0」及び「1」である。他の店舗については記載を省略するが、同様にピース作業工数及びケース作業工数が計算される。
【0093】
そして、発注数抽出部140は、それぞれに対して、作業工数マスタ情報122から検索される当該商品コードのピース作業工数単価530及びケース作業工数単価540を掛けることで、それぞれの作業に対する費用を算出する。最後に、発注数抽出部140は、ピース作業工数から算出した費用及びケース作業工数から算出した費用を足し合わせ、当該商品コードの発注に対する物流費とする。
【0094】
例えば、上記の例において、納品先Aのピース作業工数及びケース作業工数がそれぞれ「9」及び「0」である場合、発注数抽出部140は、商品コードA0003に対応するピース作業工数単価530の値「30」及びケース作業工数単価540の値「50」から、ピース作業に関する費用を「270」、ケース作業に関する費用を「0」と計算し、両者の合計「270」を納品先Aに関する物流費として計算する。発注数抽出部140は、同様の計算を他の納品先についても行う。さらに、発注数抽出部140は、合計推奨発注数「30」から求められたピース作業工数「5」及びケース作業工数「3」についても同様の計算を行う。そして、発注数抽出部140は、全店舗について計算した物流費と、合計推奨発注数から計算した物流費との合計(上記の例では「910」)を物流費1350として推奨発注数案情報129に登録する。
【0095】
発注数抽出部140は、上述した推奨発注数案Noの選択から物流費算出までの手順を、推奨発注数案情報に含まれる全ての推奨発注数案Noに対して実施する。
【0096】
次に、発注数抽出部140は、推奨発注数案情報の各案Noの物流費1350と案0の物流費1350を比較して、案0の物流費以上となる物流費が算出された案Noの推奨発注数案情報を削除する。これによって、生成された推奨発注数案のうち、その物流費が当初の発注数に基づいて計算された物流費より小さくなるものが抽出されることとなる。案0の物流費未満となる推奨発注数案情報については、1から昇順に案Noを振り直す。
【0097】
本実施例では、(2−2)及び(2−3)を実施した結果、案0の発注数を変更しない場合の物流費から削減される推奨発注数案として、
図13、
図14、
図15に示す通り、商品コードA0001では、3案、A0002では12案、A0003では8案、の推奨発注数案が抽出される。
【0098】
例えば、
図15の例では、2つの店舗名称の発注数が変更されている案が5案、3つの店舗名称の発注数が変更されている案が1案、抽出されている。3つの店舗名称の発注数が変更されている案8では、納品先B、納品先C、納品先Dの発注数をそれぞれ、4ピース、12ピース、4ピースとした結果、物流費1350が910となり、案0と比較して物流費1350を200削減できたことを示している。
【0099】
(3)結果出力処理330
図3の結果出力処理330では、表示部150が、記憶部120に格納された受入最大数情報127と、推奨発注数案情報129と、を表示する。表示する結果の一例を
図16、
図17に示す。
【0100】
図16は、本発明の実施例の推奨発注数算出装置100による受入最大数情報127の画面表示の例を示す説明図である。
【0101】
受入最大数情報の画面表示は、少なくとも、店舗名称1610、商品コード1620、受入最大数1630及び受入条件1640を表示するデータ項目を有する。これらのうち、店舗名称1610、商品コード1620及び受入条件1640は、それぞれ、
図8に示す受入条件情報125の店舗名称810、商品コード820及び受入条件830に対応する。受入最大数1630は、
図11に示す受入最大数情報127の受入最大数1130に対応する。
【0102】
これによって、ユーザは、受入条件に対する受入最大数を確認することができる。
【0103】
図17は、本発明の実施例の推奨発注数算出装置100による物流費および発注数変更店舗数のグラフ表示の例を示す説明図である。
【0104】
物流費および発注数変更店舗数のグラフは、記憶部120に格納されている推奨発注数案情報129に基づいて表示される。
図17の例では、物流費を横軸に、物流費削減に必要な発注数変更店舗数を縦軸に設定した2次元空間にそれぞれの推奨発注数案をプロットしたグラフが表示される。発注数変更店舗数とは、それぞれの推奨発注数案において物流費を削減するために発注数を変更する必要がある店舗の数である。
図17の例では、商品コードA0003に関して、
図15に示した案1から案8に対応する円形の図形がプロットされている。また、表示部150は、グラフ内の円に対応する各案の発注数を変更した店舗名称を吹き出しなどによって表示する。
【0105】
また、表示部150は、各案に対する将来の発注可能性を示すために、推奨発注数案情報の案Noに一致する各推奨発注数情報の店舗名称、商品コード、および発注数をキーとして需要予測情報を検索し、キーと一致する需要確率を掛け合わせて発注可能性を算出し、算出した発注可能性を円の大きさとして表現とする。例えば、上記の案8の場合、発注情報126(
図9)及び推奨発注数案情報129(
図15)から、発注数が変更された納品先B〜納品先Dの変更後の発注数がそれぞれ「4」、「12」及び「4」となり、それぞれに対応する需要確率1240は、
図12の9、10及び19番目のレコードから、「100%」、「16%」及び「67%」となる。この場合、それらの需要確率の総乗である「11%」が発注可能性として算出される。円が大きい程、将来の発注可能性は高く、円が小さい程、その可能性は低いことを示す。
【0106】
一般には、物流費は小さい方が望ましく、発注数変更店舗数は少ない方が望ましく、発注可能性は高い方が(商品が売れ残る可能性が低くなるため)望ましい。しかし、実際にはそれらの全てが満足されるとは限らない。
図17のように、それぞれの値の大きさが直観的に分かりやすいようにグラフ表示をすることによって、ユーザは、削減される物流費に対して発注数が変更される店舗数および変更分の将来の発注可能性を確認することができ、店舗が受入れやすい推奨発注数案を検討することができる。
【0107】
上記の実施例では店舗に納品される商品の発注に本発明を適用する例を示したが、本発明はそのような商品に限らず任意の種類の物品に適用することができる。
【0108】
以上のように、本発明の実施例によれば、各店舗の受入条件を満たす範囲で、全店舗の合計発注数を梱包単位に切り上げて作業工数を低減する推奨発注数算出システムが提供される。さらに、過去実績を用いることで、過去実績および将来の発注数の予測量に対する受入条件の成否判定が可能となる。
【0109】
具体的には、本発明の一実施例である推奨発注数算出装置は、過去配分情報・発注情報・各店舗の受入条件に対して、過去の実績等から各店舗で最大で受入可能な発注数を特定する。そして、推奨発注数算出装置は、特定した各店舗の受入可能な発注数の範囲で店舗の発注数案を複数作成し物流費を算出することで、物流費を削減する発注数案を複数選定し、算出した案に対して、削減する物流費・発注数を変更する店舗・店舗数の関係を表示する機能を有する。これによって、各店舗の受入条件を満たした上で発注数を梱包単位に切りあげることで倉庫内作業工数を低減し、物流費を削減することができる。
【0110】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明のより良い理解のために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されるものではない。
【0111】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によってハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによってソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
【0112】
また、制御線及び情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線及び情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。