初めてのPowerPlatform#2(PowerAppsの自動生成)
PowerAppでSharePointリストから自動入力のPowerAppsを作りましたがどういう仕組みで画面や部品が構成されているか勉強します。
初めてのPowerPlatform#1でBrowseScreen1はアイテム一覧を表示する画面と勉強しました。
詳しくBrowseScreen1の部品について見ていきます。
自動生成された部品のプロパティ
アイテム一覧というだけあって、下記は紅茶と珈琲だけですが登録されたデータ分繰り返し表示する構成になっています。
繰り返し表示するには「ギャラリーコントロール」が使われています。
BrowseGallery1がギャラリーコントロールです。
・Separator1は区切り線
・NextArrow1は選択画面
・Body1は登録者
・Subtitle1は発注数
・Title1は発注品名
このうちBody1、Subtitle1、Title1はラベルコントロールです。
![](https://assets.st-note.com/img/1658272667373-DXTyaH72TM.png?width=1200)
ラベルコントロールはTextプロパティに表示されている値を文字列として表示します。Textプロパティを確認すると「ThisItem.Num」となっています。
ThisItemは「このアイテム」という意味で上位のギャラリーコントロールが繰り返し表示している「データ項目」を指します。
![](https://assets.st-note.com/img/1658272557028-kcU3tv7kRO.png?width=1200)
Subtitle1は発注数を示しているので「ThisItem.Num」を「"発注数" & ThisItem.Num & "個"」に変えることでテキスト表記の変更が可能です。
![](https://assets.st-note.com/img/1658273783266-HNWQM7z0HT.png?width=1200)
自動生成された部品の動作
先ほどまでアイテム一覧に登録されているデータについて確認しましたが
アイテム一覧画面に登録されているボタンについて確認します。
新規入力ボタン
動作は詳細設定─アクションのOnselectプロパティに数式として記載されています。
![](https://assets.st-note.com/img/1658356711392-FBsK5yuN15.png?width=1200)
NewForm(EditForm1);Navigate(EditScreen1, None)
PowerAppsの数式は「;」セミコロンをつなげることで複数の数式を記述可能です。
(1)NewForm(EditForm1)
括弧の中に指定したフォームコントロールを新規入力状態にする構文です。画面「EditScreen1」配下のフォームコントロール「EditForm1」を新規入力状態として動作させます。
(2)Navigate(EditScreen1, None)
1番目の引数に指定した画面を表示する構文です。2番目の引数はアニメーション設定でNoneを指定すると即座に切り替わります。
画面「BrowseScreen1」から画面「EditScreen1」に遷移する処理になります。
削除ボタン
動作は詳細設定─アクションのOnselectプロパティに数式として記載されています。
![](https://assets.st-note.com/img/1658358679341-blacceU455.png?width=1200)
Remove([@HachuList], BrowseGallery1.Selected); If (IsEmpty(Errors([@HachuList], BrowseGallery1.Selected)), Back())
(1)Remove([@HachuList], BrowseGallery1.Selected)
1番目に指定した引数のデータソースのうち、2番目に指定した引数のデータを削除します。第2引数はアイテム一覧で選択されているアイテムを指定しています。
(2)If (IsEmpty(Errors([@HachuList], BrowseGallery1.Selected)), Back())
エラーが無い場合に前のページ(アイテム一覧)に戻るという処理です。
Ifは「条件が合致したときだけ実行する」という命令です。
IsEmptyは「空かどうか」を確認します。
Errorsは発生しているエラー一覧を指します。
次回は自動生成された部品のカスタマイズについて学びます。
この記事が気に入ったらサポートをしてみませんか?