# Business Logic — FUW00927SFBean.storeModelData() [1127 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.FUW00927SF.FUW00927SFBean` |
| Layer | Webview / Presentation Bean (Controller tier within the web layer) |
| Module | `FUW00927SF` (Package: `eo.web.webview.FUW00927SF`) |

## 1. Role

### FUW00927SFBean.storeModelData()

This method is the central data ingestion and dispatching hub for the FUW00927SF screen bean. It accepts a key-string, a sub-key, a value, and a flag, then routes the value to the appropriate field setter on the bean based on the key prefix. It implements a **routing/dispatch pattern** (sometimes called a "tree-based dispatcher") that decomposes a composite key string (e.g., "koumoku_code/0/value") into hierarchical segments to identify which data bucket -- simple property, indexed list, or sub-tree -- should receive the data.

The method handles three distinct data patterns:

1. **Common information data**: Delegated to the parent class when the key starts with "//". This is handled by calling `super.storeCommonInfoData(key, in_value, isSetAsString)`.

2. **Indexed list items**: For variable-repeat fields such as "koumoku_code" (item code), "value" (item value), "getsu_ryokin_kmk" (monthly fee item), "getsu_ryokin" (monthly fee), "shoki_hiyo_kmk" (initial fee item), "shoki_hiyo" (initial fee), "getsu_ryokin_kei" (monthly fee total), "getsu_ryokin_kei_zei" (monthly fee total tax-excluded), and their Smart Link and GH variants. An index is parsed from the key after the first "/" and the data is stored into the corresponding element of a typed list via `storeModelData` on each element. The cast is always to `X33VDataTypeStringBean`.

3. **Simple single-value properties**: For flat fields like "fnc_mode" (function code), "screen_mode" (screen mode), "shoki_hiyo_kei" (initial fee total), "shoki_hiyo_kei_zei" (initial fee total tax-excluded), "mobile_month" (mobile monthly fee total), "mobile_init" (mobile initial fee total), "getsu_ryokin_mongon" (monthly fee description), "shoki_hiyo_mongon" (initial fee description), and many more screen display control fields. The value is cast and set directly via setter methods with `_value` and `_state` suffixes. A special Boolean field "kei_svc_area_dsp_flg" (contracted service area display flag) casts to `Boolean` instead of `String`.

In the larger system, this method serves as the shared model binding utility for the FUW00927SF screen -- a telecom service contract/order screen handling fiber-to-the-home (FTTH) installations. It is called by multiple screen entry methods to populate the bean's model from incoming form data, JSON payloads, or service response objects. It supports both regular and **Smart Link** bundled plans (Japanese: スマートリンク), as well as **GH** (Group Home / large-scale) variants.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["storeModelData key, subkey, in_value, isSetAsString"])
    NULL_KEY["key == null?"]
    RETURN1(["return early"])
    NULL_SUBKEY["subkey = empty string"]
    FIND_SEP["find separator in key"]
    HAS_SEP["key contains '/' ?"]
    EXTRACT_FIRST["extract first key segment"]
    CHECK_FNC["keyElement = '機能コード' (function code)"]
    SET_FNC_VAL["setFnc_mode_value"]
    SET_FNC_ST["setFnc_mode_state"]
    SIMPLE_KEYS["Simple String key branches"]
    SIMPLE_KEYS2["Simple Boolean key branches"]
    LIST_KEYS["Indexed list key branches"]
    LIST_KEYS2["Smart Link list branches"]
    LIST_KEYS3["GH list branches"]
    LIST_KEYS4["Discount text list branches"]
    TAKCHO["Takcho apo key branch"]
    END_NODE(["return void"])

    START --> NULL_KEY
    NULL_KEY --> |true| RETURN1
    NULL_KEY --> |false| NULL_SUBKEY
    NULL_SUBKEY --> FIND_SEP
    FIND_SEP --> HAS_SEP
    HAS_SEP --> |true| EXTRACT_FIRST
    HAS_SEP --> |false| EXTRACT_FIRST
    EXTRACT_FIRST --> COMMON_CHECK["key starts with '//' ?"]
    COMMON_CHECK --> |true| DELEGATE["super.storeCommonInfoData(key, in_value, isSetAsString)"]
    DELEGATE --> END_NODE
    COMMON_CHECK --> |false| CHECK_FNC

    CHECK_FNC --> |true| SET_FNC_VAL
    SET_FNC_VAL --> SET_FNC_ST
    SET_FNC_ST --> SIMPLE_KEYS
    CHECK_FNC --> |false| SIMPLE_KEYS

    SIMPLE_KEYS --> SIMPLE_KEYS2
    SIMPLE_KEYS2 --> LIST_KEYS
    LIST_KEYS --> LIST_KEYS2
    LIST_KEYS2 --> LIST_KEYS3
    LIST_KEYS3 --> LIST_KEYS4
    LIST_KEYS4 --> TAKCHO
    TAKCHO --> END_NODE
```

**Constant Resolution:**
No external constants from `JZEStrConst` are used within this method's control flow. The method uses literal string comparisons (e.g., `"//"` for common info prefix, `"value"`, `"state"`, `"enable"`, `""` for subkey matching) and the pre-extracted constants are defined elsewhere in the codebase and not referenced in this method.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `key` | `String` | The item identifier (project name / field path) used to determine which bean property to set. Can be a simple field name (e.g., "機能コード"), an indexed path (e.g., "項目コード/0/値"), or a common info marker ("//..."). |
| 2 | `subkey` | `String` | The sub-property specifier indicating whether the data represents a "value" (actual data), "state" (enabled/disabled state), or "enable" (boolean enable flag). Used to route to the correct setter variant. |
| 3 | `in_value` | `Object` | The data value to store. Typically a `String` for simple fields, a `Boolean` for flag fields (e.g., kei_svc_area_dsp_flg), or arbitrary data for indexed list elements. |
| 4 | `isSetAsString` | `boolean` | When true, indicates that a Long-type item's Value property should receive a String-type value. Used for LongBean subclasses to control type coercion behavior. |

**Instance fields / external state read:**
- `koumoku_code_list` -- List of `X33VDataTypeStringBean` for item codes
- `koumoku_value_list` -- List of `X33VDataTypeStringBean` for item values
- `getsu_ryokin_kmk_list` -- List of `X33VDataTypeStringBean` for monthly fee items
- `getsu_ryokin_list` -- List of `X33VDataTypeStringBean` for monthly fees
- `shoki_hiyo_kmk_list` -- List of `X33VDataTypeStringBean` for initial fee items
- `shoki_hiyo_list` -- List of `X33VDataTypeStringBean` for initial fees
- `getsu_ryokin_kei_list` -- List of `X33VDataTypeStringBean` for monthly fee totals
- `getsu_ryokin_kei_zei_list` -- List of `X33VDataTypeStringBean` for monthly fee totals (tax-excluded)
- `getsu_ryokin_kmk_sml_list` -- List of `X33VDataTypeStringBean` for Smart Link monthly fee items
- `getsu_ryokin_sml_list` -- List of `X33VDataTypeStringBean` for Smart Link monthly fees
- `shoki_hiyo_kmk_sml_list` -- List of `X33VDataTypeStringBean` for Smart Link initial fee items
- `shoki_hiyo_sml_list` -- List of `X33VDataTypeStringBean` for Smart Link initial fees
- `gtgk_wrib_mngn_tk_kikan_list` -- List of `X33VDataTypeStringBean` for discount text application period
- `gtgk_wrib_mngn_wrib_nm_list` -- List of `X33VDataTypeStringBean` for discount text discount name
- `gtgk_wrib_mngn_wrib_amnt_list` -- List of `X33VDataTypeStringBean` for discount text discount amount
- `gtgk_wrib_mngn_biko_list` -- List of `X33VDataTypeStringBean` for discount text remarks
- `getsu_ryokin_kei_title_list` -- List of `X33VDataTypeStringBean` for monthly fee display item titles
- `getsu_ryokin_kmk_gh_list` -- List of `X33VDataTypeStringBean` for GH monthly fee items
- `getsu_ryokin_gh_list` -- List of `X33VDataTypeStringBean` for GH monthly fees
- `shoki_hiyo_kmk_gh_list` -- List of `X33VDataTypeStringBean` for GH initial fee items
- `shoki_hiyo_gh_list` -- List of `X33VDataTypeStringBean` for GH initial fees
- `parent` class -- `super` reference for common info delegation

## 4. CRUD Operations / Called Services

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

This method performs **no database or service component calls**. All operations are in-memory bean setter invocations and list element mutations. The method is a pure **presentation-layer data router** that updates the bean's own model state.

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| U | `super.storeCommonInfoData` | - | - | Updates common info data in parent class bean |
| U | `X33VDataTypeStringBean.storeModelData` | - | - | Updates value/state on indexed list element |
| U | `setFnc_mode_value` / `setFnc_mode_state` | - | - | Sets function code value and state |
| U | `setScreen_mode_value` / `setScreen_mode_state` | - | - | Sets screen mode value and state |
| U | `setShoki_hiyo_kei_value` / `setShoki_hiyo_kei_state` | - | - | Sets initial fee total value and state |
| U | `setShoki_hiyo_kei_zei_value` / `setShoki_hiyo_kei_zei_state` | - | - | Sets initial fee total tax-excluded value and state |
| U | `setMobile_month_value` / `setMobile_month_state` | - | - | Sets mobile monthly fee total value and state |
| U | `setMobile_init_value` / `setMobile_init_state` | - | - | Sets mobile initial fee total value and state |
| U | `setGetsu_ryokin_mongon_value` / `setGetsu_ryokin_mongon_state` | - | - | Sets monthly fee description value and state |
| U | `setShoki_hiyo_mongon_value` / `setShoki_hiyo_mongon_state` | - | - | Sets initial fee description value and state |
| U | `setMobile_month_mongon_value` / `setMobile_month_mongon_state` | - | - | Sets mobile monthly fee description value and state |
| U | `setMobile_init_mongon_value` / `setMobile_init_mongon_state` | - | - | Sets mobile initial fee description value and state |
| U | `setGtgk_prc_gokei_value` / `setGtgk_prc_gokei_state` | - | - | Sets monthly fee sum value and state |
| U | `setGtgk_prc_gokei_zei_value` / `setGtgk_prc_gokei_zei_state` | - | - | Sets monthly fee sum tax-excluded value and state |
| U | `setShkh_gokei_value` / `setShkh_gokei_state` | - | - | Sets initial fee sum value and state |
| U | `setShkh_gokei_zei_value` / `setShkh_gokei_zei_state` | - | - | Sets initial fee sum tax-excluded value and state |
| U | `setGtgk_prc_gokei_mongon_value` / `setGtgk_prc_gokei_mongon_state` | - | - | Sets monthly fee sum description value and state |
| U | `setShkh_gokei_mongon_value` / `setShkh_gokei_mongon_state` | - | - | Sets initial fee sum description value and state |
| U | `setKei_sbt_value` / `setKei_sbt_state` | - | - | Sets contract type value and state |
| U | `setSex_value` / `setSex_state` | - | - | Sets customer gender value and state |
| U | `setHnin_cfm_aticle_value` / `setHnin_cfm_aticle_state` | - | - | Sets identity verification document value and state |
| U | `setSetplace_form_value` / `setSetplace_form_state` | - | - | Sets installation site form value and state |
| U | `setSetplace_flr_value` / `setSetplace_flr_state` | - | - | Sets floor level value and state |
| U | `setSetplace_bnchi_value` / `setSetplace_bnchi_state` | - | - | Sets address number value and state |
| U | `setUse_net_ksn_value` / `setUse_net_ksn_state` | - | - | Sets active network value and state |
| U | `setKiki_place_chg_value` / `setKiki_place_chg_state` | - | - | Sets equipment relocation expected value and state |
| U | `setTkc_koji_same_value` / `setTkc_koji_same_state` | - | - | Sets same-day survey/repair value and state |
| U | `setRrks_choice_value` / `setRrks_choice_state` | - | - | Sets contact selection value and state |
| U | `setFax_kibo_value` / `setFax_kibo_state` | - | - | Sets fax contact request value and state |
| U | `setDsp_same_use_place_kkoku_flg_value` / `setDsp_same_use_place_kkoku_flg_state` | - | - | Sets same-location warning flag value and state |
| U | `setDsp_pcd_flg_value` / `setDsp_pcd_flg_state` | - | - | Sets postal code display flag value and state |
| U | `setDsp_close_btn_flg_value` / `setDsp_close_btn_flg_state` | - | - | Sets close button display flag value and state |
| U | `setDsp_add_btn_flg_value` / `setDsp_add_btn_flg_state` | - | - | Sets "Register and Next" button display flag value and state |
| U | `setDsp_next_btn_flg_value` / `setDsp_next_btn_flg_state` | - | - | Sets Next button display flag value and state |
| U | `setTwryo_stiam_ttu_tchi_stiam_value` / `setTwryo_stiam_ttu_tchi_stiam_state` | - | - | Sets call fee notification threshold value and state |
| U | `setKei_svc_area_dsp_flg_value` / `setKei_svc_area_dsp_flg_state` | - | - | Sets contracted service area display flag (Boolean value, String state) |
| U | `setCx_start_flg_value` / `setCx_start_flg_state` | - | - | Sets CX case start flag value and state |
| U | `setTakcho_apo_kaden_kibo_um_disp_flg_value` / `setTakcho_apo_kaden_kibo_um_disp_flg_state` | - | - | Sets appointment call request display flag value and state |
| U | `setTakcho_apo_kaden_kibo_um_screen_value` / `setTakcho_apo_kaden_kibo_um_screen_state` / `setTakcho_apo_kaden_kibo_um_screen_enabled` | - | - | Sets appointment call request value, enabled state, and overall state |
| U | Smart Link setters (SML1-SML16) | - | - | Sets Smart Link plan fee fields (value + state) |
| U | GH setters (GH1-GH16) | - | - | Sets GH variant fee fields (value + state) |

## 5. Dependency Trace

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

No screen/batch entry points found within 8 hops. Direct callers found: 2 methods.
Terminal operations from this method: `substring` [-], `setTakcho_apo_kaden_kibo_um_screen_state` [-], `setTakcho_apo_kaden_kibo_um_screen_enabled` [-], `setTakcho_apo_kaden_kibo_um_screen_value` [-], `setTakcho_apo_kaden_kibo_um_disp_flg_state` [-], `setTakcho_apo_kaden_kibo_um_disp_flg_value` [-], `setCx_start_flg_state` [-], `setCx_start_flg_value` [-], `setKei_svc_area_dsp_flg_state` [-], `setKei_svc_area_dsp_flg_value` [-], `setShkh_gokei_mongon_gh_state` [-], `setShkh_gokei_mongon_gh_value` [-], `setGtgk_prc_gokei_mongon_gh_state` [-], `setGtgk_prc_gokei_mongon_gh_value` [-], `setShkh_gokei_zei_state` [-], `setShkh_gokei_zei_value` [-], `setShkh_gokei_gh_state` [-], `setShkh_gokei_gh_value` [-], `setGtgk_prc_gokei_gh_zei_state` [-], `setGtgk_prc_gokei_gh_zei_value` [-]

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | `FUW00927SFBean` (self-call) | `storeModelData()` -> `storeModelData()` | `setFnc_mode_value [U] bean field` |
| 2 | `FUW00927SFBean` (self-call) | `storeModelData()` -> `storeModelData()` | `setScreen_mode_value [U] bean field` |
| 3 | `FUW00927SFBean` (self-call) | `storeModelData()` -> `storeModelData()` | `storeModelData on list element [U] list element` |

## 6. Per-Branch Detail Blocks

### Block 1 -- IF `(key == null)` (L3429)

> If the key is null, the method exits early without processing. This is the guard clause that prevents NPEs when downstream code calls storeModelData without validating the key first.

| # | Type | Code |
|---|------|------|
| 1 | RETURN | `return;` // key is null, abort processing |

### Block 2 -- ELSE IF `(subkey == null)` (L3433)

> If subkey is null (but key is valid), initialize it to an empty string to prevent NPE in subsequent comparisons.

| # | Type | Code |
|---|------|------|
| 1 | SET | `subkey = new String("");` // null subkey becomes empty string |

### Block 3 -- MAIN DISPATCH: Extract first key segment (L3439-L3448)

> The method checks if the key starts with "//" (common info marker). If so, delegates to the parent class. Otherwise, it splits the key on the first "/" to extract the keyElement (the top-level category name). If no "/" exists, the entire key is the keyElement.

| # | Type | Code |
|---|------|------|
| 1 | SET | `String keyElement;` // local variable for first segment |
| 2 | SET | `int separaterPoint = key.indexOf("//");` // check for common info prefix ["//" literal] |
| 3 | IF | `if(separaterPoint == 0)` // common info branch |
| 4 | CALL | `super.storeCommonInfoData(key, in_value, isSetAsString);` // delegate to parent |
| 5 | ELSE | // non-common info path |
| 6 | SET | `separaterPoint = key.indexOf("/");` // find first slash separator |
| 7 | IF | `if(separaterPoint > 0)` // has sub-path |
| 8 | SET | `keyElement = key.substring(0, separaterPoint);` // extract first segment |
| 9 | ELSE | // no slash, full key is the element |
| 10 | SET | `keyElement = key;` // entire key is the category |

### Block 4 -- IF `(keyElement equals "機能コード")` (L3453)

> Branch for the function code (機能コード / function code) property. Sets either the value or the state based on subkey.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setFnc_mode_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` // subkey is "state" |
| 4 | CALL | `setFnc_mode_state((String)in_value);` |

### Block 5 -- IF `(keyElement equals "画面モード")` (L3462)

> Branch for the screen mode (画面モード / screen mode) property. Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setScreen_mode_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setScreen_mode_state((String)in_value);` |

### Block 6 -- IF `(keyElement equals "項目コード")` (L3471)

> Branch for the item code (項目コード / item code) -- an indexed list. The key contains the index after the first "/". Parses the index, validates bounds, and delegates `storeModelData` to the list element (cast to `X33VDataTypeStringBean`). The cast portion: the item definition type specifies one of `X33VDataTypeStringBean`, `X33VDataTypeLongBean`, or `X33VDataTypeBooleanBean`. For `X33VDataTypeLongBean`, subkey and input value plus isSetAsString flag are passed as arguments. (キャスト部分は、項目定義型にあわせてX33VDataTypeStringBean, X33VDataTypeLongBean, X33VDataTypeBooleanBeanのうち1つを指定。X33VDataTypeLongBeanではsubkeyと入力値およびisSetAsStringフラグを引数に指定)

| # | Type | Code |
|---|------|------|
| 1 | SET | `keyElement = key.substring(separaterPoint + 1);` // extract index portion |
| 2 | SET | `Integer tmpIndexInt = null;` // parse index from key |
| 3 | TRY | `tmpIndexInt = Integer.valueOf(keyElement);` // attempt parsing |
| 4 | CATCH | `catch(NumberFormatException e)` // not a numeric index |
| 5 | SET | `tmpIndexInt = null;` // set null on parse failure |
| 6 | IF | `if(tmpIndexInt != null)` // successfully parsed |
| 7 | SET | `int tmpIndex = tmpIndexInt.intValue();` // convert to int |
| 8 | IF | `if(tmpIndex >= 0 && tmpIndex < koumoku_code_list.size())` // bounds check |
| 9 | CALL | `((X33VDataTypeStringBean)koumoku_code_list.get(tmpIndex)).storeModelData(subkey,in_value);` // delegate to element |

> Pattern repeats identically for all subsequent indexed list branches: Blocks 7-22 follow the same structure with different list references and keyElement values. See the table below for a summary of all indexed list branches.

| Block | keyElement (Japanese) | keyElement (English) | List Field |
|-------|----------------------|---------------------|------------|
| Block 7 | 項目コード | Item Code | `koumoku_code_list` |
| Block 8 | 値 | Value | `koumoku_value_list` |
| Block 9 | 月額料金項目 | Monthly Fee Item | `getsu_ryokin_kmk_list` |
| Block 10 | 月額料金 | Monthly Fee | `getsu_ryokin_list` |
| Block 11 | 初期費用項目 | Initial Fee Item | `shoki_hiyo_kmk_list` |
| Block 12 | 初期費用 | Initial Fee | `shoki_hiyo_list` |
| Block 13 | 月額料金計 | Monthly Fee Total | `getsu_ryokin_kei_list` |
| Block 14 | 月額料金計（税抜） | Monthly Fee Total (Tax-Excluded) | `getsu_ryokin_kei_zei_list` |
| Block 15 | 月額料金項目（スマートリンク） | Monthly Fee Item (Smart Link) | `getsu_ryokin_kmk_sml_list` |
| Block 16 | 月額料金（スマートリンク） | Monthly Fee (Smart Link) | `getsu_ryokin_sml_list` |
| Block 17 | 初期費用項目（スマートリンク） | Initial Fee Item (Smart Link) | `shoki_hiyo_kmk_sml_list` |
| Block 18 | 初期費用（スマートリンク） | Initial Fee (Smart Link) | `shoki_hiyo_sml_list` |
| Block 19 | 月額料金割引文言適用期間 | Discount Text Application Period | `gtgk_wrib_mngn_tk_kikan_list` |
| Block 20 | 月額料金割引文言割引名 | Discount Text Discount Name | `gtgk_wrib_mngn_wrib_nm_list` |
| Block 21 | 月額料金割引文言割引額 | Discount Text Discount Amount | `gtgk_wrib_mngn_wrib_amnt_list` |
| Block 22 | 月額料金割引文言備考 | Discount Text Remarks | `gtgk_wrib_mngn_biko_list` |
| Block 23 | 月額料金表示項目 | Monthly Fee Display Item Title | `getsu_ryokin_kei_title_list` |
| Block 24 | 月額料金項目（GH） | Monthly Fee Item (GH) | `getsu_ryokin_kmk_gh_list` |
| Block 25 | 月額料金（GH） | Monthly Fee (GH) | `getsu_ryokin_gh_list` |
| Block 26 | 初期費用項目（GH） | Initial Fee Item (GH) | `shoki_hiyo_kmk_gh_list` |
| Block 27 | 初期費用（GH） | Initial Fee (GH) | `shoki_hiyo_gh_list` |

### Block 28 -- IF `(keyElement equals "初期費用計")` (L3584)

> Branch for initial fee total (初期費用計 / shoki_hiyo_kei). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setShoki_hiyo_kei_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setShoki_hiyo_kei_state((String)in_value);` |

### Block 29 -- IF `(keyElement equals "初期費用計（税抜）")` (L3595)

> Branch for initial fee total tax-excluded (初期費用計（税抜） / shoki_hiyo_kei_zei). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setShoki_hiyo_kei_zei_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setShoki_hiyo_kei_zei_state((String)in_value);` |

### Block 30 -- IF `(keyElement equals "モバイル月額料金計")` (L3606)

> Branch for mobile monthly fee total (モバイル月額料金計 / mobile_month). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setMobile_month_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setMobile_month_state((String)in_value);` |

### Block 31 -- IF `(keyElement equals "モバイル初期費用計")` (L3617)

> Branch for mobile initial fee total (モバイル初期費用計 / mobile_init). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setMobile_init_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setMobile_init_state((String)in_value);` |

### Block 32 -- IF `(keyElement equals "月額料金文言")` (L3628)

> Branch for monthly fee description (月額料金文言 / getsu_ryokin_mongon). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setGetsu_ryokin_mongon_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setGetsu_ryokin_mongon_state((String)in_value);` |

### Block 33 -- IF `(keyElement equals "初期費用文言")` (L3639)

> Branch for initial fee description (初期費用文言 / shoki_hiyo_mongon). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setShoki_hiyo_mongon_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setShoki_hiyo_mongon_state((String)in_value);` |

### Block 34 -- IF `(keyElement equals "モバイル月額料金文言")` (L3650)

> Branch for mobile monthly fee description (モバイル月額料金文言 / mobile_month_mongon). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setMobile_month_mongon_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setMobile_month_mongon_state((String)in_value);` |

### Block 35 -- IF `(keyElement equals "モバイル初期費用文言")` (L3661)

> Branch for mobile initial fee description (モバイル初期費用文言 / mobile_init_mongon). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setMobile_init_mongon_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setMobile_init_mongon_state((String)in_value);` |

### Block 36 -- IF `(keyElement equals "月額料金合計")` (L3672)

> Branch for monthly fee sum (月額料金合計 / gtgk_prc_gokei). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setGtgk_prc_gokei_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setGtgk_prc_gokei_state((String)in_value);` |

### Block 37 -- IF `(keyElement equals "月額料金合計（税抜）")` (L3683)

> Branch for monthly fee sum tax-excluded (月額料金合計（税抜） / gtgk_prc_gokei_zei). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setGtgk_prc_gokei_zei_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setGtgk_prc_gokei_zei_state((String)in_value);` |

### Block 38 -- IF `(keyElement equals "初期費用合計")` (L3694)

> Branch for initial fee sum (初期費用合計 / shkh_gokei). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setShkh_gokei_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setShkh_gokei_state((String)in_value);` |

### Block 39 -- IF `(keyElement equals "初期費用合計（税抜）")` (L3705)

> Branch for initial fee sum tax-excluded (初期費用合計（税抜） / shkh_gokei_zei). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setShkh_gokei_zei_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setShkh_gokei_zei_state((String)in_value);` |

### Block 40 -- IF `(keyElement equals "月額料金合計文言")` (L3716)

> Branch for monthly fee sum description (月額料金合計文言 / gtgk_prc_gokei_mongon). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setGtgk_prc_gokei_mongon_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setGtgk_prc_gokei_mongon_state((String)in_value);` |

### Block 41 -- IF `(keyElement equals "初期費用合計文言")` (L3727)

> Branch for initial fee sum description (初期費用合計文言 / shkh_gokei_mongon). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setShkh_gokei_mongon_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setShkh_gokei_mongon_state((String)in_value);` |

### Block 42 -- IF `(keyElement equals "契約種類")` (L3738)

> Branch for contract type (契約種類 / kei_sbt). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setKei_sbt_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setKei_sbt_state((String)in_value);` |

### Block 43 -- IF `(keyElement equals "ご契約者情報（個人）・性別")` (L3749)

> Branch for customer information - gender (ご契約者情報（個人）・性別 / sex). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setSex_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setSex_state((String)in_value);` |

### Block 44 -- IF `(keyElement equals "ご本人様確認書類")` (L3760)

> Branch for identity verification document (ご本人様確認書類 / hnin_cfm_aticle). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setHnin_cfm_aticle_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setHnin_cfm_aticle_state((String)in_value);` |

### Block 45 -- IF `(keyElement equals "ご利用場所設置位置・ご利用場所の形態")` (L3771)

> Branch for installation site location and form (ご利用場所設置位置・ご利用場所の形態 / setplace_form). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setSetplace_form_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setSetplace_form_state((String)in_value);` |

### Block 46 -- IF `(keyElement equals "ご利用場所設置位置・お住まいの階数")` (L3782)

> Branch for floor level (ご利用場所設置位置・お住まいの階数 / setplace_flr). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setSetplace_flr_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setSetplace_flr_state((String)in_value);` |

### Block 47 -- IF `(keyElement equals "ご利用場所設置位置・住所番地")` (L3793)

> Branch for address number (ご利用場所設置位置・住所番地 / setplace_bnchi). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setSetplace_bnchi_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setSetplace_bnchi_state((String)in_value);` |

### Block 48 -- IF `(keyElement equals "ご利用場所設置位置・利用中のネットワーク")` (L3804)

> Branch for active network (ご利用場所設置位置・利用中のネットワーク / use_net_ksn). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setUse_net_ksn_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setUse_net_ksn_state((String)in_value);` |

### Block 49 -- IF `(keyElement equals "ご利用場所設置位置・利用中の機器の設置場所変更予定")` (L3815)

> Branch for equipment relocation expected (ご利用場所設置位置・利用中の機器の設置場所変更予定 / kiki_place_chg). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setKiki_place_chg_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setKiki_place_chg_state((String)in_value);` |

### Block 50 -- IF `(keyElement equals "ご利用場所設置位置・宅内調査と工事の同日実施")` (L3826)

> Branch for same-day survey/repair (ご利用場所設置位置・宅内調査と工事の同日実施 / tkc_koji_same). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setTkc_koji_same_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setTkc_koji_same_state((String)in_value);` |

### Block 51 -- IF `(keyElement equals "連絡先選択")` (L3837)

> Branch for contact selection (連絡先選択 / rrks_choice). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setRrks_choice_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setRrks_choice_state((String)in_value);` |

### Block 52 -- IF `(keyElement equals "FAX連絡ご希望")` (L3848)

> Branch for fax contact request (FAX連絡ご希望 / fax_kibo). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setFax_kibo_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setFax_kibo_state((String)in_value);` |

### Block 53 -- IF `(keyElement equals "同一ご利用場所警告表示制御フラグ")` (L3859)

> Branch for same-location warning flag (同一ご利用場所警告表示制御フラグ / dsp_same_use_place_kkoku_flg). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setDsp_same_use_place_kkoku_flg_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setDsp_same_use_place_kkoku_flg_state((String)in_value);` |

### Block 54 -- IF `(keyElement equals "郵便番号表示制御フラグ")` (L3870)

> Branch for postal code display flag (郵便番号表示制御フラグ / dsp_pcd_flg). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setDsp_pcd_flg_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setDsp_pcd_flg_state((String)in_value);` |

### Block 55 -- IF `(keyElement equals "閉じるボタン表示制御フラグ")` (L3881)

> Branch for close button display flag (閉じるボタン表示制御フラグ / dsp_close_btn_flg). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setDsp_close_btn_flg_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setDsp_close_btn_flg_state((String)in_value);` |

### Block 56 -- IF `(keyElement equals "登録して次へボタン表示フラグ")` (L3892)

> Branch for "Register and Next" button display flag (登録して次へボタン表示フラグ / dsp_add_btn_flg). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setDsp_add_btn_flg_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setDsp_add_btn_flg_state((String)in_value);` |

### Block 57 -- IF `(keyElement equals "次へボタン表示フラグ")` (L3903)

> Branch for Next button display flag (次へボタン表示フラグ / dsp_next_btn_flg). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setDsp_next_btn_flg_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setDsp_next_btn_flg_state((String)in_value);` |

### Block 58 -- IF `(keyElement equals "電話料指定額到達通知指定金額")` (L3914)

> Branch for call fee notification threshold (電話料指定額到達通知指定金額 / twryo_stiam_ttu_tchi_stiam). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setTwryo_stiam_ttu_tchi_stiam_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setTwryo_stiam_ttu_tchi_stiam_state((String)in_value);` |

### Block 59 -- Smart Link Setters (Blocks 59-74)

> After the indexed list blocks for Smart Link variants, the following simple-string property branches handle Smart Link plan totals, descriptions, and fees that are NOT indexed. Each follows the same value/state pattern.

| Block | keyElement (Japanese) | setter Value | setter State |
|-------|----------------------|-------------|-------------|
| 59 | 月額料金計（スマートリンク） | `setGetsu_ryokin_kei_sml_value` | `setGetsu_ryokin_kei_sml_state` |
| 60 | 月額料金計（スマートリンク）（税抜） | `setGetsu_ryokin_kei_sml_zei_value` | `setGetsu_ryokin_kei_sml_zei_state` |
| 61 | 初期費用計（スマートリンク） | `setShoki_hiyo_kei_sml_value` | `setShoki_hiyo_kei_sml_state` |
| 62 | 初期費用計（スマートリンク）（税抜） | `setShoki_hiyo_kei_sml_zei_value` | `setShoki_hiyo_kei_sml_zei_state` |
| 63 | 月額料金文言（スマートリンク） | `setGetsu_ryokin_mongon_sml_value` | `setGetsu_ryokin_mongon_sml_state` |
| 64 | 初期費用文言（スマートリンク） | `setShoki_hiyo_mongon_sml_value` | `setShoki_hiyo_mongon_sml_state` |
| 65 | 月額料金合計（スマートリンク） | `setGtgk_prc_gokei_sml_value` | `setGtgk_prc_gokei_sml_state` |
| 66 | 月額料金合計（スマートリンク）（税抜） | `setGtgk_prc_gokei_sml_zei_value` | `setGtgk_prc_gokei_sml_zei_state` |
| 67 | 初期費用合計（スマートリンク） | `setShkh_gokei_sml_value` | `setShkh_gokei_sml_state` |
| 68 | 初期費用合計（スマートリンク）（税抜） | `setShkh_gokei_sml_zei_value` | `setShkh_gokei_sml_zei_state` |
| 69 | 月額料金合計文言（スマートリンク） | `setGtgk_prc_gokei_mongon_sml_value` | `setGtgk_prc_gokei_mongon_sml_state` |
| 70 | 初期費用合計文言（スマートリンク） | `setShkh_gokei_mongon_sml_value` | `setShkh_gokei_mongon_sml_state` |

### Block 71 -- GH Setters (Blocks 71-86)

> After the indexed list blocks for GH variants, the following simple-string property branches handle GH plan totals, descriptions, and fees. Each follows the same value/state pattern.

| Block | keyElement (Japanese) | setter Value | setter State |
|-------|----------------------|-------------|-------------|
| 71 | 月額料金計（GH） | `setGetsu_ryokin_kei_gh_value` | `setGetsu_ryokin_kei_gh_state` |
| 72 | 月額料金計（GH）（税抜） | `setGetsu_ryokin_kei_gh_zei_value` | `setGetsu_ryokin_kei_gh_zei_state` |
| 73 | 初期費用計（GH） | `setShoki_hiyo_kei_gh_value` | `setShoki_hiyo_kei_gh_state` |
| 74 | 初期費用計（GH）（税抜） | `setShoki_hiyo_kei_gh_zei_value` | `setShoki_hiyo_kei_gh_zei_state` |
| 75 | 月額料金文言（GH） | `setGetsu_ryokin_mongon_gh_value` | `setGetsu_ryokin_mongon_gh_state` |
| 76 | 初期費用文言（GH） | `setShoki_hiyo_mongon_gh_value` | `setShoki_hiyo_mongon_gh_state` |
| 77 | 月額料金合計（GH） | `setGtgk_prc_gokei_gh_value` | `setGtgk_prc_gokei_gh_state` |
| 78 | 月額料金合計（GH）（税抜） | `setGtgk_prc_gokei_gh_zei_value` | `setGtgk_prc_gokei_gh_zei_state` |
| 79 | 初期費用合計（GH） | `setShkh_gokei_gh_value` | `setShkh_gokei_gh_state` |
| 80 | 初期費用合計（GH）（税抜） | `setShkh_gokei_gh_zei_value` | `setShkh_gokei_gh_zei_state` |
| 81 | 月額料金合計文言（GH） | `setGtgk_prc_gokei_mongon_gh_value` | `setGtgk_prc_gokei_mongon_gh_state` |
| 82 | 初期費用合計文言（GH） | `setShkh_gokei_mongon_gh_value` | `setShkh_gokei_mongon_gh_state` |

### Block 83 -- IF `(keyElement equals "契約中サービスエリア表示フラグ")` (L4230)

> Branch for contracted service area display flag (契約中サービスエリア表示フラグ / kei_svc_area_dsp_flg). This is the **only Boolean field** in the method -- the value is cast to `Boolean` while the state is cast to `String`.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setKei_svc_area_dsp_flg_value((Boolean)in_value);` // Boolean cast |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setKei_svc_area_dsp_flg_state((String)in_value);` |

### Block 84 -- IF `(keyElement equals "CX案件開始フラグ")` (L4241)

> Branch for CX case start flag (CX案件開始フラグ / cx_start_flg). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setCx_start_flg_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setCx_start_flg_state((String)in_value);` |

### Block 85 -- IF `(keyElement equals "宅内調査のアポ架電希望表示フラグ")` (L4252)

> Branch for appointment call request display flag (宅内調査のアポ架電希望表示フラグ / takcho_apo_kaden_kibo_um_disp_flg). Sets value or state.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setTakcho_apo_kaden_kibo_um_disp_flg_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 4 | CALL | `setTakcho_apo_kaden_kibo_um_disp_flg_state((String)in_value);` |

### Block 86 -- IF `(keyElement equals "宅内調査のアポ架電希望")` (L4263)

> Branch for appointment call request (宅内調査のアポ架電希望 / takcho_apo_kaden_kibo_um_screen). This branch handles **three** subkey variants: "value", "enable", and "state".

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | CALL | `setTakcho_apo_kaden_kibo_um_screen_value((String)in_value);` |
| 3 | ELSE IF | `subkey.equalsIgnoreCase("enable")` // enable subkey |
| 4 | CALL | `setTakcho_apo_kaden_kibo_um_screen_enabled((Boolean)in_value);` // Boolean enable flag |
| 5 | ELSE IF | `subkey.equalsIgnoreCase("state")` |
| 6 | CALL | `setTakcho_apo_kaden_kibo_um_screen_state((String)in_value);` |

## 7. Glossary

Define ALL domain-specific terms, Japanese field names, and technical abbreviations used in this method. This section makes the document accessible to Business Analysts (BA) who may not be familiar with the codebase's naming conventions.

| Term | Type | Business Meaning |
|------|------|------------------|
| `fnc_mode` | Field | Function code -- identifies the current screen/function mode in the application flow |
| `screen_mode` | Field | Screen mode -- indicates the current screen state/phase within the service contract flow |
| `koumoku_code` | Field | Item code -- a configurable field identifier used for variable-repeat form items on the screen |
| `koumoku_value` | Field | Item value -- the actual data stored in a variable-repeat item |
| `getsu_ryokin` | Field | Monthly fee (月額料金) -- the recurring monthly charge for the telecom service |
| `getsu_ryokin_kmk` | Field | Monthly fee item (月額料金項目) -- a line item representing a monthly fee component |
| `getsu_ryokin_kei` | Field | Monthly fee total (月額料金計) -- the sum of all monthly fee components |
| `getsu_ryokin_kei_zei` | Field | Monthly fee total tax-excluded (月額料金計（税抜）) -- monthly fee total before consumption tax |
| `getsu_ryokin_mongon` | Field | Monthly fee description text (月額料金文言) -- display text describing the monthly fee |
| `getsu_ryokin_mongon_gh` | Field | Monthly fee description text (GH variant) (月額料金文言（GH）) -- GH-specific fee description |
| `shoki_hiyo` | Field | Initial fee (初期費用) -- one-time upfront charges for service activation |
| `shoki_hiyo_kmk` | Field | Initial fee item (初期費用項目) -- a line item representing an initial fee component |
| `shoki_hiyo_kei` | Field | Initial fee total (初期費用計) -- sum of all initial fee components |
| `shoki_hiyo_kei_zei` | Field | Initial fee total tax-excluded (初期費用計（税抜）) -- initial fee total before tax |
| `shoki_hiyo_mongon` | Field | Initial fee description text (初期費用文言) -- display text describing the initial fee |
| `gtgk_prc_gokei` | Field | Monthly fee sum/prorated total (月額料金合計) -- combined monthly fee including prorated amounts |
| `gtgk_prc_gokei_zei` | Field | Monthly fee sum tax-excluded (月額料金合計（税抜）) -- sum before tax |
| `gtgk_prc_gokei_mongon` | Field | Monthly fee sum description (月額料金合計文言) -- description text for the total |
| `shkh_gokei` | Field | Initial fee sum (初期費用合計) -- combined initial fee total |
| `shkh_gokei_zei` | Field | Initial fee sum tax-excluded (初期費用合計（税抜）) -- initial fee sum before tax |
| `shkh_gokei_mongon` | Field | Initial fee sum description (初期費用合計文言) -- description text for initial fee total |
| `kei_sbt` | Field | Contract type (契約種類) -- classification of the service contract (e.g., new, renewal, change) |
| `sex` | Field | Gender (性別) -- customer gender (individual contract) |
| `hnin_cfm_aticle` | Field | Identity verification document (ご本人様確認書類) -- type of ID document submitted for verification |
| `setplace_form` | Field | Installation site form (ご利用場所の形態) -- form/type of the service installation location (e.g., apartment, detached house) |
| `setplace_flr` | Field | Floor level (お住まいの階数) -- the floor number where service is installed |
| `setplace_bnchi` | Field | Address number (住所番地) -- the address number of the installation site |
| `use_net_ksn` | Field | Active network (利用中のネットワーク) -- the existing network infrastructure at the installation site |
| `kiki_place_chg` | Field | Equipment relocation expected (機器の設置場所変更予定) -- whether the existing equipment will be relocated |
| `tkc_koji_same` | Field | Same-day survey and repair (宅内調査と工事の同日実施) -- whether indoor survey and installation are scheduled on the same day |
| `rrks_choice` | Field | Contact selection (連絡先選択) -- the customer's preferred contact method |
| `fax_kibo` | Field | Fax contact request (FAX連絡ご希望) -- whether the customer requests communication via fax |
| `dsp_same_use_place_kkoku_flg` | Field | Same-location warning display flag (同一ご利用場所警告表示制御フラグ) -- controls whether a warning is shown when the installation site matches an existing contract |
| `dsp_pcd_flg` | Field | Postal code display flag (郵便番号表示制御フラグ) -- controls postal code field display |
| `dsp_close_btn_flg` | Field | Close button display flag (閉じるボタン表示制御フラグ) -- controls the close button visibility |
| `dsp_add_btn_flg` | Field | "Register and Next" button display flag (登録して次へボタン表示フラグ) -- controls the register-and-advance button |
| `dsp_next_btn_flg` | Field | Next button display flag (次へボタン表示フラグ) -- controls the next button visibility |
| `twryo_stiam_ttu_tchi_stiam` | Field | Call fee notification threshold amount (電話料指定額到達通知指定金額) -- the call fee amount at which a notification is triggered |
| `kei_svc_area_dsp_flg` | Field | Contracted service area display flag (契約中サービスエリア表示フラグ) -- controls display of contracted service area information; Boolean type |
| `cx_start_flg` | Field | CX case start flag (CX案件開始フラグ) -- indicates whether this is a customer experience (CX) case; CX = Customer Experience |
| `takcho_apo_kaden_kibo_um_disp_flg` | Field | Appointment call request display flag (宅内調査のアポ架電希望表示フラグ) -- controls display of the appointment call request field |
| `takcho_apo_kaden_kibo_um_screen` | Field | Appointment call request (宅内調査のアポ架電希望) -- whether the customer requests a phone call to schedule the indoor survey |
| `smart_link` | Business term | Smart Link (スマートリンク) -- a bundled telecom plan combining multiple services (FTTH, mobile, etc.) |
| `GH` | Business term | Group Home / Large-scale (GH) -- a large-scale or group residential service contract variant |
| `FTTH` | Business term | Fiber To The Home -- fiber-optic broadband internet service |
| `CX` | Acronym | Customer Experience -- customer-facing service cases requiring special handling |
| `X33VDataTypeStringBean` | Class | A typed bean for String-type data items in the variable-repeat field framework |
| `X33VDataTypeLongBean` | Class | A typed bean for Long-type (numeric) data items in the variable-repeat field framework |
| `X33VDataTypeBooleanBean` | Class | A typed bean for Boolean-type data items in the variable-repeat field framework |
| `subkey "value"` | Concept | Indicates the actual data value to be stored in a field |
| `subkey "state"` | Concept | Indicates the enabled/disabled state of a field (typically a String representation of a boolean) |
| `subkey "enable"` | Concept | Indicates a boolean-enabled flag for a field (true/false) |
| `isSetAsString` | Concept | Flag indicating that a Long-type property should receive a String value for type coercion |
| `key prefix "//"` | Concept | Marker indicating that the data belongs to common/shared information, delegated to the parent class |

---

*Document generated from source file: `source/koptWebR/src/eo/web/webview/FUW00927SF/FUW00927SFBean.java`, lines 3424-4550.*