【kintone】JavaScriptの書き方(ログインユーザー情報の取得)【カスタマイズ基礎編】

前回の記事ではkintoneのプロセス管理アクション実行時の処理について解説しました。

続いて、kintoneにおけるJavaScriptカスタマイズでは「ログインユーザー情報」を取得できます。

この記事ではログインユーザー情報の取得処理について解説します。

この記事で何が分かる?
  • kintoneのJavaScriptカスタマイズでは、ログインユーザー情報を取得できます。
  • 「kintone.getLoginUser()」でログインユーザーのプロフィール情報(ログイン名、表示名、メールアドレスなど)を取得できます。
目次

kintoneのログインユーザー情報とは

kintoneのユーザーはそれぞれがプロフィール情報を持っています。

ログイン名、表示名、メールアドレス、従業員番号、電話番号などです。

これらの情報はJavaScriptを使うことでkintoneの各画面で取得できます。

ログインユーザー情報を取得する

ログインユーザーのプロフィール情報を取得する場合は以下を記述します。

kintone.getLoginUser()

この中に「code(ログイン名)」「name(表示名)」「email(メールアドレス)」などのパラメータが含まれます。

code(ログイン名)を取得する場合はkintone.getLoginUser().code

name(表示名)を取得する場合はkintone.getLoginUser().name

いずれも()を忘れないように注意しましょう。

取得できるパラメータはこちらに記載の通りです。

(() => {

	'use strict';

	kintone.events.on('app.record.detail.show', event => {

		const record = event.record;

		// 対応者のログイン名を配列化
		const userCodeArray = [];
		record.対応者.value.reduce((prev, current) => {
			userCodeArray.push(current.code);
		}, 0);

		if (userCodeArray.indexOf(kintone.getLoginUser().code) == -1) {
			// 対応者にログインユーザーを含まない場合は非表示
			kintone.app.record.setFieldShown('対応内容', false);
		} else {
			// 対応者にログインユーザーを含む場合は表示
			kintone.app.record.setFieldShown('対応内容', true);
		}

		return event;

	});

})()

上記コードでは、対応者にログインユーザーが含まれる場合にフィールドを表示します。

ログイン名で比較するため、先に対応者(ユーザー選択)に指定されたユーザーのログイン名を配列化します。

(対応者は複数人を指定する可能性があります)

その後、対応者のログイン名配列の中にログインユーザーのログイン名が含まれるか判定します。

これ以外にも所属する組織やグループ(ロール)の情報をAPI取得するためにログイン名を使います。

組織やグループ(ロール)のAPI取得については別の記事で解説します。

この記事のまとめ
  • kintoneのJavaScriptカスタマイズでは、ログインユーザー情報を取得できます。
  • 「kintone.getLoginUser()」でログインユーザーのプロフィール情報(ログイン名、表示名、メールアドレスなど)を取得できます。

ログインユーザーが所属する組織やグループ(ロール)も取得できるのでしょうか?

ログイン名を使ってAPI処理により取得できます。これについては別の記事で解説します。

次回の記事ではドメイン名の取得について解説します。

目次