﻿---
title: clsImageAffiliation
summary: API reference for clsImageAffiliation.
status: draft
owner: <owner>
last_reviewed: 2026-07-24
library: SAIF.Business.Imaging
reference_type: package
---

# clsImageAffiliation

`clsImageAffiliation` is a BOF business object that associates a single image with a business entity or claim context by managing rows in the `IMAGE_AFFILIATION` table. It supports full CRUD operations.

## Purpose
- Creates, retrieves, updates, and deletes `IMAGE_AFFILIATION` rows linking an image to an affiliated entity.
- Generates its own primary key via `IMAGE_AFFILIATION_SEQ`.

## Context
- Namespace: `SAIF.Business.Imaging`
- Assembly/package: `SAIF.BOF.Business.Imaging`

## Public members

| Member | Signature | Purpose |
| --- | --- | --- |
| `CreateDate` | `Public Readonly Property CreateDate() As DATE` | Record creation date. |
| `CreateUser` | `Public Readonly Property CreateUser() As STRING` | User ID of the creator. |
| `AffiliationImageSeqNum` | `Public Property AffiliationImageSeqNum() As DECIMAL` | Foreign key to the affiliated image (the secondary image being linked). |
| `ImageAffiliationSeqNum` | `Public Property ImageAffiliationSeqNum() As DECIMAL` | Primary key of the IMAGE_AFFILIATION row. |
| `ImageSeqNum` | `Public Property ImageSeqNum() As DECIMAL` | Foreign key to the primary IMAGE row. |
| `MyCriteria` | `Public ReadOnly Property MyCriteria() As Criteria` | Returns the nested criteria object used to assemble SQL and portal requests.* |

## Behavioral notes
- Sequence generation: `BeforeCreate` executes [SQL-001](../../sql/SQL-001-saif-business-imaging.md).
- Insert: `BeforeInsert` executes [SQL-004](../../sql/SQL-004-saif-business-imaging.md).
- Retrieve by key: `BeforeRetrieve` executes [SQL-017](../../sql/SQL-017-saif-business-imaging.md).
- Update: `BeforeUpdate` executes [SQL-033](../../sql/SQL-033-saif-business-imaging.md); no live row-count contention check in this pass*.
- Delete: `BeforeDelete` executes [SQL-039](../../sql/SQL-039-saif-business-imaging.md); no live row-count contention check in this pass*.

## Constraints and usage notes
## Inherited public members

Members in this section are inherited from `clsBusinessBase` and are available on this type through the standard BOF base-class contract.

| Member | Signature | Purpose | Origin |
| --- | --- | --- | --- |
| `MyGuid` | `Public ReadOnly Property MyGuid() As String` | Returns the unique GUID for this object. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `IsNew` | `Public ReadOnly Property IsNew() As Boolean` | Returns True if this is a new object, False if it is a pre-existing object. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `IsDeleted` | `Public ReadOnly Property IsDeleted() As Boolean` | Returns True if this object is marked for deletion. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `IsDirty` | `Public Overridable ReadOnly Property IsDirty() As Boolean` | Returns True if this object's data has been changed. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `SetValueOnChange` | `Public Function SetValueOnChange(Of T)(ByRef inFieldValue As T, ByVal inSetValue As T, Optional ByVal inMarkDirty As Boolean = True) As Boolean` | Takes two values and compares them using the Equals function. If the values are different, it sets the inFieldValue = inSetValue, calls MarkDirty(), and returns True. Otherwise returns false. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `IsSavable` | `Public Overridable ReadOnly Property IsSavable() As Boolean` | Returns True if this object is both dirty and valid. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `PreviousLinkItem` | `Public ReadOnly Property PreviousLinkItem() As ILinkItem Implements ILinkItem.PreviousLinkItem` | Gets the Previous Item linked to this one. If this is the first item or not a member of a linked list, the value is nothing. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `NextLinkItem` | `Public ReadOnly Property NextLinkItem() As ILinkItem Implements ILinkItem.NextLinkItem` | Gets the Next Item linked to this one. If this item is the last or not a member of a linked list, the value is nothing. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `SetPreviousLink` | `Public Sub SetPreviousLink(ByRef inLinkItem As ILinkItem) Implements ILinkItem.SetPreviousLink` | Sets the Previous Item in Linked List | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `SetNextLink` | `Public Sub SetNextLink(ByRef inLinkItem As ILinkItem) Implements ILinkItem.SetNextLink` | Sets the Next Item in a Linked List. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `InsertLinkAfter` | `Public Sub InsertLinkAfter(ByRef inLinkItem As ILinkItem) Implements ILinkItem.InsertLinkAfter` | Inserts the item being passed in into the linked list after the current item. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `InsertLinkBefore` | `Public Sub InsertLinkBefore(ByRef inLinkItem As ILinkItem) Implements ILinkItem.InsertLinkBefore` | Inserts the item being passed in into the linked list prior to the current item. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `RemoveLinks` | `Public Sub RemoveLinks() Implements ILinkItem.RemoveLinks` | Removes this item from a linked list. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `BeginEdit` | `Public Sub BeginEdit()` | Starts a nested edit on the object. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `CancelEdit` | `Public Sub CancelEdit()` | Cancels the current edit process, restoring the object's state to its previous values. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `ApplyEdit` | `Public Sub ApplyEdit()` | Commits the current edit process. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `Delete` | `Public Sub Delete()` | Marks the object for deletion. The object will be deleted as part of the next save operation. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `Clone` | `Public Function Clone() As Object Implements ICloneable.Clone` | Returns a new object containing the exact data of the original object. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `ValidateOnDelete` | `Public Property ValidateOnDelete() As Boolean` | Gets or Sets whether Business Rules are Validated on a Deleted Object. By Default this property is set to False. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `Rules` | `Public ReadOnly Property Rules() As clsRulesManager` | Provides Access to the Objects Rules Manager | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `IsValid` | `Public Overridable ReadOnly Property IsValid() As Boolean` | The IsValid routine Checks all Rules and then returns true if the error count is zero. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `ErrorCount` | `Public ReadOnly Property ErrorCount() As Integer` | Returns the number of errors generated by the Object. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `ErrorMessages` | `Public ReadOnly Property ErrorMessages() As String()` | Returns a string array of Error Messages generated by the Object. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `WarningCount` | `Public ReadOnly Property WarningCount() As Integer` | Returns the Number of Warnings generated by the object. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `WarningMessages` | `Public ReadOnly Property WarningMessages() As String()` | Returns a string array of Warning Messages generated by the Object. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `InformationalCount` | `Public ReadOnly Property InformationalCount() As Integer` | Returns the number of errors generated by the Object. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `InformationalMessages` | `Public ReadOnly Property InformationalMessages() As String()` | Returns a string array of Warning Messages generated by the Object. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `Save` | `Public Overridable Function Save() As Boolean` | Saves the object to the database. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `SaveChild` | `Public Overridable Function SaveChild() As Boolean` | Saves the child object to the database. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `XMLElementName` | `Public Property XMLElementName() As String` | Returns the Value used as the TagName when generating XML. | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `GetDataset` | `Public Sub GetDataset(ByRef inDS As DataSet)` | Retrieves dataset for the requested criteria or key values.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `GetDataset` | `Public Sub GetDataset(ByRef inDS As DataSet, ByVal inTableName As String)` | Retrieves dataset for the requested criteria or key values.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `GetReportXML` | `Public Function GetReportXML(ByVal inElementName As String) As String` | Retrieves report xml for the requested criteria or key values.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `GetReportXML` | `Public Function GetReportXML() As String` | Retrieves report xml for the requested criteria or key values.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `ToXml` | `Public Function ToXml() As String` | Returns to xml.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `ToXml` | `Public Function ToXml(ByVal inTagName As String) As String` | Returns to xml.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |

> **Note:** Statements marked with `*` were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

## Sources
- `Business\SAIF.Business.Imaging\clsImageAffiliation.vb`
- `Legacy\BusinessObjectFramework\clsBusinessBase.vb`
