---
title: Business Logic — JKKUsePlaceAdInfUpdCC.addMskm() [188 LOC]
class: JKKUsePlaceAdInfUpdCC
method: addMskm
fqn: com.fujitsu.futurity.bp.custom.common.JKKUsePlaceAdInfUpdCC
---

# Business Logic — JKKUsePlaceAdInfUpdCC.addMskm() [188 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `com.fujitsu.futurity.bp.custom.common.JKKUsePlaceAdInfUpdCC` |
| Layer | CC/Common Component — shared utility class for application/content update operations |
| Module | `common` (Package: `com.fujitsu.futurity.bp.custom.common`) |

## 1. Role

### JKKUsePlaceAdInfUpdCC.addMskm()

This method performs **application content approval registration** (申込内容承認登録) — the core business operation of submitting a customer's usage location application to the central business system for approval. In the K-Opticom telecom order fulfillment domain, "mskm" (申込, application/registration) refers to the act of submitting a service application for a customer's new or changed usage location (use place change, 住所変更).

The method first validates whether a pre-investigation (照会前, pre-inquiry/pre-screening) is required by calling `beforeShosa()`. If any service contract in the customer's profile has a status other than the active/confirmed status (`SVC_KEI_STAT_010`), the method returns early, deferring the application until the investigation is completed. This is a business rule to prevent incomplete applications.

When validation passes, the method assembles a comprehensive condition map (`condMap`) with 25+ fields covering the application type, dates, user ID, contact information, service continuation codes, and various preference flags — most initialized as empty strings or zero defaults. It then constructs a detail list (`mskmDtlList`) with 35+ fields for the application detail record, also initialized as empty defaults, which will be populated by downstream mappers.

The method delegates to the SC (Service Component) **EKK0011D020** — a CBS (Central Business System) for application content approval registration — via the `JKKAdInfChgMapperCC` mapper and `ServiceComponentRequestInvoker`. Upon successful SC execution, it extracts the generated application number (`MSKM_NO`) and application detail number (`MSKM_DTL_NO`) from the response, storing them back into the parameter map for subsequent processing steps in the application workflow.

This method acts as a **delegator/builder pattern**: it builds the request structure, delegates to the SC layer, and post-processes the response. It is called directly by `JKKUsePlaceAdInfUpdCC.execute()`, making it part of the main use-place application update workflow.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["addMskm handle param fixedText"])
    
    START --> GET_PARAM_MAP["Get paramMap from param.getData fixedText"]
    GET_PARAM_MAP --> BEFORE_SHOSA{"beforeShosa returns true?"}
    
    BEFORE_SHOSA --> Yes["Yes"]
    BEFORE_SHOSA --> No["No"]
    Yes --> EARLY_RETURN["Return early - pre-investigation required"]
    No --> SETUP_MAP["Initialize condition map and detail list"]
    
    SETUP_MAP --> POPULATE_COND["Populate condMap with SYSID and MSKM_SBT_CD 90021"]
    POPULATE_COND --> BUILD_DETAIL["Build mskmDtlList with mskmDtlMap empty defaults"]
    BUILD_DETAIL --> EXECUTE_SC["Execute SC setEKK0011D020 then scCall run then getEKK0011D020"]
    EXECUTE_SC --> CHECK_RESULT["scResultCheck param"]
    CHECK_RESULT --> EXTRACT_RESULT["Extract MSKM_NO and MSKM_DTL_NO from result"]
    EXTRACT_RESULT --> STORE_RESULT["Store MSKM_NO and MSKM_DTL_NO back into paramMap"]
    STORE_RESULT --> END(["End Return"])
    
    EARLY_RETURN --> END
    
    style START fill:#e1f5e1
    style END fill:#e1f5e1
    style EARLY_RETURN fill:#fff3e0
```

**Key constants resolved in processing:**

| Constant | Value | Business Meaning |
|----------|-------|-----------------|
| `MSKM_SBT_CD` | `"90021"` | Application type code — new application (申込種別コード) |
| `CONSMBSN_MSKM_STAT_SKBT_CD` | `"03"` | Subscription business application status identification code — indicates the application state for contracted services |
| `MSKM_ROUTE_SKBT_CD` | `"1"` | Application path identification code — direct application route |
| `AGNT_MSKM_TRTG_UM` | `"0"` | Agent application absence flag — no agent involvement |
| `KEPCO_CUSTINFO_JUJU_DOI_UM` | `"1"` | Kansai Electric Power customer information consent presence — consent given |
| `ML_SEND_JGI_FLG` | `"0"` | Mail send exclusion flag — mail sending NOT excluded |
| `NEWCONST_BUKKEN_CD` | `"0"` | New building code — existing (non-new) building |
| `HUKKAT_ANKEN_FLG` | `"0"` | Reactivation inquiry flag — not a reactivation |
| `SAME_EQUIP_RE_MSKM_CD` | `"0"` | Same equipment re-application code — not a re-application |
| `KCN_STB_MSKM_CNT` | `"0"` | KCN STB application count — zero |
| `SVC_KEI_STAT_010` | `"010"` | Service contract status code — active/confirmed status (used in beforeShosa) |

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `handle` | `SessionHandle` | The database/business session handle that provides connection context for the SC (Service Component) invocation. It carries transaction scope, user authentication context, and database session information needed to execute the EKK0011D020 CBS call. |
| 2 | `param` | `IRequestParameterReadWrite` | The request parameter object that carries the entire model group and control map for the application workflow. It provides access to the parameter data map via `getData(fixedText)`, and receives the returned application numbers (`MSKM_NO`, `MSKM_DTL_NO`) via `scResultCheck` for downstream processing. Contains the operational date, user ID, and other request-scoped business data. |
| 3 | `fixedText` | `String` | A user-defined text string that serves as the key within the request parameter map. It identifies which section of the parameter map to work with (e.g., the application detail section). Acts as a namespace separator for multi-section request payloads. |

**Instance fields / external state read:**

| Field | Source | Business Description |
|-------|--------|---------------------|
| `SVC_KEI_LIST` | `paramMap` | Service contract list — contains the customer's active service contracts checked during the pre-investigation validation. Each entry has a `SVC_KEI_STAT` field that must equal `"010"` (active/confirmed) for the application to proceed. |

## 4. CRUD Operations / Called Services

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

The method primarily invokes the **EKK0011D020** CBS (application content approval registration) SC. Below is the classified view:

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| C | `setEKK0011D020` + `scCall.run` | `EKK0011D020SC` | `KK_T_MSKM` (Application master table), `KK_T_MSKM_DTL` (Application detail table) | Submits the application content for approval registration — creates a new application record with SYSID, application type 90021, operational date/timestamp, user ID, and detail line items including contact info, flags, and equipment fields. |
| R | `getEKK0011D020` | `EKK0011D020SC` | `KK_T_MSKM`, `KK_T_MSKM_DTL` | Retrieves the generated application number (MSKM_NO) and application detail number (MSKM_DTL_NO) from the SC response for downstream processing. |
| - | `scResultCheck` | `JKKAdInfChgMapperCC` | - | Checks the SC execution result code and throws an exception if the result indicates failure. |
| - | `beforeShosa` | `JKKUsePlaceAdInfUpdCC` | - | Validates pre-investigation readiness by checking if all service contracts have status `010`. Returns early if any contract has a non-active status. |
| R | `getOpeDateTimeStamp` | `JCCBPCommon` | - | Retrieves the current operational date and timestamp (YYYYMMDDHHMMSS format) for the application receipt timestamp field. |

**Detailed entity/DB table analysis for EKK0011D020:**

Based on the CBS message class `EKK0011D020CBSMsg` and field names, this SC interacts with:
- **Application Master (KK_T_MSKM)** — fields: `SYSID`, `MSKM_SBT_CD` (application type), `MSKM_YMD` (application date), `MSKM_UK_DTM` (application receipt timestamp), `MSKM_UK_TNT_USER_ID` (receipt assignee user ID), `MSKM_NO` (generated application number), `MSKM_RRKS_TELNO` (contact phone), `TTL_BUSINESS_CENTER_UK_NO` (central business center receipt number), `TTL_BUSINESS_MSKM_OPT_CD` (central business application option code), `MSKM_JSSIS_SBT_CD` (executor type code), `USE_SVC_KEIZK_SBT_CD` (service continuation type), `MSKM_ROUTE_SKBT_CD` (application path), `IDO_DIV` (movement division)
- **Application Detail (KK_T_MSKM_DTL)** — fields: `MSKMSHO_NO` (application document number), `WEB_UK_NO` (web receipt number), `MSKM_FORM_CD` (application form code), `MSKM_DTL_SBT_CD` (detail type code), `RRKS_KTAI_TELNO` (contact mobile phone), `RRKS_OFFC_NM` (contact business name), `DT_RRKS_TELNO` (daytime contact phone), `NEW_MSKM_SBT_CD` (new application type), `MSKM_OPTNTY_CD` (application option contract code), `ML_SEND_JGI_FLG` (mail send exclusion flag), `OP_SVC_HKTGI_UM` (option service continuation), `NEWCONST_BUKKEN_CD` (new building code), `MAP_TEMP_UM` (map attachment), `MANSION_ID` (mansion/condo ID), `MKM_UK_SBT_CD` (application receipt type code), `MSKM_DTL_NO` (generated detail number)

## 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: `setEKK0011D020` [C], `run` [-], `getEKK0011D020` [R], `scResultCheck` [-], `beforeShosa` [-], `getOpeDateTimeStamp` [R]

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Method: `JKKUsePlaceAdInfUpdCC.execute()` | `execute()` → `addMskm(handle, param, fixedText)` | `EKK0011D020SC [C] KK_T_MSKM, KK_T_MSKM_DTL` |

**Call chain details:**
- `JKKUsePlaceAdInfUpdCC.execute()` is the main entry point method of this class. It orchestrates the entire use-place application update workflow, calling `addMskm()` as part of the application submission process.
- `addMskm()` itself calls `beforeShosa()` for pre-investigation validation, then `setEKK0011D020`/`scCall.run`/`getEKK0011D020`/`scResultCheck` for the SC invocation.
- The terminal CRUD endpoint is **EKK0011D020SC [C]** — a **Create** operation on the application master and detail tables.

## 6. Per-Branch Detail Blocks

**Block 1** — IF (condition: `beforeShosa(paramMap)`) `(L846)`

> Pre-investigation readiness check. If any service contract's status is NOT `010` (active/confirmed), return early — the application cannot proceed without completing pre-investigation first.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `beforeShosa(paramMap)` // Returns true if pre-investigation is needed (some service contract status != `SVC_KEI_STAT_010`) |
| 2 | EXEC | `return;` // Early return — application defers until investigation completes [-> BEFORE_SHOSA check at L846] |

**Block 2** — TRY-CATCH `(L849)`

> Main application registration processing block. Creates condition map, builds detail list, invokes SC EKK0011D020, extracts and stores returned application numbers.

**Block 2.1** — Variable Declarations `(L853-L857)`

| # | Type | Code |
|---|------|------|
| 1 | SET | `JKKAdInfChgMapperCC mapper = JKKAdInfChgMapperCC.getInstance()` // Get mapper singleton [-> L854] |
| 2 | SET | `ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker()` // Instantiate SC request invoker [-> L856] |
| 3 | SET | `HashMap<String, Object> condMap = new HashMap<String, Object>()` // Initialize condition map [-> L857] |
| 4 | EXEC | `condMap.clear()` // Clear condition map [-> L858] |

**Block 2.2** — condMap Population `(L861-L919)`

> Populates the condition map with all header-level application fields. Most contact/preference fields default to empty strings; key populated fields include SYSID, application type, dates, user ID, and status codes.

| # | Type | Code |
|---|------|------|
| 1 | SET | `condMap.put(SYSID, paramMap.get(PARAM_KEY_SYSID))` // SYSID from parameter map [-> L861] |
| 2 | SET | `condMap.put(MSKM_SBT_CD, "90021")` // Application type code = "90021" [-> L863] |
| 3 | SET | `condMap.put(MSKMSHO_ARIV_YMD, paramMap.get(PARAM_KEY_OPE_DATE))` // Application document arrival date [-> L864] |
| 4 | SET | `condMap.put(MSKM_UK_DTM, JCCBPCommon.getOpeDateTimeStamp(null))` // Application receipt timestamp [-> L866] |
| 5 | SET | `condMap.put(MSKM_UK_TNT_USER_ID, paramMap.get("user_id"))` // Receipt assignee user ID [-> L868] |
| 6 | SET | `condMap.put(MSKM_YMD, paramMap.get(PARAM_KEY_OPE_DATE))` // Application date [-> L870] |
| 7 | SET | `condMap.put(TTL_BUSINESS_CENTER_UK_NO, "")` // Central business center receipt number [-> L872] |
| 8 | SET | `condMap.put(TTL_BUSINESS_MSKM_OPT_CD, "")` // Central business application option code [-> L874] |
| 9 | SET | `condMap.put(MSKM_RRKS_TELNO, "")` // Contact phone number [-> L876] |
| 10 | SET | `condMap.put(MSKM_JSSIS_SBT_CD, "")` // Executor type code [-> L878] |
| 11 | SET | `condMap.put(CUST_YOBO_JIKO, "")` // Customer preference items [-> L880] |
| 12 | SET | `condMap.put(TEL_RRK_KIBOD_SBT_CD, "")` // Contact preference day type code [-> L882] |
| 13 | SET | `condMap.put(TEL_RRK_KIBO_TIME_CD, "")` // Contact preference time zone code [-> L884] |
| 14 | SET | `condMap.put(TAKCHO_KIBOD_SBT_CD, "")` // Home survey preference day type code [-> L886] |
| 15 | SET | `condMap.put(TAKCHO_KIBO_TIME_CD, "")` // Home survey preference time zone code [-> L888] |
| 16 | SET | `condMap.put(KARI_MSKM_FLG, "")` // Temporary application flag [-> L890] |
| 17 | SET | `condMap.put(REFERER, "")` // Referrer [-> L892] |
| 18 | SET | `condMap.put(KEPCO_CUSTINFO_JUJU_DOI_UM, "1")` // Kansai Electric Power consent given [-> L894] |
| 19 | SET | `condMap.put(SHOSA_BF_RRK_JIKO_YH, "")` // Pre-investigation contact item necessity [-> L896] |
| 20 | SET | `condMap.put(SHOSA_BF_RRK_JIKO, "")` // Pre-investigation contact items [-> L898] |
| 21 | SET | `condMap.put(USE_SVC_KEIZK_SBT_CD, "")` // Service continuation type code [-> L900] |
| 22 | SET | `condMap.put(CONSMBSN_MSKM_STAT_SKBT_CD, "03")` // Subscription status = "03" [-> L902] |
| 23 | SET | `condMap.put(UK_TNTSHA_SKBT_CD, "")` // Receipt assignee identification code [-> L904] |
| 24 | SET | `condMap.put(KOJI_REQ_INFO_RRK_JIKO, "")` // Work request info contact items [-> L906] |
| 25 | SET | `condMap.put(MSKM_ROUTE_SKBT_CD, "1")` // Application path = "1" [-> L908] |
| 26 | SET | `condMap.put(AGNT_MSKM_TRTG_UM, "0")` // Agent application absence = "0" [-> L910] |
| 27 | SET | `condMap.put(IDO_DIV, paramMap.get(PARAM_KEY_IDO_DIV))` // Movement division from parameter map [-> L912] |

**Block 2.3** — Detail List Initialization `(L915-L917)`

> Creates the application detail list containing a single detail map, all fields initialized as empty strings or zero defaults.

| # | Type | Code |
|---|------|------|
| 1 | SET | `ArrayList<HashMap<String,Object>> mskmDtlList = new ArrayList<HashMap<String,Object>>()` [-> L915] |
| 2 | SET | `HashMap<String, Object> mskmDtlMap = new HashMap<String, Object>()` [-> L916] |
| 3 | EXEC | `mskmDtlList.add(mskmDtlMap)` [-> L917] |

**Block 2.4** — mskmDtlMap Population `(L921-L987)`

> Populates the detail map with 35+ application detail fields. Most are empty string defaults; key default values: `ML_SEND_JGI_FLG="0"`, `NEWCONST_BUKKEN_CD="0"`, `HUKKAT_ANKEN_FLG="0"`, `SAME_EQUIP_RE_MSKM_CD="0"`, `KCN_STB_MSKM_CNT="0"`.

| # | Type | Code |
|---|------|------|
| 1 | SET | `mskmDtlMap.put(MSKMSHO_NO, "")` // Application document number [-> L921] |
| 2 | SET | `mskmDtlMap.put(WEB_UK_NO, "")` // Web receipt number [-> L923] |
| 3 | SET | `mskmDtlMap.put(MSKM_FORM_CD, "")` // Application form code [-> L925] |
| 4 | SET | `mskmDtlMap.put(MSKM_DTL_SBT_CD, "")` // Application detail type code [-> L927] |
| 5 | SET | `mskmDtlMap.put(RRKS_KTAI_TELNO, "")` // Contact mobile phone [-> L929] |
| 6 | SET | `mskmDtlMap.put(RRKS_OFFC_NM, "")` // Contact business name [-> L931] |
| 7 | SET | `mskmDtlMap.put(DT_RRKS_TELNO, "")` // Daytime contact phone [-> L933] |
| 8 | SET | `mskmDtlMap.put(NEW_MSKM_SBT_CD, "")` // New application type code [-> L935] |
| 9 | SET | `mskmDtlMap.put(MSKM_OPTNTY_CD, "")` // Application option contract code [-> L937] |
| 10 | SET | `mskmDtlMap.put(TAKCHO_KIBO_APO_KIGEN_YMD, "")` // Home survey preference deadline date [-> L939] |
| 11 | SET | `mskmDtlMap.put(KOJI_APO_RRKS_SHITEI_CD, "")` // Work preference contact designation code [-> L941] |
| 12 | SET | `mskmDtlMap.put(KOJI_APO_RRKS_TELNO, "")` // Work preference contact phone [-> L943] |
| 13 | SET | `mskmDtlMap.put(RRK_JIKO_ADD_DTM, "")` // Contact items registration timestamp [-> L945] |
| 14 | SET | `mskmDtlMap.put(MSKM_RRKS_MLAD, "")` // Application contact email address [-> L947] |
| 15 | SET | `mskmDtlMap.put(KOJI_PRG_TCHI_MLAD, "")` // Work progress notification email [-> L949] |
| 16 | SET | `mskmDtlMap.put(RRK_JIKO, "")` // Contact items [-> L951] |
| 17 | SET | `mskmDtlMap.put(KJSC_TCH_KTAI_MLAD, "")` // Work progress notification mobile email [-> L953] |
| 18 | SET | `mskmDtlMap.put(ML_SEND_JGI_FLG, "0")` // Mail send exclusion flag = "0" [-> L955] |
| 19 | SET | `mskmDtlMap.put(ML_SEND_JGI_RSN_MEMO, "")` // Mail send exclusion reason memo [-> L957] |
| 20 | SET | `mskmDtlMap.put(BMP_MSKM_RRKS_TLN, "")` // Number-plate application contact phone [-> L959] |
| 21 | SET | `mskmDtlMap.put(OP_SVC_HKTGI_UM, "0")` // Option service continuation = "0" [-> L961] |
| 22 | SET | `mskmDtlMap.put(DSL_ATICLE_SOHU_KIBO_UM, "")` // Contract document send preference [-> L963] |
| 23 | SET | `mskmDtlMap.put(RRK_WAY_HOKI, "")` // Contact method supplement [-> L965] |
| 24 | SET | `mskmDtlMap.put(NEWCONST_BUKKEN_CD, "0")` // New building code = "0" [-> L967] |
| 25 | SET | `mskmDtlMap.put(HUKKAT_ANKEN_FLG, "0")` // Reactivation inquiry flag = "0" [-> L969] |
| 26 | SET | `mskmDtlMap.put(SAME_EQUIP_RE_MSKM_CD, "0")` // Same equipment re-application = "0" [-> L971] |
| 27 | SET | `mskmDtlMap.put(HNIN_CFM_ATICLE_SBT_CD, "")` // Identity confirmation document type [-> L973] |
| 28 | SET | `mskmDtlMap.put(MSKMSHO_SBT_CD, "")` // Application document type code [-> L975] |
| 29 | SET | `mskmDtlMap.put(KEI_HUKA_CD, "")` // Contract addition code [-> L977] |
| 30 | SET | `mskmDtlMap.put(MAP_TEMP_UM, "")` // Map attachment presence [-> L979] |
| 31 | SET | `mskmDtlMap.put(KCN_STB_MSKM_CNT, "0")` // KCN STB application count = "0" [-> L981] |
| 32 | SET | `mskmDtlMap.put(KCN_STB_KIND_CD, "")` // KCN STB type code [-> L983] |
| 33 | SET | `mskmDtlMap.put(MANSSBSYS_RNKI_YO_KIJIRAN, "")` // Mansion system linkage remarks [-> L985] |
| 34 | SET | `mskmDtlMap.put(MANSION_ID, "")` // Mansion/condo ID [-> L987] |
| 35 | SET | `mskmDtlMap.put(CATID, "")` // CAT-ID [-> L987] |
| 36 | SET | `mskmDtlMap.put(MKM_UK_SBT_CD, "")` // Application receipt type code [-> L987] |
| 37 | SET | `mskmDtlMap.put(MSKMSHO_TRAT_IF_TNTSHA_NM, "")` // Application document handler name [-> L987] |
| 38 | SET | `mskmDtlMap.put(MSKMSHO_TRAT_IF_TELNO, "")` // Application document handler phone [-> L987] |
| 39 | SET | `mskmDtlMap.put(MSKMSHO_DTL_NO, "")` // Application document detail number [-> L987] |
| 40 | SET | `mskmDtlMap.put(HNIN_CFM_ATICLE_NM, "")` // Identity confirmation document name [-> L987] |
| 41 | SET | `mskmDtlMap.put(WRIB_AUTO_APLY_TG_GAI_FLG, "0")` // Discount auto-apply target flag = "0" [-> L987] |

**Block 2.5** — SC Invocation `(L993-L997)`

> Executes the SC EKK0011D020 for application content approval registration in four steps:
> 1. `setEKK0011D020` — Builds the request map from parameters, condMap, and detail list
> 2. `scCall.run` — Executes the CBS call against the central system
> 3. `getEKK0011D020` — Extracts the response into a result map
> 4. `scResultCheck` — Validates the SC result code

| # | Type | Code |
|---|------|------|
| 1 | SET | `reqMap = mapper.setEKK0011D020(param, fixedText, condMap, mskmDtlList)` // Build and set request [-> L993] |
| 2 | SET | `resMap = scCall.run(reqMap, handle)` // Execute SC call [-> L994] |
| 3 | SET | `kk0011_d020_map = mapper.getEKK0011D020(param, fixedText, resMap)` // Extract response [-> L995] |
| 4 | EXEC | `mapper.scResultCheck(param)` // Validate SC result [-> L996] |

**Block 2.6** — Result Extraction and Storage `(L999-L1007)`

> Extracts the generated application numbers from the SC response and stores them back in the parameter map for downstream processing.

| # | Type | Code |
|---|------|------|
| 1 | SET | `paramMap.put(PARAM_KEY_MSKM_NO, kk0011_d020_map.get(MSKM_NO))` // Store application number [-> L999] |
| 2 | SET | `mskmDtlListRet = kk0011_d020_map.get(EKK0011D020CBSMSG1LIST)` // Get returned detail list [-> L1000] |
| 3 | IF | `mskmDtlListRet != null && !mskmDtlListRet.isEmpty()` [-> L1001] |

**Block 2.6.1** — IF Nested: Detail List Not Empty `(L1001-L1005)`

> When the SC returns a non-empty detail list, extract the detail number.

| # | Type | Code |
|---|------|------|
| 1 | SET | `mskmDtlMapRet = mskmDtlListRet.get(0)` // Get first detail record [-> L1002] |
| 2 | SET | `paramMap.put(PARAM_KEY_MSKM_DTL_NO, mskmDtlMapRet.get(MSKM_DTL_NO))` // Store application detail number [-> L1004] |

**Block 3** — CATCH `(L1008-L1011)`

> Catches any Exception during SC execution. Maps the exception cause to `CCException` with error result code `ERR_STR_RESULT_CD`, then re-throws it.

| # | Type | Code |
|---|------|------|
| 1 | CATCH | `catch(Exception ex)` [-> L1008] |
| 2 | RETURN | `throw new CCException(JKKAdInfChgConstCC.ERR_STR_RESULT_CD, ex.getCause())` // Map to CCException [-> L1010] |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|-----------------|
| `addMskm` | Method | Application content approval registration — submits a customer application for approval |
| `mskm` | Field prefix | 申込 (Shinnyou) — Application/Registration; refers to the act of submitting a service application |
| `MSKM_SBT_CD` | Field | Application type code — classifies the type of application; `"90021"` indicates new application submission |
| `MSKM_NO` | Field | Application number — the unique system-generated identifier for the application record |
| `MSKM_DTL_NO` | Field | Application detail number — the unique identifier for the application detail line item |
| `MSKM_DTL_SBT_CD` | Field | Application detail type code — classifies the detail line item type |
| `MSKM_YMD` | Field | Application date — the date of the application in YYYYMMDD format |
| `MSKM_UK_DTM` | Field | Application receipt timestamp — the date and time the application was received (YYYYMMDDHHMMSS) |
| `MSKM_UK_TNT_USER_ID` | Field | Application receipt assignee user ID — the user ID of the person responsible for processing the receipt |
| `MSKMSHO_NO` | Field | Application document number — the unique number assigned to the application document |
| `MSKMSHO_SBT_CD` | Field | Application document type code — classifies the type of application document |
| `MSKMSHO_ARIV_YMD` | Field | Application document arrival date — the date the application document was received |
| `MSKM_ROUTE_SKBT_CD` | Field | Application path identification code — identifies how the application was submitted; `"1"` = direct route |
| `CONSMBSN_MSKM_STAT_SKBT_CD` | Field | Subscription business application status identification code — the status of the subscription application |
| `IDO_DIV` | Field | Movement division — identifies the type of location change/move being applied for |
| `AGNT_MSKM_TRTG_UM` | Field | Agent application absence flag — whether an agent is involved; `"0"` = no agent |
| `KEPCO_CUSTINFO_JUJU_DOI_UM` | Field | Kansai Electric Power customer information consent presence — whether the customer consents to share information with Kansai Electric Power; `"1"` = consent given |
| `SVC_KEI_STAT_010` | Constant | Service contract status `"010"` — indicates an active/confirmed service contract |
| `SVC_KEI_LIST` | Field | Service contract list — the list of service contracts belonging to the customer |
| `beforeShosa` | Method | Pre-investigation check — validates that all service contracts are in confirmed status before proceeding |
| `照会前` | Japanese term | Pre-investigation — a screening step that must be completed before application submission can proceed |
| `申込` | Japanese term | Application/Registration — the core business concept of submitting a service application |
| `EKK0011D020SC` | SC Code | Application content approval registration SC (申込内容承認登録SC) — the CBS that processes the application submission |
| SC | Acronym | Service Component — the middleware layer for invoking Central Business System functions |
| CBS | Acronym | Central Business System — the core business processing system |
| `KK_T_MSKM` | DB Entity | Application master table — stores application header records |
| `KK_T_MSKM_DTL` | DB Entity | Application detail table — stores application detail line items |
| `SessionHandle` | Type | Database/business session handle — provides connection and transaction context for SC invocations |
| `IRequestParameterReadWrite` | Type | Request parameter interface — carries the model group, control map, and business data for the request |
| `ServiceComponentRequestInvoker` | Class | SC request invoker — executes Service Component calls against the central business system |
| `JKKAdInfChgMapperCC` | Class | Application information change mapper — maps request/response parameters to/from SC call structures |
| `JKKAdInfChgConstCC` | Class | Application information change constants — defines parameter keys, constant values, and error codes |
| `JCCBPCommon.getOpeDateTimeStamp` | Method | Gets operational date and timestamp — returns current system timestamp in YYYYMMDDHHMMSS format |
| `NEWCONST_BUKKEN_CD` | Field | New building code — indicates whether the application is for a new building; `"0"` = existing building |
| `HUKKAT_ANKEN_FLG` | Field | Reactivation inquiry flag — indicates if this is a reactivation request; `"0"` = not reactivation |
| `SAME_EQUIP_RE_MSKM_CD` | Field | Same equipment re-application code — indicates if the same equipment is being re-applied; `"0"` = not re-application |
| `ML_SEND_JGI_FLG` | Field | Mail send exclusion flag — whether email notifications are excluded; `"0"` = email sending NOT excluded |
| `OP_SVC_HKTGI_UM` | Field | Option service continuation flag — whether option services are continued; `"0"` = not continued |
| `KCN_STB_MSKM_CNT` | Field | KCN STB application count — number of KCN-STB equipment units; `"0"` = none |
| `KKSV` | Screen prefix | K-Opticom Screen — screen class naming convention for K-Opticom system UI screens |
| `KKSV0004` | Screen | Example screen that may call this method (inferred from caller chain pattern) |
| FTTH | Business term | Fiber To The Home — fiber-optic internet service offered by K-Opticom |
| `CCException` | Exception | Common Component Exception — the standard exception type for SC/common component errors |
