---
title: clsMCOProvider
summary: API reference for clsMCOProvider.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-07-24
library: SAIF.Business.View.Provider
reference_type: package
---

# clsMCOProvider

API reference for clsMCOProvider.

## Purpose
- Plain DTO representing a single managed-care-organization (MCO)–provider association record.
- Not a BOF business object: it has no `IBusinessCriteria`/`Criteria` class and is populated by its owning list type rather than performing its own data access.

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

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| ProviderLocationID | `ReadOnly Property ProviderLocationID() As Decimal` | Returns the provider location this MCO enrollment belongs to. |
| PlanID | `ReadOnly Property PlanID() As String` | Returns the MCO plan identifier for this enrollment. |
| Plan | `ReadOnly Property Plan() As MCOPlanInfo` | Returns the resolved `MCOPlanInfo` object assigned via `SetPlan`. |
| EffectiveDate | `ReadOnly Property EffectiveDate() As Date` | Returns the date this enrollment became effective. |
| ExpirationDate | `ReadOnly Property ExpirationDate() As Date` | Returns the date this enrollment expired (from the internal `clsSmartDate`). |
| HasExpirationDate | `ReadOnly Property HasExpirationDate() As Boolean` | Returns whether an expiration date has been set. |
| IsExpired | `ReadOnly Property IsExpired() As Boolean` | Returns whether an expiration date has been set (identical logic to `HasExpirationDate`). |
| IsActive | `ReadOnly Property IsActive() As Boolean` | Returns whether no expiration date has been set. |
| IsInEffect | `ReadOnly Property IsInEffect(ByVal inDate As Date) As Boolean` | Returns whether `inDate` falls on/after `EffectiveDate` and, if expired, on/before `ExpirationDate`. |
| NewPatientsFlag | `ReadOnly Property NewPatientsFlag() As String` | Returns the raw new-patients flag value (`"Y"`/`"N"`). |
| IsNewPatient | `ReadOnly Property IsNewPatient() As Boolean` | Returns whether `NewPatientsFlag = "Y"`. |
| DirectoryFlag | `ReadOnly Property DirectoryFlag() As String` | Returns the raw directory-listing flag value. |
| IsDirectory | `ReadOnly Property IsDirectory() As Boolean` | Returns whether `DirectoryFlag = "Y"`. |
| AdminFeeRate | `ReadOnly Property AdminFeeRate() As Decimal` | Returns the administrative fee rate for this enrollment. |
| IsAdminFee | `ReadOnly Property IsAdminFee() As Boolean` | Returns whether the admin-fee flag is set. |
| FeeRatePtOtSt | `ReadOnly Property FeeRatePtOtSt() As Decimal` | Returns the PT/OT/ST (physical/occupational/speech therapy) fee rate. |
| FeeRateRad | `ReadOnly Property FeeRateRad() As Decimal` | Returns the radiology fee rate. |
| FeeRateCtc | `ReadOnly Property FeeRateCtc() As Decimal` | Returns the workers'-comp CTC fee rate (`RATE_WC_CTC`). |
| FeeRateAsc | `ReadOnly Property FeeRateAsc() As Decimal` | Returns the ambulatory surgical center (ASC) fee rate. |
| New(Row) | `Sub New(ByVal Row As clsResultSet.DataRow)` | Constructs and populates the instance directly from a `clsResultSet.DataRow` returned by [SQL-002](../../sql/SQL-002-saif-business-view-provider.md). |

## Non-public implementation notes
- `Friend Sub SetPlan(ByVal inPlan As MCOPlanInfo)` is an internal assembly helper used by `clsMCOProviderList` to attach the resolved plan after construction.

## Behavioral notes
- This class does not inherit `clsBusinessBase`; it is a plain `Serializable` DTO with no dirty-tracking, validation rules, or `IBusinessCriteria` support.
- `SetPlan` enforces that the plan resolved by the caller matches this enrollment's own `PlanID` (case/whitespace-insensitive comparison), throwing `ApplicationException` on mismatch.

## Constraints and usage notes
- Instances are constructed only through `New(Row As clsResultSet.DataRow)`, invoked exclusively by `clsMCOProviderList`'s constructor.

## Sources
- `Business\SAIF.Business.View.Provider\clsMCOProvider.vb`
