---
title: Business Logic — SCW00301SFLogic.init()
description: Detailed design documentation for SCW00301SFLogic.init() method
---

# Business Logic — SCW00301SFLogic.init() [12 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.SCW00301SF.SCW00301SFLogic` |
| Layer | Controller / Screen Logic (Web view logic class extending `JCCWebBusinessLogic`) |
| Module | `SCW00301SF` (Package: `eo.web.webview.SCW00301SF`) |

## 1. Role

### SCW00301SFLogic.init()

The `init()` method performs the **initialization processing** (初期化処理) for the **VLAN-ID Request New Registration** screen (SCW00301). It serves as the entry-point lifecycle method invoked when a user first accesses the VLAN-ID issuance request screen in the FTTH (Fiber To The Home) service self-registration web portal.

This method implements the **screen initialization pattern** typical of the JCC (Joint Customer Center) web framework: it acquires the service form data bean from the framework superclass, clears any residual service contract number state from the data bean to ensure a clean initial screen state, and then configures the next screen navigation target to point back to the current screen (supporting self-referencing flow for single-screen workflows).

Its role in the larger system is that of a **shared screen initialization routine** within the `SCW00301SF` module, which handles VLAN-ID issuance requests for FTTH service customers. As a subclass of `JCCWebBusinessLogic`, this method is called by the screen controller during the screen display request phase, ensuring the data bean is in a known-good state before the view renders to the user.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["init()"])
    STEP1["Get serviceFormBean via super.getServiceFormBean()"]
    STEP2["Clear service contract number retention area
sendMessageString(KEY_SVC_KEI_NO_HOJI, DATABEAN_SET_VALUE, empty string)"]
    STEP3["Set next screen
setNextScreen(SCW00301, SCREEN_NAME_SCW00301)"]
    STEP4["Return true"]
    END(["END"])

    START --> STEP1
    STEP1 --> STEP2
    STEP2 --> STEP3
    STEP3 --> STEP4
    STEP4 --> END
```

**Processing flow:**

1. **Acquire service form bean** — Calls `super.getServiceFormBean()` to obtain the `X31SDataBeanAccess` instance that holds the screen's data context. This bean is the shared data carrier between the view (JSP) and the business logic layer.

2. **Clear service contract number retention area** — Calls `sendMessageString()` on the service form bean to set the `KEY_SVC_KEI_NO_HOJI` key to an empty string. This wipes any previously retained service contract number from a prior session or back-navigation, ensuring the initialization screen starts clean.

3. **Set next screen** — Calls `setNextScreen()` with the screen ID `"SCW00301"` and screen name `"VLAN-ID発行依頼新規登録"` (VLAN-ID Request New Registration). This establishes the navigation target for subsequent screen transitions within this workflow.

4. **Return success** — Returns `true` to indicate the initialization completed successfully.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| - | (none) | - | - |

**Instance fields / external state read by this method:**

| Source | Type | Business Description |
|--------|------|---------------------|
| `super.getServiceFormBean()` | `X31SDataBeanAccess` | Service form data bean inherited from `JCCWebBusinessLogic` — holds the screen's data context, including service contract numbers and other form state passed between the view and logic layer. |

## 4. CRUD Operations / Called Services

### Pre-computed evidence from code analysis:

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| - | `X31SDataBeanAccess.getServiceFormBean` | (Framework) | - | Calls `getServiceFormBean()` in superclass `JCCWebBusinessLogic` to acquire the data bean |
| - | `X31SDataBeanAccess.sendMessageString` | (Framework) | - | Calls `sendMessageString(key, DATABEAN_SET_VALUE, value)` in `X31SDataBeanAccess` to write a value into the data bean's message map |
| - | `SCW00301SFLogic.setNextScreen` | (Self) | - | Calls `setNextScreen(screenId, screenName)` in `SCW00301SFLogic` to set the next screen navigation target |

**Operation classification:**

This method does **not** perform direct CRUD (Create/Read/Update/Delete) operations on any database tables. Instead, it operates entirely at the **web data bean layer** — manipulating in-memory screen state within the `X31SDataBeanAccess` framework bean. All three operations are framework-level data bean interactions, not persistent entity operations.

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Screen:SCW00301 (VLAN-ID issuance request new registration) | Controller -> `SCW00301SFLogic.init()` | `sendMessageString [U] X31SDataBeanAccess (in-memory)` |

**Notes:** The caller search returned no external Java files referencing `SCW00301SFLogic`. This is consistent with the pattern where screen logic classes are instantiated and invoked via reflection or controller dispatching by the JCC web framework based on the screen ID (`SCW00301`). The screen class itself (likely named `SCW00301SFServlet` or similar, following the naming convention) would be responsible for calling `init()`. The caller is inferred as Screen `SCW00301` based on the `SCREEN_ID_SCW00301` constant used within this method.

## 6. Per-Branch Detail Blocks

**Block 1** — [EXEC] `(Acquire service form bean)` (L58)

> Obtains the screen data bean from the framework superclass.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `X31SDataBeanAccess serviceFormBean = super.getServiceFormBean();` // Acquire the service form data bean from the framework superclass |

**Block 2** — [EXEC] `(Clear service contract number retention area)` (L61)

> Resets the service contract number retention field in the data bean to an empty string, ensuring no stale contract number persists from a previous session.

| # | Type | Code |
|---|------|------|
| 1 | EXEC | `serviceFormBean.sendMessageString(SCW00401SFConst.KEY_SVC_KEI_NO_HOJI, X31CWebConst.DATABEAN_SET_VALUE, "")` // Set KEY_SVC_KEI_NO_HOJI = "キーサービス契約番号保持" (Key Service Contract Number Retention) to empty string in data bean |

**Constant Resolution:**

| Constant | Resolved Value | Business Meaning |
|----------|---------------|------------------|
| `SCW00401SFConst.KEY_SVC_KEI_NO_HOJI` | `"キーサービス契約番号保持"` | Key Service Contract Number Retention — the data bean key used to store/retain the service contract number across screen transitions |
| `X31CWebConst.DATABEAN_SET_VALUE` | `"SETVALUE"` (framework constant) | Framework flag indicating a set operation on the data bean's message map |

**Block 3** — [EXEC] `(Set next screen)` (L64)

> Configures the next screen navigation target as the current screen itself, enabling self-referencing screen flow for single-screen workflows.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `setNextScreen(SCREEN_ID_SCW00301, SCREEN_NAME_SCW00301);` // Set next screen to SCW00301 (VLAN-ID issuance request new registration) |

**Constant Resolution:**

| Constant | Resolved Value | Business Meaning |
|----------|---------------|------------------|
| `JSCScreenConst.SCREEN_ID_SCW00301` | `"SCW00301"` | Screen ID for the VLAN-ID Request New Registration screen |
| `JSCScreenConst.SCREEN_NAME_SCW00301` | `"VLAN-ID発行依頼新規登録"` | Screen name: "VLAN-ID Request New Registration" |

**Block 4** — [RETURN] `(Return success)` (L65)

| # | Type | Code |
|---|------|------|
| 1 | RETURN | `return true;` // Return success flag (成否 = success/failure) |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `KEY_SVC_KEI_NO_HOJI` | Field / Constant | Key Service Contract Number Retention — data bean key used to store and persist the service contract number across screen transitions |
| `SCW00301` | Screen ID | VLAN-ID Request New Registration — the screen ID for the FTTH VLAN-ID issuance request workflow |
| `VLAN-ID発行依頼新規登録` | Business term | VLAN-ID Request New Registration — the screen title for registering a new VLAN-ID issuance request for an FTTH customer |
| `X31SDataBeanAccess` | Framework class | X31 Service Data Bean Access — framework class providing the data bean used for screen-to-screen data carrying in the JCC web framework |
| `DATABEAN_SET_VALUE` | Framework constant | Framework flag constant used in `sendMessage*` methods to indicate a value set operation on the data bean's message map |
| `DATABEAN_GET_VALUE` | Framework constant | Framework flag constant used in `sendMessage*` methods to indicate a value read operation from the data bean's message map |
| FTTH | Business term | Fiber To The Home — fiber-optic broadband internet service offered by the telecom operator |
| VLAN-ID | Business term | Virtual Local Area Network Identifier — a network identifier assigned to a customer's fiber connection for network segmentation |
| JCCWebBusinessLogic | Framework class | Joint Customer Center Web Business Logic — base class for all screen business logic handlers in the JCC web framework |
| SCREEN_ID_SCW00301 | Constant | Screen identifier constant for the VLAN-ID issuance request screen |
| SCREEN_NAME_SCW00301 | Constant | Display name constant for the VLAN-ID issuance request screen |
