# Business Logic — KKW00127SF02DBean.loadModelData() [157 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.KKW00127SF.KKW00127SF02DBean` |
| Layer | View / Data Bean (Web Client UI data binding layer) |
| Module | `KKW00127SF` (Package: `eo.web.webview.KKW00127SF`) |

## 1. Role

### KKW00127SF02DBean.loadModelData()

This method serves as the **central data dispatch and access router** for the Service Contract screen (KKW00127SF). It implements a **key-value lookup pattern** that maps human-readable Japanese field names (the `key` parameter) to the appropriate internal bean properties and their metadata states (the `subkey` parameter). The method handles 11 distinct business data categories: single-value fields such as Service Contract Status, Application Detail Number, Fee Group Code, Service Start Desired Date, Payment Method Succession Flag, Referral Code, Service Code, Update Date Time, and Auto Inquiry Processing Status Code; as well as two list-type fields — Service Contract Status List and Referral Code List — which support both count queries (via `"*"`) and indexed item delegation. For each non-list field, the method branches on the `subkey` to return either the actual data value (`"value"`) or the associated UI state/control flag (`"state"`). For list-type keys, the method parses a separator-delimited index from the key string, supports wildcard `"*"` to return the list size, and delegates to the nested `X33VDataTypeStringBean.loadModelData()` to retrieve the sub-property of a list element. This pattern is the core of the X33 web framework's data binding mechanism, enabling JSF/facelet pages to access bean data through uniform `#{bean.loadModelData('fieldKey', 'subkey')}` EL expressions.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["loadModelData key, subkey"])
    NULL_CHECK{key == null OR subkey == null?}
    FIND_SEP["Find separator index in key"]
    KEY_01{key == Service Contract Status?}
    SUB_01{subkey == value?}
    SUB_01B{subkey == state?}
    KEY_02{key == Application Detail Number?}
    SUB_02{subkey == value?}
    SUB_02B{subkey == state?}
    KEY_03{key == Service Contract Status List?}
    EXTRACT["Extract key after separator"]
    STAR_03{key == '*'?}
    PARSE_03{Parse key as integer?}
    RANGE_03{Index valid?}
    GET_03["svc_kei_stat_lis_list.get(index), loadModelData"]
    KEY_04{key == Fee Group Code?}
    SUB_04{subkey == value?}
    SUB_04B{subkey == state?}
    KEY_05{key == Service Start Desired Date?}
    SUB_05{subkey == value?}
    SUB_05B{subkey == state?}
    KEY_06{key == Payment Method Succession Flag?}
    SUB_06{subkey == value?}
    SUB_06B{subkey == state?}
    KEY_07{key == Referral Code List?}
    EXTRACT_07["Extract key after separator"]
    STAR_07{key == '*'?}
    PARSE_07{Parse key as integer?}
    RANGE_07{Index valid?}
    GET_07["intr_cd_list_list.get(index), loadModelData"]
    KEY_08{key == Referral Code?}
    SUB_08{subkey == value?}
    SUB_08B{subkey == state?}
    KEY_09{key == Service Code?}
    SUB_09{subkey == value?}
    SUB_09B{subkey == state?}
    KEY_10{key == Update Date Time?}
    SUB_10{subkey == value?}
    SUB_10B{subkey == state?}
    KEY_11{key == Auto Inquiry Processing Status Code?}
    SUB_11{subkey == value?}
    SUB_11B{subkey == state?}
    NO_MATCH["Return null"]
    RETURN_END(["Return Object"])

    START --> NULL_CHECK
    NULL_CHECK -->|Yes| NO_MATCH
    NULL_CHECK -->|No| FIND_SEP
    FIND_SEP --> KEY_01
    KEY_01 -->|Yes| SUB_01
    KEY_01 -->|No| KEY_02
    SUB_01 -->|Yes| RET_01["Return getSvc_kei_stat_value()"]
    SUB_01B -->|Yes| RET_01B["Return getSvc_kei_stat_state()"]
    SUB_01 -->|No| SUB_01B
    SUB_01B -->|No| KEY_02
    RET_01 --> RETURN_END
    RET_01B --> RETURN_END
    KEY_02 -->|Yes| SUB_02
    KEY_02 -->|No| KEY_03
    SUB_02 -->|Yes| RET_02["Return getMskm_dtl_no_value()"]
    SUB_02B -->|Yes| RET_02B["Return getMskm_dtl_no_state()"]
    SUB_02 -->|No| SUB_02B
    SUB_02B -->|No| KEY_03
    RET_02 --> RETURN_END
    RET_02B --> RETURN_END
    KEY_03 -->|Yes| EXTRACT
    KEY_03 -->|No| KEY_04
    EXTRACT --> STAR_03
    STAR_03 -->|Yes| RET_03["Return svc_kei_stat_lis_list.size()"]
    STAR_03 -->|No| PARSE_03
    PARSE_03 -->|Success| RANGE_03
    PARSE_03 -->|NumberFormatException| RET_NULL_1["Return null"]
    RET_03 --> RETURN_END
    RET_NULL_1 --> RETURN_END
    RANGE_03 -->|Valid| GET_03
    RANGE_03 -->|Invalid| RET_NULL_2["Return null"]
    GET_03 --> RETURN_END
    RET_NULL_2 --> RETURN_END
    KEY_04 -->|Yes| SUB_04
    KEY_04 -->|No| KEY_05
    SUB_04 -->|Yes| RET_04["Return getPrc_grp_cd_value()"]
    SUB_04B -->|Yes| RET_04B["Return getPrc_grp_cd_state()"]
    SUB_04 -->|No| SUB_04B
    SUB_04B -->|No| KEY_05
    RET_04 --> RETURN_END
    RET_04B --> RETURN_END
    KEY_05 -->|Yes| SUB_05
    KEY_05 -->|No| KEY_06
    SUB_05 -->|Yes| RET_05["Return getSvc_sta_kibo_ymd_value()"]
    SUB_05B -->|Yes| RET_05B["Return getSvc_sta_kibo_ymd_state()"]
    SUB_05 -->|No| SUB_05B
    SUB_05B -->|No| KEY_06
    RET_05 --> RETURN_END
    RET_05B --> RETURN_END
    KEY_06 -->|Yes| SUB_06
    KEY_06 -->|No| KEY_07
    SUB_06 -->|Yes| RET_06["Return getPayway_keizoku_flg_value()"]
    SUB_06B -->|Yes| RET_06B["Return getPayway_keizoku_flg_state()"]
    SUB_06 -->|No| SUB_06B
    SUB_06B -->|No| KEY_07
    RET_06 --> RETURN_END
    RET_06B --> RETURN_END
    KEY_07 -->|Yes| EXTRACT_07
    KEY_07 -->|No| KEY_08
    EXTRACT_07 --> STAR_07
    STAR_07 -->|Yes| RET_07["Return intr_cd_list_list.size()"]
    STAR_07 -->|No| PARSE_07
    PARSE_07 -->|Success| RANGE_07
    PARSE_07 -->|NumberFormatException| RET_NULL_3["Return null"]
    RET_07 --> RETURN_END
    RET_NULL_3 --> RETURN_END
    RANGE_07 -->|Valid| GET_07
    RANGE_07 -->|Invalid| RET_NULL_4["Return null"]
    GET_07 --> RETURN_END
    RET_NULL_4 --> RETURN_END
    KEY_08 -->|Yes| SUB_08
    KEY_08 -->|No| KEY_09
    SUB_08 -->|Yes| RET_08["Return getIntr_cd_value()"]
    SUB_08B -->|Yes| RET_08B["Return getIntr_cd_state()"]
    SUB_08 -->|No| SUB_08B
    SUB_08B -->|No| KEY_09
    RET_08 --> RETURN_END
    RET_08B --> RETURN_END
    KEY_09 -->|Yes| SUB_09
    KEY_09 -->|No| KEY_10
    SUB_09 -->|Yes| RET_09["Return getSvc_cd_value()"]
    SUB_09B -->|Yes| RET_09B["Return getSvc_cd_state()"]
    SUB_09 -->|No| SUB_09B
    SUB_09B -->|No| KEY_10
    RET_09 --> RETURN_END
    RET_09B --> RETURN_END
    KEY_10 -->|Yes| SUB_10
    KEY_10 -->|No| KEY_11
    SUB_10 -->|Yes| RET_10["Return getUpd_dtm_value()"]
    SUB_10B -->|Yes| RET_10B["Return getUpd_dtm_state()"]
    SUB_10 -->|No| SUB_10B
    SUB_10B -->|No| KEY_11
    RET_10 --> RETURN_END
    RET_10B --> RETURN_END
    KEY_11 -->|Yes| SUB_11
    KEY_11 -->|No| NO_MATCH
    SUB_11 -->|Yes| RET_11["Return getAuto_shosa_tran_stat_cd_value()"]
    SUB_11B -->|Yes| RET_11B["Return getAuto_shosa_tran_stat_cd_state()"]
    SUB_11 -->|No| SUB_11B
    SUB_11B -->|No| NO_MATCH
    RET_11 --> RETURN_END
    RET_11B --> RETURN_END
    NO_MATCH --> RETURN_END
```

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `key` | `String` | The Japanese-language business field identifier that selects which data category to retrieve. Supported values are: "サービス契約ステータス" (Service Contract Status), "申請明細番号" (Application Detail Number), "サービス契約ステータスリスト" (Service Contract Status List), "料金グループコード" (Fee Group Code), "サービス開始希望日" (Service Start Desired Date), "支払方法引継フラグ" (Payment Method Succession Flag), "紹介コードリスト" (Referral Code List), "紹介コード" (Referral Code), "サービスコード" (Service Code), "更新年月日時刻（サービス契約）" (Update Date Time for Service Contract), "自動照会処理状態コード" (Auto Inquiry Processing Status Code). For list-type keys, the key may contain a separator "/" followed by a `"*"` wildcard or a numeric index. |
| 2 | `subkey` | `String` | The access mode specifier. For single-value fields, `"value"` returns the actual data content and `"state"` returns the associated UI state/control flag. For list-type fields, this is forwarded to the nested element's `loadModelData()` to select a sub-property of the list item. |

**Instance fields read:**

| Field | Type | Business Description |
|-------|------|---------------------|
| `svc_kei_stat_lis_list` | `X33VDataTypeList` | Service Contract Status List - managed list of status sub-items |
| `intr_cd_list_list` | `X33VDataTypeList` | Referral Code List - managed list of referral code sub-items |

## 4. CRUD Operations / Called Services

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

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| R | `getSvc_kei_stat_state` | KKW00127SF02DBean | - | Reads the UI state of Service Contract Status |
| R | `getSvc_kei_stat_value` | KKW00127SF02DBean | - | Reads the value of Service Contract Status |
| R | `getMskm_dtl_no_state` | KKW00127SF02DBean | - | Reads the UI state of Application Detail Number |
| R | `getMskm_dtl_no_value` | KKW00127SF02DBean | - | Reads the value of Application Detail Number |
| R | `getPrc_grp_cd_state` | KKW00127SF02DBean | - | Reads the UI state of Fee Group Code |
| R | `getPrc_grp_cd_value` | KKW00127SF02DBean | - | Reads the value of Fee Group Code |
| R | `getSvc_sta_kibo_ymd_state` | KKW00127SF02DBean | - | Reads the UI state of Service Start Desired Date |
| R | `getSvc_sta_kibo_ymd_value` | KKW00127SF02DBean | - | Reads the value of Service Start Desired Date |
| R | `getPayway_keizoku_flg_state` | KKW00127SF02DBean | - | Reads the UI state of Payment Method Succession Flag |
| R | `getPayway_keizoku_flg_value` | KKW00127SF02DBean | - | Reads the value of Payment Method Succession Flag |
| R | `getIntr_cd_state` | KKW00127SF02DBean | - | Reads the UI state of Referral Code |
| R | `getIntr_cd_value` | KKW00127SF02DBean | - | Reads the value of Referral Code |
| R | `getSvc_cd_state` | KKW00127SF02DBean | - | Reads the UI state of Service Code |
| R | `getSvc_cd_value` | KKW00127SF02DBean | - | Reads the value of Service Code |
| R | `getUpd_dtm_state` | KKW00127SF02DBean | - | Reads the UI state of Update Date Time |
| R | `getUpd_dtm_value` | KKW00127SF02DBean | - | Reads the value of Update Date Time |
| R | `getAuto_shosa_tran_stat_cd_state` | KKW00127SF02DBean | - | Reads the UI state of Auto Inquiry Processing Status Code |
| R | `getAuto_shosa_tran_stat_cd_value` | KKW00127SF02DBean | - | Reads the value of Auto Inquiry Processing Status Code |
| R | `KKW00127SF02DBean.loadModelData` | KKW00127SF02DBean | - | Recursively delegates to nested list element's `loadModelData` for list-type fields |

All operations are **Read (R)** - this method does not perform any Create, Update, or Delete. It is purely a data accessor that routes lookups to internal bean property getters. List-type fields access `X33VDataTypeList` instances (`svc_kei_stat_lis_list`, `intr_cd_list_list`) which are initialized as `ArrayList<X33VDataTypeStringBean>` containers in the constructor.

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Bean: KKW00127SF02DBean | `KKW00127SF02DBean.loadModelData(key, subkey)` | `getSvc_kei_stat_value [R] svc_kei_stat_value` |

**Callers analysis:** This method's only direct caller from the code graph is itself - a self-referential call within the same bean class. This occurs in the list-type handling (Block 4 and Block 8) where list elements are `X33VDataTypeStringBean` instances that also implement `loadModelData()`, enabling recursive nested property access. The method is invoked from JSF/facelet EL expressions on the KKW00127SF screen by UI bindings that pass the Japanese field name and `"value"` or `"state"` as subkey, or `"ListName/index"` as key for list items.

## 6. Per-Branch Detail Blocks

**Block 1** - [IF] `(null check: key == null || subkey == null)` (L366)

> Early termination guard. If either parameter is null, return null immediately. This prevents NullPointerException on subsequent `key.equals()` calls.

| # | Type | Code |
|---|------|------|
| 1 | EXEC | `key.indexOf("/")` - Find separator position for later list-type key parsing [-> L369] |

**Block 2** - [IF/ELSE-IF/ELSE] `(key equals "サービス契約ステータス" [Service Contract Status])` (L371)

> Routes to Service Contract Status getter. Supports two subkey modes: value (the actual status data) or state (the UI state/control flag).

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` - case-insensitive comparison |
| 2 | RETURN | `return getSvc_kei_stat_value();` - returns the service contract status data [-> L373] |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` - case-insensitive comparison (subkeyが"state"の場合、ステータスを返す / Returns status when subkey is "state") |
| 4 | RETURN | `return getSvc_kei_stat_state();` - returns the UI state of the service contract status [-> L375] |

**Block 3** - [ELSE-IF] `(key equals "申請明細番号" [Application Detail Number])` (L379)

> Routes to Application Detail Number getter. Same value/state pattern.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | RETURN | `return getMskm_dtl_no_value();` - returns the application detail number [-> L381] |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` - (subkeyが"state"の場合、ステータスを返す / Returns status when subkey is "state") |
| 4 | RETURN | `return getMskm_dtl_no_state();` - returns the UI state [-> L383] |

**Block 4** - [ELSE-IF] `(key equals "サービス契約ステータスリスト" [Service Contract Status List])` (L387)

> List-type field handler for service contract status items. Parses an index or wildcard `"*"` from the key string after the separator character. Supports count queries (`"*"`), indexed retrieval, and nested property delegation to `X33VDataTypeStringBean`.

| # | Type | Code |
|---|------|------|
| 1 | SET | `key = key.substring(separaterPoint + 1);` - Extract the portion after the "/" separator [-> L389] |
| 2 | IF | `key.equals("*")` - Wildcard for list count (インデックス値の代わりに"*"が指定されていたら、リストの要素数を返す / Returns list element count when "*" is specified instead of index value) |
| 3 | RETURN | `return Integer.valueOf(svc_kei_stat_lis_list.size());` - Returns the number of status list items [-> L391] |
| 4 | SET | `Integer tmpIndexInt = null;` - Declare variable for parsed index [-> L394] |
| 5 | TRY | `tmpIndexInt = Integer.valueOf(key);` - Parse the extracted key as integer [-> L396] |
| 6 | CATCH | `NumberFormatException e` - (インデックス値が数値文字列でない場合は、ここでnullを返す / Returns null if index value is not a numeric string) |
| 7 | RETURN | `return null;` - Invalid index string format [-> L399] |
| 8 | IF | `tmpIndexInt == null` - Safety check after parsing |
| 9 | RETURN | `return null;` - Null index is invalid [-> L401] |
| 10 | SET | `int tmpIndex = tmpIndexInt.intValue();` - Unbox Integer to int [-> L403] |
| 11 | IF | `tmpIndex < 0 || tmpIndex >= svc_kei_stat_lis_list.size()` - (インデックス値がリスト個数-1を超えると、ここでnullを返す / Returns null if index exceeds list count minus 1) |
| 12 | RETURN | `return null;` - Out-of-bounds index [-> L405] |
| 13 | RETURN | `return ((X33VDataTypeStringBean)svc_kei_stat_lis_list.get(tmpIndex)).loadModelData(subkey);` - Retrieve list item and delegate to its loadModelData for the subkey [-> L406] |

**Block 5** - [ELSE-IF] `(key equals "料金グループコード" [Fee Group Code])` (L410)

> Routes to Fee Group Code getter. Supports value/state modes.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | RETURN | `return getPrc_grp_cd_value();` - returns the fee group code [-> L412] |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` - (subkeyが"state"の場合、ステータスを返す / Returns status when subkey is "state") |
| 4 | RETURN | `return getPrc_grp_cd_state();` - returns the UI state [-> L414] |

**Block 6** - [ELSE-IF] `(key equals "サービス開始希望日" [Service Start Desired Date])` (L418)

> Routes to Service Start Desired Date getter. Supports value/state modes.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | RETURN | `return getSvc_sta_kibo_ymd_value();` - returns the desired service start date [-> L420] |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` - (subkeyが"state"の場合、ステータスを返す / Returns status when subkey is "state") |
| 4 | RETURN | `return getSvc_sta_kibo_ymd_state();` - returns the UI state [-> L422] |

**Block 7** - [ELSE-IF] `(key equals "支払方法引継フラグ" [Payment Method Succession Flag])` (L426)

> Routes to Payment Method Succession Flag getter. Supports value/state modes.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | RETURN | `return getPayway_keizoku_flg_value();` - returns the payment method succession flag [-> L428] |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` - (subkeyが"state"の場合、ステータスを返す / Returns status when subkey is "state") |
| 4 | RETURN | `return getPayway_keizoku_flg_state();` - returns the UI state [-> L430] |

**Block 8** - [ELSE-IF] `(key equals "紹介コードリスト" [Referral Code List])` (L434)

> List-type field handler for referral codes. Same structural pattern as Block 4: parse index/wildcard from key, validate bounds, delegate to nested `X33VDataTypeStringBean.loadModelData()`.

| # | Type | Code |
|---|------|------|
| 1 | SET | `key = key.substring(separaterPoint + 1);` - Extract key portion after "/" separator [-> L436] |
| 2 | IF | `key.equals("*")` - Wildcard for list count |
| 3 | RETURN | `return Integer.valueOf(intr_cd_list_list.size());` - Returns the number of referral code list items [-> L438] |
| 4 | SET | `Integer tmpIndexInt = null;` - Declare variable for parsed index [-> L441] |
| 5 | TRY | `tmpIndexInt = Integer.valueOf(key);` - Parse key as integer [-> L443] |
| 6 | CATCH | `NumberFormatException e` - (インデックス値が数値文字列でない場合は、ここでnullを返す / Returns null if index is not numeric) |
| 7 | RETURN | `return null;` - Invalid format [-> L446] |
| 8 | IF | `tmpIndexInt == null` |
| 9 | RETURN | `return null;` - Null index [-> L448] |
| 10 | SET | `int tmpIndex = tmpIndexInt.intValue();` - Unbox to int [-> L450] |
| 11 | IF | `tmpIndex < 0 || tmpIndex >= intr_cd_list_list.size()` - (インデックス値がリスト個数-1を超えると、ここでnullを返す / Returns null if index exceeds list size minus 1) |
| 12 | RETURN | `return null;` - Out of bounds [-> L452] |
| 13 | RETURN | `return ((X33VDataTypeStringBean)intr_cd_list_list.get(tmpIndex)).loadModelData(subkey);` - Delegate to list element [-> L453] |

**Block 9** - [ELSE-IF] `(key equals "紹介コード" [Referral Code])` (L457)

> Routes to Referral Code getter. Supports value/state modes.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | RETURN | `return getIntr_cd_value();` - returns the referral code [-> L459] |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` - (subkeyが"state"の場合、ステータスを返す / Returns status when subkey is "state") |
| 4 | RETURN | `return getIntr_cd_state();` - returns the UI state [-> L461] |

**Block 10** - [ELSE-IF] `(key equals "サービスコード" [Service Code])` (L465)

> Routes to Service Code getter. Supports value/state modes.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | RETURN | `return getSvc_cd_value();` - returns the service code [-> L467] |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` - (subkeyが"state"の場合、ステータスを返す / Returns status when subkey is "state") |
| 4 | RETURN | `return getSvc_cd_state();` - returns the UI state [-> L469] |

**Block 11** - [ELSE-IF] `(key equals "更新年月日時刻（サービス契約）" [Update Date Time for Service Contract])` (L473)

> Routes to Update Date Time getter. Supports value/state modes.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | RETURN | `return getUpd_dtm_value();` - returns the update date time value [-> L475] |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` - (subkeyが"state"の場合、ステータスを返す / Returns status when subkey is "state") |
| 4 | RETURN | `return getUpd_dtm_state();` - returns the UI state [-> L477] |

**Block 12** - [ELSE-IF] `(key equals "自動照会処理状態コード" [Auto Inquiry Processing Status Code])` (L481)

> Routes to Auto Inquiry Processing Status Code getter. Supports value/state modes.

| # | Type | Code |
|---|------|------|
| 1 | IF | `subkey.equalsIgnoreCase("value")` |
| 2 | RETURN | `return getAuto_shosa_tran_stat_cd_value();` - returns the auto inquiry processing status code [-> L483] |
| 3 | ELSE-IF | `subkey.equalsIgnoreCase("state")` - (subkeyが"state"の場合、ステータスを返す / Returns status when subkey is "state") |
| 4 | RETURN | `return getAuto_shosa_tran_stat_cd_state();` - returns the UI state [-> L485] |

**Block 13** - [ELSE] `(no matching property found)` (L489)

> Fallback for unrecognized field names. Returns null when no if/else-if branch matches.

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

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `svc_kei_stat` | Field | Service Contract Status - the current processing status of a service contract (e.g., registered, under review, approved, completed) |
| `svc_kei_stat_lis_list` | Field | Service Contract Status List - managed list of individual status items, each wrapped in an X33VDataTypeStringBean |
| `mskm_dtl_no` | Field | Application Detail Number (申請明細番号) - unique internal tracking number for a service application line item |
| `prc_grp_cd` | Field | Fee Group Code (料金グループコード) - classification code for fee/billing groups associated with the service contract |
| `svc_sta_kibo_ymd` | Field | Service Start Desired Date (サービス開始希望日) - the customer's requested start date for the service contract (ymd = year-month-day) |
| `payway_keizoku_flg` | Field | Payment Method Succession Flag (支払方法引継フラグ) - flag indicating whether to carry over the existing payment method to a new or renewed contract |
| `intr_cd_list_list` | Field | Referral Code List (紹介コードリスト) - managed list of referral code items, each wrapped in an X33VDataTypeStringBean |
| `intr_cd` | Field | Referral Code (紹介コード) - code identifying the referral source that referred the customer to the service |
| `svc_cd` | Field | Service Code (サービスコード) - unique code identifying the type of telecom service being contracted |
| `upd_dtm` | Field | Update Date Time (更新年月日時刻（サービス契約）) - the last modified timestamp of the service contract record |
| `auto_shosa_tran_stat_cd` | Field | Auto Inquiry Processing Status Code (自動照会処理状態コード) - code indicating the status of an automated inquiry/check processing operation |
| `subkey` | Parameter | Access mode specifier - `"value"` retrieves the actual data value, `"state"` retrieves the UI state/control flag for that field |
| `value` | Subkey value | Requests the actual business data value from the bean property |
| `state` | Subkey value | Requests the UI state flag (e.g., disabled, required, validated) associated with the bean property |
| `X33VDataTypeStringBean` | Class | A data type wrapper bean in the Fujitsu Futurity X33 framework that holds a String value and its metadata state |
| `X33VDataTypeList` | Class | A managed list data type in the X33 framework, supporting typed element storage and indexed access |
| `X33VViewBaseBean` | Class | Base class for X33 web framework view beans, providing common data binding infrastructure |
| `X31CBaseBean` | Class | Base class for X31 web framework beans, providing common utility and serialization support |
| KKSV* | Screen prefix | Japanese convention for Screen class names (KKSV = K-Opticom Service View) |
| DBean | Suffix | Data Bean - a model class that holds and mediates data between the UI and business logic layers |
