3.0 KiB
3.0 KiB
Deployment & Testing — Appraiser Review Letter
Implemented Salesforce Metadata
- Parent object: Appraiser_Case__c (label: Appraiser Case)
- Name field (auto number): Appraiser Case Number (AC-{00000})
- Fields on Appraiser Case:
- Appraiser_Field_Review_Date__c (Date)
- Property_Address__c (Text 255)
- Child object for repeatable deficiencies: Appraiser_Case_Deficiency__c
- Fields on Appraiser Case Deficiency:
- Appraiser_Case__c (Master-Detail to Appraiser_Case__c)
- Deficiency_Number__c (Number)
- Description__c (Long Text Area)
- Resolution__c (Long Text Area)
- Permission set: Appraiser_Case_Access
- Apex Classes:
- AppraiserCasePayloadBuilder: Transforms Salesforce data to CLM merge payload
- AppraiserCasePayloadBuilderTest: Unit tests for payload builder
- CLMDocGenCallout: HTTP integration with DocuSign CLM API
Deployment Steps
- Deploy custom objects & fields
- Deploy Apex classes (included in manifest)
- Configure Named Credentials for CLM API access
- Configure Remote Site Settings for CLM instance
- Map merge fields to object schema
- Configure CLM template and connect API
- Test with sample Appraiser Case records
Suggested CLI Deploy Commands
- Authenticate to your org:
- sf org login web --alias appraiser-dev
- Validate source deploy:
- sf project deploy validate --target-org appraiser-dev --manifest manifest/package.xml
- Deploy metadata:
- sf project deploy start --target-org appraiser-dev --manifest manifest/package.xml
Testing Workflow
- Use sample JSON payloads (see requirements.md)
- Validate conditional logic—test both existence and missing data
- Test table rendering for arrays (DeficiencyList, ReviewerComments)
- Document any failed merges or formatting gaps
CLM Data Mapping Starter
- AppraiserCaseNumber -> Appraiser_Case__c.Name
- AppraiserFieldReviewDate -> Appraiser_Case__c.Appraiser_Field_Review_Date__c
- PropertyAddress -> Appraiser_Case__c.Property_Address__c
- DeficiencyList[] -> Appraiser_Case__c.Deficiencies__r
- deficiencyNumber -> Deficiency_Number__c
- description -> Description__c
- resolution -> Resolution__c
Smoke Test Execution
After deployment, sample test data was created:
- Appraiser Case: AC-00001 (a0wKW000007OIiCYAW)
- 3 related deficiency records verified
Test Payload Query (run in Apex Execute or Query Editor)
SELECT Id, Name, Appraiser_Field_Review_Date__c, Property_Address__c,
(SELECT Id, Deficiency_Number__c, Description__c, Resolution__c
FROM Deficiencies__r ORDER BY Deficiency_Number__c)
FROM Appraiser_Case__c
WHERE Id='a0wKW000007OIiCYAW'
Test Payload Generation (Apex)
String caseId = 'a0wKW000007OIiCYAW';
Map<String, Object> payload = AppraiserCasePayloadBuilder.buildPayload(caseId);
System.debug(JSON.serializePretty(payload));
CLM Doc Gen Integration
See CLM_INTEGRATION.md for complete setup and integration patterns.
Last updated: 2026-02-26 13:26 PM Work in progress: Add test cases and troubleshooting checklist.