Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Pleasanter

プリザンター(Pleasanter)で選択肢一覧にグループメンバーのみを表示させる方法

投稿日:2023年1月12日 更新日:

 

<目次>

プリザンター(Pleasanter)で選択肢一覧にグループメンバーのみを表示させる方法
 課題
 対策
  STEP1:項目をユーザー選択のプルダウンに変更する
  STEP2:承認者グループの作成
  STEP3:サーバスクリプトにサンプルプログラムを記載
 疎通確認(テスト)
 参考

プリザンター(Pleasanter)で選択肢一覧にグループメンバーのみを表示させる方法

課題

・プリザンターでワークフローを作る際、「承認者」のプルダウンで本来選べない人も選択できてしまう

・これは誤操作のリスクがあるため、「承認者」となりうる人(例:課長以上)の明細のみを表示するよう制御したい

・本記事では、この課題に対する解決策を記載します。

(図111)

目次にもどる

対策

・サーバスクリプトの「columns.[項目名].AddChoiceHash」を用いて、選択肢のプルダウンにおいてグループメンバーの中から選択できるようにします。
・サーバスクリプトはその名の通り、サーバ側で動くJavaScriptです。JavaScriptというと、クライアント側(ブラウザ)で動作するイメージがありますが、Pleasanterではサーバサイドの様々なイベント時(例:ビュー処理時など)における処理もJavaScriptで処理を記述する事ができます。

目次にもどる

STEP1:項目をユーザー選択のプルダウンに変更する

・①「エディタ」タブ⇒項目を選択⇒「詳細設定」押下
(図120①)


・②選択肢一覧に「[[Users]]」を追記
(図120②)

目次にもどる

STEP2:承認者グループの作成

承認者となりうるメンバーのグループを作成し、それを制御に使います。

・①「管理」→「グループの管理」を選択します。
(図121①)


・②「新規作成」を押下
(図121②)


・③グループ名を入力→作成
(図121③)


・④メンバーを検索→「追加」でグループに追加
(図121④)

目次にもどる

STEP3:サーバスクリプトにサンプルプログラムを記載

・「テーブルの管理」→「サーバスクリプト」を選択
(図122①)


・下記のサンプルプログラムを適用し、「条件」は「サイト設定の読み込み時」を選択し、「変更」を押下
→サイト設定の読み込み時という事で、一番最初に発動しておくように設定します。
(図122②)

(サンプルプログラム)※グループのIDはご自身の環境に合わせて変更してください。

// グループ情報を取得
let group = groups.Get(771);

// メンバーの数だけループ
for (let member of group.GetMembers()) {
  // メンバーの情報を取得
  user = users.Get(member.UserId);
  // 「メンバー名<ログインID>」形式でデータを取得
  membername = user.Name + '<' + user.LoginId + '>';
  // 「Manager」(=元は「管理者」、を「承認者」に変更した)項目の「選択肢一覧」を動的に設定
  columns.Manager.AddChoiceHash(member.UserId, membername);
}


・「変更」を押下します(※これを押さないと反映されないので注意)
(図122③)

目次にもどる

疎通確認(テスト)

(テスト1)新規チケット作成時
→「承認者」のプルダウンには、「承認者」グループのメンバーのみが表示される
(図123①)


(テスト2)一覧表示時
→「メンバー名<ログインID>」の形式で表示される
(図123②)

目次にもどる

参考

・グループ
https://pleasanter.org/manual/server-script-groups
・columns.AddChoiceHash
https://pleasanter.org/manual/server-script-columns-add-choice-hash

目次にもどる 

 

Adsense審査用広告コード


Adsense審査用広告コード


-Pleasanter
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

プリザンター(Pleasanter)でワークフローを試作してみた

  <目次> (1) プリザンター(Pleasanter)でワークフローを試作してみた。  (1-0) 概要  (1-1) STEP1:フロントエンド開発①(画面項目定義)  (1-2) S …

プリザンターとは?使い方をご紹介

<目次> プリザンターとは?使い方をご紹介。  プリザンターの概要  プリザンターのアカウント登録(2ヶ月無料)  プリザンターの使い方 プリザンターとは?使い方をご紹介。 プリザンターの概要 ・ロー …

PleasanterのAPIの使い方&レコード作成の例をご紹介

  <目次> (1) PleasanterのAPIの使い方&レコード作成の例をご紹介  やりたいこと  (1-0) 概要  (1-1) STEP1:テスト用サイトのインポート  (1-2) …

Pleasanterでcssを設定する方法

  <目次> (1) Pleasanterでcssを設定する方法  やりたいこと  設定箇所  サンプルcssコード  適用結果 (1) Pleasanterでcssを設定する方法 やりたい …

プリザンターでアクセス制御を行う方法(明細単位)

  <目次> プリザンターでアクセス制御を行う方法(明細単位)  課題  対策①:サーバスクリプトによる制御  対策②:サイトのアクセス制御を使う方法  対策②のテスト プリザンターでアクセ …

  • English (United States)
  • 日本語
Top