WebHook Transfer To Receive (V5.5)
Résumé
Manipulation de l'entité ProductstockTransferToReceive (Bons de transfert à recevoir par le technicien) en lecture/écriture/suppression via un objet métier depuis une application externe.
Tables
Les tables utilisées sont :
sw_data_productstocktransfertoreceiveheader : Table des entêtes de bons de transfert à recevoir
Les tables liées sont :
sw_data_productstocktransfertoreceivedetail : Table des mouvements de bons de transfert à recevoir
sw_data_productstocktransfertoreceivedetaildetail : Table des détails de mouvements de bons de transfert à recevoir
Critères d'activation
WHK_Transfer2Receive est défini dans la gestion des webhooks du studio.
Règles métier
verb: PUT
Un bon de transfert dont le statut est 'Traité' (generictype_ID_status = TREATED) ne peut plus être modifié
Le type de transfert est mis par défaut à 'Réapprovisionnement' (generictype_ID_transferType = PRODUCTSTOCK_TRANSFERTORECEIVE_TRANSFERTYPE-REPLENISHMENT) si non fourni lors d'une création
Le statut est mis par défaut à 'A traiter' (generictype_ID_status = PRODUCTSTOCK_TRANSFERTORECEIVE_STATUS-TO_BE_TREATED) si non fourni lors d'une création
verb: DELETE
Un bon de transfert dont le statut est 'Traité' (generictype_ID_status = TREATED) ou 'Partiellement traité' (generictype_ID_status = PARTIALLY_TREATED) ne peut plus être supprimé
Fonctionnement
verb: GET
resultType: simple
"productstocktransfertoreceiveheader": {
"codeproductstocktransfertoreceiveheader": "11",
"transferDate": "2021-09-02 00:00:00",
"generictype_ID_transferType": "REPLENISHMENT",
"generictype_ID_status": "TO_BE_TREATED",
"productdepot_ID_origin": "Dépôt principal",
"productdepot_ID_destination": "Dépôt Christian ROUX"
}
verb: GET
resultType: extended
"productstocktransfertoreceiveheader": {
"codeproductstocktransfertoreceiveheader": "11",
"transferDate": "2021-09-02 00:00:00",
"generictype_ID_transferType": "REPLENISHMENT",
"generictype_ID_status": "TO_BE_TREATED",
"productdepot_ID_origin": "Dépôt principal",
"productdepot_ID_destination": "Dépôt Christian ROUX",
"totalQuantity": "10.23",
"externalID": "TRF 11 I0000000 I3IF",
"externalDocumentNumber": "TRF 11",
"carrier": "HEPPNER",
"trackingID": "123456789-abcd-0000000001"
}
verb: GET
resultType: extendedRelated
en complément du résultat pour resultType: extended on aura le détail pour les tables generictype_transferType, generictype_status, productdepot_origin et productdepot_destination
"related":[
{
"generictype_transferType": {
"codegenerictype": "PRODUCTSTOCK_TRANSFERTORECEIVE_TRANSFERTYPE-REPLENISHMENT",
"label": "Réapprovisionnement",
"originalCode": "REPLENISHMENT",
"dataType": "PRODUCTSTOCK_TRANSFERTORECEIVE_TRANSFERTYPE",
"description": "",
"translationKey": "GenType_PRODUCTSTOCK_TRANSFERTORECEIVE_TRANSFERTYPE-REPLENISHMENT",
"generictype_ID_parent": "",
"tag": "REPLENISHMENT",
"orderNumber": ""
},
"generictype_status": {
"codegenerictype": "PRODUCTSTOCK_TRANSFERTORECEIVE_STATUS-TO_BE_TREATED",
"label": "A traiter",
"originalCode": "TO_BE_TREATED",
"dataType": "PRODUCTSTOCK_TRANSFERTORECEIVE_STATUS",
"description": "",
"translationKey": "GenType_PRODUCTSTOCK_TRANSFERTORECEIVE_STATUS-TO_BE_TREATED",
"generictype_ID_parent": "",
"tag": "TO_BE_TREATED",
"orderNumber": ""
},
"productdepot_origin": {
"codeproductdepot": "PRINC",
"label": "Dépôt principal",
"vehicle": "0",
"main": "1",
"vehicleRegistration": "",
"vehicleBrand": "",
"vehicleModel": "",
},
"productdepot_destination": {
"codeproductdepot": "D-95",
"label": "Dépôt Christian ROUX",
"vehicle": "1",
"main": "0",
"vehicleRegistration": "DV-095-SW",
"vehicleBrand": "",
"vehicleModel": ""
}
}]
verb: PUT
On gère 3 blocs json :
productstocktransfertoreceiveheader : contient une seule entête de bon de transfert
productstocktransfertoreceivedetail : tableau qui contient tous les mouvements du bon de transfert
productstocktransfertoreceivedetaildetail (optionnel) : tableau qui contient la gestion du détail des mouvements du bon de transfert (n° série/lot et/ou qualification de stock)
Compléments :
A la fin de la création d'un bon de transfert, si le dépôt de destination est en "Réception automatique" alors les réceptions de stock seront automatiquement confirmées comme entièrement reçues et les stocks mis à jour.
verb: LIST
resultType: simple, extended reprendre les définitions du GET
Valeurs possibles pour le tri "orderBy" :
transferDateDesc : par date de transfert descendant
transferDateAsc : par date de transfert ascendant