---
title: "SQL-070: Retrieve policy"
summary: "Retrieve policy"
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Core
reference_type: package
---

# SQL-070: Retrieve policy

Retrieve policy in the context of `clsPolicy`.

## Classification

| Field | Value |
| --- | --- |
| **SQL ID** | SQL-070 |
| **Operation type** | Read |
| **Execution method** | CommandType.Text / DataRequestType.Scalar |
| **Database** | Oracle |
| **Schema** | [unqualified]** |
| **Command type** | Text |
| **Business object** | `clsPolicy` |
| **Criteria property** | `*n/a - application layer*` |
| **Lifecycle method** | `clsPolicy.GetCancelDate (application layer)` |

## Parameters

| Parameter | Direction | Type | Max length | Description |
| --- | --- | --- | --- | --- |
| `:policynumber` | Input | bound from `PolicyNumber` | - | Bound in `clsPolicy.GetCancelDate` (line 754) |

## Tables

| Table | Access | Columns used |
| --- | --- | --- |
| [CANCELLATION](../database-tables.md#cancellation) | SELECT | See sample SQL |

## Sample SQL

```sql
SELECT
  cancel_date
FROM
  cancellation c
WHERE
  c.policy_num = :policynumber
  AND c.cancellation_seq_num = (
      SELECT
        max(cancellation_seq_num)
      FROM
        cancellation c2
      WHERE
        c2.policy_num = :policynumber
    )
```

## Operations and processes
- [Retrieve a policy (optionally masked)](../operations/retrieve-a-policy-optionally-masked.md)

## Business rules
- [BR-020: When masking is requested, policyholder names, contact identity/contact-method](../business-rules.md#br-020-when-masking-is-requested-policyholder-names-contact-identitycontact-method)

> **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.Core\clsPolicy.vb`
