Classify a corporate officer exemption¶
This operation documents how clsCorporateOfficerExemption read-only propertiesfulfills the policy-affiliate behavior described forSAIF.Business.Policy.Affiliate`.
| Field | Value |
|---|---|
| Operation ID | OP-011 |
| Trigger | A caller inspects an exemption to determine whether it is person-specific, active, or associated with a retrievable affiliate person. |
| Inputs | clsCorporateOfficerExemption state |
| Outputs | Boolean flags, optional clsAffiliate, and reason-description text |
| Primary components | clsCorporateOfficerExemption read-only properties |
| Entry point | Business\SAIF.Business.Policy.Affiliate\clsCorporateOfficerExemption.vb |
Steps¶
- Determine whether the exemption targets one officer by checking whether
AffiliateSSNis populated (BR-AFF-013). - Report
IsActiveCorporateOfficerdirectly from the presence of an expiration date (BR-AFF-014). - Only when the exemption names a specific officer, call the affiliate retrieve path to load the related person object (BR-AFF-015, SQL-001).
- Resolve the exemption-reason description through the framework code collection when the description property is read (BR-AFF-016).
Process flow¶
The following diagram shows the independent classification checks and the conditional lazy officer lookup.
flowchart TD
Start(["Caller inspects exemption state"]) --> SingleCheck{"AffiliateSSN populated?"}
SingleCheck -->|Yes| Single["IsSingleCorporateOfficerExemption = True"]
SingleCheck -->|No| Policy["IsSingleCorporateOfficerExemption = False"]
Single --> ExpCheck{"ExpirationDate populated?"}
Policy --> ExpCheck
ExpCheck -->|Yes| Active["IsActiveCorporateOfficer = True"]
ExpCheck -->|No| Inactive["IsActiveCorporateOfficer = False"]
Active --> OfficerCheck{"Single-officer exemption<br>and CorporateOfficer read?"}
Inactive --> OfficerCheck
OfficerCheck -->|Yes| Retrieve["Call affiliate retrieve path<br>SQL-001 to load clsAffiliate"]
OfficerCheck -->|No| Nothing["CorporateOfficer stays Nothing"]
Retrieve --> Desc["Resolve exemption-reason description<br>via framework code collection when read"]
Nothing --> Desc
Desc --> Result(["Return classification state to caller"])
Failure and edge-case behavior¶
- A policy-level exemption leaves
CorporateOfficerasNothing.
Related documentation¶
Sources¶
Business\SAIF.Business.Policy.Affiliate\clsCorporateOfficerExemption.vb