IT Hands-on Lab

小規模組織向けIT環境の構築・運用に役立つ情報を、ハンズオン形式で紹介しています。

【Microsoft Azure AI翻訳×Power Apps】ドキュメント翻訳アプリ2

Microsoft Azure AI 翻訳×PowerApps ドキュメント翻訳アプリ2

前の記事の続きになります。
Microsoft社が提供する、Azure AI 翻訳サービスとローコード開発ツール「Power Platform」のアプリ機能(Power Apps)を使用した、ドキュメント翻訳アプリの作成例を紹介します。
これにより、アプリからアップロードしたファイル(pdfやwordなど)のAIによる翻訳結果ファイルを取得できるようになります。
  • 操作環境:
    • OS:Windows 11
    • Webブラウザー:Edge
  • 使用プラン:
    • Power Apps:Microsoft 365 Business Premium(試用版)
    • Azure:従量課金制
    • Azure AI 翻訳:F0(フリー)

 

 

SharePointリスト用意

SharePointの任意のサイトにアクセスし、左メニューの[サイトコンテンツ]を選択し、[新規>リスト]を選択します。

図表7-1 SharePointリストの作成

図表7-1 SharePointリストの作成

 

今回は移行データがないので[空白のリスト]を選択します。
SharePointリストの名前を適宜入力し、[サイトナビゲーションに表示]のチェックを外し(今回はSharePointリストのデータを直接更新するのではなく、アプリ越しにデータ更新するため)、[作成]を選択します。

図表7-2 SharePointリストの作成の続き

図表7-2 SharePointリストの作成の続き

 

[列の追加]より、前の記事の最初の方の表で整理した取扱い項目を追加します。
なお、表の最後の2行[ID]と[添付ファイル]はシステム内で自動作成される項目ですので、[列の追加]からの設定は不要です。

図表7-3 SharePointリストの列の追加

図表7-3 SharePointリストの列の追加

 

追加した列の設定はこのようになっています。

図表7-4 SharePointリストの列の設定

図表7-4 SharePointリストの列の設定

 

対応必須ではありませんが、作成したSharePointリストの列の順序を整えておきます。
右上の設定アイコンを選択し、[リストの設定]を選択します。

図表7-5 SharePointリストの設定へ

図表7-5 SharePointリストの設定へ

 

自動作成されるタイトルは、今回作成するアプリでは使用しないため、順序を一番最後にします。

図表7-6 SharePointリストの列の順序設定

図表7-6 SharePointリストの列の順序設定

 

これも対応必須ではありませんが、[列の追加>列の表示と非表示を切り替える]を選択し、タイトルを非表示、IDや添付ファイルを表示に変更すると、より管理しやすくなります。

図表7-7 SharePointリストの列の表示設定

図表7-7 SharePointリストの列の表示設定

 

PP管理C 従量課金用アプリ環境作成

Power Appsでアプリを作成する前に、Power Platformの従量課金用の環境を作成します。
Power Platform管理センターにアクセスし、左メニューの[ポリシー>請求ポリシー]を選択します。

図表8-1 PowerPlatform管理センターの請求ポリシー作成へ

図表8-1 PowerPlatform管理センターの請求ポリシー作成へ

 

請求ポリシーの名前を適宜入力し、[次へ]を選択します。

図表8-2 請求ポリシー作成(ポリシー名)

図表8-2 請求ポリシー作成(ポリシー名)

 

Azureサブスクリプションとリソースグループは、前の記事で設定したものを選択し、地域は使用環境に近い場所を選択し、[次へ]を選択します。

図表8-3 請求ポリシー作成(Azureへの関連付け)

図表8-3 請求ポリシー作成(Azureへの関連付け)

 

環境はこの後作成して請求ポリシーに紐づけるため、この画面では何も指定せず、[次へ]を選択します。

図表8-4 請求ポリシー作成(環境)

図表8-4 請求ポリシー作成(環境)

 

設定内容を確認し、問題なければ[請求ポリシーの作成]を選択します。

図表8-5 請求ポリシー作成(レビュー)

図表8-5 請求ポリシー作成(レビュー)

 

[請求ポリシーを更新する]を選択し、新しい請求ポリシーが正常に作成された旨のメッセージが表示されれば問題ありません。

図表8-6 請求ポリシー作成完了の確認

図表8-6 請求ポリシー作成完了の確認

 

左メニューの[環境]を選択し、[新規]を選択します。

図表8-7 新しい環境の作成へ

図表8-7 新しい環境の作成へ

 

以下の通り設定し、[保存]を選択します。

  • 名前:(従量課金であることが分かる環境名)
  • 種類:実稼働(ユーザーにアプリを利用させる場合)
  • Azureの従量課金制とは?:はい
  • 請求ポリシー:(図表8-2から5で作成した請求ポリシー)
*請求ポリシーが選択できない場合、時間を置くか請求ポリシーの一覧画面で更新を行ってから試します

図表8-8 新しい環境の設定

図表8-8 新しい環境の設定

 

Power Apps画面にアクセスし、右上の環境欄を選択し、図表8-8で作成した従量課金用の環境を選択して切り替えます。

図表8-9 PowerAppsで新しい環境への切り替え

図表8-9 PowerAppsで新しい環境への切り替え

 

従量課金用の環境に切り替わりました。
次の工程から、この環境の下にアプリを作成していきます。

図表8-10 新しい環境への切り替え確認

図表8-10 新しい環境への切り替え確認

 

 

 

アプリ実装:基本部分

[新しいアプリ>ページデザインで開始する]を選択します。
今回はキャラリーアプリから作成すると、不要な部品が多くなるため、空のキャンバスの[電話]を選択し、その上の[+]アイコンを選択します。

図表9-1 PowerAppsアプリの作成

図表9-1 PowerAppsアプリの作成

 

左メニューの[データソース]アイコンを選択し、[データの追加]を選択します。
[コネクタ]下に表示される以下のデータソースを追加します。

図表9-2 PowerAppsアプリのデータソースの追加

図表9-2 PowerAppsアプリのデータソースの追加

 

左メニューの[ツリービュー]アイコンを選択し、[新しい画面>フォーム]を選択します。
さらに同じく 、[新しい画面>リスト]を選択します。

図表9-3 PowerAppsアプリの画面の追加

図表9-3 PowerAppsアプリの画面の追加

 

左のツリービューにて追加した画面の名前を変更します(右クリックで[名前の変更]を選択)。

  • 追加したフォームの名前:ScreenCreate
  • 追加したリストの名前:ScreenHistory

また、元々用意されていた画面(Screen1)は不要のため、削除します。
続けて、上メニューの[…>設定]を選択します。

図表9-4 PowerAppsアプリの画面名の設定

図表9-4 PowerAppsアプリの画面名の設定

 

以下の通り、全般設定を行います。

  • 名前:(適宜設定)
  • アイコン・背景色:用途や好みに応じて設定
  • 自動保存:好みに応じてオフ/オンを変更
  • データ行の制限:2000(最大値)

図表9-5 PowerAppsアプリの設定メニュー変更

図表9-5 PowerAppsアプリの設定メニュー変更

 

アプリ実装:履歴画面

左側ツリービューの[ScreenHistory>BrowseGallery1]を選択し、[データソースの選択]が表示されたら、この記事の最初に作成したSharePointリストを選択します。

図表10-1 履歴画面のデータソース選択

図表10-1 履歴画面のデータソース選択

 

左側ツリービューの[ScreenHistory>BrowseGallery1]を選択した状態で、右側プロパティの[ディスプレイ>レイアウト]を選択し、[タイトル、サブタイトル、本文]に変更します。

図表10-2 履歴画面の検索結果のレイアウト変更

図表10-2 履歴画面の検索結果のレイアウト変更

 

フォーム画面のタイトルを選択し、右側プロパティの[ディスプレイ>テキスト]を選択し、アプリ名を入力します(この例では[ドキュメント翻訳])。

図表10-3 履歴画面のタイトル変更

図表10-3 履歴画面のタイトル変更

 

上メニューの[挿入]から、以下の通り部品を追加し、分かりやすい名前に変更します。

  • テキストラベル:2個:lblDateRange、lblHistory
  • 日付の選択:2個:dateStart、dateEnd

図表10-4 履歴画面の検索項目追加

図表10-4 履歴画面の検索項目追加

 

画面イメージのような配置に調整します。
また、日付項目のDafaultDateプロパティの設定は以下の通りとします。

  • dateStart:DateAdd(today(), -365)
  • dateEnd:today()

図表10-5 履歴画面の検索項目の設定

図表10-5 履歴画面の検索項目の設定

 

翻訳履歴の[>]アイコンを選択し、右側プロパティの[ディスプレイ>アイコン]を選択し、[下矢印]を選択します。

図表10-6 履歴画面の検索結果のアイコン変更

図表10-6 履歴画面の検索結果のアイコン変更

 

続けて、このアイコンのサイズや文字の色等も目立つように適宜変更します。

図表10-7 履歴画面の検索結果のアイコンのレイアウト調整

図表10-7 履歴画面の検索結果のアイコンのレイアウト調整

 

翻訳履歴の表示項目を調整します。
一行目はファイル名を表示します。

  • 名前:lblFileName
  • Text:ThisItem.file_name

図表10-8 履歴画面の検索結果の項目変更(ファイル名)

図表10-8 履歴画面の検索結果の項目変更(ファイル名)

 

二行目は作成日時を表示します。

  • 名前:lblCreateAt
  • Text:DateAdd(DateAdd(ThisItem.create_at, TimeZoneOffset(),TimeUnit.Milliseconds), -9, TimeUnit.Hours)
*SharePointのタイムゾーンが世界標準時になっている場合、日本時間に置き換えて表示します

図表10-9 履歴画面の検索結果の項目変更(作成日時)

図表10-9 履歴画面の検索結果の項目変更(作成日時)

 

三行目は作成者と翻訳後言語を表示します。

  • 名前:lblCreateUserAndLanguage
  • Text:If(IsBlank(ThisItem.create_user),"",Office365ユーザー.UserProfileV2(ThisItem.create_user).displayName) & " / " & ThisItem.language
*作成者はSharePoint上UPNを格納しますが、アプリ上はdisplayNameに変換して表示します

図表10-10 履歴画面の検索結果の項目変更(作成者,翻訳後言語)

図表10-10 履歴画面の検索結果の項目変更(作成者,翻訳後言語)

 

左側ツリービューの[ScreenHistory>BrowseGallery1]を選択し、[Items]プロパティを以下の通り設定します。

Sort(
  Filter([@ドキュメント翻訳],
    TextSearchBox1.Text in file_name &&
    dateStart.SelectedDate <= DateAdd(create_at, -9, TimeUnit.Hours) &&
    DateAdd(create_at, -9, TimeUnit.Hours) <= dateEnd.SelectedDate &&
    User().Email = create_user
  ),
  ID,
  If(SortDescending1, SortOrder.Ascending, SortOrder.Descending)
)
*SharePointのタイムゾーンが世界標準時になっている場合、日本時間に置き換えて比較します

図表10-11 履歴画面の検索ロジック変更

図表10-11 履歴画面の検索ロジック変更

 

最後に、右上のアイコンを選択したときの動きを設定をします。
更新アイコンの設定は以下の通りとします。

  • OnSelect: Refresh([@ドキュメント翻訳])

図表10-12 履歴画面の検索ロジック変更

図表10-12 履歴画面の検索ロジック変更

 

作成アイコンの設定は以下の通りとします。

  • OnSelect: Navigate(ScreenCreate, ScreenTransition.None)

なお、並べ替えアイコンの設定は変更不要です。

図表10-13 履歴画面の作成アイコン設定

図表10-13 履歴画面の作成アイコン設定

 

次の記事に続きます。

 

 

当ブログ内の連載記事

elmgrn.hatenablog.com

elmgrn.hatenablog.com

elmgrn.hatenablog.com