保存とアクティベーションの問題
コンポーネントが保存されない
症状
保存ボタンをクリックしても変更が保存されない、またはエラーが表示されます。
よくある原因と対処法
1. 必須フィールドが不足している
確認: コンポーネント名やその他の必須プロパティが入力されている必要があります。
解決策:
コンポーネントに一意の名前が付いていることを確認する
すべての必須プロパティが設定されていることを確認する
ビルダー内の赤いエラー表示を確認する
2. 無効な構成
確認: プロパティ値に構文エラーがある場合があります。
解決策:
特定のフィールドに対するエラーメッセージを確認する
データソース構成のSOQL構文を確認する
フィールドのAPI名が正しいことを確認する
まずDeveloper Consoleでクエリをテストする
3. メタデータAPIの制限
確認: コンポーネントが大きすぎるか複雑すぎる可能性があります。
Salesforceの制限を理解する:
Dynamic ComponentsはSalesforceのカスタムメタデータレコードとして保存され、よく設計された構造を持っています:
コンポーネントの格納アーキテクチャ:
コンポーネント定義フィールド(JSON):コンポーネントの構造を格納します
クエリ構造フィールド:データソース構成を格納します
スタイリング構造フィールド:CSSやスタイルルールを格納します
インタラクション構造フィールド:アクションやイベントロジックを格納します
各フィールドは131,072文字の制限があるLong Textフィールドです。
サイズ制限に達することがめったにない理由:
コンポーネントの各側面に専用フィールドがあるため、制限を超えるには非常に大きく複雑なコンポーネントが必要です:
何千もの入れ子要素
何百ものデータソース
莫大な量のカスタムCSS
非常に複雑なインタラクションチェーン
より一般的な問題(サイズに関連しない):
「大きすぎるまたは複雑すぎる」エラーは、実際にはサイズ制限ではなく、むしろ次のような原因の場合が多いです:
メタデータAPIのタイムアウト - Salesforceが保存操作のタイムアウトを発生させる(コンポーネント自体が大きすぎるわけではない)
同時デプロイの競合 - 他のメタデータ操作が保存をブロックしている
組織のパフォーマンス問題 - Salesforceの全般的なパフォーマンス低下
実際の警告サイン:
保存操作が継続的に30秒以上かかる
保存時にタイムアウトエラーが発生する(「サイズ超過」エラーではない)
再試行で成功する断続的な失敗
実際の対処法:
本当にタイムアウトエラーが表示される場合:
待ってから再試行する(多くの場合自動的に解決します)
同時デプロイがないか確認する
負荷の少ない時間帯に試す
継続的に失敗する場合はサポートに連絡する
コンポーネントが実際に複雑すぎる場合:
「最大サイズを超えています」という具体的なエラーが表示されます
現行のアーキテクチャではこれは非常に稀です
エラーメッセージで明示的に指示されている場合のみ、複数のコンポーネントに分割してください
ベストプラクティス:
サイズを懸念して事前にコンポーネントを簡素化しないでください。アーキテクチャは複雑さをよく扱います。サイズに関する具体的なエラーが発生した場合や保存操作が継続的にタイムアウトする場合にのみ簡素化してください
4. 同時デプロイの競合
確認: Dynamic ComponentsはSalesforceのカスタムメタデータとして保存されます。別のデプロイやメタデータ操作が同時に行われていると、保存操作がブロックされることがあります。
解決策:
数分待ってから再度保存を試みる
設定 > デプロイステータスでアクティブなデプロイを確認する
予定されたデプロイやリリース中の保存は避ける
頻繁に競合が発生する場合は管理者と調整する
注意:大きなコンポーネントは保存に30〜60秒かかることがあります - 我慢して複数回保存をクリックしないでください
競合を引き起こす一般的なシナリオ:
変更セットのデプロイが行われている
マネージドパッケージのインストールやアップグレード
別のユーザーが保存している他のDynamic Components
Metadata API操作が実行されている(例:VS Code、workbenchから)
メタデータをデプロイするスケジュールされた自動化
5. ブラウザの問題
確認: ブラウザのキャッシュや拡張機能が干渉している可能性があります。
解決策:
ブラウザのキャッシュをクリアする
ブラウザ拡張機能を無効にする
別のブラウザを試す
ブラウザコンソールでJavaScriptエラーを確認する(F12)
Lightningページにコンポーネントが表示されない
症状
Dynamic Componentは作成されたが、Lightning App Builderのコンポーネント一覧に表示されない。
よくある原因と対処法
1. コンポーネントが有効化されていない
確認: コンポーネントは使用前に有効化する必要があります。
解決策:
Dynamic Componentsビルダーでコンポーネントを開く
「有効化」ボタンをクリックする
有効化の確認を待つ
Lightning App Builderを更新する
2. 間違ったブリッジコンポーネントを使用している
確認: Lightningページの場合は「AX - Dynamic Component」ブリッジコンポーネントを使用してください。
解決策:
Lightning App Builderで「AX - Dynamic Component」を見つける
ページにドラッグする
コンポーネント名のドロップダウンで作成したDynamic Componentを選択する
必要に応じて表示をカードに設定する
3. ドロップダウンにコンポーネント名が表示されない
確認: コンポーネントが完全に有効化または保存されていない可能性があります。
解決策:
Dynamic Componentsアプリでコンポーネントが「Active」と表示されていることを確認する
コンポーネントを一度無効化して再度有効化してみる
ブラウザを完全にリフレッシュする(Ctrl+Shift+R または Cmd+Shift+R)
有効化前にコンポーネントが正常に保存されたことを確認する
最終更新
役に立ちましたか?