1. バージョン定義
システム名:STOCKmini ロット管理
バージョン:V0.2
目的:商品番号・ロット番号・棚番・使用期限を使って、小規模なロット在庫管理を行う
位置づけ:STOCKmini 棚番版の発展版
V0.2では、現行GASの中途半端な表記や履歴不足を整理し、リリース前の実用仕様に近づけます。
2. V0.2で確定する主な変更点
変更1:JAN表記を廃止し、商品番号に統一
今後、画面・シート・GASコメント・操作履歴・仕様書では、すべて 商品番号 と表記します。
JAN → 商品番号
JANコード → 商品番号
productCode → 商品番号として扱う
※GAS内の変数名 productCode はそのままでもよいですが、シート見出しとコメントは商品番号に統一します。
変更2:操作履歴にロット番号・使用期限を追加
V0.1では、操作履歴にロット番号と使用期限が残りませんでした。
V0.2では、入庫・出庫どちらも履歴に以下を残します。
日時
商品番号
商品名
ロット番号
棚番
使用期限
区分
数量
更新後在庫
これにより、あとから
どの商品を
どのロットで
どの棚番から
何個動かしたか
使用期限はいつだったか
を確認できるようにします。
変更3:使用期限は入庫時のみ必須にする
V0.2では、使用期限の扱いを以下にします。
入庫時:
期限管理YESの商品は使用期限を必須にする出庫時:
使用期限は入力不要にする
出庫時は、ユーザーが使用期限を入力するのではなく、ロット在庫シートに登録済みの使用期限をGASが参照します。
3. 管理対象
STOCKmini ロット管理 V0.2では、以下の単位で在庫を管理します。
商品番号
商品名
ロット番号
棚番
使用期限
入庫数
出庫数
現在庫数
在庫の基本識別キーは以下です。
商品番号 + ロット番号 + 棚番
使用期限は、原則としてロット在庫行に登録されている情報として扱います。
4. 使用シート一覧
V0.2で使用するシートは以下の4つです。
操作パネル
商品マスター
ロット在庫
操作履歴
必須シート
操作パネル
商品マスター
ロット在庫
操作履歴
V0.2では、操作履歴も必須シートとして扱う方針でよいです。
理由は、ロット管理版では履歴が重要だからです。
5. 操作パネル仕様
5-1. 操作パネルのセル定義
B3:商品番号
B4:商品名
B5:ロット管理
B6:期限管理B8:ロット番号
B9:棚番
B10:入庫数量
B11:使用期限
B12:出庫数量B13:メッセージ
B14:処理モード
5-2. 操作パネルの役割
操作パネルは、ユーザーが入庫・出庫を行うメイン画面です。
商品番号を入力
↓
商品マスターから商品情報を表示
↓
ロット番号・棚番・数量などを入力
↓
入庫または出庫を選択
↓
確定
↓
ロット在庫と操作履歴を更新
6. 商品マスター仕様
6-1. 商品マスター列定義
A列:商品番号
B列:商品名
C列:ロット管理
D列:期限管理
E列:更新日
F列:備考
6-2. 商品番号
商品を識別するための番号です。
例:
P001
ITEM001
4900000000000
JANコードを使ってもよいですが、システム上の表記はあくまで 商品番号 とします。
6-3. ロット管理
C列に設定します。
YES:ロット番号を管理する
NO:ロット番号を管理しない
ロット管理YESの場合
入庫・出庫時にロット番号が必須です。
ロット管理NOの場合
ロット番号は入力しません。
GAS内部では DEFAULT として扱います。
6-4. 期限管理
D列に設定します。
YES:使用期限を管理する
NO:使用期限を管理しない
期限管理YESの場合
入庫時に使用期限が必須です。
期限管理NOの場合
使用期限は入力しません。
7. ロット在庫シート仕様
7-1. ロット在庫列定義
A列:商品番号
B列:商品名
C列:ロット番号
D列:棚番
E列:初回登録日
F列:使用期限
G列:累計入庫数
H列:累計出庫数
I列:現在庫数
7-2. 在庫の識別単位
V0.2では、在庫行を以下で識別します。
商品番号 + ロット番号 + 棚番
7-3. 使用期限の扱い
使用期限は、入庫時にロット在庫シートへ登録します。
出庫時は、ユーザーが入力するのではなく、該当するロット在庫行の使用期限を参照します。
8. 操作履歴シート仕様
8-1. 操作履歴列定義
V0.2では、操作履歴を以下の9列にします。
A列:日時
B列:商品番号
C列:商品名
D列:ロット番号
E列:棚番
F列:使用期限
G列:区分
H列:数量
I列:更新後在庫
8-2. 区分
G列には以下のどちらかを記録します。
入庫
出庫
8-3. ロット番号
ロット管理YESの商品は、入力されたロット番号を記録します。
ロット管理NOの商品は、内部管理上は DEFAULT と記録します。
8-4. 使用期限
期限管理YESの商品は、使用期限を記録します。
入庫時:操作パネルで入力された使用期限を記録
出庫時:ロット在庫シートから取得した使用期限を記録
期限管理NOの商品は空欄とします。
9. 商品検索仕様
9-1. 入力
操作パネル B3:商品番号
9-2. 処理
B3の商品番号をもとに商品マスターを検索する
9-3. 検索成功時
以下を操作パネルに表示します。
B4:商品名
B5:ロット管理 YES/NO
B6:期限管理 YES/NO
メッセージ:
商品表示
9-4. 検索失敗時
商品番号が空の場合:
商品番号未入力
商品マスターに存在しない場合:
商品なし
10. 入庫仕様
10-1. 入庫時の必須項目
商品番号
商品名
棚番
入庫数量
商品設定により、以下も必須です。
ロット管理YES:ロット番号必須
期限管理YES:使用期限必須
10-2. 入庫時の禁止条件
商品番号が未入力
商品検索していない
棚番が未入力
入庫数量が0以下
入庫数量が数値でない
出庫数量が入力されている
ロット管理NOの商品にロット番号が入力されている
期限管理NOの商品に使用期限が入力されている
10-3. 入庫処理
既存在庫行がある場合
累計入庫数に入庫数量を加算
現在庫数を再計算
商品名を更新
既存在庫行がない場合
ロット在庫シートに新規行を作成します。
商品番号
商品名
ロット番号
棚番
初回登録日
使用期限
累計入庫数
累計出庫数
現在庫数
10-4. 入庫履歴
操作履歴に以下を記録します。
日時
商品番号
商品名
ロット番号
棚番
使用期限
区分:入庫
数量
更新後在庫
11. 出庫仕様
11-1. 出庫時の必須項目
商品番号
商品名
棚番
出庫数量
商品設定により、以下も必須です。
ロット管理YES:ロット番号必須
11-2. 出庫時に不要な項目
使用期限
入庫数量
11-3. 出庫時の禁止条件
商品番号が未入力
商品検索していない
棚番が未入力
出庫数量が0以下
出庫数量が数値でない
入庫数量が入力されている
ロット管理NOの商品にロット番号が入力されている
対象在庫が存在しない
現在庫数より多く出庫しようとしている
11-4. 出庫時の在庫検索
出庫時は以下の条件でロット在庫シートを検索します。
商品番号 + ロット番号 + 棚番
使用期限は検索条件に含めません。
11-5. 出庫処理
対象在庫行が見つかった場合、
累計出庫数に出庫数量を加算
現在庫数を再計算
します。
11-6. 出庫履歴
操作履歴に以下を記録します。
日時
商品番号
商品名
ロット番号
棚番
使用期限
区分:出庫
数量
更新後在庫
使用期限は、ロット在庫シートの該当行から取得します。
12. 使用期限仕様
12-1. 基本方針
使用期限は、期限管理YESの商品について入庫時に登録する。
出庫時は使用期限を手入力しない。
出庫時は、商品番号・ロット番号・棚番をもとにロット在庫を検索し、該当行に登録されている使用期限を操作履歴へ記録する。
12-2. 入庫時
期限管理YES:使用期限必須
期限管理NO:使用期限入力不可
12-3. 出庫時
期限管理YES:使用期限入力不要
期限管理NO:使用期限入力不可
12-4. 使用期限の保存先
ロット在庫 F列
操作履歴 F列
13. ロット番号仕様
13-1. ロット管理YESの商品
入庫・出庫時にロット番号を入力します。
例:
LOT202604
A-001
2026-04-A
13-2. ロット管理NOの商品
ロット番号は入力しません。
GAS内部では以下で管理します。
DEFAULT
ロット在庫シート、操作履歴にも DEFAULT を記録してよいです。
14. 棚番仕様
棚番は、入庫・出庫とも必須です。
例:
A-01
A-01-02
001
冷蔵-A1
V0.2では棚番の形式チェックは行いません。
自由入力とします。
将来的には、棚番ルールチェックや棚番マスターを追加できます。
15. メッセージ仕様
主なメッセージ
商品番号未入力
商品なし
商品表示
商品未検索
棚番がありません
ロット番号がありません
ロット管理NOの商品にロット番号入力
使用期限がありません
期限管理NOの商品に使用期限入力
数量が数値ではありません
数量にマイナスは不可
入庫数量がありません
入庫時は出庫数量不要
出庫数量がありません
出庫時は入庫数量不要
入庫予定
出庫予定
先に入庫/出庫ボタン
商品マスターに商品なし
対象在庫なし
在庫不足
在庫更新しました
V0.2で変更するメッセージ候補
少しやさしくするなら、以下のようにしてもよいです。
商品未検索
↓
先に商品番号を入力して商品を表示してください在庫不足
↓
現在庫数より多い数量は出庫できません使用期限がありません
↓
期限管理YESの商品は、入庫時に使用期限を入力してください
ただし、GAS生成時点では現行メッセージをベースにして問題ありません。
16. V0.2でGASに反映する修正内容
GAS修正対象は以下です。
1. JANというコメント・表記を商品番号へ変更
2. 操作履歴の列数を7列から9列へ変更
3. 操作履歴にロット番号を追加
4. 操作履歴に使用期限を追加
5. validateCommon() の使用期限チェックを入庫時のみ必須に変更
6. 出庫時の在庫検索条件から使用期限を外す
7. 出庫時の使用期限はロット在庫シートから取得する
17. V0.2ではまだ入れない機能
今回のV0.2では、以下は入れません。
期限切れアラート
期限間近アラート
先入先出の自動提案
ロット候補の自動表示
棚番マスター
担当者管理
備考欄
バーコード読み取り
CSV取込
在庫一覧の検索画面
これらは、V0.3以降または有料版・PRO版で検討します。





コメント