Category Archives: Salesforce

SOQLで項目一覧をサクッと見る

前書き このヘルプ記事以上のことは殆ど書いてないです。 ただあまりの便利さに感激して記事にしたくなっただけ… ユースケース ■FIELDS(CUSTOM)で全カスタム項目を確認する 文字通り特定のオブジェクトのカスタム項目を一覧で確認したいときに利用する。オブジェクトマネージャで見るよりも視認性が高い。… Read More »

Apexでのレコード共有について(初心者向け)

Apexでのレコード共有とはどういうものか? 例えば、ユーザAに特定の取引先レコードBへの参照権限を付与したい場合、ユーザと取引先をそれぞれ参照するAccountShareレコードをInsertすることでユーザAに取引先Bの参照権限を付与することができる。 いつ使うのか? OWD・ロール・共有ルールといった設定ベースでのアクセス権付与では対応しきれないとき。 例えば、レコードを共有したいユーザが共有元レコードの親の親である場合、共有ルールでは対応できないため、Apexによる共有レコードの自動作成がベストプラクティスとなる。 あるいはまた例えば、従業員1万人超えのエンタープライズ企業で毎日のように自社社員・契約社員などの入社やチーム異動がある場合、ユーザの作成・ロールの作成・公開グループの作成・ロールの変更・公開グループの変更・ロールに対する共有ルールの作成・公開グループに対する共有ルールの作成などを管理者が毎回手動で行うのは現実的ではないし、ささいな操作ミスで重大なインシデントに発展しかねない。… Read More »

権限セットを自動で割り当てるロジック

結論 ・権限セットのユーザへの自動割り当ては「ユーザ(User)」と「権限セット(PermissionSet)」の中間オブジェクトである「権限セット割り当て(PermissionSetAssignment)」のレコードを作成することで可能。 ・PermissionSetAssignmentレコードInsertのロジックはApexまたはFlowで作成可能 ・基本的にApexでの作成はアンチパターン(Flowでの作成が推奨) 本記事で紹介する事例 ・「特定のプロファイルのユーザを作成した際」or「ユーザのプロファイルを特定のものに変更した際」に当該ユーザに権限セットを自動で割り当てるロジックを作成する… Read More »

環境調査時に利用することの多い結合系SOQLまとめ

子レコードの紐づいた親レコードだけを取得する ■受注済の商談が紐づいた取引先だけを抽出する ■CustomerSuccessレコード(※カスタマイズオブジェクト)が紐づいた商談だけを抽出する 子レコードが複数ある親レコードだけを抽出する ■複数の商談レコードが紐づく取引先だけを抽出する 子レコードが一つだけ紐づく親レコードを抽出する… Read More »

「attempt to violate hierarchy constraints」エラーについて

エラーの原因 参照項目において、自身のレコードを参照した場合に発生するエラーです。 すなわち、レコードAの参照先としてレコードAを指定することはできません。 エラーの解決策 「自分自身を参照することができない」という仕様はどうしようもないため、同様の内容の異なるレコードを作成してそれを参照するなどの回避策を取る必要があります。 他にも幾つかの回避策があり得るかと思いますが、上記の回避策を取る場合は「種別」カスタム項目やレコードタイプで切り分けると吉です。

Experience Cloud(コミュニティ)のメンテナンスモードについて

前書き Experience Cloud(コミュニティ)のメンテナンス時に、ログイン画面ではなくメンテナンス画面が表示されるようにする方法についてご紹介しますノ 設定手順1(Salesforce標準のメンテナンス画面) ①対象サイトのワークスペースにおいて、「管理」>「ログイン&登録」を順にクリック ②「ログインページ設定」までスクロールし、ログインページ種別を「Visualforceページ」に変更した上で”InMaintenance”を選択… Read More »

B2B Commerce Cloudの開発時にCheckoutFlowで問題発生した際の原因調査方法

結論 原因特定の手法は大きく以下の二つ。 1.フローのエラーメールの内容を精査する(※事前に障害コネクタを無効化しておくこと) 2.チェックアウト診断ツールを利用する フローのエラーメールについてはお馴染みだと思うので、本記事ではチェックアウト診断ツールについて紹介していきたいと思いますノ 設定方法… Read More »