---
title: "Business Logic — KKW00846SF03DBean.listKoumokuIds()"
method: KKW00846SF03DBean.listKoumokuIds
fqn: eo.web.webview.KKA18001SF.KKW00846SF03DBean
file: source/koptWebA/src/eo/web/webview/KKA18001SF/KKW00846SF03DBean.java
loc: 13
lines: "555–567"
return: ArrayList<String>
---

# Business Logic — KKW00846SF03DBean.listKoumokuIds() [13 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.KKA18001SF.KKW00846SF03DBean` |
| Layer | Utility / View Bean (Data Type Bean) |
| Module | `KKA18001SF` (Package: `eo.web.webview.KKA18001SF`) |

## 1. Role

### KKW00846SF03DBean.listKoumokuIds()

This method serves as a **data-type bean field metadata provider** within the K-Opticom web application framework. It returns a predefined list of display labels (in Japanese) that represent the column names for the "Option Service Contract Batch Details" screen section (アイテムID: `op_svc_kei_list`). This data-type bean is wired into the parent bean dispatcher `KKW00846SFBean.listKoumokuIds(String key)` via a routing branch keyed by the Japanese string `オプションサービス契約一覧照会詳細` (Option Service Contract Batch Details). The method implements the **data type bean pattern** — a framework convention where each configurable list section has its own dedicated bean class that exposes both field getters/setters and a static metadata list, enabling the framework to dynamically build data entry grids from bean introspection. As a **static factory method**, it is designed to be called without instantiating the bean, making it a lightweight utility accessible from anywhere in the view layer. The 9-item list corresponds to the optional service contract data model, covering contract identifiers, service codes, start dates, and fee calculation timing — all of which are displayed as column headers in a data entry grid UI component.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["listKoumokuIds()"])
    CREATE["Create ArrayList<String> koumokuList"]

    START --> CREATE
    CREATE --> ITEM1["Add: \"Option Service Contract Number\""]
    ITEM1 --> ITEM2["Add: \"Option Service Contract Status\""]
    ITEM2 --> ITEM3["Add: \"Option Service Code\""]
    ITEM3 --> ITEM4["Add: \"Option Service Code Name\""]
    ITEM4 --> ITEM5["Add: \"Service Use Start Desired Date\""]
    ITEM5 --> ITEM6["Add: \"Reservation Application Date\""]
    ITEM6 --> ITEM7["Add: \"Service Start Date\""]
    ITEM7 --> ITEM8["Add: \"Service Charge Start Date\""]
    ITEM8 --> ITEM9["Add: \"First Charge Calculation Date\""]
    ITEM9 --> RETURN["Return koumokuList"]
    RETURN --> END(["End"])
```

**Processing Summary:**
The method follows a single linear execution path with no conditional branches. It instantiates an `ArrayList<String>` and sequentially appends 9 Japanese display label strings, each representing a column header for the Option Service Contract batch entry grid. The list is then returned to the caller.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| - | (none) | - | This method takes no parameters; it is a static factory method that returns a fixed metadata list. |

No instance fields or external state are read by this method. It is entirely stateless and self-contained.

## 4. CRUD Operations / Called Services

This method performs no database operations, no service component calls, and no CRUD actions. It is a pure data builder that constructs a presentation-layer label list from hardcoded strings.

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| - | - | - | - | No database or service interactions. Pure metadata provider. |

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Screen:KKW00846SF (Bean Dispatcher) | `KKW00846SFBean.listKoumokuIds(key)` -> `KKW00846SF03DBean.listKoumokuIds()` | (none — pure metadata) |
| 2 | Screen:KKW00846SF (addListDataInstance) | `KKW00846SFBean.addListDataInstance(key)` -> `KKW00846SF03DBean` instantiation | (none — pure metadata) |

**Caller Details:**
The primary caller is `KKW00846SFBean` (the parent data-type dispatcher bean in both `koptWebA` and `koptWebB`). When the dispatcher receives the key string `オプションサービス契約一覧照会詳細` (Option Service Contract Batch Details), it routes to `KKW00846SF03DBean.listKoumokuIds()` to populate the column headers for that list section. The same key also triggers bean instance creation in `addListDataInstance(String key)`, which instantiates `KKW00846SF03DBean` objects for each row in the list.

## 6. Per-Branch Detail Blocks

> This method has no conditional branches. The following details the single linear execution path block by block.

**Block 1** — EXEC `(sequential list population)` (L555)

> Creates and populates the metadata list with 9 display labels.

| # | Type | Code |
|---|------|------|
| 1 | SET | `ArrayList<String> koumokuList = new ArrayList<String>();` // Instantiate empty list |
| 2 | ADD | `koumokuList.add("オプションサービス契約番号");` // Add: "Option Service Contract Number" [-> Field: op_svc_kei_no] |
| 3 | ADD | `koumokuList.add("オプションサービス契約ステータス");` // Add: "Option Service Contract Status" [-> Field: op_svc_kei_stat] |
| 4 | ADD | `koumokuList.add("オプションサービスコード");` // Add: "Option Service Code" [-> Field: op_svc_cd] |
| 5 | ADD | `koumokuList.add("オプションサービスコード名称");` // Add: "Option Service Code Name" [-> Field: op_svc_cd_nm] |
| 6 | ADD | `koumokuList.add("サービス利用開始希望年月日");` // Add: "Service Use Start Desired Date" [-> Field: svc_use_sta_kibo_ymd] |
| 7 | ADD | `koumokuList.add("予約適用年月日");` // Add: "Reservation Application Date" [-> Field: rsv_aply_ymd] |
| 8 | ADD | `koumokuList.add("サービス開始年月日");` // Add: "Service Start Date" [-> Field: svc_sta_ymd] |
| 9 | ADD | `koumokuList.add("サービス課金開始年月日");` // Add: "Service Charge Start Date" [-> Field: svc_chrg_staymd] |
| 10 | ADD | `koumokuList.add("初回料金計算日");` // Add: "First Charge Calculation Date" [-> Field: first_prc_calc_ymd] |
| 11 | RETURN | `return koumokuList;` // Return populated metadata list |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `listKoumokuIds` | Method | Returns the list of item (column) names for a data type bean — used by the framework to build data entry grid headers |
| `koumoku` | Field (Japanese) | Item / field name — refers to a column or field label in a data entry grid |
| データタイプビーン | Term (Japanese) | Data Type Bean — a framework bean class that defines fields (items) and their getters/setters for structured data entry views |
| クラス名 | Term (Japanese) | Class name — the bean class identifier used as a routing key in the dispatcher |
| オプションサービス契約一覧照会詳細 | Term (Japanese) | Option Service Contract Batch Details — the screen section name used as a routing key to select this bean's metadata |
| アイテムID | Term (Japanese) | Item ID — `op_svc_kei_list`, the internal identifier for the option service contract list view section |
| `op_svc_kei_no` | Field | Option service contract number — the unique identifier for an option service contract line item |
| `op_svc_kei_stat` | Field | Option service contract status — the current processing state of a contract line item |
| `op_svc_cd` | Field | Option service code — the code identifying the specific option service type |
| `op_svc_cd_nm` | Field | Option service code name — the human-readable name of the option service |
| `svc_use_sta_kibo_ymd` | Field | Service use start desired date — the customer's requested service activation date (year/month/day) |
| `rsv_aply_ymd` | Field | Reservation application date — the date a reservation was applied for service scheduling |
| `svc_sta_ymd` | Field | Service start date — the actual date the service became active |
| `svc_chrg_staymd` | Field | Service charge start date — the date from which billing/charges begin |
| `first_prc_calc_ymd` | Field | First charge calculation date — the date of the initial billing cycle calculation |
| KKA18001SF | Module | The service module identifier — a K-Opticom internal web service module handling option service contract operations |
| KKW00846SF | Screen module | The screen-level module that dispatches to data-type beans for the Option Service Contract Batch Details view |
