---
title: clsAttendingPhysician
summary: API reference for clsAttendingPhysician.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-07-28
library: SAIF.Business.Claim.Maintenance
reference_type: package
---

# clsAttendingPhysician

`clsAttendingPhysician` represents a provider assignment on a claim, capturing provider location, primary or alternate-care flags, start and termination dates, and provider contact details.

## Purpose
- Track the provider record linked to a claim together with its role on the claim.
- Expose provider lookup, status, and termination information used to maintain attending-physician relationships.

## Context

- Namespace: `SAIF.Business.Claim.Maintenance`
- Assembly/package: `SAIF.Business.Claim.Maintenance`

## Public members

| Member | Signature | Purpose |
| --- | --- | --- |
| `TreatmentDaysRemaining` | `Public ReadOnly Property TreatmentDaysRemaining() As Decimal` | Returns treatment days remaining. |
| `ProviderLocationID` | `Public Property ProviderLocationID() As Decimal` | Gets or sets provider location i d. |
| `ProviderLocation` | `Public ReadOnly Property ProviderLocation() As clsProviderLocation` | Returns provider location. |
| `WorkingForID` | `Public Property WorkingForID() As Decimal` | Gets or sets working for i d. |
| `WorkingFor` | `Public ReadOnly Property WorkingFor() As clsProviderLocation` | Returns working for. |
| `ClaimID` | `Public ReadOnly Property ClaimID() As Decimal` | Returns claim i d. |
| `ClaimData` | `Public Property ClaimData() As clsClaimData` | Gets or sets claim data. |
| `UpdateInfo` | `Public ReadOnly Property UpdateInfo() As clsUpdateInfo` | Returns update info. |
| `IsActive` | `Public ReadOnly Property IsActive() As Boolean` | Returns is active. |
| `StartDate` | `Public Property StartDate() As Date` | Gets or sets start date. |
| `IsEmergencyRoom` | `Public Property IsEmergencyRoom() As Boolean` | Gets or sets is emergency room. |
| `HasMultipleAttendings` | `Public Property HasMultipleAttendings() As Boolean` | Gets or sets has multiple attendings. |
| `IsPrimaryPhysician` | `Public Property IsPrimaryPhysician() As Boolean` | Gets or sets is primary physician. |
| `TerminationDate` | `Public Property TerminationDate() As Date` | Gets or sets termination date. |
| `TerminationReasonCode` | `Public Property TerminationReasonCode() As String` | Gets or sets termination reason code. |
| `AttendingPhysicianID` | `Public ReadOnly Property AttendingPhysicianID() As Decimal` | Returns attending physician i d. |
| `TerminationReason` | `Public ReadOnly Property TerminationReason() As String` | Returns termination reason. |
| `IsAlternateCareProvider` | `Public ReadOnly Property IsAlternateCareProvider() As Boolean` | Returns is alternate care provider. |
| `IsTypicalProvider` | `Public ReadOnly Property IsTypicalProvider() As Boolean` | Returns is typical provider. |
| `Address` | `Public ReadOnly Property Address() As String` | Returns address. |
| `Phone` | `Public ReadOnly Property Phone As String` | Returns phone. |
| `PhoneWithFax` | `Public ReadOnly Property PhoneWithFax() As String` | Returns phone with fax. |
| `BusinessName` | `Public ReadOnly Property BusinessName() As String` | Returns business name. |
| `ProviderTypeDescription` | `Public ReadOnly Property ProviderTypeDescription() As String` | Returns provider type description. |
| `TerminationReasonsList` | `Public ReadOnly Property TerminationReasonsList() As Dictionary(Of String, String)` | Returns termination reasons list. |
| `IsValid` | `Public Overrides ReadOnly Property IsValid() As Boolean` | Returns is valid. |
| `SetTerminationDateNull` | `Public Sub SetTerminationDateNull()` | Executes the `SetTerminationDateNull` operation. |
| `IsTerminationDateNull` | `Public Function IsTerminationDateNull() As Boolean` | Exposes the public member. |
| `Equals` | `Public Overloads Shared Function Equals(ByVal objA As Object, ByVal objB As Object) As Boolean` | Exposes the public member. |
| `Equals` | `Public Overloads Overrides Function Equals(ByVal inObject As Object) As Boolean` | Exposes the public member. |
| `Equals` | `Public Overloads Function Equals(ByVal inObject As clsAttendingPhysician) As Boolean` | Exposes the public member. |
| `GetHashCode` | `Public Overrides Function GetHashCode() As Integer` | Retrieves the `GetHashCode` operation. |
| `ToString` | `Public Overrides Function ToString() As String` | Exposes the public member. |
| `GetAttendingPhysician` | `Public Shared Function GetAttendingPhysician(ByVal inDataportal As IDataPortalInfo, ByVal inAttendingPhysicianID As Decimal) As clsAttendingPhysician` | Retrieves the `GetAttendingPhysician` operation. |
| `ProviderLocationID` | `Public ReadOnly Property ProviderLocationID() As Decimal` | Returns provider location i d. |
| `New` | `Public Sub New(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimData As clsClaimData)` | Executes the `New` operation. |
| `New` | `Public Sub New(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimData As clsClaimData, ByVal providerLocationID As Decimal)` | Executes the `New` operation. |
| `New` | `Public Sub New(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inAttendingPhysicianID As Decimal)` | Executes the `New` operation. |

## Behavioral notes

- This type is documented from its source declaration.
- The type participates in the `clsBusinessApiBase` inheritance path used by `SAIF.Business.Claim.Maintenance`.

## Constraints and usage notes

- Consumers should rely on the public members and BOF lifecycle patterns visible in the source file.

## Inherited members (from clsBusinessApiBase)

This type inherits the following public surface from `clsBusinessApiBase` (SAIF.Framework.Core), in addition to the members listed above:

| Member | Signature | Purpose |
| --- | --- | --- |
| `MyGuid` | `ReadOnly Property MyGuid() As String` | Returns the internal GUID that uniquely identifies this in-memory API object instance. |
| `IsNew` | `ReadOnly Property IsNew() As Boolean` | Indicates whether the adapter instance represents unsaved API state. |
| `IsDeleted` | `ReadOnly Property IsDeleted() As Boolean` | Indicates whether the adapter has been marked for deletion. |
| `IsDirty` | `Overridable ReadOnly Property IsDirty() As Boolean` | Indicates whether this API object has unsaved changes. |
| `SetValueOnChange` | `Function SetValueOnChange(Of T)(ByRef inFieldValue As T, ByVal inSetValue As T, Optional ByVal inMarkDirty As Boolean = True) As Boolean` | Updates a backing field only when the new value differs. |
| `SetValueOnChange (tracked)` | `Function SetValueOnChange(Of T)(propertyName As String, ByRef inFieldValue As T, ByVal inSetValue As T, Optional ByVal inMarkDirty As Boolean = True) As Boolean` | Updates a tracked backing field and records the modification only when the new value differs. |
| `RegisterProperty` | `Sub RegisterProperty(propertyName As String, originalValue As Object, Optional forceReset As Boolean = True)` | Registers a property for modification tracking. |
| `GetTrackedProperty` | `Function GetTrackedProperty(propertyName As String, Optional createIfEmpty As Boolean = True) As ITrackedProperty` | Returns tracked-property metadata for the supplied property name. |
| `TrackedProperties` | `ReadOnly Property TrackedProperties As IEnumerable(Of ITrackedProperty)` | Returns all registered tracked properties. |
| `ModifiedProperties` | `ReadOnly Property ModifiedProperties As IEnumerable(Of ITrackedProperty)` | Returns only tracked properties whose values have changed. |
| `RegisterPropertiesForTracking` | `Overridable Sub RegisterPropertiesForTracking()` | Allows derived types to register properties after create/fill operations. |
| `IsSavable` | `Overridable ReadOnly Property IsSavable() As Boolean` | Indicates whether the object is both dirty and valid. |
| `PreviousLinkItem / NextLinkItem` | `ReadOnly Property PreviousLinkItem() As ILinkItem` / `ReadOnly Property NextLinkItem() As ILinkItem` | Returns the adjacent linked-list items for collection traversal. |
| `SetPreviousLink / SetNextLink` | `Sub SetPreviousLink(ByRef inLinkItem As ILinkItem)` / `Sub SetNextLink(ByRef inLinkItem As ILinkItem)` | Wires the object into a linked list maintained by the BOF framework. |
| `InsertLinkAfter / InsertLinkBefore` | `Sub InsertLinkAfter(ByRef inLinkItem As ILinkItem)` / `Sub InsertLinkBefore(ByRef inLinkItem As ILinkItem)` | Inserts another link item relative to the current object. |
| `RemoveLinks` | `Sub RemoveLinks()` | Detaches the object from its linked-list neighbors. |
| `BeginEdit / CancelEdit / ApplyEdit` | `Sub BeginEdit()` / `Sub CancelEdit()` / `Sub ApplyEdit()` | Starts, rolls back, or commits an editable snapshot transaction. |
| `Delete` | `Sub Delete()` | Marks the object for deletion on the next save. |
| `Clone` | `Function Clone() As Object` | Returns a deep copy of the API object. |
| `IsCopyInProgress` | `ReadOnly Property IsCopyInProgress() As Boolean` | Indicates whether the framework is currently copying the object. |
| `ValidateOnDelete` | `Property ValidateOnDelete() As Boolean` | Controls whether business rules are checked before delete operations. |
| `Rules` | `ReadOnly Property Rules() As clsRulesManager` | Returns the rules manager that tracks broken rules for this object. |
| `IsValid` | `Overridable ReadOnly Property IsValid() As Boolean` | Indicates whether the object currently has no broken validation rules. |
| `ErrorCount / ErrorMessages` | `ReadOnly Property ErrorCount() As Integer` / `ReadOnly Property ErrorMessages() As String()` | Returns the count and text of broken error-severity rules. |
| `WarningCount / WarningMessages` | `ReadOnly Property WarningCount() As Integer` / `ReadOnly Property WarningMessages() As String()` | Returns the count and text of broken warning-severity rules. |
| `InformationalCount / InformationalMessages` | `ReadOnly Property InformationalCount() As Integer` / `ReadOnly Property InformationalMessages() As String()` | Returns the count and text of broken informational-severity rules. |
| `Save` | `Overridable Function Save() As Boolean` | Persists the API object through the BOF data portal when valid. |
| `SaveChild` | `Overridable Function SaveChild() As Boolean` | Persists the object as a child of a parent object or collection. |
| `XMLElementName` | `Property XMLElementName() As String` | Gets or sets the XML element name used when serializing this object. |
| `GetDataset` | `Sub GetDataset(ByRef inDS As DataSet)` | Populates a `DataSet` with the object's field values. |
| `GetDataset (named table)` | `Sub GetDataset(ByRef inDS As DataSet, ByVal inTableName As String)` | Populates a named `DataSet` table with the object's field values. |
| `GetReportXML` | `Function GetReportXML(ByVal inElementName As String) As String` / `Function GetReportXML() As String` | Returns XML representing the object using the supplied or default element name. |
| `ToXml` | `Function ToXml() As String` / `Function ToXml(ByVal inTagName As String) As String` | Serializes the object to XML using the default or a supplied element name. |

`clsBusinessApiBase` declares no explicit constructor in the cached framework context, so derived API objects rely on the parameterless base constructor.

### Protected extensibility members

| Member | Signature | Purpose |
| --- | --- | --- |
| `MarkNew / MarkOld / MarkDeleted / MarkDirty / MarkClean` | `Protected Overridable Sub MarkNew()` / `Protected Overridable Sub MarkOld()` / `Protected Overridable Sub MarkDeleted()` / `Protected Overridable Sub MarkDirty()` / `Protected Friend Overridable Sub MarkClean()` | Manage the object's new/deleted/dirty lifecycle state inside derived adapters. |
| `Parent / ParentObject / SetParent` | `Protected ReadOnly Property Parent() As clsBusinessCollectionApiBase` / `Protected Friend Property ParentObject() As Object` / `Protected Friend Sub SetParent(ByVal inParent As clsBusinessCollectionApiBase)` | Expose and maintain parent-collection or parent-object relationships. |
| `AddChildObject` | `Protected Friend Sub AddChildObject(ByVal inChild As clsBusinessCollectionApiBase)` / `Protected Friend Sub AddChildObject(ByVal inChild As clsBusinessApiBase)` | Registers child API objects or child collections against the current parent object. |
| `IsChild / MarkAsChild` | `Protected Friend ReadOnly Property IsChild() As Boolean` / `Protected Friend Sub MarkAsChild()` | Identifies or marks the object as a child in the BOF object graph. |
| `AllowCopy / BeforeCopy / AfterCopy / Copy / OnCopy` | `Protected Friend Overridable Property AllowCopy() As Boolean` / `Protected Friend Overridable Sub BeforeCopy()` / `Protected Friend Overridable Sub AfterCopy(ByRef inCopiedObject As clsBusinessApiBase)` / `Protected Friend Function Copy() As clsBusinessApiBase` / `Protected Friend Overridable Sub OnCopy()` | Customizes clone/copy behavior for derived adapters. |
| `AddBusinessRules / CheckRules / RemoveMessage` | `Protected Friend Overridable Sub AddBusinessRules()` / `Protected Sub CheckRules()` / `Protected Sub CheckRules(ByVal inRuleIdentifier As String)` / `Protected Friend Sub RemoveMessage(ByVal inMessageID As String)` | Defines, re-evaluates, and removes business-rule messages. |
| `ValidateChildObject / ValidateChildObjects` | `Protected Overridable Function ValidateChildObject(ByVal inChild As clsBusinessApiBase) As Boolean` / `Protected Overridable Function ValidateChildObject(ByVal inChild As clsBusinessCollectionApiBase) As Boolean` / `Protected Overridable Function ValidateChildObjects(ByVal childObjects As IEnumerable(Of clsBusinessApiBase)) As Boolean` / `Protected Overridable Function ValidateChildObjects(ByVal childObjects As IEnumerable(Of clsBusinessCollectionApiBase)) As Boolean` / `Protected Overridable Function ValidateChildObjects(ByVal childObjects As IEnumerable(Of clsBusinessApiBase), ByVal childCollections As IEnumerable(Of clsBusinessCollectionApiBase)) As Boolean` | Validates child objects and child collections before save operations. |
| `SaveChildObject` | `Protected Overridable Function SaveChildObject(ByVal inChild As clsBusinessApiBase) As Boolean` / `Protected Overridable Function SaveChildObject(ByVal inChild As clsBusinessCollectionApiBase) As Boolean` | Persists a child object or child collection from within a derived adapter. |
| `Deserialized / Serialized / Serializing` | `Protected Overridable Sub Deserialized()` / `Protected Overridable Sub Serialized()` / `Protected Overridable Sub Serializing()` | Provides serialization lifecycle hooks for derived adapters. |
| `ReadOnly` | `Protected WriteOnly Property [ReadOnly]() As Boolean` | Propagates read-only state to the underlying undoable base implementation. |
| `IsRecursiveProperty / IsXMLProperty` | `Protected Overridable Function IsRecursiveProperty(ByVal inProp As Reflection.PropertyInfo) As Boolean` / `Protected Overridable Function IsXMLProperty(ByVal inProp As Reflection.PropertyInfo) As Boolean` / `Protected Overridable Function IsXMLProperty(ByVal inPropertyName As String) As Boolean` | Filters which properties participate in recursive or XML serialization. |

## Sources

- `Business\SAIF.Business.Claim.Maintenance\clsAttendingPhysician.vb`
