5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SharePoint リストの複数選択可能な選択肢列やユーザー列がデータテーブルやギャラリーでエラーになる原因と対処法

Posted at

はじめに

ごきげんよう、ゆりみーです。
SharePoint リストの選択肢列やユーザー列で複数選択を許可すると、Power Apps のデータテーブルで「Ojbect」と表示されてしまう現象について解説していきます。

症状

SharePoint リストではこんな感じで複数選択の値がちゃんと表示されているのに
image.png

Power Apps のデータテーブルでは「Object」と表示されてしまって、何が入っているのか分からないし、しかもエラーが発生している💦
image.png

ギャラリーでもエラーが出て、表示されない💦
image.png

原因

データテーブルも、ギャラリーも原因は同じです。
複数選択可能な選択肢列やユーザー列は値をテーブル型で持ちます。
image.png

その為、テキスト型のデータテーブルの列やギャラリー内のラベルでは型が不一致で、エラーになっています。

対処法

まず選択肢列の値がどのように入っているかを見ていきます。
もう1つデータテーブルを作成して、Items プロパティに1つ目のデータテーブルで選択したレコードの複数可の選択肢列を指定します。
image.png

で、フィールドを設定するとこんな感じで値が表示されます。
image.png

ここまでで選択肢の値は Value という列に格納されているというのが分かります。
で1つ目のデータテーブルをよーく見ると、Object と Object の間にカンマがありますね? ここでおそらく値が区切られているというのが推測できます。
image.png

なので、この区切り記号を利用して、選択肢列の値同士を結合し、テーブル型→テキスト型に変換するというのが対処法です。
データテーブルの中で複数選択可能な列を選択し
image.png

Text プロパティを変更します。
image.png

この式では Concat 関数を使用して、選択されている値を結合しています。
image.png
その結果、SharePoint リスト側から見たのと同じ値が取得できるようになりました。

ユーザー列に関しても同じですが、ユーザー列は結構色々な値を持っています。
image.png
image.png
※これでも一部です。

なので、この中から欲しい値を指定しましょう。
データテーブルの中で複数選択を許可したユーザー列を選択して
image.png

Textプロパティを変更します。
image.png
image.png

ギャラリーもラベルのTextプロパティをConcat 関数でいじってあげれば、エラーが解消されます。
image.png

終わりに

表示がおかしいときは大体、型が異なることが多いです。
落ち着いてエラー表示を確認し、型を合わせることに注力しましょう。
それではごきげんよう✨

5
1
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
5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?