Loading
Verzekering
InsContractServiceStd:createUpdateContract

InsContractServiceStd:createUpdateContract

Gebruik deze service om een contract te maken of bij te werken voor de opgegeven offerte.

Opmerking
Opmerking Beveiliging op veldniveau moet zijn ingeschakeld voor de velden Name, SourceQuote, SourceOpportunity en Pricebook van de entiteit Contract.

Klasse: InsContractServiceStd​​

Methode: createUpdateContract

De manier waarop het werkt...

  1. Deze service zoekt naar de inputKey in het product-JSON van een offerte, die de productConfigurationDetail, additionalFields , ​QuoteId en AccountId​​ bevat.

  2. De ​productConfigurationDetail bevat de gegevens van offerteregelitems van een opgegeven offerte, die de service gebruikt om contractgroepsplannen te maken.

  3. ​​quoteId is ID van de offerte waarvoor de service het contract maakt. AccountId​​ is de ID van Account die aan het contract is gekoppeld.

  4. Op basis van QuoteId, AccountId en additionalFields maakt de service het contract en vult de velden ervan in. Overeenkomstig dit contract maakt de service een verzekeringscontract en vult de velden ervan in met behulp van additionalFields.

  5. Als er een contractId is opgegeven, werkt de service het contract bij.

  6. Als er geen contractId is opgegeven, maakt de service een nieuwe contractId.

Externe opties

Opties

Beschrijving

contractId

Optioneel

ID van het contract.

pricebook

Optioneel

Naam van de prijslijst.

inputJson

Verplicht.

Invoer-JSON van het te maken contract en contractgroep. Het heeft productConfigurationDetail, additionalFields, AccountId en QuoteId.

Servicewerking

Begrijp hoe verschillende invoer van invloed is op de service-uitvoer.

Invoer

Uitvoer

Nee contractId en nee inputJson De service maakt geen contract.
Nee contractId en inputJson De service maakt een nieuw contract, verzekeringscontract en contractgroepsplannen.
contractId en nee inputJson De service werkt geen contract bij.
contractId en inputJson De service werkt bestaande contract-, verzekeringscontract- en contractgroepsplannen bij.

Invoer-JSON

Dit voorbeeld toont een nieuwe contractinvoer-JSON, waarbij contractJson de invoersleutel is en productConfigurationDetail het product-JSON bevat:

{
    "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"
}

Uitvoer-JSON (wanneer service een contract maakt)

Bij het maken van een nieuw contract wordt de contractId van het nieuwe contract geretourneerd in de uitvoer-JSON. Bij het bijwerken van een bestaand contract wordt geen uitvoer-JSON geretourneerd.

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

Uitvoer-JSON (wanneer de service een fout retourneert)

De service retourneert een lege tekenreeks als er uitzonderingen optreden. Het retourneert ook een lijst van leden met fouten. Elk lijstitem bestaat uit invoerlidgegevens en fouten.

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