---
title: "sp72652_get_saifplus stored procedure documentation"
summary: Analysis of Oracle package/procedure including business rules and operations.
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Premium
reference_type: package
source_schema: WCIS_DBA
source_name: sp72652_get_saifplus
source_type: Procedure (thin wrapper)
oracle_status: found
---

# sp72652_get_saifplus

## Overview

| Field | Value |
| --- | --- |
| **Schema** | WCIS_DBA |
| **Type** | Procedure (thin wrapper) |
| **Database** | Oracle |
| **Calling libraries** | `SAIF.Business.Policy.Premium` |
| **Calling classes** | clsPremiumSummaryAdjustment (GetSAIFPlusInfo) |

## Purpose

Retrieve the SAIF Plus discount's descriptive text, rate, and maximum/combination-maximum values for a policy period.

> **Important:** This wrapper delegates to `pk73300_saifplus.get_saifplus(...)`. That one-level-deeper package was outside the four pre-fetched Oracle objects for this run, so the delegated inner logic is not fully documented here.

## Procedures / Methods

### sp72652_get_saifplus

| Field | Value |
| --- | --- |
| **Returns** | No return value (procedure); populates six `OUT` parameters described below. |
| **Called by** | clsPremiumSummaryAdjustment (GetSAIFPlusInfo) |

**Description:** Retrieve the SAIF Plus discount's descriptive text, rate, and maximum/combination-maximum values for a policy period.

#### Parameters

| Parameter | Direction | Type | Default | Description |
| --- | --- | --- | --- | --- |
| `in_policy_num` | IN | NUMBER | — | Policy number for which SAIF Plus discount information is retrieved. |
| `in_policy_period_eff_date` | IN | DATE | — | Effective date of the policy period passed through to `pk73300_saifplus.get_saifplus`. |
| `out_pp_eff_date` | OUT | DATE | — | Policy period effective date returned by the delegated `pk73300_saifplus.get_saifplus` call. |
| `out_saifplus_eff_date` | OUT | DATE | — | Effective date of the applicable SAIF Plus discount. |
| `out_saifplus_desc` | OUT | VARCHAR2 | — | Descriptive text for the SAIF Plus discount, displayed in the total premium area. |
| `out_saifplus_rate` | OUT | NUMBER | — | SAIF Plus discount rate (unrounded, per the 2009 maintenance note). |
| `out_saifplus_max` | OUT | NUMBER | — | Maximum SAIF Plus discount amount. |
| `out_saifplus_combo_max` | OUT | NUMBER | — | Combination maximum SAIF Plus discount amount. |

## Business Rules

| Rule ID | Rule | Condition | Action |
| --- | --- | --- | --- |
| PROC-BR-009 | SAIF Plus information retrieval is delegated entirely to pk73300_saifplus.get_saifplus (this procedure is a pass-through with no independent logic beyond exception wrapping). | Always (unconditional delegation) | Calls pk73300_saifplus.get_saifplus(in_policy_num, in_policy_period_eff_date, out_pp_eff_date, out_saifplus_eff_date, out_saifplus_desc, out_saifplus_rate, out_saifplus_max, out_saifplus_combo_max); on any exception, raises ORA-20002 with policy number, period effective date and SQLERRM context via RAISE_APPLICATION_ERROR |

## Operations

| Operation | Description | Trigger |
| --- | --- | --- |
| Get SAIF Plus information | Retrieve the SAIF Plus discount's descriptive text, rate, and maximum/combination-maximum values for a policy period. | clsPremiumSummaryAdjustment.GetSAIFPlusInfo (OP-007) — building a SAIFPLUS adjustment's policy-document description (OP-006) |

## Source Code

<details>
<summary>PL/SQL source</summary>

```sql
PROCEDURE sp72652_get_saifplus(
   /****************************************************************
   *Procedure Title  : sp72652_get_saifplus
   *Name             : sp72652
   *Called by        : Invoice,PCN,Quote
   *****************************************************************
   *PROGRAMMER     ANALYST                 DATE       MOD #
   *valrey         valrey           06/19/2002    5.9 csr 13
   *
   *Description:  Builds the text that displays after SAIFPlus Credit
   *               in the total premium area.
   *
   * Maintenance Log:
   *   Name            Date      Description
   *   carade       10/27/2009   Modified to not round the rate used in the description.
   *   carade       03/22/2010   Moved code to package pk73300.
   ******************************************************************/
   in_policy_num               IN       NUMBER
 , in_policy_period_eff_date   IN       DATE
 , out_pp_eff_date             OUT      DATE
 , out_saifplus_eff_date       OUT      DATE
 , out_saifplus_desc           OUT      VARCHAR2
 , out_saifplus_rate           OUT      NUMBER
 , out_saifplus_max            OUT      NUMBER
 , out_saifplus_combo_max      OUT      NUMBER)
AS
--------------------------------------------------------------------------
--- BEGIN PROCESSING
--------------------------------------------------------------------------
BEGIN
   pk73300_saifplus.get_saifplus(in_policy_num
                               , in_policy_period_eff_date
                               , out_pp_eff_date
                               , out_saifplus_eff_date
                               , out_saifplus_desc
                               , out_saifplus_rate
                               , out_saifplus_max
                               , out_saifplus_combo_max);
EXCEPTION
   WHEN OTHERS THEN
      raise_application_error(-20002
                            ,    'SP72652 '
                              || in_policy_num
                              || ' PP Eff date '
                              || in_policy_period_eff_date
                              || SUBSTR(SQLERRM
                                      , 1
                                      , 200));
END sp72652_get_saifplus;
```

</details>

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

## Sources
- Oracle DBA_SOURCE: WCIS_DBA.sp72652_get_saifplus
- `Business\SAIF.Business.Policy.Premium\clsPremiumSummaryAdjustment.vb`
