Salesforceで「ファイルの一括ダウンロードはできないのかな?」と思ったことはありませんか。実は標準機能で一括DLは実現できません。
しかし、AppExchangeの「Enhanced Files List」か「Smart Files Download」を入れれば、無料で一括ダウンロード機能を使用できます。
両ツールにはそれぞれに一長一短があります。この記事では、実際にインストールして触ってみた調査結果を詳しくお伝えします。
標準の「ファイル」と「メモ&添付ファイル」の機能
まず、標準コンポーネントの「ファイル」と「メモ&添付ファイル」の機能を整理していきます。
Salesforceの「ファイル」と「メモ&添付ファイル」は、どちらもSalesforceのストレージにファイルを格納し、特定のオブジェクトのレコードに関連付ける形で保存できる機能です。
例えば、商談に見積PDFや申込書PDFを添付したり、ケースに機器の故障の現場写真を添付したり、様々な使い方が出来ます。
これらの機能は一括アップロードには対応していますが、一括ダウンロードは仕様上できません。
機能の詳細
下図は「ファイル」と「メモ&添付ファイル」コンポーネントを並べて表示した画面です。見た目に大きな違いはありません。特徴としてはリスト種別を拡張リストにしていますが、複数行の表示にはならず、小アイコンで表示されています。
リスト種別を「基本リスト」にしたところ、複数行で表示することが出来ています。
表示可能な行数については、実際に試してみたところ6行で、それ以上は「すべて表示」を押さないと閲覧できません。
標準の「ファイル」と「メモ&添付ファイル」の違い
次に、標準の「ファイル」と「メモ&添付ファイル」の違いを確認していきます。
ファイル
下図はファイルコンポーネントの「ファイルを追加」ボタンを押した際の挙動です。Salesforceのライブラリに保存されているファイルを追加することが出来ます。ローカルからファイルをアップロードすることも出来ます。
メモ&添付ファイル
下図はメモ&添付ファイルの「ファイルをアップロード」ボタンを押したときの挙動です。ローカルのフォルダが立ち上がり、ファイルを選択する形になります。ファイルコンポーネントとは違い、Salesforce内にすでにアップされているファイルをレコードに添付するような使い方は出来ません。
一方で、メモ&添付ファイルにだけ存在する機能として、メモ機能があります。アクションボタン「新規メモ」を押すと下図の画面が立ち上がります。
入力して保存すると、下図の赤枠部分のように、メモ&添付ファイルコンポーネントにのみ、メモが追加されます。
以上が標準の「ファイル」と「メモ&添付ファイル」の違いとなります。続いて、ファイル一括ダウンロードを実現するAppExchange2つについて詳しく解説していきます。
AppExchange「Enhanced Files List」でファイルを一括ダウンロード
下図はEnhanced Files Listを実際にインストールして、Lightningレコードページにコンポーネントを配置した状態です。標準のファイルコンポーネントからにアップロードしたファイルが、こちらにもしっかりと反映されています。
特徴的なのは、右上に様々なアイコンが表示されている点です。ボタンごとの詳しい機能を見ていきましょう。
アップロード
アップロードボタンを押すと、アップロード画面が立ち上がります。標準のファイルと同じで、ローカルからアップする挙動になるようですね。
一括ダウンロード
一括ダウンロードボタンを押すと、選択したファイルか、すべてのファイルを一括してダウンロードできることが分かります。それではダウンロードしてみます。
選択DLでも、全件DLでも、ZIPで保存されます。
ダウンロードできています。しかし、非常に残念なのは、ファイル名が引き継がれておらず、ランダムなファイル名に変換されてしまっている点です。ここが改善されるといいのですが、非常に残念過ぎる仕様ですよね。
…続いてほかのボタンも見ていきます。
フィルター
フィルター機能は大量ファイルをアップしている組織にとってはかなり便利ですね。ファイルをファイル名で検索しようとするとグローバル検索になるので、それをレコードに添付したファイルの中からのみ実施できるのは神です。
ファイル閲覧
次はファイル閲覧ボタンです。この機能もすごいですよ。
なんと画像を左右にスライドさせて次々に閲覧することが可能です。
標準のファイルやメモ&ファイルコンポーネントでは、開いて閉じてを繰り返さないといけないのでフラストレーションが溜まりますが、Enhanced Files Listでは、こういったユーザーからすれば有って当たり前の機能を保管してくれる点が非常に助かります。
ちなみに下図は標準のファイルを開いた画面です。左右の三角矢印が無いのがわかると思います。
コンポーネント制御
下図はLightningアプリケーションビルダーの右サイドメニュー、Enhanced Files Listコンポーネントの制御メニューになります。
コンポーネント名やコンポーネントアイコンが変更できます。また、ここまで紹介した各機能ボタンを表示させるかどうかを選択できます。1ページに表示するレコード数を選択できる箇所もあるため、標準の6ファイルまで、という制約を突破できますね。
ん…?なんだこれは。メモも表示できるってこと?
できないじゃないか…メモは表示できないようです。
ん…?子レコードのファイルを表示できるってこと??
取り急ぎDev環境で契約OBJから商談への参照を貼って、ファイルをアップロードしてみました。
出てこないですね…期待が膨らんだだけに、残念です。
ですが、これ以外の機能だけでも十分有用なアプリであることがご理解いただけたと思います。
Enhanced Files Listのインストールと設定方法
Enhanced Files Listを入手するためには、AppexChangeのEnhanced Files Listにアクセスします。Get it nowボタンを押して、インストールします。
※AppExchangeからのインストール方法はどのアプリも共通ですので、こちらの記事のこの部分をご参照ください。
Enhanced Files Listの設定方法
インストール後、権限セットが同梱されていますので、権限セットを忘れず付与します。これが無いとコンポーネントが表示されないです。
Lightningアプリケーションビルダーを開き、検索窓に「enh」と入れるとEnhanced Files Listコンポーネントが出てきますので、ドラッグ&ドロップして配置し、詳細設定をおこないます。
Lightningアプリケーションビルダーの右サイドメニューから、Columnをクリックすると、下図のように項目の表示ラベルを選択できるようになっています。
ここで選択した項目が表示されます。表示できる項目(列)は10列までです。あとは任意で設定いただければOKです。
AppExchange 「Smart Files Download」でファイルを一括ダウンロード
Enhanced Files Listを試している際に、ダウンロードしたファイルのファイル名がランダムな英数字に変換されてしまい、手元でファイル名を見て個別に操作したいというニーズに応えられないということがありました。そこで無料のものに限定して色々検索している中で発見したのがSmart Files Downloadです。
それでは機能を見ていきましょう。こちらがコンポーネントを配置した画面です。アクションボタンの数はEnhanced Files Listよりも少ないです。
まずは試しに、チェックボックスでファイルを選択し、Downloadボタンを押してみます。
すると、ファイルがバラでDLできました。ファイル名も保持されていますね。
次に、Download as ZIPボタンを押してみます。ZIPを展開してみると、ファイル名が変換されてしまいました。
Download as ZIPではなく、Downloadボタンを使用すれば、ファイル名を保持したまま一括DLが出来るということが分かりました。
ファイル数が10数個くらいだったらポチポチ選択して一括DLすればよさそうです。一方で、ファイル数が数10ファイルになってくるとSmart Files Downloadはフィルター機能がないので、運用が厳しくなってきそうな印象を持ちました。
右端の▼アイコンをクリックすると、アップロードの機能が出てきました。
Smart Files Downloadの機能としてはこれだけです。Enhanced Files Listをメインで使用しつつ、ファイル名を保持したまま一括DLしたい場合にはその時だけSmart Files Downloadを使用する、などになりそうです。
その際に、ファイルがぐちゃぐちゃと並んだコンポーネントが複数あるのはUI的に煩雑です。Smart Files Downloadはアクションボタンに配置して、必要な時だけ立ち上げることが出来ますので、その運用がお勧めです。
下図のようにアクションを設定します。ページレイアウトに配置します。
そのうえでアクションボタンを押すと、下図のように画面が開き、ファイル操作が出来ました。
Smart Files Downloadのインストール
Smart Files Downloadを入手するためには、AppexChangeのSmart Files Downloadにアクセスします。Get it nowボタンを押して、インストールします。
Salesforceのストレージ上のファイル操作は色々と課題が多いです。googleドライブ連携は参照しかできないですし、BOX連携はそこそこ費用が掛かります。完全無料ですこし便利に使いたい場合には、本記事でご紹介したAppExchangeが有用と言えます。ご参考になりましたら幸いです。