バッチ・ピック実行の実装-ピック後にソート

Sterling Store Engagement は、出荷ベースのバッチピッキングのためのソート・アフター・ピックをサポートしています。 この方法では、最初に商品をピックし、ステージング・プロセス中にピックされた商品が異なるオーダーにソートされます。 ピッキング・プロセス中に、商品がオーダー固有の通箱に配置されることはありません。
バッチ・ピック実行フローは、以下の 3 つのステージで構成されます。
  • バッチ内のオーダーの商品のピック
  • ピックの完了ページまたは中間ページ
  • 商品のデポジット

バッチ内の商品のピック

  • 「ピッキング・バッチ」 ページには、バッチでピックする必要がある商品と商品の詳細がリストされます。
  • 製品情報を表示するために、 StoreBatchKey を指定して getStoreBatchDetails API が呼び出されます。 この API は、同じ ItemID および UnitOfMeasure を持つ出荷明細と、合計された数量を組み合わせて、バッチ明細を形成します。
  • 出荷明細にピック・ロケーションが関連付けられている場合、バッチ明細は PickLocationSeq の昇順で取り出されます。
  • 各バッチ明細の 「オーダーに含まれる」 リンクには、商品がピックされたオーダーと、各オーダーの数量が表示されます。
  • アイテムのシリアルが追跡されている場合、バッチ明細の 「シリアルの表示」 リンクには、ピックされたすべてのシリアルのリストが表示されます。
商品の選択
  • 商品またはシリアル番号をスキャンしてピックすることができます。 スキャン時に、 registerBatchPick API が StoreBatchKeybarcode data 、および Mode として SCANとして呼び出されます。
  • 「+」 をクリックするか、数量を手動で入力することで、通常の商品を手動でピックできます。 これにより、 StoreBatchKeyitem details、および ActionPICK として、 ModeMANUALPICKとして指定された registerBatchPick API が呼び出されます。
ピックを元に戻す
  • シリアライズされていない商品の場合は、 「-」をクリックして商品のピックを取り消すことができます。 これにより、 StoreBatchKeyitem details、および ActionUNDOPICK として、 ModeMANUALPICKとして指定された registerBatchPick API が呼び出されます。
  • シリアライズされた商品の場合は、 「-」をクリックできます。 「 シリアルの削除 」ウィンドウが開きます。 シリアル番号をスキャンできます。 これにより、 StoreBatchKeybarcode data、および ModeSCAN として、 ActionUndoPick として指定された registerBatchPick API が呼び出されます。
不足の記録
不足理由を選択することにより、商品が使用不可の場合に、その商品の不足を記録できます。
  • 不足理由は、 CodeType="YCD_PICK_SHORT_RESOL"を指定して getCommonCodeList API を呼び出すことによってリストされます。
  • これにより、 StoreBatchKey、アイテムの詳細、およびストレージ理由を指定して recordShortageForBatchPick API が呼び出されます。
  • 「カスタム不足理由による不足の記録」は、 inventoryShortage の場合と同様に機能し、不足数量が更新されます。
  • ピック、ピックの取り消し、または不足の記録が行われるたびに、新しい数量とシリアル情報でバッチ明細が更新されます。
  • 各ピックおよびレコードの不足が発生するたびに、バッチが検証されます。 バッチの状況が CANCELLED (9000) の場合、警告メッセージが表示され、 「バッチ・サマリー」 ページが開きます。 バッチのステータスが CANCELLEDでない場合、すべての商品がピックされているかどうかを確認するためにバッチがチェックされます。 確認後、バッチ状況が PICKED (2000) に変更され、中間ページが開きます。
続行またはステージングの終了
  • WSC_BP_STG_REQDNに設定されている場合、 「ピッキング・バッチ」 ページに 「終了」 ボタンが表示されます。 「終了」をクリックすると、 manageStoreBatch API が呼び出され、バッチ状況が Completed(3000) に更新されます。 また、 changeShipment API が呼び出されて、各出荷のステージング済み数量が更新されます。 出荷が完全にステージングされているかどうかに基づいて、出荷ステータスを Ready for packing または Ready for customer pickup に移動するために changeShipmentStatus API が呼び出され、 「バッチ・サマリー」 ページが開きます。
  • WSC_BP_STG_REQDYに設定されている場合、 「ピッキング・バッチ」 ページに 「続行」 ボタンが表示されます。 「続行」をクリックすると、バッチ状況が PICKED(2000) に更新され、中間画面が開きます。
バッチの部分的なピッキング
バッチを部分的にピックし、ステージング・ロケーションで商品の荷降ろしを続行することができます。
  • WSC_BP_STG_REQD ルールが N に設定されていて、バッチが完全にピックされていない場合、 「終了」をクリックすると、確認メッセージが表示され、確認時にバッチに完了のマークが付けられます。
  • WSC_BP_STG_REQDY に設定されていて、バッチが完全にピックされていない場合は、 「続行」をクリックすると、確認メッセージが表示され、中間ページが開きます。
  • 出荷明細がピックされていない場合、 StoreBatchKey および BatchPickPriority は出荷明細から削除されます。
  • 出荷明細が部分的にピックされると、ピックされる商品の残りの数量を使用して新しい出荷明細が作成されます。 これらの出荷明細は、新規バッチの一部としてピックできるようになります。
印刷
バッチ行を印刷するには、 「印刷」をクリックします。

ピック・チケットを印刷するために、 ISFPrintStoreBatchPickList 印刷サービスが実装されています。 ISFPrintStoreBatchPicks_multiApiInput.xsl.sample テンプレートおよび ISFPrintStoreBatchPicks_output.xsl.sample テンプレートは、アドイン・ワークスペースの一部として /template/prints/ycd/xsl/ ディレクトリーに保管されます。

ピックの完了ページまたは中間ページ

すべての商品がピックされると、中間画面が表示されます。 「続行」 をクリックすると、 「商品の荷降ろし」 ページが開きます。

すべて割り当て
「すべて割り当て」 オプションは、リソース・アクセス権によって制御されます。 これは、すべての製品を 1 つのステージング・ロケーションに割り当てるために使用されます。 「すべて割り当て」をクリックすると、 「ステージング・ロケーションの割り当て」 ウィンドウが開き、ピックした商品を保管するステージング・ロケーションを入力できます。
  • ステージング・ロケーションは、 YCD_STAGINGLOC_TRANSLATION_NEEDED ルールに基づいて変換されます。
  • YCD_STAGINGLOC_TRANSLATION_NEEDEDYに設定されている場合、スキャン時に、 type="HoldLocation" を指定した thetranslateBarCode API が呼び出されます。 変換が正常に完了すると、 changeShipment API が呼び出されて、各 ShipmentKeyの保留ロケーションとステージング済み数量が更新されます。

    そうでない場合は、 changeShipment API が呼び出され、ロケーションを検証せずに各 ShipmentKey の保留ロケーションとステージング済み数量が更新されます。

  • HoldLocation は、既存の保留ロケーションに追加されます。
  • 次に、 manageStoreBatch API が呼び出されてバッチが終了し、 「バッチ・サマリー」 ページが開きます。

商品のデポジット

「ステージング・ロケーションの割り当て (Assign staging locations)」 ページにバッチ内のオーダーがリストされるので、ピックされた商品をソートおよび荷降ろしすることができます。 1 つのオーダーを複数のロケーションにステージングできます。
  • 初期化時に、 StoreBatchKey を指定して getStoreBatchDetails API が呼び出され、バッチ、オーダー、および商品の詳細が表示されます。 getRuleDetails API は、 YCD_STAGINGLOC_TRANSLATION_NEEDED ルールのルール詳細を取得するためにも呼び出されます。
  • 商品またはシリアル番号をスキャンして、荷降ろしする商品を選択できます。 translateBarCode API が呼び出されます。

    変換が正常に完了すると、出荷明細の詳細が返され、 「ステージング・ロケーションの選択」 ウィンドウが表示されます。

  • 「+」 をクリックするか、数量を手動で入力することで、シリアル番号のない商品を手動で選択することもできます。これにより、 「ステージング・ロケーションの選択」 ウィンドウも開きます。
「ステージング・ロケーションの選択」 ウィンドウ
「ステージング・ロケーションの選択」 ウィンドウで、ピックされた商品を保管するステージング・ロケーションを入力できます。
  • YCD_STAGINGLOC_TRANSLATION_NEEDED ルールが Yに設定されている場合、スキャン時に type="HoldLocation" を指定した translateBarCode API が呼び出されます。 変換が正常に完了すると、 changeShipment API が呼び出されて、保留ロケーションとステージング済み数量が更新されます。
  • そうでない場合、 changeShipment API が呼び出され、ロケーションを検証せずに、保留ロケーションと出荷時のステージング済み数量が更新されます。
  • 新しいステージング・ロケーションが既存の保留ロケーションに追加されます。

    ユーザー・インターフェースは、オーダーおよび最近使用されたステージング・ロケーション・マップを維持します。 このマップは、オーダーの最近使用されたステージング・ロケーションで更新されます。 このロケーションはデフォルトでステージング用に設定され、 「ステージング・ロケーションの選択」 ウィンドウに表示されます。

  • 数量フィールドの横にある 「-」 をクリックすると、シリアル番号のない商品のデポジットを取り消すことができます。 ステージング数量を更新するために changeShipment API が呼び出されます。

    シリアル番号付き商品の場合、数量フィールドの横にある - をクリックすると、 「シリアル番号の削除」 ウィンドウが開きます。 シリアル番号をスキャンすると、 translateBarCode API が呼び出されます。これにより、内部で changeShipment API が呼び出され、ステージング数量が更新されます。

    ShipmentLineにはロケーション・マッピングがないため、荷降ろしを取り消すときに保留ロケーションは更新されません。

    デポジットまたはデポジットの取り消しが行われるたびに、ユーザー・インターフェースが新しい数量とロケーションの詳細で更新されます。

  • シリアライズされた商品の場合、商品の 「シリアル番号の表示」 リンクが表示されます。
  • 代替ロケーションを選択して、残りの数量を保管することができます。 changeShipment API が呼び出され、代替ロケーションが Shipment.HoldLocationに追加されます。 オーダー・マップも更新されます。
  • 「オーダーのステージ」 オプションを使用して、オーダーのすべての商品を 1 つのステージング・ロケーションにデポジットすることを選択できます。 これにより、 「ステージング・ロケーションの選択」 ウィンドウが開きます。 ロケーションを選択すると、 changeShipment API が呼び出されて、ステージ済み数量と保留ロケーションが更新されます。
  • 各荷降ろしの後、システムは、すべてのピックされた商品がステージング・ロケーションに荷降ろしされているかどうかを検査します。 「はい」の場合は、確認メッセージが表示されます。 確認すると、 manageStoreBatch API が呼び出されてバッチが終了し、 「バッチ・サマリー」 ページが開きます。
  • また、出荷がステージング・ロケーションに完全にデポジットされたかどうかに基づいて、 changeShipmentStatus API が呼び出されて出荷ステータスが Ready for packing または Ready for customer pickup に移動され、 「バッチ・サマリー」 ページが開きます。
  • オーダー・ビューを印刷するには、 「印刷」をクリックします。 ISFPrintStoreBatchOrderDetails 印刷サービスは、オーダー・スリップを印刷するために実装されています。 ISFPrintStoreBatchOrderDetails_multiApiInput.xsl.sample テンプレートおよび ISFPrintStoreBatchOrderDetails_output.xsl.sample テンプレートは、アドイン・ワークスペースの一部として /template/prints/ycd/xsl/ ディレクトリーに保管されます。