---
title: clsTeamAssignment
summary: API reference for clsTeamAssignment.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-07-31
library: SAIF.Business.View.Policy
reference_type: package
---

# clsTeamAssignment

`clsTeamAssignment` records that a particular person holds a particular role on a policy — underwriter, loss-control consultant, customer billing representative, and so on. It carries the employee's name, status, and telephone details, and it can resolve the e-mail address on demand from a separate data portal, which is why e-mail is initialised through explicit methods rather than loaded with the row.

## Purpose

- Records one staff role held on a policy, including the person holding it ([Retrieve supporting policy aggregates](../../operations/retrieve-supporting-policy-aggregates.md)).
- Classifies the employee's status, which is how consumers tell active SAIF staff from contractors, inactive employees, and non-SAIF personnel.
- Resolves the assignee's e-mail address on request rather than during retrieval.*
- Masks assignee detail when the collection was retrieved with masking requested ([BR-013](../../business-rules.md#br-013-user-type-maps-to-a-ranked-access-level)).

## Context

- Namespace: `SAIF.Business.View.Policy`
- Assembly/package: `SAIF.BOF.Business.View.Policy`
- Declared in: `Business/SAIF.Business.View.Policy/clsTeamAssignment.vb`

## Public members

| Member | Signature | Purpose |
| --- | --- | --- |
| Convert | `Public Shared Function Convert(ByVal inEmployeetype As EmployeeStatuses) As String` | Converts an employment status to the code stored in the database. |
| Convert | `Public Shared Function Convert(ByVal inEmployeeStatus As String) As EmployeeStatuses` | Converts an employment status to the code stored in the database. |
| MaskData | `Public Property MaskData() As Boolean` | When set, the assignment hides the assignee's identifying detail from the consumer ([BR-013](../../business-rules.md#br-013-user-type-maps-to-a-ranked-access-level)). |
| UserName | `Public ReadOnly Property UserName() As String` | Name of the user recorded against the team assignment.* |
| FullName | `Public ReadOnly Property FullName() As String` | Name of the full recorded against the team assignment.* |
| PhoneNum | `Public ReadOnly Property PhoneNum() As String` | Identifier of the phone attached to the team assignment.* |
| PhoneExt | `Public ReadOnly Property PhoneExt() As String` | The phone extension recorded on the team assignment.* |
| TeamFunction | `Public ReadOnly Property TeamFunction() As clsTeamAssignmentCollection.TeamFunctions` | The role this person holds on the policy. |
| TeamFunctionDescription | `Public ReadOnly Property TeamFunctionDescription() As String` | Readable text describing the team function of the team assignment.* |
| UserIdName | `Public ReadOnly Property UserIdName As String` | The account name of the assignee, which the loss-control access check matches demo users against ([BR-007](../../business-rules.md#br-007-loss-control-consultants-see-only-policies-they-are-assigned-to)). |
| EmployeeStatus | `Public ReadOnly Property EmployeeStatus() As EmployeeStatuses` | The employee status recorded on the team assignment.* |
| IsNonSAIFEmployee | `Public ReadOnly Property IsNonSAIFEmployee As Boolean` | True when the assignee is not a SAIF employee. |
| IsInactiveEmployee | `Public ReadOnly Property IsInactiveEmployee As Boolean` | True when the assignee is no longer active. |
| IsOtherEmployee | `Public ReadOnly Property IsOtherEmployee As Boolean` | True when the assignee's employment status falls outside the recognised classifications. |
| EmailAddress | `Public ReadOnly Property EmailAddress As String` | The email address recorded on the team assignment.* |
| ExternalFullNameExtension | `Public ReadOnly Property ExternalFullNameExtension As String` | The suffix appended to the assignee's name when it is shown to an external audience.* |
| MyCriteria | `Public ReadOnly Property MyCriteria() As clsTeamAssignmentCollection.Criteria` | The criteria this instance was retrieved with. |
| Equals | `Public Overloads Shared Function Equals(ByVal objA As Object, ByVal objB As Object) As Boolean` | Compares two instances for equality without requiring either reference to be non-null. |
| Equals | `Public Overloads Overrides Function Equals(ByVal inObject As Object) As Boolean` | Compares this instance with an arbitrary object. |
| Equals | `Public Overloads Function Equals(ByVal inObject As clsTeamAssignment) As Boolean` | Compares this instance with another of the same type. |
| ToString | `Public Overrides Function ToString() As String` | Renders the instance for logging and debugging.* |
| InitializeEmailAddress | `Public Sub InitializeEmailAddress(ByVal inEmailAddressDPI As IDataPortalInfo)` | Resolves the assignee's e-mail address from a separate data portal, which the retrieval does not do.* |
| InitializeEmailAddressUsingSystemUser | `Public Sub InitializeEmailAddressUsingSystemUser(ByVal inDPI As IDataPortalInfo)` | Resolves the assignee's e-mail address using the system account rather than the caller's identity.* |

## Inherited public members

Members in this section are inherited from `clsBusinessBase` in `SAIF.Framework.Core`. They are available on this type through inheritance.

| Member | Signature | Purpose | Origin |
| --- | --- | --- | --- |
| IsValid | `Public Overridable ReadOnly Property IsValid() As Boolean` | Reports whether the object currently breaks any registered business rule.† | `SAIF.Framework.Core` — `clsBusinessBase` |
| IsSavable | `Public Overridable ReadOnly Property IsSavable() As Boolean` | Reports whether the object may be written back; the read-only types in this library override it to refuse persistence.† | `SAIF.Framework.Core` — `clsBusinessBase` |
| BrokenRulesCollection | `Public ReadOnly Property BrokenRulesCollection() As clsBrokenRulesCollection` | Carries the messages for the rules currently broken, which is what drives `IsValid` to false.† | `SAIF.Framework.Core` — `clsBusinessBase` |

> **Note:** Statements marked with `†` are derived from dependency library
> documentation via the Legends CLI. Statements marked with `*` were inferred
> from code structure or contextual evidence. Statements marked with `**` could
> not be confirmed; treat as unknown until verified.

## Sources

- `Business/SAIF.Business.View.Policy/clsTeamAssignment.vb`
