Loading
Försäkring
InsContractServiceStd:createUpdateContract

InsContractServiceStd:createUpdateContract

Använd denna tjänst för att skapa eller uppdatera ett kontrakt för den givna offerten.

Anteckning
Anteckning Fältnivåsäkerhet måste vara aktiverat för fälten Name, SourceQuote, SourceOpportunity och Pricebook i enheten Kontrakt.

Klass: InsContractServiceStd​​

Metod: createUpdateContract

Så här fungerar det

  1. Denna tjänst letar efter inputKey i produkt-JSON för en offert, som innehåller productConfigurationDetail, additionalFields, ​QuoteId och AccountId​​.

  2. ​productConfigurationDetail innehåller data för offertradartiklar för en given Offert, som tjänsten använder för att skapa kontraktgruppplaner.

  3. ​​quoteId är ID för den Offert som tjänsten skapar kontraktet för. AccountId​​ är det konto-ID som är kopplat till kontraktet.

  4. Baserat på QuoteId, AccountId och additionalFields skapar tjänsten kontraktet och fyller i dess fält. I enlighet med detta kontrakt skapar tjänsten ett försäkringskontrakt och fyller i sina fält med additionalFields.

  5. Om en contractId har specificerats uppdaterar tjänsten kontraktet.

  6. Om ingen contractId specificeras skapar tjänsten en ny contractId.

Fjärralternativ

Alternativ

Beskrivning

contractId

Valfri

ID för kontraktet.

pricebook

Valfri

Namn på prisboken.

inputJson

Obligatoriskt.

Indata-JSON för de kontrakt- och kontraktgruppplaner som ska skapas. Den har productConfigurationDetail, additionalFields, AccountId och QuoteId.

Servicebeteende

Förstå hur olika inmatningar påverkar serviceresultaten.

Indata

Utdata

Nej contractId och nej inputJson Tjänsten skapar inget kontrakt.
Inga contractId och inputJson Tjänsten skapar ett nytt kontrakt, försäkringskontrakt och kontraktgruppplaner.
contractId och nej inputJson Tjänsten uppdaterar inget kontrakt.
contractId och inputJson Tjänsten uppdaterar befintliga planer för kontrakt, försäkringskontrakt och kontraktgrupper.

Indata-JSON

Detta exempel visar en ny JSON för kontraktinmatning, där contractJson är indatanyckeln och productConfigurationDetail innehåller produktens JSON:

{
    "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 för utdata (när tjänsten skapar ett kontrakt)

När ett nytt kontrakt skapas returneras contractId för det nya kontraktet i JSON för utdata. Vid uppdatering av ett befintligt kontrakt returneras ingen JSON för utdata.

{
  "contractId: "0rfRN0000000014YAA",
  "errorCode": "INVOKE-200",
  "error": "OK"
}

JSON för utdata (när tjänsten returnerar ett fel)

Tjänsten returnerar en tom sträng om den stöter på några undantag. Den returnerar även en lista över medlemmar med fel. Varje listobjekt består av ingående medlemsdata och fel.

{
  "contractId: "",
  "errors" : "List of errors, if any",
  "errorCode": "INVOKE-200",
  "error": "OK"
}
 
Laddar
Salesforce Help | Article