Instruction OrderStatus
L'instruction OrderStatus est utilisée uniquement lorsque le système dorsal envoie un message Update_WCS_OrderStatus, Update_NC_OrderStatus ou Order Status Update. L'instruction met à jour les informations relatives à l'état d'une commande existant déjà.
Paramètres
- sequenceNumber
- Chaîne. sequenceNumber pour l'état de la commande WCS aux fins de sérialisation.
- lastUpdateTimestamp :
- Chaîne au format horodatage. Horodatage de la dernière mise à jour de l'état de la commande WebSphere Commerce pour
sérialisation.
- Gestion des versions : Chaîne "TRUE" ou "FALSE", La valeur par défaut est FALSE.
- Si la valeur est TRUE, la gestion des versions sera activée.
Les paramètres ci-après correspondent aux colonnes de la table ORDSTAT.
- orderId : Type Integer.
- Référence de la commande WebSphere Commerce définie dans la colonne ORDERS_ID de la table ORDSTAT. Il s'agit d'une clé associée qui fait référence à la colonne ORDERS_ID de la table ORDERS.
- merchantOrderNumber : Type String, obligatoire.
- Référence de commande générée dans le système dorsal, définie dans la colonne
OSMORDER.
- currency : Type String
- Type de devise ISO 4217 dans laquelle est exprimé le prix,
défini dans la colonne OSCPCUR.
- priceTotal : Type BigDecimal(20,4)
- Total de la commande, défini dans la colonne OSPRTOT.
- taxTotal : Type BigDecimal(20,4)
- Total des taxes pour la commande, défini dans la colonne OSTXTOT.
- shippingTotal : Type BigDecimal(20,4)
- Total des frais de port pour la commande, défini dans la colonne OSSHTOT.
- shippingTaxTotal : Type BigDecimal(20,4)
- Total des taxes afférentes aux frais de port pour la commande, défini
dans la colonne OSSHTXTOT.
- orderStatus : Type String
- Etat de la commande, défini dans la colonne OSSTATUS.
- placeDateTime : Type Timestamp
- Date à laquelle la commande est effectivement passée, définie dans la colonne OSPLTIME.
- requestShipDateTime : Type Timestamp
- Date à laquelle l'expédition de la commande est demandée, définie dans la colonne
OSRSTIME.
- scheduleShipDateTime : Type Timestamp
- Date à laquelle l'expédition de la commande est planifiée, définie dans la colonne OSSSTIME.
- actualShipDateTime : Type Timestamp
- Date à laquelle la commande est effectivement expédiée, définie dans
la colonne OSASTIME.
- invoiceDateTime : Type Timestamp
- Date à laquelle la commande est facturée, comme défini dans la colonne OSINVTIME.
- invoiceValue : Type BigDecimal(20,4)
- Valeur nette de facturation de la commande, définie dans la colonne OSINVVAL.
- shipCondition : Type String
- Code indiquant si la livraison partielle de la commande est acceptée,
défini dans la colonne OSSCOND. 'SC' : Ship Complete (livraison complète), 'SP':
Ship Partial (livraison partielle).
- shippingModeFlag : Type String
- Code indiquant si l'adresse et le mode d'expédition sont au niveau commande
ou au niveau article de commande, défini dans la colonne OSSMFLAG. 'O': Niveau commande; 'I':
Niveau article.
- comment : Type String
- Commentaires concernant l'état de la commande, définis dans la colonne OSCMNT.
- field1 : Type Integer
- Zone 1 de personnalisation de l'état de la commande, définie dans la colonne FIELD1.
- field2 : Type BigDecimal(15,2)
- Zone 2 de personnalisation de l'état de la commande, définie dans la colonne FIELD2.
- field3 : Type String
- Zone 3 de personnalisation de l'état de la commande, définie dans la colonne FIELD3.
- items : Vecteur de la table de hachage.
- Chaque table de hachage représente les paramètres pour un article.
Comportement
- Le premier état de la commande doit indiquer les valeurs orderId et merchantOrderNumber.
- Vérifiez si l'article indiqué dans orderId existe dans la table ORDERS.
- Si des informations de sérialisation sont disponibles, telles que les paramètres sequenceNumber et lastUpdateTimestamp, vérifiez si les valeurs sont plus récentes que celles figurant déjà dans la table ORDSTAT ; dans le cas contraire, la mise à jour n'aura pas lieu.
- Créez et faites la mise à jour d'une ligne dans la table ORDSTAT en utilisant toutes les informations fournies.
- Si la gestion des versions est activée et qu'il s'agit du premier état de la commande, une nouvelle ligne sera créée dans la table ORDSTAT ; dans le cas contraire, une copie du dernier état de la commande d'un article sera faite et sa version (OSVERNBR) sera définie en fonction du nombre maximal de version +1. Une nouvelle ligne sera créée et contiendra toutes les informations fournies avec son OSVERNBR
la valeur est 0.
- Changer à 'G' la valeur de la colonne STATUS dans la table ORDERS.
Conditions d'exception
- La valeur ID de la commande indiquée n'est pas une référence de commande valide dans la table ORDERS.
- La valeur ID de la commande ou la référence de l'article pour le commerçant n'est pas indiquée dans le premier état d'une commande donnée.
- La valeur ID de la commande et la référence de l'article pour le commerçant ne correspondent pas à celles figurant déjà dans la table ORDSTAT d'une commande précise au cours de mises à jour de commande successives.
- Les informations relatives à la série sont fournies et le message d'état de la commande est décalé