---
title: Select active prepay frequencies
summary: `PrepayFrequencyExtensions.ActiveAsOf(Target, inAsOfDate)` (`clsPrepayFrequencyCollection.vb:426-431`)
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Rating
reference_type: package
operation_id: OP-013
trigger: Presenting the prepay options available on a given date
---

# Select active prepay frequencies

`PrepayFrequencyExtensions.ActiveAsOf(Target, inAsOfDate)` (`clsPrepayFrequencyCollection.vb:426-431`)

| Field | Value |
| --- | --- |
| **Operation ID** | OP-013 |
| **Trigger** | Presenting the prepay options available on a given date |
| **Inputs** | A sequence of `clsPrepayFrequency`, a date |
| **Outputs** | Filtered sequence |
| **Primary components** | ``PrepayFrequencyExtensions.ActiveAsOf(Target, inAsOfDate)` (`clsPrepayFrequencyCollection.vb:426-431`)` |
| **Entry point** | `Business\SAIF.Business.Policy.Rating\clsPrepayFrequencyCollection.vb` |

## Steps

1. Keep only frequencies for which `DiscountFactor(inAsOfDate)` is not `Nothing` — that is, a
2. Use the related data-access statements and tables for this operation: [SQL-029](../sql/SQL-029-saif-business-policy-rating.md), [SQL-030](../sql/SQL-030-saif-business-policy-rating.md), [SQL-031](../sql/SQL-031-saif-business-policy-rating.md), [PREPAY_DISCOUNT_FACTOR](../database-tables.md#prepay_discount_factor), [PREPAY_FREQUENCY_CODE](../database-tables.md#prepay_frequency_code).

## Process flow

The following diagram visualizes this operation's control flow.

```mermaid
flowchart TD
  Start([Trigger: presenting prepay options for a date]) --> D1{DiscountFactor inAsOfDate is not Nothing?}
  D1 -->|Yes| S1[Keep frequency in result]
  D1 -->|No| S2[Exclude frequency]
  S1 --> Done([Filtered active prepay frequencies])
  S2 --> Done
```

## Failure and edge-case behavior
- Review the linked business rules and SQL documents for the validation or data-access conditions that can block this operation.

## Related documentation
- [Operations and processes](../operations-processes.md)
- [Business rules](../business-rules.md)
- [SQL catalog](../sql/index.md)
- [Database tables](../database-tables.md)

> **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
- `Business\SAIF.Business.Policy.Rating\clsPrepayFrequencyCollection.vb`
