# Business Logic - KKW01027SF03DBean.loadModelData() [344 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.KKA15001SF.KKW01027SF03DBean` |
| Layer | Data Bean / View Layer (webview) |
| Module | `KKA15001SF` (Package: `eo.web.webview.KKA15001SF`) |

## 1. Role

### KKW01027SF03DBean.loadModelData()

This method serves as the central data-dispatching router for a campaign information display bean (`campaign_icrn` item). It implements a key/subkey-based retrieval pattern, commonly known as the X31CBaseBean model data access convention used across the K-Opticom web framework. The method receives a `key` (business field name in Japanese) and a `subkey` (accessor type -- "value", "enable", or "state"), then delegates to the appropriate getter method to return typed bean data.

The bean handles 28 distinct business fields covering a comprehensive set of campaign-related UI controls for EO Hikari (fiber-optic broadband) service contract operations. These include: service registration selection toggles, campaign codes and names, service codes, contract numbers, timing flags (immediate application, effective month), date-of-choice start date components (year, month, day), display/operation visibility conditions, and EO Hikari multi-function router swap configuration fields (boolean flags, radio button labels, condition flags).

The method implements a **routing/dispatch pattern** -- a flat if-else tree keyed on the Japanese field name, with nested if-else clauses for each subkey accessor type. Some fields support all three accessors (value, enable, state), while others only support value and state. The design follows a **getter delegation pattern**: the method contains no business logic itself, but simply routes to pre-populated getter methods on the bean instance.

Its **role in the larger system** is as a shared view-data accessor used by JSP pages (KKW010270PJP, KKW010280PJP) to render campaign information lists during the service contract modification flow (KKA15001SF). This bean is instantiated as a type-bean component stored in the parent bean's `campaign_icrn_list` collection and invoked for each list row when the page needs field-level data.

---

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["loadModelData key, subkey"])
    START --> null_check{key or subkey is null}
    null_check -->|Yes| return_null(["Return null"])
    null_check -->|No| key_dispatch{Key dispatch}
    key_dispatch -->|"登録選択"| subkey_1{subkey: value/enable/state}
    key_dispatch -->|"登録選択文字列"| subkey_2{subkey: value/enable/state}
    key_dispatch -->|"SYSID"| subkey_3{subkey: value/state}
    key_dispatch -->|"契約種別"| subkey_4{subkey: value/state}
    key_dispatch -->|"キャンペーンコード"| subkey_5{subkey: value/enable/state}
    key_dispatch -->|"キャンペーンコード名称"| subkey_6{subkey: value/enable/state}
    key_dispatch -->|"タイプコード"| subkey_7{subkey: value/state}
    key_dispatch -->|"タイプコード名称"| subkey_8{subkey: value/enable/state}
    key_dispatch -->|"サービスコード"| subkey_9{subkey: value/state}
    key_dispatch -->|"サービス契約番号"| subkey_10{subkey: value/enable/state}
    key_dispatch -->|"即時適用フラグ"| subkey_11{subkey: value/state}
    key_dispatch -->|"適用月"| subkey_12{subkey: value/enable/state}
    key_dispatch -->|"適用月名称"| subkey_13{subkey: value/enable/state}
    key_dispatch -->|"利用開始希望日"| subkey_14{subkey: value/enable/state}
    key_dispatch -->|"利用開始希望日_年"| subkey_15{subkey: value/enable/state}
    key_dispatch -->|"利用開始希望日_月"| subkey_16{subkey: value/enable/state}
    key_dispatch -->|"利用開始希望日_日"| subkey_17{subkey: value/enable/state}
    key_dispatch -->|"表示条件1"| subkey_18{subkey: value/state}
    key_dispatch -->|"表示条件2"| subkey_19{subkey: value/state}
    key_dispatch -->|"表示条件利用開始希望日"| subkey_20{subkey: value/state}
    key_dispatch -->|"適用月名称ラジオボタン1"| subkey_21{subkey: value/enable/state}
    key_dispatch -->|"適用月名称ラジオボタン2"| subkey_22{subkey: value/enable/state}
    key_dispatch -->|"EO光多機能ルーター交換有無"| subkey_23{subkey: value/enable/state}
    key_dispatch -->|"ルーター交換有無ラジオ1名称"| subkey_24{subkey: value/enable/state}
    key_dispatch -->|"ルーター交換有無ラジオ2名称"| subkey_25{subkey: value/enable/state}
    key_dispatch -->|"ルーター交換表示条件"| subkey_26{subkey: value/state}
    key_dispatch -->|"ルーター交換操作条件"| subkey_27{subkey: value/state}
    key_dispatch -->|"所有ルーター"| subkey_28{subkey: value/state}
    key_dispatch -->|Not matched| return_null_final(["Return null"])
    subkey_1 -->|value| r1(["Return getAdd_choice_value()"])
    subkey_1 -->|enable| r2(["Return getAdd_choice_enabled()"])
    subkey_1 -->|state| r3(["Return getAdd_choice_state()"])
    subkey_2 -->|value| r4(["Return getAdd_choice_value_value()"])
    subkey_2 -->|enable| r5(["Return getAdd_choice_value_enabled()"])
    subkey_2 -->|state| r6(["Return getAdd_choice_value_state()"])
    subkey_3 -->|value| r7(["Return getSysid_value()"])
    subkey_3 -->|state| r8(["Return getSysid_state()"])
    subkey_4 -->|value| r9(["Return getKei_kind_value()"])
    subkey_4 -->|state| r10(["Return getKei_kind_state()"])
    subkey_5 -->|value| r11(["Return getCampaign_cd_value()"])
    subkey_5 -->|enable| r12(["Return getCampaign_cd_enabled()"])
    subkey_5 -->|state| r13(["Return getCampaign_cd_state()"])
    subkey_6 -->|value| r14(["Return getCampaign_cd_nm_value()"])
    subkey_6 -->|enable| r15(["Return getCampaign_cd_nm_enabled()"])
    subkey_6 -->|state| r16(["Return getCampaign_cd_nm_state()"])
    subkey_7 -->|value| r17(["Return getType_cd_value()"])
    subkey_7 -->|state| r18(["Return getType_cd_state()"])
    subkey_8 -->|value| r19(["Return getType_cd_nm_value()"])
    subkey_8 -->|enable| r20(["Return getType_cd_nm_enabled()"])
    subkey_8 -->|state| r21(["Return getType_cd_nm_state()"])
    subkey_9 -->|value| r22(["Return getSvc_cd_value()"])
    subkey_9 -->|state| r23(["Return getSvc_cd_state()"])
    subkey_10 -->|value| r24(["Return getSvc_kei_no_value()"])
    subkey_10 -->|enable| r25(["Return getSvc_kei_no_enabled()"])
    subkey_10 -->|state| r26(["Return getSvc_kei_no_state()"])
    subkey_11 -->|value| r27(["Return getAply_jun_value()"])
    subkey_11 -->|state| r28(["Return getAply_jun_state()"])
    subkey_12 -->|value| r29(["Return getTekiyo_ymd_value()"])
    subkey_12 -->|enable| r30(["Return getTekiyo_ymd_enabled()"])
    subkey_12 -->|state| r31(["Return getTekiyo_ymd_state()"])
    subkey_13 -->|value| r32(["Return getTekiyo_ymd_nm_value()"])
    subkey_13 -->|enable| r33(["Return getTekiyo_ymd_nm_enabled()"])
    subkey_13 -->|state| r34(["Return getTekiyo_ymd_nm_state()"])
    subkey_14 -->|value| r35(["Return getRiyo_sta_ymd_value()"])
    subkey_14 -->|enable| r36(["Return getRiyo_sta_ymd_enabled()"])
    subkey_14 -->|state| r37(["Return getRiyo_sta_ymd_state()"])
    subkey_15 -->|value| r38(["Return getRiyo_sta_ymd_year_value()"])
    subkey_15 -->|enable| r39(["Return getRiyo_sta_ymd_year_enabled()"])
    subkey_15 -->|state| r40(["Return getRiyo_sta_ymd_year_state()"])
    subkey_16 -->|value| r41(["Return getRiyo_sta_ymd_mon_value()"])
    subkey_16 -->|enable| r42(["Return getRiyo_sta_ymd_mon_enabled()"])
    subkey_16 -->|state| r43(["Return getRiyo_sta_ymd_mon_state()"])
    subkey_17 -->|value| r44(["Return getRiyo_sta_ymd_day_value()"])
    subkey_17 -->|enable| r45(["Return getRiyo_sta_ymd_day_enabled()"])
    subkey_17 -->|state| r46(["Return getRiyo_sta_ymd_day_state()"])
    subkey_18 -->|value| r47(["Return getDisp_jkn_1_value()"])
    subkey_18 -->|state| r48(["Return getDisp_jkn_1_state()"])
    subkey_19 -->|value| r49(["Return getDisp_jkn_2_value()"])
    subkey_19 -->|state| r50(["Return getDisp_jkn_2_state()"])
    subkey_20 -->|value| r51(["Return getDisp_riyo_sta_ymd_value()"])
    subkey_20 -->|state| r52(["Return getDisp_riyo_sta_ymd_state()"])
    subkey_21 -->|value| r53(["Return getTekiyo_ymd_nm_1_value()"])
    subkey_21 -->|enable| r54(["Return getTekiyo_ymd_nm_1_enabled()"])
    subkey_21 -->|state| r55(["Return getTekiyo_ymd_nm_1_state()"])
    subkey_22 -->|value| r56(["Return getTekiyo_ymd_nm_2_value()"])
    subkey_22 -->|enable| r57(["Return getTekiyo_ymd_nm_2_enabled()"])
    subkey_22 -->|state| r58(["Return getTekiyo_ymd_nm_2_state()"])
    subkey_23 -->|value| r59(["Return getTakinou_rtr_chg_umu_value()"])
    subkey_23 -->|enable| r60(["Return getTakinou_rtr_chg_umu_enabled()"])
    subkey_23 -->|state| r61(["Return getTakinou_rtr_chg_umu_state()"])
    subkey_24 -->|value| r62(["Return getTakinou_rtr_chg_nm_1_value()"])
    subkey_24 -->|enable| r63(["Return getTakinou_rtr_chg_nm_1_enabled()"])
    subkey_24 -->|state| r64(["Return getTakinou_rtr_chg_nm_1_state()"])
    subkey_25 -->|value| r65(["Return getTakinou_rtr_chg_nm_2_value()"])
    subkey_25 -->|enable| r66(["Return getTakinou_rtr_chg_nm_2_enabled()"])
    subkey_25 -->|state| r67(["Return getTakinou_rtr_chg_nm_2_state()"])
    subkey_26 -->|value| r68(["Return getDisp_jkn_umu_value()"])
    subkey_26 -->|state| r69(["Return getDisp_jkn_umu_state()"])
    subkey_27 -->|value| r70(["Return getSosa_jkn_umu_value()"])
    subkey_27 -->|state| r71(["Return getSosa_jkn_umu_state()"])
    subkey_28 -->|value| r72(["Return getUse_rtr_value()"])
    subkey_28 -->|state| r73(["Return getUse_rtr_state()"])
    r1 --> END_NODE(["Return / Next"])
    r2 --> END_NODE
    r3 --> END_NODE
    r4 --> END_NODE
    r5 --> END_NODE
    r6 --> END_NODE
    r7 --> END_NODE
    r8 --> END_NODE
    r9 --> END_NODE
    r10 --> END_NODE
    r11 --> END_NODE
    r12 --> END_NODE
    r13 --> END_NODE
    r14 --> END_NODE
    r15 --> END_NODE
    r16 --> END_NODE
    r17 --> END_NODE
    r18 --> END_NODE
    r19 --> END_NODE
    r20 --> END_NODE
    r21 --> END_NODE
    r22 --> END_NODE
    r23 --> END_NODE
    r24 --> END_NODE
    r25 --> END_NODE
    r26 --> END_NODE
    r27 --> END_NODE
    r28 --> END_NODE
    r29 --> END_NODE
    r30 --> END_NODE
    r31 --> END_NODE
    r32 --> END_NODE
    r33 --> END_NODE
    r34 --> END_NODE
    r35 --> END_NODE
    r36 --> END_NODE
    r37 --> END_NODE
    r38 --> END_NODE
    r39 --> END_NODE
    r40 --> END_NODE
    r41 --> END_NODE
    r42 --> END_NODE
    r43 --> END_NODE
    r44 --> END_NODE
    r45 --> END_NODE
    r46 --> END_NODE
    r47 --> END_NODE
    r48 --> END_NODE
    r49 --> END_NODE
    r50 --> END_NODE
    r51 --> END_NODE
    r52 --> END_NODE
    r53 --> END_NODE
    r54 --> END_NODE
    r55 --> END_NODE
    r56 --> END_NODE
    r57 --> END_NODE
    r58 --> END_NODE
    r59 --> END_NODE
    r60 --> END_NODE
    r61 --> END_NODE
    r62 --> END_NODE
    r63 --> END_NODE
    r64 --> END_NODE
    r65 --> END_NODE
    r66 --> END_NODE
    r67 --> END_NODE
    r68 --> END_NODE
    r69 --> END_NODE
    r70 --> END_NODE
    r71 --> END_NODE
    r72 --> END_NODE
    r73 --> END_NODE
    return_null --> END_NODE
    return_null_final --> END_NODE
```

---

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `key` | `String` | The Japanese field name (item name / itemID) identifying which campaign bean field to retrieve. It corresponds to one of 28 business fields such as "Registration Selection", "Campaign Code", "EO Hikari Multi-Function Router Swap Existence", etc. Values are hardcoded Japanese strings that determine which getter method to dispatch to. |
| 2 | `subkey` | `String` | The accessor type that determines what aspect of the field to return. Valid values are "value" (the field's data value), "enable" (whether the field is enabled/disabled for user interaction), and "state" (the field's display state, e.g., visible/hidden). Not all fields support "enable" -- some only support "value" and "state". |

**Instance fields read by this method:**

All 28+ getter-backed bean properties (e.g., `add_choice_value`, `campaign_cd_state`, `takinou_rtr_chg_umu_value`) -- these are pre-populated data attributes on the bean instance that were loaded during screen initialization by the parent bean `KKW01027SFBean`.

---

## 4. CRUD Operations / Called Services

### Method Calls within loadModelData()

This method contains no direct database operations, SC code invocations, or CBS calls. It is a pure getter delegation -- every branch calls a bean getter method (`get*`) that returns values already held in the bean's instance fields.

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| R | `getAdd_choice_value` | KKW01027SF03DBean | - | Returns the registration selection value (Boolean) |
| R | `getAdd_choice_enabled` | KKW01027SF03DBean | - | Returns whether the registration selection field is enabled |
| R | `getAdd_choice_state` | KKW01027SF03DBean | - | Returns the display state of the registration selection field |
| R | `getAdd_choice_value_value` | KKW01027SF03DBean | - | Returns the registration selection text value (String) |
| R | `getAdd_choice_value_enabled` | KKW01027SF03DBean | - | Returns whether the registration selection text field is enabled |
| R | `getAdd_choice_value_state` | KKW01027SF03DBean | - | Returns the display state of the registration selection text |
| R | `getSysid_value` | KKW01027SF03DBean | - | Returns the SYSID value (String) |
| R | `getSysid_state` | KKW01027SF03DBean | - | Returns the display state of SYSID |
| R | `getKei_kind_value` | KKW01027SF03DBean | - | Returns the contract type value (String) |
| R | `getKei_kind_state` | KKW01027SF03DBean | - | Returns the display state of contract type |
| R | `getCampaign_cd_value` | KKW01027SF03DBean | - | Returns the campaign code value (String) |
| R | `getCampaign_cd_enabled` | KKW01027SF03DBean | - | Returns whether the campaign code field is enabled |
| R | `getCampaign_cd_state` | KKW01027SF03DBean | - | Returns the display state of campaign code |
| R | `getCampaign_cd_nm_value` | KKW01027SF03DBean | - | Returns the campaign code name value (String) |
| R | `getCampaign_cd_nm_enabled` | KKW01027SF03DBean | - | Returns whether the campaign code name field is enabled |
| R | `getCampaign_cd_nm_state` | KKW01027SF03DBean | - | Returns the display state of campaign code name |
| R | `getType_cd_value` | KKW01027SF03DBean | - | Returns the type code value (String) |
| R | `getType_cd_state` | KKW01027SF03DBean | - | Returns the display state of type code |
| R | `getType_cd_nm_value` | KKW01027SF03DBean | - | Returns the type code name value (String) |
| R | `getType_cd_nm_enabled` | KKW01027SF03DBean | - | Returns whether the type code name field is enabled |
| R | `getType_cd_nm_state` | KKW01027SF03DBean | - | Returns the display state of type code name |
| R | `getSvc_cd_value` | KKW01027SF03DBean | - | Returns the service code value (String) |
| R | `getSvc_cd_state` | KKW01027SF03DBean | - | Returns the display state of service code |
| R | `getSvc_kei_no_value` | KKW01027SF03DBean | - | Returns the service contract number value (String) |
| R | `getSvc_kei_no_enabled` | KKW01027SF03DBean | - | Returns whether the service contract number field is enabled |
| R | `getSvc_kei_no_state` | KKW01027SF03DBean | - | Returns the display state of service contract number |
| R | `getAply_jun_value` | KKW01027SF03DBean | - | Returns the immediate application flag value (String) |
| R | `getAply_jun_state` | KKW01027SF03DBean | - | Returns the display state of immediate application flag |
| R | `getTekiyo_ymd_value` | KKW01027SF03DBean | - | Returns the effective month value (String) |
| R | `getTekiyo_ymd_enabled` | KKW01027SF03DBean | - | Returns whether the effective month field is enabled |
| R | `getTekiyo_ymd_state` | KKW01027SF03DBean | - | Returns the display state of effective month |
| R | `getTekiyo_ymd_nm_value` | KKW01027SF03DBean | - | Returns the effective month name value (String) |
| R | `getTekiyo_ymd_nm_enabled` | KKW01027SF03DBean | - | Returns whether the effective month name field is enabled |
| R | `getTekiyo_ymd_nm_state` | KKW01027SF03DBean | - | Returns the display state of effective month name |
| R | `getRiyo_sta_ymd_value` | KKW01027SF03DBean | - | Returns the desired start date value (String) |
| R | `getRiyo_sta_ymd_enabled` | KKW01027SF03DBean | - | Returns whether the desired start date field is enabled |
| R | `getRiyo_sta_ymd_state` | KKW01027SF03DBean | - | Returns the display state of desired start date |
| R | `getRiyo_sta_ymd_year_value` | KKW01027SF03DBean | - | Returns the desired start date year value (String) |
| R | `getRiyo_sta_ymd_year_enabled` | KKW01027SF03DBean | - | Returns whether the year field is enabled |
| R | `getRiyo_sta_ymd_year_state` | KKW01027SF03DBean | - | Returns the display state of the year field |
| R | `getRiyo_sta_ymd_mon_value` | KKW01027SF03DBean | - | Returns the desired start date month value (String) |
| R | `getRiyo_sta_ymd_mon_enabled` | KKW01027SF03DBean | - | Returns whether the month field is enabled |
| R | `getRiyo_sta_ymd_mon_state` | KKW01027SF03DBean | - | Returns the display state of the month field |
| R | `getRiyo_sta_ymd_day_value` | KKW01027SF03DBean | - | Returns the desired start date day value (String) |
| R | `getRiyo_sta_ymd_day_enabled` | KKW01027SF03DBean | - | Returns whether the day field is enabled |
| R | `getRiyo_sta_ymd_day_state` | KKW01027SF03DBean | - | Returns the display state of the day field |
| R | `getDisp_jkn_1_value` | KKW01027SF03DBean | - | Returns the display condition 1 value (Boolean) |
| R | `getDisp_jkn_1_state` | KKW01027SF03DBean | - | Returns the display state of display condition 1 |
| R | `getDisp_jkn_2_value` | KKW01027SF03DBean | - | Returns the display condition 2 value (Boolean) |
| R | `getDisp_jkn_2_state` | KKW01027SF03DBean | - | Returns the display state of display condition 2 |
| R | `getDisp_riyo_sta_ymd_value` | KKW01027SF03DBean | - | Returns the display condition desired start date value (Boolean) |
| R | `getDisp_riyo_sta_ymd_state` | KKW01027SF03DBean | - | Returns the display state of display condition desired start date |
| R | `getTekiyo_ymd_nm_1_value` | KKW01027SF03DBean | - | Returns effective month name radio button 1 value (String) |
| R | `getTekiyo_ymd_nm_1_enabled` | KKW01027SF03DBean | - | Returns whether radio button 1 is enabled |
| R | `getTekiyo_ymd_nm_1_state` | KKW01027SF03DBean | - | Returns the display state of radio button 1 |
| R | `getTekiyo_ymd_nm_2_value` | KKW01027SF03DBean | - | Returns effective month name radio button 2 value (String) |
| R | `getTekiyo_ymd_nm_2_enabled` | KKW01027SF03DBean | - | Returns whether radio button 2 is enabled |
| R | `getTekiyo_ymd_nm_2_state` | KKW01027SF03DBean | - | Returns the display state of radio button 2 |
| R | `getTakinou_rtr_chg_umu_value` | KKW01027SF03DBean | - | Returns EO Hikari multi-function router swap existence value (String) |
| R | `getTakinou_rtr_chg_umu_enabled` | KKW01027SF03DBean | - | Returns whether the router swap field is enabled |
| R | `getTakinou_rtr_chg_umu_state` | KKW01027SF03DBean | - | Returns the display state of the router swap field |
| R | `getTakinou_rtr_chg_nm_1_value` | KKW01027SF03DBean | - | Returns router swap radio button 1 label value (String) |
| R | `getTakinou_rtr_chg_nm_1_enabled` | KKW01027SF03DBean | - | Returns whether radio button 1 label is enabled |
| R | `getTakinou_rtr_chg_nm_1_state` | KKW01027SF03DBean | - | Returns the display state of radio button 1 label |
| R | `getTakinou_rtr_chg_nm_2_value` | KKW01027SF03DBean | - | Returns router swap radio button 2 label value (String) |
| R | `getTakinou_rtr_chg_nm_2_enabled` | KKW01027SF03DBean | - | Returns whether radio button 2 label is enabled |
| R | `getTakinou_rtr_chg_nm_2_state` | KKW01027SF03DBean | - | Returns the display state of radio button 2 label |
| R | `getDisp_jkn_umu_value` | KKW01027SF03DBean | - | Returns router swap radio button display condition value (Boolean) |
| R | `getDisp_jkn_umu_state` | KKW01027SF03DBean | - | Returns the display state of router swap display condition |
| R | `getSosa_jkn_umu_value` | KKW01027SF03DBean | - | Returns router swap radio button operation condition value (Boolean) |
| R | `getSosa_jkn_umu_state` | KKW01027SF03DBean | - | Returns the display state of router swap operation condition |
| R | `getUse_rtr_value` | KKW01027SF03DBean | - | Returns the owned router value (String) |
| R | `getUse_rtr_state` | KKW01027SF03DBean | - | Returns the display state of owned router |

---

## 5. Dependency Trace

The method `loadModelData` is called indirectly through the `campaign_icrn_list` collection in the parent bean `KKW01027SFBean`. JSP pages iterate over the list and invoke `loadModelData` on each `KKW01027SF03DBean` instance for each campaign row in the display.

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Screen:KKW010270PJP | JSP iterates `campaign_icrn_list` -> `KKW01027SF03DBean.loadModelData(key, subkey)` | getter methods [R] Bean instance fields |
| 2 | Screen:KKW010280PJP | JSP iterates `campaign_icrn_list` -> `KKW01027SF03DBean.loadModelData(key, subkey)` | getter methods [R] Bean instance fields |

**Note:** No other Java files in the codebase call `KKW01027SF03DBean.loadModelData` directly. All accesses occur from JSP presentation code that retrieves field values for rendering campaign information in list rows.

---

## 6. Per-Branch Detail Blocks

### Block 1 -- IF (null check) (L995)

Guard clause: if either `key` or `subkey` is null, return null immediately.
Translation: "If key and subkey are null, return null"

| # | Type | Code |
|---|------|------|
| 1 | IF | `if (key == null || subkey == null)` // Guard: null parameters |
| 2 | RETURN | `return null;` |

---

### Block 2 -- IF (null check - subkey) (L1002)

Separate check for `subkey` being null, setting it to empty string.
Translation: "If subkey is null, set to empty string"

| # | Type | Code |
|---|------|------|
| 1 | IF | `else if (subkey == null)` // Guard: null subkey |
| 2 | SET | `subkey = new String("");` // Set to empty string |

---

### Block 3 -- IF/ELSE-IF chain: Key Dispatch (L1005-L1338)

Main dispatch logic: each top-level if-else checks the `key` value against a hardcoded Japanese field name. The `separaterPoint` variable (line 1002) stores `key.indexOf("/")` but is not used within this method -- it appears to be a leftover from the parent bean's `loadModelData` implementation in `KKW01027SFBean`.

#### Block 3.1 -- IF (key = "登録選択" / Registration Selection) (L1006)

Boolean-type item (itemID: `add_choice`). Supports value, enable, and state.
Translation: "Processing for each item. Data type is Boolean item 'Registration Selection' (itemID: add_choice)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `key.equals("登録選択")` // Registration Selection field |
| 2 | IF | `subkey.equalsIgnoreCase("value")` |
| 3 | CALL | `getAdd_choice_value()` // Returns Boolean |
| 4 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 5 | CALL | `getAdd_choice_enabled()` // Returns enabled flag |
| 6 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 7 | CALL | `getAdd_choice_state()` // Returns state |

#### Block 3.2 -- IF/ELSE-IF (key = "登録選択文字列" / Registration Selection Text) (L1020)

String-type item (itemID: `add_choice_value`). Supports value, enable, and state.
Translation: "Data type is String item 'Registration Selection Text' (itemID: add_choice_value)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getAdd_choice_value_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getAdd_choice_value_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getAdd_choice_value_state()` // Returns state |

#### Block 3.3 -- IF/ELSE-IF (key = "SYSID" / System ID) (L1034)

String-type item (itemID: `sysid`). Supports value and state only (no enable).
Translation: "Data type is String item 'SYSID' (itemID: sysid)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getSysid_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getSysid_state()` // Returns state |

#### Block 3.4 -- IF/ELSE-IF (key = "契約種別" / Contract Type) (L1044)

String-type item (itemID: `kei_kind`). Supports value and state only.
Translation: "Data type is String item 'Contract Type' (itemID: kei_kind)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getKei_kind_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getKei_kind_state()` // Returns state |

#### Block 3.5 -- IF/ELSE-IF (key = "キャンペーンコード" / Campaign Code) (L1054)

String-type item (itemID: `campaign_cd`). Supports value, enable, and state.
Translation: "Data type is String item 'Campaign Code' (itemID: campaign_cd)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getCampaign_cd_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getCampaign_cd_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getCampaign_cd_state()` // Returns state |

#### Block 3.6 -- IF/ELSE-IF (key = "キャンペーンコード名称" / Campaign Code Name) (L1068)

String-type item (itemID: `campaign_cd_nm`). Supports value, enable, and state.
Translation: "Data type is String item 'Campaign Code Name' (itemID: campaign_cd_nm)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getCampaign_cd_nm_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getCampaign_cd_nm_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getCampaign_cd_nm_state()` // Returns state |

#### Block 3.7 -- IF/ELSE-IF (key = "タイプコード" / Type Code) (L1082)

String-type item (itemID: `type_cd`). Supports value and state only.
Translation: "Data type is String item 'Type Code' (itemID: type_cd)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getType_cd_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getType_cd_state()` // Returns state |

#### Block 3.8 -- IF/ELSE-IF (key = "タイプコード名称" / Type Code Name) (L1092)

String-type item (itemID: `type_cd_nm`). Supports value, enable, and state.
Translation: "Data type is String item 'Type Code Name' (itemID: type_cd_nm)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getType_cd_nm_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getType_cd_nm_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getType_cd_nm_state()` // Returns state |

#### Block 3.9 -- IF/ELSE-IF (key = "サービスコード" / Service Code) (L1106)

String-type item (itemID: `svc_cd`). Supports value and state only.
Translation: "Data type is String item 'Service Code' (itemID: svc_cd)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getSvc_cd_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getSvc_cd_state()` // Returns state |

#### Block 3.10 -- IF/ELSE-IF (key = "サービス契約番号" / Service Contract Number) (L1116)

String-type item (itemID: `svc_kei_no`). Supports value, enable, and state.
Translation: "Data type is String item 'Service Contract Number' (itemID: svc_kei_no)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getSvc_kei_no_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getSvc_kei_no_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getSvc_kei_no_state()` // Returns state |

#### Block 3.11 -- IF/ELSE-IF (key = "即時適用フラグ" / Immediate Application Flag) (L1130)

String-type item (itemID: `aply_jun`). Supports value and state only.
Translation: "Data type is String item 'Immediate Application Flag' (itemID: aply_jun)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getAply_jun_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getAply_jun_state()` // Returns state |

#### Block 3.12 -- IF/ELSE-IF (key = "適用月" / Effective Month) (L1140)

String-type item (itemID: `tekiyo_ymd`). Supports value, enable, and state.
Translation: "Data type is String item 'Effective Month' (itemID: tekiyo_ymd)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getTekiyo_ymd_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getTekiyo_ymd_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getTekiyo_ymd_state()` // Returns state |

#### Block 3.13 -- IF/ELSE-IF (key = "適用月名称" / Effective Month Name) (L1154)

String-type item (itemID: `tekiyo_ymd_nm`). Supports value, enable, and state.
Translation: "Data type is String item 'Effective Month Name' (itemID: tekiyo_ymd_nm)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getTekiyo_ymd_nm_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getTekiyo_ymd_nm_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getTekiyo_ymd_nm_state()` // Returns state |

#### Block 3.14 -- IF/ELSE-IF (key = "利用開始希望日" / Desired Start Date) (L1168)

String-type item (itemID: `riyo_sta_ymd`). Supports value, enable, and state.
Translation: "Data type is String item 'Desired Start Date' (itemID: riyo_sta_ymd)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getRiyo_sta_ymd_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getRiyo_sta_ymd_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getRiyo_sta_ymd_state()` // Returns state |

#### Block 3.15 -- IF/ELSE-IF (key = "利用開始希望日_年" / Desired Start Date Year) (L1182)

String-type item (itemID: `riyo_sta_ymd_year`). Supports value, enable, and state.
Translation: "Data type is String item 'Desired Start Date Year' (itemID: riyo_sta_ymd_year)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getRiyo_sta_ymd_year_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getRiyo_sta_ymd_year_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getRiyo_sta_ymd_year_state()` // Returns state |

#### Block 3.16 -- IF/ELSE-IF (key = "利用開始希望日_月" / Desired Start Date Month) (L1196)

String-type item (itemID: `riyo_sta_ymd_mon`). Supports value, enable, and state.
Translation: "Data type is String item 'Desired Start Date Month' (itemID: riyo_sta_ymd_mon)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getRiyo_sta_ymd_mon_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getRiyo_sta_ymd_mon_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getRiyo_sta_ymd_mon_state()` // Returns state |

#### Block 3.17 -- IF/ELSE-IF (key = "利用開始希望日_日" / Desired Start Date Day) (L1210)

String-type item (itemID: `riyo_sta_ymd_day`). Supports value, enable, and state.
Translation: "Data type is String item 'Desired Start Date Day' (itemID: riyo_sta_ymd_day)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getRiyo_sta_ymd_day_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getRiyo_sta_ymd_day_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getRiyo_sta_ymd_day_state()` // Returns state |

#### Block 3.18 -- IF/ELSE-IF (key = "表示条件1" / Display Condition 1) (L1224)

Boolean-type item (itemID: `disp_jkn_1`). Supports value and state only.
Translation: "Data type is Boolean item 'Display Condition 1' (itemID: disp_jkn_1)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getDisp_jkn_1_value()` // Returns Boolean |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getDisp_jkn_1_state()` // Returns state |

#### Block 3.19 -- IF/ELSE-IF (key = "表示条件2" / Display Condition 2) (L1234)

Boolean-type item (itemID: `disp_jkn_2`). Supports value and state only.
Translation: "Data type is Boolean item 'Display Condition 2' (itemID: disp_jkn_2)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getDisp_jkn_2_value()` // Returns Boolean |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getDisp_jkn_2_state()` // Returns state |

#### Block 3.20 -- IF/ELSE-IF (key = "表示条件利用開始希望日" / Display Condition Desired Start Date) (L1244)

Boolean-type item (itemID: `disp_riyo_sta_ymd`). Supports value and state only.
Translation: "Data type is Boolean item 'Display Condition Desired Start Date' (itemID: disp_riyo_sta_ymd)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getDisp_riyo_sta_ymd_value()` // Returns Boolean |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getDisp_riyo_sta_ymd_state()` // Returns state |

#### Block 3.21 -- IF/ELSE-IF (key = "適用月名称ラジオボタン1" / Effective Month Name Radio Button 1) (L1254)

String-type item (itemID: `tekiyo_ymd_nm_1`). Supports value, enable, and state.
Translation: "Data type is String item 'Effective Month Name Radio Button 1' (itemID: tekiyo_ymd_nm_1)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getTekiyo_ymd_nm_1_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getTekiyo_ymd_nm_1_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getTekiyo_ymd_nm_1_state()` // Returns state |

#### Block 3.22 -- IF/ELSE-IF (key = "適用月名称ラジオボタン2" / Effective Month Name Radio Button 2) (L1268)

String-type item (itemID: `tekiyo_ymd_nm_2`). Supports value, enable, and state.
Translation: "Data type is String item 'Effective Month Name Radio Button 2' (itemID: tekiyo_ymd_nm_2)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getTekiyo_ymd_nm_2_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getTekiyo_ymd_nm_2_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getTekiyo_ymd_nm_2_state()` // Returns state |

#### Block 3.23 -- IF/ELSE-IF (key = "EO光多機能ルーター交換有無" / EO Hikari Multi-Function Router Swap Existence) (L1282)

String-type item (itemID: `takinou_rtr_chg_umu`). Supports value, enable, and state.
Translation: "Data type is String item 'EO Hikari Multi-Function Router Swap Existence' (itemID: takinou_rtr_chg_umu)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getTakinou_rtr_chg_umu_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getTakinou_rtr_chg_umu_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getTakinou_rtr_chg_umu_state()` // Returns state |

#### Block 3.24 -- IF/ELSE-IF (key = "EO光多機能ルーター交換有無ラジオボタン1名称" / Router Swap Radio Button 1 Name) (L1296)

String-type item (itemID: `takinou_rtr_chg_nm_1`). Supports value, enable, and state.
Translation: "Data type is String item 'EO Hikari Multi-Function Router Swap Existence Radio Button 1 Name' (itemID: takinou_rtr_chg_nm_1)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getTakinou_rtr_chg_nm_1_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getTakinou_rtr_chg_nm_1_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getTakinou_rtr_chg_nm_1_state()` // Returns state |

#### Block 3.25 -- IF/ELSE-IF (key = "EO光多機能ルーター交換有無ラジオボタン2名称" / Router Swap Radio Button 2 Name) (L1310)

String-type item (itemID: `takinou_rtr_chg_nm_2`). Supports value, enable, and state.
Translation: "Data type is String item 'EO Hikari Multi-Function Router Swap Existence Radio Button 2 Name' (itemID: takinou_rtr_chg_nm_2)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getTakinou_rtr_chg_nm_2_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("enable"))` // When subkey is "enable" |
| 4 | CALL | `getTakinou_rtr_chg_nm_2_enabled()` // Returns enabled flag |
| 5 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 6 | CALL | `getTakinou_rtr_chg_nm_2_state()` // Returns state |

#### Block 3.26 -- IF/ELSE-IF (key = "EO光多機能ルーター交換有無ラジオボタン表示条件" / Router Swap Radio Button Display Condition) (L1324)

Boolean-type item (itemID: `disp_jkn_umu`). Supports value and state only.
Translation: "Data type is Boolean item 'EO Hikari Multi-Function Router Swap Existence Radio Button Display Condition' (itemID: disp_jkn_umu)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getDisp_jkn_umu_value()` // Returns Boolean |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getDisp_jkn_umu_state()` // Returns state |

#### Block 3.27 -- IF/ELSE-IF (key = "EO光多機能ルーター交換有無ラジオボタン操作条件" / Router Swap Radio Button Operation Condition) (L1334)

Boolean-type item (itemID: `sosa_jkn_umu`). Supports value and state only.
Translation: "Data type is Boolean item 'EO Hikari Multi-Function Router Swap Existence Radio Button Operation Condition' (itemID: sosa_jkn_umu)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getSosa_jkn_umu_value()` // Returns Boolean |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getSosa_jkn_umu_state()` // Returns state |

#### Block 3.28 -- IF/ELSE-IF (key = "所有ルーター" / Owned Router) (L1344)

String-type item (itemID: `use_rtr`). Supports value and state only.
Translation: "Data type is String item 'Owned Router' (itemID: use_rtr)"

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `getUse_rtr_value()` // Returns String |
| 3 | IF | `else if (subkey.equalsIgnoreCase("state"))` // When subkey is "state" |
| 4 | CALL | `getUse_rtr_state()` // Returns state |

---

### Block 4 -- ELSE (No match fallback) (L1356)

Translation: "If no matching property exists, return null."

| # | Type | Code |
|---|------|------|
| 1 | ELSE | `return null;` // No matching key found |

---

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `add_choice` | Field | Registration selection -- Boolean flag indicating whether a campaign option has been selected |
| `add_choice_value` | Field | Registration selection text -- String value describing the selected registration choice |
| `sysid` | Field | System ID -- internal system identifier for the campaign bean instance |
| `kei_kind` | Field | Contract type -- classification of the service contract type |
| `campaign_cd` | Field | Campaign code -- code identifying a specific promotional campaign |
| `campaign_cd_nm` | Field | Campaign code name -- human-readable name of the promotional campaign |
| `type_cd` | Field | Type code -- classification code for service/item type |
| `type_cd_nm` | Field | Type code name -- human-readable name of the type code |
| `svc_cd` | Field | Service code -- code identifying a specific service (e.g., FTTH, Mail) |
| `svc_kei_no` | Field | Service contract number -- unique identifier for the service contract line |
| `aply_jun` | Field | Immediate application flag -- indicates whether changes should take effect immediately |
| `tekiyo_ymd` | Field | Effective month -- the month when the campaign change takes effect |
| `tekiyo_ymd_nm` | Field | Effective month name -- human-readable label for the effective month |
| `riyo_sta_ymd` | Field | Desired start date -- customer's preferred service start date |
| `riyo_sta_ymd_year` | Field | Desired start date year -- year component of the desired start date |
| `riyo_sta_ymd_mon` | Field | Desired start date month -- month component of the desired start date |
| `riyo_sta_ymd_day` | Field | Desired start date day -- day component of the desired start date |
| `disp_jkn_1` | Field | Display condition 1 -- Boolean flag controlling visibility of display condition 1 |
| `disp_jkn_2` | Field | Display condition 2 -- Boolean flag controlling visibility of display condition 2 |
| `disp_riyo_sta_ymd` | Field | Display condition desired start date -- Boolean flag controlling visibility of start date |
| `tekiyo_ymd_nm_1` | Field | Effective month name radio button 1 -- value of first radio button option |
| `tekiyo_ymd_nm_2` | Field | Effective month name radio button 2 -- value of second radio button option |
| `takinou_rtr_chg_umu` | Field | EO Hikari multi-function router swap existence -- whether customer wants to swap their multi-function router |
| `takinou_rtr_chg_nm_1` | Field | Router swap radio button 1 name -- label of first router swap option |
| `takinou_rtr_chg_nm_2` | Field | Router swap radio button 2 name -- label of second router swap option |
| `disp_jkn_umu` | Field | Router swap radio button display condition -- controls visibility of router swap options |
| `sosa_jkn_umu` | Field | Router swap radio button operation condition -- controls operability of router swap options |
| `use_rtr` | Field | Owned router -- indicates which router the customer currently owns |
| EO Hikari | Business term | Fiber-optic broadband service operated by K-Opticom (K-Opticom Hikari) |
| KKW01027SF03DBean | Class | Campaign information display data bean for the KKA15001SF service contract modification screen |
| campaign_icrn | Field | Campaign information list -- the list of campaigns displayed in the screen's data grid |
| X31CBaseBean | Framework | K-Opticom web framework bean base class providing standard model data access via loadModelData |
| value | Subkey | Accessor type requesting the field's data value |
| enable | Subkey | Accessor type requesting the field's enabled/disabled state |
| state | Subkey | Accessor type requesting the field's display/visibility state |
| FTTH | Business term | Fiber To The Home -- fiber-optic broadband internet service type |
| KKW01027SFBean | Class | Parent screen bean containing the campaign_icrn_list collection |
| KKW010270PJP | Screen | JSP presentation page for campaign information modification |
| KKW010280PJP | Screen | JSP presentation page for campaign information confirmation |
