2021/06/24

SalesforceのSystem Class関連の変数まとめ

 
  

SalesforceのSystem Class

Salesforceにおけるクラスとは、投入したデータなどからオブジェクトを作り上げる為の指示内容の事です。クラスと関連付けられている変数が値を処理してインスタンスを出力します。「Sea Otter Association」という名前のクラスを作成するには、以下のコードを作成します。
public class SeaOtterAssociation {
}
クラスを定義する際に、修飾子であるpublicあるいはprotected等を書くことが多いです。今回のコードの様にSalesforceのApexでも新しくクラスを作る事も出来ますが、予め複数の関数と紐づけされている”System Class”が用意されています。 今回はそのSystem Classにどの様な変数が関連付けられているのか、つまりどういった処理が可能なのかを解説していきます。

System Classに関連付けられている変数

変数は入力されたデータをある形に処理する様にコンピュータに命令出来ますので、System Classがその変数を紐付けする事でその機能と同じ効果を得る事が出来ます。今回はそういった関数の一部をご紹介していきます。

assert

assertは指定した条件が正しいかを判断し、間違っている場合はコードの実行を停止させる変数です。第1引数に条件、第2引数にメッセージを設定する必要があり、実際には以下の様に使用されます。
public static Void assert(Boolean condition, Object msg)
コードの解説をすると、まず修飾子publicを使ってstaticクラスを定義しています。続いて返し値Voidを設定する事で条件が正しい場合は”true”が返される様になっています。第1引数にはBoolean型、第2引数にはObject型(どちらもデータ型)が指定されています。

debug

debugは指定したメッセージをString型に変換し、出力してくれる変数です。第1引数にメッセージを入力するだけで良く、以下の様なコードになります。
public static Void debug(Object msg)
指定したメッセージがString型でない場合、String.valueOfを呼び起こす事によってString型に変換します。ただし、それでも変換出来ない場合は文字列をそのまま返します。

equals

equalsは、指定した2つの条件が等しいかどうかを判断する変数です。返し値Booleanが指定されているので、等しい場合は”true”を、そうでない場合は”false”を返す事が出来ます。実際は以下の様に使用します。
public static Boolean equals(Object1, Object2)
第1引数及び第2引数に比較したいオブジェクトをString型で入力するのですが、その順番は自由です。このSystem.equalsは==演算子と同様のメカニズムで稼働します。

hashcode

hashcodeは、指定したオブジェクトのハッシュコードを返してくれる変数です。ハッシュコードとは、入力された文字列を、ハッシュ関数を利用して生み出された整数値の事です。つまりhashcode変数を使えば、指定したオブジェクトを数値化してくれるという事になります。 実際のコードは以下の様になります。
public static Integer hashCode(Object)
指定したいオブジェクトは第1引数に入力します。

isBatch

isBatchは、SalesforceのApexにおいて一括で処理する様にしたタスクが実行中のコードを返しているかを明らかにしてくれる変数です。コードが正常に返されている場合は”true”を、何らかの異常で返せていない場合は”false”を返します。実際には以下の様に使用します。
public static Boolean isBatch(job)
コードの解説をすると、trueかfalseかを返すために返し値Booleanが設定されています。また、タスク名(オブジェクト名)は第1引数に入力します。

movePassword

movePasswordはあるユーザーのパスワードを指定した別のユーザーに移行させられる関数です。第1引数にtargetUserのIDを、第2引数にsourceUserのIDを入力するのがポイントです。実際には以下の様なコードを作成します。
public static Void movePassword(targetUserId、sourceUserId)

System Classを使いこなそう

今回ご紹介したSystem Classと関連付けられている関数は1部に過ぎず、SalesforceのSystem Classで出来る事はもっと多様です。他にもユーザーのパスワードを一旦リセットした上で新しく作成したパスワードを相手に送る機能や現在時刻を返し値として返す機能等が用意されています。 是非色々な関数にチャレンジしてみて、System Classの理解を深めて下さい。]]>

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】