Apex+JSZipでSalesforceの添付ファイルをZipしてダウンロード
- Dec
- 10
- Posted by Lin
- Posted in APEX, Open Source, Visualforce
Salesforce開発で、帳票や添付ファイルのZipし、一括ダウンロード機能を実装したい時がありませんか。
ApexがZip機能をサポートしてないため、HerokuやAWSなどの外部サービスを経由してZipするのは、 解決策としてよく考えられていますが、 実はSalesforceだけでもファイルZipすることが可能です。
本postはApex+JSZipでの実装方法を紹介します。
処理概要として、以下の感じです。
1.JS側から、WebServiceを呼び出して、対象ファイルのBlob内容をリクエストします。
2.JSZipライブラリで各ファイルをZipします。
3.作ったZipファイルデータをWebServiceに送信して、Documentを新規作成します。
4.Documentダウンロードページに遷移し、ファイルダウンロードします。
早速実装してみましょう。
Zipファイルダウンロードできました~!
ApexだけでSalesforceの添付ファイルをZipしてダウンロード
Enjoy It!
ApexがZip機能をサポートしてないため、HerokuやAWSなどの外部サービスを経由してZipするのは、 解決策としてよく考えられていますが、 実はSalesforceだけでもファイルZipすることが可能です。
本postはApex+JSZipでの実装方法を紹介します。
処理概要として、以下の感じです。
1.JS側から、WebServiceを呼び出して、対象ファイルのBlob内容をリクエストします。
2.JSZipライブラリで各ファイルをZipします。
3.作ったZipファイルデータをWebServiceに送信して、Documentを新規作成します。
4.Documentダウンロードページに遷移し、ファイルダウンロードします。
早速実装してみましょう。
添付ファイルデータ用意
Accountに二つ添付ファイル(apex PDF.pdfとapex Word.docx)を新規作成します。
ApexクラスWS_Util、WS_ZipUtil作成
WS_Util.cls
WS_ZipUtil.cls
jQuery、JSZip静的リソース作成
jQueryとJSZipのJSファイルをダウンロードし、静的リソースに追加します。VFページ作成
動作してみます


SourceCode
Download from Github追記更新
ApexコードだけでファイルのZip実装方法を探していますか? 下記の投稿をご参照いただければと思います。ApexだけでSalesforceの添付ファイルをZipしてダウンロード
Enjoy It!
最近の投稿
- Salesforce DevTools利用者が10,000名達成!ありがとう!
- Lightning ComponentのApex側とデータ通信にPromiseを活用しよう
- Pipeline for Salesforce – Salesforceメタデータ移行負荷、移行ミスを最小限に
- Salesforce Smart Importer – 1ドラッグでExcel、CSVをSalesforceにインポート、ClassicとLightning両方利用可能!
- Visual Studio CodeでSalesforce DXの開発環境を構築
Top Posts
- Sublime Text 3でSalesforceの爆速開発環境を構築 - 102.9K views
- Salesforce DevTools – Saleforce.com開発者向け強力なChrome拡張機能 - 102.1K views
- Salesforce一括編集 (Chrome拡張機能) -標準リストビューで一括新規, 更新, コピー, 削除, ClassicとLightning両方使える! - 65.5K views
- Date format && DateTime format - 58.7K views
- スケージュール可能なApex一括処理バッチの実装 - 51.6K views
カテゴリー
- APEX
- アプリ
- Custom Label
- Custom Metadata
- Custom Setting
- Design & UI
- 交流会
- Heroku
- iOS & Object-c
- Lightnint Component
- Linux & Mac OS
- Metadata API
- Node.js
- Open Source
- Other
- PHP Framework
- Release Notes
- REST API
- Salesforce
- Salesforce DX
- SOQL
- Tesforce
- Tooling API
- Unit Tests
- Validation Rule
- Visualforce
- WordPress