# Business Logic — JBSbatKKRsvTokiHak.executeKK_T_SVKEIUW_EOH_TEL_PKINSERT() [122 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.business.service.JBSbatKKRsvTokiHak` |
| Layer | Batch (Package: `eo.business.service`, class prefix `JBSbat` indicates batch service handler) |
| Module | `service` (Package: `eo.business.service`) |

## 1. Role

### JBSbatKKRsvTokiHak.executeKK_T_SVKEIUW_EOH_TEL_PKINSERT()

This method performs a **primary-key-based insert** (登録, tōroku — "registration") of a complete service contract detail record for telecom services under the `eo光電話` (eo Hikari Denwa — eo Fiber Phone) product line. It is the sole database creation operation for the `KK_T_SVKEIUW_EOH_TEL` table within this class, accepting a flat parameter array (`setParam`) containing 97 fields that collectively describe a subscriber's full service configuration.

The method implements a **builder + delegate design pattern**: it first builds an `JBSbatCommonDBInterface` object by mapping each element of the input array to a named database column via `setValue()` calls (the builder phase), then delegates the actual database write to `db_KK_T_SVKEIUW_EOH_TEL.insertByPrimaryKeys()` (the delegate phase). There are no conditional branches — the method executes deterministically.

As a **private utility method**, it is called exclusively by `insertSvkeiuwEohTel()` within the same class. `JBSbatKKRsvTokiHak` is described in its class-level Javadoc as a "preliminary work order issuance handler" for the middle-file processing pipeline, meaning this method inserts the final, fully-populated service contract detail into the database after all upstream validation, routing, and transformation logic has been completed. The method is the terminal data-persistence step for new telecom service registrations.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["executeKK_T_SVKEIUW_EOH_TEL_PKINSERT(setParam)"])
    STEP1["Create JBSbatCommonDBInterface setMap"]

    START --> STEP1

    STEP1 --> MAP_BUILD["Map 97 parameters to database fields<br/>setParam[0..96] to key-value pairs"]

    MAP_BUILD --> DB_INSERT["Execute DB insert<br/>db_KK_T_SVKEIUW_EOH_TEL.insertByPrimaryKeys(setMap)"]

    DB_INSERT --> END_NODE(["Return (void)"])

    END --> END_NODE
```

**Processing summary:**
1. **Initialization** — A new `JBSbatCommonDBInterface` instance (`setMap`) is created as a transient key-value store.
2. **Parameter mapping** — Each of the 97 elements in `setParam` (indexed 0 through 96) is mapped to its corresponding database field name via sequential `setValue()` calls. This is the core data-construction step with no conditional branching.
3. **DB insert** — The fully populated `setMap` is passed to `db_KK_T_SVKEIUW_EOH_TEL.insertByPrimaryKeys(setMap)`, which executes a SQL `INSERT` on the `KK_T_SVKEIUW_EOH_TEL` table.
4. **Return** — Method returns `void`. No result is returned; success is implicit (exceptions propagate to the caller).

The method contains **zero conditional branches** — it is a linear, deterministic sequence of 98 `setValue()` calls followed by one `insertByPrimaryKeys()` call.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `setParam` | `Object[]` | A flat array of 97 field values (indices 0–96) representing the complete set of data to insert into the telecom service contract detail record (`KK_T_SVKEIUW_EOH_TEL`). Each element at a given index maps to a specific database column as listed in the per-branch analysis below. |

**Additional instance fields read by this method:**

| Field | Type | Business Description |
|-------|------|---------------------|
| `db_KK_T_SVKEIUW_EOH_TEL` | `JBSbatSQLAccess` | Database access handle for the `KK_T_SVKEIUW_EOH_TEL` table, initialized in the class constructor. Used to execute the primary-key insert. |

## 4. CRUD Operations / Called Services

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| C | `db_KK_T_SVKEIUW_EOH_TEL.insertByPrimaryKeys` | - | `KK_T_SVKEIUW_EOH_TEL` | Performs a primary-key-based insert of the fully populated service contract detail record into the telecom service contract detail table. |
| - | `JBSbatCommonDBInterface.setValue` | - | - | Builds the in-memory key-value map by setting each of the 97 field names to their corresponding values from `setParam`. |

**Insertion metadata fields** (populated from caller or system):
- `ADD_DTM` / `ADD_OPEACNT` — Registration date/time and registering operator account
- `UPD_DTM` / `UPD_OPEACNT` — Update date/time and updating operator account
- `DEL_DTM` / `DEL_OPEACNT` — Deletion date/time and deleting operator account
- `MK_FLG` — Inactive flag (soft delete indicator)
- `ADD_TRN_ID` / `UPD_TRN_ID` / `DEL_TRN_ID` — Processing/tracking IDs for audit trail
- `ADD_UNYO_YMD` / `UPD_UNYO_YMD` / `DEL_UNYO_YMD` — Business operation dates

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Batch: `JBSbatKKRsvTokiHak.insertSvkeiuwEohTel` | `insertSvkeiuwEohTel(svkeiuwEohTelMap, inMap, sysDate)` → `executeKK_T_SVKEIUW_EOH_TEL_PKINSERT(setParam)` | `insertByPrimaryKeys [C] KK_T_SVKEIUW_EOH_TEL` |

**Upstream context:** The caller `insertSvkeiuwEohTel()` is a private method within the same class that prepares the `svkeiuwEohTelMap` (likely by transforming/merging data from other sources) and invokes this method with a properly ordered `setParam` array.

**Terminal operations from this method:**

| Terminal | CRUD | Entity/DB |
|----------|------|-----------|
| `insertByPrimaryKeys` | C | `KK_T_SVKEIUW_EOH_TEL` |
| `setValue` (×98 calls) | - | (in-memory map only) |

## 6. Per-Branch Detail Blocks

> **Note:** This method contains no conditional branches (if/else, switch, loops, or try/catch). It is a purely linear sequence of field assignments followed by a single database insert. Each `setValue` call is listed individually for completeness. The KT1-2013-0000590 migration introduced a field-shifting pattern where `VA_KIKI_CHG_NO` was inserted at index 81, pushing the original indices of fields from 81 through 96 down by one (i.e., the old field at index 81 is now read from `setParam[82]`, etc.).

### Block 1 — LINEAR [field mapping] (L839–L933)

> Create `JBSbatCommonDBInterface` and populate with 97 parameters from `setParam[0]` through `setParam[96]`. This is the data-construction phase.

| # | Type | Code | Business Description |
|---|------|------|---------------------|
| 1 | SET | `JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();` | Instantiate empty key-value map for DB record construction [Comment: 設定値のマップを作ります — Create a map of setting values] |
| 2 | EXEC | `setMap.setValue("SVC_KEI_UCWK_NO", setParam[0]);` | Service Contract Detail Work Number |
| 3 | EXEC | `setMap.setValue("GENE_ADD_DTM", setParam[1]);` | Generation Registration Date/Time (世代登録年月日時分秒) |
| 4 | EXEC | `setMap.setValue("TELNO", setParam[2]);` | Telephone Number |
| 5 | EXEC | `setMap.setValue("DAIHYO_TELNO", setParam[3]);` | Representative Telephone Number (代表電話番号) |
| 6 | EXEC | `setMap.setValue("TELNO_USE_PLACE_NO", setParam[4]);` | Telephone Number Usage Location Number |
| 7 | EXEC | `setMap.setValue("EMG_AD_CD", setParam[5]);` | Emergency Dispatch Address Code (緊急通報用住所コード) |
| 8 | EXEC | `setMap.setValue("EMG_HOSEI_PCD", setParam[6]);` | Emergency Dispatch Corrected Postal Code (緊急通報用補正郵便番号) |
| 9 | EXEC | `setMap.setValue("EMG_STATE_NM", setParam[7]);` | Emergency Dispatch Prefecture Name (緊急通報用都道府県名) |
| 10 | EXEC | `setMap.setValue("EMG_CITY_NM", setParam[8]);` | Emergency Dispatch City/Town/Village Name (緊急通報用市区町村名) |
| 11 | EXEC | `setMap.setValue("EMG_OAZTSU_NM", setParam[9]);` | Emergency Dispatch District Name (緊急通報用大字通称名) |
| 12 | EXEC | `setMap.setValue("EMG_AZCHO_NM", setParam[10]);` | Emergency Dispatch Chōme/Block Name (緊急通報用字丁目名) |
| 13 | EXEC | `setMap.setValue("EMG_BNCHIGO", setParam[11]);` | Emergency Dispatch Block/Lot Number (緊急通報用番地号) |
| 14 | EXEC | `setMap.setValue("EMG_ADRTTM", setParam[12]);` | Emergency Dispatch Address Supplementary — Building Name (緊急通報用住所補記・建物名) |
| 15 | EXEC | `setMap.setValue("EMG_ADRRM", setParam[13]);` | Emergency Dispatch Address Supplementary — Room Number (緊急通報用住所補記・部屋番号) |
| 16 | EXEC | `setMap.setValue("EMG_KSH_KSITEI_FLG", setParam[14]);` | Emergency Dispatch Subscriber Individual Designation Flag (緊急通報用契約者個別指定フラグ) |
| 17 | EXEC | `setMap.setValue("EMG_KSH_NM", setParam[15]);` | Emergency Dispatch Subscriber Name (緊急通報用契約者名) |
| 18 | EXEC | `setMap.setValue("EMG_KSH_KANA", setParam[16]);` | Emergency Dispatch Subscriber Kana Name (緊急通報用契約者カナ名) |
| 19 | EXEC | `setMap.setValue("SIP_USER_ID", setParam[17]);` | SIP User ID |
| 20 | EXEC | `setMap.setValue("SIP_USER_ID_PWD", setParam[18]);` | SIP User ID Password |
| 21 | EXEC | `setMap.setValue("SIP_USER_ID_DEL_ZUMI_FLG", setParam[19]);` | SIP User ID Deletion-Complete Flag (SIPユーザーＩＤ消去済フラグ) |
| 22 | EXEC | `setMap.setValue("FIRST_CDR_HASSEI_YMD", setParam[20]);` | First CDR Occurrence Date (初回ＣＤＲ発生年月日) |
| 23 | EXEC | `setMap.setValue("TELNO_JUN", setParam[21]);` | Telephone Number Order (電話番号順番) |
| 24 | EXEC | `setMap.setValue("NTT_NO_GUIDE_UM", setParam[22]);` | NTT Number Guidance Availability (ＮＴＴ番号案内有無) |
| 25 | EXEC | `setMap.setValue("HELLOPAGE_KEISAI_UM", setParam[23]);` | Hello Page Publication Availability (ハローページ掲載有無) |
| 26 | EXEC | `setMap.setValue("TUWA_DTL_KOKAI_YH", setParam[24]);` | Call Detail Public Disclosure Required (通話明細公開要否) |
| 27 | EXEC | `setMap.setValue("TEL_NO_PRE_TCHI_CD", setParam[25]);` | Telephone Number Advance Notification Code (電番事前通知コード) |
| 28 | EXEC | `setMap.setValue("NTT_KEISHA_AD_CD", setParam[26]);` | NTT Subscriber Address Code (ＮＴＴ契約者住所コード) |
| 29 | EXEC | `setMap.setValue("NTT_KEISHA_PCD", setParam[27]);` | NTT Subscriber Postal Code (ＮＴＴ契約者郵便番号) |
| 30 | EXEC | `setMap.setValue("NTT_KEISHA_STATE_NM", setParam[28]);` | NTT Subscriber Prefecture Name (ＮＴＴ契約者都道府県名) |
| 31 | EXEC | `setMap.setValue("NTT_KEISHA_CITY_NM", setParam[29]);` | NTT Subscriber City/Town/Village Name (ＮＴＴ契約者市区町村名) |
| 32 | EXEC | `setMap.setValue("NTT_KEISHA_OAZTSU_NM", setParam[30]);` | NTT Subscriber District Name (ＮＴＴ契約者大字通称名) |
| 33 | EXEC | `setMap.setValue("NTT_KEISHA_AZCHO_NM", setParam[31]);` | NTT Subscriber Chōme/Block Name (ＮＴＴ契約者字丁目名) |
| 34 | EXEC | `setMap.setValue("NTT_KEISHA_BNCHIGO", setParam[32]);` | NTT Subscriber Block/Lot Number (ＮＴＴ契約者番地号) |
| 35 | EXEC | `setMap.setValue("NTT_KEISHA_ADRTTM", setParam[33]);` | NTT Subscriber Address Supplementary — Building Name (ＮＴＴ契約者住所補記・建物名) |
| 36 | EXEC | `setMap.setValue("NTT_KEISHA_ADRRM", setParam[34]);` | NTT Subscriber Address Supplementary — Room Number (ＮＴＴ契約者住所補記・部屋番号) |
| 37 | EXEC | `setMap.setValue("NKYS_AD_MAN_INPUT_FLG", setParam[35]);` | Address Manual Input Flag (手入力アドレス入力フラグ) |
| 38 | EXEC | `setMap.setValue("NTT_KSH_KANA", setParam[36]);` | NTT Subscriber Kana Name (ＮＴＴ契約者カナ名) |
| 39 | EXEC | `setMap.setValue("NTT_KEISHA_NM", setParam[37]);` | NTT Subscriber Name (ＮＴＴ契約者名) |
| 40 | EXEC | `setMap.setValue("NTT_KSH_AD_KSH_AD_SAI_FLG", setParam[38]);` | NTT Subscriber Address / Subscriber Address Discrepancy Flag (ＮＴＴ契約者住所＿契約者住所差異フラグ) |
| 41 | EXEC | `setMap.setValue("TSJGS_CD", setParam[39]);` | Telecommunications Carrier Code (通信事業者コード) |
| 42 | EXEC | `setMap.setValue("ITNM_TSJGS_KTN_CD", setParam[40]);` | Porting-Origin Carrier Site Code (移転元通信事業者拠点コード) |
| 43 | EXEC | `setMap.setValue("DOJI_OPEN_KIBO_CD", setParam[41]);` | Simultaneous Activation Desired Code (同時開通希望コード) |
| 44 | EXEC | `setMap.setValue("TEL_TTDKI_MSKM_CD", setParam[42]);` | Telephone Procedure Application Code (電話手続申込コード) |
| 45 | EXEC | `setMap.setValue("MAN_SWITCH_RSV_DTM", setParam[43]);` | Manual Switch Reservation Date/Time (手動切替予定年月日時分秒) |
| 46 | EXEC | `setMap.setValue("SHK_TEL_OP_SETTE_RMTS_PWD", setParam[44]);` | Initial Tel Option Setup Remote Operation Password (初期電話オプション設定用リモート操作用パスワード) |
| 47 | EXEC | `setMap.setValue("TEL_OP_SETTE_RMTS_PWD", setParam[45]);` | Tel Option Setup Remote Operation Password (電話オプション設定用リモート操作用パスワード) |
| 48 | EXEC | `setMap.setValue("ITNM_TSJGS_KTN_CD", setParam[40]);` | Porting Type Desired Availability (移転トーキ希望有無) — *Note: field name from javadoc ITNTOKI_KIBO_UM* |
| 49 | EXEC | `setMap.setValue("DSL_PAUSE_TOKI_ADD_CD", setParam[46]);` | DSL Pause Port-In Registration Code (DSL паузトーキ登録コード) |
| 50 | EXEC | `setMap.setValue("DSL_PAUSE_TOKI_SBT_CD", setParam[47]);` | DSL Pause Port-In Type Code (DSL паузトーキ種別コード) |
| 51 | EXEC | `setMap.setValue("DSL_PAUSE_TOKI_KIBO_UM", setParam[48]);` | DSL Pause Port-In Desired Availability (DSL паузトーキ希望有無) |
| 52 | EXEC | `setMap.setValue("DSL_PAUSE_TOKI_STA_RSYMD", setParam[49]);` | DSL Pause Port-In Start Planned Date (DSL паузトーキ開始予定年月日) |
| 53 | EXEC | `setMap.setValue("DSL_PAUSE_TOKI_STA_YMD", setParam[50]);` | DSL Pause Port-In Start Date (DSL паузトーキ開始年月日) |
| 54 | EXEC | `setMap.setValue("DSL_PAUSE_TOKI_END_RSYMD", setParam[51]);` | DSL Pause Port-In End Planned Date (DSL паузトーキ終了予定年月日) |
| 55 | EXEC | `setMap.setValue("DSL_PAUSE_TOKI_END_YMD", setParam[52]);` | DSL Pause Port-In End Date (DSL паузトーキ終了年月日) |
| 56 | EXEC | `setMap.setValue("PAUSE_TOKI_END_SBT_CD", setParam[53]);` | Pause Port-In End Type Code (ポーズトーキ終了種別コード) |
| 57 | EXEC | `setMap.setValue("DSL_PAUSE_TOKI_TSS_TLN", setParam[54]);` | DSL Pause Port-In Target Switch Station Tel No. (DSL паузトーキ先ＴＳＳ電話番号) |
| 58 | EXEC | `setMap.setValue("DSL_PAUSE_TOKI_TSS_SVKUWNO", setParam[55]);` | DSL Pause Port-In Target Service Contract No. (DSL паузトーキ先サービス契約番号) |
| 59 | EXEC | `setMap.setValue("ITENS_OPAF_TOKI_ADD_CD", setParam[56]);` | Inter-Exchange Port-Out Port-In Registration Code (インターエクスカンジ_port_out_ポートイン登録コード) |
| 60 | EXEC | `setMap.setValue("ITENS_OPAF_TOKI_SBT_CD", setParam[57]);` | Inter-Exchange Port-Out Port-In Type Code |
| 61 | EXEC | `setMap.setValue("ITENS_OPAF_TOKI_KIBO_UM", setParam[58]);` | Inter-Exchange Port-Out Port-In Desired Availability |
| 62 | EXEC | `setMap.setValue("ITENS_OPAF_TOKI_STA_RSYMD", setParam[59]);` | Inter-Exchange Port-Out Port-In Start Planned Date |
| 63 | EXEC | `setMap.setValue("ITENS_OPAF_TOKI_STA_YMD", setParam[60]);` | Inter-Exchange Port-Out Port-In Start Date |
| 64 | EXEC | `setMap.setValue("ITENS_OPAF_TOKI_END_RSYMD", setParam[61]);` | Inter-Exchange Port-Out Port-In End Planned Date |
| 65 | EXEC | `setMap.setValue("ITENS_OPAF_TOKI_END_YMD", setParam[62]);` | Inter-Exchange Port-Out Port-In End Date |
| 66 | EXEC | `setMap.setValue("ITNS_OPAF_TOKI_TSS_SVKUWNO", setParam[63]);` | Inter-Exchange Port-Out Port-In Target Service Contract No. |
| 67 | EXEC | `setMap.setValue("TOWNPAGE_KEISAI_KANA", setParam[64]);` | Town Page Publication Kana Name (タウンページ掲載カナ名) |
| 68 | EXEC | `setMap.setValue("TOWNPAGE_KEISAI_NM", setParam[65]);` | Town Page Publication Name (タウンページ掲載名) |
| 69 | EXEC | `setMap.setValue("BMP_UM", setParam[66]);` | Bango-PO Availability (番ポ有無 — Bango Page / directory listing) |
| 70 | EXEC | `setMap.setValue("BMP_AF_USE_PLACE_SBT_CD", setParam[67]);` | Bango-Page After-Use Location Type Code |
| 71 | EXEC | `setMap.setValue("BMP_DOJI_KOJI_KIBO_UM", setParam[68]);` | Bango-Page Simultaneous Construction Desired Availability (番ポ同時工事希望有無) |
| 72 | EXEC | `setMap.setValue("BMP_KOJI_KIBO_YMD", setParam[69]);` | Bango-Page Construction Desired Date (番ポ工事希望年月日) |
| 73 | EXEC | `setMap.setValue("BMPKJ_KIBO_TIME_CD", setParam[70]);` | Bango-Page Construction Desired Time Code (番ポ工事希望時間コード) |
| 74 | EXEC | `setMap.setValue("BMP_DOJI_OPEN_YMD", setParam[71]);` | Bango-Page Simultaneous Activation Date (番ポ同時開通年月日) |
| 75 | EXEC | `setMap.setValue("DOBANITEN_MSKM_UM", setParam[72]);` | Prefectural Book Application Availability (都簿店申込有無) |
| 76 | EXEC | `setMap.setValue("DOBANITEN_REQ_CTRL_CD", setParam[73]);` | Prefectural Book Request Control Code (都簿店要求制御コード) |
| 77 | EXEC | `setMap.setValue("DOBANITEN_JDG_CD", setParam[74]);` | Prefectural Book Judgment Code (都簿店判定コード) |
| 78 | EXEC | `setMap.setValue("DBANITEN_MSKMJIG_KIJIRAN_1", setParam[75]);` | Prefectural Book Criteria Item 1 (都簿店基準項目１) |
| 79 | EXEC | `setMap.setValue("DBANITEN_MSKMJIG_KIJIRAN_2", setParam[76]);` | Prefectural Book Criteria Item 2 (都簿店基準項目２) |
| 80 | EXEC | `setMap.setValue("DOBANITEN_NTT_KEISHA_NM", setParam[77]);` | Prefectural Book NTT Subscriber Name (都簿店ＮＴＴ契約者名) |
| 81 | EXEC | `setMap.setValue("DOBANITEN_NTT_KSH_KANA", setParam[78]);` | Prefectural Book NTT Subscriber Kana Name (都簿店ＮＴＴ契約者カナ名) |
| 82 | EXEC | `setMap.setValue("VA_TAKNKIKI_MODEL_CD", setParam[79]);` | VA宅内 Equipment Model Code (ＶＡ宅内機器型式コード) |
| 83 | EXEC | `setMap.setValue("VA_KIKI_SEIZO_NO", setParam[80]);` | VA Equipment Serial Number (ＶＡ機器製造番号) |
| 84 | EXEC | `setMap.setValue("VA_KIKI_CHG_NO", setParam[81]);` | VA Equipment Change Number (ＶＡ機器変更番号) [KT1-2013-0000590] |
| 85 | EXEC | `setMap.setValue("VA_PORT_NO", setParam[82]);` | VA Port Number (ＶＡポート番号) |
| 86 | EXEC | `setMap.setValue("RSV_APLY_CD", setParam[83]);` | Reservation Application Code (予約適用コード) |
| 87 | EXEC | `setMap.setValue("ADD_DTM", setParam[84]);` | Registration Date/Time (登録年月日時分秒) |
| 88 | EXEC | `setMap.setValue("ADD_OPEACNT", setParam[85]);` | Registering Operator Account (登録オペレータアカウント) |
| 89 | EXEC | `setMap.setValue("UPD_DTM", setParam[86]);` | Update Date/Time (更新年月日時分秒) |
| 90 | EXEC | `setMap.setValue("UPD_OPEACNT", setParam[87]);` | Updating Operator Account (更新オペレータアカウント) |
| 91 | EXEC | `setMap.setValue("DEL_DTM", setParam[88]);` | Deletion Date/Time (削除年月日時分秒) |
| 92 | EXEC | `setMap.setValue("DEL_OPEACNT", setParam[89]);` | Deleting Operator Account (削除オペレータアカウント) |
| 93 | EXEC | `setMap.setValue("MK_FLG", setParam[90]);` | Inactive Flag (無効フラグ) |
| 94 | EXEC | `setMap.setValue("ADD_UNYO_YMD", setParam[91]);` | Registration Business Date (登録運用年月日) |
| 95 | EXEC | `setMap.setValue("ADD_TRN_ID", setParam[92]);` | Registration Processing ID (登録処理ID) |
| 96 | EXEC | `setMap.setValue("UPD_UNYO_YMD", setParam[93]);` | Update Business Date (更新運用年月日) |
| 97 | EXEC | `setMap.setValue("UPD_TRN_ID", setParam[94]);` | Update Processing ID (更新処理ID) |
| 98 | EXEC | `setMap.setValue("DEL_UNYO_YMD", setParam[95]);` | Deletion Business Date (削除運用年月日) |
| 99 | EXEC | `setMap.setValue("DEL_TRN_ID", setParam[96]);` | Deletion Processing ID (削除処理ID) |

### Block 2 — LINEAR [DB Insert] (L948)

> Execute the actual database insert operation.

| # | Type | Code | Business Description |
|---|------|------|---------------------|
| 1 | CALL | `db_KK_T_SVKEIUW_EOH_TEL.insertByPrimaryKeys(setMap);` | Insert the fully populated record into `KK_T_SVKEIUW_EOH_TEL` table using primary key-based insert [Comment: DBアクセスを実行します — Execute DB access] |

**Migration note (KT1-2013-0000590, 2013/05/20):** The original field layout had `VA_PORT_NO` at index 81 and `RSV_APLY_CD` at index 82, followed by system fields at indices 83–96. This change introduced `VA_KIKI_CHG_NO` (VA Equipment Change Number) as a new field, shifting the original index-81 fields (`VA_PORT_NO`, `RSV_APLY_CD`) and all subsequent system fields by one position. The commented-out code block documents the pre-migration mapping for reference.

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `KK_T_SVKEIUW_EOH_TEL` | DB Table | Service Contract Detail — eo Fiber Phone table. The primary database entity for this method, storing complete telecom service subscriber records. |
| `SVC_KEI_UCWK_NO` | Field | Service Contract Detail Work Number — internal tracking ID for a service contract line item. |
| `GENE_ADD_DTM` | Field | Generation Registration Date/Time — timestamp of when this record version was created. |
| `TELNO` | Field | Telephone Number — the subscriber's primary phone number. |
| `DAIHYO_TELNO` | Field | Representative Telephone Number — the primary contact number for the account. |
| `TELNO_USE_PLACE_NO` | Field | Telephone Number Usage Location Number — identifies where the phone number is deployed. |
| `EMG_*` | Fields | Emergency Dispatch fields — 9 fields (AD_CD through EMG_AD_FIX_AF_CHGE_KH) storing emergency dispatch (119 fire/ambulance) address and contact information for the subscriber. Used by emergency services to locate the subscriber. |
| `EMG_AD_CD` | Field | Emergency Dispatch Address Code |
| `EMG_HOSEI_PCD` | Field | Emergency Dispatch Corrected Postal Code |
| `EMG_STATE_NM` | Field | Emergency Dispatch Prefecture Name |
| `EMG_CITY_NM` | Field | Emergency Dispatch City/Town/Village Name |
| `EMG_OAZTSU_NM` | Field | Emergency Dispatch District Name |
| `EMG_AZCHO_NM` | Field | Emergency Dispatch Chōme/Block Name |
| `EMG_BNCHIGO` | Field | Emergency Dispatch Block/Lot Number |
| `EMG_ADRTTM` | Field | Emergency Dispatch Address Supplementary — Building Name |
| `EMG_ADRRM` | Field | Emergency Dispatch Address Supplementary — Room Number |
| `EMG_KSH_KSITEI_FLG` | Field | Emergency Dispatch Subscriber Individual Designation Flag |
| `EMG_KSH_NM` | Field | Emergency Dispatch Subscriber Name |
| `EMG_KSH_KANA` | Field | Emergency Dispatch Subscriber Kana Name |
| `EMG_AD_FIX_AF_CHGE_KH` | Field | Emergency Dispatch Address Fix After Change Availability — whether emergency address can be modified post-registration. |
| `SIP_USER_ID` | Field | SIP (Session Initiation Protocol) User ID — VoIP subscriber identity. |
| `SIP_USER_ID_PWD` | Field | SIP User ID Password |
| `SIP_USER_ID_DEL_ZUMI_FLG` | Field | SIP User ID Deletion-Complete Flag — indicates if the SIP credentials have been revoked. |
| `FIRST_CDR_HASSEI_YMD` | Field | First CDR (Call Detail Record) Occurrence Date — date when the first call detail record was generated for this line. |
| `TELNO_JUN` | Field | Telephone Number Order — sequence number for multiple numbers under one contract. |
| `NTT_*` | Fields | NTT (Nippon Telegraph and Telephone) subscriber data fields — 18 fields storing NTT's official address and name records, used for regulatory compliance and official correspondence. |
| `NTT_KEISHA_AD_CD` | Field | NTT Subscriber Address Code |
| `NTT_KEISHA_NM` | Field | NTT Subscriber Name |
| `NTT_KSH_KANA` | Field | NTT Subscriber Kana Name |
| `NTT_KSH_AD_KSH_AD_SAI_FLG` | Field | NTT Subscriber Address / Subscriber Address Discrepancy Flag — indicates mismatch between registered and actual address. |
| `NKYS_AD_MAN_INPUT_FLG` | Field | Manual Address Input Flag — whether the address was entered manually rather than auto-resolved. |
| `TSJGS_CD` | Field | Telecommunications Carrier Code — identifies the carrier of record. |
| `ITNM_TSJGS_KTN_CD` | Field | Porting-Origin Carrier Site Code — the carrier/site from which the number was ported. |
| `DOJI_OPEN_KIBO_CD` | Field | Simultaneous Activation Desired Code — whether multiple services should activate at once. |
| `TEL_TTDKI_MSKM_CD` | Field | Telephone Procedure Application Code — code for the type of telephone procedure being applied. |
| `MAN_SWITCH_RSV_DTM` | Field | Manual Switch Reservation Date/Time — when a manual network switch is scheduled. |
| `SHK_TEL_OP_SETTE_RMTS_PWD` | Field | Initial Tel Option Setup Remote Operation Password — initial password for remote telephone option configuration. |
| `TEL_OP_SETTE_RMTS_PWD` | Field | Tel Option Setup Remote Operation Password — password for remote telephone option configuration. |
| `ITNTOKI_*` | Fields | Port-In (トクタイ/itentai — number port-in) fields — service type fields related to inbound number porting (historical; now superseded by DSL_PAUSE_TOKI_* and ITENS_OPAF_TOKI_*). |
| `ITNTOKI_KIBO_UM` | Field | Port-In Desired Availability (移転トーキ希望有無) |
| `ITNTOKI_SBT_CD` | Field | Port-In Type Code (移転トーキ種別コード) |
| `TOKI_TENSO_SK_TELNO` | Field | Port-In Forwarding Telephone Number (トーキ転送先電話番号) |
| `ITNTOKI_STA_YMD` | Field | Port-In Start Date (移転トーキ開始年月日) |
| `ITNTOKI_END_RSV_YMD` | Field | Port-In End Planned Date (移転トーキ終了予定年月日) |
| `ITNTOKI_END_YMD` | Field | Port-In End Date (移転トーキ終了年月日) |
| `ITNTOKI_ADD_CD` | Field | Port-In Registration Code (移転トーキ登録コード) |
| `ITNTOKI_MAN_STA_RSV_YMD` | Field | Port-In Manual Start Planned Date (移転トーキ手動開始予定年月日) |
| `TOWNPAGE_KEISAI_KANA` | Field | Town Page Publication Kana Name — for directory listing in the regional telephone directory. |
| `TOWNPAGE_KEISAI_NM` | Field | Town Page Publication Name |
| `BMP_UM` | Field | Bango-PO (番ポ) Availability — whether the subscriber appears in the Bango-PO (ばんごポータル) directory service. |
| `BMP_AF_USE_PLACE_SBT_CD` | Field | Bango-Page After-Use Location Type Code |
| `BMP_DOJI_KOJI_KIBO_UM` | Field | Bango-Page Simultaneous Construction Desired Availability |
| `BMP_KOJI_KIBO_YMD` | Field | Bango-Page Construction Desired Date |
| `BMPKJ_KIBO_TIME_CD` | Field | Bango-Page Construction Desired Time Code |
| `BMP_DOJI_OPEN_YMD` | Field | Bango-Page Simultaneous Activation Date |
| `DOBANITEN_*` | Fields | Prefectural Book (都簿店, Tobanten) fields — 7 fields related to the regional government's subscriber registration book (都府県市町村の登録台帳). Used for official government subscriber records. |
| `DOBANITEN_MSKM_UM` | Field | Prefectural Book Application Availability |
| `DOBANITEN_REQ_CTRL_CD` | Field | Prefectural Book Request Control Code |
| `DOBANITEN_JDG_CD` | Field | Prefectural Book Judgment Code |
| `DBANITEN_MSKMJIG_KIJIRAN_1` | Field | Prefectural Book Criteria Item 1 |
| `DBANITEN_MSKMJIG_KIJIRAN_2` | Field | Prefectural Book Criteria Item 2 |
| `DOBANITEN_NTT_KEISHA_NM` | Field | Prefectural Book NTT Subscriber Name |
| `DOBANITEN_NTT_KSH_KANA` | Field | Prefectural Book NTT Subscriber Kana Name |
| `VA_TAKNKIKI_MODEL_CD` | Field | VA (Voice Access / ボイス・アクセス)宅内 Equipment Model Code — model type of the VoIP terminal equipment installed at the subscriber's premises. |
| `VA_KIKI_SEIZO_NO` | Field | VA Equipment Serial Number — unique serial number of the installed terminal unit. |
| `VA_KIKI_CHG_NO` | Field | VA Equipment Change Number — tracking number for VA equipment change/migration events (added per KT1-2013-0000590). |
| `VA_PORT_NO` | Field | VA Port Number — physical port number on the VA terminal unit. |
| `RSV_APLY_CD` | Field | Reservation Application Code — code for how a reservation is applied. |
| `ADD_DTM` / `ADD_OPEACNT` | Fields | Registration Date/Time and Registering Operator Account — who created this record and when. |
| `UPD_DTM` / `UPD_OPEACNT` | Fields | Update Date/Time and Updating Operator Account — who last modified this record and when. |
| `DEL_DTM` / `DEL_OPEACNT` | Fields | Deletion Date/Time and Deleting Operator Account — who soft-deleted this record and when. |
| `MK_FLG` | Field | Inactive Flag (無効フラグ) — soft-delete indicator; when set, the record is logically deactivated. |
| `ADD_TRN_ID` / `UPD_TRN_ID` / `DEL_TRN_ID` | Fields | Processing/Transaction IDs — system-level audit trail identifiers for create/update/delete operations. |
| `ADD_UNYO_YMD` / `UPD_UNYO_YMD` / `DEL_UNYO_YMD` | Fields | Business Operation Dates — business-date stamps for create/update/delete (distinct from timestamp fields, used for end-of-day business processing). |
| DSL_PAUSE_TOKI_* | Fields | DSL Pause Port-In fields — 8 fields for DSL line pause service with port-in functionality (added as part of service expansion for DSL maintenance/transfer scenarios). |
| ITENS_OPAF_TOKI_* | Fields | Inter-Exchange Port-Out Port-In fields — 8 fields for cross-exchange number porting operations (added for ENUM carrier migration per ANK-3876-00-00). |
| HELLOPAGE_KEISAI_UM | Field | Hello Page Publication Availability — whether the subscriber is listed in NTT's Hello Page (ハローページ) directory service. |
| TUWA_DTL_KOKAI_YH | Field | Call Detail Public Disclosure Required — whether call detail records can be disclosed to the subscriber. |
| TEL_NO_PRE_TCHI_CD | Field | Telephone Number Advance Notification Code — code for advance notice of number changes/notifications. |
| JBSbatCommonDBInterface | Class | Common batch database interface — a key-value container used to build parameterized database operation payloads. |
| JBSbatSQLAccess | Class | Batch SQL access class — provides `insertByPrimaryKeys()`, `selectByPrimaryKeys()`, `updateByPrimaryKeys()`, and `deleteByPrimaryKeys()` methods for database operations. |
| insertByPrimaryKeys | Method | Database insert method — performs a SQL INSERT using primary key fields as the operation basis. |
| eo光電話 | Business term | eo Hikari Denwa — NTT Docomo's fiber optic telephone service (Fiber To The Home). |
| SOD | Acronym | Service Order Data — telecom order fulfillment entity. |
| 119 | Business term | Japan's emergency services number (fire/ambulance) — emergency dispatch (緊急通報) addresses are registered for 119 callback functionality. |
| NTT | Business term | Nippon Telegraph and Telephone — Japan's dominant telecommunications carrier; official address records are maintained per NTT data. |
| 都簿店 (Tobanten) | Business term | Prefectural/City municipal registration office — Japanese government system for official subscriber address registration. |
| 番ポ (Bango-PO) | Business term | Bango Portal — regional phone directory listing service (similar to Yellow Pages). |
| トーキ (Tokai) | Business term | Number porting (番号移行) — process of transferring a telephone number between carriers. |
| ANK | Acronym | System modification/change ticket prefix (ANK-XXXX-00-00 format). |
| ANK-4494-00-00 | Change ticket | Two-way Bango-PO support (双向番ポ対応) — added bidirectional directory listing support. |
| ANK-3876-00-00 | Change ticket | ENUM server delivery support with PSTN migration — added inter-exchange port-out port-in fields. |
| KT1-2013-0000590 | Change ticket | VA Equipment Change Number migration — added VA_KIKI_CHG_NO field and adjusted index mapping. |

---
*Co-Authored-By: Claude <noreply@anthropic.com>*
