---

# Business Logic — KKW00816SF01DBean.listKoumokuIds() [9 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.KKW00816SF.KKW00816SF01DBean` |
| Layer | Web View Bean (Controller/View Support — `eo.web.webview.*` package, implements `X33VDataTypeBeanInterface`) |
| Module | `KKW00816SF` (Package: `eo.web.webview.KKW00816SF`) |

## 1. Role

### KKW00816SF01DBean.listKoumokuIds()

This method returns the list of field names (items) for the **Customer Contract Inheritance** data type bean within the KKW00816SF web screen module. It serves as a metadata provider for the Futurity X33 web framework's data type bean system — the framework uses this list to dynamically construct form fields, display labels, and column headers for the "Customer Contract Inheritance" (顧客契約引継リスト) data type. The bean's items represent the core data fields used when managing customer contract inheritance operations: the system ID (ISSID), service contract number, change classification, change reason code, and change reason memo. It implements the **Factory** design pattern by returning a pre-defined static list of field names, enabling the view layer to render consistent data-type-specific forms without hardcoding field metadata. This method is called by the parent bean `KKW00816SFBean.listKoumokuIds(String key)` when the key equals "顧客契約引継リスト" (Customer Contract Inheritance List), acting as a delegated metadata source.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["listKoumokuIds()"])
    CREATE["Create ArrayList<String> koumokuList"]
    ADD1["Add ISSID"]
    ADD2["Add Service Contract Number"]
    ADD3["Add Change Classification"]
    ADD4["Add Change Reason Code"]
    ADD5["Add Change Reason Memo"]
    RETURN(("Return koumokuList"))

    START --> CREATE --> ADD1 --> ADD2 --> ADD3 --> ADD4 --> ADD5 --> RETURN
```

This method performs a simple linear processing pattern — no conditional branches, loops, or method calls. It constructs a list of 5 field names that define the columns for the Customer Contract Inheritance data type. The items are returned in display order: the system identifier (ISSID) first, followed by the service contract number, then the three change-tracking fields (classification, reason code, and reason memo).

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| - | (none) | - | This is a static method with no parameters. It always returns the same fixed list of field names. |

**Instance fields or external state read:** None. This method is fully self-contained and stateless.

## 4. CRUD Operations / Called Services

This method performs no CRUD operations, no service calls, and no CBS invocations. It is a pure factory method that returns a static collection of field name strings.

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| — | — | — | — | No database or service interactions |

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Bean:KKW00816SFBean | `KKW00816SFBean.listKoumokuIds(String key)` → `KKW00816SF01DBean.listKoumokuIds()` when key equals "顧客契約引継リスト" | N/A — metadata factory, no CRUD |

The method is called exclusively by the parent bean `KKW00816SFBean` as part of its `listKoumokuIds(String key)` routing logic. When the view layer requests field metadata for the "Customer Contract Inheritance List" data type, the parent bean delegates to this method. No direct screen class (KKSV*) callers were found referencing this method in the codebase.

## 6. Per-Branch Detail Blocks

The method has no conditional branches, loops, or nested blocks. It is a linear execution flow.

**Block 1** — [METHOD BODY] (L391)

> The method body constructs and returns the field name list for the Customer Contract Inheritance data type.

| # | Type | Code |
|---|------|------|
| 1 | DECLARE | `ArrayList<String> koumokuList = new ArrayList<String>();` // Create the return list |
| 2 | SET | `koumokuList.add("ISSID")` // Add system ID field — unique identifier for the record |
| 3 | SET | `koumokuList.add("サービス契約番号")` // Add Service Contract Number field |
| 4 | SET | `koumokuList.add("異動区分")` // Add Change Classification field — indicates the type of change (add, modify, delete, etc.) |
| 5 | SET | `koumokuList.add("異動理由コード")` // Add Change Reason Code field — coded reason for the change |
| 6 | SET | `koumokuList.add("異動理由メモ")` // Add Change Reason Memo field — free-text explanation for the change |
| 7 | RETURN | `return koumokuList;` // Return the 5-element list |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `koumokuList` | Field | Item name list — an ArrayList of string field names defining the columns of a data type bean |
| `ISSID` | Field | Internal System Service ID — a unique system-generated identifier for tracking a contract or record throughout its lifecycle |
| `サービス契約番号` | Field | Service Contract Number — the unique identifier assigned to a customer's service contract |
| `異動区分` | Field | Change Classification — categorizes the type of modification applied to a contract record (e.g., new registration, modification, cancellation) |
| `異動理由コード` | Field | Change Reason Code — a coded value indicating the business reason for a contract modification |
| `異動理由メモ` | Field | Change Reason Memo — free-text field allowing operators to provide additional context about a contract change |
| 顧客契約引継リスト | Business term | Customer Contract Inheritance List — a screen/data type that manages the transfer/inheritance of customer contracts between agents or systems |
| データタイプビーン | Technical term | Data Type Bean — a Futurity X33 framework component that defines the structure (field names and data types) for a specific data context on a web screen |
| KKW00816SF | Module | A web screen module in the K-Opticom telecom ordering system handling customer contract operations |
| X33VDataTypeBeanInterface | Technical term | Futurity X33 framework interface that a bean must implement to provide data type metadata (field names and types) for dynamic form rendering |

---
