倉庫のビン位置カタログ:時間を節約するモバイルピックリスト
倉庫のビン位置カタログを作り、通路・ビン順に並べたモバイルピックリストを生成して歩行時間を短縮し、欠品や再ピックを減らし、フルフィルメントを高速化します。

ビン位置が乱れるとピッキングが遅くなる理由
ピッキングが速く進むのは、すべての品目に明確な居場所があり、現場の誰もがその場所を信頼しているときです。場所の表記があいまい、古い、あるいはスプレッドシート、ノート、口伝の三つに分かれている瞬間に速度は落ちます。その瞬間から各ピックが小さな捜索になってしまいます。
現場での時間損失は目に見えます。ピッカーは正しい通路に歩くが、ビンのラベルが不明瞭で近くの棚をスキャンします。SKUを別の場所で見つけ、紙にメモして次へ進む。後で別のオーダーで同じ通路に戻る理由は、システムがまだその商品が元の場所にあると考えているからです。
乱れたロケーションは大抵同じ問題を生みます:
- ピックリストの順序が実際の歩き方と合わず、二度手間が発生する。
- ビンを確認できずに欠品扱いになる。
- 「A3へ移動」といった紙のメモがシステムに反映されない。
- 在庫の居場所を確認するためにリーダーに聞いたり履歴を探したりする余分な作業が発生する。
速いフルフィルメントは急ぐことではありません。無駄な動作や防げるミスを取り除くことです:歩数を減らし、探す時間を減らし、小ロットピックや梱包ミス後の再ピックを減らします。
解決はシンプルです:ロケーションの単一の信頼できる情報源と、販売システムが出す順序ではなく倉庫のレイアウトに従うピックリスト。倉庫のビン位置カタログは一つの質問に即答できるべきです:「今このSKUをピックするにはどこへ行けばいい?」
朝の小さなウェーブを想像してください:6件の注文で合計18行。ある2つのSKUがA-02からC-14に移され、知っているのは一人だけ。すべてのピッカーが探し回り、次のシフトでも同じことが繰り返されます。カタログを一度更新し、モバイルピックリストを通路とビンでソートすれば、作業は予測可能になります。
ビン、通路、SKU:最初に始めるシンプルなモデル
ピッキングは、皆が同じ「地図」を使うと速くなります。初日から完璧な地図は必要ありませんが、明確で共有された定義は必要です。
チームが普段使う平易な言葉を使ってください:
- ゾーン:例えば「冷蔵」や「バルク」のような大きなエリア。
- 通路(Aisle):歩く通路。
- 棚(またはベイ/セクション):通路内の垂直または番号付きセグメント。
- ビン:実際に品目が置かれる最小のピック可能な場所。
ビンはラベルに印字して電話に表示する「住所」と考えてください。倉庫ビン位置カタログを作るなら、ビンが最も重要な単位です。ピッカーがスキャンして確認するのはビンだからです。
商品側では、SKUは販売単位で、数え、ピックし、出荷するもの(例:「黒Tシャツ、M」)です。1つのSKUは実際には複数の場所にあることがあります:プライマリピックビン、オーバーフロービン、ケースピック場所、検疫スポットなど。
これは普通の倉庫の動きです。大きな入荷の後にオーバーフローができ、季節商品は梱包に近い場所へ移り、返品は「確認待ち」エリアに入ります。ファストムーバーは再配置されます。初期版を複雑にしすぎず、この現実に備えてください。
実用的な出発点としては:各SKUに一つのプライマリピックビンを与え、必要なら「オーバーフロー」や「返品保留」のような明確なステータスを伴うセカンダリロケーションを許可するルールで始めるのが良いでしょう。
データ設計:ビンとSKUカタログに何を保存するか
ビン位置カタログはデータモデルがシンプルでなければ機能しません。ロケーションを正確に保ち、ピックリストを予測可能にするのに十分な構造が必要ですが、更新ごとに大がかりな作業になるのは避けたいところです。
多くのチームは、現場の動きに合った四つの主要レコードから始められます:Products(SKUs)、Locations(ビン)、Inventory(どこにどれだけあるか)、Pick Tasks(誰が今何を取るか)。
必要な四つのレコード
ピッキング速度に影響を与え混乱を減らすフィールドに絞ってください。
**Products(SKUs)**は識別と基本的な取り扱い情報:SKUコード、名前、バーコード/UPC、単位、アクティブ/非アクティブ、よく使う標準ピック数量など。
**Locations(ビン)**は現場でのナビゲーションに重要な情報:ゾーン、通路、ビンコード、ピックシーケンス(並べ替え用の番号)、ステータス(アクティブ、ブロック、空、検疫など)。
Inventoryは現実の数値:SKU、ロケーション、在庫数、予約数、最終棚卸日、カウントステータス(ok、再カウント要)など。
Pick Tasksは作業を人と場所に紐づけます:オーダーやウェーブID、SKU、必要数量、割当ピッカー、タスクステータス(オープン、進行中、ピック済み、例外)、選択されたピックロケーション。
SKUごとの複数ビン(プライマリとセカンダリ)
多くのSKUは複数の場所にあります(前方ピック+過剰在庫など)。1つの明確なルールで扱ってください:SKUごとに1つのプライマリロケーションを保ち、優先度付きでセカンダリを許可します。
実用的な設定は、SKU-Location マッピングを別に持ち、priority(1,2,3)、前方ビン用の任意の最小/最大レベル、補充フラグを設定することです。プライマリが不足したらピックタスクは次の優先に落ちます。
最初から監査を組み込んでください。誰がいつSKUの場所を変えたかを記録します。ひとつの誤った編集が数日間ピッキングを遅らせることがあります。変更は追跡可能で、見直しが簡単であるべきです。
一貫性のあるロケーション名(スキャンしやすく)
ビンラベルは、誰もが同じ読み方をし、システムが同じように保存するときだけ役に立ちます。目的は、小さな携帯画面で読め、ラベルにきれいに印字され、正しくソートされる名前です。
持ちこたえるシンプルな方法は固定パターンと固定長を使うことです。例えば A2 と A10 が変にソートされないようにするためです。一般的なパターンは Zone-Aisle-Bay-Level-Bin で、各部分に役割を持たせます:
- Zone: Z01(建物のエリアや温度ゾーン)
- Aisle: A03(主要な通路)
- Bay: B12(通路沿いのセクション)
- Level: L02(垂直レベル)
- Bin: S05(スロットや位置)
これにより Z01-A03-B12-L02-S05 のようなIDが得られます。今日すべての部分を使っていなくても、スロットを残しておくことで将来の拡張が容易になります。
例外も早めに想定しておきつつ、同じ構造内に収めておくと分かりやすくソート可能です。例:パレット用(Z01-BULK-P01)、ケージ(Z02-CAGE-07)、返品(Z01-RTN-01)、QA保留(Z01-QA-01)など。
一貫性が崩れる原因は重複とタイプミスです。悪いロケーションを保存できないようにバリデーションを追加してください。格納するIDは厳格にし、表示名は任意にすると良いです。
価値あるバリデーションガードレールの例:
- 大文字必須と一つの区切り文字スタイル(例:ハイフンのみ)を要求する。
- パーツの形式を強制する(Z\d\d、A\d\d等)。
- 重複をブロック(ユニークなロケーションID)。
- 誤認しやすい文字(Oと0、Iと1)は避ける。
ロケーション名が予測可能なら、スキャンは速くなり、教育は楽になり、ピックリストのソートは信頼できるものになります。
オーダーからピックリストへ:フローのあるべき姿
ピックリストはシンプルなチェーンから生まれるべきです:オーダーがオーダーラインになり、オーダーラインがピックタスクになります。そのチェーンが一貫していれば、ビンカタログは「維持するデータ」から実際に歩行時間を節約する仕組みへと変わります。
多くの倉庫で機能するフロー:
- オーダーを取り込むまたは作成する(ストア、ERP、手入力など)。
- オーダーラインに展開する(SKU、数量、ロットやシリアルの注意など)。
- 各ラインをピックロケーションに解決する(実際に訪問するビン)。
- ピックタスクを作成する(SKU-ロケーションごとに一タスク、目標数量付き)。
- タスクをピックリストにまとめる(どのようにピックさせたいかに応じて)。
SKUごとに適切なロケーションを選ぶことが多くの時間を左右します。実用的なルールはシンプルです:
- プライマリロケーションに十分在庫があればそこからピックする。
- 足りない場合はタスクをロケーション間で分割する。
- 複数のビンが有効なら、レイアウトルールに基づく最寄りのもの(または単純な通路順)を選ぶ。
- 検疫、破損、補充専用など「決してピックしてはいけない」ビンは除外する。
ソートは人が歩く順に合わせるべきです。信頼できるデフォルトはゾーン→通路→ビン、同順位時は商品名でのタイブレークです。
バッチングは最終判断です。緊急オーダーには単独オーダーピック、定期実行にはウェーブピック、小さな複数オーダーを一度にまとめられるならクラスターピックが有効です。
歩行を減らすが複雑にしすぎないソートロジック
目標は完璧なルートではなく、人にとって筋の通ったピック順で往復歩行を減らすことです。
ほとんどの倉庫は、ゾーン→通路→ビンの単純なソートで大きな成果を得ます。ロケーションコードが一貫していれば、単純な文字列ソートで十分な場合が多いです。
より明示的なソートが必要なら、読みやすさを保ってください:
- ゾーン
- 通路(低から高へ)
- ベイ/セクション
- レベル/ビン(低から高へ)
建物の事情で特別ルールが必要な場合のみ追加してください。通路の一方通行は典型例です:奇数通路は上→下、偶数通路は下→上、こうすることでピッカー同士の往来を減らせます。メザニンや冷蔵庫は入室に時間がかかるので別扱いにすると良いですが、これも単純な切替ルールで十分です。
分割ピックは現場では重要です。注文が12個必要でプライマリに8個しかなければ、ピックリストは正しい歩行順で「プライマリから8、次に残り4を次のビンで」という二行を表示するべきです。
ビンが空の場合、ピッカーが次にどこを探すかを自分で決めさせてはいけません。自動でフォールバックロケーションを提示し、同時に補充アラートを作成して次回の同じ問題を防ぎます。
モバイルピックリストの設計:ピッカーが一画面で必要なもの
ピッカーは歩きながら情報を探すべきではありません。最良のモバイルピック画面は退屈なほどシンプルです:次にやることが一目で分かり、大きな文字、余分な情報はなし。ビンカタログが正確なら、アプリの仕事はピッカーを次のビンへ導き、確認を素早くすることだけです。
残すべき画面(そしてシンプルに保つ)
画面は少なく、現場の流れに合わせてください:
- 今日のピック:ピックランやウェーブ、はっきりした開始ボタン。
- ピック詳細:単一の「次のピック」ビュー(ビン、商品、必要数量)。
- 数量確認:入力なしで確認できるように素早く。
- 例外:ピックフローを離れずに報告できる短い手段。
ピック詳細画面では、ビンコードを最も大きく表示し、次に数量、次にSKU名を表示します。見分けにくい商品には小さな商品画像を付けても良いですが、メモは短く具体的に(例:「上段、左」)。
確認:タップ、スキャン、または両方
可能ならタップとバーコードスキャンの両方をサポートしてください。ラベルがないときはタップが速く、見分けが難しいSKUではスキャンがエラーを減らします。
例外アクションは一タップで常に見えるように:
- ショートピック
- 誤ビン
- 破損
- ラベル欠落
- 後回しにする
例外を副次的なメモではなく実データとして扱ってください。上司がパターンを見つけて根本原因を直せるのはそのためです。
ステップバイステップ:ビンカタログと自動ソートピックリストの構築
小さく始めてください。一つの通路と一つの製品群で役に立つものが作れます。フローが現場で自然に感じられるまで拡大は待ちます。
再作業を避ける構築順序:
-
ロケーションカタログを先に整備する。 各ビンのレコードを作成(倉庫、ゾーン、通路、ベイ、レベル、位置)。既存のスプレッドシートから取り込んでも良いです。名称は後で整えることができますが、まず安定したIDが必要です。
-
SKUを追加し、所在をマッピングする。 各SKUにプライマリピックロケーションを与え、オーバーフロー用のセカンダリを許可します。これにより「空だから止まる」状況を防げます。
-
オーダーをピックタスクに変換する。 オーダー取り込みはシンプルに:オーダーヘッダ、オーダーライン、そしてラインごとに生成されるピックタスク。
-
歩行に合わせてソートする。 まずはゾーン→通路→ベイ→レベルで並べる明確なルールを採用します。同じビンを共有する行はまとめてグルーピングします。
-
確認と例外処理を追加する。 クイック確認(タップかスキャン)を必須にします。ビンが空ならピッカーが問題を報告して続行できるようにし、システムは理由を記録してフォローアップできるようにします。
例:ピッカーが Bin A-03-02 に行って3個中1個しか見つからなかったら、部分確定をしてセカンダリビンに切り替え、例外は補充用のタスクとして残ります。
シンプルな例:朝のピックランと現実のひねり
午前9:05、同時に3件の注文が入り合計12行。カタログには各SKUのプライマリビンと分割在庫時のオーバーフロービンが登録されています。
Order A: 4x SKU-101、1x SKU-205、2x SKU-330。
Order B: 1x SKU-101、3x SKU-118、1x SKU-712、1x SKU-330。
Order C: 2x SKU-205、1x SKU-118、1x SKU-990。
ルール:まずプライマリビンから取り、不足分だけオーバーフローへ回す。
- SKU-101 プライマリ: Aisle 01, Bin 01-04; オーバーフロー: Aisle 09, Bin 09-22
- SKU-330: Aisle 03, Bin 03-11
- SKU-205 プライマリ: Aisle 06, Bin 06-02; オーバーフロー: Aisle 06, Bin 06-18
モバイルリストは通路とビンでソートされ、ルートは予測可能です:
- Aisle 01: Bin 01-04 (SKU-101)
- Aisle 03: Bin 03-11 (SKU-330)
- Aisle 06: Bin 06-02 (SKU-205)
- Aisle 06: Bin 06-18 (SKU-205 オーバーフロー、必要時のみ)
- Aisle 09: Bin 09-22 (SKU-101 オーバーフロー、必要時のみ)
ピッカーが Bin 06-02 に到着して空だった場合、同じ画面で「Short pick」をタップし実際の数量(0)と簡単なメモ("bin empty, check pallet in receiving.")を入力できます。アプリは残り数量を利用可能なオーバーフロービン 06-18 に自動で切り替え、補充アラートを生成します。
作業後、スーパーバイザーはどの行がショートになったか、どのビンが問題を起こしたか、06-02 の補充シグナルなどを明確に確認できます。
ピックリストを遅くするよくある間違い
ビンカタログは人々がそれを信頼して初めて役に立ちます。遅延の始まりは小さなところからです:新しいビン名がひとつ増え、そこに「一時的に」移動のメモが残り、やがてピッカーはリストに従わなくなります。
よくある失敗:
- 命名ルールなしに誰でもビンを作れるようにしてしまい、"Aisle 3 Bin 4" と "A3-B04" のように重複が生まれる。
- ロケーション変更を追跡していないため、「誰がいつ移した?」に答えられない。
- SKU順でソートしてしまい、紙では整って見えても現場ではジグザグに歩かされる。
- 例外フローがないため、ピッカーは脇で相談したり、記憶や紙に頼る。
- 覆いきれていないゾーンがあり、スクリーンショットや紙に頼る羽目になる。
単純な例:ピッカーがリストで "SKU 1142" を見てビンが空だったとします。例外ボタンも履歴もなければ、リーダーを探しに行き、戻ってきて「多分ここかも」と別の棚を探すことになり、1つの問題がラン全体を脱線させます。
実務でシステムを速く保つためのガードレール:
- 命名パターンを強制して検証する。
- すべてのビン編集とSKU移動をタイムスタンプとユーザー付きでログに残す。
- ピックリストは通路とビンで並べ替える(SKU順ではない)。
- 見つからない、ショートピック、移動、などの例外を簡単に報告できるようにする。
床に出す前のクイックチェックリスト
電話をピッカーに渡す前に、基本が破綻しないことを確認してください。カタログはデータがラックの状況と合って初めて役に立ちます。
まずはカバレッジとラベリングを確認します。各通路を歩いてスポットチェック:ビンコードが数秒で見つかり、システムと完全に一致するかを確認してください。
フロア準備チェック
- 出荷する予定のSKUは少なくとも一つのアクティブなロケーションを持ち、プライマリが正しい。
- ビンコードはユニークで、印刷されたラベルがシステムの形式(ゼロ、ハイフン、大文字)と完全に一致している。
- ピックリストは予測可能な順序(ゾーン、通路、ビン)でソートされ、携帯で読みやすい。
- ピッカーは各行を移動する前に確認する(スキャンかタップ)。
- ショートピック、誤ビン、見つからないオプションがあり、それぞれ明確なログエントリを生成する。
チェックリストの後、実際の注文2件で15分のドライランを行ってください。ピッカーにリストに忠実に従ってもらい、リーダーが躊躇点(不明瞭なビン名、重複、ボタンが小さい、例外パスがない)を観察します。
初日につけるログ項目
何か問題が起きたときに追跡できるように、誰がピックしたか、どのビンに送られたか、何を確定したか、なぜ完了できなかったかを記録してください。
次のステップ:パイロット、測定、拡張
まず一つのゾーン(Aisle 1-3など)か、通常の日に近い製品カテゴリを選んでください。狭いパイロットは問題点を明確にし、倉庫全体の混乱を避けます。目標は二つを証明することです:ロケーションデータが正確に保たれること、ピックリストの順序が歩行を減らすこと。
最初のパイロット前に「改善」の定義を決め、比較を簡単にするためにいくつかのシンプルな数値を追跡します:
- ラインあたりのピック時間(平均と最悪値)
- ショートピック数(リストのビンに商品がない)
- 再往復(既に終えた通路に戻る回数)
- ピッカー一人当たりの時間あたりピックライン数
- ラン中にピックリストが編集された回数
ガバナンスは軽く、しかし実効性のあるものにしてください。ビン変更のオーナーを一人決め、頻度を決めます(ファストムーバーは日次、スローは週次など)。多くの遅延は「誰でも商品を動かせるが、誰もロケーションを更新しない」ことから始まります。
重いコーディングなしにこれを作りたい場合、AppMaster (appmaster.io) のような選択肢があります。ビンとSKUのデータモデルを可視化し、ピックと例外ロジックをワークフローで組み、同じ設定から管理画面とモバイルアプリを生成できます。
パイロットが安定したら、ゾーン単位で拡張してください。機能は次の順で追加すると良いでしょう:ピック面在庫が閾値を下回ったときの補充プロンプト、高エラービンに紐づく簡単なサイクルカウント、ビン/SKU/オーダーを編集できる権限付与、そして例外フローの細分化(破損、代替、分割ビン)。
よくある質問
まずはロケーションの単一の信頼できる情報源を作り、すべてのピックで必ずビンを確認することから始めてください。最も効果があるのは、システム上のビン表記と現場のラベルが一致することです。そうすれば作業者が「探し回る」手間をやめられます。
人が歩く順序に合わせた一貫したパターンを使い、各パーツを固定長にしておくとソートが正しく動きます。おすすめは Zone-Aisle-Bay-Level-Bin の形式で、将来拡張するために未使用部分はプレースホルダーにしておきます。
各SKUに対しては一つのプライマリピックビンを設定し、オーバーフローや返品保留のような目的でセカンダリを持たせるのが現実的です。これにより「今どこから取ればいいのか?」が明確になります。
シンプルに四つのレコードで始めてください:SKUs(商品)、Locations(ビン)、Inventory(どこにどれだけあるか)、Pick Tasks(誰がどこから何を取るか)。この構造だけでピックリスト生成、確認、例外収集が可能です。
各受注行を特定のピック場所に解決するルールを使います。基本はプライマリビンから取り、在庫が足りなければ次の優先ビンに分割します。隔離やブロック、補充専用のビンはピック対象外にしてください。
人が歩く順に並べれば十分効果があります:ゾーン→通路(低→高)→ベイ→レベル/ビン。通路が一方通行なら奇数通路は上から下、偶数は下から上、など単純な切り替えルールを追加してください。複雑なルーティングエンジンは不要です。
次に取るべき一つのアクションだけを示す画面がベストです。ビンコードを大きく、次に数量、次にSKU名。確認はタップかスキャンで素早く行えるようにし、例外処理は同じ画面で出せるようにします。
例外は単なるメモではなく必須データとして扱ってください。見つからない場合は何が起きたかを記録し、実際に拾った数量を確定し、システムは次の場所を提示するか補充を通知して同じ問題が繰り返さないようにします。
保存前にロケーションIDを検証し、重複を禁止し、ビンやSKUの移動は誰がいつ行ったかを必ずログに残してください。編集権限を限定することで一貫性を保ちやすくなります。
まずは一つのゾーンや代表的な商品群を選び、ピック時間、ショートピック、再往復などを計測するパイロットを行ってください。重い開発が嫌なら、AppMaster (appmaster.io) のようなツールでデータモデルとピックフローを作り、管理画面とモバイルアプリを同時に生成することも可能です。


