deleteMetadata()
構文
使用方法
deleteMetadata() コールは、メタデータを拡張するすべてのコンポーネントの削除に使用します。同一コール内のすべてのコンポーネントは、同じ種類である必要があります。詳細は、「Metadata コンポーネントおよびメタデータ型」を参照してください。
このコールは同期して実行されます。つまり、コールは、操作が完了したときにのみ戻ります。
API バージョン 34.0 以降、このコールで AllOrNoneHeader ヘッダーがサポートされます。デフォルトでは、AllOrNoneHeader が API バージョンで使用されていない場合、このコールでエラーのない一部のレコードを削除できます (AllOrNoneHeader=false に相当)。AllOrNoneHeader が true に設定されている場合、1 つ以上のレコードでエラーが発生するとレコードは削除されません。
バージョン
API バージョン 30.0 以降で利用できます。
ルールとガイドライン
コンポーネントを削除する場合は、次のルールやガイドラインを考慮する必要があります。
- 指定したコンポーネント内の個別のコンポーネントを削除するには、実行するのに十分なアクセス権を使用してクライアントアプリケーションにログインする必要があります。詳細は、『SOAP API 開発者ガイド』の「データアクセスに影響する要素」を参照してください。
- また、このコンポーネントの親コンポーネントにアクセスする権限も必要となる場合があります。
- 参照整合性を確保するために、このコールはカスケード削除をサポートします。親コンポーネントを削除すると、各子コンポーネントが削除可能な場合は、その子コンポーネントは自動的に削除されます。
メタデータコンポーネント削除の基本手順
メタデータコンポーネントを削除するには次のプロセスを使用します。
- 削除するコンポーネントのメタデータ型と、削除する各コンポーネントの fullName を判別します。1 つのコールで削除できるのは同じ型のコンポーネントのみです。完全名は、listMetadata() コールで返された完全名の 1 つ以上と一致する必要があります。fullName 項目についての詳細は、「Metadata」を参照してください。
-
deleteMetadata() コールを呼び出します。最初の引数で、メタデータ型の名前を渡します。2 つ目の引数で、削除するコンポーネントに対応する完全名の配列を渡します。
削除しようとするコンポーネントごとに、DeleteResult オブジェクトが返されます。このオブジェクトには、操作が成功したかどうか、削除されたコンポーネントの名前、操作が成功しなかった場合は返されたエラーに関する情報が含まれます。