Du er her:
InsContractServiceStd:createUpdateContract
Bruk denne tjenesten til å opprette eller oppdatere en kontrakt for det gitte tilbudet.
Name, SourceQuote, SourceOpportunity og Pricebook i Kontrakt-enheten. Klasse: InsContractServiceStd
Metode: createUpdateContract
Slik virker det
-
Denne tjenesten søker etter
inputKey-verdien i produkt-JSON-koden for et tilbud, som inneholderproductConfigurationDetail,additionalFields,QuoteIdogAccountId. -
productConfigurationDetailinneholder dataene for tilbudslinjeelementer i gitt tilbud, som tjenesten bruker til å opprette kontraktsgruppeplaner. -
quoteIder ID-en til tilbudet som tjenesten oppretter kontrakten for.AccountIder ID-en til kontoen som er knyttet til kontrakten. -
Basert på
QuoteId,AccountIdog additionalFields oppretter tjenesten Kontrakt og fyller ut feltene. Tjenesten oppretter en Forsikringskontrakt og fyller ut feltene ved bruk avadditionalFields. -
Hvis det angis en
contractId, oppdaterer tjenesten kontrakten. -
Hvis en
contractIdikke er angitt, oppretter tjenesten en nycontractId.
Eksterne alternativer
Alternativer |
Beskrivelse |
|---|---|
|
Valgfritt Id'et for kontrakten. |
|
Valgfritt Navnet på prislisten. |
|
Obligatorisk. Inndata-JSON-koden til kontrakten og kontraktsgruppen som skal opprettes. Den har |
Virkemåte for service
Forstå hvordan forskjellige inndata påvirker tjenesteutdataene.
Inndata |
Utdata |
|---|---|
Nei contractId og nei inputJson
|
Tjenesten oppretter ingen kontrakt. |
Nei contractId og inputJson
|
Tjenesten oppretter en ny Kontrakts-, Forsikringskontrakt- og Kontraktsgruppe-planer. |
contractId og nei inputJson |
Tjenesten oppdaterer ingen kontrakt. |
contractId og inputJson
|
Tjenesten oppdaterer eksisterende Kontrakt-, Forsikringskontrakt- og Kontraktsgruppe-planer. |
Inndata-JSON
Dette eksemplet viser en ny kontraktsinndata-JSON, der contractJson er inndatastøkkelen og productConfigurationDetail inneholder produkt-JSON-koden:
{
"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"
}Utdata-JSON (når tjenesten oppretter en kontrakt)
Når du oppretter en ny kontrakt, returneres contractId for den nye kontrakten i utdata-JSON-koden. Når du oppdaterer en eksisterende kontrakt, returneres det ingen JSON-data.
{
"contractId: "0rfRN0000000014YAA",
"errorCode": "INVOKE-200",
"error": "OK"
}Utdata-JSON (når tjenesten returnerer en feil)
Tjenesten returnerer en tom streng hvis den støter på noen unntak. Den returnerer også en liste over medlemmer med feil. Hvert listeelement består av inndata og feil.
{
"contractId: "",
"errors" : "List of errors, if any",
"errorCode": "INVOKE-200",
"error": "OK"
}