Apex コードのメタデータアクセス
Apex の Metadata 名前空間を使用して、パッケージ内のメタデータにアクセスします。
インストールまたは更新時にパッケージでメタデータを取得または変更しなければならない場合があります。Apex の Metadata 名前空間では、メタデータ型を表すクラスが提供されるほか、メタデータコンポーネントを取得して登録者組織にリリースするのに使用できるクラスが提供されます。次の考慮事項は Apex のメタデータに適用されます。
- Apex コードでメタデータコンポーネントを作成、取得、更新できますが、コンポーネントの削除はできません。
- 現在、Apex 内のカスタムメタデータ型のレコードとページレイアウトにアクセスできます。
- Salesforce によって承認されていない管理パッケージでは、登録者組織で [Apex 経由で未認定パッケージバージョンからメタデータをリリース] 組織設定が有効にされていない限り、登録者組織のメタデータにアクセスできません。この組織設定は、管理パッケージをテストまたはベータリリースする場合に使用します。
インストールまたは更新時にパッケージでメタデータにアクセスする場合、パッケージのインストール前ページで通知する必要があります。登録者組織のメタデータを変更する機能がパッケージにあることを、この通知で顧客に知らせる必要があります。この通知は、アプリケーションのセキュリティレビューの一環として検証されます。
詳細は、『Apex 開発者ガイド』の「メタデータ」を参照してください。