20230712
■PowerAppsとPowerAutomateのデータ形式
PowerAppsからPowerAutomateにデータを送る際にJSON形式でデータを送信します。
PowerAppsで時間(日付型)を日本時間に設定しても、JSON関数でUTCに変換されます。
なのでPowerAutomateで値を出力するときにはJSON関数でUTCに変換された値が出力されます。
この点を踏まえて、以下の二つの方法が有効と考えます。
①PowerAppsでJSON変換する前に日付型をテキスト型に変更する。
②PowerAutomate上でUTCを日本時間に変換する。
※JSONとは?
JavaScript Object Notationの略で、コンピュータ高で無く人間が読んでも理解できるように作成されたデータフォーマット。
{}や[]などの括弧を使って記述する。
他言語同士のデータのやりとりで利用する共通フォーマットのイメージ。
時代的にはXMLー>JSONがデータフォーマットとして利用されていた。
XML マークアップ言語で直感的にわかりづらかった。Csvよりは複雑なことができた。
JSONは次のデータ型に対応している
文字列
数値
null
bool値
オブジェクト
配列
●オブジェクトとは?
オブジェクトの中にオブジェクトを入れることが可能。こちらをネストするという。
例
{"a":1,
"b":2,
"c":{
"d":4,
"e" :5
}
}
■今回の気づき
PowerAppsからPowerAutomateにデータが与えられたときに、PowerAutomateの環境のせいでデータが変換されていたと思っていたことで本件の調査が難航しました。
データの受け渡しがPowerAppsとPowerAutomateで行っていると思っていましたが、もっと細部まで確認する必要がありました。
具体的には以下を確認する必要がありました。
①PowerAppsからデータが出る直前の状態
②PowerAppsからデータが出た直後状態
③PowerAutomateにデータが届く直前の状態
④PowerAutomateにデータが届いた直後の状態
ネットワークでもファイアウォールのLANケーブルの外向き、内向きみたいな話に似ているな。
あとは境界値分析の考え方かな。一回勉強したなあ。
状況をもっと細かく見れるか確認する必要があると感じました。
要件定義で聞いたことがすべてではないと思って、言葉や状況に疑いを持とう!