この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

readMetadata()

組織から 1 つ以上のメタデータコンポーネントを同期して返します。

構文

1ReadResult = metadataConnection.readMetadata(string metadataType, string[] fullNames);

使用方法

readMetadata() コールは、メタデータを拡張するすべてのコンポーネントの取得に使用します。同一コール内のすべてのコンポーネントは、同じ種類である必要があります。詳細は、Metadata コンポーネントおよびメタデータ型を参照してください。

このコールは同期して実行されます。つまり、コールは、操作が完了したときにのみ戻ります。

バージョン

API バージョン 30.0 以降で使用できます。

権限

クライアントアプリケーションは、「すべてのデータの編集」権限でログインしている必要があります。

メタデータコンポーネント読み込みの基本手順

メタデータコンポーネントを読み込むには、次のプロセスを使用します。

  1. 読み込むコンポーネントのメタデータ型と、読み込む各コンポーネントの fullName を判別します。fullName 項目についての詳細は、Metadataを参照してください。1 つのコールで読み込めるのは同じ型のコンポーネントのみです。
  2. readMetadata() コールを呼び出します。最初の引数で、メタデータ型の名前を渡します。メタデータ型は、describeMetadata() コールで返された値のいずれかと一致する必要があります。2 つ目の引数で、取得するコンポーネントに対応する完全名の配列を渡します。完全名は、listMetadata() コールで返された完全名の 1 つ以上と一致する必要があります。
  3. Metadata コンポーネントの配列が含まれる ReadResult が返されます。返された各 Metadata オブジェクトを、コールで指定したメタデータ型にキャストしてコンポーネントのプロパティを取得します。

サンプルコード —Java

1swfobject.registerObject("clippy.codeblock-1", "9");public void readCustomObjectSync() {
2    try {
3        ReadResult readResult = metadataConnection
4                .readMetadata("CustomObject", new String[] {
5                        "MyCustomObject1__c", "MyCustomObject2__c" });
6        Metadata[] mdInfo = readResult.getRecords();
7        System.out.println("Number of component info returned: "
8                + mdInfo.length);
9        for (Metadata md : mdInfo) {
10            if (md != null) {
11                CustomObject obj = (CustomObject) md;
12                System.out.println("Custom object full name: "
13                        + obj.getFullName());
14                System.out.println("Label: " + obj.getLabel());
15                System.out.println("Number of custom fields: "
16                        + obj.getFields().length);
17                System.out.println("Sharing model: "
18                        + obj.getSharingModel());
19            } else {
20                System.out.println("Empty metadata.");
21            }
22        }
23    } catch (ConnectionException ce) {
24        ce.printStackTrace();
25    }
26}

引数

名前 説明
metadataType string 読み込むコンポーネントのメタデータ型。
fullNames string[] 読み込むコンポーネントの完全名の配列。

上限: 10。

1 つの種類のコンポーネントの配列を送信する必要があります。たとえば、10 個のカスタムオブジェクトの配列または 10 個のプロファイルの配列を送信できますが、両方の種類を混ぜて送信することはできません。

応答

ReadResult