notionで予算管理をやってみる

# Notionで予算管理を目指す
- 会社で予算管理をスプシからnotionに移行した。
- しかしページがめちゃ重い。。ここの重さは改善できないか？重さはどうしようもないなら何か改善できないだろうか？と思い、色々と調べてみた。
- [こんな](https://qiita.com/SUGYKEN/items/3ab528122abf8728070e#b-%E6%9C%80%E7%B5%82%E5%BD%A2%E6%85%8B%E4%BB%8A%E3%81%AE%E3%81%A8%E3%81%93%E3%82%8D)Viewを作ってみたので、もし参考になれば。。。

## そもそも予算管理でやりたいこと
- 案件単位で予算実績が見たい
- Q単位で予算実績が見たい
- でもいちいちフィルタとかはしたくない...

## 作ってみた
- 仮想の任●堂で、Switch案件、64案件、3DS案件を管理してみる
    - Q単位で契約をしており、レコードを分けて管理。
    - 契約時の予定金額、契約完了後に実績金額を投入する
    - 予定金額と実績金額を”案件”と”Q”で管理。
- 現状は一つのTableViewで管理しているイメージだが、案件単位でみるViewとQ単位でみるViewを作ってみた。

### a. 現状
- 以下のイメージ。
![スクリーンショット 2023-09-18 19.40.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/e675cf4b-69e9-1198-c948-b6af0df9d756.png)

### b. 最終形態（今のところ）
- [こちら](https://swamp-warlock-db9.notion.site/de4e01ba32ba40c1a21897405c8d5af8?v=ae1949d6d99146629097962646860f80&pvs=4)で公開
#### 1. 全体View（基本使わない）
- 全体を眺めるためのビュー
    - サブアイテム化してみやすくしているものの基本使わない形になる。
![スクリーンショット 2023-09-18 19.51.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/82d40ddf-1b11-a10e-6c15-f42e19d4bf75.png)

#### 2. 案件単位View
- 案件単位での予実差を見るビュー
    - もしくは案件単位で予定・実績を記入する時にも利用する
    - ここで数値記入すれば他のビューに反映されるって便利だわー
![スクリーンショット 2023-09-18 20.14.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/09a15ddc-9373-74c6-4c37-2d1910df61cc.png)

#### 3. Q単位View
- Q単位で予実差を見るビュー
    - Q単位での予定値を見る方法、実績値を見る方法があればな。。（専用の列を追加するくらいしか思いつかん・・）
![スクリーンショット 2023-09-18 20.15.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/9ed191ce-c51d-9d5b-8a03-aa2f0f6a4d45.png)

## やったこと
### 前提知識（今回学んだこと）
- notionについて調べていくと、「データベース」と「ビュー」は分けて考えることを知りました。
    - データベースに対して見たい断面＝案件単位で見たい！ Q単位で見たい！ でビューを作っていくみたい！
    - どのビューをいじっても、データベースに反映されるみたい！（めっちゃ便利！）
- タグを使いこなせていないことを知りました。
    - レコードで共通の見方はタグできるのが良さそう（前期と後期とか、予算と実績とか）
    - ただ。。タグ×タグのビューは作れないみたい・・・（ここが作れると最高なんだけれど...）
- イメージはこんな感じ。
![スクリーンショット 2023-09-18 21.56.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/e2366ca4-b68c-7180-fde6-477f17d1b00d.png)
### 作り方
#### a. テーブルビューを作る
1. ページ作成時に「テーブル」を選択する
![スクリーンショット 2023-09-18 22.29.22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/df7e7bc7-74b2-4048-2816-5858ebd0a288.png)
1. データソースを選択するよう求められるので、”新規データベース”を選択する
1. テーブル名を決める
![スクリーンショット 2023-09-18 22.31.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/c33cddbe-3900-03f2-187c-1821df4dd464.png)
1. テーブルの右上の「・・・」ボタンよりプロパティを追加する。
「・・・」ボタン＞プロパティ＞新しいプロパティで作成
”種類”を選ぶことで、その列に入力する値に制限をかけられる（型定義みたいに）
![スクリーンショット 2023-09-18 22.33.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/37bec12b-7ff9-f223-651b-f2e16021207f.png)
1. 今回は、以下のプロパティを定義している。
・列名：案件、種類：テキスト
・列名：予実、種類：タグ
・列名：担当者、種類：ユーザー
・列名：決裁、種類：チェックボックス
・列名：累計、種類：関数、数値の形式：円
・列名：X月、種類：数値、数値の形式：円
![スクリーンショット 2023-09-18 22.49.22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/f123c289-c3e2-06b7-053a-b2c3435f26c3.png)

1. 列名：累計、は予実差算出に使う。
    - 予定：正、実績：負の数値として、そのレコードの各月の金額を累計して、別途合計値を算出するようにしている。
    - そのため、累計は、以下の関数を設定している。
    - ```(prop("4月")+prop("5月")+prop("6月")+prop("7月")+prop("8月")+prop("9月")+prop("10月")+prop("11月")+prop("12月")+prop("1月")+prop("2月")+prop("3月"))* if(contains(prop("予実"),"実績"),-1,1)```
![スクリーンショット 2023-09-18 22.50.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/0dbd9853-87bf-499e-892e-5858d5ea622c.png)

1. 案件名や各月の値を記入する
1. ”Tags”列に「1Q」、「2Q」、「3Q」、「4Q」、と入力していき、都度タグを生成＆設定する
1. ”予実”列に「予定」、「実績」と入力していき、都度タグを生成＆設定する

#### b. サブアイテム化する
1. サブアイテムの設定をONにする
    - 「・・・」ボタン＞サブアイテム＞”サブアイテムをオン”を押下する
![スクリーンショット 2023-09-18 22.52.53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/b7a44c9e-62ab-2913-c688-8e0b5225ea71.png)
1. 親相当のレコードを作成する
1. 「▶️」を押下してトグル開く（開くと「🔽」になる）
1. 作成済みのレコードをドラッグ＆ドロップで配置する
1. 親子関係が出来上がる＝サブアイテム化が完了する
![スクリーンショット 2023-09-18 22.55.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/6de225ba-c660-fc0f-bdc6-5731c63e29eb.png)

#### c. グループ化する
1. 「＋」で新規のビューを作る
![スクリーンショット 2023-09-18 22.58.16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/b9e8ff88-53bf-9aa9-3aa1-60b2894def5e.png)
1. ビュー名を入力する、形式はテーブルを選択する
1. グループ化を行う
   - 「・・・」ボタン＞グループ＞切りたい断面のプロパティ（例えば、”案件”）を設定する
![スクリーンショット 2023-09-18 23.02.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/37ea363d-d2c2-411e-a583-4686220cde18.png)
   - ”案件”でのビューができた！！！（めっちゃ簡単！！）
![スクリーンショット 2023-09-18 23.04.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/bb013c97-0028-235f-19fd-5fb1cd7004c0.png)
   - Tagsにすれば、先行して作成したタグ（「1Q」、「2Q」、「3Q」、「4Q」)で分けてみることができる
![スクリーンショット 2023-09-18 23.05.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/55ec068d-8caa-5010-68ca-2fd8074a7cb1.png)
   - 予実にすれば、先行して作成したタグ（「予定」、「実績」)で分けてみることができる
![スクリーンショット 2023-09-18 23.14.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/6ed803af-6efe-90d5-6a0e-a41fd86dfa06.png)
   - ここで「1Q」×「予実」みたいな見方ができると良いのだが、現状はテーブルでは難しそう・・※ボードであれば見れる。
1. ブロック名の横で予実差管理できるように設定する
    - ブロック名の横の数字をクリックする
![スクリーンショット 2023-09-18 23.06.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/bd8931cd-18d3-9d4b-2b68-58ac351dba0c.png)
    - ”合計”を選んで、”累計”を選ぶ
![スクリーンショット 2023-09-18 23.07.22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/152e877e-a5d1-4366-4fcc-524611906207.png)
    - 累計の値の合計値がブロック名の横に表示される
![スクリーンショット 2023-09-18 23.09.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1782672/0adde602-189c-05bb-638a-edabc2957646.png)

    - 一つのブロックで設定すれば、同一ビュー内の他のブロックにも反映される（便利〜〜）

## まだ課題に思っていること
- 予実の差分が綺麗に見えない。。
    - 予算DBと実績DBと分けることも考えたが、、時間があったら試してみよう・・
- タグの降順昇順がうまくいかない。。
    - ”案件名の降順”×”1Q2Q..の降順”×”予定→実績順”の順にしたい。。！！
- やっぱり重い
    - 実運用すると。。
    - Linked Databaseが多いから？