テラスカイからも多くのメンバーが参加してきました。分かり易くまとめた記事からマニアックな記事まで投稿されています。参加された方も参加できなかった方も是非ご覧ください。SkyOnDemandでサイズの大きいファイルをダウンロードする方法をご紹介したいと思います。サイズの大きいファイルに気を付けようSalesforceのファイルをダウンロードする方法については、以前執筆した「Salesforceのファイルをアップロード/ダウンロードしてみよう」でご紹介していました。以前の記事では、読み取り系コンポーネントの「ファイル出力設定」を使用して簡単にファイルをダウンロードすることができましたが、サイズの大きいファイルを扱う場合は注意が必要です。使用しており、ファイルサイズに比例して多くのメモリを必要とします。(一例として、30MBファイルのダウンロードでおよそ600MB弱のメモリを使用)万が一、メモリが枯渇してしまった場合にはダウンロードに失敗するなど連携処理への影響が考えられます。使用して解決してみたいと思います。APIはその中でも軽量に動作する特徴があります。APIに比べメモリ枯渇のリスクが少なくなります。APIを実行する場合、RESTアダプタを使用します。RESTアダプタは汎用的なアダプタとなっており、様々なRESTfulサービスへリクエストを送ることができます。RESTアダプタの設定手順100MBのファイルをChatterに投稿しておきました。このファイルをSkyOnDemandでダウンロードする設定を行ってみたいと思います。URLは、下記のように設定します。組織が所属するインスタンス名(apなど)を指定します。スクリプト変数の宣言と値の代入デザイナに移り、まずは次の2つのスクリプト変数(文字列型)を宣言します。ダウンロードするファイルID次に、このスクリプト変数へ代入する値を取得します。今回は、Salesforceアダプタのデータ読み取り(クエリー)を使用します。Chatterで投稿したファイルはコンテンツドキュメントに格納されていますが、ここでは該当のファイルのIDのみを取得します。取得したファイルIDと、セッションIDをそれぞれスクリプト変数へ代入します。Salesforceアダプタの各コンポーネントには、コンポーネント変数「session_id」があり実行時に使用したセッションIDが格納されています。実行RESTアダプタの「GET実行」コンポーネントを使用します。【必須設定】パスの一部には、スクリプト変数「file_id」を代入指定しています。【レスポンス設定】レスポンスデータをファイルとして出力するように指定します。【ヘッダ設定】AuthorizationヘッダにBearerトークンとしてセッションIDを指定します。APIを実行することになります。${session_id}【認証設定】セッションIDによる認証となるため、ここでの認証設定は必要ありません。プロセスフローの設定と実行プロセスフローを繋げて、実行してみます。返され、「/data/testfile」が作成されていることが確認できます。APIでは他のストレージのファイルも扱うことができます。添付ファイルであればURLのパスは「/sobjects/Attachment/attachment_id/Body」となり、ドキュメントであれば「/sobject/Document/document_id/Body」です。開発者ガイド」などを参照してください。Salesforceには様々なAPIが用意されているため、目的によって取捨選択することが必要とされます。大きいファイルのダウンロードをご検討されている場合も、ぜひSkyOnDemandをお試しください。~Salesforceへ大容量のファイルをアップロード関連するキーワードSkyOnDemandTerraSkyBaseについてTerraSkyBaseはクラウドサービスを手掛ける株式会社テラスカイのコンテンツプラットフォームです。