記事の監修
S.Sato
記事の監修
S.Sato
マネジメント&イノベーション事業部 開発部/2グループ グループマネージャー
資格:Microsoft Offiece Specialist Master 2007、ITパスポートなど
2022年よりMicrosoft365とPowerPlatformの案件を担当。
それ以前は業務・Web系システムを要件定義からリリースまでの開発に従事。
IT業界歴15年の経験を活かし、PJを牽引し後続の育成にも力を注ぐ。
趣味は散歩で、思考が煮詰まった際には、近所の緑道を散歩し、新たな発見や自然からのインスピレーションを受けている。
Contents
目次
こんなお悩みはございませんか?
キャンバスアプリからファイルをアップロードしたい
ファイルはドキュメントライブラリではなくSharePointリストに登録したい
キャンバスアプリだけでなくPowerAutomateを活用したい
簡単に解決できます!
キャンバスアプリだけでもSharePointリストにファイルをアップロードすることはできますが、
こちらではPowerAutomateのクラウドフローを使ってファイルをアップロードする方法をご紹介します。
1.事前準備
1-1.SharePointリストを用意する
・事前準備としてSharePointリストを作成します。
・SharePointサイトのホームから「新規」→「リスト」を選択します。
・SharePointサイトのホームから「新規」→「リスト」を選択します。
1-2.SharePointリストを選択する
・テンプレートなどを選びます
※今回は空白のリストを選択します。
※今回は空白のリストを選択します。
1-3.SharePointリストを作成する
・リストの名前を入力後、「作成」を押下します。
1-4.SharePointリスト完成
・SharePointリストが作成できました。
・以上で下準備が完了です。
・SharePointコネクタを選択し、「添付ファイルの追加」を選択します。
・アドレスとリスト名は以前の手順と同じものを使用しID、ファイル名、ファイルコンテンツは前の手順のデータを使用します。
・雷マークを押下すると前の手順のデータを使用することができます。
・以上で下準備が完了です。
2.PowerAutomateでフローを作成
2-1.PowerAutomateでフローを作成する
・PowerAutomateを使い、キャンバスアプリで使用するフローを作成します。
・左のサイドバーから「マイフロー」を選択し、「新しいフロー」から「インスタントクラウドフロー」を選択します。
・左のサイドバーから「マイフロー」を選択し、「新しいフロー」から「インスタントクラウドフロー」を選択します。
2-2.名前とトリガーを選択
・フロー名に一意の名前を入力し、「PowerAppsがフローを呼び出したとき(V2)」を選択します。
・その後、「作成」を押下します。
・その後、「作成」を押下します。
2-3.入力の追加
・フローが作成できました。
・「PowerAppsがフローを呼び出したとき(V2)」を選択し、「パラメーター」から「入力の追加」を選択します。
・「PowerAppsがフローを呼び出したとき(V2)」を選択し、「パラメーター」から「入力の追加」を選択します。
2-4.ユーザー入力の種類の選択
・「ファイル」を選択します。
・次に名前を設定します。
※今回はfileという名前にしました。
・次に名前を設定します。
※今回はfileという名前にしました。
2-5.アクションの追加
・トリガーの下にある+からアクションの追加を行います。
・SharePointコネクタを選択し、「項目の作成」を選択します。
・SharePointコネクタを選択し、「項目の作成」を選択します。
2-6.接続の作成
・初めての場合、サインインが求められることがあります。
・サインインを行うと自動的に接続が作成され、SharePointリストを参照することができます。
・サインインを行うと自動的に接続が作成され、SharePointリストを参照することができます。
2-7.SharePointサイトのアドレスとリストの入力
・ドロップダウンから以下のように入力します。
・サイトのアドレス:事前に作成したリストがあるサイトのアドレスを選択
・リスト名:事前に作成したリストを選択
※SharePointの権限によってはドロップダウンでサイトやリスト名が表示されないことがあります。その場合は手入力URLやリスト名を入力してください。
・次に「すべての表示」を押下してタイトルを表示させます。
・タイトルにはリストのタイトル名として表示させたい名前を入力します。
※今回はテストと入力します。
・サイトのアドレス:事前に作成したリストがあるサイトのアドレスを選択
・リスト名:事前に作成したリストを選択
※SharePointの権限によってはドロップダウンでサイトやリスト名が表示されないことがあります。その場合は手入力URLやリスト名を入力してください。
・次に「すべての表示」を押下してタイトルを表示させます。
・タイトルにはリストのタイトル名として表示させたい名前を入力します。
※今回はテストと入力します。
2-8.添付ファイルの追加
・次に「項目の作成」の下にある+から「アクションの追加」を行います。・SharePointコネクタを選択し、「添付ファイルの追加」を選択します。
2-9.添付ファイルの追加の設定
・次にSharePointコネクタの「添付ファイルを追加」を挿入します。・アドレスとリスト名は以前の手順と同じものを使用しID、ファイル名、ファイルコンテンツは前の手順のデータを使用します。
・雷マークを押下すると前の手順のデータを使用することができます。
・IDには「項目の作成」のID、ファイル名には「PowerAppsがフローを呼び出したとき(V2)」のfile name、ファイルコンテンツにはfile contentBytesを入力します。
2-10.フローの完成
・以上でフローの完成です。
3.キャンバスアプリの作成
※今回では空のキャンバスを選択します。
・左のサイドバーから「データ」を押下し、「データの追加」から「コネクタ」の「SharePoint」を選択します。
・その後、SharePointの接続を選択します。
・接続先が表示されない場合は「接続の追加」を押下してください。
・「SharePoint」もしくは「接続の追加」を選択すると接続方法を求められることがあります。
・その場合は以下の方法から任意のものを選んでください。
・直接接続(クラウドサービス)
・オンプレミスデータゲートウェイを使用して接続
※今回は直接接続を選択します。
・その後、「接続」を押下します。
・接続完了後、メッセージが表示され、データにはSharePointリストが追加されます。
・編集フォームが追加されました。
・データソースが追加されました。
・編集フォームの「フィールド」→「フィールドの追加」→「添付ファイル」→「追加」を押下します。
・添付ファイルカードが追加されました。
・そして編集フォームを削除します。
・その後数式バーに表示されたコードを削除します。
・上記の手順をエラーマークが表示されなくなるまで行います。
3-1.PowerAppsを開く
・PowerAppsを開き、左のサイドバーから「アプリ」を押下し、「新しいアプリ」→「ページデザインで開始する」を選択します。
3-2.ページデザインの選択
・任意のページデザインを選びます。※今回では空のキャンバスを選択します。
3-3.データの追加
・キャンバスアプリが作成されました。・左のサイドバーから「データ」を押下し、「データの追加」から「コネクタ」の「SharePoint」を選択します。
・その後、SharePointの接続を選択します。
・接続先が表示されない場合は「接続の追加」を押下してください。
・「SharePoint」もしくは「接続の追加」を選択すると接続方法を求められることがあります。
・その場合は以下の方法から任意のものを選んでください。
・直接接続(クラウドサービス)
・オンプレミスデータゲートウェイを使用して接続
※今回は直接接続を選択します。
3-4.SharePointサイトとリストの選択
・SharePointリストを選択し、さらにリストを選択します。・その後、「接続」を押下します。
・接続完了後、メッセージが表示され、データにはSharePointリストが追加されます。
3-5.編集フォームの追加
・左のサイドバーから挿入を選び、編集フォームを追加します。
・編集フォームが追加されました。
3-6.データソースの選択
・データソースにSharePointリストを選択します。
・データソースが追加されました。
3-7.フィールドの追加
・次にフィールドの追加を行います。・編集フォームの「フィールド」→「フィールドの追加」→「添付ファイル」→「追加」を押下します。
・添付ファイルカードが追加されました。
3-8.添付ファイル以外の削除
・左のサイドバーからツリービューを選択し、編集フォーム内の添付ファイル_DataCardからDataCardValueを切り取ります。・そして編集フォームを削除します。
3-9.添付ファイルの貼り付け
・画面(Screen1)に前の手順で切り取ったDataCardValueをペーストします。
3-10.エラー箇所の削除
・エラーマークを選択し、「数式バーで編集」を選択します。・その後数式バーに表示されたコードを削除します。
・上記の手順をエラーマークが表示されなくなるまで行います。
4.フローの起動
・その後、「フローの追加」から前の手順で作成したフローを選択します。
・必要に応じてボタンのラベルを変更してください。
・OnSelectに以下のコードを記載します。
フロー名.Run({
フローの引数名:
{
contentBytes:First(添付コントロール名.Attachments).Value,
//添付ファイルのデータをフローに渡すためのプロパティ
name:First(添付コントロール名.Attachments).Name
//ファイルの名前をフローに渡すためのプロパティ
}
});
・これまでの手順通りに行うと以下の画像のようになります。
・これにてアプリは完成になります。
4-1.フローの紐づけ
・左のサイドバーからミートボールメニューを選択し、PowerAutomateを押下します。・その後、「フローの追加」から前の手順で作成したフローを選択します。
4-2.ボタンの追加
・次にフローを起動するためのボタンを追加します。・必要に応じてボタンのラベルを変更してください。
4-3.ボタンにコードを記載する
・ボタンにフローを起動するためのコードを記載します。・OnSelectに以下のコードを記載します。
フロー名.Run({
フローの引数名:
{
contentBytes:First(添付コントロール名.Attachments).Value,
//添付ファイルのデータをフローに渡すためのプロパティ
name:First(添付コントロール名.Attachments).Name
//ファイルの名前をフローに渡すためのプロパティ
}
});
・これまでの手順通りに行うと以下の画像のようになります。
・これにてアプリは完成になります。
5.テスト
・選択が完了した場合は、「開く」を押下します。
5-1.キャンバスアプリを実行
・右上のアプリのプレビューを押下します。
5-2.ファイルを添付
・「ファイルを添付」を押下してアップロードするファイルを選択します。・選択が完了した場合は、「開く」を押下します。
5-3.ファイルをアップロード
・ファイルが表示されたことを確認してボタンを押下します。
5-4.リストの確認
・リストを確認してアップロードが成功しているかを確認します。
6.予告
いかかだったでしょうか。
今回ご紹介した方法では添付ファイルをひとつだけしかアップロードできません。
複数のファイルをアップロードされることを防ぐ場合は添付ファイルコントロールの「プロパティ」→「詳細設定」→「MaxAttachmentSize」の値を1に変更するとアップロードできるファイル数を制限できます。
また、Run関数を使う場合、添付できる1ファイルの容量が70MBまでと若干小さくなりますのでご注意ください。
(SubmitFormやPatchの場合は90MBまで対応しています)※2024年6月検証時点
引用元:
今回ご紹介した方法では添付ファイルをひとつだけしかアップロードできません。
複数のファイルをアップロードされることを防ぐ場合は添付ファイルコントロールの「プロパティ」→「詳細設定」→「MaxAttachmentSize」の値を1に変更するとアップロードできるファイル数を制限できます。
また、Run関数を使う場合、添付できる1ファイルの容量が70MBまでと若干小さくなりますのでご注意ください。
(SubmitFormやPatchの場合は90MBまで対応しています)※2024年6月検証時点
引用元:
Power Appsの添付コントロールからドキュメントライブラリにファイルをアップする|画像コントロールは不要
Microsoftを導入して
コスト効率をよくしたい
Microsoftに関して
気軽に聞ける相談相手が欲しい
Microsoftを導入したが、うまく活用できていない・浸透していない
社内研修を行いたいが
社内に適任者がいない
Bizwindでは、Microsoft導入支援事業などを中心に
IT・DX推進に関する様々なご相談を承っております。
ご相談・お見積りは無料です。まずはお気軽にお問い合わせください。
Ranking
ランキング
Business Efficiency
6月 10, 2024
SharePointとは?SharePointの機能や使い方を徹底解説!
SharePointとは? SharePointとは、マイクロソフト社が提供する企業向けのファイル共有・コラボレーションを行うためのサービスです。 SharePointと比較されるサービスとして、 […]
営業/マーケティング支援
1月 12, 2024
Microsoft Dynamics 365とは?その概要を分かりやすく徹底解説!
Dynamics 365とは? Dynamics 365とは、Microsoft が提供するビジネスアプリケーションです。 Dynamics 365は、企業活動を効率的に進めるために必要な業務システ […]
Business Efficiency
6月 11, 2024
仕事の時短を実現する!エンジニアが教える圧倒的な仕事時短術!
業務効率化とは 業務効率化とは、少ない労力で仕事の生産性をあげることです。 要は、今まで1時間かかっていた仕事を30分で終われるようにすることです。 そうは言っても、そんな簡単なことではありません。 「日々の業務に一生懸 […]
ビズウインドでは、 様々な課題でお困りの お客様に対して、 無料相談を実施しております。
無料相談に申し込む