背景・状況

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段階で発注書のライフサイクルを管理する
  • 在庫連動は発注確定時点で行うのがベスト。引当と戻しを自動化することで、在庫精度が飛躍的に向上する