---
title: "coveragelimits_pkg stored procedure documentation"
summary: "Analysis of the Oracle package called by SAIF.Business.View.Policy, including business rules and operations."
status: draft
owner: "SAIF Doc Gen"
last_reviewed: "2026-07-31"
source_schema: "WCIS_DBA"
source_name: "coveragelimits_pkg"
source_type: "PACKAGE"
oracle_status: "found"
library: SAIF.Business.View.Policy
reference_type: package
---

# coveragelimits_pkg

## Overview

| Field | Value |
| --- | --- |
| **Schema** | `WCIS_DBA` |
| **Type** | Package |
| **Database** | Oracle (TNS alias not declared in this library's source)** |
| **Calling libraries** | `SAIF.Business.View.Policy` |
| **Calling classes** | `clsPolicyPeriod` |

## Purpose

Resolves statutory employer-liability coverage limits for a policy period through a specific-to-default fallback hierarchy.

## Procedures / Methods

### getSpecificLimitsForPolicyNum

| Field | Value |
| --- | --- |
| **Returns** | REF CURSOR — statutory code and up to three limit amounts |
| **Called by** | `clsPolicyPeriod.RetrieveEmployerLiabLimits` |
| **SQL document** | [SQL-023](../sql/SQL-023-employer-liability-limits.md) |

**Description:** Returns the employer-liability coverage limits in force for a policy period, falling back from policy-specific current limits through historical and legacy defaults.

#### Parameters

| Parameter | Direction | Type | Default | Description |
| --- | --- | --- | --- | --- |
| `aPolicyNum` | IN | `NUMBER` | — | Policy number being read. |
| `PeriodEffDate` | IN | `DATE` | — | Policy period effective date whose limits are requested. |
| `recordset` | IN OUT | `limit_cursor` | — | Result set returned to the caller. |

## Business Rules

Rules extracted from this package's logic:

| Rule ID | Rule | Condition | Action |
| --- | --- | --- | --- |
| [PROC-RULE-017](../business-rules.md#stored-procedure-business-rules) | Employer-liability limits fall back through a fixed hierarchy from policy-specific current limits to legacy non-WCIS defaults | Five `UNION`-ed branches gated by date-range and `NOT EXISTS` checks against `policy_period_emp_liab` | Returns the first matching branch's rows; multiple branches may fire, in which case all matching rows are returned |

> These rules are also listed under `## Stored procedure business rules` in [business-rules.md](../business-rules.md).

## Operations

Operations implemented in this package:

| Operation | Description | Trigger |
| --- | --- | --- |
| Retrieve employer-liability limits | Returns statutory employer-liability coverage limits for a policy period with a specific-to-default fallback | `clsPolicyPeriod.RetrieveEmployerLiabLimits` |

> These operations are also listed under `## Stored procedure operations` in [operations-processes.md](../operations-processes.md).

## Source Code

> **Note:** The full `WCIS_DBA.coveragelimits_pkg` package body (14,930 characters of PL/SQL) is too large to reproduce in this document. Only the declarations of the methods this library actually calls are shown below. The complete package body is available from the Oracle data dictionary (`DBA_SOURCE`/`ALL_SOURCE`) for `WCIS_DBA.coveragelimits_pkg`.

<details>
<summary>PL/SQL declarations of the called methods</summary>

```sql
-- Retrieved from the Oracle data dictionary for WCIS_DBA.coveragelimits_pkg

PROCEDURE getSpecificLimitsForPolicyNum(aPolicyNum IN NUMBER,PeriodEffDate IN DATE,
  recordset IN OUT limit_cursor)
```

</details>

> **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.

## Related documentation

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

## Sources

- `Business/SAIF.Business.View.Policy/clsPolicyPeriod.vb`
- Oracle data dictionary source for `WCIS_DBA.coveragelimits_pkg`
