この記事の目次
UserInfoクラスとは
![](https://b-engineer-media-cms.s3.amazonaws.com/item/image/user/9e08934fd24485c7d9e691a312f16a4ef7ff96eb/654bd373-e8cd-4bfa-b2e9-6a2405b5a5ff.jpg)
概要
UserInfoクラスとは、Salesforceの開発言語Apexで現在のユーザに関する情報を取得するためのメソッドを持つクラスです。 Salesforce組織に現在ログインしているユーザの「ユーザID」「ユーザ名」「プロファイルID」などを取得することが可能です。今回はユーザ情報を取得するUserInfoクラスについて、簡単にご紹介します。UserInfoクラスのメソッド
SalesforceのApex開発時に利用される代表的なUserInfoクラスのメソッドをいくつかご紹介します。 下記はUserInfoクラスに含まれるメソッドと取得できるユーザ情報になります。すべてのメソッドとその詳細はSalesforce公式のApex開発者ガイドをご確認ください。UserInfoクラスのメソッド | 取得できる情報 |
---|---|
getProfileId() | ユーザのプロファイルID |
getUserId() | ユーザID |
getUserName() | ユーザのログイン名 |
getName() | ユーザの氏名 |
getUserRoleId() | ユーザのロールID |
getTimeZone() | ユーザのタイムゾーン |
getLanguage() | ユーザの言語 |
UserInfoクラスの使用例
![](https://b-engineer-media-cms.s3.amazonaws.com/item/image/user/9e08934fd24485c7d9e691a312f16a4ef7ff96eb/ae96882d-db89-4ef7-bc6a-7c5656b30403.jpg)
どんなときに使う?
Salesforce組織に現在ログインしているユーザの情報を取得する際にUserInfoクラスのメソッドを使用します。 例えば、UserInfoクラスの「getProfileId()」メソッドを用いることで現在ログインしているユーザに設定されているプロファイルIDを取得することができます。 プロファイルIDが取得できれば、その他のプロファイル情報が取得できますし、ログインしているユーザのプロファイル(権限)によって処理を分岐させることもできます。UserInfoクラスを使用して現在のユーザ情報を取得してみよう
それでは、実際にUserInfoクラスのメソッドを用いて、ユーザ情報を取得してみましょう。 ここでは、先程も例にした「プロファイルID」を取得する処理をご紹介します。String pid = UserInfo.getProfileId();
これで「pid」には現在のログインユーザの18桁のプロファイルIDが取得されます。
取得した「pid」を元に、プロファイル名を取得し、特定のプロファイル名の場合に処理を分岐してみます。
String pid = UserInfo.getProfileId();
Profile p = [SELECT Id, Name FROM Profile WHERE Id = :pid LIMIT 1];
if(p.Name == 'システム管理者'){
// 何らかの処理
}
取得した「pid」からSOQLでプロファイル名を取得し、プロファイル名が「システム管理者」の場合のみ、分岐に入るようにしました。こうして特定のプロファイルに限定し、処理を分けることができます。
UserInfoクラスを活用してみよう!
![](https://b-engineer-media-cms.s3.amazonaws.com/item/image/user/356a192b7913b04c54574d18c28d46e6395428ab/aaa5afe9-5309-4b1b-902f-3611d567b598.jpg)
この記事の監修者・著者
![株式会社オープンアップITエンジニア](https://tenshoku-careerchange.jp/wp-content/uploads/2023/07/fzxADbr-_400x400-1-150x150.jpg)
-
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞
最新の投稿
- 2024年3月26日キャリア・転職保安職(自衛官・警察・消防官など)に向いている人の性格・特徴ランキング【現役保安職(自衛官・警察・消防官など)36人が回答】
- 2024年3月26日キャリア・転職保安職(自衛官・警察・消防官など)に必要なスキルランキング&スキルアップの方法とは?【現役保安職(自衛官・警察・消防官など)36人が回答】
- 2024年3月26日キャリア・転職クリエイター職(ライター・デザイナー・編集)に向いている人の性格・特徴ランキング【現役クリエイター職(ライター・デザイナー・編集)64人が回答】
- 2024年3月26日キャリア・転職クリエイター職(ライター・デザイナー・編集)に必要なスキルランキング&スキルアップの方法とは?【現役クリエイター職(ライター・デザイナー・編集)64人が回答】