Centres de distribution et accords de livraison

Un centre de distribution représente le lieu à partir duquel les produits sont expédiés aux clients. Le comptage du stock est géré individuellement pour chaque centre de distribution. Les commandes OrderItemAdd et OrderItemUpdate attribuent un centre de distribution à chaque article d'une commande en appelant l'instruction de tâche DoInventoryActionCmd pour les magasins ATP et non ATP. Par défaut, l'instruction de tâche ResolveFulfillmentCenterCmd pour les magasins non ATP, et l'instruction de tâche AllocateInventoryCmd pour les magasins ATP, assignent des centres de distribution en fonction de la disponibilité des stocks, de l'adresse de livraison et des attributs de préséance des accords de livraison applicables.

Un accord de livraison permet à un magasin d'utiliser un centre de distribution. Un centre de distribution n'est affecté à un article de commande que si un accord de livraison habilitant existe (dans la table SHPARRANGE) entre le magasin et le centre de distribution. Un accord de livraison peut être limité à une période de validité particulière, à un mode de livraison particulier et à des juridictions de livraison particulières.

Les frais de port et les taxes pour un article de commande peuvent être calculés différemment en fonction du centre de distribution assigné. (Voir les tables SHPJCRULE et TAXJCRULE pour plus de détails.) Pendant ProcessBackorder, ProcessFutureOrder et ReleaseToFulfillment, le centre de distribution peut changer pour certains articles de commande. Dans de tels cas, ReprepareOrderCmd est invoquée pour recalculer les frais de port, les ajustements de livraison, la taxe de vente et la taxe d'expédition.