# Business Logic — CRW03407SF03DBean.listKoumokuIds() [10 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.CRW03407SF.CRW03407SF03DBean` |
| Layer | Controller / Presentation (Webview Bean) |
| Module | `CRW03407SF` (Package: `eo.web.webview.CRW03407SF`) |

## 1. Role

### CRW03407SF03DBean.listKoumokuIds()

This method serves as a metadata descriptor for a data view rendered in the web presentation layer. It returns a predefined, ordered list of Japanese-language column identifiers (item names — 項目名) that define which fields the UI should display in a data table or grid associated with campaign management. These identifiers correspond to fields on the `CRW03407SF03DBean` class itself (e.g., `l2_dsp_campaign_cd`, `l2_detail_index`), enabling the framework to bind column headers and cell rendering logic at runtime. It implements a simple **registry pattern**: a static factory method that provides a fixed schema for the view, without requiring any input parameters or external state. Its role in the larger system is that of a **shared view schema provider** — the web framework (Futurity X33) or a parent view bean consults this method to discover which columns the detail view should expose. The method has no conditional branches; it unconditionally builds and returns the same ordered list every time.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["listKoumokuIds()"])
    STEP1["Create ArrayList<String> koumokuList"]
    STEP2["Add '明細インデックス' (Detail Index)"]
    STEP3["Add 'キャンペーンコード' (Campaign Code)"]
    STEP4["Add 'キャンペーン名' (Campaign Name)"]
    STEP5["Add '適用月' (Applicable Month)"]
    STEP6["Add '行スタイルクラス' (Row Style Class)"]
    STEP7["Add '行スタイルID' (Row Style ID)"]
    END_NODE["Return koumokuList"]

    START --> STEP1 --> STEP2 --> STEP3 --> STEP4 --> STEP5 --> STEP6 --> STEP7 --> END_NODE
```

The method follows a straightforward linear execution path with no conditional branching. Each step appends one column identifier to the list in a fixed order that matches the intended display sequence in the UI.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| - | (none) | - | This is a static method with no parameters. |

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

## 4. CRUD Operations / Called Services

This method performs no database operations, no SC/CBS calls, and no service invocations. It only constructs an in-memory `ArrayList` by calling `ArrayList.add()`.

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| (none) | — | — | — | No data access or service calls. The method only builds an in-memory list of UI column identifiers. |

## 5. Dependency Trace

No callers were found in the codebase for `CRW03407SF03DBean.listKoumokuIds()`. This method appears to be a metadata descriptor that is intended to be consulted by the Futurity X33 web framework's view bean infrastructure at runtime (via reflection or a convention-based lookup), rather than invoked directly from application code. Other `*DBean.listKoumokuIds()` methods across the codebase follow the same pattern.

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| - | (no callers found) | — | — |

## 6. Per-Branch Detail Blocks

**Block 1** — [SEQUENTIAL] `(no condition)` (L475)

> Instantiate the return list and populate it with the six column identifiers in display order.

| # | Type | Code |
|---|------|------|
| 1 | SET | `koumokuList = new ArrayList<String>()` // Create an empty ArrayList to hold item name strings |
| 2 | SET | `koumokuList.add("明細インデックス")` // Add "Detail Index" — the index/row number column identifier [→ 明細インデックス = "明細インデックス"] |
| 3 | SET | `koumokuList.add("キャンペーンコード")` // Add "Campaign Code" — the campaign identifier column [→ キャンペーンコード = "キャンペーンコード"] |
| 4 | SET | `koumokuList.add("キャンペーン名")` // Add "Campaign Name" — the human-readable campaign name column [→ キャンペーン名 = "キャンペーン名"] |
| 5 | SET | `koumokuList.add("適用月")` // Add "Applicable Month" — the month to which the campaign applies [→ 適用月 = "適用月"] |
| 6 | SET | `koumokuList.add("行スタイルクラス")` // Add "Row Style Class" — the CSS class name for row styling [→ 行スタイルクラス = "行スタイルクラス"] |
| 7 | SET | `koumokuList.add("行スタイルID")` // Add "Row Style ID" — the CSS ID for row styling [→ 行スタイルID = "行スタイルID"] |
| 8 | RETURN | `return koumokuList;` // Return the populated list to the caller |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| 明細インデックス | Field (Japanese) | Detail Index — the row number or line item index in a data table, used for display ordering and row identification |
| キャンペーンコード | Field (Japanese) | Campaign Code — the unique identifier for a marketing or service campaign (e.g., promotional offer, bundled service deal) |
| キャンペーン名 | Field (Japanese) | Campaign Name — the human-readable name of a campaign, displayed to users in the UI |
| 適用月 | Field (Japanese) | Applicable Month — the billing or service month to which a campaign applies |
| 行スタイルクラス | Field (Japanese) | Row Style Class — the CSS class name used to apply visual styling (highlight, color, etc.) to a row in the data grid |
| 行スタイルID | Field (Japanese) | Row Style ID — the CSS ID used to apply visual styling to a row in the data grid |
| 項目名 | Term (Japanese) | Item Name — a column/field identifier used in the data view to describe what each column represents |
| DBean | Acronym | Data Bean — a presentation-layer bean that holds UI state and metadata for a screen or view in the Futurity X33 framework |
| CRW03407SF | Module Code | Campaign detail view screen module — likely "Campaign Window 03407 Service Function", handling campaign management UI |
| Futurity X33 | Acronym | Fujitsu Futurity X33 — the web client framework (from package `com.fujitsu.futurity.web.x33`) used for building JSF-based web screens |
