Objectで使用できるSOQLについてご紹介いたしました。ObjectをApexクラスで扱う方法や注意点などをご紹介したいと思います。ObjectをSOQLで取得する方法を知りたい方は前回までのブログをご参照ください。普通のオブジェクトと同じようにSOQLをApexコードに記載して取得可能です。':');動的SOQLも使用できます。Objectのデータ登録や更新にはinsertImmediateを使用します。database.insertImmediate(ph);insertImmediateはレコード単位でDatabase.SaveResultクラスを返却します。そのためレコード単位でエラー検知が可能です。Objectレコードと同じ値を設定してinsertImmediateを行うと、設定したインデックス項目の値に対応するレコードを更新できます。(insertImmediateは実質upsertの処理となります。database.insertImmediate(ph);※insertやupdateのDML操作の場合と違って、以下のような記載ではinsertImmediateを行うことはできません。Objectのデータ削除データを削除する際はdeleteImmediateを使用します。以下のようなエラーが発生するため注意が必要です。deleteImmediateはレコード単位でDatabase.DeleteResultクラスを返却します。insertImmediateと同様にdeleteImmediateもレコード単位のエラー検知が可能です。deleteImmediateもinsertImmediateと同様以下のような記載で削除を行うことはできません。Objectのレコードを扱う際、ロールバック処理を使用できません。insertImmediateやdeleteImmediateを行うとその時点でトランザクションが確定し、対象のレコードに対する操作が完了します。そのためロールバック処理を行おうとするとエラーとなります。(ちなみにImmediateは「即時」の意味を持っています。Database.insertImmediate(ph);Database.rollback(sp);エラー発生前にトランザクションが確定しているので、insertImmediateしたレコードは登録されています。ObjectのinsertImmediateを同時に行うことはできません。database.insertImmediate(ph);以下のinsertImmediateは成功します。ObjectのinsertImmediateを同時に行うことはできません。ObjectのdeleteImmediateを同時に行うことはできません。ObjectのdeleteImmediateを同時に行うことはできません。Objectと標準オブジェクト、カスタムオブジェクトについて同時に操作したい場合は気を付ける必要があります。Objectの項目に参照項目がある場合は特に関連レコードの操作を行いたい場面があると思いますので注意が必要です。最後にここまで記事を読んでいただきありがとうございます。ObjectをApexクラスで扱う方法や注意点について説明いたしました。Objectでできること・できないことについてまとめていきたいと思います。Objectは、セールスフォース上で大量データを保存可能な、通常のオブジェクトとは異なるストレージとなります。本記事ではビッグオブジェクトの概要や特徴、使い方、ストレージ上限の確認方法など詳しく解説します。Objectの特徴」をご紹介いたしました。2024』に参加しました!2024/10/16タイトルとURLをコピーしました。