# Business Logic — JKKOrsjgsUseStpRlsRunCC.orsjgsRunUseStpRls() [151 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `com.fujitsu.futurity.bp.custom.common.JKKOrsjgsUseStpRlsRunCC` |
| Layer | CC / Common Component (Custom Business Logic - shared component layer) |
| Module | `common` (Package: `com.fujitsu.futurity.bp.custom.common`) |

## 1. Role

### JKKOrsjgsUseStpRlsRunCC.orsjgsRunUseStpRls()

This method implements the core business operation for **Delivered Business Service Contract Use Suspension Release** (卸先事業者サービス契約利用停止解除). It is invoked when a business operator (deliverer/partner) requests to lift (release) a previously imposed use suspension on one or more of their service contracts. In the K-Opticom telecommunications billing and service management system, a "use suspension" is a status that blocks a customer from actively using their subscribed services (e.g., fiber internet, telephone, or TV) - this method reverses that state.

The method follows a **delegation + iterative dispatch pattern**: it first resolves the full hierarchy of service contracts and their associated line items by querying two service components (EKK0251B001SC and EKK0241B002SC), then filters down to only the targetable service types - specifically **Network (Net) service**, **Telephone service**, and **Television service**, identified by service codes `"01"`, `"02"`, and `"03"` respectively. After filtering, it delegates to a validation method (`orsjgsUseStpRlsKanrencheck`) to ensure the suspension release is permissible for each matched contract, and finally dispatches the actual release processing to `executeUseStpRlsMain` for each eligible service contract in a loop.

Its **role in the larger system** is that of a **shared coordination component** (CC = Common Component) - it is not a screen entry point itself, but is called from a BPM operation (KKSV0900OPOperation) and potentially other screens or batch processes. It orchestrates cross-cutting concerns: date acquisition, contract hierarchy resolution, service-type filtering, eligibility validation, and per-contract suspension release execution. It serves as the bridge between the presentation/BPM layer and the underlying SC (Service Component) data-access layer for the suspension-release domain.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["orsjgsRunUseStpRls.handle, param, fixedText"]) --> GET_OPE_DATE["Get operation date via JCCBPCommon.getOpeDate"]
    GET_OPE_DATE --> GET_PARAM["Extract use_stp_rls_map from param.getData(fixedText)"]
    GET_PARAM --> INIT_VARS["Initialize fukaUseStpRlsTrgtLst, wk_Fuka_flg=false"]
    INIT_VARS --> CREATE_MAPS["Create paramHash, resultHash HashMaps"]
    CREATE_MAPS --> PUT_SVC_NO["paramHash.put SVC_KEI_NO from use_stp_rls_map"]
    PUT_SVC_NO --> CALL_EKK0251["callEKK0251B001SC - Service contract line item lookup"]
    CALL_EKK0251 --> CHECK_EKK0251{"EKK0251B001HashList
not null and size > 0?"}
    CHECK_EKK0251 -->|Yes| GET_KAISEN["Extract svcKeiKaisenUcwkNo from result list"]
    CHECK_EKK0251 -->|No| SKIP_EKK0241["Skip EKK0241B002 call"]
    GET_KAISEN --> CHECK_KAISEN{"svcKeiKaisenUcwkNo
not empty?"}
    CHECK_KAISEN -->|Yes| CALL_EKK0241["callEKK0241B002SC - Service contract number lookup"]
    CHECK_KAISEN -->|No| SKIP_EKK0241
    CALL_EKK0241 --> GET_EKK0241["Extract ekk0241b002HashList from resultHash"]
    SKIP_EKK0241 --> CREATE_FILTER_MAPS["Create pramSvcKeiNo, pramSvcKeiStat maps"]
    GET_EKK0241 --> CREATE_FILTER_MAPS
    CREATE_FILTER_MAPS --> CHECK_EKK0241_LIST{"ekk0241b002HashList
not null and size > 0?"}
    CHECK_EKK0241_LIST -->|Yes| LOOP_START["Loop: i = 0 to ekk0241b002HashList.size"]
    CHECK_EKK0241_LIST -->|No| VALIDATION["orsjgsUseStpRlsKanrencheck - eligibility validation"]
    LOOP_START --> GET_SVC_DATA["Extract svcCd, svcStat, svcKeiNo from list[i]"]
    GET_SVC_DATA --> FILTER_SVC{"svcCd equals
CD00130_01 or 02 or 03?"}
    FILTER_SVC -->|Yes - include| PUT_NET["pramSvcKeiNo.put svcCd->svcKeiNo
pramSvcKeiStat.put svcCd->svcStat"]
    FILTER_SVC -->|No - exclude| CONTINUE_LOOP["Continue to next iteration"]
    PUT_NET --> CONTINUE_LOOP
    CONTINUE_LOOP --> LOOP_END{"i < size?"}
    LOOP_END -->|Yes| LOOP_START
    LOOP_END -->|No| VALIDATION
    VALIDATION --> CHECK_VALID{"checkRslt
equals CHECK_OK?"}
    CHECK_VALID -->|No| EARLY_RETURN["Return param unchanged"]
    CHECK_VALID -->|Yes| SVC_LOOP["Loop: process each pramSvcKeiStList entry"]
    SVC_LOOP --> CLEAR_HASH["paramHash.clear()"]
    CLEAR_HASH --> SET_SVC["paramHash.put SVC_KEI_NO from pramSvcKeiNo"]
    SET_SVC --> EXEC_MAIN["executeUseStpRlsMain - Main suspension release processing"]
    EXEC_MAIN --> SVC_NEXT{"i < pramSvcKeiStList.size?"}
    SVC_NEXT -->|Yes| SVC_LOOP
    SVC_NEXT -->|No| FORMAT_STATUS["String.format statusCode as 4-digit"]
    FORMAT_STATUS --> CHECK_FUKA{"wk_Fuka_flg
is true?"}
    CHECK_FUKA -->|Yes| SET_FAIL["Set SYORI_RESULT=1
RETURN_CODE=9000
RETURN_MESSAGE=system error"]
    CHECK_FUKA -->|No| CHECK_STATUS{"formatStatus
!= CHECK_OK?"}
    CHECK_STATUS -->|Yes| SET_FAIL
    CHECK_STATUS -->|No| SET_OK["Set SYORI_RESULT=0
RETURN_CODE=1
RETURN_MESSAGE=null"]
    SET_FAIL --> SET_DATA["param.setData(fixedText, use_stp_rls_map)"]
    SET_OK --> SET_DATA
    SET_DATA --> FINAL_RETURN["Return param"]
    EARLY_RETURN --> FINAL_RETURN
```

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `handle` | `SessionHandle` | Database session handle carrying the transactional context - manages DB connections, transaction boundaries, and session-scoped state for the operation. Passed through to all called SC and business methods. |
| 2 | `param` | `IRequestParameterReadWrite` | Request/response parameter object that carries all input data and receives output data. It is both read (to extract the service suspension release parameter map) and written to (to set the final processing result). Acts as the primary data exchange contract between the caller and this component. |
| 3 | `fixedText` | `String` | A user-defined string key used to identify and retrieve the specific parameter sub-map within `param`. It functions as a namespace/identifier for the data block containing the service contract number to be processed. |

**Instance fields read by the method:**

| Field | Type | Business Description |
|-------|------|---------------------|
| `oPE_DATE` | `String` | Operation date - set once at the start via `JCCBPCommon.getOpeDate()`. Represents the business date for the operation, used throughout subsequent processing. |
| `wk_Fuka_flg` | `boolean` | Processing result flag - initialized to `false`. Set to `true` by child methods (e.g., `executeUseStpRlsMain`) to indicate that a suspension release is impossible/unavailable for some service contract, which causes the entire operation to be marked as failed. |

## 4. CRUD Operations / Called Services

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

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| R | `JKKOrsjgsUseStpRlsRunCC.callEKK0251B001SC` | EKK0251B001SC | Service contract line item detail table | Queries service contract line item detail for the given service contract number - retrieves the service contract route work number (svc_kei_kaisen_ucwk_no) |
| R | `JKKOrsjgsUseStpRlsRunCC.callEKK0241B002SC` | EKK0241B002SC | Service contract master table | Queries service contract numbers, service codes, and service statuses - returns a list of service contracts with their types (Net/Tel/TV) and statuses |
| R | `JKKOrsjgsUseStpRlsRunCC.orsjgsUseStpRlsKanrencheck` | Internal method | In-memory validation | Validates suspension release eligibility for each service contract - checks for reasons that would block release (e.g., contract in-progress, tied services) |
| C | `JKKOrsjgsUseStpRlsRunCC.executeUseStpRlsMain` | EKK0081A010SC / EKK0321B005SC / EKK0321B002SC / EKK0321A010SC / EKK0861B002SC | Various service contract, billing, and menu tables | Performs the full suspension release main processing - contract agreement check, invoicing lookup, menu registration, and actual service state change |
| R | `JCCBPCommon.getOpeDate` | N/A | System date table | Retrieves the current business operation date |
| R | `JFUHikkosiNaviRelAddCC.getOpeDate` | N/A | System date table | Retrieves the current business operation date (used by called methods) |
| R | `JKKModelCommon.getOpeDate` | N/A | System date table | Retrieves the current business operation date (used by called methods) |
| R | `JFUEoTvCngAddStbCC.getOpeDate` | N/A | System date table | Retrieves the current business operation date (used by called methods) |
| R | `JKKCreditAddCC.getOpeDate` | N/A | System date table | Retrieves the current business operation date (used by called methods) |
| R | `JFUTransferCC.getData` | N/A | Transfer-related data | Retrieves transfer data (used by called methods) |
| R | `JFUTransferListToListCC.getData` | N/A | Transfer list data | Retrieves transfer list data (used by called methods) |
| R | `JFUeoTelOpTransferCC.getData` | N/A | Telephone operation transfer data | Retrieves telephone operation transfer data (used by called methods) |
| R | `JBSbatDKNyukaFinAdd.getData` | N/A | Payment finalization data | Retrieves payment finalization addition data |
| R | `KKW12701SFLogic.getData` | N/A | Work list data | Retrieves work list data |
| R | `JBSbatKKGetCTITelno.getData` | N/A | Telephone number data | Retrieves customer telephone number data |
| - | `JBSbatAKKshkmRsltInfoTukiawsday.setData` | N/A | Settlement result info | Sets settlement result info for daily tracking |
| - | `JBSbatAKKshkmRsltInfoTukiaws.setData` | N/A | Settlement result info | Sets settlement result info for weekly tracking |
| - | `JBSbatAKKshkmRsltInfoTukiawsRealSkh.setData` | N/A | Actual schedule result | Sets actual schedule settlement result |
| - | `JBSbatAKKshkmRsltInfTkCvsNCnsl.setData` | N/A | CVS/consultation result | Sets CVS/consultation settlement result |
| - | `JZMAdEdit.clear` | N/A | Address edit data | Clears address edit data in called methods |
| - | `KKA17101SFLogic.clear` | N/A | Sales data | Clears sales data in called methods |
| - | `KKA17201SFLogic.clear` | N/A | Sales data | Clears sales data in called methods |
| - | `KKA17401SFLogic.clear` | N/A | Sales data | Clears sales data in called methods |
| - | `JCCcomFileSearchUtil.clear` | N/A | File search | Clears file search cache in called methods |

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Screen:KKSV0900 | `KKSV0900OPOperation.run` -> `CCRequestBroker.invoke("JKKOrsjgsUseStpRlsRunCC", "orsjgsRunUseStpRls")` -> `JKKOrsjgsUseStpRlsRunCC.orsjgsRunUseStpRls` | `callEKK0251B001SC [R] KK_T_SVC_KAISAN (service contract line items)`<br>`callEKK0241B002SC [R] KK_T_SVC_KEI (service contracts)`<br>`executeUseStpRlsMain [C/R] KK_T_SVC_KEI, KK_T_SEIKY_KEI (contract + billing)`<br>`JCCBPCommon.getOpeDate [R] KK_T_OPE_DATE (operation date)` |

**Caller Details:**
- **KKSV0900OPOperation** - A BPM (Business Process Management) operation class for the screen KKSV0900 ("Delivered Business Service Contract Use Suspension Release"). It uses `CCRequestBroker` with CC target name `"KKSV090001CC"` to invoke `JKKOrsjgsUseStpRlsRunCC.orsjgsRunUseStpRls`. This is the primary and identified caller entry point.

## 6. Per-Branch Detail Blocks

**Block 1** — [SET] Initialize processing variables (L327)

| # | Type | Code |
|---|------|------|
| 1 | SET | `statusCode = 0` // Initialize return status code [-> 0] |
| 2 | EXEC | `oPE_DATE = JCCBPCommon.getOpeDate(null)` // Get operation date |

**Block 2** — [SET] Extract request parameter map (L331)

| # | Type | Code |
|---|------|------|
| 1 | SET | `use_stp_rls_map = (HashMap)param.getData(fixedText)` // Extract suspension release parameter sub-map by fixedText key |

**Block 3** — [SET] Initialize auxiliary structures (L334-336)

| # | Type | Code |
|---|------|------|
| 1 | SET | `fukaUseStpRlsTrgtLst = new ArrayList<>()` // Initialize list for impossible-to-release targets |
| 2 | SET | `wk_Fuka_flg = false` // Processing result flag [-> false] |

**Block 4** — [TRY] Main processing block with exception handling (L338)

> The entire business logic is wrapped in a try-catch. Commented-out legacy code for SERVICE_ID_WSALE020 check has been removed.

**Block 4.1** — [SET] Create working maps (L352-353)

| # | Type | Code |
|---|------|------|
| 1 | SET | `paramHash = new HashMap<>()` // Working map for SC call parameters |
| 2 | SET | `resultHash = new HashMap<>()` // Working map for SC call results [IT1-2018-0000110_ADD] |

**Block 4.2** — [SET] Populate service contract number into paramHash (L355)

| # | Type | Code |
|---|------|------|
| 1 | SET | `paramHash.put(SVC_KEI_NO, use_stp_rls_map.get(JKKStrConst.SVC_KEI_NO))` // Put service contract number [-> "svc_kei_no"] |

**Block 4.3** — [CALL] Call EKK0251B001SC - Service Contract Line Item Detail Lookup (L357)

| # | Type | Code |
|---|------|------|
| 1 | CALL | `callEKK0251B001SC(param, handle, paramHash, resultHash)` // Query service contract line item details |

**Block 4.4** — [SET] Extract line item list (L359-360)

| # | Type | Code |
|---|------|------|
| 1 | SET | `eKK0251B001HashList = (ArrayList)resultHash.get(TEMPLATE_ID_EKK0251B001)` // Service contract line item list |
| 2 | SET | `svcKeiKaisenUcwkNo = ""` // Initialize route work number |

**Block 4.5** — [IF] Check if line item list exists (L362-366)

> Condition: `eKK0251B001HashList != null && eKK0251B001HashList.size() > 0`

| # | Type | Code |
|---|------|------|
| 1 | SET | `eKK0251B001Hash = eKK0251B001HashList.get(0)` // Get first line item entry |
| 2 | SET | `svcKeiKaisenUcwkNo = (String)eKK0251B001Hash.get(EKK0251B001CBSMsg1List.SVC_KEI_KAISEN_UCWK_NO)` // Extract route work number |

**Block 4.6** — [IF] Check if route work number is populated (L367-371)

> Condition: `svcKeiKaisenUcwkNo != ""` - If a route work number exists, call EKK0241B002SC to get service contract numbers.

| # | Type | Code |
|---|------|------|
| 1 | SET | `paramHash.put(SVC_KEI_KAISEN_UCWK_NO, svcKeiKaisenUcwkNo)` // Put route work number [-> "svc_kei_kaisen_ucwk_no"] |
| 2 | CALL | `callEKK0241B002SC(param, handle, paramHash, resultHash)` // Query service contract numbers |

**Block 4.7** — [SET] Extract EKK0241 result list (L373)

| # | Type | Code |
|---|------|------|
| 1 | SET | `ekk0241b002HashList = (ArrayList)resultHash.get(TEMPLATE_ID_EKK0241B002)` // Service contract list from EKK0241B002 |

**Block 4.8** — [SET] Create service code/status filter maps (L375-377)

| # | Type | Code |
|---|------|------|
| 1 | SET | `pramSvcKeiNo = new HashMap<String, String>()` // Map of service code -> service contract number |
| 2 | SET | `pramSvcKeiStat = new HashMap<String, String>()` // Map of service code -> service status |

**Block 4.9** — [IF] Filter service contracts by type (L381-397)

> Condition: `ekk0241b002HashList != null && ekk0241b002HashList.size() > 0` - Only process if service contract list exists.

**Block 4.9.1** — [FOR] Loop over service contract entries (L383-396)

| # | Type | Code |
|---|------|------|
| 1 | SET | `ekk0241b002Hash = ekk0241b002HashList.get(i)` // Get entry at index i |
| 2 | SET | `svcCd = (String)ekk0241b002Hash.get(EKK0241B002CBSMsg1List.SVC_CD)` // Service code |
| 3 | SET | `svcStat = (String)ekk0241b002Hash.get(EKK0241B002CBSMsg1List.SVC_KEI_STAT)` // Service contract status |
| 4 | SET | `svcKeiNo = (String)ekk0241b002Hash.get(EKK0241B002CBSMsg1List.SVC_KEI_NO)` // Service contract number |

**Block 4.9.2** — [IF] Filter by service code - include only Net/Tel/TV (L388-395)

> Condition: `JKKStrConst.CD00130_01.equals(svcCd) || JKKStrConst.CD00130_02.equals(svcCd) || JKKStrConst.CD00130_03.equals(svcCd)`
> - `CD00130_01 = "01"` (Network/Internet service)
> - `CD00130_02 = "02"` (Telephone service)
> - `CD00130_03 = "03"` (Television service)
>
> Services other than these three codes (e.g., Hosting "04", eo Electricity "05", MVNO "51") are excluded from suspension release processing.

| # | Type | Code |
|---|------|------|
| 1 | SET | `pramSvcKeiNo.put(svcCd, svcKeiNo)` // Map service code to contract number |
| 2 | SET | `pramSvcKeiStat.put(svcCd, svcStat)` // Map service code to status |

**Block 4.10** — [SET] Build target service status list (L399)

| # | Type | Code |
|---|------|------|
| 1 | SET | `pramSvcKeiStList = new ArrayList<String>()` // List of service codes to process |

**Block 4.11** — [CALL] Suspension release eligibility check (L402)

| # | Type | Code |
|---|------|------|
| 1 | CALL | `checkRslt = this.orsjgsUseStpRlsKanrencheck(handle, param, fixedText, pramSvcKeiStat, pramSvcKeiStList)` // Validate eligibility and build target list |

**Block 4.12** — [IF] Check validation result (L403-407)

> Condition: `!JKKStrConst.CHECK_OK.equals(checkRslt)` - `CHECK_OK = "1"` (resolved from common constant pattern in similar classes). If validation fails, return early.

| # | Type | Code |
|---|------|------|
| 1 | RETURN | `return param` // Return unchanged - validation failed |

**Block 4.13** — [FOR] Process each target service contract (L410-427)

> Iterate over `pramSvcKeiStList` - each entry is a service code that passed filtering.

| # | Type | Code |
|---|------|------|
| 1 | EXEC | `paramHash.clear()` // Clear map for next iteration |
| 2 | SET | `paramHash.put(SVC_KEI_NO, pramSvcKeiNo.get(pramSvcKeiStList.get(i)))` // Set service contract number for this target |
| 3 | CALL | `statusCode = executeUseStpRlsMain(handle, param, paramHash, fixedText, fukaUseStpRlsTrgtLst)` // Execute suspension release for this contract |

**Block 4.14** — [SET] Format return status code (L429)

| # | Type | Code |
|---|------|------|
| 1 | SET | `formatStatus = String.format("%1$04d", statusCode)` // Format as 4-digit zero-padded string |

**Block 4.15** — [IF-ELSE] Determine processing result based on wk_Fuka_flg (L432-456)

> Top-level: `if(wk_Fuka_flg)` - Set flag indicates at least one contract was impossible to release.

**Block 4.15.1** — [IF] wk_Fuka_flg == true (L433-436)

> A child processing method flagged that suspension release is impossible for some target.

| # | Type | Code |
|---|------|------|
| 1 | SET | `use_stp_rls_map.put(JKKStrConst.SYORI_RESULT, JKKStrConst.SYORI_RESULT_FUKA)` // Processing result = impossible [-> "1"] |
| 2 | SET | `use_stp_rls_map.put(JKKStrConst.RETURN_CODE, JKKStrConst.RETURN_CD_9000)` // Error code [-> "9000"] |
| 3 | SET | `use_stp_rls_map.put(JKKStrConst.RETURN_MESSAGE, JKKStrConst.RETURN_MESSAGE_SYSTEM_ERROR)` // System error message |

**Block 4.15.2** — [ELSE] wk_Fuka_flg == false (L437-456)

**Block 4.15.2.1** — [IF] Check status code (L441-455)

> Condition: `!JKKStrConst.CHECK_OK.equals(formatStatus)` - `CHECK_OK = "1"`; `formatStatus` is expected to be `"0001"` for success.

| # | Type | Code |
|---|------|------|
| 1 | SET | `use_stp_rls_map.put(JKKStrConst.SYORI_RESULT, JKKStrConst.SYORI_RESULT_OK)` // Processing result = OK [-> "0"] |
| 2 | SET | `use_stp_rls_map.put(JKKStrConst.RETURN_CODE, JKKStrConst.RETURN_CD_9000)` // System error code |
| 3 | SET | `use_stp_rls_map.put(JKKStrConst.RETURN_MESSAGE, JKKStrConst.RETURN_MESSAGE_SYSTEM_ERROR)` // System error message |

**Block 4.15.2.2** — [ELSE] Status is OK (L449-453)

| # | Type | Code |
|---|------|------|
| 1 | SET | `use_stp_rls_map.put(JKKStrConst.SYORI_RESULT, JKKStrConst.SYORI_RESULT_OK)` // Processing result = OK [-> "0"] |
| 2 | SET | `use_stp_rls_map.put(JKKStrConst.RETURN_CODE, JKKStrConst.CHECK_OK)` // Return code = "1" |
| 3 | SET | `use_stp_rls_map.put(JKKStrConst.RETURN_MESSAGE, null)` // No error message |

**Block 4.16** — [EXEC] Write result to param (L458)

| # | Type | Code |
|---|------|------|
| 1 | EXEC | `param.setData(fixedText, use_stp_rls_map)` // Persist processing result back to parameter object |

**Block 4.17** — [CATCH] Exception handler (L460-464)

| # | Type | Code |
|---|------|------|
| 1 | SET | `use_stp_rls_map.put(JKKStrConst.RETURN_CODE, JKKStrConst.RETURN_CD_9000)` // Error code on exception |
| 2 | SET | `use_stp_rls_map.put(JKKStrConst.RETURN_MESSAGE, JKKStrConst.RETURN_MESSAGE_SYSTEM_ERROR)` // System error message |
| 3 | EXEC | `param.setData(fixedText, use_stp_rls_map)` // Write error result |

**Block 4.18** — [RETURN] Final return (L467)

| # | Type | Code |
|---|------|------|
| 1 | RETURN | `return param` // Return the parameter object with results populated |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `orsjgsRunUseStpRls` | Method | Delivered Business Service Contract Use Suspension Release - the main processing entry point for lifting a service suspension |
| `orsjgs` | Abbreviation | 卸先事業者 - Delivered Business Operator / Partner - a business partner or reseller who sells K-Opticom services under their own brand |
| `stp_rls` | Abbreviation | 停止解除 - Suspension Release - the act of lifting a previously imposed service use suspension, restoring the customer ability to use their subscribed services |
| `svc_kei_no` | Field | Service Contract Number - unique identifier for a service contract line item |
| `svc_kei_kaisen_ucwk_no` | Field | Service Contract Route Work Number - internal tracking number associated with the service contract line item/line detail |
| `svc_kei_stat` | Field | Service Contract Status - the current operational status of a service contract (e.g., active, suspended, terminated) |
| `svc_cd` | Field | Service Code - classification code identifying the type of service (Net/Tel/TV/etc.) |
| `fukaUseStpRlsTrgtLst` | Field | Impossible-to-Release Suspension Target List - list of service contracts that could not be released, carrying reason codes |
| `wk_Fuka_flg` | Field | Processing Result Flag (Impossible) - internal flag set to true when any child processing marks a contract as impossible to release |
| `SYORI_RESULT` | Field | Processing Result - output field value: "0" = OK, "1" = Impossible (Fuka) |
| `RETURN_CODE` | Field | Return Code - system return code: "1" = success, "9000" = system error |
| `CD00130_01` | Constant | Service Code = "01" - Internet/Network Service (eo Hikari fiber internet) |
| `CD00130_02` | Constant | Service Code = "02" - Telephone Service (eo telephone) |
| `CD00130_03` | Constant | Service Code = "03" - Television Service (eo TV) |
| `CHECK_OK` | Constant | Check OK = "1" - indicates a validation or status check passed successfully |
| `FUKA_RESON` | Field | Impossible Reason - code explaining why a suspension release could not be performed |
| `FUKA_RESON_RTN_IRAI_TORI` | Constant | Impossible Reason = "01" - Cancellation request (the customer has requested cancellation, blocking suspension release) |
| `FUKA_RESON_RTN_KEITK_CHU` | Constant | Impossible Reason = "02" - Contract in progress (a new contract change is being processed, blocking suspension release) |
| `FUKA_RESON_RTN_TV_KCN` | Constant | Impossible Reason = "03" - eo TV/KCN (Television service tied to a K-Opticom network service, blocking independent suspension release) |
| `EKK0251B001SC` | SC Code | Service Component for Service Contract Line Item Detail Lookup - queries the line item/line detail table for the given service contract number |
| `EKK0241B002SC` | SC Code | Service Component for Service Contract Number Lookup - queries service contracts and returns service codes, statuses, and contract numbers |
| `executeUseStpRlsMain` | Method | Main Suspension Release Processing - orchestrates the full suspension release for a single service contract, including contract agreement check, invoicing, and state change |
| `orsjgsUseStpRlsKanrencheck` | Method | Delivered Business Service Related Suspension Release Check - validates that the suspension release can proceed for all target contracts |
| KKSV0900 | Screen | Delivered Business Service Contract Use Suspension Release Screen - the UI screen that invokes this processing |
| KKSV0900OPOperation | BPM Operation | BPM (Business Process Management) operation class that mediates between KKSV0900 screen and the CC layer |
| CCRequestBroker | Component | BPM infrastructure component that invokes a Common Component (CC) by class name and method name |
| SessionHandle | Type | Database session handle - manages DB connections, transaction context, and session-scoped resources |
| IRequestParameterReadWrite | Type | Request/Response parameter interface - data exchange contract between layers carrying input and output maps |
| oPE_DATE | Field | Operation Date - the current business date obtained from the system |
| pramSvcKeiNo | Variable | Service Contract Number Map (key=service code, value=contract number) - filtered map of target service contracts |
| pramSvcKeiStat | Variable | Service Contract Status Map (key=service code, value=status) - filtered map of target service contract statuses |
| pramSvcKeiStList | Variable | Target Service Status List - list of service codes that passed filtering and validation, to be processed in the release loop |
