Résumé
Manipulation de l'entité Deal (Affaires) en lecture/écriture/suppression via un objet métier depuis une application externe.
Remarque
A partir de la Summer'22version 5.6, le webhook Deal a été scindé en deux afin de gérer les opportunités séparément. Il faudra donc à présent utiliser le nouveau webhook Opportunity pour cette partie.
Tables
Les tables utilisées sont :
...
sw_data_dealelement : Table des éléments d’affaires
sw_data_customeraddressdeal : Table des adresses d'affaires
sw_data_dealstep : Table des étapes d’affaires
Critères d'activation
WHK_Deal est défini dans la gestion des webhooks du studio.
Règles métier
verb: PUT
La date de création est mise par défaut à la date du jour (creationDate) si non fournie lors d'une création
Le statut est mis par défaut à 'Brouillon' (generictype_ID_status = DRAFTING) si non fourni lors d'une création
Fonctionnement
settings parameters
Bloc de code | ||
---|---|---|
| ||
"settings": { "getPartners": "1" // pour le verb GET et LIST permet de retourner les informations des partenaires de l'affaire } |
...
Bloc de code | ||
---|---|---|
| ||
{ "deal": { "codedeal": "AFR000011", /* Code globalement unique de l'affaire (Varchar (255))*/ "customer_ID": "C0000001", /* Code client (ForeignKey () - sw_data_customer.codecustomer)*/ "label": "Vitrine de magasin", /* Libellé (Varchar (255))*/ "generictype_ID_dealType": "DEAL_DEALTYPE-AFR", /* Code type d'affaire (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = DEAL_DEALTYPE) et generictype_ID_parent = DEAL*/ "dealNumber": "AFR000011", /* N° d'affaire (Varchar (64))*/ "description": "", Description (Text (65535))*/ "creationDate" : "2021-12-01", /* Date de création (DateTime ())*/ "closingDate": "", /* Date de fin (DateTime ())*/ "amount": "300", /* Montant (Double ())*/ "probability": "55", /* Probabilité (en %) (Int ())*/ "customer_ID_introducer": "", /* Code client apporteur d'affaire (ForeignKey () - sw_data_customer.codecustomer) "baseuser_ID": "25", /* Code responsable (ForeignKey () - sw_data_baseuser.codebaseuser)*/ "amount2": "", /* Montant 2 (Double ())*/ "generictype_ID_status": "DEAL_STATUS-3", /* Statut (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = DEAL_STATUS_V2)*/ "realClosingDate": "", /* Date de fin réelle (DateTime ())*/ "dealstep_ID_current": "", /* Code étape actuelle (ForeignKey () - sw_data_dealstep.codedealstep)*/ "deal_ID_origin": "", /* Code opportunité d'origine (ForeignKey () - sw_data_deal.codedeal)*/ "manualProbability": "0", /* Probabilité manuelle (Valeurs possibles : 0,1) (Bool ())*/ "marketinglead_ID_origin": "", /* Code lead marketing d'origine (ForeignKey () - sw_data_marketinglead.codemarketinglead)*/ "customercontact_ID": "C0000001-DJ", /* Code contact client (ForeignKey () - sw_data_customercontact.codecustomercontact)*/ "internalcodedeal": null /* Code deal original de weavy s'il y a eu transcodage (Varchar (255)) */ /* Optionnel : pour mettre à jour les champs dynamiques selon paramétrage */ /* Exemple 1 : */ "dynamicfields": [{ "fieldname": "aff10", "fieldvalue": "100000" }, { "fieldname": "aff30", "fieldvalue": "Jean-René Abraham" }, { ... }] /* Exemple 2 : */ /* A partir de la version SUMMER'215.4, le mappage direct des champs dynamiques est possible en utilisant le nom du champ en bdd */ "v_aff10": "100000", "v_aff30": "Jean-René Abraham", ... }, "dealelement": [ { "codedealelement": "AFR000011-0-1", /* Code globalement unique de l'élément d'affaire (Varchar (255))*/ "deal_ID": "AFR000011", /* Code affaire. Optionnel : reprendre le code affaire du bloc json "deal", si non fourni reprend automatiquement le code affaire (ForeignKey () - sw_data_deal.codedeal)*/ "label" : "Elément 1", /* Libellé (Varchar (255))*/ "DataOrder": "10", /* Ordre d'affichage (Int ())*/ "originalCode": "1", /* Code de l'élément d'affaire à afficher (Varchar (255))*/ "dealelementstructure_ID": "", /* Code structure (ForeignKey () - sw_data_dealelementstructure.codedealelementstructure)*/ "dealelement_ID_parent": "" /* Code élément d'affaire parent (nécessite que le parent a été créée avant celui-ci) (ForeignKey () - sw_data_dealelement.codedealelement)*/ }, { "codedealelement": "AFR000011-0-1.1", /* Code globalement unique de l'élément d'affaire (Varchar (255))*/ "deal_ID": "AFR000011", /* Code affaire. Optionnel : reprendre le code affaire du bloc json "deal", si non fourni reprend automatiquement le code affaire (ForeignKey () - sw_data_deal.codedeal)*/ "label" : "Elément 1.1", /* Libellé (Varchar (255))*/ "DataOrder": "11", /* Ordre d'affichage (Int ())*/ "originalCode": "1.1", /* Code de l'élément d'affaire à afficher (Varchar (255))*/ "dealelementstructure_ID": "", /* Code structure (ForeignKey () - sw_data_dealelementstructure.codedealelementstructure)*/ "dealelement_ID_parent": "AFR000011-0-1" /* Code élément d'affaire parent (nécessite que le parent a été créée avant celui-ci) (ForeignKey () - sw_data_dealelement.codedealelement)*/ }, { "codedealelement": "AFR000011-0-2", /* Code globalement unique de l'élément d'affaire (Varchar (255))*/ "deal_ID": "PJ000011", /* Code affaire. Optionnel : reprendre le code affaire du bloc json "deal", si non fourni reprend automatiquement le code affaire (ForeignKey () - sw_data_deal.codedeal)*/ "label" : "Elément 2", /* Libellé (Varchar (255))*/ "DataOrder": "20", /* Ordre d'affichage (Int ())*/ "originalCode": "2", /* Code de l'élément d'affaire à afficher (Varchar (255))*/ "dealelementstructure_ID": "", /* Code structure (ForeignKey () - sw_data_dealelementstructure.codedealelementstructure)*/ "dealelement_ID_parent": "" /* Code élément d'affaire parent (nécessite que le parent a été créée avant celui-ci) (ForeignKey () - sw_data_dealelement.codedealelement)*/ }], "customeraddressdeal": [ { "codecustomeraddressdeal": "", /* Code globalement unique d'un lien d'adresse. Si non fourni code=ID (Vachar(255))*/ "deal_ID": "", /* Code affaire. Optionnel reprendre le code affaire du bloc json "deal", si non fourni reprend automatiquement le code affaire (ForeignKey () - sw_data_deal.codedeal)*/ "customeraddress_ID" : "C0000001-SXB" /* Code de l'adresse. (ForeignKey () - sw_data_customeraddress.codecustomeraddress)*/ }], "dealstep": [ { "codedealstep": "" /* Code gloablement unique de l'étape d'affaire. Si non fourni code=ID (Vachar(255))*/ "deal_ID": "", /* Code affaire. Optionnel : reprendre le code affaire du bloc json "deal", si non fourni reprend automatiquement le code affaire (ForeignKey () - sw_data_deal.codedeal)*/ "dealsteptype_ID": "DEAL_STEP-AFR-ANA" /* Code type d'étape d'affaire (ForeignKey () - sw_data_dealsteptype.codedealsteptype)*/ "stepDate": "2023-09-12 10:00", /* Date-Heure de l'étape d'affaire. Si non fourni, on prend l'heure courrante (DateTime ()) "comment": "" /* Commentaire (Text (65535))*/ }] } |
...
Bloc de code | ||
---|---|---|
| ||
"filters:" {
"codeDeal": "value", filter is equal
"dealNumber": "value", filter is equal
"label": "value", filter is contains
"creationDate": "value", filter is greater or equal to
"creationDateBetween": "value1|value2", filter is between value1 and value2
"codeCustomer": "value", filter is equal
"dealType": "value", filter is equal
"codeStatus": "value", filter is equal
"externalReference": "value" filter is equal
},
"orderBy": "value" |
...