8
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【新機能・ダッシュボード】プリザンターで複数のダッシュボードを使い分ける

Posted at

ダッシュボード機能

2023年7月28日に待望の新機能、「ダッシュボード」がリリースされました。
https://pleasanter.org/manual/dashboard

用途に合わせて作成した複数のダッシュボードを切り替えて使いたい

ダッシュボードは、テーブルやフォルダなどと同じように誰でも、いくつでも作成することができます。
また、ダッシュボードにアクセス権を設定することで、部署単位やチーム単位、ユーザ単位のダッシュボードを作成することも可能です。

しかしながら、トップ画面として設定できるダッシュボードは1つだけのため、複数のダッシュボードを作成して使い分けるにはちょっとした工夫が必要となります。
そこで、今回は複数のダッシュボードを簡単に切り替える方法について、一例をご紹介します。

サイドバーで複数のダッシュボードを切り替えるサンプル

下図のように、サイドバーのボタンにより表示するダッシュボードを行き来できるUIを実現します。

dashboards.gif

作成するダッシュボード

例として、下記6つのダッシュボードがあるとします。

  • 各ダッシュボードは目的に合わせて、組織、グループ、ユーザ単位でアクセス権が設定されています。
  • 各ダッシュボードには、下記「サイトグループ名」を設定しておきます。(これが今回の肝です!
No. ダッシュボード アクセス権 サイトグループ名
1 全社ポータル 全ユーザ 全社用ダッシュボード
2 開発部ポータル 開発1部,開発2部 (組織) 部署用ダッシュボード
3 営業部ポータル 営業部 (組織) 部署用ダッシュボード
4 ○×開発プロジェクト 開発チームA (グループ) プロジェクト用ダッシュボード
5 加藤専用 加藤 誠 (ユーザ) 個人用ダッシュボード
6 自分用 斎藤 美樹 (ユーザ) 個人用ダッシュボード

サイトグループ設定例

サイトグループ名は、「ダッシュボードの管理」-「全般」タブで設定します。
image.png

クイックアクセスでサイドメニューを作成する

クイックアクセスで切り替え用のサイドメニューを作成します。「サイトID」には、前述の表にある「サイトグループ名」を指定します。

image.png

全社用ダッシュボード,部署用ダッシュボード,プロジェクト用ダッシュボード,個人用ダッシュボード"

上記の様にカンマ区切りで指定しても良いですが、今回はボタンに表示されるアイコンも変えたいので下記のようにJSON形式で設定を行います。

[
    {
        "Id": "全社用ダッシュボード",
        "Icon":"apartment"
    },
    {
        "Id": "部署用ダッシュボード",
        "Icon":"groups"
    },
    {
        "Id": "プロジェクト用ダッシュボード",
        "Icon":"factory"
    },
    {
        "Id": "個人用ダッシュボード",
        "Icon":"person"
    }
]

このように設定することで、下図のようなサイドバーが出来上がります。

  • IDに指定した「サイトグループ名」が設定されたダッシュボードの全てが表示対象となります。
  • 表示対象の中でログインしているユーザにアクセス権があるものだけが表示されます。
  1. 全てのダッシュボードにアクセス権を持つ管理者ユーザの場合
    image.png

  2. 「開発2部」で「開発チームA」に所属している加藤 誠さんの場合
    image.png

  3. 「営業部」の斎藤 美樹さんの場合

image.png

どのダッシュボードでも同じサイドバーが出るようにする

サイドバーでダッシュボードを切り替えた際に、切り替えた先のダッシュボードでも同じサイドバーが表示されている必要があります。
そのためには、すべてのダッシュボードに同じサイドバーの設定を追加する必要があります。

ダッシュボードのテンプレートを作成しておく

そこで、テンプレート用のダッシュボードを1つ作成しておき、これをサイトパッケージとしてエクスポートして使いまわすようにします。

  • テンプレートの例
    image.png

  • 「ダッシュボードパーツ」に「サイドバー」の設定を行った「クイックアクセス」を追加
    image.png

アクティブなダッシュボードのボタンの色を変える

下記のスクリプトとスタイルを用意して、ダッシュボードを切り替えるたびに現在表示ているダッシュボードのボタンだけ色を変えるようにします。

  • スクリプト
    リンクのURLと現在のページのURLが一致しているボタンを探し、その要素に"active"クラスを付与します。
$(function(){
    let $active = $('.dashboard-part-nav-item').has('.dashboard-part-nav-link[href="'+location.pathname+'"]');
    $active.addClass('active');
});
  • スタイル
    activeクラスを含むボタン要素の背景色を緑に設定します。
.dashboard-part-nav-item.active {
   background-color: #C9FF2F;
}

これをテンプレートの「スタイル」と「スクリプト」に設定しておきます。

これでテンプレートは完成です。ダッシュボード表示画面で「管理」メニュー「サイトパッケージのエクスポート」からサイトパッケージを作成します

※ なお、意図しないアクセス権が付与されないよう、エクスポート時は「サイトのアクセス制御」を含まないようにしてください。

image.png

テンプレートからダッシュボードを作成する

それでは、テンプレートからダッシュボードを作成してみたいと思います。

  1. 「開発2部」の吉田 結さんでログインします
  2. テンプレートのサイトパッケージをインポートします。
  3. インポートしたテンプレートを開き、「ダッシュボードの管理」-「全般」タブで「タイトル」を変更し、サイトグループ名に「個人用ダッシュボード」と入力します。
    image.png
  4. 「サイトのアクセス制御」タブを開き、自分(吉田 結)のみにアクセス権があることを確認します。
     (部署や、プロジェクト用のダッシュボードを作る場合は、対象の組織やグループにアクセス権を割り当てます。)
    image.png
  5. 設定を保存し、作成したダッシュボードを表示してみましょう。

個人用のダッシュボードとして、サイドバーに追加されているのが確認できます。
また、既存のダッシュボードのサイドバーにも(設定を変更することなく)新しいダッシュボードが追加されているのが分かります。
dashboards-2.gif

まとめ

ダッシュボード間で共通のパーツ(クイックアクセスを利用したサイドバー)を用意することで、タブ切り替えのようなUIでダッシュボードの切り替えができるようになりました。

複数のダッシュボードを使い分ける場合に非常に便利だと思いますので、この記事を参考にぜひ一度お試しください。

8
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?