Résumé
Manipulation de l'entité
...
Contract (Contrats)
...
en lecture/écriture/suppression via un objet métier depuis une application externe.
Tables
Les tables utilisées sont :
sw_data_contract
...
: Table des contrats
Les tables liées sont :
sw_data_contractbilling
...
: Table de la facturation des contrats
Critères d'activation
WHK_Contract
...
est défini dans la gestion des webhooks du studio.
Fonctionnement
verb: GET
resultType: simple
Bloc de codeinfo | ||
---|---|---|
| ||
"contract":{ "codecontract": "C0000001-77", "label": "Test contrat", "contractNumber": "CONTRACT_000077", "customer_ID": "C0000001", "generictype_ID_status": "NEW", "contracttype_ID": "Abonnement licence" } |
verb: GET
resultType: extended
Info | ||
---|---|---|
Bloc de code | ||
| ||
"contract":{ "codecontract": "C0000001-77", "label": "Test contrat", "contractNumber": "CONTRACT_000077", "customer_ID": "C0000001", "generictype_ID_status": "NEW", "contracttype_ID": "Abonnement licence", "description": "description", "startDate": "2020-01-06 00:00:00", "endDate": "", "limitDate": "", "amount": "200", "interventiontype_ID": "", "frequency_ID": "", "dunningDateValue": "", "generictype_ID_dunningDateUnit": "", "contract_ID_parent": "", "closingDate": "", "customerReference": "", "version": "2", "amendmentNumber": "", "deal_ID": "", "dealelement_ID": "", "contractmodel_ID": "" } |
Verbverb: GET
resultType: extendedRelated
en complément du résultat pour resultType: extended on aura le détail pour les tables contracttype, customer, generictype_status, deal et dealelement.
...
Bloc de code | ||
---|---|---|
| ||
"related":[ { "contracttype":{ "codecontracttype": "LICENCE", "label": "Abonnement licence", "prefix": "", "numberLength": "", "counter": "", "generictype_ID_badgeColor": "" }, "customer":{ "codecustomer": "C0000001", "name": "ENTREPRISE DIJON GUICHARD", "baseuser_ID": "", "address1": "33 Avenue du Drapeau", "address2": "", "address3": "", "postalCode": "21000", "city": "DIJON", "phoneNumber": "03 90 11 22 33", "faxNumber": "03 90 11 22 44", "mobilePhoneNumber": "06 90 11 22 33", "email": "contact@guichard.com", "deliveryDays": "1A;1B;2A;2B;3A;3B;4A;4B;5A;5B", "openingDays": "1A;1B;2A;2B;3A;3B;4A;4B;5A;5B", "siretNumber": "", "vatIntra": "", "apeCode": "516K", "comment": "", "blocked": "0", "blockedComment": "", "message": "", "vacationStart": "", "vacationEnd": "", "gpsLongitude": "5.04372", "gpsLatitude": "47.33222", "gpsPrecision": "8", "gpsUpdateDate": "2020-09-03 23:02:12", "gpsManual": "", "accountNumber": "C0000001", "contactName": "", "currency_ID": "", "authorizedCredit": "0", "risk": "1", "language": "", "underSurveillance": "", "workforce": "25", "customer_ID_paying": "", "pricecategory_ID": "", "discountRate": "0", "website": "https <https://www.guichard.com",> "legalStatus": "Société Anonyme avec Directoire", "generictype_ID_brand": "", "generictype_ID_deliveryMode": "", "generictype_ID_paymentMean": "", "generictype_ID_country": "FR", "generictype_ID_province": "", "generictype_ID_customerType": "CTC", "generictype_ID_customerFamily": "", "confirmationEmail": "contact@guichard.com", "confirmationFax": "03 90 11 22 44", "generictype_ID_taxCode": "", "productdepot_ID": "", "generictype_ID_accountingCategory": "", "generictype_ID_customerPotential": "B", "generictype_ID_civility": "", "skype": "contact@guichard.com", "generictype_ID_role": "", "unused": "0", "customergroup_ID": "", "generictype_ID_referencing": "2", "generictype_ID_distribution": "SELF", "generictype_ID_market": "BIG", "area": "", "baseculture_ID": "FR-FR", "baseuser_ID_favoriteTechnician": "TECH-01", "branchoffice_ID": "SXB", "emailFormat": "", "isIndividual": "0", "facebook": "https <https://www.facebook.com/guichard/",> "twitter": "https <https://twitter.com/guichard",> "youtube": "https <https://www.youtube.com/watch?v=6jGbnEwQJ54",> "linkedin": "https <https://www.linkedin.com/company/guichard",> "activity": "" } }] |
verb: PUT
Selon webhookVersion renseigné dans le header :
webhookVersion = 1 -> les blocs json contracttype, customer et site sont obligatoires.
webhookVersion = 2 -> les blocs json contracttype, customer et site ne doivent plus être renseignés, sinon il y aura une erreur en retour. Ils doivent être appelés explicitement par leur webhooks correspondants (contracttype, customer et customeraddress) en amont. Valeur par défaut si non renseigné.
Info |
---|
{
"contracttype La description pour webhookVersion = 1 peut être consultée dans les pages de la version Divalto weavy 5.5 et antérieures. |
Bloc de code | ||
---|---|---|
| ||
{ "contract": { "codecontracttype codecontract": "LICENCE C0000001-77", /* Code globalement unique dutype de contrat (Varchar (255))*/ "label": "Abonnement Testlicence contrat", /* Libellé dutype de contrat (Varchar (255)*/ "internalcodecontracttype description":null "description", /*codecontracttype Descriptionoriginal dude contratweavy s'il y a eu transcodage (Varchar (255)) */ }, (Text (65535)*/ "contract contractNumber":{ "codecontract": "C0000001-77""CONTRACT_000077", /*Code N°globalement deunique du contrat (Varchar ( 25564))*/ "label startDate": "Test contrat 2020-06-01", /*Libellé Datedu decontrat début (Varchar DateTime (255 ))*/ "description endDate":"description", null, /*Description Datedu decontrat fin (Text DateTime (65535 ))*/ "contractNumber limitDate":"CONTRACT_000077" null, /*N° Datede d'échéancecontrat ( VarcharDateTime (64 ))*/ "startDate customer_ID": "2020-06-01 C0000001", /*Date Codede clientdébut ForeignKey (DateTime ()) ) - sw_data_customer.codecustomer)*/ "endDate amount":null "200", /*Date Montantde fin ( DateTimeDouble ())*/ "limitDate dunningDateValue": null, /* Valeur dateDate ded'échéance relance (DateTime Int ())*/ "customer generictype_ID_dunningDateUnit":"C0000001" null, /* Codeclient unité pour la date de relance (ForeignKey () - sw_data_customer.codecustomer generictype.codegenerictype avec datatype = TIME_INTERVAL_UNIT)*/ "amount generictype_ID_status": "200 CONTRACT_STATUS-NEW", /*Montant Statut(Double ())*/ "dunningDateValue": null, /* Valeur date de relance (Int () du contrat. On le positionne à l'intégration dans weavy lors d'une création (CONTRACT_STATUS-NEW par défaut) (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = CONTRACT_STATUS)*/ "generictype contract_ID_dunningDateUnit parent": null, /* Codeunité contratpour parentla (nécessitedate quede relance le parente a été créée avant celui-ci) (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = TIME_INTERVAL_UNIT contract.codecontract)*/ "generictype contracttype_ID_status ": "CONTRACT_STATUS-NEW LICENCE", /*Statut Code typedu de contrat. On(ForeignKeyle ()positionne à l'intégration dans weavy lors d'une création (CONTRACT_STATUS-NEW par défaut) (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = CONTRACT_STATUS - sw_data_contracttype.codecontracttype)*/ "customerReference": null, /* Référence du contrat chez le client (Varchar (255))*/ "contract deal_ID_parent ":null "", /* Codecontrat affaireparent (ForeignKey (nécessite )que le parente a été créée avant celui-ci) - sw_data_deal.codedeal)*/ "dealelement_ID": "", /* Code élément d'affaire (ForeignKey () - sw_data_contract dealelement.codecontract codedealelement)*/ "contracttype contractmodel_ID": "LICENCE ", /* Codetype contratde modèlecontrat (ForeignKey () - sw_data_ contracttypecontractmodel.codecontracttype codecontractmodel)*/ "customerReference internalcodecontract": null, /* Référencecodecontractdu originalcontrat dechez weavyle pourclient transcodage (Varchar (255))*/"deal_ID": "", /* Code affaire (ForeignKey () - sw_data_deal.codedeal)*/}, "contractbilling": [ { "dealelement_ID codecontractbilling": "C0000001-77", /* Codeélément facturationd'affaire (ForeignKey () - sw_data_dealelement.codedealelement)*/ "internalcodecontract": null, /* CodeContract original de weavy s'il y a eu transcodage du contrat. On peut utiliser codecontract si une seule facturation pour un contrat (Varchar (255)) */ "internalCodeCustomer contract_ID":null "C0000001-77", /*CodeCustomer original de weavy s'il y a eu transcodage (Varchar (255)) */ }, "contractbilling": [ { "codecontractbilling": "C0000001-77 Code du contrat. Reprendre le code contrat du bloc json "contract" (ForeignKey () - sw_data_contract.codecontract)*/ "startDate": "2020-06-01", /*Code Datefacturation dedu contrat. On peut utiliser codecontract si une seule facturation pour un contrat (Varchar (255 début de facturation (DateTime ())*/ "contract_ID endDate": "C0000001-77 ", /*Code Datedu contrat. Reprendre le code contrat du bloc json "contract" de fin de facturation (DateTime ())*/ "frequency_ID": "", /* Code fréquence (ForeignKey () - sw_data_contract frequency.codecontract codefrequency)*/ "startDate workforceIncluded": "2020-06-01 1", /*Date de début de facturation (DateTime Main d'œuvre incluse (Valeurs possibles : 0,1) (Bool ()) */ "endDate partsIncluded": "1", /*Date de fin de facturation (DateTime ())*/ "frequency_ID": "", /* Code fréquence (ForeignKey () - sw_data_frequency.codefrequency) Pièces incluses (Valeurs possibles : 0,1) (Bool ()) */ "workforceIncluded travelsIncluded": "1", /*Main Déplacementsd'œuvre inclusincluse (Valeurs possibles : 0,1) (Bool ()) */ "partsIncluded amount": "1 200", /* PiècesMontantincluses (Double (Valeurs ))/possibles : 0,1) (Bool ()) */
}]
} |
verb: LIST
resultType: simple, extended reprendre les définitions du GET
Bloc de code | ||
---|---|---|
| ||
"filters:" { "travelsIncluded codeContract": "1 value",/* filterDéplacements isinclus equal(Valeurs possibles"contractNumber":0 "value",1) (Bool ()) */filter is equal " amountlabel": "200 value"/* Montant (Double ())/ }], , filter is contains "codeCustomer": "value", filter is equal "site contractType":{ "value", filter is equal "codecustomeraddress codeDeal": "C0000001-BDX value",/* filterCode isglobalement equalunique d'une adresse client (Varchar (255))*/
"codeStatus": "value", filter is equal " customer_IDcodeEquipment": "C0000001 value", /*filterCode isclient equalForeignKey () - sw_data_customer.codecustomer)*/ "name }, "orderBy": "ENTREPÔT GUICHARD", /* Nom de l'adresse client (Varchar (255))*//* Nom de l'adresse client (Varchar (255))*/ "address1": "15 Avenue Champollion", /* Adresse 1 (Varchar (255))*/ "address2": null, /* Adresse 2 (Varchar (255))*/ "address3": null, /* Adresse 3 (Varchar (255))*/ "postalCode": "21000 ", /* Code postal (Varchar (16))*/ "city": "Dijon", /* Ville (Varchar (64))*/ "phoneNumber": "03 90 22 75 45", /* N° de téléphone (Varchar (64))*/ "faxNumber": "03 90 22 75 40", /* N° de télécopie (Varchar (64))*/ "mobilePhoneNumber": null, /* N° de portable (Varchar (64))*/ "email": null, /* Email (Varchar (255))*/ "generictype_ID_country": "COUNTRY-FR", /* Code pays (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = COUNTRY)*/ "generictype_ID_province": null, /* Code province (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = PROVINCE)*/ "billingAddress": "1", /* Adresse de facturation (Valeurs possibles : 0,1) (Bool ()) */ "defaultBillingAddress": "0", /* Adresse de facturation par défaut (Valeurs possibles : 0,1) (Bool ()) */ "deliveryAddress": "1", /* Adresse de livraison (Valeurs possibles : 0,1) (Bool ()) */ "defaultDeliveryAddress": "0", /* Adresse de livraison par défaut (Valeurs possibles : 0,1) (Bool ()) */ "areaCode": "", /* Code région (Varchar (64))*/ "contact": "M. James", /* Contact (Varchar (64))*/ "accessCode": "", /* Code d'accès (Varchar (64))*/ "floor": "", /* Etage (Varchar (64))*/ "apartment": "", /* Appartement(Varchar (64))*/ "miscInfos": "", /* Informations diverses (Text (65535))*/ "baseuser_ID_favoriteTechnician": "TECH-01", /* Code technicien préféré (ForeignKey () - sw_data_baseuser.codebaseuser)*/ "branchoffice_ID": "", /* Code de l'agence de rattachement (ForeignKey () - sw_data_branchoffice.codebranchoffice)*/ "bankholidayparamheader_ID": "", /* Code entête paramétrage jours fériés (ForeignKey () - sw_data_bankholidayparamheader.codebankholidayparamheader)*/ "baseculture_ID": "", /* Code culture (ForeignKey () - sw_data_baseculture.codebaseculture)*/ "site": "1", /* Site. Ici toujours mettre la valeur 1 car il s'agit d'une adresse qui est un site. (Valeurs possibles : 0,1) (Bool ())*/ "siteCode": "BDX", /* Code du site (Varchar (255)) "siteName": "Entrepôt Dijon", /* Nom du site (Varchar (255))*/ "erpAddressID": "BDX", /* ID adresse ERP (Varchar (255)) "internalCodeCustomeraddress": null, /* CodeCustomeraddress original de weavy s'il y a eu transcodage (Varchar (255)) */ "internalcustomer_ID": null /* CodeCustomer original de weavy s'il y a eu transcodage (Varchar (255)) */ }, "customer": { "codecustomer": "C0000001", /* Code globalement unique du client (Varchar (255))*/ "name": "ENTREPRISE DIJON GUICHARD", /* Nom du client (Varchar (255))*/ "address1": "33 Avenue du Drapeau", /* Adresse 1 (Varchar (255))*/ "address2": null, /* Adresse 2 (Varchar (255))*/ "address3": null, /* Adresse 3 (Varchar (255))*/ "postalCode": "21000", /* Code postal (Varchar (16))*/ "city": "DIJON", /* Ville (Varchar (64))*/ "phoneNumber": "03 90 11 22 33", /* N° de téléphone (Varchar (64))*/ "faxNumber": "03 90 11 22 44", /* N° de télécopie (Varchar (64))*/ "mobilePhoneNumber": "06 90 11 22 33", /* N° de portable (Varchar (64))*/ "email": "contact@guichard.com", * Email (Varchar (255))*/ "website": "https://www.guichard.com", /* Site internet (Varchar (255))*/ "siretNumber": null, /* N° siret (Varchar (40))*/ "generictype_ID_customerType": "CUSTOMER_TYPE-CTC", /* Code type de tiers. Mettre CUSTOMER_TYPE-CTC pour un client. (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = CUSTOMER_TYPE)*/ "generictype_ID_country": "COUNTRY-FR", /* Code pays (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = COUNTRY)*/ "baseuser_ID": "GRO-OUES", /* Code utilisateur (ForeignKey () - sw_data_baseuser.codebaseuser)*/ "deliveryDays": "1A;1B;2A;2B;3A;3B;4A;4B;5A;5B;", /* Jours de livraison (Varchar (255))*/ "openingDays": "1A;1B;2A;2B;3A;3B;4A;4B;5A;5B;", /* Jours d'ouverture (Varchar (255))*/ "comment": "", /* Commentaires (Text (65535))*/ "blocked": "0", /* Client bloqué (Valeurs possibles : 0,1) (Bool ())*/ "blockedComment": "", /* Commentaires client bloqué (Text (65535))*/ "message": "", /* Message (Text (65535))*/ "vacationStart": "", /* Début des congés (Date ())*/ "vacationEnd": "", /* Fin des congés (Date ())*/ "underSurveillance": "0", /* Client sous surveillance (Valeurs possibles : 0,1) (Bool ())*/ "generictype_ID_customerFamily": "CUSTOMER_FAMILY-GROSARTG", /* Code famille client (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = CUSTOMER_FAMILY)*/ "generictype_ID_paymentMean": "PAYMENT_MEAN-N30", /* Code mode de règlement (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = PAYMENT_MEAN)*/ "generictype_ID_deliveryMode": "DELIVERY_MODE-CHRO", /* Code mode de livraison (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = DELIVERY_MODE)*/ "pricecategory_ID": "GR", /* Code catégorie tarifaire (ForeignKey () - sw_data_pricecategory.codepricecategory)*/ "discountRate": "0.00", /* Taux de remise (Double ())*/ "authorizedCredit": "0", /* Encours autorisé (Valeurs possibles : 0,1) (Bool ())*/ "apeCode": "516K", /* Code APE (Varchar (64))*/ "vatIntra": null, /* TVA intracommunautaire (Varchar (64))*/ "legalStatus": "Société Anonyme avec Directoire", /* Forme juridique (Varchar (64))*/ "workforce": "23", /* Effectif (Int ())*/ "customer_ID_paying": null, /* Code client payeur (ForeignKey () - sw_data_customer.codecustomer)*/ "generictype_ID_taxCode": "TAX_CUSTOMER-0", /* Code TVA client (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = TAX_CUSTOMER)*/ "risk": "1", /* Risque (Varchar (64))*/ "language": "FR", /* Code langue (ForeignKey () - sw_sys_language.codelanguage)*/ "accountNumber": "C0000001", /* N° de compte principal (Varchar (64))*/ "currency_ID": "EUR", /* Code devise ForeignKey () - sw_data_currency.codecurrency)*/ "generictype_ID_province": null, /* Code province (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = PROVINCE)*/ "generictype_ID_civility": "CIVILITY-SA", /* Code civilité (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = CIVILITY)*/ "customergroup_ID": "", /* Code groupe client (ForeignKey () - sw_data_customergroup.codecustomergroup)*/ "confirmationFax": "03 90 11 22 44", /* N° de télécopie de confirmation (Varchar (64))*/ "confirmationEmail": "contact@guichard.com", /* Email de confirmation (Varchar (255))*/ "generictype_ID_accountingCategory": "", /* Code catégorie comptable (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = ACCOUNTING_CATEGORY)*/ "generictype_ID_customerPotential": "CUSTOMER_POTENTIAL-B", /* Code potentiel client (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = CUSTOMER_POTENTIAL)*/ "generictype_ID_role": "", /* Code rôle (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = ROLE)*/ "unused": "0", /* Client inactif (Valeurs possibles : 0,1) (Bool ())*/ "generictype_ID_referencing": "PRODUCT_REFERENCING-NOTSTRICT", /* Code mode de référencement articles (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = PRODUCT_REFERENCING)*/ "generictype_ID_distribution": "DISTRIBUTION-SELF", /* Code type de distribution (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = DISTRIBUTION)*/ "generictype_ID_market": "MARKET-BIG", /* Code type de magasin (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = MARKET)*/ "area": "", /* Superficie (Double ())*/ "baseculture_ID": "FR-FR", /* Code culture (ForeignKey () - sw_data_baseculture.codebaseculture)*/ "baseuser_ID_favoriteTechnician": "TECH-01", /* Code technicien préféré (ForeignKey () - sw_data_baseuser.codebaseuser)*/ "branchoffice_ID": "SXB", /* Code de l'agence de rattachement (ForeignKey () - sw_data_branchoffice.codebranchoffice)*/ "emailFormat": "", /* Format d'email (Varchar (255))*/ "isIndividual": "0", /* Client est un particulier (Valeurs possibles : 0,1) (Bool ())*/ "skype": "contact@guichard.com", /* Skype (Varchar (255))*/ "facebook": "https://www.facebook.com/guichard/", /* Facebook (Varchar (255))*/ "twitter": "https://twitter.com/guichard", /* Twitter (Varchar (255))*/ "youtube": "https://www.youtube.com/watch?v=6jGbnEwQJ54", /* YouTube (Varchar (255))*/ "linkedin": "https://www.linkedin.com/company/guichard", /* LinkedIn(Varchar (255))*/ "activity": "", /* Activité (Text (65535))*/ "internalCodeCustomer": null /* CodeCustomer original de weavy s'il y a eu transcodage (Varchar (255)) */ } } |
verb: LIST
resultType: simple, extended, extendedRelated reprendre les définitions du GET
Info |
---|
"filters:" {
"codeContract": "value", filter is equal
"label": "value", filter is contains
"codeCustomer": "value", filter is equal
"contractType": "value", filter is equal
"codeDeal": "value", filter is equal
"codeStatus": "value", filter is equal
"codeEquipment": "value" filter is equal
} value" |
Valeurs possibles pour le tri "orderBy" :
contractNumberAsc : par n° de contrat ascendant
startDateDesc : par date de début descendant
startDateAsc : par date de début ascendant
verb: DELETE
Une suppression d'un contrat (sw_data_contract) va supprimer en cascade les éléments dans la table liée sw_data_contractbilling.