---
title: clsTaskCollection.Criteria
summary: API reference for clsTaskCollection.Criteria.
status: draft
owner: SAIF
last_reviewed: 2026-07-24
library: SAIF.Business.Tasks
reference_type: package
---

# clsTaskCollection.Criteria

Nested criteria type that assembles the filtered task-collection query at runtime.

## Purpose
- Collect task-search filters and build the final `TASK` `SELECT`.
- Hold the BOF data-portal context used for collection retrieval.

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

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| DataPortalInfo | `Property As IDataPortalInfo` | Get or set the BOF data-portal context used for collection retrieval. |
| TaskCategoryCode | `Property As String` | Get or set the single category-code filter. |
| TaskSource(inTaskSourceCode) | `Sub(ByVal inTaskSourceCode As String)` | Set the single source-code filter from a stored code. |
| TaskSource(inTaskSourceSystem) | `Sub(ByVal inTaskSourceSystem As TaskSourceSystem)` | Set the single source-code filter from a source-system enum value. |
| TaskCategoryList | `ReadOnly Property As ArrayList` | Return the multi-category filter list. |
| TaskSourceList | `ReadOnly Property As ArrayList` | Return the multi-source filter list. |
| TaskPriority | `Property As TaskPriority` | Get or set the exact priority filter through enum mapping. |
| PriorityLevel | `Property As TaskPriority` | Get or set the minimum priority band filter. |
| BeginDate | `Property As Date` | Get or set the inclusive task-date lower bound. |
| ClaimList | `ReadOnly Property As ArrayList` | Return the multi-claim filter list. |
| EndDate | `Property As Date` | Get or set the inclusive task-date upper bound. |
| MailID | `Property As String` | Get or set the assignee filter. |
| PolicyList | `ReadOnly Property As ArrayList` | Return the multi-policy filter list. |
| ShowCompleted | `Property As Boolean` | Get or set whether deleted/completed tasks remain in the result set. |
| TaskText | `Property As String` | Get or set the free-text task filter. |
| TaskActionCodeList | `ReadOnly Property As ArrayList` | Return the multi-action-code filter list. |
| TaskActionCode | `Property As String` | Get or set the single action-code filter. |
| InnerSort | `Property As String` | Get or set the inner sort used when row limiting is enabled. |
| RowNumLimit | `Property As Integer` | Get or set the maximum row count returned by the query. |
| OuterSort | `Property As String` | Get or set the final sort order applied to the returned set. |
| ContextDate | `Property As Date` | Get or set the context-date filter. |
| ContextCode | `Property As String` | Get or set the context-code filter. |
| ContextKey | `Property As Decimal` | Get or set the context-key filter. |
| ContextNumericValue | `Property As Decimal` | Get or set the context-numeric-value filter. |
| ContextTextValue | `Property As String` | Get or set the context-text filter. |
| ContextCategory | `Property As String` | Get or set the context-category filter. |
| WhereClause | `ReadOnly Property As String` | Return the last formatted SQL `WHERE` clause. |
| AddClaimID(inClaimID) | `Sub(ByVal inClaimID As Decimal)` | Add a claim identifier to the multi-claim filter list. |
| AddPolicyNumber(inPolicyNumber) | `Sub(ByVal inPolicyNumber As Decimal)` | Add a policy number to the multi-policy filter list. |
| AddTaskActionCode(inTaskActionCode) | `Sub(ByVal inTaskActionCode As String)` | Add an action code to the multi-action-code filter list. |
| AddTaskCategory(inTaskCategoryCode) | `Sub(ByVal inTaskCategoryCode As String)` | Add a category code to the multi-category filter list. |
| AddTaskSourceSystem(inTaskSource) | `Sub(ByVal inTaskSource As TaskSourceSystem)` | Add a source-system enum value to the multi-source filter list. |
| AddTaskSourceSystem(inTaskSourceCode) | `Sub(ByVal inTaskSourceCode As String)` | Add a source code string to the multi-source filter list. |
| New() | `Sub` | Initialize an empty criteria object. |
| New(inDataPortalInfo) | `Sub(ByVal inDataPortalInfo As IDataPortalInfo)` | Initialize the criteria with a data-portal context. |
| ClearCriteria() | `Sub` | Reset the accumulated filter state. |

## Behavioral notes
- Friend-level `RetrieveSQL` exposes the base `SELECT ... FROM TASK` projection, and friend-level `FormatRequest(ByRef inDataRequest As IDataRequest)` appends the active filters before execution.
- Backs [SQL-008](../../sql/SQL-008-task-filtered-collection-select.md).

## Constraints and usage notes
- `InnerSort`, `RowNumLimit`, and `OuterSort` work together to support Oracle `ROWNUM` limiting.
- `ShowCompleted = False` adds `DELETE_FLAG = 'N'` to the formatted SQL.

## Sources
- `Business\SAIF.Business.Tasks\clsTaskCollection.vb`
