---
title: KKA16701SFLogic.forwardRsvClCfm()
---

# Business Logic — KKA16701SFLogic.forwardRsvClCfm() [179 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.KKA16701SF.KKA16701SFLogic` |
| Layer | Controller (webview — web presentation layer) |
| Module | `KKA16701SF` (Package: `eo.web.webview.KKA16701SF`) |

## 1. Role

### KKA16701SFLogic.forwardRsvClCfm()

This method implements the **Reservation Cancellation Confirmation** screen processing — triggered when a customer presses the "Reservation Cancellation Confirm" button on a web UI form. Its primary business purpose is to accept a cancellation request, invoke a backend service to process the reservation cancellation, validate the result against multiple business rule checks, and forward the user to the cancellation result screen (`KKW02702`).

The method handles **three service categories** based on the `svcCd` (service code) and `prcGrpCd` (price group code) of the customer's active contract: **TV services** (SVC_CD_TV = `"03"`), **Net/eo Internet services** (SVC_CD_NET = `"01"`), and **eo Mobile 3G services** (PRC_GRP_CD_08 = `"08"`). For TV and Net services, it performs a construction linkage check (`kojiRnki` / `netKojiRnki`) to ensure any required field construction is complete. For Net services, it additionally validates equipment provisioning status, temporary refund (iccin) status, and router speed verification. For Mobile 3G services, it checks course change linkage status and credit device existence.

The method implements a **gatekeeper design pattern** — it acts as an intermediate controller between the screen input and the backend service invocation, performing pre-service setup (datetime stamp, input map construction), post-service validation (multiple independent check methods), and result formatting (course history editing, message setting, forward info setup) regardless of which branch is taken.

Its role in the larger system is that of a **web-facing business gate** for cancellation confirmations. It is called directly from `apiControl()` within the same class, which routes HTTP requests from the reservation cancellation confirmation screen. It serves as both a service orchestrator and a multi-dimensional validation coordinator, ensuring all system-level consistency constraints are met before allowing the cancellation to proceed to the result screen.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["forwardRsvClCfm()"])
    
    START --> S1["Set operation datetime stamp"]
    S1 --> S2["Set operation date"]
    S2 --> S3["setInMsg with FUNC_CODE_2"]
    S3 --> S4["invokeService"]
    S4 --> S5["Check kikiOpRsvFlg"]
    S5 -->|is 1| S6["Set EKB750_KW error"]
    S6 --> S7["Return false"]
    S5 -->|not 1| S8["Check isSptvStatCheckResult"]
    S8 -->|fail| S9["Set EKBG220_JW error"]
    S9 --> S10["Return false"]
    S8 -->|pass| S11["Check isErrCdCheckResult"]
    S11 -->|fail| S12["Set EKB5440_JW error"]
    S12 --> S13["Return false"]
    S11 -->|pass| S14["Check isCSOpCheckResult"]
    S14 -->|fail| S15["Set EKBG200_KW error"]
    S15 --> S16["Return false"]
    S14 -->|pass| S17["Check msgResult"]
    S17 -->|not null| S18["Set msgResult info"]
    S18 --> S19["Return false"]
    S17 -->|null| S20["Get svcCd"]
    S20 --> S21["TV or NET branch"]
    S21 --> S22["Get kojiUmFlg"]
    S22 --> S23["kojiUmFlg blank?"]
    S23 -->|no| S24["kojiUmFlg = UM_U?"]
    S23 -->|yes| S33["Get prcGrpCd"]
    S24 -->|yes| S25["svcCd = TV?"]
    S25 -->|yes| S26["Check isKojiRnkiCheckResult"]
    S26 -->|fail| S27["Set EKBA160_KW error"]
    S27 --> S28["Return true"]
    S25 -->|no| S29["svcCd = NET?"]
    S29 -->|yes| S30["Check isNetKojiRnkiCheckResult"]
    S30 -->|fail| S31["Set EKBA160_KW error"]
    S31 --> S32["Return true"]
    S24 -->|no| S33
    S33 --> S34["prcGrpCd = PRC_GRP_CD_08?"]
    S34 -->|yes| S35["Check isCouseRkRnkiCheckResult"]
    S35 -->|fail| S36["Set EKB9460_KW error"]
    S36 --> S37["Check isKkSonzaiCheckResult"]
    S37 -->|fail| S38["Set EKB9470_KW error"]
    S38 --> S47["setCourseRk()"]
    S34 -->|no| S39["svcCd = NET?"]
    S39 -->|yes| S40["Check isKktksvTkchuCheckResult"]
    S40 -->|fail| S41["Set EKB5950__I error"]
    S41 --> S42["Check isIcjkn"]
    S42 -->|fail| S43["Set EKB5960__Q error"]
    S43 --> S44["Check isRouterSpeedCheckResult"]
    S44 -->|fail| S45["Set EKB8820__Q error"]
    S44 -->|pass| S47
    S42 -->|pass| S44
    S39 -->|no| S47
    S47 --> S48["Set EKB0370__I message"]
    S48 --> S49["setForwardInfo to KKW02702"]
    S49 --> END(["Return true"])
    
    style START fill:#e1f5e1
    style END fill:#e1f5e1
    style S28 fill:#fff4e5
    style S7 fill:#f8d7da
    style S10 fill:#f8d7da
    style S13 fill:#f8d7da
    style S16 fill:#f8d7da
    style S19 fill:#f8d7da
```

### Processing Flow Summary

1. **Preparation Phase (L960–968)**: Initializes input/output maps, retrieves the service form bean, sets operation date/time stamps, and constructs the input parameter map with `FUNC_CODE_2`.

2. **Service Invocation (L971)**: Invokes the backend service via `invokeService()`, which processes the actual reservation cancellation.

3. **Equipment Reservation Guard (L974–984)**: Checks if the equipment operation reservation flag (`kikiOpRsvFlg`) returned by `KKSV039552SC` equals `"1"`. If the customer has an active equipment operation reservation, cancellation is blocked with error `EKB750_KW`.

4. **Post-Service Validations (ANK-4592-00-00) (L987–1006)**: Three independent consistency checks run unconditionally after service invocation:
   - **SptvStatCheck**: Verifies CAS (Centralized Accounting System) linkage status for the reservation.
   - **ErrCdCheck**: Verifies there are no system errors on the target reservation.
   - **CSOpCheck**: Verifies no CS (Customer Service) option operations are in progress.

5. **Service Result Check (L1009–1012)**: If the service invocation returned a non-null error result object, it is displayed and the method returns false.

6. **Service-Type Conditional Branching (L1014–1127)**: Based on the `svcCd` (service code), different validation suites are applied:
   - **TV/Net Branch** (L1016–1063): Checks construction linkage confirmation. If construction is required (`kojiUmFlg = UM_U`), validates that construction linkage is confirmed via `isKojiRnkiCheckResult` (TV) or `isNetKojiRnkiCheckResult` (Net). Returns true on construction error (allows continuation to result screen).
   - **eo Mobile 3G Branch** (L1085–1099): For price group code `PRC_GRP_CD_08`, checks course change linkage (`isCouseRkRnkiCheckResult`) and credit device existence (`isKkSonzaiCheckResult`).
   - **Net-Only Additional Checks** (L1101–1126): For Net services, checks equipment provisioning status (`isKktksvTkchuCheckResult`), temporary refund status (`isIcjkn`), and router speed verification (`isRouterSpeedCheckResult`).

7. **Completion Phase (L1129–1135)**: Edits course history (`setCourseRk()`), sets success message `EKB0370__I` with "Contract Cancellation" text, forwards to result screen `KKW02702`, and returns true.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| - | (none) | - | This is an instance method with no parameters. All input data is derived from the session/form bean and the service invocation output map. |

### Instance Fields / External State Read

| Field / Source | Type | Business Description |
|---------------|------|---------------------|
| `super.getServiceFormBean()` (X31SDataBeanAccess) | X31SDataBeanAccess | The web form bean holding screen data including service code, price group code, construction execution flag, and operation date/time values. Retrieved via the base class. |
| `JCCWebCommon.getOpeDateTimeStamp(this, null)` | String (timestamp) | Current operation date-time stamp in `yyyyMMddHHmmssSSS` format. Used as a metadata value for the processing record. |
| `JCCWebCommon.getOpeDate(this, null)` | String (date) | Current operation date in `yyyyMMdd` format. Used as metadata for the processing record. |
| `super.setInMsg(..., JKKCommonConst.FUNC_CODE_2)` | HashMap<String, String> | Input parameter map constructed from form data with function code 2 (cancellation confirmation context). |
| `this.invokeService(paramMap, inputMap, outputMap)` | X31CMessageResult | Backend service invocation. The output map contains the service processing result and validation flags (including `kikiOpRsvFlg`). |
| `svcFormBean` (form bean getters) | Various | Reads `svcCd` (service code), `prcGrpCd` (price group code), and `KOJI_UM_FLG` (construction execution flag) from the session form bean to determine which validation branch to execute. |

## 4. CRUD Operations / Called Services

### Pre-computed evidence from code analysis graph:

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| - | `setInMsg` | - | - | Reads form bean data and populates the input parameter map for service invocation |
| - | `invokeService` | KKSV039552SC | - | Invokes the backend service for reservation cancellation processing. Returns output map containing `kikiOpRsvFlg` and result status. |
| R | `JCCWebCommon.getOpeDateTimeStamp` | JCCWebCommon | - | Reads the current operation date-time stamp for audit metadata |
| R | `JCCWebCommon.getOpeDate` | JCCWebCommon | - | Reads the current operation date for audit metadata |
| - | `JCCWebCommon.setMessageInfo` | JCCWebCommon | - | Sets message info for display on the screen (used in error and success paths) |
| - | `X31SDataBeanAccess.sendMessageString` | - | - | Reads/writes form bean values (svcCd, prcGrpCd, kojiUmFlg, UNYO_DTM, UNYO_YMD) |
| - | `KKA16701SFLogic.isSptvStatCheckResult` | - | - | Checks CAS (Centralized Accounting System) linkage status for the reservation. Reads from outputMap. |
| - | `KKA16701SFLogic.isErrCdCheckResult` | - | - | Checks for system errors on the target reservation. Reads from outputMap. |
| - | `KKA16701SFLogic.isCSOpCheckResult` | - | - | Checks for CS (Customer Service) option operations in progress. Reads from outputMap. |
| - | `KKA16701SFLogic.isKojiRnkiCheckResult` | - | - | Checks construction linkage confirmation for TV services. Reads from outputMap. |
| - | `KKA16701SFLogic.isNetKojiRnkiCheckResult` | - | - | Checks construction linkage confirmation for Net services. Reads from outputMap. |
| - | `KKA16701SFLogic.isCouseRkRnkiCheckResult` | - | - | Checks course change linkage completion. Reads from outputMap. |
| - | `KKA16701SFLogic.isKkSonzaiCheckResult` | - | - | Checks credit device existence. Reads from outputMap. |
| - | `KKA16701SFLogic.isKktksvTkchuCheckResult` | - | - | Checks equipment provisioning service status. Reads from outputMap. |
| - | `KKA16701SFLogic.isIcjkn` | - | - | Checks temporary refund (iccin) cancellation status. Reads from outputMap. |
| - | `KKA16701SFLogic.isRouterSpeedCheckResult` | - | - | Checks router speed verification status. Reads from outputMap and form bean. |
| - | `KKA16701SFLogic.setCourseRk` | - | - | Edits/constructs the course history list for display on the result screen. |
| - | `KKA16701SFLogic.setForwardInfo` | - | - | Sets navigation information (target screen ID and screen name) for forward to result screen. |

### Classification Summary

| CRUD | Method / Component | Description |
|------|-------------------|-------------|
| W | `invokeService` (KKSV039552SC) | Writes reservation cancellation record via backend service invocation |
| R | `getOpeDateTimeStamp` / `getOpeDate` | Reads system date-time for audit metadata |
| R | `sendMessageString` (form bean) | Reads form field values (svcCd, prcGrpCd, kojiUmFlg) |
| R | Check methods (isSptvStatCheckResult, etc.) | Reads validation result flags from service output map |
| - | `setMessageInfo` | Sets display message info |
| - | `setCourseRk` | Edits course history data |
| - | `setForwardInfo` | Sets navigation redirect metadata |

## 5. Dependency Trace

### Pre-computed evidence from code analysis graph:

No screen/batch entry points found within 8 hops. Direct callers found: 1 methods.
Terminal operations from this method: `setForwardInfo` [-], `setMessageInfo` [-], `setMessageInfo` [-], `setMessageInfo` [-], `setMessageInfo` [-], `setMessageInfo` [-], `setCourseRk` [-], `setMessageInfo` [-], `setMessageInfo` [-], `setMessageInfo` [-], `setMessageInfo` [-], `setMessageInfo` [-], `isRouterSpeedCheckResult` [-], `setMessageInfo` [-], `setMessageInfo` [-], `setMessageInfo` [-], `setMessageInfo` [-], `setMessageInfo` [-], `isIcjkn` [-], `setMessageInfo` [-]

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | `KKA16701SFLogic.apiControl()` | `apiControl()` -> `forwardRsvClCfm()` | `invokeService [W] reservation cancellation`, `setForwardInfo [-] KKW02702`, `setCourseRk [-] course history` |

**Notes:** The only direct caller is `KKA16701SFLogic.apiControl()`, which is the API routing dispatcher for the `KKA16701SF` screen module. This method is invoked when the user triggers the reservation cancellation confirmation action. The terminal operations resolve to: (a) the backend service invocation for reservation cancellation processing, (b) navigation to the result screen `KKW02702`, and (c) course history editing for display purposes.

## 6. Per-Branch Detail Blocks

**Block 1** — [SET] Initialize data structures (L960)

> Sets up the input/output parameter maps for service invocation.

| # | Type | Code |
|---|------|------|
| 1 | SET | `inputMap = new HashMap<String, Object>()` // Empty input map for service parameters |
| 2 | SET | `outputMap = new HashMap<String, Object>()` // Empty output map for service results |
| 3 | SET | `paramMap = null` // Input parameter map, set by setInMsg |

**Block 2** — [SET] Retrieve form bean (L963)

> Gets the service form bean from the base class to access session data.

| # | Type | Code |
|---|------|------|
| 1 | SET | `svcFormBean = super.getServiceFormBean()` // X31SDataBeanAccess — retrieves current session form data |

**Block 3** — [SET] Set operation date/time metadata (L966–968)

> Sets the operation date-time stamp and date in the form bean for audit trail purposes.

| # | Type | Code |
|---|------|------|
| 1 | SET | `svcFormBean.sendMessageString(UNYO_DTM, DATABEAN_SET_VALUE, JCCWebCommon.getOpeDateTimeStamp(this, null))` // Sets operation date-time stamp [-> UNYO_DTM="unyo_dtm"] |
| 2 | SET | `svcFormBean.sendMessageString(UNYO_YMD, DATABEAN_SET_VALUE, JCCWebCommon.getOpeDate(this, null))` // Sets operation date [-> UNYO_YMD="unyo_ymd"] |

**Block 4** — [CALL] Build input parameter map (L971)

> Populates the input parameter map with form data using function code 2 (cancellation confirmation context).

| # | Type | Code |
|---|------|------|
| 1 | SET | `paramMap = setInMsg(svcFormBean, inputMap, JKKCommonConst.FUNC_CODE_2)` [-> FUNC_CODE_2="2"] // Constructs parameter map from form bean |

**Block 5** — [CALL] Invoke backend service (L974)

> Calls the backend service to process the reservation cancellation.

| # | Type | Code |
|---|------|------|
| 1 | SET | `msgResult = invokeService(paramMap, inputMap, outputMap)` // Backend service returns result; outputMap populated with validation flags |

**Block 6** — [IF] Equipment reservation guard (ANK-4287-00-00) (L977–984)

> Checks if the equipment operation reservation flag from `KKSV039552SC` is set. If a customer has an active equipment operation reservation, cancellation is blocked.

| # | Type | Code |
|---|------|------|
| 1 | SET | `kksv039552ccMap = (HashMap<String, Object>)outputMap.get("KKSV039552SC")` // Extracts SC output data |
| 2 | IF | `kksv039552ccMap != null && kksv039552ccMap.containsKey("kikiOpRsvFlg")` [-> kikiOpRsvFlg="equipment operation reservation flag"] |
| 3 | SET | `kikiOpRsvFlg = (String)kksv039552ccMap.get("kikiOpRsvFlg")` |
| 4 | IF | `"1".equals(kikiOpRsvFlg)` [-> "1" = equipment operation reservation active] |
| 5 | CALL | `JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBF750_KW)` // Error: Cannot cancel while equipment reservation is active |
| 6 | RETURN | `return false` // Cancellation blocked |

**Block 7** — [IF] CAS linkage status check (ANK-4592-00-00) (L988–995)

> Verifies the CAS (Centralized Accounting System) linkage status for the reservation. If the CAS linkage is in progress, cancellation is blocked.

| # | Type | Code |
|---|------|------|
| 1 | IF | `!isSptvStatCheckResult(outputMap, svcFormBean)` // SptvStat = suspended status (SC linkage check) |
| 2 | CALL | `setErrorInfo(JPCOnlineMessageConstant.EKBG220_JW, new String[] {"CAS number linkage in progress", "Reservation", "Cancellation"}, "")` // Error with context: CAS number linkage, Reservation, Cancellation |
| 3 | RETURN | `return false` // Cancellation blocked |

**Block 8** — [IF] System error check (ANK-4592-00-00) (L997–1004)

> Checks for system errors on the target reservation. If a system error exists, cancellation is blocked.

| # | Type | Code |
|---|------|------|
| 1 | IF | `!isErrCdCheckResult(outputMap, svcFormBean)` // ErrCd = error code |
| 2 | CALL | `setErrorInfo(JPCOnlineMessageConstant.EKB5440_JW, new String[] {"System error", "Target reservation is cancelled"}, "")` |
| 3 | RETURN | `return false` // Cancellation blocked |

**Block 9** — [IF] CS option check (ANK-4592-00-00) (L1006–1013)

> Checks if any CS (Customer Service) option operations are in progress. If so, cancellation is blocked.

| # | Type | Code |
|---|------|------|
| 1 | IF | `!isCSOpCheckResult(outputMap, svcFormBean)` // CSOp = Customer Service operation |
| 2 | CALL | `JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBG200_KW)` // Error: CS option in progress |
| 3 | RETURN | `return false` // Cancellation blocked |

**Block 10** — [IF] Service result error check (L1016–1019)

> If the backend service returned a non-null error result object, display the error and abort.

| # | Type | Code |
|---|------|------|
| 1 | IF | `null != msgResult` // msgResult = service message result |
| 2 | CALL | `JCCWebCommon.setMessageInfo(this, msgResult)` // Displays service error message |
| 3 | RETURN | `return false` // Cancellation failed |

**Block 11** — [SET] Read service code (L1021)

> Retrieves the service code from the form bean to determine which validation branch to take.

| # | Type | Code |
|---|------|------|
| 1 | SET | `svcCd = svcFormBean.sendMessageString("サービスコード", DATABEAN_GET_VALUE)` [-> "サービスコード"="service code"] |

**Block 12** — [IF] TV/Net construction linkage check (v7.00.00 addition) (L1024–1063)

> For TV and Net services, checks whether construction (koji) is required and if so, validates construction linkage confirmation.

| # | Type | Code |
|---|------|------|
| 1 | IF | `JKKCommonConst.SVC_CD_TV.equals(svcCd) || JKKCommonConst.SVC_CD_NET.equals(svcCd)` [-> SVC_CD_TV="03", SVC_CD_NET="01"] // TV or Net service |
| 2 | SET | `kojiUmFlg = svcFormBean.sendMessageString(KKW02701SFConst.KOJI_UM_FLG, DATABEAN_GET_VALUE)` [-> KOJI_UM_FLG="construction execution flag"] |
| 3 | IF | `isNotBlank(kojiUmFlg)` // Construction flag is present |
| 4 | IF | `JKKCommonConst.UM_U.equals(kojiUmFlg)` [-> UM_U="1" = construction exists] |

**Block 12.1** — [IF] TV construction linkage check (OM-2016-0000943) (L1033–1042)

> For TV services, validates construction linkage confirmation.

| # | Type | Code |
|---|------|------|
| 1 | IF | `JKKCommonConst.SVC_CD_TV.equals(svcCd)` [-> SVC_CD_TV="03"] |
| 2 | IF | `!isKojiRnkiCheckResult(outputMap)` [-> kojiRnki = construction linkage registration] |
| 3 | CALL | `JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBA160_KW)` // Warning: Construction linkage not confirmed |
| 4 | RETURN | `return true` // Warning only — allows continuation to result screen |

**Block 12.2** — [IF] Net construction linkage check (OM-2016-0000943) (L1043–1052)

> For Net services, validates network construction linkage confirmation.

| # | Type | Code |
|---|------|------|
| 1 | IF | `JKKCommonConst.SVC_CD_NET.equals(svcCd)` [-> SVC_CD_NET="01"] |
| 2 | IF | `!isNetKojiRnkiCheckResult(outputMap)` // Net-specific construction linkage check |
| 3 | CALL | `JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBA160_KW)` // Warning: Network construction linkage not confirmed |
| 4 | RETURN | `return true` // Warning only — allows continuation to result screen |

**Block 13** — [IF] eo Mobile 3G branch (PRC_GRP_CD_08) (L1085–1099)

> For eo Mobile 3G services (price group code 08), checks course change linkage and credit device existence.

| # | Type | Code |
|---|------|------|
| 1 | SET | `prcGrpCd = svcFormBean.sendMessageString("料金グループコード", DATABEAN_GET_VALUE)` [-> "料金グループコード"="price group code"] |
| 2 | IF | `JKKCommonConst.PRC_GRP_CD_08.equals(prcGrpCd)` [-> PRC_GRP_CD_08="08" = eo Mobile 3G] |

**Block 13.1** — [IF] Course change linkage check (L1088–1094)

> Checks if course change linkage has been completed for the mobile service.

| # | Type | Code |
|---|------|------|
| 1 | IF | `!isCouseRkRnkiCheckResult(outputMap)` [-> courseRkRnki = course change registration linkage] |
| 2 | CALL | `JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB9460_KW)` // Warning: Course change linkage not complete |

**Block 13.2** — [IF] Credit device existence check (L1096–1102)

> Checks if credit device information exists for the mobile service.

| # | Type | Code |
|---|------|------|
| 1 | IF | `!isKkSonzaiCheckResult(outputMap)` [-> kkSonzai = KK existence check] |
| 2 | CALL | `JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB9470_KW)` // Warning: Credit device not found |

**Block 14** — [IF-ELSE] Net service additional checks (L1104–1130)

> For Net services specifically, performs additional validations: equipment provisioning status, temporary refund status, and router speed verification.

| # | Type | Code |
|---|------|------|
| 1 | IF-ELSE | `else if (JKKCommonConst.SVC_CD_NET.equals(svcCd))` [-> SVC_CD_NET="01"] // Net-only branch |

**Block 14.1** — [IF] Equipment provisioning service check (L1107–1113)

> Checks if the equipment provisioning service is active. If not, warns the user.

| # | Type | Code |
|---|------|------|
| 1 | IF | `!isKktksvTkchuCheckResult(outputMap)` [-> kktksvTkchu = KT service in-provision] |
| 2 | CALL | `JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB5950__I)` // Warning: Equipment provisioning service status |

**Block 14.2** — [IF] Temporary refund (iccin) check (L1117–1123)

> Checks if the temporary refund (iccin) cancellation has been processed. The check calls `isIcjkn` with SC code `"KKSV039527SC"` (modified from the removed `isIcjknClCheckResult` in OM-2015-0002629).

| # | Type | Code |
|---|------|------|
| 1 | IF | `!isIcjkn(outputMap, "KKSV039527SC")` [-> iccJK = temporary cancellation/refund, SC="KKSV039527SC"] |
| 2 | CALL | `JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB5960__Q)` // Warning: Temporary refund not cancelled |

**Block 14.3** — [IF] Router speed verification check (L1125–1131)

> Checks if the router speed verification has been completed. If not, warns the user.

| # | Type | Code |
|---|------|------|
| 1 | IF | `!isRouterSpeedCheckResult(outputMap, svcFormBean)` // Router speed validation |
| 2 | CALL | `JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB8820__Q)` // Warning: Router speed not verified |

**Block 15** — [ELSE] Other services (L1132)

> Empty else block for other service types — no additional validation is performed.

| # | Type | Code |
|---|------|------|
| 1 | (empty) | `else { }` // No-op for unmatched service types |

**Block 16** — [CALL] Course history editing (L1134)

> Edits the course history list for display on the result screen.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `setCourseRk()` // Constructs course history data for result display |

**Block 17** — [SET] Success message setup (L1137)

> Sets the success message indicating contract cancellation was processed.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0370__I, new String[]{"予約取消"})` [-> "予約取消"="Contract Cancellation"] // Success message |

**Block 18** — [CALL] Forward to result screen (L1140)

> Sets navigation to the cancellation result screen (KKW02702).

| # | Type | Code |
|---|------|------|
| 1 | CALL | `setForwardInfo(JKKScreenConst.SCREEN_ID_KKW02702, JKKScreenConst.SCREEN_NAME_KKW02702)` [-> KKW02702 = reservation cancellation result screen] |
| 2 | RETURN | `return true` // Cancellation processed successfully |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `forwardRsvClCfm` | Method | Forward Reservation Cancellation Confirmation — screen processing method for cancellation verification |
| `svcCd` | Field | Service Code — identifies the type of active service (TV, Net, Mobile, etc.) |
| `prcGrpCd` | Field | Price Group Code — classifies the customer's pricing plan / service category |
| `kojiUmFlg` | Field | Construction Existence Flag — indicates whether physical construction (installation) has been performed for the service |
| `kikiOpRsvFlg` | Field | Equipment Operation Reservation Flag — indicates if there is an active equipment operation reservation that blocks cancellation |
| `UM_U` | Constant | Construction Exists — value `"1"` indicating physical construction has been performed (from `JKKSvcConst`) |
| `UM_ARI` | Constant | Construction Exists — alias value `"1"` for construction existence (from `JKKSvcConst`) |
| `UM_NASI` | Constant | No Construction — value `"0"` indicating no physical construction (from `JKKSvcConst`) |
| `SVC_CD_TV` | Constant | TV Service Code — `"03"`, identifies TV/broadcasting services |
| `SVC_CD_NET` | Constant | Net Service Code — `"01"`, identifies internet/NET services |
| `SVC_CD_TEL` | Constant | Tel Service Code — `"02"`, identifies telephone services |
| `PRC_GRP_CD_08` | Constant | eo Mobile 3G Price Group — `"08"`, identifies eo Mobile 3G service subscribers |
| `KKSV039552SC` | SC Code | Equipment Operation Reservation Service Component — checks equipment reservation status |
| `KKSV039527SC` | SC Code | Temporary Refund Check Service Component — checks temporary refund/cancellation status |
| `FUNC_CODE_2` | Constant | Function Code 2 — cancellation confirmation context code passed to `setInMsg` |
| `isSptvStatCheckResult` | Method | Suspended Status Check Result — verifies CAS (Centralized Accounting System) linkage status for the reservation |
| `isErrCdCheckResult` | Method | Error Code Check Result — checks for system errors on the reservation |
| `isCSOpCheckResult` | Method | CS Operation Check Result — checks for in-progress Customer Service option operations |
| `isKojiRnkiCheckResult` | Method | Construction Registration Check Result — validates construction linkage confirmation for TV services |
| `isNetKojiRnkiCheckResult` | Method | Network Construction Registration Check Result — validates network construction linkage confirmation for Net services |
| `isCouseRkRnkiCheckResult` | Method | Course Registration Linkage Check Result — checks if course change linkage is complete (Mobile services) |
| `isKkSonzaiCheckResult` | Method | KK Existence Check Result — verifies credit device information exists |
| `isKktksvTkchuCheckResult` | Method | KT Service In-Provision Check Result — checks if equipment provisioning service is active (Net services) |
| `isIcjkn` | Method | Temporary Cancellation/Refund Check — verifies temporary refund (iccin) cancellation status |
| `isRouterSpeedCheckResult` | Method | Router Speed Check Result — validates router speed has been confirmed (Net services) |
| `setCourseRk` | Method | Set Course Registration — constructs course history list for display |
| `setForwardInfo` | Method | Sets screen navigation target (screen ID and name for redirect) |
| `EKB750_KW` | Message ID | Warning — Equipment operation reservation active; cancellation blocked |
| `EKBG220_JW` | Message ID | Error — CAS number linkage in progress; reservation cancellation blocked |
| `EKB5440_JW` | Message ID | Error — System error; target reservation is cancelled |
| `EKBG200_KW` | Message ID | Warning — CS (Customer Service) option in progress |
| `EKBA160_KW` | Message ID | Warning — Construction linkage not confirmed |
| `EKB9460_KW` | Message ID | Warning — Course change linkage not complete (Mobile 3G) |
| `EKB9470_KW` | Message ID | Warning — Credit device not found (Mobile 3G) |
| `EKB5950__I` | Message ID | Information — Equipment provisioning service status (Net) |
| `EKB5960__Q` | Message ID | Information — Temporary refund not cancelled (Net) |
| `EKB8820__Q` | Message ID | Information — Router speed not verified (Net) |
| `EKB0370__I` | Message ID | Information — Contract cancellation completed successfully |
| CAS | Acronym | Centralized Accounting System — central billing/accounting system integration |
| CS | Acronym | Customer Service — customer support and options management system |
| ICCKN / iccJK | Acronym | Temporary Cancellation/Refund — one-time billing adjustment or refund processing |
| kojiRnki | Term | Construction Registration — linkage check for physical installation/construction records |
| courseRk | Term | Course Registration — course change history linkage records |
| eo | Brand | eo — NTT Docomo's fixed-line broadband/fiber brand (eo Light, eo Net, eo Mobile) |
| FTTH | Business term | Fiber To The Home — fiber-optic internet service (relevant for Net service category) |
| KKW02701SF | Screen | Reservation Cancellation Confirmation Screen — the originating screen for this method |
| KKW02702 | Screen | Reservation Cancellation Result Screen — the target screen for forward navigation |
| ANK-4287-00-00 | Change ID | Equipment operation reservation check addition — prevents cancellation when equipment reservation is active |
| ANK-4592-00-00 | Change ID | Post-service validation checks addition — adds CAS, error code, and CS option consistency checks |
| OM-2016-0000943 | Change ID | TV + Net construction linkage check expansion — extends construction check to include Net services |
| OM-2015-0002629 | Change ID | Temporary refund check modification — replaced `isIcjknClCheckResult` with `isIcjkn` for Net service |
