背景・状況
PRIMA!の商品は金具色(Gold / Silver)とアイカラー(8色)の掛け合わせにより、1商品あたり最大16パターンのSKUが存在する。受注期間ごとに各パターンの注文数を集計し、仕入先への発注書を作成する業務が定期的に発生していた。
例えば「2月1日〜2月15日の受注分」に対して、Gold-Blue: 12個、Silver-Red: 8個、といった具合にパターンごとの合計数を算出し、それを発注書のフォーマットに落とし込む必要がある。
課題・問題
手作業での集計は以下の問題を抱えていた。
- 16パターンの集計に時間がかかる。受注件数が100件を超えると半日仕事になる
- 集計ミスが発注ミスに直結する。Gold-BlueとSilver-Blueの取り違えなど
- 期間指定が曖昧になりがち。「先週分」「今月分」の解釈がブレる
- キャンセルや変更が入ると再集計が必要。手作業では追跡が困難
判断・アクション
CRMに期間指定 → パターン自動集計 → 発注書生成の一連のフローを構築する判断をした。発注書は業務の中で最も正確性が求められる帳票であり、ここの自動化は投資対効果が最も高いと判断した。
実装のポイント
- 連番管理 --- 発注書番号をPRIMA-YYYY-NNN形式で自動採番。年ごとにリセットされ、一意性を保証
- ステータス管理 --- Draft(下書き)→ Sent(送付済み)→ Completed(完了)の3段階で管理。「今どの段階にある発注書か」を一目で把握可能
- 顧客変更追跡 --- 発注書作成後に顧客が注文変更(Change)、追加注文(Add)、キャンセル(Remove)した場合、変更内容を自動検知して差分表示
- 在庫自動引当 --- 発注書のステータスがSentに変わった時点で、在庫テーブルに引当処理を実行。二重引当を防止するロック機構も実装
- キャンセル時自動戻し --- 注文キャンセルが発生した場合、引当済みの在庫を自動で戻す。手動での在庫調整が不要に
集計ロジックの設計
パターン集計は、受注データから金具色とアイカラーを抽出し、2次元マトリクスとして集計する。Gold行 × 8色列、Silver行 × 8色列の計16セルに注文数が入る。このマトリクスがそのまま発注書のフォーマットに対応する設計とした。
結果
発注書作成にかかる時間が半日から10分に短縮された。期間を指定してボタンを押すだけで、16パターンの集計が完了し、発注書フォーマットに自動整形される。
在庫との連動により、「発注したのに在庫を引当し忘れた」「キャンセルされたのに在庫を戻し忘れた」といったヒューマンエラーが完全にゼロになった。
学び・気づき
SKUが多いブランドほど、集計と帳票生成の自動化がもたらすインパクトは大きい。16パターンという数は人間が手作業で正確に管理するには多すぎるが、プログラムにとっては何の負荷もない。
発注書は「正確でなければならない」帳票。だからこそ人間ではなくプログラムに任せるべき。ステータス管理で「今どの段階か」を可視化することで、業務全体の見通しも良くなった。
KEY TAKEAWAYS
この記事のポイント
- SKUが多いブランドほど集計自動化の恩恵が大きい。16パターンの手動集計は時間もかかりミスも生む
- ステータス管理で「今どの段階か」を可視化。Draft / Sent / Completedの3段階で発注書のライフサイクルを管理する
- 在庫連動は発注確定時点で行うのがベスト。引当と戻しを自動化することで、在庫精度が飛躍的に向上する