Skip to content

Maintain a group's significant classes

Manages the pair of effective-dated eligibility tables that decide which manual classes participate in group underwriting eligibility.

Field Value
Operation ID OP-009
Trigger
Inputs —
Outputs Updated significant-class rows plus control-row state and row-count errors when writes fail.
Primary components clsSignificantClassCollection, clsSignificantClass, clsClassSignificance
Entry point Business\SAIF.Business.Policy.Group\clsSignificantClassCollection.vb

Steps

  1. GetSignificantClasses(dpi, groupAssociationCode) retrieves all rows from GROUP_ELIGIBILITY_CLASS for the group.
  2. Each clsSignificantClass exposes its owning ClassSignificance (GROUP_ELIGIBILITY_CTL row), which carries the group-level effective/expiration dates and the include/exclude flag.
  3. IsIncludedClass / IsExcludedClass compare ClassSignificance.Significance to Significances.Included / Significances.Excluded; Significance is derived from IncludeExcludeFlag = "I". (BR-019, BR-020)
  4. Remove(significantClass) / Remove(manualClassNumber) mark items deleted; Where(predicate) returns a filtered clsSignificantClassCollection.
  5. Save writes through the collection criteria to GROUP_ELIGIBILITY_CLASS (insert/update/delete), while clsClassSignificance writes the control row to GROUP_ELIGIBILITY_CTL.
  6. clsClassSignificance binds :UpdateDate, :UpdateUser (30) and :ExpirationDate plus the key values on both update and delete. (BR-021)
  7. Database statements executed or relied on by this operation: SQL-001, SQL-007, SQL-008, SQL-009, SQL-015, SQL-016, SQL-019, SQL-027, SQL-028, SQL-029, SQL-035, SQL-036, SQL-037, SQL-043, SQL-044; affected tables: DUAL, GROUP_ELIGIBILITY_CTL, GROUP_ELIGIBILITY_CLASS.
  8. The singular retrieve/update/delete statements SQL-027, SQL-035, and SQL-043 are truncated at a bare Where.
  9. Inherited BOF save behavior validates the object or collection, executes the configured criteria SQL, and surfaces row-count failures back on the business object before the caller continues.†

Process flow

The following diagram visualizes this operation's control flow.

flowchart TD
    Start([Trigger]) --> Step1[Build criteria / load state]
    Step1 --> Step2[Apply local business logic]
    Step2 --> Decision{Valid and complete?}
    Decision -->|Yes| Step3[Return data or persist rows]
    Decision -->|No| EndErr([Return BOF validation or SQL-state issues])
    Step3 --> EndOk([Operation completes])

Failure and edge-case behavior

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified. Statements marked with † were retrieved from dependency library documentation via the Legends CLI RAG service.

Sources

  • Business\SAIF.Business.Policy.Group\clsSignificantClassCollection.vb