# Business Logic — JKKKikiIchiranIkkatsuCC.isExecKikiIchiranKkCreate() [421 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `com.fujitsu.futurity.bp.custom.common.JKKKikiIchiranIkkatsuCC` |
| Layer | CC/Common Component (Controller-layer cross-cutting component) |
| Module | `common` (Package: `com.fujitsu.futurity.bp.custom.common`) |

## 1. Role

### JKKKikiIchiranIkkatsuCC.isExecKikiIchiranKkCreate()

This method serves as the orchestration entry point for registering one or more home equipment devices (such as routers, set-top boxes, BCAS cards, and CCAS cards) during a bulk device list registration screen. It is invoked from `JKKKikiIchiranIkkatsuCC.isScrnCommonExec()` as part of a larger common execution loop that processes multiple items from an ichiran (list) processing map.

The method implements a **mapping-and-delegation** design pattern. First, it gathers a comprehensive set of fields from multiple sources (screen item maps, message maps, and temporary data stores) and consolidates them into a single `outMap`. This populated map serves as the complete input payload for device registration. Then, it instantiates a dedicated `JKKKikiIchiranKkCreateCC` object and delegates the actual registration logic to its `execKikiIchiranKikiCreate()` method.

After the delegated create operation completes, the method runs a `finally` block that captures error states (including smartlink security pack optional operations error codes, status, and custom error message flags), propagates address-check warning flags to the message map for screen-level display, and handles post-registration data updates for router (TAKINO_ROUTAR) and home gateway (HGW) service types. It always returns `true`, indicating successful execution of the registration pipeline, even if validation errors occurred (errors are recorded in the output maps rather than causing a `false` return).

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["isExecKikiIchiranKkCreate start"])
    INIT_CC["param.setData JKK_KIKIICHIRAN_KKCREATE_CC new HashMap"]
    GET_CCMSG["ccMsg = param.getData dataMapKey"]
    GET_OUTMAP["outMap = param.getData JKK_KIKIICHIRAN_KKCREATE_CC"]
    GET_SCRNMAP["scrnItemMap = ichiranShoriMap.get SHORI_LIST_SCRN_PARAM"]
    POP_OUTMAP_1["Populate outMap with device/service fields:
func_code, check_scrn_id, svc_kei_data, svc_kei_no,
taknkiki_model_cd, unyo_ymd, haiso_stat, haiso_div_cd,
hambai_sbt, kk_seizo_no, stb/bcas/ccas_kktk_svc_cd,
soko_info, mac_ad, tk_sbt_cd variants, kktk_sbt_cd,
haiso_way_cd, ido_div, kiki_sofu_* address fields,
kiki_souryo_um, huka_info, tv_course, ido_rsn_cd,
unyo_dtm, keiyaku_ymd"]
    GET_HAISO_REQ["haiso_req_shitei_ymd = getNullToStr kkshka_sti_ymd"]
    GET_TK_MODEL["tkModelCd = getNullToStr taknkiki_model_cd_edit"]
    CHECK_KAP["isKapKiki temporaryData, tkModelCd"]
    KAP_TRUE["isKapKiki = true (capable home equipment)"]
    KAP_FALSE["isKapKiki = false"]
    KAP_GET_SKCD["svcStaJiHisJokyoSkcd = getNullToStr KAP_HAISO_SVC_STA_HIS_JOK_SKCD"]
    KAP_CHECK_OK["svcStaJiHisJokyoSkcd = SVC_STAJI_HIS_JOKYO_SKCD_OK = 2"]
    KAP_SET_YMD["haiso_req_shitei_ymd = getNullToStr KAP_HAISO_HAISO_REQ_SHITEI_YMD"]
    CHECK_TABLET_CRADLE["TAKNKIKI_SBT_CD_TABLET_CRADLE = L1 equals tk_sbt_cd_edit"]
    TABLET_GET_SKCD["svcStaJiHisJokyoSkcd = KAP_HAISO_SVC_STA_HIS_JOK_SKCD"]
    TABLET_CHECK_OK["svcStaJiHisJokyoSkcd = 2"]
    TABLET_SET_YMD["haiso_req_shitei_ymd = KAP_HAISO_HAISO_REQ_SHITEI_YMD"]
    CHECK_HAISO_WAY["isHaisoWayHantei delivery method check"]
    HAISO_WAY_FALSE["isHaisoWayHantei = false"]
    HAISO_SET_SKCD["svcStaJiHisJokyoSkcd = SVC_JOKYO_SKCD_HAISO"]
    POP_OUTMAP_2["Populate outMap with remaining fields:
svcStaJiHisJokyoSkcd, haiso_req_shitei_ymd, seiky_kei_no,
kap_ins_judge, smartlink_ins_judge, kap_plan_cd,\kap_pay_zan_cnt, tnmt_buy_uk_tntsha_nm, kriplace_skcd,
ichiranIndex, koji_af_shka_um,oji_comp_haiso_um,
kojiak_sbt_cd, kojiak_no variants, haiso_saksei_zumi_flg,
kktk_svc_cd, router/VA append-dsl fields, add/stop_sod_send_ymd,
terminal supplement fields, kiki_opt_svc_kei_shori_kbn,
adchg_mskm_dtl_no, fp_dsl_um, vb_dsl_um, takinortTrnPtn,
upd_user fields, rt_new_pcrs_aply_flg, gene_add_dtm_rsv,
kktk_svc_kei_stat_rsv, mdl_no_shitei_add, svc_kei_kaisen_ucwk_no,
tnkj_kibo_apo_kigen_ymd, koji_apo_rrks_* fields"]
    CREATE_INSTANCE["JKKKikiIchiranKkCreateCC jKkKCreateCC = new JKKKikiIchiranKkCreateCC"]
    TRY_EXEC["TRY: jKkKCreateCC.execKikiIchiranKikiCreate handle, param, JKK_KIKIICHIRAN_KKCREATE_CC, scrnItemMap, ccOutputMap"]
    FINALLY_BLOCK["FINALLY block"]
    REFETCH_OUTMAP["outMap = param.getData JKK_KIKIICHIRAN_KKCREATE_CC"]
    COPY_NW_DATA["Copy kktk_svc_kei_no_nw, kiki_chg_no_nw, taknkiki_sbt_cd_nw to ccMsg"]
    COPY_ERR["ccMsg.put err_cd, status, CCMG_ERR_FLG, CCMG_ERR_MSG from outMap"]
    COPY_AD_CHK["Copy AD_CHK_ERR_KEY from outMap to ccMsg"]
    ROUTER_DATA["If kk_tk_svc_cd = C024 or C025: copy pre/post router/VA opt svc data to temporaryData"]
    TEL_RELATION["If telRelationUpdKikiMap != null: getKikiTkSvcKeiEditData and set TEL_RELATION_UPD_KIKI_TAKINOADD_TO"]
    REMOVE_DATA["param.removeData JKK_KIKIICHIRAN_KKCREATE_CC"]
    RETURN_TRUE["return true"]
    FINISH(["isExecKikiIchiranKkCreate end"])

    START --> INIT_CC --> GET_CCMSG --> GET_OUTMAP --> GET_SCRNMAP --> POP_OUTMAP_1
    POP_OUTMAP_1 --> GET_HAISO_REQ --> GET_TK_MODEL --> CHECK_KAP
    CHECK_KAP -->|true| KAP_TRUE
    CHECK_KAP -->|false| KAP_FALSE
    KAP_TRUE --> KAP_GET_SKCD
    KAP_GET_SKCD --> KAP_CHECK_OK
    KAP_CHECK_OK -->|equals 2| KAP_SET_YMD
    KAP_CHECK_OK -->|not equals 2| CHECK_TABLET_CRADLE
    KAP_SET_YMD --> CHECK_TABLET_CRADLE
    KAP_FALSE --> CHECK_TABLET_CRADLE
    CHECK_TABLET_CRADLE -->|equals L1| TABLET_GET_SKCD
    CHECK_TABLET_CRADLE -->|not equals L1| CHECK_HAISO_WAY
    TABLET_GET_SKCD --> TABLET_CHECK_OK
    TABLET_CHECK_OK -->|equals 2| TABLET_SET_YMD
    TABLET_CHECK_OK -->|not equals 2| CHECK_HAISO_WAY
    TABLET_SET_YMD --> CHECK_HAISO_WAY
    CHECK_HAISO_WAY -->|false| HAISO_WAY_FALSE
    CHECK_HAISO_WAY -->|true| POP_OUTMAP_2
    HAISO_WAY_FALSE --> HAISO_SET_SKCD --> POP_OUTMAP_2
    POP_OUTMAP_2 --> CREATE_INSTANCE --> TRY_EXEC --> FINALLY_BLOCK
    FINALLY_BLOCK --> REFETCH_OUTMAP --> COPY_NW_DATA --> COPY_ERR --> COPY_AD_CHK
    COPY_AD_CHK --> ROUTER_DATA
    ROUTER_DATA --> TEL_RELATION --> REMOVE_DATA --> RETURN_TRUE --> FINISH
```

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `handle` | `SessionHandle` | Database session handle used to manage the transactional context for service component invocations during device registration. |
| 2 | `scCall` | `ServiceComponentRequestInvoker` | Service component invocation bridge for calling back-end business logic (service components) that perform actual data reads/writes to the database. |
| 3 | `param` | `IRequestParameterReadWrite` | Request/response parameter carrier that holds the input map (`dataMapKey`) for this screen context and an output map keyed by `JKK_KIKIICHIRAN_KKCREATE_CC` for the device creation results. |
| 4 | `dataMapKey` | `String` | The map key within `param` that references the current screen's message map (`ccMsg`), containing fields like `svc_kei_no`, `func_code`, `ido_div`, and delivery address information. |
| 5 | `temporaryData` | `HashMap<String, Object>` | A transient data store shared across the screen's processing pipeline. Contains service contract template data (`TEMPLATE_ID_EKK0081A010`), capability flags (`KAP_HAISO_SVC_STA_HIS_JOK_SKCD`), optional service processing type (`KIKI_OPT_SVC_KEI_SHORI_KBN`), and post-registration router/VA optional service data. |
| 6 | `ichiranShoriMap` | `HashMap<String, Object>` | The ichiran (list) processing map that holds the bulk-processing context. Includes `SHORI_LIST_SCRN_PARAM` (the screen item map for the current list row) and `SHORI_LIST_KIKILIST_BF` (pre-update device service info). |
| 7 | `ichiranIndex` | `int` | The index within the work-area's `IchiranShoriList`, used to identify which specific row in a bulk-list registration is being processed. Stored as a string in `outMap` for downstream reference. |
| 8 | `ccOutputMap` | `HashMap<String, Object>` | Output data map provided by the calling method (added in v5.05.00 / ANK-2985), used for cross-screen communication and pass-through of registration results. |

### Instance Fields Read

| Field | Type | Business Description |
|-------|------|---------------------|
| `SHORI_LIST_SCRN_PARAM` | `String` | Constant `"scrnIchiranParam"` — key to retrieve the screen item map from the ichiran processing map. |

## 4. CRUD Operations / Called Services

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

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| - | `JACBatCommon.isNull` | JACBatCommon | - | Calls `isNull` for null-checking utility |
| - | `JACbatRknBusinessUtil.isNull` | JACbatRknBusiness | - | Calls `isNull` for null-checking utility |
| - | `JCHbatSeikyKaknoBusinessUtil.isNull` | JCHbatSeikyKaknoBusiness | - | Calls `isNull` for null-checking utility |
| - | `JBSbatACInsentetivePrcInfoSaksei.isNull` | JBSbatACInsentetivePrcInfoSaksei | - | Calls `isNull` for null-checking utility |
| - | `JBSbatAKCHSeikyYsoInfMake.isNull` | JBSbatAKCHSeikyYsoInfMake | - | Calls `isNull` for null-checking utility |
| - | `JBSbatAKKshkmRsltInfoTukiawsday.setData` | JBSbatAKKshkmRsltInfoTukiawsday | - | Calls `setData` for installment result data |
| - | `JBSbatAKKshkmRsltInfoTukiaws.setData` | JBSbatAKKshkmRsltInfoTukiaws | - | Calls `setData` for installment result data |
| - | `JBSbatAKKshkmRsltInfoTukiawsRealSkh.setData` | JBSbatAKKshkmRsltInfoTukiawsRealSkh | - | Calls `setData` for installment result real schedule |
| - | `JBSbatAKKshkmRsltInfTkCvsNCnsl.setData` | JBSbatAKKshkmRsltInfTkCvsNCnsl | - | Calls `setData` for installment result CV/consultation |
| R | `JBSbatDKNyukaFinAdd.getData` | JBSbatDKNyukaFinAdd | - | Calls `getData` to read delivery-related final data |
| - | `JBSbatKKGetCTITelno.setData` | JBSbatKKGetCTITelno | - | Calls `setData` for CIT telephone number data |
| R | `JFUeoTelOpTransferCC.getData` | JFUeoTelOpTransferCC | - | Calls `getData` for E&O telephone option transfer data |
| R | `JFUTransferCC.getData` | JFUTransferCC | - | Calls `getData` for transfer data |
| R | `JFUTransferListToListCC.getData` | JFUTransferListToListCC | - | Calls `getData` for transfer list-to-list data |
| R | `JKKKikiIchiranIkkatsuCC.getAdchgMskmDtlNo` | JKKKikiIchiranIkkatsuCC | - | Calls `getAdchgMskmDtlNo` to retrieve additional charge masking detail number |
| R | `JKKKikiIchiranIkkatsuCC.getKikiTkSvcKeiEditData` | JKKKikiIchiranIkkatsuCC | - | Calls `getKikiTkSvcKeiEditData` to read home equipment provision service contract edit data |
| R | `JKKKikiIchiranIkkatsuCC.getNullToStr` | JKKKikiIchiranIkkatsuCC | - | Calls `getNullToStr` — null-to-empty-string conversion utility |
| - | `JKKKikiIchiranIkkatsuCC.isHaisoWayHantei` | JKKKikiIchiranIkkatsuCC | - | Calls `isHaisoWayHantei` for delivery method determination logic |
| - | `JKKKikiIchiranIkkatsuCC.isKapKiki` | JKKKikiIchiranIkkatsuCC | - | Calls `isKapKiki` to check if the home equipment supports supplementary functions (capable equipment) |
| C | `JKKKikiIchiranKkCreateCC.execKikiIchiranKikiCreate` | JKKKikiIchiranKkCreateCC | - | Delegates to device registration creation CC — creates one or more home equipment service contract records |
| R | `KKW12701SFLogic.getData` | KKW12701SFLogic | - | Calls `getData` for screen-specific logic data |

### Classification Notes

- **C (Create)**: `execKikiIchiranKikiCreate` is the primary create operation that registers home equipment devices under the active service contract.
- **R (Read)**: `getAdchgMskmDtlNo`, `getKikiTkSvcKeiEditData`, `getNullToStr`, and the various `getData` calls from service components are read operations for pre-processing and post-processing data retrieval.
- **Utility calls (-)**: `isNull`, `isHaisoWayHantei`, `isKapKiki`, `setData` are utility or setter calls that do not perform direct CRUD against persistent storage.

## 5. Dependency Trace

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

No screen/batch entry points found within 8 hops. Direct callers found: 2 methods.
Terminal operations from this method: `getKikiTkSvcKeiEditData` [R], `getNullToStr` [R], `getNullToStr` [R], `getNullToStr` [R], `isNull` [-], `isNull` [-], `isNull` [-], `isNull` [-], `isNull` [-], `isNull` [-], `isNull` [-], `isNull` [-], `isNull` [-], `isNull` [-], `getData` [R], `getData` [R], `getData` [R], `getData` [R], `getData` [R], `execKikiIchiranKikiCreate` [C]

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Screen:KKSV0004 (Device List Registration Screen) | `isScrnCommonExec` -> `isExecKikiIchiranKkCreate` | `execKikiIchiranKikiCreate [C] Home Equipment Device Registration`, `getKikiTkSvcKeiEditData [R] Service Contract Edit Data`, `getNullToStr [R] String Utility`, `getAdchgMskmDtlNo [R] Additional Charge Masking Detail` |

### Caller Details

`isScrnCommonExec()` is the common execution dispatcher in `JKKKikiIchiranIkkatsuCC` that routes bulk-list screen processing to the appropriate handler method based on the processing type (registration, change, cancellation, equipment type change). It calls `isExecKikiIchiranKkCreate()` to handle device registration operations for each row in the device list being processed in bulk.

## 6. Per-Branch Detail Blocks

### Block 1 — INITIALIZATION (L8255)

> Initialize the output map containers for this CC's data flow.

| # | Type | Code |
|---|------|------|
| 1 | SET | `param.setData(JKK_KIKIICHIRAN_KKCREATE_CC, new HashMap<String, Object>())` |
| 2 | SET | `ccMsg = (HashMap<String, Object>) param.getData(dataMapKey)` |
| 3 | SET | `outMap = (HashMap<String, Object>) param.getData(JKK_KIKIICHIRAN_KKCREATE_CC)` |
| 4 | SET | `scrnItemMap = (HashMap<String, Object>) ichiranShoriMap.get(SHORI_LIST_SCRN_PARAM)` |

### Block 2 — POPULATE OUTMAP: DEVICE/SERVICE CORE FIELDS (L8266–L8519)

> Transfer business data from `ccMsg` and `scrnItemMap` into `outMap` as key-value pairs for the device creation CC.

| # | Type | Code |
|---|------|------|
| 1 | SET | `outMap.put("func_code", ccMsg.get("func_code"))` — Function code [-> from ccMsg] |
| 2 | SET | `outMap.put("check_scrn_id", SCRN_ID_KKW033)` — Check screen ID [-> "KKW033"] |
| 3 | SET | `outMap.put("svc_kei_data", temporaryData.get(TEMPLATE_ID_EKK0081A010))` — Service contract data [-> from temporaryData] |
| 4 | SET | `outMap.put("svc_kei_no", ccMsg.get("svc_kei_no"))` — Service contract number |
| 5 | SET | `outMap.put("taknkiki_model_cd", scrnItemMap.get("taknkiki_model_cd_edit"))` — Home equipment model code |
| 6 | SET | `outMap.put("unyo_ymd", ccMsg.get("unyo_ymd"))` — Operation date (YYYYMMDD) |
| 7 | SET | `outMap.put("haiso_stat", scrnItemMap.get("haiso_stat_bf"))` — Delivery status (before update) |
| 8 | SET | `outMap.put("haiso_div_cd", scrnItemMap.get("haiso_div_edit"))` — Delivery division code |
| 9 | SET | `outMap.put("hambai_sbt", scrnItemMap.get("hambai_sbt_cd_edit"))` — Sales subtype code |
| 10 | SET | `outMap.put("kk_seizo_no", scrnItemMap.get("kiki_seizo_no_edit"))` — Equipment serial number |
| 11 | SET | `outMap.put("stb_kktk_svc_cd", ccMsg.get("stb_kktk_svc_cd"))` — STB home equipment provision service code |
| 12 | SET | `outMap.put("bcas_kktk_svc_cd", ccMsg.get("bcas_kktk_svc_cd"))` — BCAS card home equipment provision service code |
| 13 | SET | `outMap.put("ccas_kktk_svc_cd", ccMsg.get("ccas_kktk_svc_cd"))` — CCAS card home equipment provision service code |
| 14 | SET | `outMap.put("soko_info", scrnItemMap.get("kiki_hkat_shitei_soko_cd_edit"))` — Building information code |
| 15 | SET | `outMap.put("mac_ad", scrnItemMap.get("macad_edit"))` — MAC address |
| 16 | SET | `outMap.put("tk_sbt_cd", scrnItemMap.get("tk_sbt_cd_edit"))` — Home equipment subtype code |
| 17 | SET | `outMap.put("tk_sbt_cd_ccas", ccMsg.get("tk_sbt_cd_ccas"))` — CCAS home equipment subtype code |
| 18 | SET | `outMap.put("tk_sbt_cd_bcas", ccMsg.get("tk_sbt_cd_bcas"))` — BCAS home equipment subtype code |
| 19 | SET | `outMap.put("tk_sbt_cd_stb", ccMsg.get("tk_sbt_cd_stb"))` — STB home equipment subtype code |
| 20 | SET | `outMap.put("kktk_sbt_cd", scrnItemMap.get("kktk_sbt_cd_edit"))` — Equipment provision subtype code |
| 21 | SET | `outMap.put("haiso_way_cd", scrnItemMap.get("haiso_way_cd_edit"))` — Delivery method division code |
| 22 | SET | `outMap.put("ido_div", ccMsg.get("ido_div"))` — Displacement division code |
| 23 | SET | `outMap.put("kiki_sofu_pcd", ccMsg.get("kiki_sofu_pcd"))` — Postal code (equipment delivery address) |
| 24 | SET | `outMap.put("kiki_shs_ad_man_input_flg", ccMsg.get("kiki_shs_ad_man_input_flg"))` — Delivery address manual input flag |
| 25 | SET | `outMap.put("kiki_sofu_ad_cd", ccMsg.get("kiki_sofu_ad_cd"))` — Address code (equipment delivery address) |
| 26 | SET | `outMap.put("kiki_sofu_state", ccMsg.get("kiki_sofu_state"))` — Prefecture (equipment delivery address) |
| 27 | SET | `outMap.put("kiki_sofu_city", ccMsg.get("kiki_sofu_city"))` — City/town/village (equipment delivery address) |
| 28 | SET | `outMap.put("kiki_sofu_oaztsu", ccMsg.get("kiki_sofu_oaztsu"))` — Oaza/Street name (equipment delivery address) |
| 29 | SET | `outMap.put("kiki_sofu_azcho", ccMsg.get("kiki_sofu_azcho"))` — Chome/Block (equipment delivery address) |
| 30 | SET | `outMap.put("kiki_sofu_bnchigo", ccMsg.get("kiki_sofu_bnchigo"))` — Lot number/subnumber (equipment delivery address) |
| 31 | SET | `outMap.put("kiki_sofu_adrttm", ccMsg.get("kiki_sofu_adrttm"))` — Building name (equipment delivery address) |
| 32 | SET | `outMap.put("kiki_sofu_adrrm", ccMsg.get("kiki_sofu_adrrm"))` — Room number (equipment delivery address) |
| 33 | SET | `outMap.put("kiki_sofu_telno", ccMsg.get("kiki_sofu_telno"))` — Phone number (equipment delivery address) |
| 34 | SET | `outMap.put("kiki_sofu_shs_nm", ccMsg.get("kiki_sofu_shs_nm"))` — Sender name (equipment delivery address) |
| 35 | SET | `outMap.put("kiki_sofu_shs_kana", ccMsg.get("kiki_sofu_shs_kana"))` — Sender name kana (equipment delivery address) |
| 36 | SET | `outMap.put("kiki_souryo_um", scrnItemMap.get("kiki_soryo_um_edit"))` — Equipment charge presence/absence flag |
| 37 | SET | `outMap.put("huka_info", scrnItemMap.get("fuka_info_edit"))` — Additional information |
| 38 | SET | `outMap.put("tv_course", scrnItemMap.get("tv_course_edit"))` — TV course |
| 39 | SET | `outMap.put("ido_rsn_cd", ccMsg.get("ido_rsn_cd"))` — Displacement reason code |
| 40 | SET | `outMap.put("unyo_dtm", ccMsg.get("unyo_dtm"))` — Operation datetime (YYYYMMDDHHMMSS) |
| 41 | SET | `outMap.put("keiyaku_ymd", scrnItemMap.get("keiyaku_ymd_edit"))` — Contract date (YYYYMMDD) |

### Block 3 — DELIVERY REQUEST DATE OVERRIDES (L8520–L8410)

> Compute the delivery request specified date, potentially overriding the default based on equipment capability or tablet cradle status.

| # | Type | Code |
|---|------|------|
| 1 | SET | `haiso_req_shitei_ymd = getNullToStr((String) ccMsg.get("kkshka_sti_ymd"))` [-> Delivery request specified date from ccMsg, defaults to empty] |
| 2 | SET | `svcStaJiHisJokyoSkcd = ""` [-> Service start delivery status identification code, init empty] |
| 3 | SET | `tkModelCd = getNullToStr((String) scrnItemMap.get("taknkiki_model_cd_edit"))` |
| 4 | IF | `isKapKiki(temporaryData, tkModelCd)` — Check if home equipment is a capable device |

**Block 3.1 — ELSE (capable equipment = false) — v9.00.08 Tablet Cradle Override (L8374–L8386)**

> When the equipment is not a capable device but is a tablet/cradle subtype (L1), apply special delivery status processing.

| # | Type | Code |
|---|------|------|
| 1 | IF | `TAKNKIKI_SBT_CD_TABLET_CRADLE = "L1"` equals `scrnItemMap.get("tk_sbt_cd_edit")` |
| 2 | SET | `svcStaJiHisJokyoSkcd = (String) temporaryData.get(KAP_HAISO_SVC_STA_HIS_JOK_SKCD)` |
| 3 | IF | `SVC_STAJI_HIS_JOKYO_SKCD_OK = "2"` equals `svcStaJiHisJokyoSkcd` |
| 4 | SET | `haiso_req_shitei_ymd = getNullToStr((String) temporaryData.get(KAP_HAISO_HAISO_REQ_SHITEI_YMD))` |

**Block 3.2 — THEN (capable equipment = true) (L8362–L8370)**

> When the equipment supports supplementary functions, use capability-based delivery status.

| # | Type | Code |
|---|------|------|
| 1 | SET | `svcStaJiHisJokyoSkcd = getNullToStr((String) temporaryData.get(KAP_HAISO_SVC_STA_HIS_JOK_SKCD))` |
| 2 | IF | `SVC_STAJI_HIS_JOKYO_SKCD_OK = "2"` equals `svcStaJiHisJokyoSkcd` |
| 3 | SET | `haiso_req_shitei_ymd = getNullToStr((String) temporaryData.get(KAP_HAISO_HAISO_REQ_SHITEI_YMD))` |

### Block 4 — DELIVERY METHOD DETERMINATION (L8412–L8411)

> Override delivery status when delivery method determination is not required.

| # | Type | Code |
|---|------|------|
| 1 | IF | `!isHaisoWayHantei(...)` — If delivery method check determined no delivery is needed |
| 2 | SET | `svc_jokyo_skcd_haiso = (String) temporaryData.get(SVC_JOKYO_SKCD_HAISO)` |
| 3 | IF | `!"".equals(svc_jokyo_skcd_haiso)` — If delivery status info exists in temporaryData |
| 4 | SET | `svcStaJiHisJokyoSkcd = svc_jokyo_skcd_haiso` |

### Block 5 — POPULATE OUTMAP: REMAINING REGISTRATION FIELDS (L8419–L8553)

> Populate remaining fields into `outMap`: financial, logistical, optional service, and contract data.

| # | Type | Code |
|---|------|------|
| 1 | SET | `outMap.put("svcStaJiHisJokyoSkcd", svcStaJiHisJokyoSkcd)` — Service start delivery status |
| 2 | SET | `outMap.put("haiso_req_shitei_ymd", haiso_req_shitei_ymd)` — Delivery request specified date |
| 3 | SET | `outMap.put("seiky_kei_no", ccMsg.get("seiky_kei_no"))` — Billing contract number |
| 4 | SET | `outMap.put("kap_ins_judge", scrnItemMap.get("kap_um_edit"))` — Installment target flag (discount plan) |
| 5 | SET | `outMap.put("smartlink_ins_judge", scrnItemMap.get("smartrink_premium_um_edit"))` — Smartlink premium pack flag |
| 6 | SET | `outMap.put("kap_plan_cd", scrnItemMap.get("kap_plan_cd"))` — Discount plan code |
| 7 | SET | `outMap.put("kap_pay_zan_cnt", scrnItemMap.get("kap_pay_zan_cnt_edit"))` — Discount remaining payment count |
| 8 | SET | `outMap.put("tnmt_buy_uk_tntsha_nm", scrnItemMap.get("tnmt_buy_uk_tntsha_nm_edit"))` — Terminal purchase receiver name |
| 9 | SET | `outMap.put("kriplace_skcd", scrnItemMap.get("kriplace_skcd"))` — Management place identification code |
| 10 | SET | `outMap.put("ichiranIndex", String.valueOf(ichiranIndex))` — List index as string |
| 11 | SET | `outMap.put("koji_af_shka_um", scrnItemMap.get("koji_af_shka_um"))` — Post-construction work presence/absence |
| 12 | SET | `outMap.put("koji_comp_haiso_um", scrnItemMap.get("koji_comp_haiso_um"))` — Construction company delivery presence/absence |
| 13 | SET | `outMap.put("kojiak_sbt_cd", scrnItemMap.get("kojiak_sbt_cd"))` — Work case subtype code |
| 14 | SET | `outMap.put("kojiak_no", scrnItemMap.get("kojiak_no_ichiran_edit"))` — Editing work case number (list) |
| 15 | SET | `outMap.put("haiso_saksei_zumi_flg", scrnItemMap.get("haiso_saksei_zumi_flg_edit"))` — Editing delivery completion flag |
| 16 | SET | `outMap.put("kktk_svc_cd", scrnItemMap.get("kktk_svc_cd"))` — Service code [v7.00.00] |
| 17 | SET | `outMap.put("ruta_kkop_svc_kei_no", scrnItemMap.get("rt_no_dtl"))` — Router equipment optional service contract number [v7.00.01] |
| 18 | SET | `outMap.put("ruta_kino_cd", scrnItemMap.get("ruta_kino_cd_edit"))` — Router function code |
| 19 | SET | `outMap.put("rt_dsl_kbn", scrnItemMap.get("rt_dsl_kbn_edit"))` — Router function cancellation division |
| 20 | SET | `outMap.put("rt_dsl_ymd", scrnItemMap.get("rt_dsl_ymd_edit"))` — Router function cancellation date |
| 21 | SET | `outMap.put("va_kkop_svc_kei_no", scrnItemMap.get("va_no_dtl"))` — VA (telephone adapter) equipment optional service contract number |
| 22 | SET | `outMap.put("va_adp_kino_cd", scrnItemMap.get("dnw_adp_kino_cd_edit"))` — Telephone adapter function code |
| 23 | SET | `outMap.put("va_dsl_kbn", scrnItemMap.get("va_dsl_kbn_edit"))` — Telephone adapter function cancellation division |
| 24 | SET | `outMap.put("va_dsl_ymd", scrnItemMap.get("va_dsl_ymd_edit"))` — Telephone adapter function cancellation date |
| 25 | SET | `outMap.put("rt_dsl_kbn_bf", scrnItemMap.get("rt_dsl_kbn_dtl"))` — Router function cancellation division (before) |
| 26 | SET | `outMap.put("rt_dsl_ymd_bf", scrnItemMap.get("rt_dsl_ymd_dtl"))` — Router function cancellation date (before) |
| 27 | SET | `outMap.put("va_dsl_kbn_bf", scrnItemMap.get("va_dsl_kbn_dtl"))` — Telephone adapter function cancellation division (before) |
| 28 | SET | `outMap.put("va_dsl_ymd_bf", scrnItemMap.get("va_dsl_ymd_dtl"))` — Telephone adapter function cancellation date (before) |
| 29 | SET | `outMap.put("add_sod_send_ymd", scrnItemMap.get("add_sod_send_ymd"))` — Registration SOD send date |
| 30 | SET | `outMap.put("stp_sod_send_ymd", scrnItemMap.get("stp_sod_send_ymd"))` — Stop SOD send date |
| 31 | SET | `outMap.put("tnmt_kkop_svc_kei_no", scrnItemMap.get("tnmt_kkop_svc_kei_no"))` — Terminal supplement equipment optional service contract number [v9.00.00] |
| 32 | SET | `outMap.put("tnmt_kino_cd", scrnItemMap.get("tnmt_kino_cd"))` — Terminal supplement function code |
| 33 | SET | `outMap.put("tnmt_dsl_kbn", scrnItemMap.get("tnmt_dsl_kbn"))` — Terminal supplement function cancellation division [v9.00.00] |
| 34 | SET | `kikiOptSvcKeiShoriKbn = getNullToStr((String) temporaryData.get(KIKI_OPT_SVC_KEI_SHORI_KBN))` |
| 35 | SET | `outMap.put("kiki_opt_svc_kei_shori_kbn", scrnItemMap.get(kikiOptSvcKeiShoriKbn))` — Device optional service processing type |
| 36 | SET | `outMap.put("adchg_mskm_dtl_no", getAdchgMskmDtlNo(handle, scCall, param, dataMapKey, ...))` — Additional charge masking detail number [v9.00.05] |
| 37 | SET | `outMap.put("fp_dsl_um", scrnItemMap.get("fp_dsl_um"))` — Family pack cancellation presence/absence [ANK-3149] |
| 38 | SET | `outMap.put("vb_dsl_um", scrnItemMap.get("vb_dsl_um"))` — Wirelbasstar cancellation presence/absence [ANK-3149] |
| 39 | SET | `outMap.put("takinortTrnPtn", scrnItemMap.get("takinortTrnPtn"))` — Multi-function router processing pattern [ANK-3149] |
| 40 | SET | `outMap.put("upd_user_id", scrnItemMap.get("upd_user_id"))` — Updater ID [ANK-3149] |
| 41 | SET | `outMap.put("upd_user", scrnItemMap.get("upd_user"))` — Updater name [ANK-3149] |
| 42 | SET | `outMap.put("rt_new_pcrs_aply_flg", scrnItemMap.get("rt_new_pcrs_aply_flg"))` — Router function new charge cost application flag [ANK-4287] |
| 43 | SET | `outMap.put("gene_add_dtm_rsv", scrnItemMap.get("gene_add_dtm_rsv"))` — Generation registration date-time (reservation) [ANK-4287] |
| 44 | SET | `outMap.put("kktk_svc_kei_stat_rsv", scrnItemMap.get("kktk_svc_kei_stat_rsv"))` — Equipment provision service status (reservation) [ANK-4287] |
| 45 | SET | `outMap.put("mdl_no_shitei_add", scrnItemMap.get("mdl_no_shitei_add"))` — Model number specified registration [ANK-4331] |
| 46 | SET | `outMap.put("svc_kei_kaisen_ucwk_no", ccMsg.get("svc_kei_kaisen_ucwk_no"))` — Service contract line number [ANK-4315] |
| 47 | SET | `outMap.put("tnkj_kibo_apo_kigen_ymd", scrnItemMap.get("tnkj_kibo_apo_kigen_ymd_edit"))` — Home work request appointment period end date [ANK-4315] |
| 48 | SET | `outMap.put("koji_apo_rrks_shitei_cd", scrnItemMap.get("koji_apo_rrks_edit"))` — Work appointment contact designation code [ANK-4315] |
| 49 | SET | `outMap.put("koji_apo_rrks_telno", scrnItemMap.get("koji_apo_rrks_telno_edit"))` — Work appointment contact phone number [ANK-4315] |
| 50 | SET | `outMap.put("tel_rrk_kibo_time", scrnItemMap.get("tel_rrk_kibo_time_edit"))` — Telephone contact desired time slot [ANK-4315] |
| 51 | SET | `outMap.put("kojiak_biko", scrnItemMap.get("kojiak_rrk_jiko_edit"))` — Work case remarks [ANK-4315] |
| 52 | SET | `outMap.put("kojiak_biko_1", scrnItemMap.get("kojiak_biko_1_edit"))` — Work case remarks 1 [ANK-4315] |
| 53 | SET | `outMap.put("kojiak_biko_2", scrnItemMap.get("kojiak_biko_2_edit"))` — Work case remarks 2 [ANK-4315] |

### Block 6 — DEVICE CREATION DELEGATION (L8557–L8590)

> Instantiate the dedicated device creation CC and execute the actual registration with error isolation.

| # | Type | Code |
|---|------|------|
| 1 | NEW | `JKKKikiIchiranKkCreateCC jKkKCreateCC = new JKKKikiIchiranKkCreateCC()` — Instantiate device creation component [v9.00.00] |
| 2 | TRY | `jKkKCreateCC.execKikiIchiranKikiCreate(handle, param, JKK_KIKIICHIRAN_KKCREATE_CC, scrnItemMap, ccOutputMap)` — Execute device registration [ANK-3149] |

**Block 6.1 — FINALLY (error capture and propagation) (L8580–L8622)**

> Regardless of whether the creation succeeded or threw, re-fetch output data, propagate error codes, and handle router/VA post-processing.

| # | Type | Code |
|---|------|------|
| 1 | SET | `outMap = (HashMap<String, Object>) param.getData(JKK_KIKIICHIRAN_KKCREATE_CC)` |
| 2 | IF | `!JKKCommonUtil.isNull(outMap.get("kktk_svc_kei_no_nw"))` — If new service contract numbers were created |
| 3 | IF | `!JKKCommonUtil.isNull(ccMsg.get("kktk_svc_kei_no_nw"))` — If there were already previous numbers |
| 4 | SET | `ccMsg.put("kktk_svc_kei_no_nw", ccMsg.get("kktk_svc_kei_no_nw") + COMMA + outMap.get("kktk_svc_kei_no_nw"))` — Append with comma |
| 5 | SET | `ccMsg.put("kiki_chg_no_nw", ccMsg.get("kiki_chg_no_nw") + COMMA + outMap.get("kiki_chg_no_nw"))` |
| 6 | SET | `ccMsg.put("taknkiki_sbt_cd_nw", ccMsg.get("taknkiki_sbt_cd_nw") + COMMA + outMap.get("taknkiki_sbt_cd_nw"))` |
| 7 | ELSE | Set `kktk_svc_kei_no_nw`, `kiki_chg_no_nw`, `taknkiki_sbt_cd_nw` from outMap (first time) |
| 8 | SET | `ccMsg.put("err_cd", outMap.get("err_cd"))` — Propagate error code |
| 9 | SET | `ccMsg.put("status", getNullToStr((String) outMap.get("status")))` — Propagate status [ANK-4346] |
| 10 | SET | `ccMsg.put("CCMG_ERR_FLG", getNullToStr((String) outMap.get("CCMG_ERR_FLG")))` — Propagate CC message error flag [#84105] |
| 11 | SET | `ccMsg.put("CCMG_ERR_MSG", getNullToStr((String) outMap.get("CCMG_ERR_MSG")))` — Propagate CC message error text [#84105] |

### Block 7 — ADDRESS CHECK ERROR PROPAGATION (L8625–L8629)

> Suppress address-check warnings from the device registration CC for screen return purposes.

| # | Type | Code |
|---|------|------|
| 1 | IF | `!null(outMap.get(AD_CHK_ERR_KEY)) && !"".equals(outMap.get(AD_CHK_ERR_KEY))` — If address check warning exists |
| 2 | SET | `ccMsg.put(AD_CHK_ERR_KEY, outMap.get(AD_CHK_ERR_KEY))` — Propagate to ccMsg for screen display |

### Block 8 — ROUTER/VA OPTIONAL SERVICE DATA UPDATE (L8632–L8660)

> For router (C024) or home gateway (C025) service types, copy pre/post optional service contract data to `temporaryData` and process telephone relation updates.

| # | Type | Code |
|---|------|------|
| 1 | IF | `KKTK_SVC_CD_TAKINO_RUTAR = "C024"` equals `scrnItemMap.get("kktk_svc_cd")` \|\| `KKTK_SVC_CD_HGW = "C025"` equals `scrnItemMap.get("kktk_svc_cd")` |
| 2 | SET | `temporaryData.put(OUT_RT_KKOPT_SVCKEI_DATA_BF, outMap.get(OUT_RT_KKOPT_SVCKEI_DATA_BF))` — Router opt SVC data (before) |
| 3 | SET | `temporaryData.put(OUT_VA_KKOPT_SVCKEI_DATA_BF, outMap.get(OUT_VA_KKOPT_SVCKEI_DATA_BF))` — VA opt SVC data (before) |
| 4 | SET | `temporaryData.put(OUT_RT_KKOPT_SVCKEI_DATA_AF, outMap.get(OUT_RT_KKOPT_SVCKEI_DATA_AF))` — Router opt SVC data (after) |
| 5 | SET | `temporaryData.put(OUT_VA_KKOPT_SVCKEI_DATA_AF, outMap.get(OUT_VA_KKOPT_SVCKEI_DATA_AF))` — VA opt SVC data (after) |
| 6 | SET | `telRelationUpdKikiMap = (HashMap<String, Object>) temporaryData.get(TEL_RELATION_UPD_KIKI_MAP)` |
| 7 | IF | `telRelationUpdKikiMap != null` — If telephone relation update equipment map exists |
| 8 | CALL | `getKikiTkSvcKeiEditData(handle, scCall, param, dataMapKey, temporaryData, ichiranIndex)` — Retrieve post-processing equipment provision SVC contract data |
| 9 | SET | `telRelationUpdKikiMap.put(TEL_RELATION_UPD_KIKI_TAKINOADD_TO, kktkSvcKeiData_af)` — Set post-addition multi-function router equipment |

### Block 9 — CLEANUP AND RETURN (L8662–L8669)

| # | Type | Code |
|---|------|------|
| 1 | EXEC | `param.removeData(JKK_KIKIICHIRAN_KKCREATE_CC)` — Remove the temporary output map from param |
| 2 | RETURN | `true` — Always returns true indicating successful processing pipeline completion |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `isExecKikiIchiranKkCreate` | Method | Device List Device Registration Part CC (Device Registration) Execution Method — orchestrates bulk device registration |
| `Kiki` | Field | Device / Equipment — refers to home networking equipment (routers, STBs, BCAS/CCAS cards) |
| `Ichiran` | Field | List — refers to a list screen for bulk processing operations |
| `Kk` (in method name) | Field | Kiki Create — device creation/registration |
| `svc_kei_no` | Field | Service Contract Number — unique identifier for a customer's service contract |
| `svc_kei_data` | Field | Service Contract Data — full service contract detail object from template `EKK0081A010` |
| `taknkiki_model_cd` | Field | Home Equipment Model Code — identifies the model of home networking equipment |
| `tk_sbt_cd` | Field | Home Equipment Subtype Code — distinguishes between STB, BCAS, CCAS, and generic home equipment |
| `kktk_svc_cd` | Field | Equipment Provision Service Code — identifies the type of equipment service (e.g., C024 = TAKINO_ROUTAR router, C025 = HGW home gateway) |
| `kktk_sbt_cd` | Field | Equipment Provision Subtype Code |
| `haiso_stat` | Field | Delivery Status — current status of equipment delivery (e.g., pending, completed) |
| `haiso_way_cd` | Field | Delivery Method Division Code — how equipment will be delivered |
| `haiso_div_cd` | Field | Delivery Division Code |
| `haiso_req_shitei_ymd` | Field | Delivery Request Specified Date — the date the customer requested delivery |
| `ido_div` | Field | Displacement Division Code — indicates whether this is a new installation or displacement/move |
| `ido_rsn_cd` | Field | Displacement Reason Code |
| `kiki_sofu_*` | Field | Equipment Delivery Address fields (sofu = 送付先, delivery destination) — pcd (postal code), ad_cd (address code), state (prefecture), city (city/town/village), oaztsu (oaza/street), azcho (chome), bnchigo (lot number), adrttm (building name), adrrm (room number), telno (phone), shs_nm (sender name), shs_kana (sender name kana), man_input_flg (manual input flag) |
| `kiki_seizo_no` | Field | Equipment Serial Number |
| `kkshka_sti_ymd` | Field | Delivery Request Specified Date (from ccMsg) — YYYYMMDD format |
| `stb_kktk_svc_cd` | Field | STB (Set-Top Box) Home Equipment Provision Service Code |
| `bcas_kktk_svc_cd` | Field | BCAS Card Home Equipment Provision Service Code |
| `ccas_kktk_svc_cd` | Field | CCAS Card Home Equipment Provision Service Code |
| `hambai_sbt` | Field | Sales Subtype Code |
| `soko_info` | Field | Building Information Code |
| `mac_ad` | Field | MAC Address |
| `unyo_ymd` | Field | Operation Date (YYYYMMDD) |
| `unyo_dtm` | Field | Operation Datetime (YYYYMMDDHHMMSS) |
| `keiyaku_ymd` | Field | Contract Date (YYYYMMDD) |
| `seiky_kei_no` | Field | Billing Contract Number |
| `kap_ins_judge` | Field | Installment Target Flag — whether discount plan (kapur) applies |
| `kap_plan_cd` | Field | Discount Plan Code |
| `kap_pay_zan_cnt` | Field | Discount Remaining Payment Count |
| `smartlink_ins_judge` | Field | Smartlink Premium Pack Flag |
| `tnmt_buy_uk_tntsha_nm` | Field | Terminal Purchase Receiver Name |
| `kriplace_skcd` | Field | Management Place Identification Code |
| `koji_af_shka_um` | Field | Post-Construction Work Presence/Absence Flag |
| `koji_comp_haiso_um` | Field | Construction Company Delivery Presence/Absence Flag |
| `kojiak_sbt_cd` | Field | Work Case Subtype Code |
| `kojiak_no` | Field | Work Case Number |
| `haiso_saksei_zumi_flg` | Field | Delivery Completion Flag |
| `func_code` | Field | Function Code — identifies the screen operation type |
| `check_scrn_id` | Field | Check Screen ID — set to "KKW033" for validation routing |
| `svcStaJiHisJokyoSkcd` | Field | Service Start Delivery Status Identification Code — indicates delivery readiness status |
| `SVC_STAJI_HIS_JOKYO_SKCD_OK` | Constant | "2" — OK status for service start delivery identification code |
| `KAP_HAISO_SVC_STA_HIS_JOK_SKCD` | Constant | "svcStaJiHisJokyoSkcd" — temporaryData key for capable equipment delivery status |
| `KAP_HAISO_HAISO_REQ_SHITEI_YMD` | Constant | "haisoReqShiteiYmd" — temporaryData key for capable equipment delivery request date |
| `TAKNKIKI_SBT_CD_TABLET_CRADLE` | Constant | "L1" — tablet/cradle home equipment subtype code |
| `SVC_JOKYO_SKCD_HAISO` | Constant | "svcStaJiHisJokyoSkcd_haiso" — delivery-specific service status code |
| `kkOptSvcKeiShoriKbn` | Field | Device Optional Service Processing Type — determines how optional services are handled (add = "1", cancel = "2", update = "3") |
| `KIKI_OPT_SVC_KEI_SHORI_KBN` | Constant | "KIKI_OPT_SVC_KEI_SHORI_KBN" — key for device optional service processing type |
| `KIKI_OPT_SVC_KEI_SHORI_KBN_ADD` | Constant | "1" — Device optional service add processing |
| `KIKI_OPT_SVC_KEI_SHORI_KBN_DSL` | Constant | "2" — Device optional service cancellation processing |
| `KIKI_OPT_SVC_KEI_SHORI_KBN_UPD` | Constant | "3" — Device optional service update processing |
| `ruta_kkop_svc_kei_no` | Field | Router Equipment Optional Service Contract Number |
| `ruta_kino_cd` | Field | Router Function Code |
| `rt_dsl_kbn` / `rt_dsl_ymd` | Field | Router Function Cancellation Division / Date |
| `va_kkop_svc_kei_no` | Field | VA (Telephone Adapter) Equipment Optional Service Contract Number |
| `va_adp_kino_cd` | Field | Telephone Adapter Function Code |
| `va_dsl_kbn` / `va_dsl_ymd` | Field | Telephone Adapter Function Cancellation Division / Date |
| `add_sod_send_ymd` | Field | Registration SOD Send Date |
| `stp_sod_send_ymd` | Field | Stop SOD Send Date |
| `SOD` | Acronym | Service Order Data — order data sent to downstream systems |
| `fp_dsl_um` | Field | Family Pack Cancellation Presence/Absence Flag |
| `vb_dsl_um` | Field | Wirelbasstar Cancellation Presence/Absence Flag |
| `takinortTrnPtn` | Field | Multi-function Router Processing Pattern |
| `upd_user_id` / `upd_user` | Field | Updater ID / Updater Name — identifies who last modified the record |
| `rt_new_pcrs_aply_flg` | Field | Router Function New Charge Cost Application Flag |
| `gene_add_dtm_rsv` | Field | Generation Registration Datetime (Reservation) |
| `kktk_svc_kei_stat_rsv` | Field | Equipment Provision Service Status (Reservation) |
| `mdl_no_shitei_add` | Field | Model Number Specified Registration |
| `svc_kei_kaisen_ucwk_no` | Field | Service Contract Line Number |
| `tnkj_kibo_apo_kigen_ymd` | Field | Home Work Request Appointment Period End Date |
| `koji_apo_rrks_*` | Field | Work Appointment Contact fields (rrks_shitei_cd = designation code, rrks_telno = phone number) |
| `tel_rrk_kibo_time` | Field | Telephone Contact Desired Time Slot |
| `kojiak_biko` / `_1` / `_2` | Field | Work Case Remarks (main, 1, 2) |
| `adchg_mskm_dtl_no` | Field | Additional Charge Masking Detail Number |
| `OUT_RT_KKOPT_SVCKEI_DATA_BF` | Constant | "ruta_kkopt_svc_kei_data_bf" — pre-update router optional service data key |
| `OUT_VA_KKOPT_SVCKEI_DATA_BF` | Constant | "va_kkopt_svc_kei_data_bf" — pre-update VA optional service data key |
| `OUT_RT_KKOPT_SVCKEI_DATA_AF` | Constant | "ruta_kkopt_svc_kei_data_af" — post-update router optional service data key |
| `OUT_VA_KKOPT_SVCKEI_DATA_AF` | Constant | "va_kkopt_svc_kei_data_af" — post-update VA optional service data key |
| `TEL_RELATION_UPD_KIKI_MAP` | Constant | Key for telephone relation update equipment map in temporaryData |
| `TEL_RELATION_UPD_KIKI_TAKINOADD_TO` | Constant | Key for post-addition multi-function router equipment in telephone relation map |
| `KKTK_SVC_CD_TAKINO_RUTAR` | Constant | "C024" — TAKINO Router service code |
| `KKTK_SVC_CD_HGW` | Constant | "C025" — Home Gateway service code |
| `AD_CHK_ERR_KEY` | Constant | "kiki_sohus_ad_chk_lv_err" — address check error/warning key |
| `ERR_FLG_ERR` | Constant | "1" — Error flag for error state (currently commented out, not used in this method) |
| `JKKStrConst.COMMA` | Constant | "," — comma separator for appending service contract numbers |
| `JKK_KIKIICHIRAN_KKCREATE_CC` | Constant | "JKKKikiIchiranKkCreateCC" — map key for this CC's output data |
| `SHORI_LIST_SCRN_PARAM` | Constant | "scrnIchiranParam" — key for screen item map in ichiran processing map |
| `TEMPLATE_ID_EKK0081A010` | Constant | Template identifier for service contract data |
| `SCRN_ID_KKW033` | Constant | "KKW033" — check screen ID for validation routing |
| `isKapKiki` | Method | Check if the home equipment is a capable device (supports supplementary functions) |
| `isHaisoWayHantei` | Method | Delivery method determination — decides whether delivery is needed based on equipment type and conditions |
| `getNullToStr` | Method | Null-to-empty-string conversion utility |
| `getAdchgMskmDtlNo` | Method | Retrieves additional charge masking detail number |
| `getKikiTkSvcKeiEditData` | Method | Reads home equipment provision service contract edit data |
| `JKKKikiIchiranKkCreateCC` | Class | Dedicated device registration component — performs the actual device creation |
| `execKikiIchiranKikiCreate` | Method | Executes the device creation for a device list registration |
| `ccMsg` | Variable | The current screen's message map containing input parameters and error outputs |
| `outMap` | Variable | The output map for the device creation CC, populated with registration data |
| `scrnItemMap` | Variable | The screen item map for the current row in the device list being processed |
| `ccOutputMap` | Variable | Cross-screen output data map (added in v5.05.00) |
| `TEMPERATURE` | Acronym | BCAS — Broadband CAS (conditional access system for BS/CS digital broadcast) |
| `CCAS` | Acronym | CS/CAS — Cable conditional access system card |
| `STB` | Acronym | Set-Top Box — set-top device for TV services |
| `VA` | Acronym | Voice Adapter / Telephone Adapter — equipment for telephone-over-broadband service |
| `HGW` | Acronym | Home Gateway — home network gateway device |
| `FTTH` | Business term | Fiber To The Home — fiber-optic broadband service (contextual, in broader system) |