(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024133888
(43)【公開日】2024-10-03
(54)【発明の名称】在庫管理装置、在庫管理方法、及び、在庫管理プログラム
(51)【国際特許分類】
G06Q 10/087 20230101AFI20240926BHJP
【FI】
G06Q10/087
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023043890
(22)【出願日】2023-03-20
(71)【出願人】
【識別番号】398040527
【氏名又は名称】株式会社オービック
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】佐藤 義隆
(72)【発明者】
【氏名】田口 正賢
【テーマコード(参考)】
5L010
5L049
【Fターム(参考)】
5L010AA16
5L049AA16
(57)【要約】
【課題】取扱期限内の商品の正確な在庫を把握可能とする。
【解決手段】検出部が、商品に付加されている取扱期限に基づいて在庫データを参照することで、取扱期限毎の商品の在庫数を検出する。算出部は、各取扱期限の商品の在庫数から、引当済又は引当済予定の商品数を減算処理し、各取扱期限の商品毎の未引当数をそれぞれ算出する。引当処理部は、指定された日付である基準日以降の取扱期限のうち、最小の取扱期限の商品の未引当数から、商品の引当数を引当処理する。データ生成部は、在庫数が検出された各商品の、少なくとも、取扱期限、引当数、及び、未引当数から引当数を減算処理した数である繰越数を含む引当結果データを生成する。出力制御部は、生成された引当結果データを出力して表示又は印刷等を行う。
【選択図】
図1
【特許請求の範囲】
【請求項1】
商品に付加されている取扱期限に基づいて在庫データを参照することで、取扱期限毎の商品の在庫数を検出する検出部と、
各前記取扱期限の商品の在庫数から、引当済又は引当済予定の商品数を減算処理して、各前記取扱期限の商品毎の未引当数をそれぞれ算出する算出部と、
指定された日付である基準日以降の前記取扱期限のうち、最小の取扱期限の商品の前記未引当数から、前記商品の引当数を引当処理する引当処理部と、
前記在庫数が検出された各前記商品の、少なくとも、前記取扱期限、前記引当数、及び、前記未引当数から前記引当数を減算処理した数である繰越数を含む引当結果データを生成するデータ生成部と、
生成された前記引当結果データを出力制御する出力制御部と、
を有する在庫管理装置。
【請求項2】
前記引当処理部は、前記基準日と共に、前記基準日からの所定日数の期間が指定された場合、前記基準日からの前記期間分の日数に相当する日毎の前記引当処理を行い、
前記データ生成部は、日毎の前記引当処理の引当結果データを生成すること、
を特徴とする請求項1に記載の在庫管理装置。
【請求項3】
前記商品の引当数は、商品の受注数に相当する受注引当数、又は、製造払出数に相当する製造払出引当数であること、
を特徴とする請求項2に記載の在庫管理装置。
【請求項4】
前記検出部は、指定された製造納期に納品される前記商品の納品数である受入指示数を含む製造受入予定データを参照して、前記基準日を含む前記期間内における前記商品の製造受入数を検出し、
前記引当処理部は、前記製造受入数に基づいて前記商品の引当数を引当処理し、
前記データ生成部は、前記期間内における製造受入の日付の前記引当結果データとして、前記製造受入の日付の前記製造受入数を含めた引当結果データを生成すること、
を特徴とする請求項3に記載の在庫管理装置。
【請求項5】
前記商品は、所定数の商品が一纏めとされ、前記取扱期限及びロット番号が付加されたロット単位となっており、
前記引当処理部は、同じ前記ロット番号が付された商品のロット数に基づいて前記引当処理を行うこと、
を特徴とする請求項4に記載の在庫管理装置。
【請求項6】
前記検出部は、前記在庫データを参照して検出した取扱期限毎の商品の在庫数を示すデータ、及び、在庫数を「0」とすると共に取扱期限を空欄とし、引当処理を行うロット番号が未定であることを示す「ロット未定」のデータを生成し、
前記引当処理部は、前記商品の在庫数が前記引当数に満たない場合、「ロット未定」の在庫数から引当処理を行い、
前記データ生成部は、「ロット未定」の在庫数から引当処理を行ったことを示す前記引当結果データを生成すること、
を特徴とする請求項5に記載の在庫管理装置。
【請求項7】
前記データ生成部は、シミュレーション用の受注データであり、出荷予定日、受注数及び更新フラグを含むSIM受注データ、シミュレーション用の製造払出予定データであり、製造予定日、払出予定数及び更新フラグを含むSIM製造払出予定データ、及び、シミュレーション用の製造受入予定データであり、製造納期、受入指示数、取扱期限及び更新フラグを含むSIM製造受入予定データを生成し、
前記出力制御部は、シミュレーション用の調整が指示された際に、前記SIM受注データに相当するシミュレーション受注データ、前記SIM製造払出予定データに相当するシミュレーション払出予定データ、及び、前記SIM製造受入予定データに相当するシミュレーション受入予定データを出力し、
少なくとも前記出荷予定日、前記製造予定日又は前記製造納期は、それぞれ所望の値に変更可能となっており、
前記データ生成部は、前記出荷予定日が変更操作された場合、前記SIM受注データの出荷予定日を変更すると共に、前記出荷予定日が変更されたことを示す値に前記更新フラグを変更し、前記製造予定日が変更操作された場合、前記SIM製造払出予定データの製造予定日を変更すると共に、前記製造予定日が変更されたことを示す値に前記更新フラグを変更し、前記製造納期が変更操作された場合、前記SIM製造受入予定データの製造納期を変更すると共に、前記製造納期が変更されたことを示す値に前記更新フラグを変更し、
前記引当処理部は、前記SIM受注データの出荷予定日が変更されてシミュレーションの実行が指示された場合は、出荷予定日の変更前の受注数の引当結果を解除し、前記SIM受注データの変更された出荷予定日以降の前記取扱期限のうち、最小の取扱期限の商品の前記未引当数から、前記商品の受注数を前記引当数として引当処理し、前記SIM製造払出予定データの製造予定日が変更されてシミュレーションの実行が指示された場合は、製造予定日の変更前の払出予定数の引当結果を解除し、前記SIM製造払出予定データの変更された製造予定日以降の前記取扱期限のうち、最小の取扱期限の商品の前記未引当数から、前記商品の払出予定数を前記引当数として引当処理し、前記SIM製造受入予定データの製造納期が変更されてシミュレーションの実行が指示された場合は、製造納期の変更前の引当結果を解除し、前記製造納期に受入される製造受入数に基づく引当処理を行い、
前記出力制御部は、前記シミュレーションの結果を前記引当結果データとして出力制御すること、
を特徴とする請求項6に記載の在庫管理装置。
【請求項8】
前記シミュレーションの結果で実データを更新する引当確定処理の実行が指定された場合、前記SIM受注データ、前記SIM製造払出予定データ及び前記SIM製造受入予定データのうち、前記値が変更されたことを示す前記更新フラグを含むデータを検出し、検出した前記SIM受注データ、前記SIM製造払出予定データ又は前記SIM製造受入予定データに基づいて、記憶部に記憶されている前記実データとなる受注データ、製造払出予定データ、又は、製造受入予定データを更新する記憶制御部を、さらに備えること、
を特徴とする請求項7に記載の在庫管理装置。
【請求項9】
前記検出部は、前記出荷予定日、前記製造予定日又は前記製造納期として、他の出荷予定日、製造予定日又は製造納期が追加で指定された場合、追加で指定された他の出荷予定日に対応する受注データを検出し、追加で指定された他の製造予定日に対応する製造払出予定データを検出し、又は、追加で指定された他の製造納期に対応する製造受入予定データを検出し、
前記出力制御部は、検出された他の出荷予定日に対応する前記受注データのレコードを前記シミュレーション受注データの追加のレコードとして出力制御し、検出された他の製造予定日に対応する前記製造払出予定データのレコードを前記シミュレーション払出予定データの追加のレコードとして出力制御し、検出された他の製造納期に対応する前記製造受入予定データのレコードを前記シミュレーション受入予定データの追加のレコードとして出力制御すること、
を特徴とする請求項7又は請求項8に記載の在庫管理装置。
【請求項10】
検出部が、商品に付加されている取扱期限に基づいて在庫データを参照することで、取扱期限毎の商品の在庫数を検出する検出ステップと、
算出部が、各前記取扱期限の商品の在庫数から、引当済又は引当済予定の商品数を減算処理して、各前記取扱期限の商品毎の未引当数をそれぞれ算出する算出ステップと、
引当処理部が、指定された日付である基準日以降の前記取扱期限のうち、最小の取扱期限の商品の前記未引当数から、前記商品の引当数を引当処理する引当処理ステップと、
データ生成部が、前記在庫数が検出された各前記商品の、少なくとも、前記取扱期限、前記引当数、及び、前記未引当数から前記引当数を減算処理した数である繰越数を含む引当結果データを生成するデータ生成ステップと、
出力制御部が、生成された前記引当結果データを出力制御する出力制御ステップと、
を有する在庫管理方法。
【請求項11】
コンピュータを、
商品に付加されている取扱期限に基づいて在庫データを参照することで、取扱期限毎の商品の在庫数を検出する検出部と、
各前記取扱期限の商品の在庫数から、引当済又は引当済予定の商品数を減算処理して、各前記取扱期限の商品毎の未引当数をそれぞれ算出する算出部と、
指定された日付である基準日以降の前記取扱期限のうち、最小の取扱期限の商品の前記未引当数から、前記商品の引当数を引当処理する引当処理部と、
前記在庫数が検出された各前記商品の、少なくとも、前記取扱期限、前記引当数、及び、前記未引当数から前記引当数を減算処理した数である繰越数を含む引当結果データを生成するデータ生成部と、
生成された前記引当結果データを出力制御する出力制御部として機能させること、
を特徴とする在庫管理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、在庫管理装置、在庫管理方法、及び、在庫管理プログラムに関する。
【背景技術】
【0002】
今日において、多くの場合、商品の受注時に出荷可能在庫数を確認し、出荷判断及び製造判断を行っている。
【0003】
在庫管理に関する背景技術としては、特許文献1(特開2023-018105号公報)に、インバウンド購入注文のインテリジェントな調整による製品在庫の最適化のためのシステムが開示されている。
【0004】
このシステムは、各単位時間にわたる各製品の需要予測量を含む需要予測量を受信するプロセスと、一つ又は複数の製品識別子に対応する製品の一部に関連付けられている供給元の供給元統計データを受信するプロセスを備える。また、製品の現在の製品在庫レベル及び現在の製品注文量を受信するプロセスと、製品の予備注文量を決定するプロセスを備える。また、少なくとも供給元統計データ、現在の製品在庫レベル及び現在の注文量に基づいて、推奨注文量を得るように予備注文量を制約するプロセスと、推奨注文量に基づいて、製品の供給元への購入注文を生成するプロセスを備える。そして、これらのプロセスを実行することで、インバウンド購入注文のインテリジェントな調整による製品在庫の最適化を図っている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
ここで、従来は、在庫の総量(出荷予定及び生産予定を含む)の推移に基づいて、出荷判断及び製造判断を行っていた。このように、在庫の総量の推移に基づいて出荷判断及び製造判断を行うと、現在の在庫は、取扱期限(出荷期限又は有効期限等)内の有効在庫であるか否かが判断できないため、営業担当者又は業務担当者等が、商品の正確な在庫を把握困難となる問題があった。
【0007】
本発明は、上述の課題に鑑みてなされたものであり、取扱期限内の商品の正確な在庫を把握可能とした在庫管理装置、在庫管理方法、及び、在庫管理プログラムの提供を目的とする。
【課題を解決するための手段】
【0008】
上述の課題を解決し、目的を達成するために、本発明に係る在庫管理装置は、商品に付加されている取扱期限に基づいて在庫データを参照することで、取扱期限毎の商品の在庫数を検出する検出部と、各取扱期限の商品の在庫数から、引当済又は引当済予定の商品数を減算処理して、各取扱期限の商品毎の未引当数をそれぞれ算出する算出部と、指定された日付である基準日以降の取扱期限のうち、最小の取扱期限の商品の未引当数から、商品の引当数を引当処理する引当処理部と、在庫数が検出された各商品の、少なくとも、取扱期限、引当数、及び、未引当数から引当数を減算処理した数である繰越数を含む引当結果データを生成するデータ生成部と、生成された引当結果データを出力制御する出力制御部と、を有する。
【0009】
また、上述の課題を解決し、目的を達成するために、本発明に係る在庫管理方法は、検出部が、商品に付加されている取扱期限に基づいて在庫データを参照することで、取扱期限毎の商品の在庫数を検出する検出ステップと、算出部が、各取扱期限の商品の在庫数から、引当済又は引当済予定の商品数を減算処理して、各取扱期限の商品毎の未引当数をそれぞれ算出する算出ステップと、引当処理部が、指定された日付である基準日以降の取扱期限のうち、最小の取扱期限の商品の未引当数から、商品の引当数を引当処理する引当処理ステップと、データ生成部が、在庫数が検出された各商品の、少なくとも、取扱期限、引当数、及び、未引当数から引当数を減算処理した数である繰越数を含む引当結果データを生成するデータ生成ステップと、出力制御部が、生成された引当結果データを出力制御する出力制御ステップと、を有する。
【0010】
また、上述の課題を解決し、目的を達成するために、本発明に係る在庫管理プログラムは、コンピュータを、商品に付加されている取扱期限に基づいて在庫データを参照することで、取扱期限毎の商品の在庫数を検出する検出部と、各取扱期限の商品の在庫数から、引当済又は引当済予定の商品数を減算処理して、各取扱期限の商品毎の未引当数をそれぞれ算出する算出部と、指定された日付である基準日以降の取扱期限のうち、最小の取扱期限の商品の未引当数から、商品の引当数を引当処理する引当処理部と、在庫数が検出された各商品の、少なくとも、取扱期限、引当数、及び、未引当数から引当数を減算処理した数である繰越数を含む引当結果データを生成するデータ生成部と、生成された引当結果データを出力制御する出力制御部として機能させる。
【発明の効果】
【0011】
本発明は、取扱期限内の商品の正確な在庫を把握可能とすることができる。
【図面の簡単な説明】
【0012】
【
図1】
図1は、実施の形態の在庫管理装置のハードウェア構成を示すブロック図である。
【
図4】
図4は、製造受入予定データの一例を示す図である。
【
図5】
図5は、製造払出予定データの一例を示す図である。
【
図6】
図6は、製品在庫計画照会画面の一例を示す図である。
【
図7】
図7は、引当結果画面ワークの初期処理の概要を示す図である。
【
図8】
図8は、引当在庫ワークの一例を示す図である。
【
図9】
図9は、第1のワーク(受注データ)及び第2のワーク(受注データ)の一例を示す図である。
【
図10】
図10は、第1のワーク(製造払出予定データ)及び第2のワーク(製造払出予定データ)の一例を示す図である。
【
図11】
図11は、未引当数が更新された引当在庫ワークの一例を示す図である。
【
図12】
図12は、製品在庫計画照会画面に表示される結果表示画面ワーク(初期)の結果表示画面データの一例を示す図である。
【
図13】
図13は、製造在庫計画照会画面に入力された基準日からの期間におけるループ処理の概要を示す図である。
【
図14】
図14は、ループ処理により生成される、10月1日分の結果表示画面データの一例を示す図である。
【
図17】
図17は、10月1日分の結果表示画面データから、引当対象を検出する動作を説明するための図である。
【
図18】
図18は、引当処理された結果表示画面データを含む、10月1日分の結果表示画面ワークの一例を示す図である。
【
図19】
図19は、引当処理後の受注データワークの一例を示す図である。
【
図20】
図20は、10月1日分の製造在庫計画照会画面の結果表示領域に対する表示内容の一例を示す図である。
【
図21】
図21は、ループ処理により生成される、10月2日分の結果表示画面データの一例を示す図である。
【
図22】
図22は、製造払出予定データワーク及びSIM製造払出予定データの一例を示す図である。
【
図23】
図23は、10月2日分の結果表示画面データから、引当対象を検出する動作を説明するための図である。
【
図24】
図24は、引当処理された結果表示画面データを含む、10月2日分の結果表示画面ワークの一例を示す図である。
【
図25】
図25は、製造払出予定データワークの一例、及び、未引当に対する再処理が行われた製造払出予定データワークの一例を説明するための図である。
【
図26】
図26は、10月2日分の結果表示画面データから、引当対象を検出する動作を説明するための図である。
【
図27】
図27は、10月2日分の製造払出予定データワークの製造払出予定データの一例を示す図である。
【
図28】
図28は、第1のワーク(製造払出予定データ)の一例を示す図である。
【
図29】
図29は、10月2日分の製造在庫計画照会画面の結果表示領域に対する表示内容の一例を示す図である。
【
図30】
図30は、引当処理された結果表示画面データを含む、10月2日分の結果表示画面ワークの一例を示す図である。
【
図31】
図31は、ループ処理により生成される、10月3日分の結果表示画面データの一例を示す図である。
【
図32】
図32は、製造受入予定データ及びSIM製造受入予定データの一例を示す図である。
【
図33】
図33は、10月3日分の結果表示画面データとして、抽出された製造受入予定データが追加された状態を示す結果表示画面ワークを示す図である。
【
図34】
図34は、ループ処理による10月1日~10月3日分の結果表示画面データにより構成される結果表示画面ワークを示す図である。
【
図35】
図35は、製造在庫計画照会画面の結果表示領域に表示される10月1日~10月3日分の結果表示画面データを示す図である。
【
図36】
図36は、10月1日~10月3日分の結果表示画面を表示した製品在庫計画照会画面の一例を示す図である。
【
図37】
図37は、製品在庫計画照会画面の結果表示領域に表示される10月1日~10月3日分の結果表示画面の一例を示す図である。
【
図38】
図38は、製品在庫計画照会日程調整画面の一例を示す図である。
【
図39】
図39は、SIM受注データ、SIM製造払出予定データ、SIM製造受入予定データの一例を示す図である。
【
図40】
図40は、製造納期を変更するシミュレーションを行う例を説明するための図である。
【
図41】
図41は、製造納期の変更が反映された状態のSIM製造受入予定データを示す図である。
【
図42】
図42は、製造納期の変更したシミュレーション結果を得るために、製造在庫計画照会画面の照会実行ボタンが操作される様子を示す図である。
【
図43】
図43は、製造納期の変更が反映された結果表示画面の一例を示す図である。
【
図44】
図44は、製造納期の変更が反映された製図払出予定データワークの一例を示す図である。
【
図45】
図45は、製造納期の変更に基づく更新処理が施されたSIM製造受入予定データの一例を示す図である。
【
図46】
図46は、製造納期の変更することで、欠品が発生しない状態となったことを示す図である。
【
図47】
図47は、出荷予定日の変更シミュレーションを行う例を説明するための製造在庫計画照会画面の一例を示す図である。
【
図48】
図48は、製造在庫計画照会画面の結果表示領域に表示される表示内容を示す図である。
【
図49】
図49は、出荷予定日の変更前の製造在庫計画照会日程調整画面を示す図である。
【
図50】
図50は、出荷予定日の変更前のSIM受注データを示す図である。
【
図51】
図51は、シミュレーション受注データの出荷予定日が変更された製造在庫計画照会日程調整画面を示す図である。
【
図52】
図52は、出荷予定日が変更されたSIM受注データを示す図である。
【
図53】
図53は、出荷予定日の変更シミュレーションを行う際に照会実行ボタンを操作される様子を示す図である。
【
図54】
図54は、出荷予定日が変更されたことで引当が変更された様子を示す結果表示画面データの一例を示す図である。
【
図55】
図55は、出荷予定日が変更された受注データワークを示す図である。
【
図56】
図56は、出荷予定日の変更が反映されたSIM受注データを示す図である。
【
図57】
図57は、出荷予定日を変更したことで最短で10月3日に出荷可能となったことを示す結果表示画面データの一例を示す図である。
【
図58】
図58は、シミュレーションされたSIM製造受入予定データで実データである製造受入予定データを更新する際に引当確定ボタン52が操作される様子を示す図である。
【
図59】
図59は、シミュレーション結果に基づく実データの更新処理の概要を示す図である。
【
図60】
図60は、シミュレーション結果となるSIM製造受入予定データの一例を示す図である。
【
図61】
図61は、シミュレーション結果となるSIM製造受入予定データで、実データである製造受入予定データが更新される様子を示す図である。
【
図62】
図62は、SIM更新フラグが「0」である場合は、受注データの更新が行われないことを説明するための図である。
【
図63】
図63は、各種データワークで実データが更新される様子を示す図である。
【
図64】
図64は、受注データワークに基づく実データである受注データの更新処理を説明するための図である。
【
図65】
図65は、製造払出予定データワークに基づく実データである製造払出予定データの更新処理を説明するための図である。
【
図66】
図66は、最初に指定した日付の範囲外のデータを呼び出して日付の変更を行うシミュレーションを可能とする「データ追加補助機能」を説明するための図である。
【
図67】
図67は、所定の抽出条件に合致する製造受入予定データを抽出する様子を示す図である。
【
図68】
図68は、抽出条件に合致する製造受入予定データを抽出する際に操作される受入予定追加ボタンを示す図である。
【
図69】
図69は、抽出条件に合致する受注データを抽出する際に操作される受注追加ボタンを示す図である。
【
図70】
図70は、抽出条件に合致する製造払出予定データを抽出する際に操作される払出予定追加ボタンを示す図である。
【発明を実施するための形態】
【0013】
以下、本発明を適用した実施の形態となる在庫管理装置を、図面に基づいて詳細に説明する。なお、本発明は、以下の実施の形態に限定されるものではない。
【0014】
(ハードウェア構成)
図1に示すように、実施の形態の在庫管理装置1は、記憶部2、制御部3、通信インターフェース部4及び入出力インターフェース部5を備えている。入出力インターフェース部5には、入力装置6及び出力装置7が接続されている。出力装置7としては、モニタ装置(家庭用テレビを含む)等の表示部、印刷装置、又は、スピーカ装置等が相当する。入力装置6としては、キーボード装置、マウス装置及びマイクロホン装置等の他、マウス装置と協働してポインティングデバイス機能を実現するモニタ装置等を用いることができる。通信インターフェース部4は、例えばインターネット等の広域網又はLAN(Local Area Network)等のプライベート網等のネットワークに接続される。
【0015】
記憶部2としては、例えばROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)又はSSD(Solid State Drive)等の記憶装置を用いることができる。記憶部2には、商品の取扱期限(出荷期限又は有効期限等)に基づいて在庫管理を行うための在庫管理プログラムが記憶されている。
【0016】
また、詳しくは後述するが、この記憶部2には、在庫データ、受注データ、製造受入予定データ、製造払出予定データ、SIM受注データ、SIM製造払出予定データ、SIM製造受入予定データ、シミュレーション受注データ、シミュレーション払出予定データ、シミュレーション受入予定データ、引当在庫ワーク、受注データワーク、製造払出予定データワーク、結果表示画面ワーク(初期)、結果表示画面ワーク等が記憶又は形成されている。
【0017】
図2は、在庫データの一例を示す図である。在庫データは、各商品の商品コード、ロット番号(ロットNo)、現在在庫数、出荷期限、有効期限、及び、在庫ランク等を含んで構成される。出荷期限及び有効期限は、取扱期限の一例である。また、この例は、複数の商品を一取扱単位とした、いわゆる「ロット単位」で各商品の取り扱いを行う例である。なお、各商品を、いわゆる「バラ」で取り扱ってもよい。
【0018】
出荷期限は、その商品の出荷が可能な年月日を示す情報である。有効期限は、その商品が有効に作用(機能)する期日(年月日)を示す情報である。また、在庫ランクは、商品の「品質」に相当する。この例では、在庫ランクが「Bランク」の商品よりも、在庫ランクが「Aランク」の商品の方が、高い品質となっている。
【0019】
図3は、受注データの一例を示す図である。この
図3に示すように、受注データは、受注伝票番号、行番号、出荷予定日、商品コード、受注数、ロット番号、在庫ランク及び枝番等を含んで構成される。
【0020】
図4は、製造受入予定データの一例を示す図である。この
図4に示すように、製造受入データは、製造指示伝票番号、製造納期、商品コード、受入指示数、ロット番号、在庫ランク、出荷期限、及び、有効期限等を含んで構成される。
【0021】
図5は、製造払出予定データの一例を示す図である。この
図5に示すように、製造払出予定データは、製造指示伝票番号、行番号、製造予定日、商品コード、払出予定数、ロット番号、在庫ランク、及び、枝番等を含んで構成される。
【0022】
(業務支援装置の機能構成)
次に、制御部3は、記憶部2に記憶されている在庫管理プログラムを実行することで、
図1に示すように、表示制御部21、抽出部22、算出部23、データ生成部24、及び、記憶制御部25として機能する。
【0023】
表示制御部21は、出力制御部の一例であり、表示部の一例である出力装置7を介して後述する製品在庫計画照会画面、製品在庫計画照会日程調整画面、引当結果データ等を表示する。なお、以下、出力制御部は表示制御部21であることとして説明を進めるが、出力制御部として印刷制御部を設け、引当結果データ等を所定の用紙に印刷して出力してもよい。
【0024】
抽出部22は、検出部の一例であり、商品に付加されている取扱期限(例えば出荷期限及び有効期限)に基づいて在庫データを参照することで、取扱期限毎の商品の在庫数を検出する。
【0025】
算出部23は、各取扱期限の商品の在庫数から、引当済又は引当済予定の商品数を減算処理して、各取扱期限の商品毎の未引当数をそれぞれ算出する。
【0026】
記憶制御部25は、引当処理部の一例であり、操作者より指定された日付である基準日以降の取扱期限のうち、最小の取扱期限の商品の未引当数から、商品の引当数を引当処理する。
【0027】
データ生成部24は、在庫数が検出された各商品の、少なくとも取扱期限、引当数、及び、未引当数から引当数を減算処理した数である繰越数を含む引当結果データを生成する。この引当結果データが、表示制御部21により、出力装置7を介して表示される。
【0028】
また、引当処理部の一例である記憶制御部25は、基準日と共に、基準日からの所定日数の期間が指定された場合、基準日からの期間分の日数に相当する日毎の引当処理を行う。データ生成部24は、日毎の引当処理の引当結果データを生成する。これにより、基準日からの期間分の日数に相当する日毎の引当処理結果である、日毎の引当結果データが、表示制御部21により表示される。
【0029】
なお、下記の実施の形態の説明では、商品の引当数は、商品の受注数に相当する受注引当数、又は、製造払出数に相当する製造払出引当数であることとして説明を行う。また、 「商品」は、所定数の商品が一纏めとされ、取扱期限及びロット番号が付加されたロット単位で取り扱われることとする。このため、引当処理部の一例である記憶制御部25は、同じロット番号が付された商品のロット数に基づいて引当処理を行う。
【0030】
また、検出部の一例である抽出部22は、指定された製造納期に納品される商品の納品数である受入指示数を含む製造受入予定データを参照して、基準日を含む期間内における商品の製造受入数を検出する。引当処理部の一例である記憶制御部25は、製造受入数に基づいて商品の引当数を引当処理する。また、データ生成部24は、上述の指定された期間内における製造受入の日付の引当結果データとして、製造受入の日付の製造受入数を含めた引当結果データを生成する。
【0031】
また、検出部の一例である抽出部22は、在庫データを参照して検出した取扱期限毎の商品の在庫数を示すデータ、及び、在庫数を「0」とすると共に取扱期限を空欄とし、引当処理を行うロット番号が未定であることを示す「ロット未定」のデータを生成する。引当処理部の一例である記憶制御部25は、商品の在庫数が引当数に満たない場合に、「ロット未定」の在庫数から引当処理を行う。そして、データ生成部24は、「ロット未定」の在庫数から引当処理を行ったことを示す引当結果データを生成する。
【0032】
また、データ生成部24は、シミュレーション用の受注データであり、出荷予定日、受注数及び更新フラグを含むSIM受注データ、シミュレーション用の製造払出予定データであり、製造予定日、払出予定数及び更新フラグを含むSIM製造払出予定データ、及び、シミュレーション用の製造受入予定データであり、製造納期、受入指示数、取扱期限及び更新フラグを含むSIM製造受入予定データを生成する。
【0033】
出力制御部の一例である表示制御部21は、シミュレーション用の調整が指示された際に、SIM受注データに相当するシミュレーション受注データ、SIM製造払出予定データに相当するシミュレーション払出予定データ、及び、SIM製造受入予定データに相当するシミュレーション受入予定データを、出力装置7を介して表示する。このシミュレーション受注データ、シミュレーション払出予定データ、及び、シミュレーション受入予定データの、少なくとも出荷予定日、製造予定日又は製造納期は、それぞれ所望の値に変更可能となっている。
【0034】
データ生成部24は、出荷予定日が変更操作された場合、SIM受注データの出荷予定日を変更すると共に、出荷予定日が変更されたことを示す値に更新フラグを変更する。また、データ生成部24は、製造予定日が変更操作された場合、SIM製造払出予定データの製造予定日を変更すると共に、製造予定日が変更されたことを示す値に更新フラグを変更する。また、データ生成部24は、製造納期が変更操作された場合、SIM製造受入予定データの製造納期を変更すると共に、製造納期が変更されたことを示す値に更新フラグを変更する。
【0035】
引当処理部の一例である記憶制御部25は、SIM受注データの出荷予定日が変更されてシミュレーションの実行が指示された場合は、出荷予定日の変更前の受注数の引当結果を解除し、SIM受注データの変更された出荷予定日以降の取扱期限のうち、最小の取扱期限の商品の未引当数から、商品の受注数を引当数として引当処理する。また、記憶制御部25は、SIM製造払出予定データの製造予定日が変更されてシミュレーションの実行が指示された場合は、製造予定日の変更前の払出予定数の引当結果を解除し、SIM製造払出予定データの変更された製造予定日以降の取扱期限のうち、最小の取扱期限の商品の未引当数から、商品の払出予定数を引当数として引当処理する。また、記憶制御部25は、SIM製造受入予定データの製造納期が変更されてシミュレーションの実行が指示された場合は、製造納期の変更前の引当結果を解除し、製造納期に受入される製造受入数に基づく引当処理を行う。表示制御部21は、このようなシミュレーションの結果を上述の引当結果データとして出力装置7を介して表示する。
【0036】
また、記憶制御部25は、シミュレーションの結果で実データを更新する引当確定処理の実行が指定された場合、SIM受注データ、SIM製造払出予定データ及びSIM製造受入予定データのうち、値が変更されたことを示す上述の更新フラグを含むデータを検出する。そして、記憶制御部25は、検出したSIM受注データ、SIM製造払出予定データ又はSIM製造受入予定データに基づいて、記憶部2に記憶されている実データとなる受注データ、製造払出予定データ、又は、製造受入予定データを更新する。
【0037】
また、検出部の一例である抽出部22は、出荷予定日、製造予定日又は製造納期として、他の出荷予定日、製造予定日又は製造納期が追加で指定された場合、追加で指定された他の出荷予定日に対応する受注データの検出、追加で指定された他の製造予定日に対応する製造払出予定データの検出、又は、追加で指定された他の製造納期に対応する製造受入予定データの検出を行う。
【0038】
表示制御部21は、検出された他の出荷予定日に対応する受注データのレコードをシミュレーション受注データの追加のレコードとして出力制御する。または、表示制御部21は、検出された他の製造予定日に対応する製造払出予定データのレコードをシミュレーション払出予定データの追加のレコードとして出力制御する。または、記憶制御部25は、検出された他の製造納期に対応する製造受入予定データのレコードをシミュレーション受入予定データの追加のレコードとして出力制御する。
【0039】
以下、このような実施の形態の在庫管理装置1の具体的な動作を説明する。
【0040】
(製品在庫計画照会画面の表示処理)
実施の形態の在庫管理装置1は、まず、出荷予定日に出荷可能な商品の在庫数の確認を行う。この場合、例えば営業部又は製造部等の操作者は、入力装置6を操作して、製品在庫計画照会画面の表示を指定操作する。この操作が行われると、制御部3は、記憶部2に記憶されている在庫管理プログラムに基づいて、表示制御部21として機能し、
図6に例示する製品在庫計画照会画面を、出力装置7を介して表示する。
【0041】
この製品在庫計画照会画面は、所望の出荷予定日に出荷可能な商品の在庫数の確認を行うための照会画面である。操作者は、この製品在庫計画照会画面に対して、出荷予定の商品の商品コード、在庫ランク、基準日、及び、期間等の抽出条件を入力し、照会実行ボタン50を操作する。この
図6の例は、「S001」の商品コード、「A」の在庫ランク、「2022年10月1日」の基準日、及び、「3日」の期間の抽出条件が入力された例である。表示制御部21は、図示しない商品マスタから、「S001」の商品コードに対応する「製品A」の商品名を読み出し、「S001」の商品コードに隣接させて表示する。また、表示制御部21は、在庫ランクに対して「A」が入力された場合、この在庫ランクの入力欄に隣接させて「Aランク品」の文字を表示する。
【0042】
「基準日」は、商品の在庫数の確認及び在庫の引当処理を行う日にちである。「期間」は、この基準日から数えた在庫数の確認及び在庫の引当処理を行う日数である。すなわち、基準日を「2022年10月1日」とし、期間を「3日」として指定した場合には、「2022年10月1日」~「2022年10月3日」の3日間が、在庫確認の日にちであり、また、在庫の引当処理の対象となる日にちであることを意味する。
【0043】
なお、商品コード、在庫ランク、基準日、及び、期間等の入力欄の入力情報は、画面クリアボタン53が操作されることで、表示制御部21によりクリアされる。また、この在庫確認の段階では、調整ボタン51及び引当確定ボタン52は、表示制御部21により操作不可の状態に制御される。
【0044】
(引当結果画面ワークの初期処理(在庫情報の未引当数の把握))
次に、抽出条件が入力され照会実行ボタン50が操作されると、
図7に概要を示す引当結果画面ワークの初期処理が行われる。
【0045】
引当結果画面ワークの初期処理においては、まず、製品在庫計画照会画面に入力された抽出条件に基づいて、現在の在庫庫情報が抽出される。すなわち、製品在庫計画照会画面に上述の抽出条件が入力され、照会実行ボタン50が操作されると、制御部3は、在庫管理プログラムに基づいて抽出部22として機能し、
図2に示す在庫データから、商品コードが「S001」で在庫ランクが「Aランク」の在庫データを抽出する。
【0046】
抽出条件に対応する在庫データが抽出されると、制御部3が在庫管理プログラムに基づいて記憶制御部25として機能し、記憶部2に形成されている記憶領域である、
図8に例示する引当在庫ワークに、抽出された在庫データを記憶制御(インサート:insert)する。この引当在庫ワークには、抽出された在庫データの商品コード、ロット番号(ロットNo)、現在庫数、出荷期限、有効期限及び在庫ランクが記憶される。また、引当在庫ワークには、未引当数の入力欄が設けられている。記憶制御部25は、この未引当数の入力欄に、抽出された在庫データの現在庫数を入力する。
【0047】
次に、受注又は製造払出で、既にロット番号が指定されている商品を抽出して現在庫数から減算処理する。
【0048】
すなわち、抽出部22は、
図3に例示した受注データを参照し、ロット番号が付加されている受注データを抽出する。この
図3の例の場合、商品コードが「S001」、在庫ランクが「A」で、受注数が「50ロット」の受注データに対しては、「L004」のロット番号が付されている。これは、受注により既にロット指定されている商品であることを示す。このため、抽出部22は、この「L004」のロット番号が付されている受注データを抽出する。記憶制御部25は、抽出された受注データを、
図9(a)に示すように、記憶部2の記憶領域である第1のワーク(受注データ)に記憶制御する。
【0049】
また、制御部3は、在庫管理プログラムに基づいてデータ生成部24として機能し、第1のワーク(受注データ)に記憶された受注データの受注数を、
図9(b)に示すように商品コード及びロット番号で集計した受注データを生成する。記憶制御部25は、この受注データを、第2のワーク(受注データ)に記憶制御する。
【0050】
次に、抽出部22は、
図5に例示した製造払出予定データを参照し、ロット番号が付加されている製造払出予定データを抽出する。この
図5の例の場合、商品コードが「S001」、在庫ランクが「A」で、払出予定数が「30ロット」の製造払出予定データに対しては、「L002」のロット番号が付されている。これは、製造払出により、既にロット指定されている商品であることを示す。このため、抽出部22は、この「L002」のロット番号が付されている製造払出予定データを抽出する。記憶制御部25は、抽出された製造払出予定データを、
図10(a)に示すように、記憶部2の記憶領域である第1のワーク(製造払出予定データ)に記憶制御する。
【0051】
また、データ生成部24は、第1のワーク(製造払出予定データ)に記憶された製造払出予定データの払出予定数を、
図9(10)に示すように商品コード及びロット番号で集計した製造払出予定データを生成する。記憶制御部25は、この製造払出予定データを、第2のワーク(製造払出予定データ)に記憶制御する。
【0052】
次に、制御部3は、在庫管理プログラムに基づいて算出部23として機能し、
図11に示す引当在庫ワークに在庫データのうち、
図9(b)に示した「L004」のロット番号に対応する在庫データを検出する。そして、この「L004」のロット番号に対応する在庫データの未引当数から、
図9(b)に示した「L004」のロット番号が付された受注データの受注数を減算処理する。すなわち、この例の場合、「L004」のロット番号の在庫データの未引当数は「60ロット」であり(
図8参照)、
図9(b)に示した「L004」のロット番号が付された受注データの受注数は「50ロット」である。このため、算出部23は、「在庫データの未引当数60ロット-受注データの受注数50ロット=10ロット」の演算を行う。
【0053】
同様に、算出部23は、
図11に示す引当在庫ワークに在庫データのうち、
図10(b)に示した「L002」のロット番号に対応する在庫データを検出する。そして、この「L002」のロット番号に対応する在庫データの未引当数から、
図10(b)に示した「L002」のロット番号が付された製造払出予定データの払出予定数を減算処理する。すなわち、この例の場合、「L002」のロット番号の在庫データの未引当数は「40ロット」であり(
図8参照)、
図10(b)に示した「L002」のロット番号が付された製造払出予定データの払出予定数は「30ロット」である。このため、算出部23は、「在庫データの未引当数40ロット-製造払出予定データの払出予定数30ロット=10ロット」の演算を行う。
【0054】
記憶制御部25は、
図11に示すように、引当在庫ワークの「L004」のロット番号及び「L002」のロット番号の各未引当数に対して、上述の演算結果を反映させる。これにより、引当在庫ワークの「L004」のロット番号の未引当数は「10ロット」となり、「L002」のロット番号の未引当数も「10ロット」となる。
【0055】
次に、データ生成部24は、未引当数に対して上述の演算結果が反映された引当在庫ワークに基づいて、
図12に示す結果表示画面データ(初期)を生成する。この結果表示画面データ(初期)は、日付、ロット番号、在庫ランク、出荷期限、有効期限、未引当数、変動数、繰越数、受注引当数、受注引当済数、製造払出引当数、製造払出引当済数、製造受入数、及び、商品コード等を含んで構成される。
【0056】
データ生成部24は、
図11に示す引当在庫ワークの在庫データを出荷期限順にソートすることで、
図12に示す結果表示画面データ(初期)を生成する。これにより、イメージではあるが、
図12に示すように、出荷期限順に列方向に沿って在庫データを並べたかたちの結果表示画面データ(初期)が生成される。なお、データ生成部24は、繰越数に対しては、対応する未引当数を入力(セット)する。
【0057】
記憶制御部25は、このような結果表示画面データ(初期)を、記憶部2に形成されている記憶領域である結果表示画面ワーク(初期)に記憶制御する。これにより、
図12に示すように、基準日として操作者により指定された「2022年10月1日」分の結果表示画面データ(初期)が生成される。表示制御部21は、この結果表示画面データ(初期)を、
図6に示す製造在庫計画照会画面の結果表示領域55に表示する。
【0058】
(基準日からの設定された期間のループ処理)
次に、このような引当結果画面ワークの初期処理が完了すると、制御部3は、在庫管理プログラムに基づいて、製造在庫計画照会画面に入力された基準日からの期間における、下記のループ処理を行う。
図13は、このようなループ処理の概要を示している。
【0059】
1.まず、該当日分のデータ準備を行う(ただし、基準日分のときのみ、結果表示画面ワーク(初期)をデータの抽出基とする)。
抽出条件:結果表示画面ワークの日付=最大(結果表示画面ワークの日付)、かつ、ロットNo<>ロット未定で抽出したレコードを自身に日付=該当日としてインサートする。
抽出部22が抽出条件に基づいてデータの抽出を行い、記憶制御部25がインサート処理を行う。
【0060】
2.次に、製造受入予定データに基づいて在庫の追加処理を行う(シミュレーション時にはSIM製造受入予定データから抽出)。
抽出部22は、製造受入予定データの製造納期=該当日、かつ、製造受入予定データの商品コード=結果表示画面ワークの商品コード、かつ、製造受入予定データの商品ランク=結果表示画面ワークの商品ランクの抽出条件に基づいて、製造受入予定データの抽出を行う。
なお、製造受入予定データは、払出ができない場合は受入することもできないため、払出側のロット番号での引当ができていることが前提となる。また、この製造受入予定データの抽出のタイミングで、記憶制御部25は、後述するシミュレーション用のSIM製造受入予定データを更新する。
【0061】
3.次に、受注データによる引当処理を行う。
この場合、まず、抽出部22が、受注データの抽出(シミュレーション時にはSIM受注データから抽出する)を行う。
抽出条件は、受注データの出荷予定日=該当日、かつ、受注データのロット番号=nullデータ、かつ、受注データの商品コード=結果表示画面ワークの商品コード、かつ、受注データの商品ランク=結果表示画面ワークの商品ランクとなる(シミュレーション用にSIM受注データにこのタイミングで更新しておく)。
【0062】
次に、データ生成部24が、抽出した受注データで受注伝票番号順に引当処理を行う。
データ生成部24は、「結果表示画面ワークの出荷期限>=該当日付で出荷日付が最小のもの、かつ、結果表示画面ワークの繰越数>0(同一出荷期限で複数レコードが取得できた場合はその中でロットNoが最小のもの)」の条件に基づいて、引当対象の特定を行う。
【0063】
次に、結果表示画面ワークの更新処理を行う。
この更新処理は、記憶制御部25が、受注引当数に受注未引当数をセットして行う。ただし、結果表示画面ワークの未引当数を最大とする。
また、この更新処理は、記憶制御部25が、変動数に「受注引当数×(-1)」をセットして行う。
さらに、この更新処理は、記憶制御部25が、繰越数に未引当数+変動数をセットして行う。
【0064】
次に、受注データワークの更新処理を行う。
この更新処理は、記憶制御部25が、引当数に結果表示画面ワークの受注引当数をセットして行う。
また、この更新処理は、算出部23が、未引当数から引当数を減算処理し、記憶制御部25が、この減算処理した値をセットして行う。
さらに、更新処理は、記憶制御部25が、ロット番号にロットNoをセットして行う。
【0065】
次に、受注データワークの追加処理を行う。条件は、未引当数<>0となる。未引当数<>0のレコードであれば、「抽出したデータで受注伝票番号順に引当処理を行う」の処理に戻り、未引当に対する処理を再度実行する。
【0066】
4.製造払出予定データによる引当処理を行う。
この場合、まず、抽出部22が、「製造払出予定データの製造予定日=該当日、かつ、製造払出予定データのロット番号=nullデータ、かつ、商品コード=結果表示画面ワークの商品、かつ、製造払出予定データの在庫ランク=結果表示画面ワークの在庫ランク」の抽出条件に基づいて、製造払出予定データを抽出する。
【0067】
なお、この製造払出予定データの抽出のタイミングで、後述するシミュレーション用のSIM製造払出予定データを更新する。また、抽出部22は、シミュレーション時には、SIM製造払出予定データに基づいて、製造払出予定データの抽出を行う。
【0068】
次に、データ生成部24は、抽出した製造払出予定データで、製造指示伝票に引当処理を行う。引当対象の条件は、「結果表示画面ワークの出荷期限≧該当日付で出荷日付が最小のもの、かつ、結果表示画面ワークの繰越数>0」となる。
なお、同一出荷期限の複数のレコードが取得された場合は、その中でロット番号が最小のものに対して引当処理を行う。
【0069】
次に、記憶制御部25は、結果表示画面ワークの更新処理を行う。
この場合、まず、記憶制御部25は、製造払出引当数に製造払出未引当数をセットする。ただし、結果表示画面ワークの未引当数を最大する。例外として、ロット番号=ロット未定の場合は、のまま受注未引当数をセットする。
また、記憶制御部25は、変動数に「製造払出引当数×(-1)」をセットする。
また、記憶制御部25は、繰越数に「未引当数+変動数」をセットする。
【0070】
次に、記憶制御部25は、製造払出予定データワークの更新処理を行う。
この場合、記憶制御部25は、引当数に結果表示画面ワークの製造払出引当数をセットする。
また、算出部23が、未引当数に引当数を減算処理し、記憶制御部25が、この減算処理した値をセットする。
また、記憶制御部25が、ロット番号をセットする。
【0071】
次に、記憶制御部25が、製造払出予定データワークの追加処理を行う。この追加処理の条件は、「未引当数<>0」である。
【0072】
なお、「未引当数<>0」のレコードであれば、「抽出した製造払出予定データで、製造指示伝票に引当処理を行う」の処理に戻り、未引当に対する処理を再度実行する。
【0073】
5.次に、記憶制御部25が、基準日時点の引当済受注データの反映処理を行う。
この場合、抽出部22は、第1のワーク(受注データ)の出荷予定日=該当日の受注データを抽出する。記憶制御部25は、第1のワーク(受注データ)のロット番号、第1のワーク(受注データ)の商品コードに基づいて、第1のワーク(受注データ)の受注数を、結果表示画面ワークの受注引当済数に更新処理する。これにより、抽出された受注データを結果表示画面ワークに反映させることができる。
【0074】
6.次に、記憶制御部25は、基準日時点の製造払出予定データの反映処理を行う。
この場合、抽出部22は、第1のワーク1(製造払出予定データ)の製造予定日=該当日の製造払出予定データを抽出する。記憶制御部25は、第1のワーク(製造払出予定データ)のロット番号、及び、第1のワーク(製造払出予定データ)の商品コードに基づいて、第1のワーク(製造払出予定データ)の払出予定数を、結果表示画面ワークの製造払出引当済数に更新処理する。
【0075】
7.製造在庫計画照会画面に入力された基準日からの期間における、このようなループ処理が終了すると、表示制御部21は、製造在庫計画照会画面の結果表示領域55に、指定された期間分の結果表示画面を表示する。
【0076】
なお、この表示の際、表示制御部21は、未引当数=0、変動数=nullデータ、繰越数=0、受注引当数から製造受入数までnullデータという条件を満たすレコードは非表示とする。
【0077】
(基準日からの設定された期間のループ処理の具体例)
次に、このような基準日からの設定された期間のループ処理の具体例を説明する。この例においては、
図6に示したように、操作者により、商品Aの商品コードである「S001」が指定され、Aランク品を示す「A」の在庫ランクが指定されたものとする。また、基準日として「2022年10月1日」が指定され、期間として「3日」が指定されたものとする。
【0078】
(10月1日(基準日)の処理)
まず、10月1日(基準日)に対する、「1」で説明した該当日分のデータ準備処理であるが、上述のように、抽出部22が、「結果表示画面ワークの日付=最大(結果表示画面ワークの日付)、かつ、ロットNo<>ロット未定」の抽出条件で抽出する。そして、記憶制御部25が、抽出されたレコードを自身に日付=該当日(この場合は、10月1日の基準日)として結果表示画面ワークにインサートする。なお、記憶制御部25は、ロット未定とするレコードも、この時点で結果表示画面ワークにインサートする。
【0079】
なお、10月1日は「基準日」に相当し、
図12及び
図14に示すように結果表示画面ワーク(初期)としてのデータが存在するため(抽出済であるため)、選択部3は、このデータ準備処理をスキップする。
【0080】
次に、「2」で説明した製造受入予定データに基づく在庫の追加処理であるが、この例の場合、抽出部22は、
図4に示す製造受入予定データのうち、「製造受入予定の製造納期=10月1日、かつ、商品コード=S001、かつ、商品ランク=A」の抽出条件に対応するレコードを抽出する。なお、
図4に示す製造受入予定データの場合、この抽出条件に対応するレコードは存在しないため、レコードの抽出は行われない。
【0081】
次に、「3」で説明した受注データによる引当処理であるが、この例の場合、抽出部22は、
図3に示す受注データのうち、「受注データの出荷予定日=10月1日、かつ、受注データのロット番号=null、かつ、商品コード=S001、かつ、商品ランク=A」の抽出条件に対応する受注データを抽出する。この場合、
図3の1列目のレコードである、受注伝票番号が「J0000000001」で受注数が「20ロット」のレコードが抽出条件に合致するレコードとして、抽出部22により抽出される。
【0082】
記憶制御部25は、抽出部22により抽出されたレコードを、
図15に示す受注データワークにインサート処理する。また、記憶制御部25は、このタイミングで、
図16に示すシミュレーション用のSIM受注データを、抽出部22により抽出されたレコードに基づいて更新処理する。
【0083】
次に、抽出したデータで受注伝票番号順に引当処理を行うが、この場合、抽出部22は、「結果表示画面ワークの「出荷期限≧該当日付」で出荷日付が最小のもの、かつ、結果表示画面ワークの繰越>0」の抽出条件に合致するレコードを、
図17に示すように結果表示画面ワークから抽出する。この
図17の例の場合、2列目のレコードが、基準日(該当日付)以降の出荷期限が最小の日付のレコードであるため、この2列目のレコードである「L001」のロット番号のレコードが抽出部22により抽出される。
【0084】
なお、
図17の1列目のレコードは、出荷期限が基準日(該当日付)よりも前の日付(2022年9月20日)であるため、抽出は行われず、引当の対象とはならない。
【0085】
また、引当対象が見つからない場合(引当するレコードが無い場合)、「ロット番号=ロット未定」のレコードを引当の対象として、下記に説明する「結果表示画面ワークの更新処理」及び「受注データワークの更新処理」が行われる。
【0086】
次に、記憶制御部25は、「結果表示画面ワークの更新処理」として、
図18に示す結果表示画面ワークの2行目のレコードである、ロット番号が「L001」のレコードの受注引当数に対して、
図15に示した受注データワークの「20ロット」の未引当数をセットする。
【0087】
また、算出部23は、「受注引当数×(-1)=-20ロット」の演算を行う。記憶制御部25は、
図18に示す結果表示画面ワークの2行目のレコードである、ロット番号が「L001」のレコードの変動数に対して、この算出結果となる「-20ロット」をセットする。
【0088】
さらに、記憶制御部25は、
図18に示す結果表示画面ワークの2行目のレコードである、ロット番号が「L001」のレコードの繰越数に対して、未引当数+変動数の値をセットする。この例の場合、未引当数は「30ロット」で変動数が「-20ロット」であるため、算出部23は、「30ロット+(-20ロット)=10ロット」の演算を行う。記憶制御部25は、この算出結果となる「10ロット」の値をとなり、ロット番号が「L001」のレコードの繰越数に対してセットする。
【0089】
次に、「受注データワークの更新処理」として、記憶制御部25が、
図15に示す受注データワークのロット番号に対して、
図19に示すように「L001」のロット番号をセットする。また、記憶制御部25は、
図19に示すように、受注データワークの引当数に、結果表示画面ワークの「20ロット」の受注引当数をセットする。さらに、算出部23は、
図15に示すように「20ロット」の受注数がセットされている未引当数から、
図19に示すように「20ロット」がセットされた引当数を減算処理する(20ロット-20ロット=0ロット)。記憶制御部25は、算出された「0ロット」を、
図19に示すように受注データワークの未引当数にセットする。
【0090】
次に、「4」で説明した「製造払出予定データにより引当処理」であるが、この例の場合、抽出部22は、
図5に示す製造払出予定データを参照し、「製造払出予定データの製造予定日=10月1日、かつ、製造払出予定データのロット番号=nullデータ、かつ、商品コード=S001、かつ、商品ランク=A」の抽出条件に合致する製造払出予定データを抽出する。
図5の例の場合、この抽出条件に合致する製造払出予定データは存在しない。このため、「該当データ無し」となり、製造払出予定データは抽出されない。
【0091】
次に、「5」で説明した「基準日時点の引当済受注データの反映処理」であるが、この例の場合、抽出部22は、
図9(a)に示した第1のワーク(受注データ)の出荷予定日=10月1日のレコードを抽出する。記憶制御部25は、抽出されたレコードに基づいて結果表示画面ワークを更新処理する。ただ、
図9(a)に示した第1のワーク(受注データ)には、出荷予定日=10月1日のレコードが存在しない。このため、「該当データ無し」となり、記憶制御部25による結果表示画面ワークの更新処理は行われない。
【0092】
次に、「6」で説明した「基準日時点の製造払出予定データの反映処理」であるが、この例の場合、抽出部22は、
図10(a)に示した第1のワーク(製造払出予定データ)の製造予定日=10月1日のレコードを抽出する。記憶制御部25は、抽出されたレコードに基づいて結果表示画面ワークを更新処理する。ただ、
図10(a)に示した第1のワーク(製造払出予定データ)には、製造予定日=10月1日のレコードが存在しない。このため、「該当データ無し」となり、記憶制御部25による結果表示画面ワークの更新処理は行われない。
【0093】
この時点での製造在庫計画照会画面の結果表示領域55の表示内容は、イメージではあるが、
図20に示すように、2022年10月1日の日付(基準日)に対応した表示内容となる。
【0094】
(10月2日の処理)
次に、10月2日分に対応する、「1」で説明した該当日分のデータ準備処理であるが、上述のように、抽出部22が、
図18に示した結果表示画面ワークを参照し、「結果表示画面ワークの日付=最大(結果表示画面ワークの日付)、かつ、ロットNo<>ロット未定」の抽出条件に合致するデータを抽出する。これにより、
図18に示した10月1日分の結果表示画面ワークのデータが抽出される。
【0095】
記憶制御部25は、抽出された10月1日分の結果表示画面ワークのデータの日付に対し、この場合、2022年10月2日の日付(=該当日)を付加して、
図21に示すように結果常時画面ワークにインサートする。この際、記憶制御部25は、10月2日分の各レコードの未引当数に対して繰越数をセットする。また、記憶制御部25は、10月2日分の各レコードの変動数、受注引当数、受注引当済数、製造払出引当数、製造払出引当済数、及び、製造受入数をそれぞれクリアする(空にする)。
【0096】
次に、「2」で説明した製造受入予定データに基づく在庫の追加処理であるが、この例の場合、抽出部22は、
図4に示す製造受入予定データのうち、「製造受入予定の製造納期=10月2日、かつ、商品コード=S001、かつ、商品ランク=A」の抽出条件に対応するレコードを抽出する。なお、
図4に示す製造受入予定データの場合、この抽出条件に対応するレコードは存在しないため、レコードの抽出は行われない。
【0097】
次に、「3」で説明した受注データによる引当処理であるが、この例の場合、抽出部22は、
図3に示す受注データのうち、「受注データの出荷予定日=10月2日、かつ、受注データのロット番号=null、かつ、商品コード=S001、かつ、商品ランク=A」の抽出条件に対応する受注データを抽出する。
図4に示す受注データの場合、この抽出条件に対応するレコードは存在しないため、レコードの抽出は行われない。
【0098】
次に、「4」で説明した「製造払出予定データにより引当処理」であるが、この例の場合、抽出部22は、
図5に示す製造払出予定データを参照し、「製造払出予定データの製造予定日=10月2日、かつ、製造払出予定データのロット番号=nullデータ、かつ、商品コード=S001、かつ、商品ランク=A」の抽出条件に合致する製造払出予定データを抽出する。
図5の例の場合、製造指示伝票番号が「SSZ00000003」で受注数が「40ロット」のレコードが抽出条件に合致するレコードとして、抽出部22により抽出される。
【0099】
記憶制御部25は、抽出部22により抽出されたレコードを、
図22(a)に示すように、製造払出予定データワークにインサート処理する。また、記憶制御部25は、このタイミングで、
図22(b)に示すように、シミュレーション用のSIM製造払出予定データを、抽出部22により抽出されたレコードに基づいて更新処理する。
【0100】
次に、抽出したデータで製造指示伝票番号順に引当処理を行うが、この場合、抽出部22は、「結果表示画面ワークの「出荷期限≧該当日付」で出荷日付が最小のもの、かつ、結果表示画面ワークの繰越>0」の抽出条件に合致するレコードを、
図23に示すように結果表示画面ワークから抽出する。この
図23の例の場合、下から3列目のレコードが、該当日付である10月2日以降の出荷期限が最小の日付のレコードであるため、この「L002」のロット番号のレコードが抽出部22により抽出される。
【0101】
なお、
図23の下から5列目及び下から4列目の各レコードは、出荷期限がそれぞれ10月2日よりも前の日付である9月20日又は10月1日であるため、抽出は行われず、引当の対象とはならない。
【0102】
また、引当対象が見つからない場合(抽出するレコードが無い場合)、「ロット番号=ロット未定」のレコードが対象となり、下記に説明する「結果表示画面ワークの更新処理」及び「受注データワークの更新処理」が行われる。
【0103】
次に、記憶制御部25は、「結果表示画面ワークの更新処理」として、
図24に示す結果表示画面ワークの下から3行目のレコードである、ロット番号が「L002」のレコードの製造払出引当数に対して、この「L002」のレコードの「10ロット」の未引当数をセットする。
【0104】
また、算出部23は、「製造払出引当数×(-1)=-10ロット」の演算を行う。記憶制御部25は、
図24に示す結果表示画面ワークの下から3行目のレコードである、ロット番号が「L002」のレコードの変動数に対して、この算出結果となる「-10ロット」をセットする。
【0105】
さらに、記憶制御部25は、
図24に示す結果表示画面ワークの下から3行目のレコードである、ロット番号が「L002」のレコードの繰越数に対して、未引当数+変動数の値をセットする。この例の場合、未引当数は「10ロット」で変動数が「-10ロット」であるため、算出部23は、「10ロット+(-10ロット)=0ロット」の演算を行う。記憶制御部25は、この算出結果となる「0ロット」の値を、
図24に示す結果表示画面ワークの下から3行目のレコードの繰越数に対してセットする。
【0106】
次に、「製造払出予定データワークの更新処理」として、記憶制御部25が、
図25(a)に示す製造払出予定データワークのロット番号に対して、「L002」のロット番号をセットする。また、記憶制御部25は、
図25(a)に示すように、製造払出予定データワークの引当数に、結果表示画面ワークの「10ロット」の受注引当数をセットする。さらに、算出部23は、
図22(a)に示すように「40ロット」の払出予定数がセットされている未引当数から、
図25に示すように「10ロット」がセットされた引当数を減算処理する(40ロット-10ロット=30ロット)。記憶制御部25は、算出された「30ロット」を、
図25(a)に示すように製造払出予定データワークの未引当数にセットする。
【0107】
次に、記憶制御部25は、
図25(b)に示すように、製造払出予定データワークに対して、製造指示伝票番号が「SSZ00000003」のレコードを追加処理する。この際、記憶制御部25は、ロット番号をクリア処理(空欄)する。また、記憶制御部25は、枝番を、一つインクリメントして「2」とする。また、記憶制御部25は、引当数を「0」とする。なお、未引当数<>0のレコードであれば、未引当に対して「抽出したデータで製造指示伝票順に引当処理」が再度、実行される。
【0108】
図26は、この処理段階における結果表示画面ワークの一例を示す図である。この
図26に示す結果表示画面ワークの10月2日分の例は、「L002」、「L004」及び「ロット未定」のロット番号に対する変動数が、それぞれ「-10ロット」、「-10ロット」、「-20ロット」となり、繰越数は、それぞれ「0ロット」、「0ロット」、「-20ロット」となり、製造払出引当数はそれぞれ「10ロット」、「10ロット」、「20ロット」となった例である。
【0109】
また、記憶制御部25は、これに対応して、
図27に示すように、製造指示伝票番号がそれぞれ「SSZ00000003」で、枝番がそれぞれ「1」、「2」、「3」の「L002」、「L004」及び「ロット未定」のロット番号の製造払出予定データとして、それぞれ「40ロット」の払出予定数とし、それぞれ「10ロット」、「10ロット」、「20ロット」の引当数とし、それぞれ「30ロット」、「20ロット」、「0ロット」の未引当数とした製造払出予定データを製造払出予定データワークに記憶する。
【0110】
次に、「5」で説明した「基準日時点の引当済受注データの反映処理」であるが、この例の場合、抽出部22は、
図9(a)に示した第1のワーク(受注データ)の出荷予定日=10月2日のレコードを抽出する。記憶制御部25は、抽出されたレコードに基づいて結果表示画面ワークを更新処理する。ただ、
図9(a)に示した第1のワーク(受注データ)には、出荷予定日=10月2日のレコードが存在しない。このため、「該当データ無し」となり、記憶制御部25による結果表示画面ワークの更新処理は行われない。
【0111】
次に、「6」で説明した「基準日時点の製造払出予定データの反映処理」であるが、この例の場合、抽出部22は、
図10(a)に示した第1のワーク(製造払出予定データ)の製造予定日=10月2日のレコードを抽出する。
図10(a)に示した第1のワーク(製造払出予定データ)には、製造予定日=10月2日のレコードが存在する。このため、抽出部22は、
図28にしめすように、製造予定日=10月2日のレコードを抽出する。
【0112】
記憶制御部25は、
図29に示す結果表示画面ワークの10月2日分の各レコードのうち、第1のワーク(製造払出予定データ)から抽出されたレコードの「L002」のロット番号に対応するレコードを検出する。そして、記憶制御部25は、
図29に示す結果表示画面ワークの10月2日分の「L002」のロット番号に対応するレコードの製造払出引当済数を、第1のワーク(製造払出予定データ)から抽出された「L002」のロット番号のレコードの払出予定数である「30ロット」に更新処理する。
【0113】
この時点での製造在庫計画照会画面の結果表示領域55の表示内容は、イメージではあるが、
図30に示すように、2022年10月2日の日付に対応した表示内容となる。なお、この
図30において、10月2日分の「ロット未定」の繰越数である「-20ロット」は、ロットが引当を行うことができないことを意味しており、換言すれば、「欠品」の発生を意味している。
【0114】
(10月3日の処理)
次に、10月3日分に対応する、「1」で説明した該当日分のデータ準備処理であるが、上述のように、抽出部22が、
図18に示した結果表示画面ワークを参照し、「結果表示画面ワークの日付=最大(結果表示画面ワークの日付)、かつ、ロットNo<>ロット未定」の抽出条件に合致するデータを抽出する。これにより、
図29に示した10月2日分の結果表示画面ワークのデータが抽出される。
【0115】
記憶制御部25は、抽出された10月2日分の結果表示画面ワークのデータの日付に対し、この場合、2022年10月3日の日付(=該当日)を付加して、
図31に示すように結果常時画面ワークにインサートする。この際、記憶制御部25は、10月3日分の各レコードの未引当数に対して繰越数をセットする。また、記憶制御部25は、10月3日分の各レコードの変動数、受注引当数、受注引当済数、製造払出引当数、製造払出引当済数、及び、製造受入数をそれぞれクリアする(空にする)。
【0116】
次に、「2」で説明した製造受入予定データに基づく在庫の追加処理であるが、この例の場合、抽出部22は、
図4に示す製造受入予定データのうち、「製造受入予定の製造納期=10月3日、かつ、商品コード=S001、かつ、商品ランク=A」の抽出条件に対応するレコードを抽出する。これにより、
図32(a)に示す製造指示伝票番号が「SSZ00000001」でロット番号が「L005」の製造受入予定データが抽出される。
【0117】
なお、記憶制御部25は、このタイミングで、
図32(b)に示すように、シミュレーション用のSIM製造受入予定データを、抽出部22により抽出された製造受入予定データに基づいて更新処理する。
【0118】
次に、記憶制御部25は、抽出された「L005」のロット番号のレコードを、
図33に示すように結果表示画面ワークに追加する。また、記憶制御部25は、
図33に示すように、10月3日分のレコードのうち、ロット番号が「L005」のレコードの未引当数に「0ロット」をセットする。また、記憶制御部25は、
図32(a)に示す製造受入予定データの「100ロット」の受入指示数を、
図33に示す結果表示画面ワークの10月3日分の、ロット番号が「L005」のレコードの変動数、繰越数及び製造受入数にそれぞれセットする。
【0119】
次に、「3」で説明した受注データによる引当処理であるが、この例の場合、抽出部22は、
図3に示す受注データのうち、「受注データの出荷予定日=10月3日、かつ、受注データのロット番号=null、かつ、商品コード=S001、かつ、商品ランク=A」の抽出条件に対応する受注データを抽出する。
図4に示す受注データの場合、この抽出条件に対応するレコードは存在しないため、レコードの抽出は行われない。
【0120】
次に、「4」で説明した「製造払出予定データにより引当処理」であるが、この例の場合、抽出部22は、
図5に示す製造払出予定データを参照し、「製造払出予定データの製造予定日=10月3日、かつ、製造払出予定データのロット番号=nullデータ、かつ、商品コード=S001、かつ、商品ランク=A」の抽出条件に合致する製造払出予定データを抽出する。
図5に示す製造払出予定データの場合、この抽出条件に対応するレコードは存在しないため、レコードの抽出は行われない。
【0121】
次に、「5」で説明した「基準日時点の引当済受注データの反映処理」であるが、この例の場合、抽出部22は、
図9(a)に示した第1のワーク(受注データ)の出荷予定日=10月3日のレコードを抽出する。記憶制御部25は、抽出されたレコードに基づいて結果表示画面ワークを更新処理する。ただ、
図9(a)に示した第1のワーク(受注データ)には、出荷予定日=10月3日のレコードが存在しない。このため、「該当データ無し」となり、記憶制御部25による結果表示画面ワークの更新処理は行われない。
【0122】
次に、「6」で説明した「基準日時点の製造払出予定データの反映処理」であるが、この例の場合、抽出部22は、
図10(a)に示した第1のワーク(製造払出予定データ)の製造予定日=10月3日のレコードを抽出する。
図10(a)に示した第1のワーク(製造払出予定データ)には、製造予定日=10月3日のレコードが存在しないため、レコードの抽出は行われない。
【0123】
この時点において、結果表示画面ワークには、2022年10月1日を基準日とした、2022年10月1日~10月3日の計3日の期間の結果表示画面データが生成される。算出部23は、この結果表示画面データに基づいて、10月1日~10月3日の各日付に対応する未引当数及び繰越数の合計数をそれぞれ算出する。表示制御部21は、この10月1日~10月3日の各日付に対応する未引当数及び繰越数の合計数を付加した結果表示画面データを、
図35に示すように、製造在庫計画照会画面の結果表示領域55に表示する。
【0124】
この
図35において、上述のように、10月2日分の「ロット未定」の繰越数である「-20ロット」は、ロットが引当を行うことができないことを意味しており、換言すれば、「欠品」の発生を意味している。
【0125】
なお、表示制御部21は、未引当数=0、変動数=null、繰越数=0、受注引当数から製造受入数までnullという条件を満たすレコードは、製造在庫計画照会画面に対しては非表示とする。
【0126】
(シミュレーション処理)
次に、実施の形態の在庫管理装置1は、上述のように欠品が発生する場合に、製造指示計画を変更した場合の引当状況、及び、出荷日を変更した場合の引当状況を、それぞれシミュレーション可能となっている。これにより、欠品に対して対処可能となっている。
【0127】
(製造指示計画を変更するシミュレーション処理)
まず、欠品が発生しているため、製造指示計画を変更するシミュレーションを行う場合を説明する。
図36は、製造在庫計画照会画面の一例を示す図である。表示制御部21は、この製造在庫計画照会画面の結果表示領域55に、
図37に示す表示内容を表示すると、商品コード、在庫ランク、基準日及び期間の各入力欄を、再入力できないようにロック状態とする。
【0128】
なお、各入力欄のロックを解除する場合(再入力を行う場合)、操作者は、画面クリアボタン53を操作する。これにより、商品コード、在庫ランク、基準日及び期間の各入力欄の入力情報がクリア処理されると共に(未入力状態となり)、結果表示領域55の表示内容もクリア処理される(非表示となる)。
【0129】
次に、例えば製造納期を10月2日に変更する場合、操作者は、結果表示領域55に表示されている表示内容のうち、欠品発生日である2022年10月2日のレコードを選択操作し、調整ボタン51を操作する。これにより、表示制御部21は、製造在庫計画照会画面に代えて、
図38に示す製造在庫計画照会日程調整画面を、出力装置7に表示する。この製造在庫計画照会日程調整画面は、受注追加ボタン57、払出予定追加ボタン58及び受入予定追加ボタン59を備えたデータ追加補助領域の他、シミュレーション受注データ、シミュレーション払出予定データ、及び、シミュレーション受入予定データの各表示欄を備えている。
【0130】
表示制御部21は、
図39(a)に示すSIM受注データ、
図39(b)に示すSIM製造払出予定データ、及び、
図39(c)に示すSIM製造受入予定データを記憶部2から読み出し、
図38に示すように製造在庫計画照会日程調整画面のシミュレーション受注データの表示欄、シミュレーション払出予定データの表示欄、及び、シミュレーション受入予定データの表示欄に、それぞれ表示する。
【0131】
なお、シミュレーション受注データ、シミュレーション払出予定データ、又は、シミュレーション受入予定データが複数存在する場合、表示制御部21は、複数のデータを列方向に並べて表示する。
図38には、各データに対応するスクロールバーをそれぞれ図示しているが、このスクロールバーは、操作者が複数のデータをスクロール表示操作するためのものである。
【0132】
次に、この例は、製造納期を10月2日に変更するシミュレーションを行う例であるため、操作者は、これまで「2022年10月3日」としていたシミュレーション受入予定データの製造納期を、
図40に示すように「2022年10月2日」に変更入力して確定ボタン61を操作する。
【0133】
なお、この例は、製造受入予定データの製造納期を前倒しする例であるが、この他、受注データの出荷予定日を後倒し、又は、製造払出予定データの製造予定日を後倒ししてもよい。
【0134】
また、シミュレーション受注データに対しては、「出荷予定日」及び「在庫ランク」の変更入力が可能となっており、シミュレーション払出予定データに対しては、「製造予定日」及び「在庫ランク」の変更入力が可能となっている。また、シミュレーション受入予定データに対しては、「製造納期」の他、「在庫ランク」、「出荷期限」及び「有効期限」が変更可能となっている。また、閉じるボタン62が操作されると、表示制御部21は、この製造在庫計画照会日程調整画面を閉じて、
図36に示した製造在庫計画照会画面を、出力装置7に表示する。
【0135】
次に、シミュレーション受入予定データの製造納期が「2022年10月2日」に変更されると、記憶制御部25は、
図41(c)に示すように、記憶部2に記憶されているSIM製造受入予定データの製造納期を「2022年10月2日」に更新処理する。なお、
図41(a)はSIM受注データの一例であり、
図41(b)は、SIM製造払出予定データの一例である。
【0136】
また、これと共に記憶制御部25は、SIM更新フラグを立てる。このSIM更新フラグは、SIM受注データ、SIM製造払出予定データ、及び、SIM製造受入予定データに対して、シミュレーションでの変更入力が行われた際に、「0」から「1」に更新される。すなわち、SIM受注データ、SIM製造払出予定データ、及び、SIM製造受入予定データのSIM更新フラグは、初期には「0」であるが、上述の変更入力が行われた際に「1」に更新される。
【0137】
このSIM更新フラグは、実データの更新時に対象判断に用いられる。すなわち、SIM更新フラグを検出することで、シミュレーションとして変更入力が行われたデータ(SIM受注データ、SIM製造払出予定データ、又は、SIM製造受入予定データ)を認識することができ、この変更入力を実データ(受注データ、製造払出予定データ又は製造受入予定データ)に反映させることができる。
【0138】
次に、
図40を用いて説明したように、シミュレーション受入予定データの製造納期が「2022年10月2日」に変更入力され確定ボタン61が操作されると、表示制御部21は、
図42に示すように、再度、製品在庫計画照会画面を表示する。操作者は、シミュレーション受入予定データの製造納期を「2022年10月2日」に変更したシミュレーション結果を確認すべく、製品在庫計画照会画面の照会実行ボタン50を操作する。
【0139】
これにより、シミュレーション受入予定データの製造納期を「2022年10月3日」から「2022年10月2日」に前倒ししたことで、
図43に示すように、ロット番号が「L005」の「100ロット」の商品が10月2日に受入となり(100ロットの製造受入数)、変動数及び繰越数がそれぞれ「100ロット-10ロット-10ロット=80ロット」となる。また、これによる製造払出引当数が「10ロット+10ロット=20ロット」となる。また、記憶制御部25は、このように「L005」のロット番号の商品から20ロットの商品の引当を行ったため、
図27に示したように「ロット未定」となっていた製造払出予定データワークの製造払出予定データのロット番号を、
図44(b)に示すように「L005」に更新して、引当を行うロットのロット番号を特定する。なお、
図44(a)は、上述の受注データワークの受注データである。
【0140】
また、
図45(c)に示すように、SIM製造受入予定データのSIM更新フラグは、「1」に更新された状態となっていることは、上述のとおりである。なお、
図41(a)及び
図41(b)は、それぞれ上述のSIM受注データ又はSIM製造払出予定データである。
【0141】
また、
図46は、表示制御部21により製品在庫計画照会画面の結果表示領域55に表示される表示内容を示す図である。この
図46の表示内容から、操作者等は、製造納期を10月3日から10月2日に前倒しすることで、引当を行うロットが未定となっておらず(ロット未定に対して引当が行われておらず)、欠品が発生しないことを認識することができる。
【0142】
(欠品が発生するため、出荷日を変更するシミュレーション処理)
次に、シミュレーション処理の他の例として、欠品に対して出荷日を変更して対処するシミュレーションを行う例を説明する。一例ではあるが、欠品発生日の2022年10月2日に、ロットは未定であるがリメイクが必要な在庫が発覚したとする。この場合、操作者は、期限切れの商品を出荷する等の誤出荷を防止しつつ、顧客に対して最短の納期で商品の納品を可能とするために、10月1日の受注に対する変更後の最短納期を確認する。
【0143】
この場合、操作者は、上述のように
図47に示す製品材工計画照会画面に、
図48に示す照会内容が表示された状態で、調整ボタン51を操作する。これにより、表示制御部21は、
図50(a)~
図50(c)に示すSIM受注データ、SIM製造払出予定データ、及び、SIM製造受入予定データに基づいて、
図49に示す製造在庫計画照会日程調整画面に、シミュレーション受注データ、シミュレーション払出予定データ、及び、シミュレーション受入予定データを表示する。
【0144】
製造在庫計画照会日程調整画面において、操作者により、
図51に示すように、シミュレーション受注データの出荷予定日が、例えば「2022年10月1日」から「2022年10月3日」に変更入力され、確定ボタン61が操作されたとする。
【0145】
これにより、記憶制御部25は、
図52(a)に示すようにSIM受注データの出荷予定に日を「2022年10月3日」に更新すると共に、SIM更新フラグを「0」から「1」に更新する。なお、この場合、
図52(b)に示すSIM製造払出予定データ及び
図52(c)に示すSIM製造受入予定データに対しては、データの更新は行われない。
【0146】
また、表示制御部21は、確定ボタン61が操作されると、表示画面を製造在庫計画照会日程調整画面から
図53に示す製造在庫計画照会画面に戻す。操作者は、この
図53に示す製造在庫計画照会画面の照会実行ボタン50を操作する。これにより、再度、上述の「基準日からの設定された期間のループ処理」が行われて
図54に示す結果表示画面データが生成される。
【0147】
この際、出荷予定日が「2022年10月1日」から「2022年10月3日」に変更されているため、
図54に示す10月1日の「L001」のロット番号の商品は出荷期限切れとなるため、記憶制御部25は、この「L001」のロット番号の商品からの引当は解除する。そして、記憶制御部25は、
図54に示す10月20日が出荷期限となっている、ロット番号が「L005」の商品の「100ロット」から、「L001」のロット番号の商品からの引当は解除した「20ロット」の引当を行う。これにより、記憶制御部25は、
図54に示すように、ロット番号が「L005」のレコードの変動数及び繰越数をそれぞれ「100ロット-20ロット=80ロット」とし、受注引当数を「20ロット」とする。
【0148】
また、記憶制御部25は、
図55(a)に示すように、それまで「L001」としていた受注データワークの引当元を示すロット番号を「L005」に更新処理する。なお、
図55(b)に対する製造払出予定データワークに対しては、更新は行われない。
【0149】
また、記憶制御部25は、引当を解除した受注データに対応する、
図56(a)に示すSIM受注データのSIM更新フラグを降ろし(「1」から「0」に更新し)、新たに引当の対象となった「L005」のロット番号に対応する、
図56(c)に示すSIM製造受入予定データのSIM更新フラグを立てる(「0」から「1」に更新する)。なお、記憶制御部25は、
図56(b)に示すSIM製造払出予定データに対しては、更新処理は行わない。
【0150】
これにより、結果表示画面ワークの結果表示画面データは、
図57のように2022年10月1日の「L001」のロットからの引当が解除され、代わりに2022年10月3日の「L005」のロットから引当が行われたことを示す結果表示画面データとなる。表示制御部21は、この結果表示画面データを、
図53に示す結果表示領域55に表示する。これにより、当日の受入在庫に対して即日引当を行うことができ、操作者は、最短で10月3日に商品の出荷が可能となることを確認することができる。このため、操作者は、この確認結果に基づいて、納入先と納期交渉を行うことができる。
【0151】
(シミュレーション結果に基づく実データの更新処理)
次に、実施の形態の在庫管理装置1は、このようなシミュレーション結果に基づく実データの更新処理が可能となっている。
図59は、シミュレーション結果に基づく実データの更新処理の概要を示している。操作者は、上述のシミュレーションを行うことで、例えばSIM製造受入予定データに対する反映結果で、実データの一例である製造受入予定データを更新する場合、
図58に示す引当確定ボタン52を操作する。
【0152】
この引当確定ボタン52が操作されると、抽出部22は、SIM製造受入予定データのうち、
図60に示すようにSIM更新フラグが「1」となっているSIM製造受入予定データを抽出する。記憶制御部25は、抽出されたSIM製造受入予定データに付されている「SSZ00000001」の製造指示伝票番号と同じ製造指示伝票番号の製造受入予定データを
図61(a)に示すように特定する。
【0153】
そして、記憶制御部25は、特定した製造受入予定データの製造指示伝票番号、製造納期、商品コード、受入指示数、ロット番号、在庫ランク、出荷期限及び有効期限を、抽出されたSIM製造受入予定データの製造指示伝票番号、製造納期、商品コード、受入指示数、ロット番号、在庫ランク、出荷期限及び有効期限に更新処理する。これにより、
図61(b)に示すように、出荷期限が「2022年10月19日」に更新され、有効期限が「2022年4月19日」に更新された製造受入予定データが生成される。
【0154】
なお、
図62(a)に示すSIM受注データ、及び、
図62(b)に示すSIM製造払出予定データのように、SIM更新フラグが「0」である場合、記憶制御部25は、実データに対する反映は行わない。
【0155】
(データワークに基づく実データの更新処理)
次に、実施の形態の在庫管理装置1は、
図63に示すように各種データワークに基づく実データの更新も可能となっている。例えば、受注データワークに基づいて受注データを更新処理する場合、抽出部22は、
図64(a)に示す受注データワークから受注伝票番号、行番号、出荷予定日、商品コード、受注数、ロット番号、在庫ランク及び枝番を抽出する。記憶制御部25は、受注データワークから抽出された受注伝票番号及び行番号に基づいて、
図64(b)に示す受注データを参照し、
図64(c)に示すように受注データワークから抽出された受注伝票番号及び行番号と同じ受注伝票番号及び行番号の受注データを検出する。
【0156】
そして、記憶制御部25は、検出した受注データの受注伝票番号、行番号、出荷予定日、商品コード、受注数、ロット番号、在庫ランク及び枝番を、受注データワークの受注伝票番号、行番号、出荷予定日、商品コード、受注数、ロット番号、在庫ランク及び枝番に更新処理する。これにより、受注データワークのデータを受注データに反映させることができる。
【0157】
この他、
図63に示すように製造払出予定データワークに基づいて製造払出予定データを更新処理することも可能となっている。この場合、抽出部22は、
図65(a)に示すように、製造払出予定データワークの各データを抽出する。記憶制御部25は、抽出された製造払出予定データワークの各データの製造指示伝票番号及び行番号に基づいて、
図65(b)に示す製造払出予定データを参照し、抽出された製造払出予定データワークの各データの製造指示伝票番号及び行番号と同じ製造指示伝票番号及び行番号のレコードを、製造払出予定データ特定する。
【0158】
この例の場合、抽出された製造払出予定データワークの各データの製造指示伝票番号は「SSZ00000003」であり、行番号は「1」であるため、記憶制御部25は、
図65(b)に示す製造払出予定データのうち、2列目のレコードに相当する、製造指示伝票番号が「SSZ00000003」で、行番号は「1」の製造払出予定データを特定する。そして、記憶制御部25は、特定した製造払出予定データを、製造払出予定データワークから抽出した製造払出予定データで更新処理する。
【0159】
具体的には、特定した製造払出予定データは、1列分のレコードの製造払出予定データであるため、記憶制御部25は、一旦、この製造払出予定データを削除する。そして、記憶制御部25は、製造払出予定データワークから抽出された3列分のレコードの製造払出予定データを、
図65(c)に示すように製造払出予定データに追加する。これにより、製造払出予定データワークに基づいて製造払出予定データを更新処理することができる。
【0160】
なお、記憶制御部25は、製造払出予定データワークのロット番号が「ロット未定」のレコードは、製造払出予定データのロット番号を空欄にして更新処理を行う。
【0161】
(データ追加補助機能)
次に、実施の形態の在庫管理装置1は、最初に指定した日付の範囲外のデータを呼び出して日付の変更を行うシミュレーションを可能とする「データ追加補助機能」が設けられている。具体的には、
図66に示すように、製品在庫計画照会日程調整画面には、データ追加補助領域に「受注」の出荷予定日の入力欄及び在庫ランクの入力欄、「払出予定」の製造予定日の入力欄及び在庫ランクの入力欄、「受入予定」の製造納期の入力欄及び在庫ランクの入力欄がそれぞれ設けられている。また、データ追加補助領域には、受注追加ボタン57、払出予定追加ボタン58、及び、受入予定追加ボタン59が設けられている。
【0162】
製造受入データから追加で呼び出す場合、操作者は、
図68に示すように、データ追加補助領域の「受入予定」の製造納期に例えば「2022年10月5日」等の最初に指定した日付の範囲外の日付を入力し、「A」等の在庫ランクを入力して、受入予定追加ボタン59を操作する。
【0163】
受入予定追加ボタン59が操作されると、抽出部22は、
図67に示す製造受入予定データ及びSIM製造受入予定データを参照し、下記の抽出条件に合致する製造受入予定データを抽出する。
【0164】
抽出条件=製造受入予定データの製造納期≦入力された製造納期 AND 製造受入予定データの在庫ランク=入力された在庫ランク AND SIM製造受入予定データに存在しないこと
【0165】
これにより、
図67の例において、抽出部22は、Aランクの商品のうち、操作者により入力された「2022年10月5日」の製造納期で、かつ、SIM製造受入予定データに存在しない製造受入予定データとして、2列目のレコードの製造受入予定データを抽出する。記憶制御部25は、抽出された2列目のレコードの製造受入予定データを、記憶部2のシミュレーション受入予定データに追加して記憶する。表示制御部21は、このように2列目のレコードの製造受入予定データが追加された状態の製造受入予定データを記憶部2から読み出して、
図68に示すようにシミュレーション受入予定データの表示欄に表示する。これにより、最初に指定した日付の範囲外のデータを追加で呼び出して表示することができる。
【0166】
次に、操作者は、追加された製造受入予定データの製造納期を、例えば「2022年10月3日」に変更操作する。これにより、追加された製造受入予定データを、上述のシミュレーションに用いることができる。
【0167】
また、記憶制御部25は、追加された製造受入予定データに基づいて、上述のようにSIM製造受入予定データを更新する。これにより、追加した製造受入予定データを実データである製造受入予定データに反映させることができる。
【0168】
次に、最初に指定した日付の範囲外の受注データを呼び出す場合は、
図69に示すように「受注」の出荷予定日の入力欄に所望の出荷予定日を入力し、在庫ランクの入力欄に所望の在庫ランクを入力して受注追加ボタン57を操作する。
【0169】
これにより、上述と同様に、抽出部22により、下記の抽出条件に合致する受注データが抽出され、
図68に示すシミュレーション受注データに追加されて表示される。
【0170】
抽出条件=受注データの製造納期≦入力された製造納期 AND 受注データの在庫ランク=入力された在庫ランク AND SIM受注データに存在しないこと
【0171】
追加された受注データの製造納期を変更操作することで、追加された受注データを、上述のシミュレーションに用いることができる。また、追加された受注データに基づいて、上述のようにSIM受注データが更新されるため、追加した受注データを実データである受注データに反映させることができる。
【0172】
次に、最初に指定した日付の範囲外の製造払出予定データを呼び出す場合は、
図70に示すように「払出予定」の製造予定日の入力欄に所望の製造予定日を入力し、在庫ランクの入力欄に所望の在庫ランクを入力して払出予定追加ボタン58を操作する。
【0173】
これにより、上述と同様に、抽出部22により、下記の抽出条件に合致する製造払出予定データが抽出され、
図68に示すシミュレーション払出予定データに追加されて表示される。
【0174】
抽出条件=製造払出予定データの製造納期≦入力された製造納期 AND 製造払出予定データの在庫ランク=入力された在庫ランク AND SIM製造払出予定データに存在しないこと
【0175】
追加された製造払出予定データの製造納期を変更操作することで、追加された製造払出予定データを、上述のシミュレーションに用いることができる。また、追加された製造払出予定データに基づいて、上述のようにSIM製造払出予定データが更新されるため、追加した製造払出予定データを実データである製造払出予定データに反映させることができる。
【0176】
(実施の形態の効果)
今日において、例えば見込生産及び受注生産で商品を製造しているメーカは、商品の受注時に出荷可能な在庫数を確認し、出荷及び製造判断を行っている。一例ではあるが、高機能な製品を製造している化学品メーカ等では、品質管理が重要であり、保存期間の短い商品を取り扱うため、取扱期限(有効期限又は(及び)出荷期限等)を加味した出荷及び製造判断を行う必要がある。
【0177】
従来は、在庫の総量(出荷予定、生産予定を含む)の推移で出荷及び製造判断を行っていたため、出荷期限又は(及び)有効期限内の有効在庫か否かの判断が困難であり、営業担当者又は業務担当者が、顧客からの注文段階で正確な在庫情報を把握することが困難となっていた。
【0178】
しかし、実施の形態の在庫管理装置1は、商品の出荷期限又は(及び)有効期限を加味した在庫の引当結果を反映させた製造、出荷予定情報を生成して確認可能とすることができる。
【0179】
具体的には、
1.指定期間の予定で在庫情報の推移を確認可能とすることができる(出荷予定、生産予定、入荷予定含む)。
2.仮引当を行った在庫推移の情報を確認できる(出荷期限が古い在庫から仮引当てを実装)。
3.日付毎の引当て済みロット数、出荷期限切れの在庫数、及び、期限内の在庫数の総数の把握を可能とすることができる。
4.ロット番号毎の数量、出荷期限、有効期限、在庫ランクを日別に確認することができる。
5.受注データ、払出予定データ、受入予定データの日付を変更したシミュレーションを可能とすることができる。
6.シミュレーション結果を実データに反映させることができる。
【0180】
このため、実施の形態の在庫管理装置1は、業務担当者は、商品の受注段階で迅速に出荷の判断を行うことができ、製造部等は、製造計画の判断を行うことができる。また、出荷業務においても、品質を担保した出荷業務を効率良く行うことができる。
【0181】
[国連が主導する持続可能な開発目標(SDGs)への貢献]
本実施形態により、業務効率化や企業の適切な経営判断を推進することに寄与することができるので、SDGsの目標8及び目標9に貢献することが可能となる。
【0182】
また、本実施形態により、廃棄ロス削減や、ペーパレス・電子化を推進することに寄与することができるので、SDGsの目標12、目標13及び目標15に貢献することが可能となる。
【0183】
また、本実施形態により、統制、ガバナンス強化に寄与することができるので、SDGsの目標16に貢献することが可能となる。
【0184】
[他の実施の形態]
本発明は、上述した実施形態以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施形態で実施してもよい。
【0185】
例えば、実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、或いは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
【0186】
また、本明細書中や図面中で示した処理手順、制御手順、具体的名称、各処理の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。
【0187】
また、在庫管理装置1に関して、図示の各構成要素は機能概念的なものであり、必ずしも図示の如く物理的に構成されていることを要しない。
【0188】
例えば、在庫管理装置1が備える処理機能、特に制御部3及び制御部3にて行われる各処理機能については、その全部又は任意の一部を、CPU(Central Processing Unit)および当該CPUにて解釈実行されるプログラムにて実現してもよく、また、ワイヤードロジックによるハードウェアとして実現してもよい。なお、プログラムは、本実施形態で説明した処理を情報処理装置に実行させるためのプログラム化された命令を含む一時的でないコンピュータ読み取り可能な記録媒体に記録されており、必要に応じて在庫管理装置1に機械的に読み取られる。すなわち、ROM又はHDD等の記憶部等には、OSと協働してCPUに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、RAMにロードされることによって実行され、CPUと協働して制御部3を構成する。
【0189】
また、この在庫管理装置1の在庫管理プログラムは、在庫管理装置1に対して任意のネットワークを介して接続された他のサーバ装置に記憶されていてもよく、必要に応じてその全部又は一部をダウンロードすることも可能である。
【0190】
また、本実施形態で説明した処理を実行するための在庫管理プログラムを、一時的でないコンピュータ読み取り可能な記録媒体に格納してもよく、また、プログラム製品として構成することもできる。ここで、この「記録媒体」とは、メモリーカード、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード、フレキシブルディスク、光磁気ディスク、ROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(登録商標)(Electrically Erasable and Programmable Read Only Memory)、CD-ROM(Compact Disk Read Only Memory)、MO(Magneto-Optical Disk)、DVD(Digital Versatile Disk)、及び、Blu-ray(登録商標) Disc等の任意の「可搬用の物理媒体」を含むものとする。
【0191】
また、「プログラム」とは、任意の言語または記述方法にて記述されたデータ処理方法であり、ソースコード又はバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OSに代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施の形態に示した在庫管理装置1において記録媒体を読み取るための具体的な構成および読み取り手順ならびに読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
【0192】
記憶部2は、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、及び、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラム、テーブル、データベース、及び、ウェブページ用ファイル等を格納する。
【0193】
また、在庫管理装置1は、既知のパーソナルコンピュータ装置又はワークステーション等の情報処理装置で構成してもよく、また、任意の周辺装置が接続された情報処理装置で構成してもよい。また、情報処理装置は、本実施形態で説明した処理を実現させるソフトウェア(プログラム又はデータ等を含む)を実装することにより実現してもよい。
【0194】
さらに、装置の分散・統合の具体的形態は図示するものに限られず、その全部又は一部を、各種の付加等に応じて又は機能負荷に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。すなわち、上述した実施形態を任意に組み合わせて実施してもよく、実施形態を選択的に実施してもよい。
【産業上の利用可能性】
【0195】
本発明は、取扱期限(有効期限又は出荷期限等)に基づいて商品の在庫を管理する業界に在庫管理業務に適用して好適である。特に、厳格な品質管理が必要な業種である、例えば食品メーカ、化学(高機能材、薬品等)メーカ等の在庫管理に適用することで、より顕著な効果を得ることができる。
【符号の説明】
【0196】
1 在庫管理装置
2 記憶部
3 制御部
4 通信インターフェース部
5 入出力インターフェース部
6 入力装置
7 出力装置
21 表示制御部
22 抽出部
23 算出部
24 データ生成部
25 記憶制御部
50 照会実行ボタン
51 調整ボタン
52 引当確定ボタン
53 画面クリアボタン
55 結果表示領域
57 受注追加ボタン
58 払出予定追加ボタン
59 受入予定追加ボタン
61 確定ボタン
62 閉じるボタン