[salesforce]メモ&添付ファイルに添付されたファイルのURLを取得する

オブジェクトの、「メモ&添付ファイル」で添付されたファイルを公開URLを使用してダウンロードリンクを作成したい。

添付ファイルの名前などはSOQLで取得できるが、そのファイルへのリンクURLそのものは取得出来ない。
けれど、以下のURLを組み立てる事で、ダウンロードは出来るよう。

https://cs6.salesforce.com/servlet/servlet.FileDownload?file=FILE_ID

これさえわかれば後は公開URLに適用させてやればよい。
その際に参照権限を与えておかないといけない。
その方法は以前書いた画像の表示とほぼ同じ。
[Salesforce]リッチテキストエリアに保存された画像を一般公開する

まずは、サイトの設定から、

表示ラベルをクリックして詳細を表示し、

公開アクセス設定から、

プロファイルの編集を選んで、

添付ファイルをダウンロードさせたいオブジェクトの権限に参照を与えてやる。

後は、項目レベルセキュリティの設定で個別な参照権限の設定が必要かと思ったが、これだけでいけた。

設定後は以下のようなアドレスになる。

http://yourdomain.cs6.force.com/yoursite/servlet/servlet.FileDownload?file=FILE-ID

参考

Trigger to get download link/url from attachments in salesforce?

   このエントリーをはてなブックマークに追加