9
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

PowerApps Microsoft Dataverse で、参照型つかわないほうがいいだなんてとんでもない!

Last updated at Posted at 2021-06-05

とある記事で、参照型は使うべきじゃないっていうことが書いてあったので、急遽書きました。
結論いうと、参照型はとても有用なので、ぜひ使いましょう。

とりあえず、テーブルを作ってみる。

記事に合わせてテーブルを作ってみます。
※こっちは会社にしました。

image.png

image.png

image.png

アプリを作ってみる

image.png

問題のボタンを押したときの処理

記事に合わせて以下のように設定します。

Collect(社員,{苗字:TextInput1.Text,名前:TextInput1_1.Text,会社:Dropdown1.SelectedText.Value,保護者:TextInput2_1.Text}

でた。

image.png

なんでこんなことなるの?

参照列に追加可能な DataEntity 型は、Lookupしないと取れません。
※だってデータ型が参照型(Lookup)なんだもん。

会社のLookup

この場合は、Dropdown1 で選択されていますので、以下の関数で取れます。

Dropdown1.Selected

保護者のLookup

保護者は、同一画面で新規登録していますので、登録した結果を変数に入れてあげることで取得することができます。
なので、こんな感じですね。

Set(ParentPostData,Collect(保護者,{苗字:TextInput1_2.Text,名前:TextInput1_3.Text,メールアドレス:TextInput2_1.Text}));

ただし、入れたデータはテーブル型となっているので、レコードを取得する必要があります。

Last(ParentPostData)

ボタンに入れるべき処理はこんな感じ

Set(ParentPostData,Collect(保護者,{苗字:TextInput1_2.Text,名前:TextInput1_3.Text,メールアドレス:TextInput2_1.Text}));
Collect(社員,{苗字:TextInput1.Text,名前:TextInput1_1.Text,部署:TextInput2.Text,会社:Dropdown1.Selected,保護者:Last(ParentPostData)})

image.png

これで、一応登録することができるようになります。

2021-06-05_15h15_34.gif

9
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?