Skip to content

clsProviderServiceList

clsProviderServiceList is a self-loading List(Of clsProviderServiceInfo) that queries PROVIDER_SERVICE joined to PROVIDER_SERVICE_CODE directly through SqlHelper.ResultSetQuery in its constructor. It backs clsProviderLocation.Services and, like the other direct-query types in this library, bypasses the portal/criteria retrieval pattern.

Purpose

  • Loads all service code assignments for a specific provider location, along with each code's description, in one direct SQL execution.
  • Supplies the service-authorization data that downstream legal/claim consumers check when determining whether a location can provide a given service.*

Context

  • Namespace: SAIF.Business.View.Provider
  • Assembly/package: SAIF.Business.View.Provider (embedded/project-compiled); also distributed as the NuGet package SAIF.BOF.Business.View.Provider.

Public members

Member Signature Purpose
.ctor Sub New(dpi As IDataPortalInfo, providerLocationID As Decimal) Queries PROVIDER_SERVICE joined to PROVIDER_SERVICE_CODE bound on :ProviderLocationID (OP-12, SQL-PSVC-01) and populates the list with one clsProviderServiceInfo per row.
Item Default Property Item(index As Integer) As clsProviderServiceInfo (from List(Of clsProviderServiceInfo)) Returns the service assignment at the given position in the loaded list.
Count ReadOnly Property Count As Integer (from List(Of clsProviderServiceInfo)) Number of service assignments loaded for the location.
GetEnumerator Function GetEnumerator() As List(Of clsProviderServiceInfo).Enumerator (from List(Of clsProviderServiceInfo)) Enumerates the loaded service assignments in query result order.

Behavioral notes

  • OP-12: the join to PROVIDER_SERVICE_CODE means each returned row already carries a resolved service description, avoiding a separate lookup query per service code.

Constraints and usage notes

  • Always obtained via clsProviderLocation.Services; direct construction requires a valid IDataPortalInfo and location ID.
  • No create/update/delete surface — load-only list.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • SAIF.Business.View.Provider/clsProviderServices.vb