---
title: "SQL-122: Update cancellation reason"
summary: "Update cancellation reason"
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Core
reference_type: package
---

# SQL-122: Update cancellation reason

Update cancellation reason in the context of `clsCancellationReason`.

## Classification

| Field | Value |
| --- | --- |
| **SQL ID** | SQL-122 |
| **Operation type** | Update |
| **Execution method** | IDataRequest.SQLStatement (CommandType.Text) |
| **Database** | Oracle |
| **Schema** | [unqualified]** |
| **Command type** | Text |
| **Business object** | `clsCancellationReason` |
| **Criteria property** | `UpdateSQL` |
| **Lifecycle method** | `BeforeUpdate / AfterUpdate` |

## Parameters

| Parameter | Direction | Type | Max length | Description |
| --- | --- | --- | --- | --- |
| `:DueDays` | Input | bound from `DueDays` | - | Bound in `clsCancellationReason.BeforeUpdate` (line 576) |
| `:GraceDueDays` | Input | bound from `GraceDueDays` | - | Bound in `clsCancellationReason.BeforeUpdate` (line 577) |
| `:CancelDays` | Input | bound from `CancelDays` | - | Bound in `clsCancellationReason.BeforeUpdate` (line 578) |
| `:Code` | Input | bound from `Code` | 5 | Bound in `clsCancellationReason.BeforeUpdate` (line 579) |
| `:CodeDescr` | Input | bound from `CodeDescr` | 65 | Bound in `clsCancellationReason.BeforeUpdate` (line 580) |
| `:NCCICancelCode` | Input | bound from `m_NCCICancelCode` | 2 | Bound in `clsCancellationReason.BeforeUpdate` (line 590) |
| `:CertholderNoticeFlag` | Input | bound from `m_CertholderNoticeFlag` | 1 | Bound in `clsCancellationReason.BeforeUpdate` (line 591) |
| `:CancelTypeCode` | Input | bound from `CancelTypeCode` | 5 | Bound in `clsCancellationReason.BeforeUpdate` (line 581) |
| `:BatchReasonFlag` | Input | bound from `BatchReasonFlag` | 1 | Bound in `clsCancellationReason.BeforeUpdate` (line 582) |
| `:CHNoticeTypeCode` | Input | bound from `m_CHNoticeTypeCode` | 5 | Bound in `clsCancellationReason.BeforeUpdate` (line 592) |
| `:HoldPrintFlag` | Input | bound from `m_HoldPrintFlag` | 1 | Bound in `clsCancellationReason.BeforeUpdate` (line 593) |
| `:PHCancelNoticeTypeCode` | Input | bound from `m_PHCancelNoticeTypeCode` | 5 | Bound in `clsCancellationReason.BeforeUpdate` (line 594) |
| `:PHIntentNoticeTypeCode` | Input | bound from `m_PHIntentNoticeTypeCode` | 5 | Bound in `clsCancellationReason.BeforeUpdate` (line 595) |
| `:PMSCancelReasonCode` | Input | bound from `PMSCancelReasonCode` | - | Bound in `clsCancellationReason.BeforeUpdate` (line 583) |
| `:RequestDetailFlag` | Input | bound from `RequestDetailFlag` | 1 | Bound in `clsCancellationReason.BeforeUpdate` (line 584) |
| `:USLHWNoticeTypeCode` | Input | bound from `m_USLHWNoticeTypeCode` | 5 | Bound in `clsCancellationReason.BeforeUpdate` (line 596) |
| `:NoticeDescription` | Input | bound from `m_NoticeDescription` | 254 | Bound in `clsCancellationReason.BeforeUpdate` (line 597) |
| `:CreditReasonFlag` | Input | bound from `CreditReasonFlag` | 1 | Bound in `clsCancellationReason.BeforeUpdate` (line 585) |
| `:USLHWIntentNoticeTypeCode` | Input | bound from `m_USLHWIntentNoticeTypeCode` | 5 | Bound in `clsCancellationReason.BeforeUpdate` (line 598) |
| `:CancellationCategoryCode` | Input | bound from `m_CancellationCategoryCode` | 5 | Bound in `clsCancellationReason.BeforeUpdate` (line 599) |
| `:ShortRateDefaultFlag` | Input | bound from `ShortRateDefaultFlag` | 1 | Bound in `clsCancellationReason.BeforeUpdate` (line 586) |
| `:PrintCancelNoticeFlag` | Input | bound from `PrintCancelNoticeFlag` | 1 | Bound in `clsCancellationReason.BeforeUpdate` (line 587) |
| `:CancelNoticeDescription` | Input | bound from `m_CancelNoticeDescription` | 254 | Bound in `clsCancellationReason.BeforeUpdate` (line 600) |
| `:DelayDays` | Input | bound from `DelayDays` | - | Bound in `clsCancellationReason.BeforeUpdate` (line 588) |
| `:ReinstateReasonCode` | Input | bound from `m_ReinstateReasonCode` | 5 | Bound in `clsCancellationReason.BeforeUpdate` (line 601) |
| `:PHReminderTypeCode` | Input | bound from `m_PHReminderTypeCode` | 5 | Bound in `clsCancellationReason.BeforeUpdate` (line 602) |
| `:ARPDepositDays` | Input | bound from `ARPDepositDays` | - | Bound in `clsCancellationReason.BeforeUpdate` (line 589) |

## Tables

| Table | Access | Columns used |
| --- | --- | --- |
| [CANCEL_REASON_CODE](../database-tables.md#cancel_reason_code) | UPDATE | See sample SQL |

## Sample SQL

```sql
UPDATE
  CANCEL_REASON_CODE
SET
  DUE_DAYS = :DueDays,
  GRACE_DUE_DAYS = :GraceDueDays,
  CANCEL_DAYS = :CancelDays,
  CODE = :Code,
  CODE_DESCR = :CodeDescr,
  NCCI_CANCEL_CODE = :NCCICancelCode,
  CERTHOLDER_NOTICE_FLAG = :CertholderNoticeFlag,
  CANCEL_TYPE_CODE = :CancelTypeCode,
  BATCH_REASON_FLAG = :BatchReasonFlag,
  CH_NOTICE_TYPE_CODE = :CHNoticeTypeCode,
  HOLD_PRINT_FLAG = :HoldPrintFlag,
  PH_CANCEL_NOTICE_TYPE_CODE = :PHCancelNoticeTypeCode,
  PH_INTENT_NOTICE_TYPE_CODE = :PHIntentNoticeTypeCode,
  PMS_CANCEL_REASON_CODE = :PMSCancelReasonCode,
  REQUEST_DETAIL_FLAG = :RequestDetailFlag,
  USLHW_NOTICE_TYPE_CODE = :USLHWNoticeTypeCode,
  NOTICE_DESC = :NoticeDescription,
  CREDIT_REASON_FLAG = :CreditReasonFlag,
  USLHW_INTENT_NOTICE_TYPE_CODE = :USLHWIntentNoticeTypeCode,
  CANCELLATION_CATEGORY_CODE = :CancellationCategoryCode,
  SHORT_RATE_DEFAULT_FLAG = :ShortRateDefaultFlag,
  PRINT_CANCEL_NOTICE_FLAG = :PrintCancelNoticeFlag,
  CANCEL_NOTICE_DESCR = :CancelNoticeDescription,
  DELAY_DAYS = :DelayDays,
  REINSTATE_REASON_CODE = :ReinstateReasonCode,
  PH_REMINDER_TYPE_CODE = :PHReminderTypeCode,
  ARP_DEPOSIT_DAYS = :ARPDepositDays
WHERE
  CANCEL_REASON_CODE.CODE = :Code
```

## Operations and processes
- [Record a cancellation reason override](../operations/record-a-cancellation-reason-override.md)

## Business rules
- [BR-033: New sequence values for writable entities are obtained](../business-rules.md#br-033-new-sequence-values-for-writable-entities-are-obtained)

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