Changer de mode d'expédition
La fenêtre Editer la méthode de livraison s'affiche avec deux onglets, l'un pour Expédition et l'autre pour Prélèvement. Par défaut, la fenêtre Editer la méthode de livraison affiche l'onglet correspondant à la méthode de livraison en cours de la ligne de commande. En fonction du résultat de l'API getFulfillmentOptionsForLines, les options appropriées sont affichées dans chacun des onglets. Cependant, l'associé de magasin ne verra pas l'option En magasin en tant que méthode de livraison. :NONE.getItemAvailabilityForStoreL'API est appelée pour extraire la disponibilité du produit pour les méthodes de distribution.
- Lorsque le mode de livraison d'une ligne de commande passe de Prélèvement à Expédition, l'API
modifyFulfillmentOptionsest appelée pour définir l'attributDeliveryMethodsurSHPet l'attributCarrierServiceCodeen fonction de l'option de service de transporteur sélectionnée, le cas échéant. L'APIgetCarrierServiceOptionsForOrderingest appelée pour extraire la liste des services de transporteur dans l'onglet relatif à l'expédition. L'APImodifyFulfillmentOptionsdéfinit également l'adresse d'expédition de la ligne de commande, si la commande n'a pas encore d'adresse d'expédition. - Lorsque la méthode de livraison d'un produit passe de Expédition à Prélèvement, l'API
modifyFulfillmentOptionsest appelée pour définir l'attributDeliveryMethodsurPICKet l'attributShipNodesur le magasin actuel. La logique implémentée pour sélectionner ou modifier un magasin est applicable. Pour plus d'informations, consultez la section Modifier le magasin de retrait.Dans ces scénarios, l'API
modifyFulfillmentOptionsest appelée en mode de modifications en attente à condition qu'il n'y ait pas de modifications en attente existantes et que le statut de la ligne de commande soit inférieur à Planifié. Si le statut de la ligne de commande estScheduledou supérieur et que la règleAllow Modifications of Orders Beyond Scheduled Statusest activée, les modifications en attente sont validées ; la ligne de commande est déplanifiée à la confirmation de l'utilisateur. De même, si une expédition a été créée pour la ligne de commande, la ligne de commande est supprimée de l'expédition avant que l'associé de magasin puisse procéder à des modifications. L'APIgetCompleteOrderDetailsest appelée pour actualiser l'écran avec la nouvelle méthode de livraison. Si l'associé de magasin clique sur Enregistrer, l'APIchangeOrderest appelée pour appliquer définitivement les modifications à la commande.