メタデータ型のコンポーネントのリスト
listMetadata ターゲットは、メタデータコンポーネントに関するプロパティ情報を取得します。このターゲットは、package.xml の個々のコンポーネントを、取得したり特定のメタデータ型の概要を確認したりするために識別する場合に役立ちます。たとえば、このターゲットを使用して、すべての CustomObject コンポーネントまたは Layout コンポーネントの名前のリストを返すことができます。さらに、この情報を使用してコンポーネントのサブセットを取得できます。<sf:listMetadata> ターゲットごとにパラメータを設定できます。
| 項目 | 説明 |
|---|---|
| username | sessionId が指定されていない場合は必須です。ログインに使用する Salesforce ユーザ名。この接続に関連付けられるユーザ名には、「メタデータ API 関数を使用したメタデータを変更」権限が必要です。 |
| password | sessionId が指定されていない場合は必須です。このプロジェクトに関連付けられた組織にログインするために使用するパスワード。セキュリティトークンを使用している場合は、パスワードの最後に 25 桁のトークン値を貼り付けます。 |
| sessionId | username および password が指定されていない場合は必須です。有効な Salesforce セッションの ID または OAuth アクセストークン。セッションは、ユーザがユーザ名とパスワードを使用して正常に Salesforce にログインした後に作成されます。新しいセッションを作成するのではなく既存のセッションにログインする場合は、セッション ID を使用します。または、OAuth 認証のためのアクセストークンを使用します。詳細は、Salesforce ヘルプの「OAuth によるアプリケーションの認証」を参照してください。 |
| serverurl | 省略可能。Salesforce サーバの URL (空白の場合、デフォルトは login.salesforce.com)。Sandbox インスタンスに接続するには、この値を test.salesforce.com に変更します。 |
| metadataType | 必須。プロパティ情報を取得するメタデータ型の名前は、カスタムオブジェクトの場合は CustomObject、カスタムレポートの場合は Report のようになります。StandardValueSet メタデータタイプはサポートされていません。サポートされているデータ型を確認するには、『メタデータ API 開発者ガイド』の「メタデータ型」の章を参照してください。 |
| folder | コンポーネントに関連付けられたフォルダ。この項目は、Dashboard、Document、EmailTemplate、Report などのフォルダを使用するコンポーネントでは必須です。 |
| apiVersion | 省略可能。メタデータに使用する API バージョン。デフォルト値は 56.0 です。 |
| resultFilePath | 省略可能。結果を保存する出力ファイルのパス。デフォルトの出力はコンソールです。ファイルへの出力を指定すると、package.xml マニフェストファイルの関連情報を抽出しやすくなります。 |
| trace | 省略可能。デフォルトは false です。SOAP 要求と応答をコンソールに表示します。このオプションを選ぶと、ログイン時のユーザのパスワードがプレーンテキストで表示されます。 |
CustomObject など、1 つのメタデータ型のコンポーネントのプロパティ情報を取得するには、<sf:listMetadata> を使用して、build.xml ファイルでターゲットを指定します。
1<target name="listMetadata">
2 <sf:listMetadata
3 username="${sf.username}"
4 password="${sf.password}"
5 sessionId="${sf.sessionId}"
6 serverurl="${sf.serverurl}"
7 metadataType="CustomObject"
8 resultFilePath="listMetadata/list.log"/>
9</target>次の例では、フォルダに存在するコンポーネントを使用しています。
1<target name="listMetadata">
2 <sf:listMetadata
3 username="${sf.username}"
4 password="${sf.password}"
5 sessionId="${sf.sessionId}"
6 serverurl="${sf.serverurl}"
7 metadataType="Report"
8 folder="Marketing_Reports"
9 resultFilePath="listMetadata/list.log"/>
10</target>