# Business Logic — KKW22101SF02DBean.loadModelData() [91 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.KKW22101SF.KKW22101SF02DBean` |
| Layer | View / Data Bean (Webview presentation layer — handles data binding between UI components and model fields) |
| Module | `KKW22101SF` (Package: `eo.web.webview.KKW22101SF`) |

## 1. Role

### KKW22101SF02DBean.loadModelData()

This method serves as the central data-dispatch entry point for the `KKW22101SF02DBean` class, which models **equipment provision service contract details** in the telecom service contract management domain. When a screen needs to populate or inspect a field within an equipment provision service contract row, it calls `loadModelData` with a human-readable **item name** (key) and a **subkey** that selects which aspect of that field to retrieve — its current value, its enabled/disabled state, or its visual state (e.g., displayed, hidden).

The method implements a **routing/dispatch pattern** based on two parameters: the business field identifier (a Japanese-labeled item name like "宅内機器型式コード" — Indoor Equipment Model Code) and the subkey selector ("value", "enable", or "state"). For each of the six supported field types, the method delegates to one of three accessor methods, effectively providing a uniform interface to all bean properties.

This is a **shared view-model utility** called by the screen's repeating-item framework (`X33VDataTypeList`) when iterating over equipment provision service contract detail rows. It enables screens to dynamically query any property of a `KKW22101SF02DBean` instance without knowing the specific getter method at compile time — the key/subkey convention is defined by the screen's item configuration, making the bean reusable across multiple display contexts.

The six supported branches cover the complete set of editable/displayable fields for an equipment provision service contract: indoor equipment model code, indoor equipment model name, equipment order request start year/month, equipment plan start date, equipment provision service name, and SmartLink Premium subscription status. If the key does not match any known field, the method returns `null`.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["loadModelData key, subkey"])

    START --> NULL_CHECK["key == null || subkey == null"]

    NULL_CHECK -->|Yes| RETURN_NULL["Return null"]
    NULL_CHECK -->|No| FIND_SLASH["Find '/' in key"]

    FIND_SLASH --> COND1{"key == "宅内機器型式コード"}
    COND1 -->|Yes| BLOCK1["宅内機器型式コード block"]
    COND1 -->|No| COND2{"key == "宅内機器型式名"}
    COND2 -->|Yes| BLOCK2["宅内機器型式名 block"]
    COND2 -->|No| COND3{"key == "機器発注請求開始年月"}
    COND3 -->|Yes| BLOCK3["機器発注請求開始年月 block"]
    COND3 -->|No| COND4{"key == "機器プラン開始年月日"}
    COND4 -->|Yes| BLOCK4["機器プラン開始年月日 block"]
    COND4 -->|No| COND5{"key == "機器提供サービス名"}
    COND5 -->|Yes| BLOCK5["機器提供サービス名 block"]
    COND5 -->|No| COND6{"key == "スマートリンクプレミアム有無"}
    COND6 -->|Yes| BLOCK6["スマートリンクプレミアム有無 block"]
    COND6 -->|No| RETURN_NULL

    BLOCK1 --> SUB1{"subkey equalsIgnoreCase"}
    SUB1 -->|"\"value\""| CALL1["getTaknkiki_model_cd_value()"]
    SUB1 -->|"\"enable\""| CALL2["getTaknkiki_model_cd_enabled()"]
    SUB1 -->|"\"state\""| CALL3["getTaknkiki_model_cd_state()"]
    CALL1 --> RETURN_DATA
    CALL2 --> RETURN_DATA
    CALL3 --> RETURN_DATA

    BLOCK2 --> SUB2{"subkey equalsIgnoreCase"}
    SUB2 -->|"\"value\""| CALL4["getTaknkiki_model_nm_value()"]
    SUB2 -->|"\"enable\""| CALL5["getTaknkiki_model_nm_enabled()"]
    SUB2 -->|"\"state\""| CALL6["getTaknkiki_model_nm_state()"]
    CALL4 --> RETURN_DATA
    CALL5 --> RETURN_DATA
    CALL6 --> RETURN_DATA

    BLOCK3 --> SUB3{"subkey equalsIgnoreCase"}
    SUB3 -->|"\"value\""| CALL7["getKiki_kap_seiky_sta_ym_value()"]
    SUB3 -->|"\"enable\""| CALL8["getKiki_kap_seiky_sta_ym_enabled()"]
    SUB3 -->|"\"state\""| CALL9["getKiki_kap_seiky_sta_ym_state()"]
    CALL7 --> RETURN_DATA
    CALL8 --> RETURN_DATA
    CALL9 --> RETURN_DATA

    BLOCK4 --> SUB4{"subkey equalsIgnoreCase"}
    SUB4 -->|"\"value\""| CALL10["getKiki_pplan_sta_ym_value()"]
    SUB4 -->|"\"enable\""| CALL11["getKiki_pplan_sta_ym_enabled()"]
    SUB4 -->|"\"state\""| CALL12["getKiki_pplan_sta_ym_state()"]
    CALL10 --> RETURN_DATA
    CALL11 --> RETURN_DATA
    CALL12 --> RETURN_DATA

    BLOCK5 --> SUB5{"subkey equalsIgnoreCase"}
    SUB5 -->|"\"value\""| CALL13["getKiki_tk_svs_mei_value()"]
    SUB5 -->|"\"enable\""| CALL14["getKiki_tk_svs_mei_enabled()"]
    SUB5 -->|"\"state\""| CALL15["getKiki_tk_svs_mei_state()"]
    CALL13 --> RETURN_DATA
    CALL14 --> RETURN_DATA
    CALL15 --> RETURN_DATA

    BLOCK6 --> SUB6{"subkey equalsIgnoreCase"}
    SUB6 -->|"\"value\""| CALL16["getSmartrink_premium_um_value()"]
    SUB6 -->|"\"enable\""| CALL17["getSmartrink_premium_um_enabled()"]
    SUB6 -->|"\"state\""| CALL18["getSmartrink_premium_um_state()"]
    CALL16 --> RETURN_DATA
    CALL17 --> RETURN_DATA
    CALL18 --> RETURN_DATA

    RETURN_DATA["Return data"]

    RETURN_NULL --> END_NODE(["End"])
    RETURN_DATA --> END_NODE
```

**Processing overview:**

1. **Null guard (L289)**: If either `key` or `subkey` is `null`, return `null` immediately.
2. **Separator scan (L291)**: Search for `'/'` in the `key` string (the result is stored in `separaterPoint` but is not used in this method — likely a vestige of a prior routing scheme that used `"key/subkey"` delimited strings).
3. **Field dispatch chain (L294–L374)**: A cascading if/else-if chain checks the `key` value against six known Japanese item names. For each matching field, a nested if/else-if chain checks the `subkey` (case-insensitive) to determine which property to return:
   - `"value"` → the field's current data value
   - `"enable"` → the field's enabled/disabled flag (from the `xxx_enabled` instance field)
   - `"state"` → the field's UI state (from the `xxx_state` instance field)
4. **Fallback (L376)**: If no key matches, return `null`.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `key` | `String` | The **business item name** — a human-readable Japanese label identifying which field on the equipment provision service contract detail to query. Examples: "宅内機器型式コード" (Indoor Equipment Model Code), "機器提供サービス名" (Equipment Provision Service Name). The key determines which of the six field branches the method enters. |
| 2 | `subkey` | `String` | The **property selector** — specifies which aspect of the identified field to return. Valid values (case-insensitive): `"value"` (the field's current data value), `"enable"` (whether the field is editable/enabled in the UI), `"state"` (the field's display state, e.g., visible/hidden). |

**Instance fields read by this method:**

| Field | Declaring Class | Access Method | Business Meaning |
|-------|----------------|---------------|------------------|
| `taknkiki_model_cd` / `taknkiki_model_cd_enabled` / `taknkiki_model_cd_state` | `KKW22101SF02DBean` | `getTaknkiki_model_cd_value()`, `getTaknkiki_model_cd_enabled()`, `getTaknkiki_model_cd_state()` | Indoor equipment model code — the code identifying the type of indoor equipment |
| `taknkiki_model_nm` / `taknkiki_model_nm_enabled` / `taknkiki_model_nm_state` | `KKW22101SF02DBean` | `getTaknkiki_model_nm_value()`, `getTaknkiki_model_nm_enabled()`, `getTaknkiki_model_nm_state()` | Indoor equipment model name — human-readable name of the indoor equipment |
| `kiki_kap_seiky_sta_ym` / `kiki_kap_seiky_sta_ym_enabled` / `kiki_kap_seiky_sta_ym_state` | `KKW22101SF02DBean` | `getKiki_kap_seiky_sta_ym_value()`, `getKiki_kap_seiky_sta_ym_enabled()`, `getKiki_kap_seiky_sta_ym_state()` | Equipment order request start year/month — when the equipment ordering/billing process begins |
| `kiki_pplan_sta_ym` / `kiki_pplan_sta_ym_enabled` / `kiki_pplan_sta_ym_state` | `KKW22101SF02DBean` | `getKiki_pplan_sta_ym_value()`, `getKiki_pplan_sta_ym_enabled()`, `getKiki_pplan_sta_ym_state()` | Equipment plan start year/month/day — the effective start date of the equipment plan |
| `kiki_tk_svs_mei` / `kiki_tk_svs_mei_enabled` / `kiki_tk_svs_mei_state` | `KKW22101SF02DBean` | `getKiki_tk_svs_mei_value()`, `getKiki_tk_svs_mei_enabled()`, `getKiki_tk_svs_mei_state()` | Equipment provision service name — the name of the service being provided (e.g., FTTH, cable, etc.) |
| `smartrink_premium_um` / `smartrink_premium_um_enabled` / `smartrink_premium_um_state` | `KKW22101SF02DBean` | `getSmartrink_premium_um_value()`, `getSmartrink_premium_um_enabled()`, `getSmartrink_premium_um_state()` | SmartLink Premium subscription status — whether the SmartLink Premium add-on service is active |

## 4. CRUD Operations / Called Services

This method performs **pure data retrieval** — it does not call any external SC (Service Component) or CBS (Business Service) methods, nor does it access any database tables directly. All called methods are internal getters within `KKW22101SF02DBean` itself.

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| R | `KKW22101SF02DBean.getTaknkiki_model_cd_value` | `KKW22101SF02DBean` | — | Returns the value of the indoor equipment model code field |
| R | `KKW22101SF02DBean.getTaknkiki_model_cd_enabled` | `KKW22101SF02DBean` | — | Returns the enabled flag for the indoor equipment model code field |
| R | `KKW22101SF02DBean.getTaknkiki_model_cd_state` | `KKW22101SF02DBean` | — | Returns the display state of the indoor equipment model code field |
| R | `KKW22101SF02DBean.getTaknkiki_model_nm_value` | `KKW22101SF02DBean` | — | Returns the value of the indoor equipment model name field |
| R | `KKW22101SF02DBean.getTaknkiki_model_nm_enabled` | `KKW22101SF02DBean` | — | Returns the enabled flag for the indoor equipment model name field |
| R | `KKW22101SF02DBean.getTaknkiki_model_nm_state` | `KKW22101SF02DBean` | — | Returns the display state of the indoor equipment model name field |
| R | `KKW22101SF02DBean.getKiki_kap_seiky_sta_ym_value` | `KKW22101SF02DBean` | — | Returns the value of the equipment order request start year/month field |
| R | `KKW22101SF02DBean.getKiki_kap_seiky_sta_ym_enabled` | `KKW22101SF02DBean` | — | Returns the enabled flag for the equipment order request start year/month field |
| R | `KKW22101SF02DBean.getKiki_kap_seiky_sta_ym_state` | `KKW22101SF02DBean` | — | Returns the display state of the equipment order request start year/month field |
| R | `KKW22101SF02DBean.getKiki_pplan_sta_ym_value` | `KKW22101SF02DBean` | — | Returns the value of the equipment plan start date field |
| R | `KKW22101SF02DBean.getKiki_pplan_sta_ym_enabled` | `KKW22101SF02DBean` | — | Returns the enabled flag for the equipment plan start date field |
| R | `KKW22101SF02DBean.getKiki_pplan_sta_ym_state` | `KKW22101SF02DBean` | — | Returns the display state of the equipment plan start date field |
| R | `KKW22101SF02DBean.getKiki_tk_svs_mei_value` | `KKW22101SF02DBean` | — | Returns the value of the equipment provision service name field |
| R | `KKW22101SF02DBean.getKiki_tk_svs_mei_enabled` | `KKW22101SF02DBean` | — | Returns the enabled flag for the equipment provision service name field |
| R | `KKW22101SF02DBean.getKiki_tk_svs_mei_state` | `KKW22101SF02DBean` | — | Returns the display state of the equipment provision service name field |
| R | `KKW22101SF02DBean.getSmartrink_premium_um_value` | `KKW22101SF02DBean` | — | Returns the value of the SmartLink Premium subscription status field |
| R | `KKW22101SF02DBean.getSmartrink_premium_um_enabled` | `KKW22101SF02DBean` | — | Returns the enabled flag for the SmartLink Premium subscription status field |
| R | `KKW22101SF02DBean.getSmartrink_premium_um_state` | `KKW22101SF02DBean` | — | Returns the display state of the SmartLink Premium subscription status field |

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Screen:KKW22101SF (KKW22101SFBean) | `KKW22101SFBean.setListData("機器提供サービス契約一覧明细リスト", ...)` → instantiates `KKW22101SF02DBean` → framework calls `KKW22101SF02DBean.loadModelData(key, subkey)` via `X33VDataTypeBeanInterface` | `getTaknkiki_model_cd_value [R] in-memory`, `getTaknkiki_model_cd_enabled [R] in-memory`, `getTaknkiki_model_cd_state [R] in-memory`, `getTaknkiki_model_nm_value [R] in-memory`, `getKiki_kap_seiky_sta_ym_value [R] in-memory`, `getKiki_kap_seiky_sta_ym_enabled [R] in-memory`, `getKiki_kap_seiky_sta_ym_state [R] in-memory`, `getKiki_pplan_sta_ym_value [R] in-memory`, `getKiki_tk_svs_mei_value [R] in-memory`, `getSmartrink_premium_um_value [R] in-memory` |
| 2 | Screen:KKW22101SF (KKW22101SFBean) | `KKW22101SFBean.setListData("機器提供サービス契約一覧明细リスト", ...)` → instantiates `KKW22101SF02DBean` → framework calls `loadModelData` for `service_list` repeating items | Same as above — all 18 internal getters |

**Caller details:**

The method is invoked by the `KKW22101SFBean` screen bean (in `KKW22101SFBean.java`, around line 4255) during the `setListData` flow. When the framework encounters a data-type-bean item type for the item key `"機器提供サービス契約一覧明细リスト"` (Equipment Provision Service Contract Detail List), it instantiates `KKW22101SF02DBean` objects and delegates property access to them through the `X33VDataTypeBeanInterface`. The `loadModelData` method is thus the primary data-loading hook for equipment provision service contract row fields.

## 6. Per-Branch Detail Blocks

**Block 1** — [IF] null guard (L289)

> If either parameter is null, the method returns null immediately. This is a safety guard against NPE from the caller.

| # | Type | Code |
|---|------|------|
| 1 | IF | `if (key == null || subkey == null)` // key, subkey that are null, return null (key, subkey that are null of the case, return null) |
| 2 | RETURN | `return null;` |

**Block 2** — [SET] separator scan (L291)

> Scans the key for a `'/'` character. The result is stored but not used — likely a vestige of a prior routing scheme that used `"key/subkey"` delimited strings.

| # | Type | Code |
|---|------|------|
| 1 | SET | `int separaterPoint = key.indexOf("/");` // scan for separator point |

**Block 3** — [IF/ELSE-IF] Field dispatch: Indoor Equipment Model Code (L294–L309)

> Data type is String item "Indoor Equipment Model Code" (field ID: `taknkiki_model_cd`). Dispatches to the three accessor methods for this field based on the subkey.
> (データタイプがStringの項目"宅内機器型式コード" (項目ID:taknkiki_model_cd))

| # | Type | Code |
|---|------|------|
| 1 | IF | `if (key.equals("宅内機器型式コード"))` // data type is String item "Indoor Equipment Model Code" |
| 2 | IF | `if (subkey.equalsIgnoreCase("value"))` |
| 3 | CALL | `return getTaknkiki_model_cd_value();` |
| 4 | ELSE-IF | `else if (subkey.equalsIgnoreCase("enable"))` // if subkey is "enable", return the getter value of taknkiki_model_cd_enable |
| 5 | CALL | `return getTaknkiki_model_cd_enabled();` |
| 6 | ELSE-IF | `else if (subkey.equalsIgnoreCase("state"))` // if subkey is "state", return the status |
| 7 | CALL | `return getTaknkiki_model_cd_state();` |

**Block 4** — [ELSE-IF] Field dispatch: Indoor Equipment Model Name (L312–L327)

> Data type is String item "Indoor Equipment Model Name" (field ID: `taknkiki_model_nm`). Dispatches to the three accessor methods for this field.
> (データタイプがStringの項目"宅内機器型式名" (項目ID:taknkiki_model_nm))

| # | Type | Code |
|---|------|------|
| 1 | ELSE-IF | `else if (key.equals("宅内機器型式名"))` // data type is String item "Indoor Equipment Model Name" |
| 2 | IF | `if (subkey.equalsIgnoreCase("value"))` |
| 3 | CALL | `return getTaknkiki_model_nm_value();` |
| 4 | ELSE-IF | `else if (subkey.equalsIgnoreCase("enable"))` // if subkey is "enable", return the getter value of taknkiki_model_nm_enable |
| 5 | CALL | `return getTaknkiki_model_nm_enabled();` |
| 6 | ELSE-IF | `else if (subkey.equalsIgnoreCase("state"))` // if subkey is "state", return the status |
| 7 | CALL | `return getTaknkiki_model_nm_state();` |

**Block 5** — [ELSE-IF] Field dispatch: Equipment Order Request Start Year/Month (L330–L345)

> Data type is String item "Equipment Order Request Start Year/Month" (field ID: `kiki_kap_seiky_sta_ym`). Dispatches to the three accessor methods for this field.
> (データタイプがStringの項目"機器発注請求開始年月" (項目ID:kiki_kap_seiky_sta_ym))

| # | Type | Code |
|---|------|------|
| 1 | ELSE-IF | `else if (key.equals("機器発注請求開始年月"))` // data type is String item "Equipment Order Request Start Year/Month" |
| 2 | IF | `if (subkey.equalsIgnoreCase("value"))` |
| 3 | CALL | `return getKiki_kap_seiky_sta_ym_value();` |
| 4 | ELSE-IF | `else if (subkey.equalsIgnoreCase("enable"))` // if subkey is "enable", return the getter value of kiki_kap_seiky_sta_ym_enable |
| 5 | CALL | `return getKiki_kap_seiky_sta_ym_enabled();` |
| 6 | ELSE-IF | `else if (subkey.equalsIgnoreCase("state"))` // if subkey is "state", return the status |
| 7 | CALL | `return getKiki_kap_seiky_sta_ym_state();` |

**Block 6** — [ELSE-IF] Field dispatch: Equipment Plan Start Date (L348–L363)

> Data type is String item "Equipment Plan Start Year/Month/Day" (field ID: `kiki_pplan_sta_ym`). Dispatches to the three accessor methods for this field.
> (データタイプがStringの項目"機器プラン開始年月日" (項目ID:kiki_pplan_sta_ym))

| # | Type | Code |
|---|------|------|
| 1 | ELSE-IF | `else if (key.equals("機器プラン開始年月日"))` // data type is String item "Equipment Plan Start Year/Month/Day" |
| 2 | IF | `if (subkey.equalsIgnoreCase("value"))` |
| 3 | CALL | `return getKiki_pplan_sta_ym_value();` |
| 4 | ELSE-IF | `else if (subkey.equalsIgnoreCase("enable"))` // if subkey is "enable", return the getter value of kiki_pplan_sta_ym_enable |
| 5 | CALL | `return getKiki_pplan_sta_ym_enabled();` |
| 6 | ELSE-IF | `else if (subkey.equalsIgnoreCase("state"))` // if subkey is "state", return the status |
| 7 | CALL | `return getKiki_pplan_sta_ym_state();` |

**Block 7** — [ELSE-IF] Field dispatch: Equipment Provision Service Name (L366–L381)

> Data type is String item "Equipment Provision Service Name" (field ID: `kiki_tk_svs_mei`). Dispatches to the three accessor methods for this field.
> (データタイプがStringの項目"機器提供サービス名" (項目ID:kiki_tk_svs_mei))

| # | Type | Code |
|---|------|------|
| 1 | ELSE-IF | `else if (key.equals("機器提供サービス名"))` // data type is String item "Equipment Provision Service Name" |
| 2 | IF | `if (subkey.equalsIgnoreCase("value"))` |
| 3 | CALL | `return getKiki_tk_svs_mei_value();` |
| 4 | ELSE-IF | `else if (subkey.equalsIgnoreCase("enable"))` // if subkey is "enable", return the getter value of kiki_tk_svs_mei_enable |
| 5 | CALL | `return getKiki_tk_svs_mei_enabled();` |
| 6 | ELSE-IF | `else if (subkey.equalsIgnoreCase("state"))` // if subkey is "state", return the status |
| 7 | CALL | `return getKiki_tk_svs_mei_state();` |

**Block 8** — [ELSE-IF] Field dispatch: SmartLink Premium Status (L384–L399)

> Data type is String item "SmartLink Premium Subscription Status" (field ID: `smartrink_premium_um`). Dispatches to the three accessor methods for this field.
> (データタイプがStringの項目"スマートリンクプレミアム有無" (項目ID:smartrink_premium_um))

| # | Type | Code |
|---|------|------|
| 1 | ELSE-IF | `else if (key.equals("スマートリンクプレミアム有無"))` // data type is String item "SmartLink Premium Subscription Status" |
| 2 | IF | `if (subkey.equalsIgnoreCase("value"))` |
| 3 | CALL | `return getSmartrink_premium_um_value();` |
| 4 | ELSE-IF | `else if (subkey.equalsIgnoreCase("enable"))` // if subkey is "enable", return the getter value of smartrink_premium_um_enable |
| 5 | CALL | `return getSmartrink_premium_um_enabled();` |
| 6 | ELSE-IF | `else if (subkey.equalsIgnoreCase("state"))` // if subkey is "state", return the status |
| 7 | CALL | `return getSmartrink_premium_um_state();` |

**Block 9** — [ELSE] Fallback: no matching key (L376)

> No matching property exists for the given key. Returns null.
> (Case where no matching property exists, return null.)

| # | Type | Code |
|---|------|------|
| 1 | ELSE | `return null;` // if no matching property, return null |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `taknkiki_model_cd` | Field | Indoor equipment model code — the equipment type code for indoor units installed at the customer premises |
| `taknkiki_model_nm` | Field | Indoor equipment model name — human-readable name of the indoor equipment model |
| `kiki_kap_seiky_sta_ym` | Field | Equipment order request start year/month — the year and month when equipment ordering/billing begins |
| `kiki_pplan_sta_ym` | Field | Equipment plan start year/month/day — the effective start date of the equipment service plan |
| `kiki_tk_svs_mei` | Field | Equipment provision service name — the name of the telecommunication service being provided (e.g., FTTH, cable) |
| `smartrink_premium_um` | Field | SmartLink Premium subscription status — whether the SmartLink Premium add-on service is active or not (um = 有無, existence/non-existence) |
| `_enabled` suffix | Field | UI enable flag — controls whether the field is editable/enabled in the form |
| `_state` suffix | Field | UI display state — controls the visual state of the field (e.g., displayed, hidden, grayed-out) |
| `key` | Parameter | Business item name — the human-readable Japanese label used to identify a field in the data-type-bean routing system |
| `subkey` | Parameter | Property selector — the aspect of a field to retrieve: `value` (data), `enable` (editability), or `state` (display) |
| `X33VDataTypeBeanInterface` | Interface | Base interface for data-type-beans in the X33 screen framework — defines the `loadModelData`/`storeModelData` contract for bean-to-UI binding |
| `X33VDataTypeList` | Class | Framework collection class for repeating item lists on screens — each element is a data-type-bean |
| KKSV22101SF / KKW22101SF | Screen ID | Screen module for equipment provision service contract management — manages the creation and display of equipment service contracts |
| 宅内機器 (taknkiki) | Japanese term | Indoor equipment — terminal equipment installed at the customer's premises (e.g., ONT/ONU for fiber) |
| 機器発注 (kiki hatsu chu) | Japanese term | Equipment order — the process of ordering telecom equipment for service activation |
| 機器プラン (kiki puran) | Japanese term | Equipment plan — the service plan associated with equipment provision |
| SmartLink | Business term | SmartLink — K-Opticom's smart home/IoT connectivity service add-on |
| FTTH | Business term | Fiber To The Home — fiber-optic broadband internet service |
