Power Appsで質問する前に確認して欲しいこと、質問する時に気をつけて欲しいこと

**第一に質問先のコミュニティ、同僚や社内のサポートチームが定めているルールに従っていただくことは前提**で、Power Appsに関する質問を質問する前に確認して欲しいこと、質問する時に気をつけて欲しいことをまとめます。

上記で挙げた質問先はもちろんですが、**お金を払っているからと言って適当に質問をしていいわけではありません。**（MSのサポートチームとか、ITベンダーとか）

**みんなに優しく、有意義な質問をしましょう。**

## 社会人らしい質問をしましょう

まず、"**社会人らしい質問**"をしましょう。

- **そもそも質問であることが明確にわからない**（社内のチャットにありがち）
- **課題に対して相手に求めるアクションを示していない**
- **どこまで理解していて、何がわからないのかを伝えていない**

これらに一つでも当てはまれば、それは社会人の質問ではありません。

相手への配慮が欠けていますし、**課題解決までの時間が長くなることでお互いの時間を奪ってしまいます。**

<iframe width="560" height="315" src="https://www.youtube.com/embed/sb95W2Ki5ng?start=491" frameborder="0" allowfullscreen></iframe>

### **そもそも質問であることが明確にわからない**・**課題に対して相手に求めるアクションを示していない**

以下の記事でやまさんが例示していますが、「〇〇がエラーで動きません！」だけだと「ふーん」で終わります。

https://qiita.com/yamad365/items/3c63ce41b4c93267389f

社内チャットにありがちですが、「〇〇がエラーで動きません！」だと**報告・依頼・質問のどれに該当するかがわからないので、回答者にどんなアクションを求めているかがわかりません。**

- （報告）エラーが出たよ
- （依頼）エラーが出たから直して欲しい
- （質問）エラーが出たから直し方を教えて欲しい

よっぽどの緊急事態でない限りは、質問は可能な限り具体的に記した上で回答者に希望する回答方法（テキストベース、MTG、etc...）を伝えてあげてください。

どう質問を具体的に書くかは、やまさんの記事を読んでください。 

https://qiita.com/yamad365/items/3c63ce41b4c93267389f

**個人的には以下の要素が含まれた質問だと喜んで回答したくなります。**

```plaintext
■やりたいこと・目的
実現したいこととその目的
■前提条件
データソースやアプリの構成、再現手順など
■調べたこと
参考にしたURL
■試したこと
これまでに試したエラー解消方法など
■現状
画像や動画などで現状を説明
■こうすればうまくいきそう（仮説）
例）
・××を○○すればできそうだと考えていますが、他にいい方法はありますか？
・××を○○すればできそうだと考えていますが、やり方がわかりません。
```

これらの要素を質問に含めるためにやって欲しいこと、気をつけて欲しいことを以降で説明します。

### **どこまで理解していて何がわからないのかを伝えるために、仮説を立てて質問しましょう**

質問者がエラーについての解消方法を質問するケースで、仮説なしと仮説ありの場合でのやり取りの例です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/5c06adaf-4b3e-867f-e134-022211de0cb5.png)

仮説を立てて質問することで**回答者から質問者の認識の差異をフィードバックできる**ため、質問者自身でも回答を考える力が付きます。

その結果質問者の技術レベルが大幅に向上し、**長期的にも課題解決までの時間を大幅に短縮**できます。

https://qiita.com/DEmodoriGatsuO/items/2d3840c22816b2c04a50

## 質問する前に確認して欲しいこと

ここからは仮説を立てるために確認して欲しいことを紹介します。

### 値の確認

値を確認してエラーの原因にあたりをつけてみてください。

#### 確認したい部分をハイライトする

確認したい部分をハイライトすることで、簡単にその部分の値を確認出来ます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/97b778d5-8f47-54fd-1c69-60158bf2549a.png)

ただし、値がテーブルやレコードの場合や数式にエラーがある場合はこの方法で値を確認することができません。

ボタンに一時的に数式をコピーして値を確認するのも有効です。

https://twitter.com/PowerPlatform4/status/1745070370267562259?s=20

#### 適当な変数に確認したい値を格納し、プレビューから確認する

ThisItemやThisRecord、テーブルやレコードなどでは値の確認ができないので、**確認したい値を適当な変数に格納することで値を確認**します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/1354ffdb-ce7e-7d42-bcd4-b6415a4c62da.png)

変数を右クリックし、ビューレコードをクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/0a91554e-b020-ef46-bdc9-974953fe1e13.png)

変数の型や値を確認できます。多少手間ですが、**深い構造のデータも確認することができるので便利**です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/824debd2-9f11-b705-f05a-205326fc30ed.png)

### エラーメッセージの確認

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/d3cd193b-e339-f809-a357-4b02f2dbac13.png)

**赤下線部分にカーソルを合わせると上記のようにエラーが表示されるので、このエラーメッセージを参考にエラーを解決できる場合があります。**

ただし**このエラーメッセージは参考にしかならない点には注意が必要**で、実際このエラーは)が一つ足りないことが原因です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/e989ce5b-9716-92b9-b2ed-86862a7f59af.png)

適度に改行、インデントや空白を入れて見やすいコードにすることで、**エラーが発生しにくく保守性の高いコードになります。**  
インデントはCtrl + } またはTabで右に、Ctrl + { またはShift + Tabで左にインデントできます。

### ググる・ChatGPTに聞く

当然ながら、**質問する前にはググって最低限使用している関数のMicrosoft Learnは読みましょう**。  
他にも素晴らしい記事や動画を共有されている方々がたくさんいらっしゃいますので、検索結果の2ページ目以降も確認してみてください。

とはいえググり方がわからなかったり、実装したいことが具体的すぎてググりにくい場合もあると思います。  
そのような場合にはChatGPTに質問すると効果的です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/00e57c9f-3e90-62c0-a5e4-7b8f9f9e897f.png)

上記の画像のように  
**× 一部実装方法に誤りがあったり  
× 他の言語のコードを生成したり**  
しますが、

**○ 実装する手順  
○ 検索のためにうまく言語化できないような抽象的なこと**  
の回答はググるよりも有効です。

生成されたテキストが合っているかを質問して回答者にフィードバックをもらうのもいいかもしれませんね。

### まずは手を動かせ

たまに「いやそこに書いてること聞く前にやってみればええやん」と感じる質問をされることがあります。

**手戻りが出来ない・工数がかかる、影響範囲が大きいなどの場合を除いて、まずは手を動かしてやってみて、その結果によって質問してください。**  
心配ならテストデータを使えばいいですし、Power AppsやSharePointリストにはバージョン履歴からバージョンを戻す機能があります。

とはいえ判断に困るケースは多くあると思いますので、悩むようであれば質問しましょう。

## 質問する時に気をつけて欲しいこと

### 回答のために必要な情報が見える状態で該当箇所の画像を共有する

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/0affd2db-d327-1d76-0e9f-34f2d816720a.png)

テキストでの質問には限界があるので、該当箇所の画像を添付して質問しましょう。

この時に気をつけて欲しいのが、以下の3つを満たしているかどうかです。

- **ツリービューでエラーが出ている/確認して欲しいコントロールの名前とそのプロパティが見える状態**
- **赤下線にカーソルが合っていて、エラーメッセージが見える状態**
- **可能な限りでアプリの画面も見えるような状態**

この状態を満たしていないと再度スクショを依頼することになる可能性があります。

### 操作手順が複雑になる場合は録画や操作ログを共有する

エラーの発生に一連の動作が必要な場合や操作手順を画像で説明しづらい場合には、録画やステップ記録ツールで操作手順を共有しましょう。

[PowerPoint で画面を記録する - Microsoft サポート](https://support.microsoft.com/ja-jp/office/powerpoint-%E3%81%A7%E7%94%BB%E9%9D%A2%E3%82%92%E8%A8%98%E9%8C%B2%E3%81%99%E3%82%8B-0b4c3f65-534c-4cf1-9c59-402b6e9d79d0)  
[Windows 10 は画面録画機能を標準装備! 動画資料作成に役立つ方法とは](https://www.microsoft.com/ja-jp/biz/smb/column-windows-10-screen-record)  
[問題を再現する手順の記録 - Microsoft サポート](https://support.microsoft.com/ja-jp/windows/%E5%95%8F%E9%A1%8C%E3%82%92%E5%86%8D%E7%8F%BE%E3%81%99%E3%82%8B%E6%89%8B%E9%A0%86%E3%81%AE%E8%A8%98%E9%8C%B2-46582a9b-620f-2e36-00c9-04e25d784e47)

### （中上級者向け）監視（モニター）やテストなどの標準機能の活用

中上級者になると周りに相談できる人が限られてくるので、自己解決する必要があります。

そんな時にググるのはもちろんですが、監視（モニター）やテストなどの標準機能を使うことで難易度の高いバグやエラーを解決できるかもしれません。

[モニターの概要 - Power Apps | Microsoft Learn](https://learn.microsoft.com/ja-jp/power-apps/maker/monitor-overview)  
[Power Apps でテストをしてみる | ドクセル](https://www.docswell.com/s/korune/KEGJ8Z-2022-10-18-203511)

## 回答の後にして欲しいこと

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/9614b293-7867-6433-52ec-99701e819869.png)

### 何らかのリアクションをする

回答が貰えたら「試してみます」や「ありがとうございます」など早めのリアクション、回答の結果を試した後には「うまくいきました！」や「うまくいかなかったので、追加で質問させてください」などの結果の共有をお願いします。

**回答を貰うだけ貰っておいて感謝も何もないと、次は回答したくないな〜と感じてしまいます。**

しょうもない社会人だと思われないためにも、その辺しっかりやっていきましょう。

### 可能な限りオープンな場所で結果の共有

**質問をすることは恥ずかしいことではない**ので、質問は個人のチャット宛ではなくオープンなチームのチャネルや掲示板などで行うようにしましょう。

同じツールを使っていると、かなりの確率で同じような壁にぶち当たります。  
**オープンな場所で質問と解決までの過程を残しておけば、次に同じ課題に直面した方は簡単に壁を越えられる**ようになります。

冒頭述べたように**質問はクローズドで、回答はオープンな場所で**お願いします。

### ぜひ！アウトプットを！

**今のあなたの視点でしか出来ないアウトプットがあります。**

社内であれば**チームや社内コミュニティでの共有・発表**、社外なら**ブログや登壇など**でアウトプットしましょう。  
あとこれはナイショなんですが、**転職後に前職で得たナレッジを見返せるので未来の自分のためにもアウトプットした方がいいと思います。**

## 回答者の立場でも思いやりを

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618051/46c4cf2d-859a-1c07-53a2-a75fc0b55da8.png)

忙しいとつい適当な回答をしてしまいがちですが、**初心を忘れず質問者には優しく丁寧な回答を心がけてください。**（自戒）

質問の場所やフォーマットを指定しておくと、回答でのストレスを軽減できるかもしれません。

## まとめ

質問をする際には、以下のポイントを意識して行動しましょう。

1. **質問する前に自分で調べる**  
    - Googleで検索する。
    - Microsoft Learnなどの公式ドキュメントを確認する。
    - ChatGPTなどを活用する。

2. **質問を具体的に、明確にする**  
    - やりたいことや目的を明確に記述する。
    - 現在の状況や試したことを説明する。
    - エラーメッセージや現象を詳しく伝える。

3. **仮説を立てて質問する**  
    - 自分なりに考えた解決策や見解を示す。
    - 回答者が理解しやすいように整理する。

4. **必要な情報を提供する**  
    - スクリーンショットや操作動画を添付する。
    - 該当箇所が明確にわかるようにする。

5. **回答をもらった後の対応**  
    - 迅速にリアクションをする。
    - 結果を共有し、解決策をオープンにする。
    - 感謝の意を示す。

6. **自分のナレッジをアウトプットする**  
    - 社内外での共有や発表を行う。
    - ブログやSNSでの発信を心がける。

7. **回答者としての心構え**  
    - 質問者に対して優しく丁寧に対応する。
    - 質問のフォーマットを整えるように指導する。

質問は自己解決能力を高める良い機会でもあります。質問者としても回答者としても、お互いに成長できるように心がけましょう。これからも楽しく学び、共有していきましょう！

## 元記事

https://powerplatformnikki.com/powerappsquestion/