1. Objects and Relationship
1. Configuration sObjects
Necessary to configure rules, conditions, and actions for each Salesforce object.
1.1 Decision Rule
This sObject is the core configuration component of the Decision Rule Engine. It acts as a parent table that defines the overall rule and links to one or more Conditions and Actions.
Custom Fields for "Decision Rule" Object
|
Field Label |
API Name |
Type |
Attributes |
|---|---|---|---|
|
Conditional Experssion |
cm_ruleengine__Conditional_Experssion__c |
Textarea (255) |
|
|
Created By ID |
CreatedById |
Lookup (User) |
Required |
|
Created Date |
CreatedDate |
Datetime |
Required |
|
Decision Rule # |
Name |
Text (80) |
Required |
|
Decision Rule Name |
cm_ruleengine__Decision_Rule_Name__c |
Text (120) |
Unique |
|
Deleted |
IsDeleted |
Checkbox |
Required |
|
isActive |
cm_ruleengine__isActive__c |
Checkbox |
Required |
|
Last Activity Date |
LastActivityDate |
Date |
|
|
Last Modified By ID |
LastModifiedById |
Lookup (User) |
Required |
|
Last Modified Date |
LastModifiedDate |
Datetime |
Required |
|
Last Referenced Date |
LastReferencedDate |
Datetime |
|
|
Last Viewed Date |
LastViewedDate |
Datetime |
|
|
Owner ID |
OwnerId |
Lookup (Group, User) |
Required |
|
Record ID |
Id |
Id (18) |
Required |
|
sObject Name |
cm_ruleengine__sObject_Name__c |
Text (80) |
Required |
|
SOQL with Dynamic Filters |
cm_ruleengine__SOQL_Dynamic_Filters__c |
Textarea (20000) |
|
|
System Modstamp |
SystemModstamp |
Datetime |
Required |
|
Total # Of Active Actions |
cm_ruleengine__Total_Of_Active_Actions__c |
Formula (Double) |
|
|
Total # Of Active Rules |
cm_ruleengine__Total_Of_Active_Rules__c |
Formula (Double) |
|
1.2 Decision Rule Condition
The Decision Rule Condition Table is a child of the Decision Rule Table and stores the logical conditions that determine when a rule’s actions should be executed. Each condition acts as a filter or criteria evaluated when the rule is triggered.
Custom Fields for "Decision Rule Condition" Object
|
Field Label |
API Name |
Type |
Help Text |
Attributes |
|---|---|---|---|---|
|
Comparison Value |
cm_ruleengine__Comparison_Value__c |
Text (255) |
|
Required |
|
Conditional Expression |
cm_ruleengine__Conditional_Expression__c |
Textarea (255) |
|
Required |
|
Created By ID |
CreatedById |
Lookup (User) |
|
Required |
|
Created Date |
CreatedDate |
Datetime |
|
Required |
|
Decision Rule |
cm_ruleengine__Decision_Rule__c |
Lookup (Cm_Ruleengine__Decision_Rule__C) |
|
Required |
|
Deleted |
IsDeleted |
Checkbox |
|
Required |
|
Execution Order |
cm_ruleengine__Execution_Order__c |
Number (5, 2) |
|
Required |
|
Expression Operator |
cm_ruleengine__Expression_Operator__c |
Picklist (==; !=; <; <=; >; >=; in; not in; includes; excludes; like; contains) |
|
Required |
|
isActive? |
cm_ruleengine__isActive__c |
Checkbox |
|
Required |
|
Last Activity Date |
LastActivityDate |
Date |
|
|
|
Last Modified By ID |
LastModifiedById |
Lookup (User) |
|
Required |
|
Last Modified Date |
LastModifiedDate |
Datetime |
|
Required |
|
Last Referenced Date |
LastReferencedDate |
Datetime |
|
|
|
Last Viewed Date |
LastViewedDate |
Datetime |
|
|
|
Record ID |
Id |
Id (18) |
|
Required |
|
Rule Condition # |
Name |
Text (80) |
|
Required |
|
ScoreCard Label |
cm_ruleengine__ScoreCard_Label__c |
Textarea (255) |
|
Required |
|
sObject Field Name |
cm_ruleengine__sObject_Field_Name__c |
Text (80) |
sObject Field Name |
Required |
|
sObject Name |
cm_ruleengine__sObject_Name__c |
Text (80) |
sObject API Name |
Required |
|
SOQL Query |
cm_ruleengine__SOQL_Query__c |
Textarea (20000) |
SOQL to query the data for the evaluation |
|
|
SOQL Query SubType |
cm_ruleengine__SOQL_Query_SubType__c |
Picklist (AVG; COUNT; COUNT_DISTINCT; MIN; MAX; SUM) |
|
|
|
SOQL Query Type |
cm_ruleengine__SOQL_Query_Type__c |
Picklist (Aggregate Query; Field Value) |
|
Required |
|
SOQL Validated? |
cm_ruleengine__SOQL_Validated__c |
Checkbox |
|
Required |
|
System Modstamp |
SystemModstamp |
Datetime |
|
Required |
1.3 Decision Rule Action
The Decision Rule Action Table is a child of the Decision Rule Table and stores the automated actions that should be performed when the rule's conditions are met. Each action record defines a specific update or task that will be executed.
In its standard use, this table contains field update actions that apply changes directly to the parent record (the record that triggered the rule execution). For example, it can update a field value, change a status, or flag a record based on the outcome of the condition evaluation.
Custom Fields for "Decision Rule Action" Object
|
Field Label |
API Name |
Type |
Attributes |
|---|---|---|---|
|
Assignment Type |
cm_ruleengine__Assignment_Type__c |
Picklist (Pre-Defined Static Value; Computed Using Execution Order; Computed Field Value) |
Required |
|
Created By ID |
CreatedById |
Lookup (User) |
Required |
|
Created Date |
CreatedDate |
Datetime |
Required |
|
Decision Rule |
cm_ruleengine__Decision_Rule__c |
Lookup (Cm_Ruleengine__Decision_Rule__C) |
Required |
|
Decision Rule Action |
Name |
Text (80) |
Required |
|
Decision Rule Condition |
cm_ruleengine__Decision_Rule_Condition__c |
Lookup (Cm_Ruleengine__Decision_Rule_Condition__C) |
|
|
Deleted |
IsDeleted |
Checkbox |
Required |
|
isActive |
cm_ruleengine__isActive__c |
Checkbox |
Required |
|
Last Activity Date |
LastActivityDate |
Date |
|
|
Last Modified By ID |
LastModifiedById |
Lookup (User) |
Required |
|
Last Modified Date |
LastModifiedDate |
Datetime |
Required |
|
Last Referenced Date |
LastReferencedDate |
Datetime |
|
|
Last Viewed Date |
LastViewedDate |
Datetime |
|
|
Outcome Event |
cm_ruleengine__Outcome_Event__c |
Picklist (All; Failed; Passed; Unknown) |
|
|
Record ID |
Id |
Id (18) |
Required |
|
sObject Field Name |
cm_ruleengine__sObject_Field_Name__c |
Text (80) |
Required |
|
sObject Name |
cm_ruleengine__sObject_Name__c |
Text (80) |
Required |
|
SOQL |
cm_ruleengine__SOQL__c |
Textarea (1000) |
|
|
System Modstamp |
SystemModstamp |
Datetime |
Required |
|
Updating Related Record |
cm_ruleengine__Updating_Related_Record__c |
Checkbox |
Required |
|
Value to Assign |
cm_ruleengine__Value_to_Assign__c |
Text (255) |
Required |
2. Output sObjects
Output sObjects lists the Salesforce objects created or updated due to the execution of a Decision Rule.
2.1 Decision Rule Result Summary
Provides a summary of the outcome after the decision rule is executed, including whether the conditions were met and which actions were performed.
Custom Field "Decision Rule Result Summary"
|
Field Label |
API Name |
Type |
Help Text |
Attributes |
|---|---|---|---|---|
|
Account |
cm_ruleengine__Account__c |
Lookup (Account) |
|
|
|
Alias Match Count |
Alias_Match_Count__c |
Text (255) |
|
|
|
Bank Verification |
Bank_Verification__c |
Text (255) |
|
|
|
Composite Key |
cm_ruleengine__Composite_Key__c |
Text (40) |
"Parent RecordId" + "=::=" + Decision Rule RecordId" |
Required, Unique, External ID |
|
Conditional Experssion |
cm_ruleengine__Conditional_Experssion__c |
Text (255) |
|
|
|
Contact |
cm_ruleengine__Contact__c |
Lookup (Contact) |
|
|
|
Created By ID |
CreatedById |
Lookup (User) |
|
Required |
|
Created Date |
CreatedDate |
Datetime |
|
Required |
|
Credit Score |
Credit_Score__c |
Text (255) |
|
|
|
Decision Rule Name |
cm_ruleengine__Decision_Rule_Name__c |
Text (120) |
|
|
|
Decision Rule RecordId |
cm_ruleengine__Decision_Rule_RecordId__c |
Text (18) |
|
External ID |
|
Deleted |
IsDeleted |
Checkbox |
|
Required |
|
Eviction Count |
Eviction_Count__c |
Text (255) |
|
|
|
Execution Details |
cm_ruleengine__Execution_Details__c |
Textarea (32768) |
|
|
|
KYC Check |
KYC_Check__c |
Text (255) |
|
|
|
Last Activity Date |
LastActivityDate |
Date |
|
|
|
Last Modified By ID |
LastModifiedById |
Lookup (User) |
|
Required |
|
Last Modified Date |
LastModifiedDate |
Datetime |
|
Required |
|
Last Referenced Date |
LastReferencedDate |
Datetime |
|
|
|
Last Viewed Date |
LastViewedDate |
Datetime |
|
|
|
Outcome |
cm_ruleengine__Outcome__c |
Picklist (Passed; Failed; Unknown) |
Final outcome of the Rule Engine |
|
|
Outcome |
cm_ruleengine__OutcomeImage__c |
Formula (Text) |
|
|
|
Owner ID |
OwnerId |
Lookup (Group, User) |
|
Required |
|
Parent RecordId |
cm_ruleengine__Parent_RecordId__c |
Text (18) |
|
Required, External ID |
|
Record ID |
Id |
Id (18) |
|
Required |
|
Rental Application |
Rental_Application__c |
Lookup (Rental_Application__C) |
|
|
|
Result Summary # |
Name |
Text (80) |
|
Required |
|
sObject Name |
cm_ruleengine__sObject_Name__c |
Text (80) |
|
|
|
Status |
cm_ruleengine__Status__c |
Picklist (In-Progress; Completed; Failed) |
|
|
|
Status |
cm_ruleengine__StatusImage__c |
Formula (Text) |
|
|
|
Status Description |
cm_ruleengine__Status_Description__c |
Textarea (32768) |
|
|
|
System Modstamp |
SystemModstamp |
Datetime |
|
Required |
|
Total # Of Active Rules |
cm_ruleengine__Total_Active_Rules__c |
Number (3, 0) |
A total number of active rules associated with the Decision Rule record. |
|
|
Total # Of Executed Rules |
cm_ruleengine__Total_Of_Executed_Rules__c |
Formula (Double) |
Total # Of Executed Rules |
|
|
Total # Of Failed Rules |
cm_ruleengine__Total_Of_Failed_Rules__c |
Formula (Double) |
Total # Of Rule where Outcome = Failed |
|
|
Total # Of Passed Rules |
cm_ruleengine__Total_Of_Passed_Rules__c |
Formula (Double) |
Total # of Number where the OutCome = Pass |
|
2.2 Decision Rule Result Items
The Decision Rule Result Items table captures detailed information about the individual outcomes of each Condition evaluated during the execution of a Decision Rule. While the Result Summary provides a high-level status, the Result Items offer a granular, itemized view of what happened at each step.
Custom Fields "Decision Rule Result Items"
|
Field Label |
API Name |
Type |
Attributes |
|---|---|---|---|
|
Comparison Value |
cm_ruleengine__Comparison_Value__c |
Text (255) |
|
|
Composite Key |
cm_ruleengine__Composite_Key__c |
Text (62) |
Required, Unique, External ID |
|
Computed Field Value |
cm_ruleengine__Computed_Field_Value__c |
Textarea (255) |
|
|
Conditional Expression |
cm_ruleengine__Conditional_Expression__c |
Textarea (255) |
|
|
Created By ID |
CreatedById |
Lookup (User) |
Required |
|
Created Date |
CreatedDate |
Datetime |
Required |
|
Decision Rule Condition RecordId |
cm_ruleengine__Decision_Rule_Condition_RecordId__c |
Text (18) |
External ID |
|
Decision Rule RecordId |
cm_ruleengine__Decision_Rule_RecordId__c |
Text (18) |
External ID |
|
Decision Rule Result Summary |
cm_ruleengine__Decision_Rule_Result_Summary__c |
Lookup (Cm_Ruleengine__Decision_Rule_Result_Summary__C) |
Required |
|
Deleted |
IsDeleted |
Checkbox |
Required |
|
Execution Order |
cm_ruleengine__Execution_Order__c |
Number (5, 2) |
Required |
|
Last Activity Date |
LastActivityDate |
Date |
|
|
Last Modified By ID |
LastModifiedById |
Lookup (User) |
Required |
|
Last Modified Date |
LastModifiedDate |
Datetime |
Required |
|
Last Referenced Date |
LastReferencedDate |
Datetime |
|
|
Last Viewed Date |
LastViewedDate |
Datetime |
|
|
Outcome |
cm_ruleengine__Outcome__c |
Picklist (Passed; Failed; Unknown) |
|
|
Outcome |
cm_ruleengine__OutcomeImage__c |
Formula (Text) |
|
|
Parent RecordId |
cm_ruleengine__Parent_RecordId__c |
Text (18) |
Required, External ID |
|
Record ID |
Id |
Id (18) |
Required |
|
Result Item # |
Name |
Text (80) |
Required |
|
ScoreCard Label |
cm_ruleengine__ScoreCard_Label__c |
Textarea (255) |
Required |
|
sObject Field Name |
cm_ruleengine__sObject_Field_Name__c |
Text (80) |
|
|
sObject Name |
cm_ruleengine__sObject_Name__c |
Text (80) |
|
|
Status |
cm_ruleengine__StatusImage__c |
Formula (Text) |
|
|
Status |
cm_ruleengine__Status__c |
Picklist (In-Progress; Completed; Failed) |
|
|
Status Description |
cm_ruleengine__Status_Description__c |
Textarea (32768) |
|
|
System Modstamp |
SystemModstamp |
Datetime |
Required |