この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

sObject クラス

sObject データ型のメソッドが含まれます。

名前空間

System

使用方法

sObject メソッドはすべてインスタンスメソッドです。つまり、取引先または取引先責任者など、sObject の特定のインスタンスでコールされ、動作します。次に、sObject のインスタンスメソッドを示します。

sObject についての詳細は、「sObjects の操作」を参照してください。

sObject のメソッド

sObject のメソッドは次のとおりです。すべてインスタンスメソッドです。

addError(errorMsg)

カスタムエラーメッセージでトリガレコードをマークし、DML 操作が行われないようにします。

署名

public Void addError(String errorMsg)

パラメータ

errorMsg
型: String

レコードにマークを付けるエラーメッセージです。

戻り値

型: Void

使用方法

before insert トリガおよび before update トリガの Trigger.new、および before delete トリガの Trigger.old で使用すると、アプリケーションインターフェースにエラーメッセージが表示されます。

「トリガ」および「トリガの例外」を参照してください。

このメソッドは、指定されたエラーメッセージ内のすべての HTML マークアップをエスケープします。エスケープ文字は、\n<>&"\\u2028\u2029\u00a9 です。この結果は HTML マークアップで表示されません。代わりに、Salesforce ユーザインターフェースにテキストとして表示されます。

メモ

Visualforce コントローラで使用すると、生成されたメッセージが、そのページのエラーコレクションに追加されます。詳細は、『Visualforce 開発者ガイド』の「入力規則と標準コントローラ」を参照してください。

addError(errorMsg, escape)

カスタムエラーメッセージを使用してトリガレコードにマークを付け、エラーメッセージをエスケープする必要があるかどうかを指定して、DML 操作が行われないようにします。

署名

public Void addError(String errorMsg, Boolean escape)

パラメータ

errorMsg
型: String

レコードにマークを付けるエラーメッセージです。

escape
型: Boolean

カスタムエラーメッセージ内の HTML マークアップがエスケープされるか (true)、否か (false) を示します。このパラメータは Lightning Experience と Salesforce アプリケーションでは無視され、HTML は常にエスケープされます。escape パラメータは Salesforce Classic でのみ適用されます。

戻り値

型: Void

使用方法

エスケープ文字は、\n<>&"\\u2028\u2029\u00a9 です。この結果は HTML マークアップで表示されません。代わりに、Salesforce ユーザインターフェースにテキストとして表示されます。

escape 引数に false を指定するときは、慎重に行ってください。Salesforce ユーザインターフェースに表示されるエスケープ解除された文字列が、システムの脆弱性を示す場合があります。それらの文字列に有害なコードが含まれている可能性があるためです。エラーメッセージに HTML マークアップを含める場合は、falseescape 引数を使用してこのメソッドをコールし、入力項目値などのすべての動的コンテンツをエスケープします。それ以外の場合は、escape 引数に true を指定するか、addError(String errorMsg) をコールします。

警告

addError(exceptionError)

カスタムエラーメッセージでトリガレコードをマークし、DML 操作が行われないようにします。

署名

public Void addError(Exception exceptionError)

パラメータ

exceptionError
型: System.Exception

レコードにマークを付けるエラーメッセージを含む例外オブジェクトまたはカスタム例外オブジェクトです。

戻り値

型: Void

使用方法

before insert トリガおよび before update トリガの Trigger.new、および before delete トリガの Trigger.old で使用すると、アプリケーションインターフェースにエラーメッセージが表示されます。

「トリガ」および「トリガの例外」を参照してください。

このメソッドは、指定されたエラーメッセージ内のすべての HTML マークアップをエスケープします。エスケープ文字は、\n<>&"\\u2028\u2029\u00a9 です。この結果は HTML マークアップで表示されません。代わりに、Salesforce ユーザインターフェースにテキストとして表示されます。

メモ

Visualforce コントローラで使用すると、生成されたメッセージが、そのページのエラーコレクションに追加されます。詳細は、『Visualforce 開発者ガイド』の「入力規則と標準コントローラ」を参照してください。

addError(exceptionError, escape)

カスタム例外エラーメッセージを使用してトリガレコードにマークを付け、例外エラーメッセージをエスケープするかどうかを指定し、DML 操作が行われないようにします。

署名

public Void addError(Exception exceptionError, Boolean escape)

パラメータ

exceptionError
型: System.Exception

レコードにマークを付けるエラーメッセージを含む例外オブジェクトまたはカスタム例外オブジェクトです。

escape
型: Boolean

カスタムエラーメッセージ内の HTML マークアップがエスケープされるか (true)、否か (false) を示します。このパラメータは Lightning Experience と Salesforce アプリケーションでは無視され、HTML は常にエスケープされます。escape パラメータは Salesforce Classic でのみ適用されます。

戻り値

型: Void

使用方法

エスケープ文字は、\n<>&"\\u2028\u2029\u00a9 です。この結果は HTML マークアップで表示されません。代わりに、Salesforce ユーザインターフェースにテキストとして表示されます。

escape 引数に false を指定するときは、慎重に行ってください。Salesforce ユーザインターフェースに表示されるエスケープ解除された文字列が、システムの脆弱性を示す場合があります。それらの文字列に有害なコードが含まれている可能性があるためです。エラーメッセージに HTML マークアップを含める��合は、falseescape 引数を使用してこのメソッドをコールし、入力項目値などのすべての動的コンテンツをエスケープします。それ以外の場合は、escape 引数に true を指定するか、addError(Exception e) をコールします。

警告

addError(errorMsg)

Salesforce ユーザインターフェースの項目に、指定したエラーメッセージを設定し、DML 操作が行われないようにします。

署名

public Void addError(String errorMsg)

パラメータ

errorMsg
型: String

戻り値

型: Void

使用方法

注意:
  • before insert トリガおよび before update トリガの Trigger.new、および before delete トリガの Trigger.old で使用すると、アプリケーションインターフェースにエラーが表示されます。
  • Visualforce コントローラで使用すると、inputField コンポーネントが項目に結合されている場合、コンポーネントにメッセージが添付されます。詳細は、『Visualforce 開発者ガイド』の「入力規則と標準コントローラ」を参照してください。
  • 項目識別子は実際には呼び出しオブジェクトではなく、sObject が呼び出し元であるため、このメソッドは専門分野に特化されます。項目を使用して、エラーの表示に使用する必要がある項目を識別します。

「トリガ」および「トリガの例外」を参照してください。

このメソッドは、指定されたエラーメッセージ内のすべての HTML マークアップをエスケープします。エスケープ文字は、\n<>&"\\u2028\u2029\u00a9 です。この結果は HTML マークアップで表示されません。代わりに、Salesforce ユーザインターフェースにテキストとして表示されます。

メモ

addError(errorMsg, escape)

Salesforce ユーザインターフェースのトリガレコード項目に、エスケープまたはエスケープ解除できる、指定されたエラーメッセージを設定し、DML 操作が行われないようにします。

署名

public Void addError(String errorMsg, Boolean escape)

パラメータ

errorMsg
型: String

レコードにマークを付けるエラーメッセージです。

escape
型: Boolean

カスタムエラーメッセージ内の HTML マークアップがエスケープされるか (true)、否か (false) を示します。このパラメータは Lightning Experience と Salesforce アプリケーションでは無視され、HTML は常にエスケープされます。escape パラメータは Salesforce Classic でのみ適用されます。

戻り値

型:

使用方法

エスケープ文字は、\n<>&"\\u2028\u2029\u00a9 です。この結果は HTML マークアップで表示されません。代わりに、Salesforce ユーザインターフェースにテキストとして表示されます。

escape 引数に false を指定するときは、慎重に行ってください。Salesforce ユーザインターフェースに表示されるエスケープ解除された文字列が、システムの脆弱性を示す場合があります。それらの文字列に有害なコードが含まれている可能性があるためです。エラーメッセージに HTML マークアップを含める場合は、falseescape 引数を使用してこのメソッドをコールし、入力項目値などのすべての動的コンテンツをエスケープします。それ以外の場合は、escape 引数に true を指定するか、field.addError(String errorMsg) をコールします。

警告

clear()

すべての項目値をクリアします。

署名

public Void clear()

戻り値

型: Void

clone(preserveId, isDeepClone, preserveReadonlyTimestamps, preserveAutonumber)

sObject レコードのコピーを作成します。

署名

public sObject clone(Boolean preserveId, Boolean isDeepClone, Boolean preserveReadonlyTimestamps, Boolean preserveAutonumber)

パラメータ

preserveId
型: Boolean
(省略可能) 元のオブジェクトの ID を重複で保持するか削除するかを指定します。true に設定すると、ID は重複する ID にコピーされます。デフォルトは false であるため、ID はクリアされます。
isDeepClone
型: Boolean
(省略可能) メソッドが sObject 項目の完全なコピーを作成するか、参照を作成するかを決定します。
  • true に設定すると、メソッドは sObject の完全版を作成します。リレーション項目など、sObject のすべての項目はメモリで重複します。その結果、コピーした sObject の項目に変更を行っても、元の sObject は影響されません。
  • false に設定すると、メソッドは sObject 項目の浅いコピーを作成します。コピーされたすべてのリレーション項目は元の sObject を使用します。その結果、コピーされた sObject でリレーション項目を変更すると、元の sObject の対応する項目も変更され、元の sObject で変更するとコピーされた sObject も変更されます。デフォルトは false です。
preserveReadonlyTimestamps
型: Boolean
(省略可能) 参照のみのタイムスタンプ項目を重複で保持するか削除するかを指定します。true に設定すると、参照のみの項目 CreatedByIdCreatedDateLastModifiedById、および LastModifiedDate は重複項目にコピーされます。デフォルトは false であるため、値は���リアされます。
preserveAutonumber
型: Boolean
(省略可能) 元のオブジェクトの自動採番項目を複製で保持するか削除するかを指定します。true に設定すると、自動採番項目はコピーされたオブジェクトにコピーされます。デフォルトは false であるため、自動採番項目はクリアされます。

戻り値

型: sObject (同じデータ型)

使用方法

Salesforce API バージョン 22.0 以前を使用して保存された Apex の場合、preserveId 引数のデフォルト値は true のため、ID は保持されます。

メモ

get(fieldName)

AccountNumber など、fieldName で指定された項目の値を返します。

署名

public Object get(String fieldName)

パラメータ

fieldName
型: String

戻り値

型: Object

使用方法

詳細は、「動的 SOQL」を参照してください。

get(field)

項目トークン Schema.sObjectField (Schema.Account.AccountNumber など) で指定された項目の値を返します。

署名

public Object get(Schema.sObjectField field)

パラメータ

field
型: Schema.SObjectField

戻り値

型: Object

使用方法

詳細は、「動的 SOQL」を参照してください。

項目トークンは、個人取引先では使用できません。Schema.Account.fieldname にアクセスすると、例外エラーが発生します。代わりに、項目名を文字列として指定します。

メモ

getCloneSourceId()

オブジェクトのコピー元であるエンティティの ID を返します。このメソッドは、Salesforce ユーザインターフェースを使用してコピーされたオブジェクトに使用できます。preserveId パラメータを使用しない場合、または preserveId 値に false を使用する場合は、System.SObject.clone(preserveId, isDeepClone, preserveReadonlyTimestamps, preserveAutonumber) メソッドを使用して作成されたオブジェクトにも使用できます。

署名

public Id getCloneSourceId()

戻り値

型: Id

使用方法

A を B にコピーし、B を C にコピーし、C を D にコピーすると、B と C と D のすべてがコピーソースである A を参照します。

getOptions()

sObject の database.DMLOptions オブジェクトを返します。

署名

public Database.DMLOptions getOptions()

戻り値

型: Database.DMLOptions

getPopulatedFieldsAsMap()

入力された項目名とそれに対応する値の対応付けを返します。対応付けには、SObject インスタンスについてメモリ内で入力された項目のみが含まれます。

署名

public Map<String,Object> getPopulatedFieldsAsMap()

戻り値

型: Map<String,Object>

項目名とそれに対応する値の対応付け。

使用方法

返される対応付けには、SObject インスタンスについてメモリ内に入力された項目のみが含まれるため、それらの項目の反復処理が容易になります。項目は、次の場合にメモリ内に入力されます。
  • 項目が SOQL ステートメントでクエリされた。
  • getPopulatedFieldsAsMap() メソッドへのコールの前に項目が明示的に設定された。
クエリまたは設定された関連オブジェクトの項目も返される対応付けに含まれます。

次の例では、SOQL クエリの後に getPopulatedFieldsAsMap() メソッドで返された対応付けを反復処理します。

次の例では、SObject の項目が明示的に設定された後に getPopulatedFieldsAsMap() メソッドで返された対応付けを反復処理します。

次の例は、関連オブジェクトに getPopulatedFieldsAsMap() メソッドを使用する方法を示します。

getSObject(fieldName)

指定された項目の値を返します。このメソッドは主に、外部 ID の値にアクセスするために動的 DML と共に使用します。

署名

public sObject getSObject(String fieldName)

パラメータ

fieldName
型: String

戻り値

型: sObject

getSObject(fieldName)

項目トークン Schema.fieldName (Schema.MyObj.MyExternalId など) で指定された項目の値を返します。このメソッドは主に、外部 ID の値にアクセスするために動的 DML と共に使用します。

署名

public sObject getSObject(Schema.SObjectField fieldName)

パラメータ

fieldName
型: Schema.SObjectField

戻り値

型: sObject

getSObjects(fieldName)

指定された項目の値を返します。このメソッドは主に、子リレーションなど、関連オブジェクトの値にアクセスするために動的 DML と共に使用します。

署名

public sObject[] getSObjects(String fieldName)

パラメータ

fieldName
型: String

戻り値

型: sObject[]

使用方法

詳細は、「動的 DML」を参照してください。

getSObjects(fieldName)

項目トークン Schema.fieldName (Schema.Account.Contact など) で指定された項目の値を返します。このメソッドは主に、子リレーションなど、関連オブジェクトの値にアクセスするために動的 DML と共に使用します。

署名

public sObject[] getSObjects(Schema.SObjectType fieldName)

パラメータ

fieldName
型: Schema.SObjectType

戻り値

型: sObject[]

getSObjectType()

この sObject のトークンを返します。このメソッドは Describe Information で使用されます。

署名

public Schema.SObjectType getSObjectType()

戻り値

型: Schema.SObjectType

使用方法

詳細は、「Apex Describe Information について」を参照してください。

getQuickActionName()

この sObject に関連付けられたクイックアクションの名前を取得します。多くの場合、トリガで使用されます。

署名

public String getQuickActionName()

戻り値

型: String

isClone()

エンティティが何かからコピーされた場合に、そのエンティティが保存されていなくても、true を返します。

署名

public Boolean isClone()

戻り値

型: Boolean

put(fieldName, value)

指定された項目の値を設定し、項目の以前の値を返します。

署名

public Object put(String fieldName, Object value)

パラメータ

fieldName
型: String
value
型: Object

戻り値

型: Object

put(fieldName, value)

項目トークン Schema.sObjectField (Schema.Account.AccountNumber など) で指定された項目の値を設定し、項目の以前の値を返します。

署名

public Object put(Schema.SObjectField fieldName, Object value)

パラメータ

fieldName
型: Schema.SObjectField
value
型: Object

戻り値

型: Object

項目トークンは、個人取引先では使用できません。Schema.Account.fieldname にアクセスすると、例外エラーが発生します。代わりに、項目名を文字列として指定します。

メモ

putSObject(fieldName, value)

指定された項目の値を設定します。このメソッドは主に、外部 ID の値に設定するために動的 DML で使用します。メソッドは項目の以前の値を返します。

署名

public sObject putSObject(String fieldName, sObject value)

パラメータ

fieldName
型: String
value
型: sObject

戻り値

型: sObject

putSObject(fieldName, value)

トークン Schema.sObjectType で指定される項目の値を設定します。このメソッドは主に、外部 ID の値に設定するために動的 DML で使用します。メソッドは項目の以前の値を返します。

署名

public sObject putSObject(Schema.sObjectType fieldName, sObject value)

パラメータ

fieldName
型: Schema.SObjectType
value
型: sObject

戻り値

型: sObject

recalculateFormulas()

sObject のすべての数式項目を再計算し、更新された項目値を設定します。数式ロジックに対する変更をテストするたびにオブジェクトを挿入または更新する代わりに、このメソッドをコールして新しい項目値を確認します。必要に応じてロジックにさらなる変更を行います。

署名

public Void recalculateFormulas()

戻り値

型: Void

使用方法

このメソッドは、クロスオブジェクト数式を再計算しません。クロスオブジェクト数式項目と非クロスオブジェクト数式項目の両方があるオブジェクトでこのメソッドをコールすると、非クロスオブジェクト数式項目のみが再計算されます。

recalculateFormulas コールは、SOQL クエリの制限にカウントされます。「実行ガバナと制限」を参照してください。

setOptions(DMLOptions)

sObject の DMLOptions オブジェクトを設定します。

署名

public Void setOptions(database.DMLOptions DMLOptions)

パラメータ

DMLOptions
型: Database.DMLOptions

戻り値

型: Void