---
title: Resolve the rate file sequence number for a period
summary: `clsManualClassBaseCollection.GetRateFileSeqNum(inDataPortalInfo, inPeriodRatingInfo)` (`clsManualClassBaseCollection.vb:188-211`)
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Rating
reference_type: package
operation_id: OP-003
trigger: Rating needs to know which published rate file governs a policy period
---

# Resolve the rate file sequence number for a period

`clsManualClassBaseCollection.GetRateFileSeqNum(inDataPortalInfo, inPeriodRatingInfo)` (`clsManualClassBaseCollection.vb:188-211`)

| Field | Value |
| --- | --- |
| **Operation ID** | OP-003 |
| **Trigger** | Rating needs to know which published rate file governs a policy period |
| **Inputs** | `IDataPortalInfo`, `iPeriodRatingInfo` (supplies anniversary rating date and rate tier code) |
| **Outputs** | Decimal rate file sequence number |
| **Primary components** | ``clsManualClassBaseCollection.GetRateFileSeqNum(inDataPortalInfo, inPeriodRatingInfo)` (`clsManualClassBaseCollection.vb:188-211`)` |
| **Entry point** | `Business\SAIF.Business.Policy.Rating\clsManualClassBaseCollection.vb` |

## Steps

1. Obtain a portal request via `DAL.GetPortalRequest(inDataPortalInfo.PortalID)`.
2. Set `CommandType = StoredProcedure`, `RequestType = NonQuery`, and the statement to
3. Add parameters `inARD` (anniversary rating date), `inRiskTypeCode` (rate tier code, 5 chars) and
4. `DAL.ProcessPortalRequest(PortalRequest)`.
5. Read back `ParmValue("RateFileSeqNum")`, convert with `CDec`, and return it.
6. Use the related data-access statements and tables for this operation: [SQL-021](../sql/SQL-021-saif-business-policy-rating.md), [RATE_FILE_MASTER](../database-tables.md#rate_file_master).

## Process flow

The following diagram visualizes this operation's control flow.

```mermaid
flowchart TD
  Start([Trigger: rating needs to know the governing rate file]) --> S1[Get portal request via DAL.GetPortalRequest]
  S1 --> S2[Set CommandType=StoredProcedure, RequestType=NonQuery]
  S2 --> S3[Add parameters: inARD, inRiskTypeCode, output RateFileSeqNum]
  S3 --> S4[DAL.ProcessPortalRequest]
  S4 --> S5[Read ParmValue RateFileSeqNum, convert with CDec]
  S5 --> Done([Return rate file sequence number])
```

## 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\clsManualClassBaseCollection.vb`
