新しく登場したStatusプロパティの有効活用方法を紹介

💬
どうもをやっております熊倉です

新しくステータスプロパティが登場しました。一般的な使い方の紹介は他の方にお任せするとして、Statusプロパティが登場した事でちょっと楽になるポイント、有効活用方法をお伝えします
 
今回は
プロジェクトとタスクという二つのDBがあった時に、プロジェクトに紐づくタスクのうち、残タスクは何件で、そのうち何件が進行中なのか?という情報をプロジェクト側に表示したい。
というパターンに対応してみましょう。
ステータスプロパティが無かったとしても出来るのですが、必要になるプロパティの数が変わってくるので、少し楽になっております。
 
 
 

まずはステータスをロールアップ

 
進行数は上記のようにロールアップ →グループごとのカウント→in progressを選択します
進行数は上記のようにを選択します
 
ロールアップしたと表示されています。ですが、完了タスク分を差し引いてくれていないので、残りタスクがわかりません。
 
完了タスク分を差し引いて、1/2のように表示されて欲しい。
おぉ、ゴールが見えてきてるんだなという感触を得たいのです。
 

では、終了カウントも取ってきて、 関数を使って無理やり表現してみましょう。

 
 
Task

どん! できた!

 
 

関数の解説

  1. 進行中のカウントを抜き出す
        • 正規表現で抜き出しています
        • でマッチさせた文字列を配置することができます
          • ↑ 今回は全体的にこのパターンを使っています
          •  
  1. 終了カウントから、登録されてる全件数から終了数を引いて残タスク数を出す
        • という構造になっているので、それぞれ抜き出してで数値化し引き算をしています。
        •  
 
 
👀
正規表現がわからない方へ

以下などが参考になりますので見てみて下さいね
 

ギャラリーやボードなどで表示してあげると 良い感じに可視化出来ます

 
 

ちなみに工夫せずそのまま進行中カウントを表示すると・・

 
まだ、5件中1件しか進んでない・・?みたいな感じで残念な気持ちになります。。
 
 

もし、ステータスプロパティがなかったら

セレクトプロパティで同じ事をやってみます
 
関数はシンプルになりましたが、プロパティ数がかなり増えました。これはこれで大変。
 
 

おわりに

 
いかがでしたか?
ステータスプロパティが増えた事で表現の幅が広がったなーと個人的には思いますし、
もっといい活用方法もたくさんあるのだろうなと思います。
 
何か良いアイディアがありましたら、是非教えて下さい。
 
それでは、ありがとうございましたー!