# Business Logic — JKKKikiIchiranIkkatsuCC.isScrnCommonExec() [530 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | com.fujitsu.futurity.bp.custom.common.JKKKikiIchiranIkkatsuCC |
| Layer | CC/Common Component (shared business logic component) |
| Module | common (Package: com.fujitsu.futurity.bp.custom.common) |

## 1. Role

### JKKKikiIchiranIkkatsuCC.isScrnCommonExec()

This method is the central orchestrator of the device list bulk-update screen processing (execKikiIchiranIkkatsu) in the K-Opticom e-Service customer core system. It coordinates all post-list-edit business operations across every device edit category — from device cancellation and deletion to device addition, specification changes, repair orders, and guarantee/insurance processing.

The method implements a routing/dispatch design pattern. It first evaluates the service contract status (svc_kei_stat). If the service has not yet been accepted by Fujitsu (i.e., status is NOT "010" - Accepted), it executes pre-acceptance business checks: submit-content approval (isExecMoshiKomiShonin), work-order cancellation handling (isExecKojiAnkenCancel), and TV course-change updates (execTvCourseChangeYouhi). Once the service contract is accepted (or these pre-conditions are satisfied), the method proceeds to device-level processing.

For each item in the device edit list, the method dispatches to category-specific CC (Common Component) handlers based on the kiki_edit_kbn (device edit category code). The supported categories include device cancellation cancel, device deletion, device update, unknown-device update, specification change, device addition, repair order, repair cancellation, device restoration, and guarantee/insurance processing.

Additionally, when the processing mode is "Check Only" (FUNC_CODE_2 = "2"), the method also handles service-line-item agreement inquiry for contract notification documents after processing all items. Post-loop, it handles phone number change updates for new lines and performs final validation checks including contract change history cancellation, IPv6 option service contract verification, address change detail propagation, and emergency dispatch processing.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START["isScrnCommonExec(params)"]
    GET_WORK["Get workMap and ccMsg from param"]
    GET_STAT["Get svcKeiStat via getSvcKeiStat()"]
    COND_ACCEPTED["svcKeiStat != SVC_KEI_STAT_UKEZUMI = 010?
Not Accepted"]

    SUBMIT_APPROVAL["isExecMoshiKomiShonin
Submit Content Approval"]
    WORK_ORDER_CANCEL["isExecKojiAnkenCancel
Work Order Cancel"]
    TV_CHANGE["execTvCourseChangeYouhi
TV Course Change Update (COURSE_CHANGE_UPDATE)"]

    GET_KIKI_KBN["Get kikiOptSvcKeiShoriKbn from temporaryData"]
    TEL_CHECK["isTelRelationUpd(temporaryData)"]

    TEL_REL_UPD["execTelRelationUpdKikiOptUpdate
Phone Number Change Update"]
    TEL_TAKINO["execTelRelationUpdTakinoAdd
Phone Change New Line"]

    OPT_SVC_CHECK["kikiOptSvcKeiShoriKBN = ADD=1 or DSL=2?
Device Option Service Processing"]
    KIKI_OPT_UPD["execKikiOptSvcKeiUpd
Device Option Service Contract Update"]

    GET_ICHIRAN["Get ichiranShoriList from workMap"]
    OUTER_LOOP["Loop: i = 0 to SHORIJYUN_KIKI_EDIT_KBN.length"]
    INNER_LOOP["Loop: j = 0 to ichiranShoriList.size"]
    GET_EDIT_KBN["Get kiki_edit_kbn from scrnItemMap"]
    COND_MATCH["SHORIJYUN_KIKI_EDIT_KBN[i] == kiki_edit_kbn?"]

    KAI_CAN["KIKI_EDIT_KBN_KAI_CAN = 3
Device Cancellation Cancel"]
    SET_BF_1["setlastUpdateTimeBeforeData"]
    KAIYAKU["isExecKaiyakuCancel
Contract Cancellation Cancel"]
    KK2811_CHECK["Get kk2811_kkop_svc_kei_stat/ko and taknkiki_sbt_cd"]
    KK2811_COND["Status not Cancel=920 or Kaiyaku=910?"]
    TABLET_COND["taknkiki_sbt_cd = TABLET=P0 AND kk2811_svc_kei_no != empty?"]
    TERM_CANCEL["execTnmtHoshoKaiCanSyori
Home Network Insurance Cancellation Cancel"]

    KIKI_DEL["KIKI_EDIT_KBN_KIKI_DEL = 9
Device Deletion"]
    KIKI_DELETE["isExecKikiDelete
Device Deletion Processing"]

    KIKI_UPD["KIKI_EDIT_KBN_KIKI_UPD = 2
Device Update"]
    KIKI_UPD_PROC["isExecKikiIchiranKkUpd
Device Update Processing"]

    KIKI_FUMEI["KIKI_EDIT_KBN_KIKI_FUMEI = 10
Device Update - Unknown Device"]
    KIKI_FUMEI_PROC["isExeckikiIchiranUpdFumei
Unknown Device Update"]

    KISHU_UPD["KIKI_EDIT_KBN_KISHU_UPD = 4
Specification Change"]
    KISHU_CHG["isExecKikiIchiranKishuChg
Specification Change Processing"]

    KIKI_ADD["KIKI_EDIT_KBN_KIKI_ADD = 1
Device Addition"]
    SET_AF["setlastUpdateTimeAfterData"]
    KIKI_CREATE["isExecKikiIchiranKkCreate
Device Registration Processing"]

    SHURI_UKE["KIKI_EDIT_KBN_SHURI_UKE = 5
Repair Order"]
    SHURI_UKE_PROC["isExecKikiIchiranShuriUk
Repair Order Processing"]

    SHURI_TORI["KIKI_EDIT_KBN_SHURI_TORI = 6
Repair Cancellation"]
    SHURI_TORI_PROC["isExecKikiIchiranShuriCan
Repair Cancellation Processing"]

    KAIFUKU["KIKI_EDIT_KBN_KIKI_KAIFUKU = 11
Device Restoration"]
    KAIFUKU_PROC["isExecKikiIchiranKaifuku
Device Restoration Processing"]
    WRIBIKI["execKikiKaifukuWribikiShori
Restoration Discount Processing"]

    MSK_JSK["KIKI_EDIT_KBN_KIKI_MSK_JSK_UPD = 12
Guarantee/Insurance"]
    MSK_JSK_PROC["execTnmtHoshoSyori
Guarantee/Insurance Processing"]

    FUNC_CODE_CHECK["func_code = FUNC_CODE_2 = 2?
Check Only Mode"]
    KAISEN_INQ["Service Line Item Agreement Inquiry
EKK0251B001CBS"]
    SET_KAISEN["Set svc_kei_kaisen_ucwk_no in kksv059502cc"]

    AFTER_LOOP["Post-Loop Processing"]
    TEL_REL_COND2["isTelRelationUpd + kikiOptSvcKeiShoriKBN = ADD = 1?"]
    KEICHG_CAN["isExcecKikiIchiranKeiChgCan
Contract Change History Cancellation"]
    IPV6_CHECK["isExecDslIpv6OptionSvcKei
IPv6 Option Service Contract Check"]

    COND_ACCEPTED2["svcKeiStat != SVC_KEI_STAT_UKEZUMI = 010?
Not Accepted"]
    COND_FUNC1["func_code = FUNC_CODE_1 = 1?
Check and Register Mode"]
    VDSL_PROC["isVdslKikiDelIns
VDSL Device Delete/Add"]
    JUSHO_DTL["isExcecJuushoUpdateDtl
Address Change Details"]
    JUSHO_KOJI["isExcecJuushoUpdateDtlKojiRebkeiIgai
Old Address Processing"]
    JUSHO_KIKI["isExcecJuushoUpdateDtlKikiOption
Device Option Address Reflect"]
    KOJI_RENKEI["isExecKojiAnkenRenkei
Work Order Item Correlation"]
    KINKYU["isExcecKikiIchiranKinkyu
Emergency Dispatch Processing"]
    TUCHISHO_COND["id_tourokusho_um = TUCHISHO_UMU_ARI = 1?
Notice Document Exists"]
    TUCHISHO_PROC["isExcecTuchishoToroku
Notice Document Registration"]
    MOSHI_KOMI["isExecMoshiKomiShosaKozoku
Submit Content Review/Post-task"]
    STI_PRG["isExecKkshkaStiPrg
Delivery Progress Registration Display"]

    END_TRUE["Return true"]
    END_FALSE["Return false"]

    START --> GET_WORK --> GET_STAT --> COND_ACCEPTED
    COND_ACCEPTED -- "No (Accepted)" --> GET_KIKI_KBN
    COND_ACCEPTED -- "Yes (Not Accepted)" --> SUBMIT_APPROVAL

    SUBMIT_APPROVAL -- "Fail" --> END_FALSE
    SUBMIT_APPROVAL -- "Pass" --> WORK_ORDER_CANCEL
    WORK_ORDER_CANCEL -- "Fail" --> END_FALSE
    WORK_ORDER_CANCEL -- "Pass" --> TV_CHANGE
    TV_CHANGE -- "Fail" --> END_FALSE
    TV_CHANGE -- "Pass" --> GET_KIKI_KBN

    GET_KIKI_KBN --> TEL_CHECK
    TEL_CHECK -- "true" --> COND_OPT_SVC
    TEL_CHECK -- "false" --> COND_OPT_SVC

    OPT_SVC_CHECK -- "true (ADD=1 or DSL=2)" --> KIKI_OPT_UPD
    OPT_SVC_CHECK -- "false" --> GET_ICHIRAN

    KIKI_OPT_UPD --> GET_ICHIRAN
    TEL_REL_UPD --> GET_ICHIRAN

    GET_ICHIRAN --> OUTER_LOOP
    OUTER_LOOP --> INNER_LOOP
    INNER_LOOP --> GET_EDIT_KBN --> COND_MATCH
    COND_MATCH -- "true" --> DISPATCH_TABLE
    COND_MATCH -- "false" --> FUNC_CHECK

    DISPATCH_TABLE --> KAI_CAN --> SET_BF_1 --> KAIYAKU
    KAIYAKU -- "Fail" --> END_FALSE
    KAIYAKU -- "Pass" --> KK2811_CHECK --> KK2811_COND
    KK2811_COND -- "false (Cancel/Kaiyaku)" --> INNER_LOOP
    KK2811_COND -- "true (Active)" --> TABLET_COND
    TABLET_COND -- "true (Tablet + svc_no)" --> TERM_CANCEL --> INNER_LOOP
    TABLET_COND -- "false" --> INNER_LOOP

    KAI_CAN -- "kiki_edit_kbn == 3" --> SET_BF_1
    KIKI_DEL -- "kiki_edit_kbn == 9" --> KIKI_DELETE
    KIKI_DELETE -- "Fail" --> END_FALSE
    KIKI_DELETE -- "Pass" --> INNER_LOOP
    KIKI_UPD -- "kiki_edit_kbn == 2" --> KIKI_UPD_PROC
    KIKI_UPD_PROC -- "Fail" --> END_FALSE
    KIKI_UPD_PROC -- "Pass" --> INNER_LOOP
    KIKI_FUMEI -- "kiki_edit_kbn == 10" --> KIKI_FUMEI_PROC
    KIKI_FUMEI_PROC -- "Fail" --> END_FALSE
    KIKI_FUMEI_PROC -- "Pass" --> INNER_LOOP
    KISHU_UPD -- "kiki_edit_kbn == 4" --> KISHU_CHG
    KISHU_CHG -- "Fail" --> END_FALSE
    KISHU_CHG -- "Pass" --> INNER_LOOP
    KIKI_ADD -- "kiki_edit_kbn == 1" --> SET_AF --> KIKI_CREATE
    KIKI_CREATE -- "Fail" --> END_FALSE
    KIKI_CREATE -- "Pass" --> INNER_LOOP
    SHURI_UKE -- "kiki_edit_kbn == 5" --> SHURI_UKE_PROC
    SHURI_UKE_PROC -- "Fail" --> END_FALSE
    SHURI_UKE_PROC -- "Pass" --> INNER_LOOP
    SHURI_TORI -- "kiki_edit_kbn == 6" --> SHURI_TORI_PROC
    SHURI_TORI_PROC -- "Fail" --> END_FALSE
    SHURI_TORI_PROC -- "Pass" --> INNER_LOOP
    KAIFUKU -- "kiki_edit_kbn == 11" --> KAIFUKU_PROC
    KAIFUKU_PROC -- "Fail" --> END_FALSE
    KAIFUKU_PROC -- "Pass" --> WRIBIKI --> INNER_LOOP
    MSK_JSK -- "kiki_edit_kbn == 12" --> MSK_JSK_PROC --> INNER_LOOP

    INNER_LOOP -- "end" --> FUNC_CHECK
    FUNC_CHECK -- "func_code == 2" --> INNER_LOOP
    FUNC_CHECK -- "func_code != 2" --> KAISEN_INQ --> KAISEN_SET --> INNER_LOOP

    OUTER_LOOP -- "end" --> AFTER_LOOP
    AFTER_LOOP --> TEL_REL_COND2
    TEL_REL_COND2 -- "true" --> TEL_TAKINO --> KEICHG_CAN
    TEL_REL_COND2 -- "false" --> KEICHG_CAN

    KEICHG_CAN -- "Fail" --> END_FALSE
    KEICHG_CAN -- "Pass" --> IPV6_CHECK
    IPV6_CHECK -- "Fail" --> END_FALSE
    IPV6_CHECK -- "Pass" --> COND_ACCEPTED2

    COND_ACCEPTED2 -- "Yes (Not Accepted)" --> COND_FUNC1
    COND_ACCEPTED2 -- "No (Accepted)" --> STI_PRG --> END_TRUE

    COND_FUNC1 -- "false" --> STI_PRG
    COND_FUNC1 -- "true" --> VDSL_PROC
    VDSL_PROC -- "Fail" --> END_FALSE
    VDSL_PROC -- "Pass" --> JUSHO_DTL
    JUSHO_DTL -- "Fail" --> END_FALSE
    JUSHO_DTL -- "Pass" --> JUSHO_KOJI
    JUSHO_KOJI -- "Fail" --> END_FALSE
    JUSHO_KOJI -- "Pass" --> JUSHO_KIKI
    JUSHO_KIKI -- "Fail" --> END_FALSE
    JUSHO_KIKI -- "Pass" --> KOJI_RENKEI
    KOJI_RENKEI -- "Fail" --> END_FALSE
    KOJI_RENKEI -- "Pass" --> KINKYU
    KINKYU -- "Fail" --> END_FALSE
    KINKYU -- "Pass" --> TUCHISHO_COND
    TUCHISHO_COND -- "false" --> MOSHI_KOMI
    TUCHISHO_COND -- "true" --> TUCHISHO_PROC
    TUCHISHO_PROC -- "Fail" --> END_FALSE
    TUCHISHO_PROC -- "Pass" --> MOSHI_KOMI
    MOSHI_KOMI -- "Fail" --> END_FALSE
    MOSHI_KOMI -- "Pass" --> STI_PRG

    %% Dispatch table clarifying the flow
    COND_MATCH -- "false" --> FUNC_CHECK
    COND_ACCEPTED -- "false (Accepted)" --> GET_KIKI_KBN
```

### Flow Description

1. **Initialization (L6393-6398)**: Gets the work area map and ccMsg HashMap from the parameter object. Retrieves the service contract status.

2. **Pre-acceptance Processing (L6402-6422)**: If the service contract status is NOT "010" (Accepted), executes submit-content approval, work-order cancellation, and TV course-change updates. Each step can abort the entire process by returning false.

3. **Phone Number Change Handling (L6430-6437)**: Checks if phone number change is needed and if the processing type is "3" (Change Device Option Update). If both true, calls execTelRelationUpdKikiOptUpdate.

4. **Device Option Service Contract Processing (L6444-6446)**: If the kikiOptSvcKeiShoriKbn is "1" (Add Device) or "2" (Cancel Device + Option Update), executes execKikiOptSvcKeiUpd.

5. **Device List Processing Loop (L6451-6846)**: Nested loops iterate over each processing category (defined in SHORIJYUN_KIKI_EDIT_KBN array) and each device item in the list. Dispatches to the appropriate CC handler based on the edit category code.

6. **Post-Loop Processing (L6863-6869)**: If phone number change with ADD type, calls execTelRelationUpdTakinoAdd. Then checks contract change history cancellation and IPv6 option service contract.

7. **Post-acceptance Final Processing (L6873-6914)**: If service not yet accepted and func_code is "1" (Check and Register), executes VDSL device changes, address change details propagation, work order item correlation, emergency dispatch, notice document registration (if applicable), and submit content review. Finally, calls delivery progress registration display and returns true.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `handle` | `SessionHandle` | Database session handle — provides the connection context for all SC (Service Component) calls and database operations within this method |
| 2 | `scCall` | `ServiceComponentRequestInvoker` | Service component invocation object — used to call CBS/SC services (e.g., EKK0251B001CBS for service-line-item agreement inquiry). Contains class name for logging |
| 3 | `param` | `IRequestParameterReadWrite` | Request parameter object — carries the work area map (processing list data), ccMsg output map, and provides getData/setData access to CC-specific message maps by key |
| 4 | `dataMapKey` | `String` | The map key used to identify the ccMsg HashMap within param — typically corresponds to a CC class name (e.g., "JKKKikiIchiranIkkatsuCC"), used to retrieve and store output data maps |
| 5 | `temporaryData` | `HashMap<String, Object>` | Temporary data carrier — stores intermediate business state across method calls including service contract status, device option processing type, VDSL flags, address change data, and CBS message results |

### External State Read

| Field / Source | Type | Business Description |
|---------------|------|---------------------|
| `param.getMappingWorkArea()` | `Map` | Work area containing the ichiranShoriList (list of devices to process) and other work-area data |
| `temporaryData.get(KIKI_OPT_SVC_KEI_SHORI_KBN)` | `String` | Key indicating device option service contract processing type (1=Add Device, 2=Cancel+Option Update, 3=Change Option Update) |
| `temporaryData.get("func_code")` | `String` | Processing mode code: "1" = Check and Register (executes all registration/updates), "2" = Check Only (skip certain processing) |

## 4. CRUD Operations / Called Services

### Service Calls Within This Method

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| R | `callSC (EKK0251B001CBS)` | EKK0251B001CBS | Service Line Item Agreement (KK_T_SVC_KEI_Kaisen) | Service-line-item agreement inquiry — retrieves svc_kei_kaisen_ucwk_no for contract notification document processing |
| R | `getNullToStr` | JKKKikiIchiranIkkatsuCC | - | Utility — converts null values to empty strings for safe comparison |
| R | `getSvcKeiStat` | JKKKikiIchiranIkkatsuCC | - | Utility — retrieves service contract status from temporaryData (e.g., EKK0081A010 CBS data) |
| U | `execTelRelationUpdKikiOptUpdate` | JKKKikiIchiranIkkatsuCC | - | Phone number change update for device option service contracts |
| U | `execKikiOptSvcKeiUpd` | JKKKikiIchiranIkkatsuCC | - | Device option service contract update |
| U | `execTelRelationUpdTakinoAdd` | JKKKikiIchiranIkkatsuCC | - | Phone number change update for new line addition |
| R | `isTelRelationUpd` | JKKKikiIchiranIkkatsuCC | - | Check if phone number change processing is required |
| R | `execTnmtHoshoKaiCanSyori` | JKKKikiIchiranIkkatsuCC | - | Home network insurance cancellation cancel processing |
| R | `execTnmtHoshoSyori` | JKKKikiIchiranIkkatsuCC | - | Guarantee/insurance processing |
| R | `execKikiKaifukuWribikiShori` | JKKKikiIchiranIkkatsuCC | - | Device restoration discount processing |
| R | `isExecMoshiKomiShonin` | JKKKikiIchiranIkkatsuCC | - | Submit content approval check |
| R | `isExecKojiAnkenCancel` | JKKKikiIchiranIkkatsuCC | - | Work order cancellation processing |
| R | `execTvCourseChangeYouhi` | JKKKikiIchiranIkkatsuCC | - | TV course change update processing |
| R | `isExecKaiyakuCancel` | JKKKikiIchiranIkkatsuCC | - | Contract cancellation cancel processing |
| R | `isExecKikiDelete` | JKKKikiIchiranIkkatsuCC | - | Device deletion processing |
| R | `isExecKikiIchiranKkUpd` | JKKKikiIchiranIkkatsuCC | - | Device list update processing |
| R | `isExeckikiIchiranUpdFumei` | JKKKikiIchiranIkkatsuCC | - | Unknown device update processing |
| R | `isExecKikiIchiranKishuChg` | JKKKikiIchiranIkkatsuCC | - | Specification change processing |
| R | `isExecKikiIchiranKkCreate` | JKKKikiIchiranIkkatsuCC | - | Device registration processing |
| R | `isExecKikiIchiranShuriUk` | JKKKikiIchiranIkkatsuCC | - | Repair order processing |
| R | `isExecKikiIchiranShuriCan` | JKKKikiIchiranIkkatsuCC | - | Repair cancellation processing |
| R | `isExecKikiIchiranKaifuku` | JKKKikiIchiranIkkatsuCC | - | Device restoration processing |
| R | `isExcecKikiIchiranKeiChgCan` | JKKKikiIchiranIkkatsuCC | - | Contract change history cancellation check |
| R | `isExecDslIpv6OptionSvcKei` | JKKKikiIchiranIkkatsuCC | - | IPv6 option service contract check |
| R | `isVdslKikiDelIns` | JKKKikiIchiranIkkatsuCC | - | VDSL device delete/add processing |
| R | `isExcecJuushoUpdateDtl` | JKKKikiIchiranIkkatsuCC | - | Address change details processing |
| R | `isExcecJuushoUpdateDtlKojiRebkeiIgai` | JKKKikiIchiranIkkatsuCC | - | Old address non-applicable processing |
| R | `isExcecJuushoUpdateDtlKikiOption` | JKKKikiIchiranIkkatsuCC | - | Device option address reflect processing |
| R | `isExecKojiAnkenRenkei` | JKKKikiIchiranIkkatsuCC | - | Work order item correlation processing |
| R | `isExcecKikiIchiranKinkyu` | JKKKikiIchiranIkkatsuCC | - | Emergency dispatch processing |
| R | `isExcecTuchishoToroku` | JKKKikiIchiranIkkatsuCC | - | Notice document registration processing |
| R | `isExecMoshiKomiShosaKozoku` | JKKKikiIchiranIkkatsuCC | - | Submit content review and post-task processing |
| R | `isExecKkshkaStiPrg` | JKKKikiIchiranIkkatsuCC | - | Delivery progress registration display processing |
| - | `setlastUpdateTimeBeforeData` | JKKKikiIchiranIkkatsuCC | - | Sets final update timestamp using pre-update data for conflict detection |
| - | `setlastUpdateTimeAfterData` | JKKKikiIchiranIkkatsuCC | - | Sets final update timestamp using post-update data for device addition |

### How to Classify

- **C** (Create): Methods with names like `isExec*Create`, `add*` — not directly called in this method but called by nested handlers
- **R** (Read): Methods with names like `get*`, `is*` — used for checks, inquiries, and read operations in this method
- **U** (Update): Methods with names like `update*`, `upd*` — calls to execTelRelationUpdKikiOptUpdate and execKikiOptSvcKeiUpd
- **D** (Delete): Methods with names like `delete*`, `del*` — called by nested handlers like isExecKikiDelete

## 5. Dependency Trace

### Callers

No screen/batch entry points found within 8 hops. Direct callers found: 1 methods.

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | `execKikiIchiranIkkatsu()` | JKKKikiIchiranIkkatsuCC.execKikiIchiranIkkatsu -> JKKKikiIchiranIkkatsuCC.isScrnCommonExec | isExecKkshkaStiPrg [-], isExecMoshiKomiShosaKozoku [-], isExcecTuchishoToroku [R], isExcecKikiIchiranKinkyu [R], isExecKojiAnkenRenkei [R], isExcecJuushoUpdateDtlKikiOption [R], isExcecJuushoUpdateDtlKojiRebkeiIgai [R], isExcecJuushoUpdateDtl [R], isVdslKikiDelIns [R], getNullToStr [R], getString [R], getString [R], getString [R], getString [R], getString [R], isExecDslIpv6OptionSvcKei [R], isExcecKikiIchiranKeiChgCan [R], execTelRelationUpdTakinoAdd [U], isTelRelationUpd [R], getNullToStr [R] |

### Entry Point Context

The method is called from `execKikiIchiranIkkatsu()` which is the main entry point for the device list bulk-update screen (KKSV0004 or similar). The caller pre-populates the work area with device items to process (ichiranShoriList), initializes temporary data including service contract status, and sets the processing mode via func_code in the ccMsg map.

### Terminal Operations

This method does not directly perform database CRUD operations. All database operations are delegated to nested CC methods and service component calls. The primary direct database interaction is the EKK0251B001CBS call for service-line-item agreement inquiry. All other database operations are performed within the 25+ CC handler methods dispatched from this orchestrator.

## 6. Per-Branch Detail Blocks

### Block 1 — Initialization (L6393)

Retrieves work area map and ccMsg output map from param object. Gets service contract status.

| # | Type | Code |
|---|------|------|
| 1 | SET | `workMap = param.getMappingWorkArea()` |
| 2 | SET | `ccMsg = (HashMap)param.getData(dataMapKey)` |
| 3 | SET | `svcKeiStat = getSvcKeiStat(temporaryData)` |

### Block 2 — IF: Service Not Accepted (L6402)
Condition: `!SVC_KEI_STAT_UKEZUMI.equals(svcKeiStat)` [SVC_KEI_STAT_UKEZUMI = "010"]

> Executes pre-acceptance checks when service contract has not yet been accepted by Fujitsu.

#### Block 2.1 — Submit Content Approval (L6405)
Executes submit-content approval processing.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExecMoshiKomiShonin(handle, scCall, param, dataMapKey, temporaryData)` |
| 2 | RETURN | `return false` (if approval fails) |

#### Block 2.2 — Work Order Cancel (L6411)
Executes work-order cancellation processing.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExecKojiAnkenCancel(handle, scCall, param, dataMapKey, temporaryData)` |
| 2 | RETURN | `return false` (if cancel fails) |

#### Block 2.3 — TV Course Change (L6418)
Executes TV course change update processing.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `execTvCourseChangeYouhi(handle, scCall, param, dataMapKey, temporaryData, COURSE_CHANGE_UPDATE)` |
| 2 | RETURN | `return false` (if update fails) |

### Block 3 — Phone Number Change for Device Option (L6434)
Condition: `isTelRelationUpd(temporaryData) && KIKI_OPT_SVC_KEI_SHORI_KBN_UPD.equals(kikiOptSvcKeiShoriKbn)` [KIKI_OPT_SVC_KEI_SHORI_KBN_UPD = "3"]

> Handles phone number change update when the device option service contract processing type is "Change Device Option Update" (3).

| # | Type | Code |
|---|------|------|
| 1 | SET | `kikiOptSvcKeiShoriKbn = (String)temporaryData.get(KIKI_OPT_SVC_KEI_SHORI_KBN)` |
| 2 | CALL | `execTelRelationUpdKikiOptUpdate(handle, scCall, param, dataMapKey, temporaryData)` |

### Block 4 — Device Option Service Contract Update (L6444)
Condition: `KIKI_OPT_SVC_KEI_SHORI_KBN_UPD.equals(kikiOptSvcKeiShoriKbn) || KIKI_OPT_SVC_KEI_SHORI_KBN_DSL.equals(kikiOptSvcKeiShoriKbn)` [UPD = "3", DSL = "2"]

> Executes device option service contract update when processing type is "Change Option Update" or "Cancel Device + Option Update".

| # | Type | Code |
|---|------|------|
| 1 | CALL | `execKikiOptSvcKeiUpd(handle, scCall, param, dataMapKey, temporaryData)` |

### Block 5 — Device List Processing Loop (L6468)
Outer loop iterating over processing categories defined in SHORIJYUN_KIKI_EDIT_KBN array.

| # | Type | Code |
|---|------|------|
| 1 | SET | `ichiranShoriList = (ArrayList)workMap.get(SHORI_LIST_ICHIRAN)` [SHORI_LIST_ICHIRAN = "IchiranShoriList"] |
| 2 | SET | `ichiranShoriMap = null` |
| 3 | SET | `scrnItemMap = null` |
| 4 | SET | `kiki_edit_kbn = ""` |
| 5 | LOOP | `for (int i = 0; i < SHORIJYUN_KIKI_EDIT_KBN.length; i++)` |
| 6 | LOOP | `for (int j = 0; j < ichiranShoriList.size(); j++)` |
| 7 | SET | `ichiranShoriMap = ichiranShoriList.get(j)` |
| 8 | SET | `scrnItemMap = (HashMap)ichiranShoriMap.get(SHORI_LIST_SCRN_PARAM)` [SHORI_LIST_SCRN_PARAM = "scrnIchiranParam"] |
| 9 | SET | `kiki_edit_kbn = (String)scrnItemMap.get("kiki_edit_kbn")` |

#### Block 5.1 — IF: Device Cancellation Cancel (L6481)
Condition: `SHORIJYUN_KIKI_EDIT_KBN[i].equals(kiki_edit_kbn) && KIKI_EDIT_KBN_KAI_CAN.equals(kiki_edit_kbn)` [KIKI_EDIT_KBN_KAI_CAN = "3"]

| # | Type | Code |
|---|------|------|
| 1 | SET | `setlastUpdateTimeBeforeData(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 2 | CALL | `isExecKaiyakuCancel(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap, false)` |
| 3 | RETURN | `return false` (if cancel fails) |
| 4 | SET | `kk2811_kkop_svc_kei_stat = getNullToStr(scrnItemMap.get("kk2811_kkop_svc_kei_stat"))` |
| 5 | SET | `kk2811_kkop_svc_kei_no = getNullToStr(scrnItemMap.get("kk2811_kkop_svc_kei_no"))` |
| 6 | SET | `taknkiki_sbt_cd = getNullToStr(scrnItemMap.get("taknkiki_sbt_cd_bf"))` |

#### Block 5.1.1 — IF: Active Service Status (L6501)
Condition: `!(KKTK_SVC_KEI_STAT_CANCEL.equals(kk2811_kkop_svc_kei_stat)) || !(KKTK_SVC_KEI_STAT_KAIYAKU.equals(kk2811_kkop_svc_kei_stat))` [CANCEL = "920", KAIYAKU = "910"]

> Excludes devices that are already canceled or in contract cancellation state.

#### Block 5.1.2 — IF: Tablet Device with Service Number (L6505)
Condition: `TAKNKIKI_SBT_CD_TABLET.equals(taknkiki_sbt_cd) && !"".equals(kk2811_kkop_svc_kei_no)` [TABLET = "P0"]

| # | Type | Code |
|---|------|------|
| 1 | CALL | `execTnmtHoshoKaiCanSyori(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap, scrnItemMap)` |

#### Block 5.2 — IF: Device Deletion (L6517)
Condition: `KIKI_EDIT_KBN_KIKI_DEL.equals(kiki_edit_kbn)` [KIKI_EDIT_KBN_KIKI_DEL = "9"]

| # | Type | Code |
|---|------|------|
| 1 | SET | `setlastUpdateTimeBeforeData(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 2 | CALL | `isExecKikiDelete(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 3 | RETURN | `return false` (if delete fails) |

#### Block 5.3 — IF: Device Update (L6529)
Condition: `KIKI_EDIT_KBN_KIKI_UPD.equals(kiki_edit_kbn)` [KIKI_EDIT_KBN_KIKI_UPD = "2"]

| # | Type | Code |
|---|------|------|
| 1 | SET | `setlastUpdateTimeBeforeData(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 2 | CALL | `isExecKikiIchiranKkUpd(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap, j)` |
| 3 | RETURN | `return false` (if update fails) |

#### Block 5.4 — IF: Unknown Device Update (L6542)
Condition: `KIKI_EDIT_KBN_KIKI_FUMEI.equals(kiki_edit_kbn)` [KIKI_EDIT_KBN_KIKI_FUMEI = "10"]

| # | Type | Code |
|---|------|------|
| 1 | SET | `setlastUpdateTimeBeforeData(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 2 | CALL | `isExeckikiIchiranUpdFumei(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap, j)` |
| 3 | RETURN | `return false` (if update fails) |

#### Block 5.5 — IF: Specification Change (L6554)
Condition: `KIKI_EDIT_KBN_KISHU_UPD.equals(kiki_edit_kbn)` [KIKI_EDIT_KBN_KISHU_UPD = "4"]

| # | Type | Code |
|---|------|------|
| 1 | SET | `setlastUpdateTimeBeforeData(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 2 | CALL | `isExecKikiIchiranKishuChg(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap, j, ccOutputMap)` |
| 3 | RETURN | `return false` (if change fails) |

#### Block 5.6 — IF: Device Addition (L6569)
Condition: `KIKI_EDIT_KBN_KIKI_ADD.equals(kiki_edit_kbn)` [KIKI_EDIT_KBN_KIKI_ADD = "1"]

| # | Type | Code |
|---|------|------|
| 1 | SET | `setlastUpdateTimeAfterData(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 2 | CALL | `isExecKikiIchiranKkCreate(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap, j, ccOutputMap)` |
| 3 | RETURN | `return false` (if create fails) |

#### Block 5.7 — IF: Repair Order (L6584)
Condition: `KIKI_EDIT_KBN_SHURI_UKE.equals(kiki_edit_kbn)` [KIKI_EDIT_KBN_SHURI_UKE = "5"]

| # | Type | Code |
|---|------|------|
| 1 | SET | `setlastUpdateTimeBeforeData(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 2 | CALL | `isExecKikiIchiranShuriUk(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 3 | RETURN | `return false` (if order fails) |

#### Block 5.8 — IF: Repair Cancellation (L6596)
Condition: `KIKI_EDIT_KBN_SHURI_TORI.equals(kiki_edit_kbn)` [KIKI_EDIT_KBN_SHURI_TORI = "6"]

| # | Type | Code |
|---|------|------|
| 1 | SET | `setlastUpdateTimeBeforeData(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 2 | CALL | `isExecKikiIchiranShuriCan(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 3 | RETURN | `return false` (if cancel fails) |

#### Block 5.9 — IF: Device Restoration (L6608)
Condition: `KIKI_EDIT_KBN_KIKI_KAIFUKU.equals(kiki_edit_kbn)` [KIKI_EDIT_KBN_KIKI_KAIFUKU = "11"]

| # | Type | Code |
|---|------|------|
| 1 | SET | `setlastUpdateTimeBeforeData(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap)` |
| 2 | CALL | `isExecKikiIchiranKaifuku(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap, j)` |
| 3 | RETURN | `return false` (if restoration fails) |
| 4 | CALL | `execKikiKaifukuWribikiShori(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap, j)` |

#### Block 5.10 — IF: Guarantee/Insurance (L6623)
Condition: `KIKI_EDIT_KBN_KIKI_MSK_JSK_UPD.equals(kiki_edit_kbn)` [KIKI_EDIT_KBN_KIKI_MSK_JSK_UPD = "12"]

| # | Type | Code |
|---|------|------|
| 1 | CALL | `execTnmtHoshoSyori(handle, scCall, param, dataMapKey, temporaryData, ichiranShoriMap, scrnItemMap)` |

#### Block 5.11 — IF: Check Only Mode (L6631)
Condition: `FUNC_CODE_2.equals(ccMsg.get("func_code"))` [FUNC_CODE_2 = "2"]

> When processing mode is "Check Only", skip service-line-item inquiry for this item and continue to next iteration.

| # | Type | Code |
|---|------|------|
| 1 | CONTINUE | `continue` (skip to next iteration) |

#### Block 5.12 — Service Line Item Inquiry (L6638)
Executed when func_code != 2. Gets KKSV059502CC data map for contract notification document processing.

| # | Type | Code |
|---|------|------|
| 1 | SET | `kksv059502cc = (HashMap)param.getData("KKSV059502CC")` |
| 2 | SET | `ccOutputMap = new HashMap()` |

#### Block 5.12.1 — IF: No Service Line Item Number (L6646)
Condition: `kksv059502cc.get("svc_kei_kaisen_ucwk_no") == null || "".equals(...)`

> If no service line item number exists and processing is device addition or specification change, continue (skip).

#### Block 5.12.2 — IF: HDD Capacity Check (L6670, L6700)
For device addition (KIKI_ADD = "1") and specification change (KISHU_UPD = "4"):

Condition: HDD capacity code is null, NO="00", NO_VOD="07", 4KSTB_NO_OLD="12", or 4KSTB_NO="10" [from JKKStrConst.CD00557_*]

Also checks:
- `idoDiv == CD00576_00001 or CD00576_00002` (New Contract or Service Add)
- `kojiUkOptntyIdoDiv == CD00576_ADCHG_ADD` (Address Change/Registration)
- `idoRsnCd == CD00846_TROUBLE` (Trouble Report)

| # | Type | Code |
|---|------|------|
| 1 | SET | `tempOutput = (HashMap)ccOutputMap.get("TEMP_OUTPUT")` |
| 2 | SET | `hddCapaCd = tempOutput.get("hdd_capa_cd")` |
| 3 | SET | `idoDiv = ccMsg.get("ido_div")` |
| 4 | SET | `kojiUkOptntyIdoDiv = tempOutput.get("ido_div")` |
| 5 | SET | `idoRsnCd = ccMsg.get("ido_rsn_cd")` |
| 6 | CONTINUE | `continue` (if any skip condition met) |

#### Block 5.12.3 — Service Line Item Agreement Inquiry (L6689)
Calls EKK0251B001CBS service to retrieve service line item agreement data.

| # | Type | Code |
|---|------|------|
| 1 | SET | `ekk0251B001IN = {TEMPLATEID=TEMPLATE_ID_EKK0251B001, FUNC_CODE=FUNC_CODE_1, KEY_SVC_KEI_NO=ccMsg.svc_kei_no}` |
| 2 | CALL | `callSC(handle, scCall, param, dataMapKey, ekk0251B001IN)` |
| 3 | SET | `ekk0251b001cbsMsg = ...getCAANMsgList(...)[0]` |
| 4 | SET | `svcKeiKaisenUcwkNo = getNullToStr(ekk0251b001cbsMsg.getString(SVC_KEI_KAISEN_UCWK_NO))` |
| 5 | SET | `kksv059502cc.put("svc_kei_kaisen_ucwk_no", svcKeiKaisenUcwkNo)` |

### Block 6 — Phone Number Change New Line (L6863)
Condition: `isTelRelationUpd(temporaryData) && KIKI_OPT_SVC_KEI_SHORI_KBN_ADD.equals(kikiOptSvcKeiShoriKbn)` [ADD = "1"]

| # | Type | Code |
|---|------|------|
| 1 | CALL | `execTelRelationUpdTakinoAdd(handle, scCall, param, dataMapKey, temporaryData)` |

### Block 7 — Contract Change History Cancellation (L6873)

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExcecKikiIchiranKeiChgCan(handle, scCall, param, dataMapKey, temporaryData)` |
| 2 | RETURN | `return false` (if check fails) |

### Block 8 — IPv6 Option Service Contract Check (L6880)

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExecDslIpv6OptionSvcKei(handle, scCall, param, dataMapKey, temporaryData)` |
| 2 | RETURN | `return false` (if check fails) |

### Block 9 — Post-acceptance Final Processing (L6889)
Condition: `!SVC_KEI_STAT_UKEZUMI.equals(svcKeiStat)` [SVC_KEI_STAT_UKEZUMI = "010"]

> Final processing for services that are not yet accepted.

#### Block 9.1 — IF: Check and Register Mode (L6896)
Condition: `FUNC_CODE_1.equals(ccMsg.get("func_code"))` [FUNC_CODE_1 = "1"]

##### Block 9.1.1 — VDSL Processing (L6905)
Condition: `IDO_DIV_VALUE_00026.equals(ido_div)` [IDO_DIV_VALUE_00026 = "00026" - Service Contract Change]

| # | Type | Code |
|---|------|------|
| 1 | SET | `ido_div = ccMsg.get("ido_div")` |
| 2 | IF | `svcKeiStat == SVC_KEI_STAT_SHOSAZUMI="020" || SVC_KEI_STAT_TEIKETSUZUMI="030"` |
| 3 | IF | `svcCd == SVC_CD_NET || SVC_CD_TEL` |
| 4 | CALL | `isVdslKikiDelIns(handle, scCall, param, dataMapKey, temporaryData)` |
| 5 | RETURN | `return false` (if VDSL check fails) |

##### Block 9.1.2 — Address Change Details (L6928)

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExcecJuushoUpdateDtl(handle, scCall, param, dataMapKey, ichiranShoriList, temporaryData)` |
| 2 | RETURN | `return false` (if address check fails) |

##### Block 9.1.3 — Old Address Processing (L6938)

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExcecJuushoUpdateDtlKojiRebkeiIgai(handle, scCall, param, dataMapKey, ichiranShoriList, temporaryData)` |
| 2 | RETURN | `return false` (if old address check fails) |

##### Block 9.1.4 — Device Option Address Reflect (L6948)

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExcecJuushoUpdateDtlKikiOption(handle, scCall, param, dataMapKey, ichiranShoriList, temporaryData)` |
| 2 | RETURN | `return false` (if device option address check fails) |

#### Block 9.2 — IF: Check and Register Mode (L6959)
Condition: `FUNC_CODE_1.equals(ccMsg.get("func_code"))` [FUNC_CODE_1 = "1"]

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExecKojiAnkenRenkei(handle, scCall, param, dataMapKey, temporaryData)` |
| 2 | RETURN | `return false` (if work order correlation fails) |

#### Block 9.3 — Emergency Dispatch (L6968)

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExcecKikiIchiranKinkyu(handle, scCall, param, dataMapKey, temporaryData)` |
| 2 | RETURN | `return false` (if emergency check fails) |

#### Block 9.4 — IF: Notice Document Exists (L6977)
Condition: `TUCHISHO_UMU_ARI.equals(ccMsg.get("id_tourokusho_um"))` [TUCHISHO_UMU_ARI = "1"]

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExcecTuchishoToroku(handle, scCall, param, dataMapKey, temporaryData)` |
| 2 | RETURN | `return false` (if notice registration fails) |

#### Block 9.5 — Submit Content Review (L6985)
Condition: `FUNC_CODE_1.equals(ccMsg.get("func_code"))` [FUNC_CODE_1 = "1"]

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExecMoshiKomiShosaKozoku(handle, scCall, param, dataMapKey, temporaryData)` |
| 2 | RETURN | `return false` (if review fails) |

### Block 10 — Delivery Progress Display (L6993)

| # | Type | Code |
|---|------|------|
| 1 | CALL | `isExecKkshkaStiPrg(handle, scCall, param, dataMapKey, temporaryData)` |
| 2 | RETURN | `return true` |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `svc_kei_stat` | Field | Service contract status — tracks lifecycle (010=Accepted, 020=Reviewed, 030=Bound, 100=Service Provision) |
| `svc_kei_stat_ukezumi` | Field | Service contract status = "010" (Accepted) — Fujitsu has accepted the service contract |
| `svc_kei_stat_shosazumi` | Field | Service contract status = "020" (Reviewed) — Service has been reviewed |
| `svc_kei_stat_teiketsuzumi` | Field | Service contract status = "030" (Bound) — Service contract has been bound |
| `svc_kei_stat_teikyochu` | Field | Service contract status = "100" (Service Provision) — Service is currently active |
| `kiki_edit_kbn` | Field | Device edit category code — classifies the type of device operation (1=Add, 2=Update, 3=Cancel, 4=Spec Change, 5=Repair Order, 6=Repair Cancel, 9=Delete, 10=Unknown Update, 11=Restoration, 12=Guarantee/Insurance) |
| `kiki_edit_kbn_kai_can` | Field | Device edit category = "3" (Cancellation Cancel) — cancels a device cancellation |
| `kiki_edit_kbn_kiki_del` | Field | Device edit category = "9" (Device Deletion) |
| `kiki_edit_kbn_kiki_upd` | Field | Device edit category = "2" (Device Update) |
| `kiki_edit_kbn_kiki_fumei` | Field | Device edit category = "10" (Device Update - Unknown Device) |
| `kiki_edit_kbn_kishu_upd` | Field | Device edit category = "4" (Specification Change) |
| `kiki_edit_kbn_kiki_add` | Field | Device edit category = "1" (Device Addition) |
| `kiki_edit_kbn_shuri_uke` | Field | Device edit category = "5" (Repair Order) |
| `kiki_edit_kbn_shuri_tori` | Field | Device edit category = "6" (Repair Cancellation) |
| `kiki_edit_kbn_kiki_kaifuku` | Field | Device edit category = "11" (Device Restoration) |
| `kiki_edit_kbn_kiki_msk_jsk_upd` | Field | Device edit category = "12" (Guarantee/Insurance Processing) |
| `kiki_opt_svc_kei_shori_kbn` | Field | Device option service contract processing type — 1=Add Device, 2=Cancel Device + Option Update, 3=Change Device Option Update |
| `kiki_opt_svc_kei_shori_kbn_add` | Field | Processing type = "1" (Add Device) |
| `kiki_opt_svc_kei_shori_kbn_dsl` | Field | Processing type = "2" (Cancel Device + Option Update) |
| `kiki_opt_svc_kei_shori_kbn_upd` | Field | Processing type = "3" (Change Device Option Update) |
| `func_code` | Field | Processing mode — "1" = Check and Register (executes all), "2" = Check Only (limited processing) |
| `ido_div` | Field | Discrepancy classification code — identifies the type of service change (e.g., 00009=Course Change, 00026=Service Contract Change) |
| `ido_div_value_00026` | Field | Discrepancy = "00026" (Service Contract Change) |
| `ido_rsn_cd` | Field | Discrepancy reason code — reason for the service change (e.g., CD00846_TROUBLE = Trouble Report) |
| `taknkiki_sbt_cd` | Field | Home device type code (e.g., P0=Tablet, A0=STB, B0=B-CAS, C0=C-CAS, L1=Tablet Cradle) |
| `taknkiki_sbt_cd_tablet` | Field | Home device type = "P0" (Tablet) |
| `taknkiki_sbt_cd_tablet_cradle` | Field | Home device type = "L1" (Tablet Cradle) |
| `id_tourokusho_um` | Field | Notice document presence flag — "1" = Notice document exists |
| `ichiran_shori_list` | Field | Processing list — ArrayList of device items to be processed in bulk update |
| `scrn_ichiran_param` | Field | Screen parameter map for each device item in the processing list |
| `svc_kei_no` | Field | Service contract number — unique identifier for a service contract line item |
| `svc_kei_kaisen_ucwk_no` | Field | Service line item agreement number — tracking number for service-line-item agreements |
| `kk2811_kkop_svc_kei_stat` | Field | Device option service contract status (e.g., 910=Contract Canceled, 920=Canceled) |
| `kk2811_kkop_svc_kei_no` | Field | Device option service contract number |
| `hdd_capa_cd` | Field | HDD capacity code — STB disk configuration (00=None, 07=None VOD, 10=4K-STB None, 12=4K-STB None Old Course) |
| `hdd_capa_cd_no` | Field | HDD code = "00" (No HDD) |
| `hdd_capa_cd_no_vod` | Field | HDD code = "07" (No HDD VOD) |
| `hdd_capa_cd_4kstb_no` | Field | HDD code = "10" (4K-STB None) |
| `hdd_capa_cd_4kstb_no_old` | Field | HDD code = "12" (4K-STB None Old Course) |
| `svc_cd_net` | Field | Service code = network service (e.g., fiber internet) |
| `svc_cd_tel` | Field | Service code = telephone service |
| `vdsl` | Acronym | Very-high-bit-rate Digital Subscriber Line — DSL technology for broadband |
| `ftth` | Business term | Fiber To The Home — fiber-optic broadband service |
| `stb` | Acronym | Set-Top Box — device for receiving and decoding TV signals |
| `b-cas` | Acronym | Broadcaster Content Access System — Japanese smart card-based content protection |
| `c-cas` | Acronym | Conditional Content Access System — alternative content protection system |
| `va` | Acronym | Video on Access — interactive TV service |
| `ip-stb` | Business term | IP-based Set-Top Box — STB that receives signals over IP network |
| `koji_ak_sbt_cd` | Field | Work order item type code (e.g., "001" = New Construction) |
| `koji_chu_kojiak_stat` | Field | Work-in-progress work order status codes (130=Accepted, 140=Committed, 150=Survey Complete, 160=Company Decision, 170=Device Scheduled, 180=Test Key Issued, 190=On-site Work Complete) |
| `shori_list_ichiran` | Field | Processing list key = "IchiranShoriList" — work area key for device processing list |
| `shori_list_scrn_param` | Field | Screen parameter key = "scrnIchiranParam" — work area key for screen item parameters |
| `shorijyun_kiki_edit_kbn` | Field | Processing order array for device edit categories — defines the sequence in which device edits are processed |
| `course_change_update` | Field | Processing mode = "Update" — executes TV course change updates (vs. "Check" for validation only) |
| `course_check` | Field | Processing mode = "Check" — validation-only mode for TV course changes |
| `course_change_koji_ari` | Field | Course change = with work order (KOJI_ARI) |
| `course_change_koji_nashi` | Field | Course change = without work order (KOJI_NASHI) |
| `cbs` | Acronym | Common Business Service — shared service component layer |
| `sc` | Acronym | Service Component — component for invoking business logic |
| `cc` | Acronym | Common Component — shared business logic component (this class type) |
| `e-0` | Business term | K-Opticom brand — Fujitsu's broadband service brand |
| `kaifuku` | Field | Restoration — restoring a canceled device to active status |
| `kinkyu` | Field | Emergency — urgent dispatch processing |
| `tuchisho` | Field | Notice document — business correspondence document for customers |
| `moshikomi` | Field | Submission/Content registration — contract content submission processing |
| `jusho` | Field | Address — residential address in the service system |
| `honpo` | Field | Head office — main office location |
| `takino` | Field | Multi-function router — multi-purpose router device |
| `nttt` | Acronym | Nippon Telegraph and Telephone — Japanese telecommunications provider |
| `kksv059502cc` | Field | Contract notification document CC — KKSV059502 common component for contract notification documents |
