Ti trovi qui:
InsContractServiceStd:createUpdateContract
Utilizzare questo servizio per creare o aggiornare un contratto per il preventivo specificato.
Name, SourceQuote, SourceOpportunity e Pricebook dell'entità Contratto. Classe: InsContractServiceStd
Metodo: createUpdateContract
Funzionamento
-
Questo servizio cerca il valore di
inputKeynel JSON del prodotto di un preventivo, che contiene la mappa diproductConfigurationDetail,additionalFields,QuoteIdeAccountId. -
Il
productConfigurationDetailcontiene i dati delle voci preventivo di un determinato preventivo, che il servizio utilizza per creare piani di gruppi di contratti. -
quoteIdè l'ID del preventivo per cui il servizio crea il contratto.AccountIdè l'ID dell'account collegato al contratto. -
In base a
QuoteId,AccountIde additionalFields, il servizio crea il Contratto e ne compila i campi. In corrispondenza del presente Contratto, il servizio crea un Contratto di assicurazione e ne compila i campi utilizzando i dati diadditionalFields. -
Se viene specificato un
contractId, il servizio aggiorna il contratto. -
Se non viene specificato un
contractId, il servizio crea un nuovocontractId.
Opzioni remote
Opzioni |
Descrizione |
|---|---|
|
Facoltativo ID del contratto. |
|
Facoltativo Nome del listino prezzi. |
|
Obbligatorio. JSON di input del contratto e del gruppo di contratti da creare. Ha |
Comportamento del servizio
Di seguito viene descritto in che modo i diversi input influiscono sugli output del servizio.
Input |
Output |
|---|---|
No contractId e no inputJson
|
Il servizio non crea alcun contratto. |
ncontractId. e inputJson
|
Il servizio crea un nuovo contratto, contratto di assicurazione e piani di gruppo di contratti. |
contractId e no inputJson |
Il servizio non aggiorna alcun contratto. |
contractId e inputJson
|
Il servizio aggiorna i piani di contratto, contratto di assicurazione e gruppo di contratti esistenti. |
Input JSON
Questo esempio mostra un nuovo JSON di input contratto, dove contractJson è la chiave di input e productConfigurationDetail contiene il JSON del prodotto:
{
"productConfigurationDetail": {
"records": [
{
"displaySequence": 0,
"currencySymbol": "$",
"currencyCode": "USD",
"Id": "0QLRO0000009kbn4AA",
"productId": "01tRO000000QnqrYAC",
"Product2Id": "01tRO000000QnqrYAC",
"LineNumber": "00000019",
"CreatedDate": "2022-04-14T08:32:35.000+0000",
"QuoteId": "0Q0RO0000000vtw0AA",
"Price": 1,
"UnitPrice": 1,
"vlocityins6__RecordTypeName__c": "Product",
"vlocityins6__Type__c": "Dental",
"TotalPrice": 1,
"LastModifiedDate": "2022-04-14T08:32:35.000+0000",
"vlocityins6__PricingSource__c": "TotalPremium",
"vlocityins6__ProductName__c": "Dental Standard",
"vlocityins6__TotalAmount__c": 1,
"vlocityins6__ProductChildItemSequence__c": 0,
"needReprice": false,
"vlocityins6__NeedReprice__c": false,
"vlocityins6__RelationshipType__c": "Child",
"quoteLineItemId": "0QLRO0000009kbn4AA",
"productName": "Dental Standard",
"ProductCode": "dentalStandard",
"recordType": "Product",
"lineRecordType": "Product",
"Name": "Dental Standard",
"hasAttributes": true,
"coverageCount": 0,
"hasCoverages": false
},
{
"displaySequence": 0,
"currencySymbol": "$",
"currencyCode": "USD",
"Id": "0QLRO0000009kbs4AA",
"productId": "01tRO000000QnWnYAK",
"Product2Id": "01tRO000000QnWnYAK",
"LineNumber": "00000018",
"CreatedDate": "2022-04-14T08:30:59.000+0000",
"QuoteId": "0Q0RO0000000vtw0AA",
"Price": 7425,
"UnitPrice": 7425,
"vlocityins6__RecordTypeName__c": "Product",
"vlocityins6__Type__c": "Dental",
"TotalPrice": 7425,
"LastModifiedDate": "2022-05-31T02:35:56.000+0000",
"vlocityins6__PricingSource__c": "TotalPremium",
"vlocityins6__ProductName__c": "Dental Premium",
"vlocityins6__TotalAmount__c": 7425,
"vlocityins6__ProductChildItemSequence__c": 0,
"needReprice": false,
"vlocityins6__NeedReprice__c": false,
"vlocityins6__RelationshipType__c": "Child",
"quoteLineItemId": "0QLRO0000009kbs4AA",
"productName": "Dental Premium",
"ProductCode": "dentalPremium",
"recordType": "Product",
"lineRecordType": "Product",
"Name": "Dental Premium",
"hasAttributes": true,
"coverageCount": 0,
"hasCoverages": false
}],
"totalSize": 1
},
"additionalFields" : {
"EnrollmentWaitingPeriod": "30",
"Name": "contractAcc-Group Contract",
"ContractTerm": 12,
"EnrollmentCensusId": "0rfRO00000000WRYAY"
},
"AccountId" : "001RO000003fLhQYAU",
"QuoteId" : "0Q0RO0000001DlH0AU"
}JSON di output (quando il servizio crea un contratto)
Quando si crea un nuovo contratto, il contractId del nuovo contratto viene restituito nel JSON di output. Quando si aggiorna un contratto esistente, non viene restituito alcun JSON di output.
{
"contractId: "0rfRN0000000014YAA",
"errorCode": "INVOKE-200",
"error": "OK"
}JSON di output (quando il servizio restituisce un errore)
Il servizio restituisce una stringa vuota se rileva delle eccezioni. Inoltre, restituisce un elenco di membri con errori. Ogni voce dell'elenco è costituita da dati dei membri di input ed errori.
{
"contractId: "",
"errors" : "List of errors, if any",
"errorCode": "INVOKE-200",
"error": "OK"
}