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

# clsProviderTaxIDCollection

API reference for clsProviderTaxIDCollection.

## Purpose
- Retrieve-only collection wrapper (`clsBusinessCollection(Of clsProviderTaxID)`) that retrieves the set of tax IDs for a provider.
- Nested `Criteria` deviates from the standard pattern: it inherits `clsRetrieveOnlyBusinessCriteria` and calls `Me.SetRetrieveSQL(...)` directly rather than implementing all five `IBusinessCriteria` members — no create/update/delete path exists for tax-ID data through this collection.

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

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| Contains(inTaxID) | `Overloads Function Contains(ByVal inTaxID As String) As Boolean` | Returns whether the active list contains a tax ID record whose `TaxID` matches the supplied value. |
| ContainsDeleted(inProviderTaxID) | `Overloads Function ContainsDeleted(ByVal inProviderTaxID As clsProviderTaxID) As Boolean` | Returns whether the deleted-items list contains a record equal to `inProviderTaxID`. |
| ContainsDeleted(inTaxID) | `Overloads Function ContainsDeleted(ByVal inTaxID As String) As Boolean` | Returns whether the deleted-items list contains a record whose `TaxID` matches the supplied value. |
| GetProviderTaxIDs | `Shared Function GetProviderTaxIDs(ByVal inDataportal As IDataPortalInfo, ByVal inProviderSeqNum As Decimal) As clsProviderTaxIDCollection` | Retrieves the tax IDs for a provider through [SQL-018](../../sql/SQL-018-saif-business-view-provider.md). |

## Behavioral notes
- `BeforeRetrieve` executes as a `DataRequestType.ResultSet` request (not a plain reader), parameterized by `ProviderSeqNum`; `AfterRetrieve` iterates the returned `clsResultSet`'s `DataRow`s, loading each into a new `clsProviderTaxID` via its internal `Load(inDataPortalInfo, Row)`.
- Unlike most collections in this library, this class does not expose typed `Add`/`Remove` overloads or a default indexer beyond the base `clsBusinessCollectionBase` implementation — only the `Contains`/`ContainsDeleted` overloads shown above are added.
- The nested `Criteria` inherits `clsRetrieveOnlyBusinessCriteria` and calls `SetRetrieveSQL(...)` directly with the [SQL-018](../../sql/SQL-018-saif-business-view-provider.md) statement text in its constructor, rather than implementing `IBusinessCriteria`'s five SQL properties individually.

## Constraints and usage notes
- Instances are constructed only through `GetProviderTaxIDs(...)`; the `Protected` constructor (which calls `MyBase.New(True, True, True, True, True, True)` to enable edit/remove/sort/find behaviors) is not part of the public surface.

## Inherited members (from clsBusinessCollectionBase via clsBusinessCollection(Of T))

This collection type inherits the following public surface from clsBusinessCollectionBase (`Legacy\BusinessObjectFramework\clsBusinessCollectionBase.vb`), in addition to the members listed above:

| Member | Signature | Purpose |
| --- | --- | --- |
| Item | `Default Public ReadOnly Property Item(ByVal index As Integer) As clsBusinessBase` | Returns the collection member at the given index (default indexer). |
| Add | `Sub Add(ByVal inChild As clsBusinessBase)` | Adds a child business object to the collection. |
| Remove | `Sub Remove(ByVal inChild As clsBusinessBase)` | Marks a child business object as deleted and removes it from the active list. |
| ItemByGuid | `ReadOnly Property ItemByGuid(ByVal inGuid As String) As clsBusinessBase` | Returns the collection member matching the given internal GUID. |
| MyGuid | `ReadOnly Property MyGuid() As String` | Returns the internal GUID that uniquely identifies this in-memory collection instance. |
| IsDirty | `ReadOnly Property IsDirty() As Boolean` | Indicates whether the collection or any child member has unsaved changes. |
| IsValid | `Overridable ReadOnly Property IsValid() As Boolean` | Indicates whether all child members currently have no broken validation rules. |
| ValidateAllChildren | `Overridable Property ValidateAllChildren() As Boolean` | Controls whether every child is validated or only the current item. |
| Rules | `ReadOnly Property Rules() As clsRulesManager` | Returns the rules manager that tracks broken rules for the collection. |
| ErrorCount / ErrorMessages | `ReadOnly Property ErrorCount() As Integer` / `ReadOnly Property ErrorMessages() As String()` | Returns the count and text of broken error-severity rules across the collection. |
| WarningCount / WarningMessages | `ReadOnly Property WarningCount() As Integer` / `ReadOnly Property WarningMessages() As String()` | Returns the count and text of broken warning-severity rules across the collection. |
| InformationalCount / InformationalMessages | `ReadOnly Property InformationalCount() As Integer` / `ReadOnly Property InformationalMessages() As String()` | Returns the count and text of broken informational-severity rules across the collection. |
| BeginEdit / CancelEdit / ApplyEdit | `Sub BeginEdit()` / `Sub CancelEdit()` / `Sub ApplyEdit()` | Begins, rolls back, or commits an edit transaction across the collection. |
| SaveChild | `Overridable Function SaveChild() As Boolean` | Persists the collection as a child of a parent object. |
| Clone | `Function Clone() As Object` | Returns a deep copy of the collection and its members. |
| IsManaged | `ReadOnly Property IsManaged() As Boolean` | Indicates whether the collection is managed by a parent object's lifecycle. |
| First / FirstItem | `Function First() As clsBusinessBase` / `ReadOnly Property FirstItem() As clsBusinessBase` | Moves to and/or returns the first item in traversal order. |
| Next / NextItem | `Function [Next]() As clsBusinessBase` / `ReadOnly Property NextItem() As clsBusinessBase` | Moves to and/or returns the next item in traversal order. |
| Previous / PreviousItem | `Function Previous() As clsBusinessBase` / `ReadOnly Property PreviousItem() As clsBusinessBase` | Moves to and/or returns the previous item in traversal order. |
| Last / LastItem | `Function Last() As clsBusinessBase` / `ReadOnly Property LastItem() As clsBusinessBase` | Moves to and/or returns the last item in traversal order. |
| CurrentIndex | `ReadOnly Property CurrentIndex() As Integer` | Returns the index of the current traversal item. |
| SetCurrent | `Sub SetCurrent(ByRef inObject As clsBusinessBase)` / `Sub SetCurrent(ByVal inIndex As Integer)` | Sets the current traversal position by item or index. |
| IndexOf | `ReadOnly Property IndexOf(ByVal inObject As clsBusinessBase) As Integer` | Returns the index of the given item within the collection. |
| IsFirst / IsNext / IsLast / IsPrevious / IsCurrent | `ReadOnly Property IsFirst(ByVal inItem As clsBusinessBase) As Boolean` (and analogous overloads) | Indicate an item's position relative to the current traversal state. |
| XMLElementName / XMLItemName | `Property XMLElementName() As String` / `Property XMLItemName() As String` | Get or set the XML element/item names used when serializing the collection. |
| GetReportXML | `Function GetReportXML(ByVal inElementName As String) As String` (and file-stream overload) | Returns an XML fragment representing the collection and its members. |
| ToXML / ToXml | `Function ToXML() As String` / `Function ToXml(ByVal inTagName As String) As String` | Serializes the collection to XML using the default or a supplied tag name. |

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