---
# Business Logic - KKW02301SF01DBean.loadModelData() [294 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.KKW02301SF.KKW02301SF01DBean` |
| Layer | Service / View Data Bean (Web Layer — DBean) |
| Module | `KKW02301SF` (Package: `eo.web.webview.KKW02301SF`) |

## 1. Role

### KKW02301SF01DBean.loadModelData()

This method serves as a **data routing and dispatch hub** for the KKW02301SF screen's data bean. It implements the X33VDataTypeBeanInterface pattern, enabling the screen's list-based UI components (data tables, repeat regions, and select dropdowns) to dynamically fetch field values, edit states, and enable flags by key name. The method receives a Japanese **display label** (e.g., "オプションサービス契約番号" — Option Service Contract Number) as the `key` parameter and a **property type** (e.g., "value", "state", "enable") as the `subkey` parameter, then dispatches to the appropriate getter method within the same bean.

The method handles **26 distinct field categories** covering the full scope of an FTTH (Fiber To The Home) telecommunication service contract management screen. These categories include option service contracts, service codes, order details, service start/end dates, registration numbers, move/premise flags, recovery periods, and pricing information (added via IT1-2014-0000122 for the optical phone selector option package). Each field branch supports 2-3 subkey lookups depending on the field's editing behavior: "value" for data retrieval, "state" for editability state, and in some cases "enable" for an additional enabled/disabled flag.

This is a **shared utility method** called by multiple screen components and sub-DBeans within the KKW02301SF module. It does not perform any business logic, validation, or data transformation — it is purely a **data accessor/router** that delegates to the bean's own getter methods. Its role in the larger system is to provide a uniform interface for UI components to request field data without needing to know the internal field names or getter conventions.

**Design patterns:**
- **Routing/Dispatch**: Uses sequential string equality checks on the `key` parameter to route to the correct data accessor.
- **Delegation**: Forwards the request to specific getter methods (`getXxx_value`, `getXxx_state`, `getXxx_enabled`) defined in the same bean.
- **Facade over getXxx**: Provides a single entry point for the UI layer to access any field's data, state, or enable flag.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["loadModelString key, String subkey"])
    NULL_CHECK["key == null<br>||<br>subkey == null"]
    RETURN_NULL(["return null"])
    KEY_CHECK["key equals<br>option text"]
    SUBKEY_CHECK["subkey equalsIgnoreCase<br>value / state / enable"]
    BRANCH1_VALUE(["return getOp_svc_kei_no_value"])
    BRANCH1_STATE(["return getOp_svc_kei_no_state"])
    KEY_CHECK2["key equals<br>option text 2"]
    BRANCH2_VALUE(["return getOp_svc_kei_stat_value"])
    BRANCH2_STATE(["return getOp_svc_kei_stat_state"])
    KEY_CHECK3["key equals<br>option text 3"]
    BRANCH3_VALUE(["return getOp_svc_kei_stat_nm_value"])
    BRANCH3_ENABLE(["return getOp_svc_kei_stat_nm_enabled"])
    BRANCH3_STATE(["return getOp_svc_kei_stat_nm_state"])
    KEY_CHECK4["key equals<br>option text 4"]
    BRANCH4_VALUE(["return getOp_svc_cd_value"])
    BRANCH4_ENABLE(["return getOp_svc_cd_enabled"])
    BRANCH4_STATE(["return getOp_svc_cd_state"])
    KEY_CHECK5["key equals<br>option text 5"]
    BRANCH5_VALUE(["return getOp_svc_cd_nm_value"])
    BRANCH5_ENABLE(["return getOp_svc_cd_nm_enabled"])
    BRANCH5_STATE(["return getOp_svc_cd_nm_state"])
    KEY_CHECK6["key equals<br>option text 6"]
    BRANCH6_VALUE(["return getOp_naiyo_value"])
    BRANCH6_ENABLE(["return getOp_naiyo_enabled"])
    BRANCH6_STATE(["return getOp_naiyo_state"])
    KEY_CHECK7["key equals<br>option text 7"]
    BRANCH7_VALUE(["return getSvc_sta_dtm_value"])
    BRANCH7_STATE(["return getSvc_sta_dtm_state"])
    KEY_CHECK8["key equals<br>option text 8"]
    BRANCH8_VALUE(["return getRsv_tsta_kibo_ymd_value"])
    BRANCH8_STATE(["return getRsv_tsta_kibo_ymd_state"])
    KEY_CHECK9["key equals<br>option text 9"]
    BRANCH9_VALUE(["return getSvc_use_sta_kibo_ymd_value"])
    BRANCH9_STATE(["return getSvc_use_sta_kibo_ymd_state"])
    KEY_CHECK10["key equals<br>option text 10"]
    BRANCH10_VALUE(["return getSvc_end_dtm_value"])
    BRANCH10_ENABLE(["return getSvc_end_dtm_enabled"])
    BRANCH10_STATE(["return getSvc_end_dtm_state"])
    KEY_CHECK11["key equals<br>option text 11"]
    BRANCH11_VALUE(["return getUse_sta_ymd_value"])
    BRANCH11_ENABLE(["return getUse_sta_ymd_enabled"])
    BRANCH11_STATE(["return getUse_sta_ymd_state"])
    KEY_CHECK12["key equals<br>option text 12"]
    BRANCH12_VALUE(["return getMskm_no_value"])
    BRANCH12_STATE(["return getMskm_no_state"])
    KEY_CHECK13["key equals<br>option text 13"]
    BRANCH13_VALUE(["return getMskm_dtl_no_value"])
    BRANCH13_STATE(["return getMskm_dtl_no_state"])
    KEY_CHECK14["key equals<br>option text 14"]
    BRANCH14_VALUE(["return getGyo_disp_flg_value"])
    BRANCH14_STATE(["return getGyo_disp_flg_state"])
    KEY_CHECK15["key equals<br>option text 15"]
    BRANCH15_VALUE(["return getSbop_svc_kei_no_value"])
    BRANCH15_STATE(["return getSbop_svc_kei_no_state"])
    KEY_CHECK16["key equals<br>option text 16"]
    BRANCH16_VALUE(["return getSbop_svc_cd_value"])
    BRANCH16_STATE(["return getSbop_svc_cd_state"])
    KEY_CHECK17["key equals<br>option text 17"]
    BRANCH17_VALUE(["return getOpsvc_end_rsv_ymd_value"])
    BRANCH17_STATE(["return getOpsvc_end_rsv_ymd_state"])
    KEY_CHECK18["key equals<br>option text 18"]
    BRANCH18_VALUE(["return getDsp_svctk_staymd_value"])
    BRANCH18_STATE(["return getDsp_svctk_staymd_state"])
    KEY_CHECK19["key equals<br>option text 19"]
    BRANCH19_VALUE(["return getFmtcel_jgs_cd_value"])
    BRANCH19_STATE(["return getFmtcel_jgs_cd_state"])
    KEY_CHECK20["key equals<br>option text 20"]
    BRANCH20_VALUE(["return getMax_op_svc_cnt_value"])
    BRANCH20_STATE(["return getMax_op_svc_cnt_state"])
    KEY_CHECK21["key equals<br>option text 21"]
    BRANCH21_VALUE(["return getIdo_rsv_flg_value"])
    BRANCH21_STATE(["return getIdo_rsv_flg_state"])
    KEY_CHECK22["key equals<br>option text 22"]
    BRANCH22_VALUE(["return getKaihk_psb_prd_value"])
    BRANCH22_STATE(["return getKaihk_psb_prd_state"])
    KEY_CHECK23["key equals<br>option text 23"]
    BRANCH23_VALUE(["return getSvc_chrg_staymd_value"])
    BRANCH23_STATE(["return getSvc_chrg_staymd_state"])
    KEY_CHECK24["key equals<br>option text 24"]
    BRANCH24_VALUE(["return getSvc_chrg_endymd_value"])
    BRANCH24_STATE(["return getSvc_chrg_endymd_state"])
    KEY_CHECK25["key equals<br>option text 25"]
    BRANCH25_VALUE(["return getPcrs_cd_value"])
    BRANCH25_STATE(["return getPcrs_cd_state"])
    KEY_CHECK26["key equals<br>option text 26"]
    BRANCH26_VALUE(["return getPplan_cd_value"])
    BRANCH26_STATE(["return getPplan_cd_state"])
    NO_MATCH(["return null"])
    END_NODE(["Return / Next"])

    START --> NULL_CHECK
    NULL_CHECK -->|Yes| RETURN_NULL
    RETURN_NULL --> END_NODE
    NULL_CHECK -->|No| KEY_CHECK
    KEY_CHECK -->|op_svc_kei_no| SUBKEY_CHECK
    SUBKEY_CHECK -->|value| BRANCH1_VALUE
    SUBKEY_CHECK -->|state| BRANCH1_STATE
    BRANCH1_VALUE --> END_NODE
    BRANCH1_STATE --> END_NODE
    KEY_CHECK -->|No| KEY_CHECK2
    KEY_CHECK2 -->|op_svc_kei_stat| BRANCH2_VALUE
    KEY_CHECK2 -->|No| KEY_CHECK3
    KEY_CHECK3 -->|op_svc_kei_stat_nm| BRANCH3_VALUE
    KEY_CHECK3 -->|No| KEY_CHECK4
    KEY_CHECK4 -->|op_svc_cd| BRANCH4_VALUE
    KEY_CHECK4 -->|No| KEY_CHECK5
    KEY_CHECK5 -->|op_svc_cd_nm| BRANCH5_VALUE
    KEY_CHECK5 -->|No| KEY_CHECK6
    KEY_CHECK6 -->|op_naiyo| BRANCH6_VALUE
    KEY_CHECK6 -->|No| KEY_CHECK7
    KEY_CHECK7 -->|svc_sta_dtm| BRANCH7_VALUE
    KEY_CHECK7 -->|No| KEY_CHECK8
    KEY_CHECK8 -->|rsv_tsta_kibo_ymd| BRANCH8_VALUE
    KEY_CHECK8 -->|No| KEY_CHECK9
    KEY_CHECK9 -->|svc_use_sta_kibo_ymd| BRANCH9_VALUE
    KEY_CHECK9 -->|No| KEY_CHECK10
    KEY_CHECK10 -->|svc_end_dtm| BRANCH10_VALUE
    KEY_CHECK10 -->|No| KEY_CHECK11
    KEY_CHECK11 -->|use_sta_ymd| BRANCH11_VALUE
    KEY_CHECK11 -->|No| KEY_CHECK12
    KEY_CHECK12 -->|mskm_no| BRANCH12_VALUE
    KEY_CHECK12 -->|No| KEY_CHECK13
    KEY_CHECK13 -->|mskm_dtl_no| BRANCH13_VALUE
    KEY_CHECK13 -->|No| KEY_CHECK14
    KEY_CHECK14 -->|gyo_disp_flg| BRANCH14_VALUE
    KEY_CHECK14 -->|No| KEY_CHECK15
    KEY_CHECK15 -->|sbop_svc_kei_no| BRANCH15_VALUE
    KEY_CHECK15 -->|No| KEY_CHECK16
    KEY_CHECK16 -->|sbop_svc_cd| BRANCH16_VALUE
    KEY_CHECK16 -->|No| KEY_CHECK17
    KEY_CHECK17 -->|opsvc_end_rsv_ymd| BRANCH17_VALUE
    KEY_CHECK17 -->|No| KEY_CHECK18
    KEY_CHECK18 -->|dsp_svctk_staymd| BRANCH18_VALUE
    KEY_CHECK18 -->|No| KEY_CHECK19
    KEY_CHECK19 -->|fmtcel_jgs_cd| BRANCH19_VALUE
    KEY_CHECK19 -->|No| KEY_CHECK20
    KEY_CHECK20 -->|max_op_svc_cnt| BRANCH20_VALUE
    KEY_CHECK20 -->|No| KEY_CHECK21
    KEY_CHECK21 -->|ido_rsv_flg| BRANCH21_VALUE
    KEY_CHECK21 -->|No| KEY_CHECK22
    KEY_CHECK22 -->|kaihk_psb_prd| BRANCH22_VALUE
    KEY_CHECK22 -->|No| KEY_CHECK23
    KEY_CHECK23 -->|svc_chrg_staymd| BRANCH23_VALUE
    KEY_CHECK23 -->|No| KEY_CHECK24
    KEY_CHECK24 -->|svc_chrg_endymd| BRANCH24_VALUE
    KEY_CHECK24 -->|No| KEY_CHECK25
    KEY_CHECK25 -->|pcrs_cd| BRANCH25_VALUE
    KEY_CHECK25 -->|No| KEY_CHECK26
    KEY_CHECK26 -->|pplan_cd| BRANCH26_VALUE
    KEY_CHECK26 -->|No| NO_MATCH
    BRANCH2_VALUE --> END_NODE
    BRANCH2_STATE --> END_NODE
    BRANCH3_VALUE --> END_NODE
    BRANCH3_ENABLE --> END_NODE
    BRANCH3_STATE --> END_NODE
    BRANCH4_VALUE --> END_NODE
    BRANCH4_ENABLE --> END_NODE
    BRANCH4_STATE --> END_NODE
    BRANCH5_VALUE --> END_NODE
    BRANCH5_ENABLE --> END_NODE
    BRANCH5_STATE --> END_NODE
    BRANCH6_VALUE --> END_NODE
    BRANCH6_ENABLE --> END_NODE
    BRANCH6_STATE --> END_NODE
    BRANCH7_VALUE --> END_NODE
    BRANCH7_STATE --> END_NODE
    BRANCH8_VALUE --> END_NODE
    BRANCH8_STATE --> END_NODE
    BRANCH9_VALUE --> END_NODE
    BRANCH9_STATE --> END_NODE
    BRANCH10_VALUE --> END_NODE
    BRANCH10_ENABLE --> END_NODE
    BRANCH10_STATE --> END_NODE
    BRANCH11_VALUE --> END_NODE
    BRANCH11_ENABLE --> END_NODE
    BRANCH11_STATE --> END_NODE
    BRANCH12_VALUE --> END_NODE
    BRANCH12_STATE --> END_NODE
    BRANCH13_VALUE --> END_NODE
    BRANCH13_STATE --> END_NODE
    BRANCH14_VALUE --> END_NODE
    BRANCH14_STATE --> END_NODE
    BRANCH15_VALUE --> END_NODE
    BRANCH15_STATE --> END_NODE
    BRANCH16_VALUE --> END_NODE
    BRANCH16_STATE --> END_NODE
    BRANCH17_VALUE --> END_NODE
    BRANCH17_STATE --> END_NODE
    BRANCH18_VALUE --> END_NODE
    BRANCH18_STATE --> END_NODE
    BRANCH19_VALUE --> END_NODE
    BRANCH19_STATE --> END_NODE
    BRANCH20_VALUE --> END_NODE
    BRANCH20_STATE --> END_NODE
    BRANCH21_VALUE --> END_NODE
    BRANCH21_STATE --> END_NODE
    BRANCH22_VALUE --> END_NODE
    BRANCH22_STATE --> END_NODE
    BRANCH23_VALUE --> END_NODE
    BRANCH23_STATE --> END_NODE
    BRANCH24_VALUE --> END_NODE
    BRANCH24_STATE --> END_NODE
    BRANCH25_VALUE --> END_NODE
    BRANCH25_STATE --> END_NODE
    BRANCH26_VALUE --> END_NODE
    BRANCH26_STATE --> END_NODE
    NO_MATCH --> END_NODE
```

**Branch summary by field type:**

| # | Field (Japanese) | Item ID | Subkey Lookups | Supports "enable"? |
|---|-----------------|---------|----------------|--------------------|
| 1 | オプションサービス契約番号 (Option Service Contract Number) | op_svc_kei_no | value, state | No |
| 2 | オプションサービス契約ステータス (Option Service Contract Status) | op_svc_kei_stat | value, state | No |
| 3 | オプションサービス契約ステータス名称 (Option Service Contract Status Name) | op_svc_kei_stat_nm | value, enable, state | Yes |
| 4 | オプションサービスコード (Option Service Code) | op_svc_cd | value, enable, state | Yes |
| 5 | オプションサービスコード名称 (Option Service Code Name) | op_svc_cd_nm | value, enable, state | Yes |
| 6 | オプション内容 (Option Details) | op_naiyo | value, enable, state | Yes |
| 7 | サービス開始年月日時分秒 (Service Start DateTime) | svc_sta_dtm | value, state | No |
| 8 | 予約適用開始希望年月日 (Requested Reservation Apply Start Date) | rsv_tsta_kibo_ymd | value, state | No |
| 9 | サービス利用開始希望年月日 (Requested Service Use Start Date) | svc_use_sta_kibo_ymd | value, state | No |
| 10 | サービス終了年月日時分秒 (Service End DateTime) | svc_end_dtm | value, enable, state | Yes |
| 11 | 利用開始日 (Service Use Start Date) | use_sta_ymd | value, enable, state | Yes |
| 12 | 申請番号 (Application Number) | mskm_no | value, state | No |
| 13 | 申請明細番号 (Application Detail Number) | mskm_dtl_no | value, state | No |
| 14 | 行表示フラグ (Row Display Flag) | gyo_disp_flg | value, state | No |
| 15 | サブオプションサービス契約番号 (Sub-Option Service Contract Number) | sbop_svc_kei_no | value, state | No |
| 16 | サブオプションサービスコード (Sub-Option Service Code) | sbop_svc_cd | value, state | No |
| 17 | 利用終了予定日 (Planned Service End Date) | opsvc_end_rsv_ymd | value, state | No |
| 18 | 表示用サービス提供開始年月日 (Display Service Provision Start Date) | dsp_svctk_staymd | value, state | No |
| 19 | フェムセル事業者コード (Femtocell Provider Code) | fmtcel_jgs_cd | value, state | No |
| 20 | 最大オプションサービス数 (Max Option Service Count) | max_op_svc_cnt | value, state | No |
| 21 | 異動予約存在フラグ (Move Reservation Existence Flag) | ido_rsv_flg | value, state | No |
| 22 | 回復可能期間 (Recovery Possible Period) | kaihk_psb_prd | value, state | No |
| 23 | サービス課金開始年月日 (Service Billing Start Date) | svc_chrg_staymd | value, state | No |
| 24 | サービス課金終了年月日 (Service Billing End Date) | svc_chrg_endymd | value, state | No |
| 25 | 料金コースコード (Fee Course Code) | pcrs_cd | value, state | No |
| 26 | 料金プランコード (Fee Plan Code) | pplan_cd | value, state | No |

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `key` | `String` | The Japanese display label of a form field. It identifies which data field the UI component is requesting. Each unique `key` maps to a specific business data point in the FTTH service contract management screen (e.g., "オプションサービス契約番号" for the option service contract number, "申請番号" for the application number). This is the **primary dispatch key** that determines which getter branch is taken. Valid values are the 26 Japanese display labels listed in Section 2. |
| 2 | `subkey` | `String` | The property accessor type. It determines which attribute of the matched field to return: `"value"` returns the field's data value (the actual business data), `"state"` returns the field's edit state (whether the field is enabled/disabled in the UI), and `"enable"` (used by 6 fields) returns an additional enabled/disabled flag. The comparison is **case-insensitive** (`equalsIgnoreCase`), so "VALUE", "Value", "value" are all accepted. |

**Instance fields / external state read by this method:**

The method does NOT directly read any instance fields. Instead, it delegates to getter methods defined in the same bean (`KKW02301SF01DBean`), which in turn read the bean's internal data fields. These getter methods (`getXxx_value`, `getXxx_state`, `getXxx_enabled`) are the actual data accessors for the fields shown in the table above. The method effectively exposes all 26 field categories of the screen's data model through a uniform interface.

## 4. CRUD Operations / Called Services

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

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| R | `KKW02301SF01DBean.getOp_svc_kei_no_value` | KKW02301SF01DBean | - | Returns value for option service contract number |
| R | `KKW02301SF01DBean.getOp_svc_kei_no_state` | KKW02301SF01DBean | - | Returns edit state for option service contract number |
| R | `KKW02301SF01DBean.getOp_svc_kei_stat_value` | KKW02301SF01DBean | - | Returns value for option service contract status |
| R | `KKW02301SF01DBean.getOp_svc_kei_stat_state` | KKW02301SF01DBean | - | Returns edit state for option service contract status |
| R | `KKW02301SF01DBean.getOp_svc_kei_stat_nm_value` | KKW02301SF01DBean | - | Returns value for option service contract status name |
| R | `KKW02301SF01DBean.getOp_svc_kei_stat_nm_enabled` | KKW02301SF01DBean | - | Returns enabled flag for option service contract status name |
| R | `KKW02301SF01DBean.getOp_svc_kei_stat_nm_state` | KKW02301SF01DBean | - | Returns edit state for option service contract status name |
| R | `KKW02301SF01DBean.getOp_svc_cd_value` | KKW02301SF01DBean | - | Returns value for option service code |
| R | `KKW02301SF01DBean.getOp_svc_cd_enabled` | KKW02301SF01DBean | - | Returns enabled flag for option service code |
| R | `KKW02301SF01DBean.getOp_svc_cd_state` | KKW02301SF01DBean | - | Returns edit state for option service code |
| R | `KKW02301SF01DBean.getOp_svc_cd_nm_value` | KKW02301SF01DBean | - | Returns value for option service code name |
| R | `KKW02301SF01DBean.getOp_svc_cd_nm_enabled` | KKW02301SF01DBean | - | Returns enabled flag for option service code name |
| R | `KKW02301SF01DBean.getOp_svc_cd_nm_state` | KKW02301SF01DBean | - | Returns edit state for option service code name |
| R | `KKW02301SF01DBean.getOp_naiyo_value` | KKW02301SF01DBean | - | Returns value for option details |
| R | `KKW02301SF01DBean.getOp_naiyo_enabled` | KKW02301SF01DBean | - | Returns enabled flag for option details |
| R | `KKW02301SF01DBean.getOp_naiyo_state` | KKW02301SF01DBean | - | Returns edit state for option details |
| R | `KKW02301SF01DBean.getSvc_sta_dtm_value` | KKW02301SF01DBean | - | Returns value for service start datetime |
| R | `KKW02301SF01DBean.getSvc_sta_dtm_state` | KKW02301SF01DBean | - | Returns edit state for service start datetime |
| R | `KKW02301SF01DBean.getRsv_tsta_kibo_ymd_value` | KKW02301SF01DBean | - | Returns value for requested reservation apply start date |
| R | `KKW02301SF01DBean.getRsv_tsta_kibo_ymd_state` | KKW02301SF01DBean | - | Returns edit state for requested reservation apply start date |
| R | `KKW02301SF01DBean.getSvc_use_sta_kibo_ymd_value` | KKW02301SF01DBean | - | Returns value for requested service use start date |
| R | `KKW02301SF01DBean.getSvc_use_sta_kibo_ymd_state` | KKW02301SF01DBean | - | Returns edit state for requested service use start date |
| R | `KKW02301SF01DBean.getSvc_end_dtm_value` | KKW02301SF01DBean | - | Returns value for service end datetime |
| R | `KKW02301SF01DBean.getSvc_end_dtm_enabled` | KKW02301SF01DBean | - | Returns enabled flag for service end datetime |
| R | `KKW02301SF01DBean.getSvc_end_dtm_state` | KKW02301SF01DBean | - | Returns edit state for service end datetime |
| R | `KKW02301SF01DBean.getUse_sta_ymd_value` | KKW02301SF01DBean | - | Returns value for service use start date |
| R | `KKW02301SF01DBean.getUse_sta_ymd_enabled` | KKW02301SF01DBean | - | Returns enabled flag for service use start date |
| R | `KKW02301SF01DBean.getUse_sta_ymd_state` | KKW02301SF01DBean | - | Returns edit state for service use start date |
| R | `KKW02301SF01DBean.getMskm_no_value` | KKW02301SF01DBean | - | Returns value for application number |
| R | `KKW02301SF01DBean.getMskm_no_state` | KKW02301SF01DBean | - | Returns edit state for application number |
| R | `KKW02301SF01DBean.getMskm_dtl_no_value` | KKW02301SF01DBean | - | Returns value for application detail number |
| R | `KKW02301SF01DBean.getMskm_dtl_no_state` | KKW02301SF01DBean | - | Returns edit state for application detail number |
| R | `KKW02301SF01DBean.getGyo_disp_flg_value` | KKW02301SF01DBean | - | Returns value for row display flag |
| R | `KKW02301SF01DBean.getGyo_disp_flg_state` | KKW02301SF01DBean | - | Returns edit state for row display flag |
| R | `KKW02301SF01DBean.getSbop_svc_kei_no_value` | KKW02301SF01DBean | - | Returns value for sub-option service contract number |
| R | `KKW02301SF01DBean.getSbop_svc_kei_no_state` | KKW02301SF01DBean | - | Returns edit state for sub-option service contract number |
| R | `KKW02301SF01DBean.getSbop_svc_cd_value` | KKW02301SF01DBean | - | Returns value for sub-option service code |
| R | `KKW02301SF01DBean.getSbop_svc_cd_state` | KKW02301SF01DBean | - | Returns edit state for sub-option service code |
| R | `KKW02301SF01DBean.getOpsvc_end_rsv_ymd_value` | KKW02301SF01DBean | - | Returns value for planned service end date |
| R | `KKW02301SF01DBean.getOpsvc_end_rsv_ymd_state` | KKW02301SF01DBean | - | Returns edit state for planned service end date |
| R | `KKW02301SF01DBean.getDsp_svctk_staymd_value` | KKW02301SF01DBean | - | Returns value for display service provision start date |
| R | `KKW02301SF01DBean.getDsp_svctk_staymd_state` | KKW02301SF01DBean | - | Returns edit state for display service provision start date |
| R | `KKW02301SF01DBean.getFmtcel_jgs_cd_value` | KKW02301SF01DBean | - | Returns value for femtocell provider code |
| R | `KKW02301SF01DBean.getFmtcel_jgs_cd_state` | KKW02301SF01DBean | - | Returns edit state for femtocell provider code |
| R | `KKW02301SF01DBean.getMax_op_svc_cnt_value` | KKW02301SF01DBean | - | Returns value for max option service count |
| R | `KKW02301SF01DBean.getMax_op_svc_cnt_state` | KKW02301SF01DBean | - | Returns edit state for max option service count |
| R | `KKW02301SF01DBean.getIdo_rsv_flg_value` | KKW02301SF01DBean | - | Returns value for move reservation existence flag |
| R | `KKW02301SF01DBean.getIdo_rsv_flg_state` | KKW02301SF01DBean | - | Returns edit state for move reservation existence flag |
| R | `KKW02301SF01DBean.getKaihk_psb_prd_value` | KKW02301SF01DBean | - | Returns value for recovery possible period |
| R | `KKW02301SF01DBean.getKaihk_psb_prd_state` | KKW02301SF01DBean | - | Returns edit state for recovery possible period |
| R | `KKW02301SF01DBean.getSvc_chrg_staymd_value` | KKW02301SF01DBean | - | Returns value for service billing start date |
| R | `KKW02301SF01DBean.getSvc_chrg_staymd_state` | KKW02301SF01DBean | - | Returns edit state for service billing start date |
| R | `KKW02301SF01DBean.getSvc_chrg_endymd_value` | KKW02301SF01DBean | - | Returns value for service billing end date |
| R | `KKW02301SF01DBean.getSvc_chrg_endymd_state` | KKW02301SF01DBean | - | Returns edit state for service billing end date |
| R | `KKW02301SF01DBean.getPcrs_cd_value` | KKW02301SF01DBean | - | Returns value for fee course code |
| R | `KKW02301SF01DBean.getPcrs_cd_state` | KKW02301SF01DBean | - | Returns edit state for fee course code |
| R | `KKW02301SF01DBean.getPplan_cd_value` | KKW02301SF01DBean | - | Returns value for fee plan code |
| R | `KKW02301SF01DBean.getPplan_cd_state` | KKW02301SF01DBean | - | Returns edit state for fee plan code |

**All operations are Read (R)** — this method is purely a data accessor. It does not perform Create, Update, or Delete operations. It does not call any SC (Service Component) or CBS (Common Business Service) layers directly. All 56 method calls are self-contained getter methods within `KKW02301SF01DBean` that return bean field values, edit states, or enabled flags.

## 5. Dependency Trace

### Callers of loadModelData (KKW02301SF01DBean):

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | KKW02301SFBean (Screen) | `KKW02301SFBean.setOp_svc_kei_list_list` -> list item -> `X33VDataTypeBeanInterface.loadModelData` -> `KKW02301SF01DBean.loadModelData` | `getXxx_value/getXxx_state [R] in-bean fields` |
| 2 | KKW02301SFBean (Screen) | `getJsflist_typelist_op_svc_kei_list` -> iterates list -> `X33VDataTypeBeanInterface.loadModelData("オプションサービス契約", "value")` | `getOp_svc_kei_stat_value [R] in-bean field` |
| 3 | KKW02301SF02DBean | `KKW02301SF02DBean.loadModelData` -> `svc_kei_ucwk_no_list.get(i).loadModelData(subkey)` (delegated via interface) | `getXxx_value [R] in-bean field` |
| 4 | KKW02301SF03DBean | `KKW02301SF03DBean.loadModelData` -> `ido_rsn_cd_list.get(i).loadModelData(subkey)` / `op_svc_kei_no_list.get(i).loadModelData(subkey)` | `getXxx_value [R] in-bean field` |
| 5 | KKW02301SF04DBean | `KKW02301SF04DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |
| 6 | KKW02301SF05DBean | `KKW02301SF05DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |
| 7 | KKW02301SF06DBean | `KKW02301SF06DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |
| 8 | KKW02301SF07DBean | `KKW02301SF07DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |
| 9 | KKW02301SF08DBean | `KKW02301SF08DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |
| 10 | KKW02301SF09DBean | `KKW02301SF09DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |
| 11 | KKW02301SF10DBean | `KKW02301SF10DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |
| 12 | KKW02301SF11DBean | `KKW02301SF11DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |
| 13 | KKW02301SF12DBean | `KKW02301SF12DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |
| 14 | KKW02301SF13DBean | `KKW02301SF13DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |
| 15 | KKW02301SF14DBean | `KKW02301SF14DBean.loadModelData` (override, delegated to sub-beans) | `getXxx_value [R] in-bean field` |

**Notes:**
- The KKW02301SF01DBean is the **primary data bean** for the main screen. Other DBeans (02-14) are **sub-beans** for list items (repeating rows) that handle child data (e.g., option service details, telecom numbers, service contract agreements).
- Each sub-DBean overrides `loadModelData` with its own key-value dispatch logic, and some delegate list items back to the X33VDataTypeBeanInterface pattern.
- The `KKW02301SFBean` is the **main form bean** that aggregates all list data and calls `loadModelData` on list items via the `X33VDataTypeBeanInterface`.

## 6. Per-Branch Detail Blocks

**Block 1** — [IF] Null guard `(key == null || subkey == null)` (L828)

> Early return guard: if either parameter is null, the method returns null immediately. This prevents NPE when dispatching to getters.

| # | Type | Code |
|---|------|------|
| 1 | SET | `int separaterPoint = key.indexOf("/")` // Unused variable (dead code — assigned but never read) [L831] |
| 2 | RETURN | `return null` |

---

**Block 2** — [IF-ELSE-IF CHAIN] Key dispatch for 26 field categories (L834–L1117)

> Main dispatch logic. Each `if`/`else-if` block matches a Japanese display label against `key`. If matched, a nested `if`/`else-if` on `subkey` selects the appropriate getter.

**Block 2.1** — [IF] Field: オプションサービス契約番号 (Option Service Contract Number) (L834)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getOp_svc_kei_no_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getOp_svc_kei_no_state()` // ステータスを返す (Return state) |

**Block 2.2** — [ELSE-IF] Field: オプションサービス契約ステータス (Option Service Contract Status) (L845)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getOp_svc_kei_stat_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getOp_svc_kei_stat_state()` // ステータスを返す (Return state) |

**Block 2.3** — [ELSE-IF] Field: オプションサービス契約ステータス名称 (Option Service Contract Status Name) (L856)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getOp_svc_kei_stat_nm_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("enable")` -> `return getOp_svc_kei_stat_nm_enabled()` // op_svc_kei_stat_nm_enable の getter の戻り値を返す (Return the return value of op_svc_kei_stat_nm_enable getter) |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getOp_svc_kei_stat_nm_state()` // ステータスを返す (Return state) |

**Block 2.4** — [ELSE-IF] Field: オプションサービスコード (Option Service Code) (L867)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getOp_svc_cd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("enable")` -> `return getOp_svc_cd_enabled()` // op_svc_cd_enable の getter の戻り値を返す (Return the return value of op_svc_cd_enable getter) |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getOp_svc_cd_state()` // ステータスを返す (Return state) |

**Block 2.5** — [ELSE-IF] Field: オプションサービスコード名称 (Option Service Code Name) (L878)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getOp_svc_cd_nm_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("enable")` -> `return getOp_svc_cd_nm_enabled()` // op_svc_cd_nm_enable の getter の戻り値を返す (Return the return value of op_svc_cd_nm_enable getter) |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getOp_svc_cd_nm_state()` // ステータスを返す (Return state) |

**Block 2.6** — [ELSE-IF] Field: オプション内容 (Option Details) (L889)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getOp_naiyo_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("enable")` -> `return getOp_naiyo_enabled()` // op_naiyo_enable の getter の戻り値を返す (Return the return value of op_naiyo_enable getter) |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getOp_naiyo_state()` // ステータスを返す (Return state) |

**Block 2.7** — [ELSE-IF] Field: サービス開始年月日時分秒 (Service Start DateTime) (L900)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getSvc_sta_dtm_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getSvc_sta_dtm_state()` // ステータスを返す (Return state) |

**Block 2.8** — [ELSE-IF] Field: 予約適用開始希望年月日 (Requested Reservation Apply Start Date) (L911)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getRsv_tsta_kibo_ymd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getRsv_tsta_kibo_ymd_state()` // ステータスを返す (Return state) |

**Block 2.9** — [ELSE-IF] Field: サービス利用開始希望年月日 (Requested Service Use Start Date) (L923)

> Added by 2014/06/05 OM-2014-0001976 (田中 ADD START/END)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getSvc_use_sta_kibo_ymd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getSvc_use_sta_kibo_ymd_state()` // ステータスを返す (Return state) |

**Block 2.10** — [ELSE-IF] Field: サービス終了年月日時分秒 (Service End DateTime) (L934)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getSvc_end_dtm_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("enable")` -> `return getSvc_end_dtm_enabled()` // svc_end_dtm_enable の getter の戻り値を返す (Return the return value of svc_end_dtm_enable getter) |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getSvc_end_dtm_state()` // ステータスを返す (Return state) |

**Block 2.11** — [ELSE-IF] Field: 利用開始日 (Service Use Start Date) (L945)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getUse_sta_ymd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("enable")` -> `return getUse_sta_ymd_enabled()` // use_sta_ymd_enable の getter の戻り値を返す (Return the return value of use_sta_ymd_enable getter) |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getUse_sta_ymd_state()` // ステータスを返す (Return state) |

**Block 2.12** — [ELSE-IF] Field: 申請番号 (Application Number) (L956)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getMskm_no_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getMskm_no_state()` // ステータスを返す (Return state) |

**Block 2.13** — [ELSE-IF] Field: 申請明細番号 (Application Detail Number) (L967)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getMskm_dtl_no_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getMskm_dtl_no_state()` // ステータスを返す (Return state) |

**Block 2.14** — [ELSE-IF] Field: 行表示フラグ (Row Display Flag) (L978)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getGyo_disp_flg_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getGyo_disp_flg_state()` // ステータスを返す (Return state) |

**Block 2.15** — [ELSE-IF] Field: サブオプションサービス契約番号 (Sub-Option Service Contract Number) (L989)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getSbop_svc_kei_no_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getSbop_svc_kei_no_state()` // ステータスを返す (Return state) |

**Block 2.16** — [ELSE-IF] Field: サブオプションサービスコード (Sub-Option Service Code) (L1000)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getSbop_svc_cd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getSbop_svc_cd_state()` // ステータスを返す (Return state) |

**Block 2.17** — [ELSE-IF] Field: 利用終了予定日 (Planned Service End Date) (L1011)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getOpsvc_end_rsv_ymd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getOpsvc_end_rsv_ymd_state()` // ステータスを返す (Return state) |

**Block 2.18** — [ELSE-IF] Field: 表示用サービス提供開始年月日 (Display Service Provision Start Date) (L1022)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getDsp_svctk_staymd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getDsp_svctk_staymd_state()` // ステータスを返す (Return state) |

**Block 2.19** — [ELSE-IF] Field: フェムセル事業者コード (Femtocell Provider Code) (L1033)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getFmtcel_jgs_cd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getFmtcel_jgs_cd_state()` // ステータスを返す (Return state) |

**Block 2.20** — [ELSE-IF] Field: 最大オプションサービス数 (Max Option Service Count) (L1044)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getMax_op_svc_cnt_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getMax_op_svc_cnt_state()` // ステータスを返す (Return state) |

**Block 2.21** — [ELSE-IF] Field: 異動予約存在フラグ (Move Reservation Existence Flag) (L1055)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getIdo_rsv_flg_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getIdo_rsv_flg_state()` // ステータスを返す (Return state) |

**Block 2.22** — [ELSE-IF] Field: 回復可能期間 (Recovery Possible Period) (L1066)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getKaihk_psb_prd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getKaihk_psb_prd_state()` // ステータスを返す (Return state) |

**Block 2.23** — [ELSE-IF] Field: サービス課金開始年月日 (Service Billing Start Date) (L1077)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getSvc_chrg_staymd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getSvc_chrg_staymd_state()` // ステータスを返す (Return state) |

**Block 2.24** — [ELSE-IF] Field: サービス課金終了年月日 (Service Billing End Date) (L1088)

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getSvc_chrg_endymd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getSvc_chrg_endymd_state()` // ステータスを返す (Return state) |

**Block 2.25** — [ELSE-IF] Field: 料金コースコード (Fee Course Code) (L1099)

> Added by IT1-2014-0000122 光電話セレクトオプションパック ADD

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getPcrs_cd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getPcrs_cd_state()` // ステータスを返す (Return state) |

**Block 2.26** — [ELSE-IF] Field: 料金プランコード (Fee Plan Code) (L1109)

> Added by IT1-2014-0000122 光電話セレクトオプションパック ADD

| # | Type | Code |
|---|------|------|
| 1 | IF-SUB | `subkey.equalsIgnoreCase("value")` -> `return getPplan_cd_value()` |
| 2 | ELSE-IF | `subkey.equalsIgnoreCase("state")` -> `return getPplan_cd_state()` // ステータスを返す (Return state) |

**Block 2.27** — [ELSE-FALLTHROUGH] No matching property (L1117)

> If no key matches any of the 26 field categories, the method returns null. This handles the case where an unknown or unsupported field name is requested.

| # | Type | Code |
|---|------|------|
| 1 | RETURN | `return null` // 条件に一致するプロパティが存在しない場合は、nullを返す (Return null if no matching property exists) |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| オプションサービス契約番号 | Field | Option Service Contract Number — the unique identifier for an optional/add-on service contract associated with a primary FTTH service |
| op_svc_kei_no | Field | Option Service Category Number — internal system ID for option service contract lines |
| オプションサービス契約ステータス | Field | Option Service Contract Status — the current lifecycle state of an option service contract (e.g., active, suspended, terminated) |
| op_svc_kei_stat | Field | Option Service Category Status — system representation of the contract status |
| オプションサービス契約ステータス名称 | Field | Option Service Contract Status Name — human-readable label for the contract status (e.g., "有効" — Active, "停止" — Suspended) |
| op_svc_kei_stat_nm | Field | Option Service Category Status Name — system ID for the status name display value |
| オプションサービスコード | Field | Option Service Code — a code identifying the specific type of optional service (e.g., IPv6, security pack) |
| op_svc_cd | Field | Option Service Code — system code for the option service type |
| オプションサービスコード名称 | Field | Option Service Code Name — human-readable name for the option service code |
| op_svc_cd_nm | Field | Option Service Code Name — system ID for the option service name |
| オプション内容 | Field | Option Details — free-text or descriptive content describing the selected option service |
| op_naiyo | Field | Option Content/Details — the system field storing option description data |
| サービス開始年月日時分秒 | Field | Service Start Year/Month/Day Hour:Minute:Second — the datetime when the service provision begins |
| svc_sta_dtm | Field | Service Start DateTime — system field for service activation timestamp |
| 予約適用開始希望年月日 | Field | Requested Reservation Apply Start Year/Month/Day — the customer's desired date for the reservation to take effect |
| rsv_tsta_kibo_ymd | Field | Reservation Apply Start Hope Date — system field for the customer-requested start date |
| サービス利用開始希望年月日 | Field | Requested Service Use Start Year/Month/Day — the customer's desired date to begin using the service (added via OM-2014-0001976) |
| svc_use_sta_kibo_ymd | Field | Service Use Start Hope Date — system field for the requested service start date |
| サービス終了年月日時分秒 | Field | Service End Year/Month/Day Hour:Minute:Second — the datetime when the service provision ends |
| svc_end_dtm | Field | Service End DateTime — system field for service termination timestamp |
| 利用開始日 | Field | Service Use Start Date — the actual date the service started being used |
| use_sta_ymd | Field | Use Start Year/Month/Day — system field for the service start date |
| 申請番号 | Field | Application Number — the unique identifier for a service application/registration request |
| mskm_no | Field | Application (Moshikomi) Number — system field for the application ID |
| 申請明細番号 | Field | Application Detail Number — the line-item ID within an application for multiple service items |
| mskm_dtl_no | Field | Application Detail Number — system field for the application detail line item |
| 行表示フラグ | Field | Row Display Flag — a boolean flag controlling whether a data row is visible in the UI |
| gyo_disp_flg | Field | Row Display Flag — system field for row visibility control |
| サブオプションサービス契約番号 | Field | Sub-Option Service Contract Number — the identifier for a secondary/underlying option service contract |
| sbop_svc_kei_no | Field | Sub-Option Service Category Number — system ID for sub-option contracts |
| サブオプションサービスコード | Field | Sub-Option Service Code — code for the underlying optional service |
| sbop_svc_cd | Field | Sub-Option Service Code — system code for the sub-option type |
| 利用終了予定日 | Field | Planned Service End Date — the scheduled date when the service is expected to end |
| opsvc_end_rsv_ymd | Field | Option Service End Reservation Date — system field for planned end date |
| 表示用サービス提供開始年月日 | Field | Display Service Provision Start Year/Month/Day — the date shown to users for when service provision begins (display-specific) |
| dsp_svctk_staymd | Field | Display Service Stay Year/Month/Day — system field for the display-oriented start date |
| フェムセル事業者コード | Field | Femtocell Provider Code — a code identifying the femtocell (small-cell base station) service provider |
| fmtcel_jgs_cd | Field | Femtocell Provider Code — system code for the femtocell operator |
| 最大オプションサービス数 | Field | Maximum Option Service Count — the maximum number of optional services that can be added to this contract |
| max_op_svc_cnt | Field | Max Option Service Count — system field for the upper limit on option services |
| 異動予約存在フラグ | Field | Move Reservation Existence Flag — indicates whether a service move (churn between lines) reservation exists |
| ido_rsv_flg | Field | Move (Ido) Reservation Flag — system field for move reservation indicator |
| 回復可能期間 | Field | Recovery Possible Period — the time window during which a suspended service can be recovered/reactivated |
| kaihk_psb_prd | Field | Recovery Possible Period — system field for the reactivation window duration |
| サービス課金開始年月日 | Field | Service Billing Start Year/Month/Day — the date when billing for the service begins |
| svc_chrg_staymd | Field | Service Charge Start Year/Month/Day — system field for billing start date |
| サービス課金終了年月日 | Field | Service Billing End Year/Month/Day — the date when billing for the service ends |
| svc_chrg_endymd | Field | Service Charge End Year/Month/Day — system field for billing end date |
| 料金コースコード | Field | Fee Course Code — a code identifying the pricing course/tier selected for the service (added via IT1-2014-0000122) |
| pcrs_cd | Field | Price Course Code — system code for the fee course selection |
| 料金プランコード | Field | Fee Plan Code — a code identifying the specific pricing plan for the service (added via IT1-2014-0000122) |
| pplan_cd | Field | Price Plan Code — system code for the pricing plan |
| FTTH | Business term | Fiber To The Home — fiber-optic broadband internet service |
| 光電話セレクトオプションパック | Business term | Optical Phone Select Option Pack — a bundled option package for fiber telephone services (added via IT1-2014-0000122) |
| DBean | Technical term | Data Bean — a view-layer Java bean that holds UI model data for a screen. Extends X31CBaseBean and implements X33VDataTypeBeanInterface |
| X33VDataTypeBeanInterface | Technical term | The data type bean interface used in the X33 framework for list-based UI components. Defines `loadModelData(key, subkey)` for dynamic field access |
| X31CBaseBean | Technical term | Base bean class providing core data model functionality (including the overridden `loadModelData` for form-level data) |
| key | Parameter | Japanese display label used to identify which field's data to retrieve |
| subkey | Parameter | Property accessor type: "value" (data), "state" (edit state), or "enable" (enabled flag) |
| state | Property type | Edit state of a UI field — indicates whether the field is editable, disabled, or read-only |
| enable | Property type | Additional enabled/disabled flag — separate from "state", used for certain fields to control button/group activation |
| value | Property type | The actual data value of a field |