Power Automateで回答されたフォームの値を取得したい

先週は情報を集めながら３日間やったけど、まったく分からず何にもできなかったです。

まぁ、とりあえず参考になりそうな以下の記事をみつけましたが、読んでも同じよう時は操作できませんでしたね。

+ [JSONの解析の基本【Power Automate】](https://zezeze.hateblo.jp/entry/2023/01/11/130159)

Salesforceは5年ほど遊んでいますが、フローよりもかなり難しい。操作方法が全く理解できないです。画面が違う。

もしかして、この設定？
以前に新しいデザイナーのままで作成して、これを切り替えたらクラッシュしてしまったんですなぁ。
今回は最初から古いデザイナーで作ったら、新旧を切り替えられるようになりました。何で？バグ？


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/5c020952-b084-1db2-5925-daa7ce5bce32.png)

切り替えると、何故かfor eachがないんですよね。新しいデザイナーでは勝手にfor eachが表示されて何度やっても消せませんでした。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/0074736c-1d33-3959-df82-716c102aa359.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/d0369255-a0b2-792b-fa8f-be1dc49d0340.png)

実行するにはフォームを入力しないといけなさそうですが、あああ、フォームを編集しても入力できないんですよね。
URLが必要そう。また挫折です。

回答を収集をクリックすると怪しげなリンクを発見。これか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/c786f1a7-158f-d8f2-1b88-dda344a816e3.png)

手動で実行を選択しておいてフォームを実行したら動きました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/5e66d7ec-e6ca-efad-bc92-be4da7042321.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/e79f2799-61ea-67c0-f03f-102fa830dd7a.png)



![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/968eab72-022c-b887-8603-37c663c4320d.png)

時間はGMTっぽいなぁ。午前中になっていますね。-9時間。ということは＋9時間しないといけなさそう。

responnseIdは3。ああ、トータルで３件目だな。

肝心の中身が分からん。意味がない。

Power Automateを編集するときには緑色で囲んだ編集をクリックしないといけなさそう。直観的でないな。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/172ce6d2-efe8-076e-962a-dbedc89b1a5a.png)

---------------------------
ここから４日目。昨日は全く嫌になったのでみませんでした。気分が悪い。他の仕事のやる気も失せます。

どうやってみても、スキーマーのところのサンプルが取れないですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/51a04ab1-43b2-dac8-08c4-90dd7f43018d.png)

サンプルから生成には何をいれるんだろう？

```Json
{
    "errors": [
        {
            "message": "Invalid type. Expected Object but got Integer.",
            "lineNumber": 0,
            "linePosition": 0,
            "path": "",
            "value": 4,
            "schemaId": "#",
            "errorType": "type",
            "childErrors": []
        }
    ]
}
```

この時
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/88f14948-1a59-478e-77d8-47adc3c34adc.png)


```Json
{
    "content": {
        "formId": "xx7K6eLO1USVISiZm3KbTaa6q_ryw55JlIEkHxYobwxUNzhCV0dCVlpISDNXRFhPQ1FBR1FHVE9CUxxxx",
        "responseId": 5
    },
    "schema": {
        "type": "object"
    }
}
```

Bodyの時
なかなか、全ての項目を取得できないですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/7a6cfbae-c00c-29a6-9ada-5ad3ec6e23fd.png)


```json
{
    "content": {
        "webhookId": "xyyyxyf6-3456-4206-9d27-2fd2e1ec4bb5",
        "eventType": "ResponseAdded",
        "resourceData": {
            "formId": "xx7K6eLO1USVISiZm3KbTaa6q_ryw55JlIEkHxYobwxUNzhCV0dCVlpISDNXRFhPQ1FBR1FHVE9CUxxxx",
            "responseId": 6
        },
        "eventTime": "2024-01-23T04:59:17.9156088Z"
    },
    "schema": {
        "type": "object"
    }
}
```

jsonになっていると思ったけど、値がはいっているのか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/7c2d5932-4f16-9645-517a-cacfbc60d8f9.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/7c161592-2657-3522-d2ab-bbb01f10da2f.png)

もしかして、テストモードの「未加工出力の表示」を使えばいい？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/ab017de2-360a-c8f2-24b5-7fff2d27ca4a.png)

複数セットできるんだ。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/6e9c684d-909f-ada3-fad3-e1fd0e0cb078.png)

また、ここから後日。

テスト再開したけど、ずっと画面が変わらないでロード中。全くもって使えない。まぁ、無料版だからこんなものかもしれない。再開直後からやる気が失せます。

応答の詳細を取得するの未加工

```Json
{
  "responder": "yyyyyy@xxxxxxx.co.jp",
  "submitDate": "1/24/2024 7:38:18 AM",
  "r7b1df247229948c3beb0aa3fc35951e3": "大坪啓二",
  "r524c634d3c414447a42e63ee1e665420": "管理部"
}
```

作成のところはJsonになりませんね。何を指定したらいいのかさっぱり分かりません。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/c449d279-9922-08ec-1102-e075415626ab.png)

どうも元がJsonのデータ部分にしか適用できなさそう。

さっき取得したJsonを貼り付けます

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/4715c0ae-1695-15dc-c90d-7a2a2d54b4be.png)


そうすると、スキーマができました。

```Json
{
    "type": "object",
    "properties": {
        "webhookId": {
            "type": "string"
        },
        "eventType": {
            "type": "string"
        },
        "resourceData": {
            "type": "object",
            "properties": {
                "formId": {
                    "type": "string"
                },
                "responseId": {
                    "type": "integer"
                }
            }
        },
        "eventTime": {
            "type": "string"
        }
    }
}
```

ああ、これで本文の中身が取得できました。やっとだ。フォームの中で自分で追加した項目はこのようなことをしなくても取得できるので、システム系の項目はJsonの解析をして取得するのかもしれない。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/fd6ea530-81bc-ca6b-56ce-a24da0016671.png)


-----------------------

https://powerusers.microsoft.com/t5/Building-Flows/Help-with-Forms-and-flow/td-p/266252

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/1273d44b-61dd-5db6-a3d5-9fd85507126d.png)


```
triggerBody() ?[ 'value' ][ 0 ]?[ 'resourceData' ]?[ 'responseId' ]
```

このような構造になっているということ？

|動的なコンテンツ	|式|
|:------------------|:--------------|
|body	|triggerOutputs()?['body']|
|resourceData|triggerOutputs()?['body/resourceData']|
|応答ID	|triggerOutputs()?['body/resourceData/responseId']|