大量のファイルをエクスポートする方法

いい回答があったので、覚えを作っておきます。

[mass export files](https://trailblazers.salesforce.com/answers?id=9063A000000E63jQAC)


1. データエクスポートサービス（毎週のデータエクスポート）をセットアップして、ファイルをエクスポートします。[SalesforceファイルとSalesforceCRMコンテンツのドキュメントバージョンを含める]をオフにします。

2. 結果として複数のzipファイルが存在する可能性があります。最初のzipファイルには、Account.csv、Contact.csv、ContentVersion.csvなどのエクスポートされた各オブジェクトのすべてのCSVが含まれます。
3. zipファイルには、「ContentVersion」というフォルダーも含まれます。
4. ContentVersion.csvファイルをデータエクスポートzipファイルから別のフォルダーに抽出します。
ContentVersion.csvファイルには、次の列が必要です。
タイトル
説明
VersionData
PathOnClient
OwnerId
FirstPublishLocationId
RecordTypeId
OldContentVersionId
タイトル
説明
OwnerIdに
RecordTypeId
OldContentVersionId
VersionData
PathOnClient（あなたがファイルにコンピュータ上のパスに変更します（たとえば、c：\ファイル\ testfile.pdf））
FirstPublishLocationId（これは、関連のIDに変更されますアカウントIDなどのレコード）

5. 次に、各zipファイルのContentVersionフォルダー内のアイテムを抽出します。これらは実際のドキュメントそのものです。それらをすべてコンピューター上のフォルダーに抽出します。
6. 抽出したドキュメントの名前を変更します。抽出されたドキュメント名はSalesforceIDになります。batファイルを使用してこれらのドキュメントの名前を変更して機能を実行できますが、名前の前にSalesforce IDか、そのアカウントの重複するドキュメント名に対応できる一意の名前を付ける必要があります。
7. あなたがのContentVersion項目を抽出したフォルダにバッチファイルを作成します。batファイルは次のようになります。各行は、現在のフォルダから新しいフォルダへのアイテムの移動であり、SalesforceIDからドキュメントに名前を付けたい名前にアイテムの名前を変更します。組織番号を取得し、それをFileTypeに連結されたドキュメントタイトルに連結しました。FileTypeは、ContentDocumentアイテムから取得されました。 
move "0680L000005PrlQQAS" "C：\ Salesforce \ Files \ 0300_SummaryReport.docx"
move "0680L000005PrkDQAS" "C：\ Salesforce \ Files \ 0288_StrategicPlan.doc"
 
これで、ドキュメントがSalesforceからコンピューター上のフォルダーにエクスポートされました。

# 関連する情報

+ [APIを介して電子メールの添付ファイルを抽出する最適な方法](https://trailhead.salesforce.com/en/trailblazer-community/feed/0D54S00000IRPOo)
+ [How to backup all Notes](https://trailhead.salesforce.com/en/trailblazer-community/feed/0D54S00000HEZBr)
+ [データエクスポート時間について](https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007LTJDySAP)

:::note
6.データのエクスポート完了についてのサービスレベル契約 (SLA) はありますか?
データのエクスポートに関する SLA はありません。要求が完了するまで 1 週間以上かかる可能性があります。

7.データのエクスポートに時間がかかる理由は?
データのエクスポートジョブは、キューに登録されて、先入れ先出し方式で処理されます。これらのキューは、データのエクスポートサイズ (Sandbox とほぼ同じ) に基づいています。トラフィックが多いとエクスポートの配信が遅れ、完了までにかかる時間にも影響します。

エクスポートのサイズとインスタンスのその時点でのトラフィック量によっては、完了までにかかる時間が日単位、または場合によっては週単位で変わる可能性があります。エクスポートの完了にいつもよりも長くかかるか、異常に長くかかっていている場合は、新しいオブジェクトをエクスポート要求に追加していないか、組織が大量のデータのアップロードを最近行っていないかを考えてください。何か別の原因があると疑われる場合は、Salesforce サポートにケースを登録して調査を依頼してください。

8.データのエクスポートを高速化するために何かできることはありますか?
エクスポートファイルのサイズによって、ファイルは異なるキューに入れられます。データ量が少ないエクスポートファイルは小さなキュー、に入り、大きなデータのエクスポートは大きなキューに入ります。

+ 事前に計画する。組織でいくつの要求が発生するかを事前に予測することはできないため、余裕を持って期限前にエクスポートを開始します。
+ 実際にデータが必要となるオブジェクトのみを選定する。エクスポートファイルのサイズを小さくすればファイルは小さなキューに送られ、キューでの待機時間が短縮されるため、エクスポートを高速化できます。
+ エクスポートごとに「画像、ドキュメント、および添付ファイルを含める」と「Salesforce Files および Salesforce CRM Content ドキュメントバージョンを含める」が本当に必要かどうか評価する。たとえば 1 回おき、または毎月 1 回選定するだけで完了時間を短縮できます。
+ 削除されるレコードの数を最低限に抑える。可能なときにごみ箱を空にして、Salesforce サポートに組織に対して物理的削除を実行してもらい、物理削除されるレコードの数を減らすようにします。
+ エクスポートのスケジュール日時を変更する。毎週末にエクスポートをスケジュールする組織が多いため、日時をずらしたり、オフピーク日時を選ぶようにすると待機時間を短縮できる可能性があります。


データのエクスポートに関する FAQ
https://help.salesforce.com/s/articleView?id=000383962&type=1
:::

# ハック方法

+ [Salesforceで容量が大きいファイルを一括ダウンロードする方法](https://trailhead.salesforce.com/trailblazer-community/feed/0D5KX00000PYIhk)

この式を使えばレコードに共有されているファイルを一括でエクスポートできるけど、日本語のファイル名はIdになってしまう。特殊文字もダメみたい

/sfc/servlet.shepherd/version/download/コンテンツバージョンID①/コンテンツバージョンID②/・