概要

項目内容
案件IDMAS-097
カテゴリコード品質
PhaseP1
優先度★★★
所要時間15分
対象ファイル400_domain/401_bat_rpa.js, 400_domain/403_subledger_engine.js

問題

TypeScript診断(VS Code PROBLEMS パネル)で以下の未使用変数が検出されている。コードの可読性を低下させ、将来のリファクタリング時に混乱を招く。

検出済みの未使用変数

ファイル変数名行番号状況
401_bat_rpa.jsiRefTypeL122buildOrdMap_ 内で宣言されるが参照されない
401_bat_rpa.jsfinalBilledYmL467generateSaasInvoices 内で宣言・代入されるが参照されない
401_bat_rpa.jstargetMonthEndL1122generateCapexInvoices 内で宣言されるが参照されない
401_bat_rpa.jshasNewDraftL1226宣言されるが参照されない
401_bat_rpa.jslastRepayDateL1378宣言・代入されるが参照されない
401_bat_rpa.jstargetOverrideL1681関数パラメータだが使用されていない
403_subledger_engine.jssettleYmL248processInvoiceApprovals 内で宣言されるが参照されない
403_subledger_engine.jsappTypeL251同上

修正方針

  • 各変数の宣言行を削除する
  • 関数パラメータ(targetOverride)の場合は、呼び出し側のインターフェースを壊さないため _targetOverride にリネームして明示的に未使用であることを示す
  • 修正後、npm run push:devGAS動作確認

関連ドキュメント

仕様書関連箇所
4.3.1 HC(人件費)401_bat_rpa.js の HC RPA 関数内の未使用変数
4.3.2 SaaS・サブスク401_bat_rpa.js の SaaS RPA 関数内の finalBilledYm
4.3.3 CAPEX(設備投資・借入)401_bat_rpa.js の CAPEX RPA 関数内の targetMonthEnd, hasNewDraft, lastRepayDate
4.4.1 Action A / Action B403_subledger_engine.jssettleYm, appType
4.3.7 ORD自動紐づけ401_bat_rpa.jsbuildOrdMap_ 内の iRefType

人間が検討すべき事項

なし(機械的な削除。即対応可)

実装プロンプト(Claude Code 用)

以下のプロンプトを Claude Code に入力して実装を実行する。

S-25: 未使用変数の一括クリーンアップ

背景: TypeScript 診断で検出された未使用変数8件を削除する。コードの動作は一切変わらない機械的な削除作業。

修正内容:

1. 401_bat_rpa.js — 6件
   - L114 var iRefType = h.indexOf('参照元区分'); → 行削除
   - L428 let finalBilledYm = ...; → 行削除(L505 の代入行も削除)
   - L1083 const targetMonthEnd = ...; → 行削除
   - L1187 let hasNewDraft = false; → 行削除(L1204, 1220, 1237, 1280, 1313, 1331, 1381, 1397 の hasNewDraft = true; 代入行も全て削除)
   - L1339 var lastRepayDate = null; → 行削除(L1400 の代入行も削除)
   - targetOverride パラメータ → _targetOverride にリネーム(呼び出し側のインターフェースを壊さないため)
2. 403_subledger_engine.js — 2件
   - L250 const settleYm = Utils.parseDateToYm(settleDate); → 行削除
   - L253 const appType = String(row[invIdx['申請種別']] || '').trim(); → 行削除
3. 注意点:
   - 401_bat_rpa.js L689 の targetMonthEnd は HC RPA で使用されているので削除しない。削除するのは L1083(CAPEX)のみ
   - hasNewDraft は宣言 + 代入8箇所を全て削除する
4. 手順:
   - chore/s25-unused-vars ブランチを作成
   - コード修正
   - npm run push:dev → dev で全テスト実行(T1〜T8 全 PASS 確認)
   - git push → PR → main マージ

検証: 機能変更なしのため、既存テスト(T1〜T8)が全て PASS すれば OK。

作成者: Claude Code

拡張思考(ultrathink)の使用状況

フェーズultrathink備考
プロンプト作成なし通常の推論で作成
実装なし機械的な削除作業のため通常の推論で実行

変更履歴

日付変更内容
2026-04-14 10:33初版作成
2026-04-14実装プロンプト(Claude Code 用)を追加