展開と移行
症状
コンポーネントはビルダーやサンドボックスでは動作するが、本番環境やエンドユーザーが使用した際に失敗する。
よくある原因と対処法
1. ユーザー権限の違い
確認: エンドユーザーは管理者/開発者が持つ権限を持っていない可能性がある。
対処:
実際のエンドユーザーとしてコンポーネントをテストする(システム管理者としてではなく)
オブジェクトおよび項目レベルのセキュリティを確認する
必要に応じて権限を更新する
権限要件を文書化する
例:
❌ 問題:
- 管理者は confidential_notes__c 項目を表示できる
- サポート担当者は表示できない(項目レベルのセキュリティがない)
- コンポーネントがサポート担当者で動作しない
✅ 解決策:
- サポート担当者プロファイルに項目アクセスを付与する
- またはコンポーネントから項目を削除する
- 配備前にサポート担当者としてテストする
2. レコードアクセスの問題
確認: 共有ルールによりユーザーがレコードにアクセスできない。
対処:
組織全体の既定(OWD)を確認する
共有ルールとロール階層を確認する
さまざまなユーザーロールでテストする
まず標準UIでユーザーがレコードを閲覧できるか確認する
例:
❌ 問題:
- OWD: 商談(Opportunity) = 非公開(Private)
- 営業担当は「レコードが見つかりません」と表示される
- コンポーネントはすべての商談をクエリしている
✅ 解決策:
- 営業チーム用の共有ルールを作成する
- またはコンポーネントを OwnerId = 現在ユーザー でフィルタする
- アクセスを確認するために営業担当としてテストする
3. 環境の違い
確認: サンドボックスと本番で設定が異なることがある。
対処:
対象組織にカスタム項目が存在するか確認する
ピックリストの値が一致しているか確認する
自動化(オートメーション)の違いを確認する
本番に近いデータでテストする
例:
❌ 本番での問題:
- Product_Image_URL__c 項目が存在しない
- カテゴリのピックリストに「Software」値がない
- サンドボックスと異なるレコードタイプがある
✅ 解決策:
- まずカスタム項目をデプロイする
- 欠落しているピックリスト値を追加する
- 両方の環境に対応するようにコンポーネントを更新する
- デプロイチェックリストを使用する
4. API バージョンの不一致
確認: 本番組織が古い Salesforce リリースを使っている可能性がある。
対処:
コンポーネントのAPIバージョンを確認する
本番が同じまたは新しいリリースであることを確認する
必要なら本番組織の更新を待つ
古いバージョン向けに互換性のある機能を使用する
5. 管理パッケージのバージョン差異
確認: サンドボックスと本番で Dynamic Components パッケージのバージョンが異なる場合がある。
対処:
両組織でパッケージバージョンを確認する(設定 > インストール済みパッケージ)
本番をアップグレードする サンドボックスのバージョンに合わせる
または本番バージョンで利用可能な機能を使ってコンポーネントを作り直す
デプロイ文書にバージョン要件を記載する
例:
❌ 問題:
- サンドボックス: Dynamic Components v1.5.0
- 本番: Dynamic Components v1.3.0
- コンポーネントは v1.5.0 の新機能を使用している
- デプロイが失敗するかコンポーネントが動作しない
✅ 解決策:
- まず本番パッケージを v1.5.0 にアップグレードする
- その後コンポーネントをデプロイする
デプロイ手順
完全なデプロイ手順については次を参照してください: Dynamic Components のデプロイガイド
事前デプロイチェックリスト
最終更新
役に立ちましたか?