Service de mise à jour du statut de la commande

Le service de mise à jour du statut de la commande est un service Web entrant qui est chargé de mettre à jour le statut d'une commande dans HCL Commerce lorsqu'un magasin est configuré pour faire traiter et exécuter les commandes par un système externe. Ce service Web entrant est généralement appelé par le système externe pour mettre à jour le statut d'une commande transférée dans HCL Commerce, lorsque son statut a changé dans le système externe et que ce changement doit être reflété dans WebSphere Commerce.

Cas d'utilisation typiques

  • Une commande a été enregistrée par HCL Commerce et transférée à un système externe de gestion des commandes pour son traitement et son exécution. Le statut de la commande a changé dans le système externe. Son statut dans HCL Commerce doit être mis à jour afin que le client puisse voir ce changement lorsqu'il consulte le statut de sa commande via HCL Commerce.

URL du point d'extrémité et opération du service Web

L'URL de nœud final par défaut de ce service Web entrant est https://host_name:8000/webapp/wcs/services/OrderServices. L'opération exposée par le service est SyncOrder, avec le BOD SyncOrder en guise de requête et le BOD ConfirmBOD en guise de réponse.

Remarque : SyncOrder est utilisé pour mettre à jour la colonne de statut dans les tables de base de données ORDERS et ORDERITEMS. Si vous prévoyez d'utiliser SyncOrder, vous devez définir l'indicateur de propriété syncWCSOrderStatus sur true dans le fichier de configuration wc-admin-component.xml du composant de commande. Pour définir cet indicateur, accédez au répertoire workspace_dir/WC/xml/config/com.ibm.commerce.order et ouvrez le fichier wc-admin-component.xml pour le modifier. Ajoutez le groupe de configuration suivant avec l'indicateur de propriété syncWCSOrderStatus défini sur true :
<_config:configgrouping name="SyncOrder"> 
<_config:property name="syncWCSOrderStatus" value="true"/>
</_config:configgrouping>

Demande

Les requêtes adressées à ce service Web entrant ont la forme de documents BOD (Business Object Documents) SyncOrder. Elles sont mappées à la commande OrderStatus et contiennent les informations suivantes :

XPath* Type Mappé à Description Obligatoire
ApplicationArea/BusinessContext/ContextData Données utilisateur - La zone de contexte métier de la demande. Elle est généralement utilisée pour fournir des données de contexte métier telles que l'ID du magasin et l'ID de la langue. -
ApplicationArea/UserArea/SequenceNumber chaîne sequenceNumber Le numéro de séquence de la demande de mise à jour du statut de commande. Il sert à déterminer l'ordre des requêtes de mise à jour portant sur le statut d'une même commande, lorsqu'elles sont susceptibles d'être reçues dans le désordre par HCL Commerce. N
ApplicationArea/CreationDateTime dateTime lastUpdateTime La date de création de la demande de mise à jour du statut de commande. Il sert à déterminer l'ordre des requêtes de mise à jour portant sur le statut d'une même commande, lorsqu'elles sont susceptibles d'être reçues dans le désordre par HCL Commerce et que leur numéro de séquence n'est pas fourni. N
DataArea/Sync/ActionCriteria/ActionExpression/@actionCode chaîne actionCode Le code d'action. Doit être "Update" O
DataArea/Order/OrderHeader/OrderIdentifier/OrderID long orderId HCL Commerce L'ID de la commande. O
DataArea/Order/OrderHeader/OrderIdentifier/ExternalOrderID chaîne merchantOrderNumber L'ID externe de la commande. N
DataArea/Order/OrderHeader/OrderCharges/TotalProductPrice/@currency chaîne currency Devise dans laquelle est exprimé le prix total des produits de la commande. N
DataArea/Order/OrderHeader/OrderCharges/TotalProductPrice decimal priceTotal Prix total des produits de la commande. N
DataArea/Order/OrderHeader/OrderCharges/TotalShippingCharge decimal shippingTotal Total des frais de port de la commande. N
DataArea/Order/OrderHeader/OrderCharges/TotalSalesTax decimal taxTotal Total des taxes sur la vente (ou TVA) de la commande. N
DataArea/Order/OrderHeader/OrderCharges/TotalShippingTax decimal shippingTaxTotal Total de la taxe afférente au transport de la commande. N
DataArea/Order/OrderHeader/OrderShippingInfo/RequestedShipDateTime dateTime requestShipDateTime Date d'expédition demandée pour la commande. N
DataArea/Order/OrderHeader/OrderShippingInfo/UserData/UserDataField[@name='shipCondition'] chaîne shipCondition Code indiquant si une expédition partielle de la commande est acceptée. Valeurs valides :
  • SC = expédier la commande complète
  • SP = expédier la commande partielle
N
DataArea/Order/OrderHeader/OrderShippingInfo/UserData/UserDataField[@name='shippingModeFlag'] chaîne shippingModeFlag Code indiquant à quel niveau s'appliquent l'adresse de livraison et le mode d'expédition. Valeurs valides :
  • O = niveau commande
  • I = niveau article
N
DataArea/Order/OrderHeader/OrderStatus/Status chaîne orderStatus Statut de la commande. N
DataArea/Order/OrderHeader/CustomerComments chaîne commentaire Commentaires du client relatifs à la commande. N
DataArea/Order/OrderHeader/PlacedDateTime dateTime placeDateTime Date à laquelle la commande a été passée. N
DataArea/Order/OrderItem[i]/OrderItemIdentifier/OrderItemID long orderItemId_i ID HCL Commerce du i-th article de commande, si applicable. O
DataArea/Order/OrderItem[i]/OrderItemIdentifier/ExternalOrderItemID chaîne merchantItemNumber_i ID de commande externe du i-th article de commande. N
DataArea/Order/OrderItem[i]/ProductIdentifier/SKU chaîne partNumber_i SKU du produit associé au i-th article de commande. N
DataArea/Order/OrderItem[i]/Quantity double quantityRequested_i Valeur de quantité du i-th article de commande. N
DataArea/Order/OrderItem[i]/OrderItemCharges/UnitPrice/Price decimal unitPrice_i Prix unitaire du produit associé au i-th article de commande. N
DataArea/Order/OrderItem[i]/OrderItemCharges/UnitPrice/Price/@currency chaîne currency_i Devise dans laquelle est exprimé le prix de l'article de commande. N
DataArea/Order/OrderItem[i]/OrderItemCharges/OrderItemPrice decimal priceTotal_i Prix du i-th article de commande. N
DataArea/Order/OrderItem[i]/OrderItemCharges/ShippingCharge decimal shippingTotal_i Frais de port du i-th article de commande. N
DataArea/Order/OrderItem[i]/OrderItemCharges/SalesTax decimal taxTotal_i Taxes sur la vente (ou TVA) du i-th article de commande. N
DataArea/Order/OrderItem[i]/OrderItemCharges/ShippingTax decimal shippingTaxTotal_i Taxe afférente au transport du i-th article de commande. N
DataArea/Order/OrderItem[i]/OrderItemShippingInfo/RequestedShipDateTime dateTime requestShipDateTime Date d'expédition demandée pour le i-th article de commande. N
DataArea/Order/OrderItem[i]/OrderItemShippingInfo/UserData/UserDataField[@name='shipCondition'] chaîne shipCondition_i Code indiquant si une expédition partielle de la commande est acceptée. Valeurs valides :
  • SC = expédier la commande complète
  • SP = expédier la commande partielle
N
DataArea/Order/OrderItem[i]/OrderItemShippingInfo/UserData/UserDataField[@name='shippingModeFlag'] chaîne shippingModeFlag_i Code indiquant à quel niveau s'appliquent l'adresse de livraison et le mode d'expédition. Valeurs valides :
  • O = niveau commande
  • I = niveau article
N

* Les préfixes d'espace de noms sont omis pour simplifier la présentation.

Réponse

Les réponses de ce service Web entrant ont la forme de documents BOD ConfirmBOD. Elles contiennent les informations suivantes :

XPath* Type Description
DataArea/BOD/BODSuccessMessage - Cet élément est présent si la demande a été traitée avec succès.

* Les préfixes d'espace de noms sont omis pour simplifier la présentation.

Exemples

Exceptions

Toutes les exceptions sont renvoyées sous forme de documents BOD ConfirmBOD avec un élément ResponseCriteria sous le verbe Confirm. Elles contiennent les informations suivantes :

XPath* Type Description
DataArea/Confirm/ResponseCriteria/ChangeStatus/Code chaîne L'identificateur de corrélation. Peut être utilisé pour identifier de manière unique une exception dans les journaux du serveur.
DataArea/Confirm/ResponseCriteria/ChangeStatus/ReasonCode chaîne Le code raison. Ce code, qui est soit un code d'erreur système de HCL Commerce s'il est disponible, soit la clé de message EC plus un code d'erreur secondaire en option, si le code d'erreur système de HCL Commerce n'est pas disponible. Ce code d'erreur système peut être indisponible en cas d'exceptions d'application.
DataArea/Confirm/ResponseCriteria/ChangeStatus/Reason chaîne Le message de l'exception.

* Les préfixes d'espace de noms sont omis pour simplifier la présentation.

Exemples