ParseJSON関数がGAになったようなので、使い方を詳しく調べてみた。
ParseJSON関数
ParseJSON関数は、その名前の通りJSON形式のテキストをPower Appsで使用できるデータに変換(解析)する関数。
JSONは色々な情報を1つのテキストで表現できるデータの形式で、APIの戻り値とかCosmosDBとか色々なところで使われている。
こちらはうちのねこの情報をJSONで表してみたもの。
{ "Age": 3, "Name": "こつぶ", "Species": "スコティッシュフォールド", "VaccinationHistory": [ { "date": "2023-06-01", "name": "3種混合" }, { "date": "2022-06-01", "name": "3種混合" }, { "date": "2021-06-01", "name": "3種混合" } ] }
型指定されていないオブジェクト(Untyped object)
ParseJSON関数を使用すると、戻り値として「Untyped object」型のデータが返ってくる。
Untyped objectは、Power Apps側がどんなタイプ(文字列?数字?オブジェクト?)の情報なのかわからない、データのこと。
そこでParseJSONで取得した値は、関数を使用してPower Appsのデータ型に変換してあげなきゃ使えない、
はずだったんだけど、どうやら文字列とか数字くらいの単純なデータならある程度推量して使うことができるようになったっぽい。
※プレビューのときには確かできなかったはず。。
こんな感じで数字型のデータとかであれば、特に変換する必要もなく直接使用することができる。
とは言えきちんと変換関数を呼んであげた方がコードを読む側にも親切なので、代表的な変換関数を少しご紹介。
文字列
ParseJSONで取得したデータをテキスト型に変える場合は、Text関数を使用する。
数字
続いて、ParseJSONで取得した値を数字型に変える場合はValue関数を使用。
日付
日付に変換したい場合はDateValue関数を、
日付と時刻に変換したい場合はDateTimeValue関数を使用する。
※文字列はISO8601形式である必要あり
ISO 8601 - Wikipedia
レコード
レコード型(オブジェクト)の場合は、取得したプロパティをドット「.」でつないでいってあげて、変換してあげればOK
コメント