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

# clsImageFileExternalViewUpdate

`clsImageFileExternalViewUpdate` is a BOF business object that tracks the external (customer/portal-facing) view update state for an image file, identified by a composite key of `IMAGE_FILE_CODE` and `IMAGE_FILE_KEY`. It uses an `UPDATE_NUM` field for optimistic concurrency.

## Purpose
- Creates, retrieves, updates, and deletes rows in `IMAGE_FILE_EXT_VIEW_UPDATE`.
- Ensures the external view date and update sequence are maintained to support portal-facing display logic.

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

## Public members

| Member | Signature | Purpose |
| --- | --- | --- |
| `ImageFileCode` | `Public Property ImageFileCode() As String` | Image file code (part of composite key). |
| `ImageFileKey` | `Public Property ImageFileKey() As String` | Image file key (part of composite key). |
| `ExternalViewDate` | `Public Property ExternalViewDate() As Date` | Date of the last external view update. |
| `UpdateUser` | `Public ReadOnly Property UpdateUser() As String` | User ID of the last updater. |
| `UpdateDate` | `Public ReadOnly Property UpdateDate As Date` | Date of the last update. |
| `UpdateNum` | `Public ReadOnly Property UpdateNum As Integer` | Concurrency version number; incremented on each update. |
| `CreateUser` | `Public ReadOnly Property CreateUser() As String` | User ID of the creator. |
| `CreateDate` | `Public ReadOnly Property CreateDate As Date` | Record creation date. |
| `NewImageFileExternalViewUpdate` | `Public Shared Function NewImageFileExternalViewUpdate(ByVal inDataportal As IDataPortalInfo, inImageFileCode As String, inImageFileKey As String) As clsImageFileExternalViewUpdate` | Factory: creates a new record for a file code and file key combination. |
| `GetImageFileExternalViewUpdate` | `Public Shared Function GetImageFileExternalViewUpdate(ByVal inDataportal As IDataPortalInfo, inImageFileCode As String, inImageFileKey As String) As clsImageFileExternalViewUpdate` | Factory: retrieves an existing record for a file code and file key combination. |

## Behavioral notes
- Insert: `BeforeInsert` executes [SQL-006](../../sql/SQL-006-saif-business-imaging.md); `AfterInsert` verifies exactly one row affected.
- Retrieve: `BeforeRetrieve` executes [SQL-027](../../sql/SQL-027-saif-business-imaging.md) by `ImageFileKey` and `ImageFileCode`.
- Update: `BeforeUpdate` executes [SQL-035](../../sql/SQL-035-saif-business-imaging.md) with `UPDATE_NUM` in the WHERE clause for optimistic concurrency; `AfterUpdate` verifies exactly one row affected.
- Delete: `BeforeDelete` executes [SQL-041](../../sql/SQL-041-saif-business-imaging.md), but the live `BeforeDelete` does not bind key parameters — this path appears incomplete**.

## Constraints and usage notes
- The delete path is likely non-functional in current code due to missing parameter bindings in `BeforeDelete`**.

## 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 `*` are inferred from code behavior rather than explicit documentation or comments; statements marked with `**` could not be confirmed and should be treated as unknown until verified.

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