• #vue
  • #ib-style
  • #finance
  • #investment
  • #miller-column
  • #depreciation
開発mdx-playgroundメモ

やったこと

InvestmentSheet.vueとFinanceSheet.vueの改修、およびIBテーブルスタイルのスキル化。

InvestmentSheet改修

Miller Column構造への移行

FinanceSheetと同じサブナビゲーション構造に統一した。左カラムに「サマリー」「個別資産」のナビを置き、右カラムにそれぞれの詳細を表示する形。これまで1画面に詰め込んでいたのを分離できたので見通しがよくなった。

償却スケジュール(月次テーブル)

耐用年数の全期間を月次で表示するテーブルを実装した。対象期間の行はハイライトで強調する。

サンプルデータとして以下を追加:

  • 建物: 2年前取得、耐用年数8年
  • 備品: 当期取得、耐用年数5年

全期間を見せることで「今どのあたりか」が直感的にわかる。月数が多くなるが、スクロールで十分。

FinanceSheet改修

仕訳テーブルの追加

返済予定表の右側に仕訳テーブルを並べた。左右の行高さを揃えて、返済と仕訳が対応関係にあることを視覚的に示す。入金列も追加して、入出金の流れを一覧できるようにした。

遷移リンクの整備

財務概要からの導線を整理:

  • CF精算表へのリンク
  • 各ローン詳細へのリンク
  • 概要の個別ローンセルをクリックすると、対象ローンの詳細に遷移してオレンジ枠でハイライト

セルクリックで遷移する仕組みは、routerのquery paramにローンIDを渡して、遷移先でwatchして該当行にハイライトを当てる方式。

IBテーブルスタイル(ib-table-style スキル)

投資銀行のモデルで使われるセル色分けルールをスキルとして定義した。

色の意味

用途hex
入力値(ユーザーが直接入力する数値)#2563eb
参照値(他シートからの参照、クリックで遷移可能)#059669
計算値(数式で算出される値)#111827

その他の表現

  • neg-mark: マイナス値を ▲1,000 のように表示
  • セルハイライト: 遷移先のセルをオレンジ枠 + 薄い黄色背景で強調
<!-- 色分けの適用例 -->
<td :class="cellClass(cell)">
  <span v-if="cell.type === 'input'" class="text-blue-600">{{ cell.value }}</span>
  <span v-if="cell.type === 'ref'" class="text-green-600 cursor-pointer">{{ cell.value }}</span>
  <span v-if="cell.type === 'calc'" class="text-gray-900">{{ cell.value }}</span>
</td>

この色分けルールをスキル化したことで、新しいテーブルコンポーネントを作るときに同じスタイルを適用しやすくなった。

適用先

  • InvestmentSheet.vue
  • FinanceSheet.vue
  • CfWorksheetTable.vue

勘定科目の変更

仮受金/仮払金を使っていた箇所を普通預金に変更。実態に合わせた修正。

振り返り

IBスタイルの色分けは、数字だらけのテーブルで「この値は何由来か」を瞬時に判断できるので効果が大きい。特に緑の参照値はクリックで遷移先に飛べるので、シート間の関係を辿りやすい。スキルとして切り出したのは正解だった。