今回は、ファイルをローカルにダウンロードする方法を紹介します。
ダウンロードアイコンを追加する
SharePointのドキュメントライブラリを参照しているギャラリーに、ダウンロードアイコンを追加します。
ダウンロード関数でファイルをダウンロードする
アイコンのOnSelectに以下の数式を入力することで、選択したファイルをローカルにダウンロードできます。
Download(_SiteURL & "/_layouts/download.aspx?SourceUrl=" & ThisItem.アイテムへのリンク)
_SiteURL変数の部分には、サイトURL(https://xxxxx.sharepoint.com/sites/[サイト名])をそのまま入力してください。
URLの説明
Download関数の引数にThisItem.アイテムへのリンクを設定すると、通常通りファイルがブラウザで開かれてしまいます。
これを防ぐために、以下のフォーマットでダウンロードリンクを作成する必要があります。
フォーマット:
[サイト名]/_layouts/download.aspx?SourceUrl=[アイテムのリンク]
例:
Sign in to your account[サイト名]/_layouts/download.aspx?SourceUrl=https://xxxxx.sharepoint.com/sites/[サイト名]/[フォルダ]/[ファイル名].拡張子
先述したとおり、Download関数の引数にこのURLを入力することでファイルをダウンロードするように指定することができます。
Launch関数との使い分けがよくわからない
リンクを開く関数にLaunch関数がありますが、この方法ではDownload関数の代わりにLaunch関数を使用しても同様にダウンロードが可能です。
Docsも曖昧なことしか記載がなかったので、Download関数とLaunch関数の違いに詳しい方がいたら教えてください。
参考サイト
SharePoint Online や OneDrive for Business でファイルを直接ダウンロードさせる共有リンクの作り方
ダウンロードリンクの作成方法だけでなく、共有リンクの構成なども勉強になりました。
共有リンクを活用すればLaunch関数やDownload関数など、Power Apps上での共有の幅が広がりますね。
SharePoint OnlineのドキュメントライブラリのダウンロードURLの作り方
ダウンロードのためのリンクを開発者モードで取得する方法です。
コメント