---
title: clsManualClassAssociation
summary: API reference for clsManualClassAssociation.
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Rating
reference_type: package
---
# clsManualClassAssociation
Represents a typed association between manual classes. The class is retrieved through BOF criteria objects and exposes the loaded row to rating callers.
## Purpose
- Represents a typed association between manual classes.
- The class is retrieved through BOF criteria objects and exposes the loaded row to rating callers.
## Context
- Namespace: `SAIF.Business.Policy.Rating`
- Assembly/package: `SAIF.Business.Policy.Rating`
## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| Member | `Public Const RETRIEVE_SQL As String = "Select " & "MANUAL_CLASS_ASSOCIATION.MANUAL_CLS_ASSOCIATION_SEQ_NUM as ManualClsAssociationSeqNum, " & "MANUAL_CLASS_ASSOCIATION.MANUAL_CLASS_NUM as ManualClassNum, " & "MANUAL_CLASS_ASSOCIATION.ASSOCIATED_CLASS_NUM as AssociatedClassNum, " & "MANUAL_CLASS_ASSOCIATION.MANUAL_CLASS_ASSOC_CODE as ManualClassAssocCode, " & "MANUAL_CLASS_ASSOCIATION.CREATE_DATE as CreateDate, " & "MANUAL_CLASS_ASSOCIATION.CREATE_USER as CreateUser, " & "MANUAL_CLASS_ASSOCIATION.UPDATE_DATE as UpdateDate, " & "MANUAL_CLASS_ASSOCIATION.UPDATE_USER as UpdateUser" & " From " & "MANUAL_CLASS_ASSOCIATION"` | Base SELECT statement that pulls a manual class association row and its audit columns from MANUAL_CLASS_ASSOCIATION. |
| CreateDate | `Public ReadOnly Property CreateDate() As Date` | Data-source timestamp when the association row was inserted. |
| CreateUser | `Public ReadOnly Property CreateUser() As String` | User ID that inserted the association row. |
| UpdateDate | `Public ReadOnly Property UpdateDate() As Date` | Most recent update timestamp; empty when no update has been recorded. |
| UpdateUser | `Public ReadOnly Property UpdateUser() As String` | User ID of the most recent update; empty when no update has been recorded. |
| ManualClsAssociationSeqNum | `Public ReadOnly Property ManualClsAssociationSeqNum() As Decimal` | Sequence-generated primary key for the association row. |
| ManualClassNum | `Public Property ManualClassNum() As String` | Manual class number being associated to another class. |
| AssociatedClassNum | `Public Property AssociatedClassNum() As String` | Related class number linked to ManualClassNum by the association code. |
| ManualClassAssocCode | `Public Property ManualClassAssocCode() As String` | Association type code that classifies the relationship between the two manual classes. |
| SetUpdateDateNull | `Public Sub SetUpdateDateNull()` | Clears the stored update timestamp before save. |
| SetUpdateUserNull | `Public Sub SetUpdateUserNull()` | Clears the stored update user before save. |
| IsUpdateDateNull | `Public Function IsUpdateDateNull() As Boolean` | Indicates whether the row has no stored update timestamp. |
| IsUpdateUserNull | `Public Function IsUpdateUserNull() As Boolean` | Indicates whether the row has no stored update user. |
| Equals | `Public Overloads Shared Function Equals(ByVal objA As Object, ByVal objB As Object) As Boolean` | Returns true only when both arguments are manual class associations with the same sequence number. |
| Equals | `Public Overloads Overrides Function Equals(ByVal inObject As Object) As Boolean` | Returns true only when the supplied object is a manual class association with the same sequence number. |
| Equals | `Public Overloads Function Equals(ByVal inObject As clsManualClassAssociation) As Boolean` | Compares associations by ManualClsAssociationSeqNum. |
| GetHashCode | `Public Overrides Function GetHashCode() As Integer` | Hashes `ManualClsAssociationSeqNum`, the value this type uses as its identity key in keyed collections. |
| NewManualClassAssociation | `Public Shared Function NewManualClassAssociation(ByVal inDataportal As IDataPortalInfo) As clsManualClassAssociation` | Creates a new association object and assigns the next MANUAL_CLS_ASSOCIATION_SEQ value. |
| GetManualClassAssociation | `Public Shared Function GetManualClassAssociation(ByVal inDataportal As IDataPortalInfo, ByVal inManualClsAssociationSeqNum As Decimal) As clsManualClassAssociation` | Retrieves the a typed association between manual classes identified by the key values or effective-date criteria supplied by the caller. |
| GetManualClassAssociation | `Public Shared Function GetManualClassAssociation(ByVal inDataportal As IDataPortalInfo, ByVal inManualClassNum As String, ByVal inAssocJobClassNum As String, ByVal inManualAssociationTypeCode As String) As clsManualClassAssociation` | Retrieves the a typed association between manual classes identified by the key values or effective-date criteria supplied by the caller. |
| ManualClsAssociationSeqNum | `Public Property ManualClsAssociationSeqNum() As Decimal` | Criteria sequence number used to retrieve a specific association row. |
| ManualClassNum | `Public Property ManualClassNum() As String` | Criteria manual class number used when retrieving an association by class pair. |
| AssocJobClassNum | `Public Property AssocJobClassNum() As String` | Criteria associated class number used with ManualClassNum and ManualAssociationTypeCode to locate a specific row. |
| ManualAssociationTypeCode | `Public Property ManualAssociationTypeCode() As String` | Criteria association-type code used with the class numbers to locate a specific row. |
| New | `Public Sub New(ByVal inDataPortalInfo As IDataPortalInfo)` | Creates an empty BOF object shell that shared factory methods or retrieval logic can populate with a loaded row. |
| New | `Public Sub New(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inManualClsAssociationSeqNum As Decimal)` | Creates a criteria-backed instance seeded with `inManualClsAssociationSeqNum` so the next retrieval runs in the caller's requested context. |
| New | `Public Sub New(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inManualClassNum As String, ByVal inAssocJobClassNum As String, ByVal inManualAssociationTypeCode As String)` | Creates a criteria-backed instance seeded with `inManualClassNum`, `inAssocJobClassNum`, `inManualAssociationTypeCode` so the next retrieval runs in the caller's requested context. |
## Inherited public members
| Member | Signature | Purpose | Origin |
| --- | --- | --- | --- |
| Rules | `Property Rules As clsRulesManager` | Owns the BOF rules manager used to evaluate registered validation logic.† | `SAIF.Framework.Core` — `clsBusinessBase` |
| BeginEdit | `Sub BeginEdit()` | Opens an n-level edit session for the business object.† | `SAIF.Framework.Core` — `clsBusinessBase` |
| CancelEdit | `Sub CancelEdit()` | Rolls back the active edit scope.† | `SAIF.Framework.Core` — `clsBusinessBase` |
| ApplyEdit | `Sub ApplyEdit()` | Commits the active edit scope.† | `SAIF.Framework.Core` — `clsBusinessBase` |
| Error | `ReadOnly Property Error As String` | Surfaces aggregate broken-rule text through `IDataErrorInfo`.† | `SAIF.Framework.Core` — `clsBusinessBase` |
## Behavioral notes
- The object layers convenience logic over the loaded row, such as equality keys, related-row resolution, or validation helpers.
## Constraints and usage notes
- Retrieve the row with the same keys and effective context that the caller will use later, because helper members derive additional data from that loaded state.
> **Note:** Statements marked with `†` are derived from dependency library
> documentation via the Legends CLI. They describe inherited behavior from the
> indicated origin library and should be verified if the dependency version changes.
## Sources
- `Business\SAIF.Business.Policy.Rating\clsManualClassAssociation.vb`
