【PowerAutomate】変数でJSONの値出し入れ、シンプルな説明

IT

最近がっつり行っていると言えば、PowerAutomateによる業務改善です。

ローコードで開発ができるのは私のようなプログラム音痴にはありがたく、色々と楽しく仕事させてもらってます。

今回はPowerAutomateの変数でJSONの値を出し入れする内容を、シンプルに紹介します。

当記事の経緯

利用者
利用者

Power Automateで変数1つで在庫管理したいんだけど、シンプルな方法が知りたいんだ。

我

JSON形式ならオブジェクトとして柔軟に使えますよ。

利用者
利用者

えーっと、Webでブログなど調べると…「JSONの解析」を使うのかな?

我

いえ、もっと簡単な方法がありますよ。

(正直JSONの解析って、初心者には難しいと思う)

やりたいこと:PowerAutomate変数でJSONの値出し入れを行う

ただし、JSONの解析は無しな。

まずは、扱いたい配列を説明しましょう。

以下のような値を変数で扱いたいとします。

りんご 1個
ごりら 1頭
らっぱ 1挺
ぱせり 1把

これを、PowerAutomateの変数で扱おうということです。

JSONで表記するとこうなります↓

{
“りんご”:1,
“ごりら”:1,
“らっぱ”:1,
“ぱせり”:1
}

この数を出し入れする方法を紹介します。

ただし、様々なブログで紹介されている「JSONの解析」は使いません!

PowerAutomateのサンプル紹介

百聞は一見にしかず、さっそく紹介します。

まずは変数の初期化

前提として、変数(オブジェクト)を初期化します。値はJSON形式で。

変数からJSONの値を取り出す方法

JSON形式で保管されている変数から値を取り出すには、「データ操作:作成」アクションを使います。

【例】”ごりら”の値を取り出したい場合は、以下のようにします。

variables(‘在庫品’)?[‘ごりら’]

式を書く必要がありますが、シンプルです。

“在庫品”という変数の中の、”ごりら”というプロパティの値を取り出す、という書き方です。

PowerAutomateを動かした結果はこちらです↓

ちゃんと、値=50 が取り出せましたね。

変数のJSONに値を入れる方法

値を入れる方法は2アクションが必要です。

【例】”ごりら”の値に0をセットしたい場合は、以下のようにします。

1.まずは、「データ操作:作成」アクションでプロパティを変更した後のデータを作ります。

setProperty(variables(‘在庫品’), ‘ごりら’, 0)

こちらも式を書きます。

“在庫品”という変数の中の、”ごりら”というプロパティの値を0にするという内容です。

※これだけで変数の値は変わりません。この状態は「データ操作:作成」という新しいデータオブジェクトができた状態です。プログラム的な考え方なので説明が難しいですが…

2.次に、元の変数に上記1のデータ操作で作った値で上書きします。

PowerAutomateを動かした結果はこちらです↓

変数のJSONの値にちゃんと設定できましたね。

謎も残る

上の結果で気づいたのですが、JSONの値の順番が変更されていますね。

“ごりら”は2番目だったのに、setPropertyでセットすると一番下の4番目になってます。

これじゃ、しりとりにならないね。

謎が残りますが、順番が重要な場合はもう一工夫いりそうです。

まとめ

1.PowerAutomateにて、変数でJSONの値出し入れのシンプルな方法(※データ操作:作成アクションを使う)を紹介しました。

2.JSONの解析アクションを使うよりも直感的にわかりやすいと思います。

3.シンプルにJSONの値を出し入れしたいといったニーズがあれば、是非使ってみてください。

コメント

タイトルとURLをコピーしました