PolicyAssociation¶
This row object is the compact association shape materialized by PolicyAssociationList.GetPolicyAssociationList from the UNION-based relationship query documented as SQL-034. It carries the policy number, derived association type, and parent/child flag that PolicyAssociationExtensions later uses for filtering, parent discovery, affiliate-type conversion, and manual/non-manual navigation in the current associations model.
Purpose¶
- Represent one association returned by the current association-list retrieval path in
PolicyAssociations.vb. - Preserve the minimum facts needed by extension helpers: the related policy number, the normalized
AssociationTypesvalue, and whether that related policy is treated as the parent row. - Bridge the newer association model back to the obsolete affiliate-type view through
ToAffiliateType, enabling legacy callers to keep working while the associations property replaces affiliated-policy APIs.*
Context¶
- Namespace:
SAIF.Business.View.Policy - Assembly/package:
SAIF.Business.View.Policy(embedded)
Public members¶
| Member | Signature | Purpose |
|---|---|---|
AssociationType |
Public ReadOnly Property AssociationType() As AssociationTypes |
Identifies which normalized relationship family the row belongs to after SQL relationship codes are translated into the library's AssociationTypes enum. |
PolicyNumber |
Public ReadOnly Property PolicyNumber() As Decimal |
Holds the related policy identifier that collection filters and parent/child navigation operate on. |
ToAffiliateType |
Public Function ToAffiliateType() As clsPolicyData.AffiliateTypes |
Converts the association row into the legacy affiliate-type enum expected by obsolete callers, using both the association type and the parent flag to choose the mapped value.* |
IsParent |
Public ReadOnly Property IsParent() As Boolean |
Indicates whether the row represents the parent-side policy in the retrieved relationship set, which drives parent-policy checks in the extension layer. |
Behavioral notes¶
- Instances are created only through a Friend constructor, so external consumers receive populated rows from
PolicyAssociationListrather than assembling them manually. ToAffiliateTypedelegates the mapping decision to extension logic onAssociationType, which means legacy affiliate semantics are derived from the newer association representation.*- The row itself does not enforce BR-VP-014; that exclusion occurs in the list factory that decides which rows to instantiate.
Constraints and usage notes¶
- This type does not expose policy names, status text, or effective dates; callers needing richer header data must use the
Associations/header-association model instead. IsParentis sourced from SQL result flags (Y/N) interpreted byPolicyAssociationList, so its meaning depends on the retrieval query's parent-selection rules.
Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.
Sources¶
SAIF.Business.View.Policy/PolicyAssociations.vb