clsPolicyData¶
clsPolicyData is the aggregate "policy header" view object for this library and the principal
factory surface most callers use to retrieve policy information — it aggregates policy number,
name, status, agent/agency, associations, address, MCO, team assignments, and the period
collection into a single object, and is consumed throughout the Claims Legal front end wherever
a policy needs to be displayed or validated for access.
Purpose¶
- Retrieves and aggregates the "policy header" view for a policy via four
GetPolicyDataoverloads (byCriteria, by policy number, by a batch of policy numbers, by policy number +UserAccessLevel) (Retrieve policy header data). - Enforces that a policy number must be positive to be considered valid (BR-VP-001).
- Classifies the requesting user's
UserAccessLevel(via theUserAccessLevelsenum) to drive downstream demo-user data masking. - Exposes an obsolete legacy
AffiliateTypesenum, superseded byAssociations/clsAssociationTypeCode.
Context¶
- Namespace:
SAIF.Business.View.Policy - Assembly/package:
SAIF.Business.View.Policy(embedded library reference)
Public members¶
| Member | Signature | Purpose |
|---|---|---|
GetPolicyData |
Shared Function GetPolicyData(DPI As IDataPortalInfo, Criteria As IBusinessCriteria) As clsPolicyData |
Retrieves a policy header using a caller-supplied Criteria object. |
GetPolicyData |
Shared Function GetPolicyData(DPI As IDataPortalInfo, PolicyNum As Decimal) As clsPolicyData |
Retrieves a policy header by policy number. |
GetPolicyData |
Shared Function GetPolicyData(DPI As IDataPortalInfo, PolicyNum As Decimal, UserAccessLevel As UserAccessLevels) As clsPolicyData |
Retrieves a policy header by policy number, tagging the result with a user access level that drives demo-user masking. |
GetPolicyData |
Shared Function GetPolicyData(DPI As IDataPortalInfo, PolicyNums As IEnumerable(Of Decimal)) As IEnumerable(Of clsPolicyData) |
Retrieves policy headers for a batch of policy numbers. |
PolicyNum |
Property PolicyNum As Decimal |
The policy number identifying this policy header. |
IsValid |
ReadOnly Property IsValid As Boolean |
Indicates whether the object currently satisfies all registered business rules, including PolicyNum > 0. |
SecurePolicyCode |
Property SecurePolicyCode As String |
Flag used by clsPolicySecurity to determine whether the SAIF secure-policy AD-resource gate applies (BR-VP-002). |
UserAccessLevels (Enum) |
Public Enum UserAccessLevels |
Ordered access-level ranking (SAIFEmployee=1000 down to QuickFileUser=300) used to drive data masking for demo users and to gate clsPolicySecurity authorization decisions. |
IsDemoUser |
ReadOnly Property IsDemoUser As Boolean |
True when UserAccessLevel is any of the Demo* levels; gates demo-user data masking in this and related classes. |
AffiliateTypes (Enum) |
<Obsolete> Public Enum AffiliateTypes |
Legacy affiliation classification, superseded by Associations/clsAssociationTypeCode. |
Agency |
ReadOnly Property Agency As clsAgency |
The agency/agent record associated with this policy. |
TeamAssignmentCollection |
ReadOnly Property TeamAssignmentCollection As clsTeamAssignmentCollection |
The team-member assignment roster for this policy. |
Associations |
ReadOnly Property Associations As IEnumerable(Of IPolicyHeaderAssociation) |
Policy-to-policy associations for this policy (parent/child affiliations, groupable associations). |
Inherited public members¶
Members in this section are inherited from clsBusinessBase in saif.framework.core. They are
available on this type through inheritance.
| Member | Signature | Purpose | Origin |
|---|---|---|---|
Rules |
Property Rules As clsRulesManager |
Owns the rule-registration/enforcement engine used to evaluate business rules such as PolicyNum > 0.† |
saif.framework.core — clsBusinessBase |
BeginEdit |
Sub BeginEdit() |
Opens an in-memory editing scope for this object.† | saif.framework.core — clsBusinessBase |
CancelEdit |
Sub CancelEdit() |
Rolls back an in-memory editing scope for this object.† | saif.framework.core — clsBusinessBase |
ApplyEdit |
Sub ApplyEdit() |
Commits an in-memory editing scope for this object.† | saif.framework.core — clsBusinessBase |
Error (via IDataErrorInfo) |
ReadOnly Property Error As String |
Surfaces broken-rule state to data-bound UI controls.† | saif.framework.core — clsBusinessBase |
Item(columnName) (via IDataErrorInfo) |
ReadOnly Property Item(columnName As String) As String |
Surfaces per-column broken-rule messages to data-bound UI controls.† | saif.framework.core — clsBusinessBase |
AllowCache |
Public Property AllowCache() As Boolean |
Controls whether the retrieved object may be cached by the framework's data-access layer.† | saif.framework.core — clsBusinessBase |
Behavioral notes¶
- If no row is found for a requested policy number, an error message is attached to the returned object rather than an exception being thrown.*
AddBusinessRulesregistersValidPolicyNumagainst thePolicyNumproperty; when it fails, the broken-rule message "Error: Invalid policy number." is attached.
Constraints and usage notes¶
AffiliateTypesis marked<Obsolete>; new code should useAssociations/clsAssociationTypeCodeinstead.GetPolicyDatadelegates its actual retrieval to the BOF Framework's data access layer (saif.framework.core); the SQL/procedure call itself ispk73094_policy_data.getpolicy(SQL-VP-008).
Note: Statements marked with
†are derived from dependency library documentation via the Legends CLI. Statements marked with*were inferred from code structure or contextual evidence. Statements marked with**could not be confirmed; treat as unknown until verified.
Sources¶
SAIF.Business.View.Policy\clsPolicyData.vb