見出し画像

ぐん税ニュースレター vol.36 page02 -RPA通信-

以前にPowerAutomate for Desktopの導入記事を書いてから、1年弱が経過しました。ご覧いただいている皆様はもう触ってみましたか?
 
インストール&簡単な実装で各1回の説明だけでしたので、RPAにより親近感を持っていただくため、もう少し細かく分けて説明をしていこうと思います。
 
さて、RPAのフローを作っていく一つ一つの動作を「アクション」と呼びます。アクションペインにずらりと並んでいますので、上から順番に見ていきましょう。

【変数】

まずは「変数」グループです。

RPAやプログラミングの世界では、変数は何かしらを入れる「容れ物」を意味します。
数学で出てくる変数は不定なものですが、PowerAutomateにおける変数は定数にもなります。また、変「数」とは言いますが、ここに入るのは数字だけではありません。
 
なぜ変数が必要なのでしょうか?
例えばURLやID、フォルダのアドレスなど、RPAが進んでいく上で入力が必要な情報があるとします。
もちろん、その都度のアクション設定にベタ打ちしても良いのですが、そのアクションが50個あったらどうでしょう?
アクセスしたいURLが変わってしまったら……。
管理者が変わってIDを変更しなければいけなくなったら……。
フォルダを整理してアドレスを変えたいときは……。
毎回50個のアクションを手作業で直しますか? という話になってきますね。

【変数の設定】

そこで「変数の設定」アクションを利用します。
後々変更が必要になったとしても、「変数の設定」アクションで設定してある値を変更するだけで足りる訳です。

【変数を大きくする/変数を小さくする】

こちらはそのままの意味ですね。変数の値が数値の場合のみ有効です。
例えば、エラーが発生した回数を記録したり、アクションで取得した変数を使って計算したりする場合に使用します。
下の例では「はい・いいえ」を5回選択させ、「はい」が押された回数をカウントしています。

【リスト関係】

リストも名前からイメージしやすいかと思います。n個のデータが連なっている感じですね。
下の例では50音が子音ごとにリストに格納されています(0~9番のデータが格納されています)。

上のリスト(%List%)の3番(0始まりなので4番目)を使いたい場合は、%List[3]%と指定すると「たちつてと」が選択できます。
※変数は「%」で囲んで表します。

この[3]には変数を設定することもできるので、リストの各データに対して順番に処理を行いたいときは、%List[LoopIndex]%のように設定してあげると、「あいうえお」 -> 「かきくけこ」 -> 「さしすせそ」・・・ のように進んでいきます。
 
リストの作成方法はいくつかありますが、「変数の設定」でリストを作成する場合は、%[]%の中にカンマで区切ってデータを入れていきます(一次元配列と言います)。

イメージとしては、こんな感じですね。
 
しかし、実際にRPAを組み立てていく上では、テキストファイルを読み込んだり(ファイル >> ファイルからテキストを読み取る)、Webデータを取得してリスト化する(テキスト >> テキストの分割)といった方法でリストを作成することが多いかと思います。
また、「新しいリストの作成」アクションで空のリストを作成し、「項目をリストに追加」アクションでリストにデータを格納していく方法もあります。

【JSONをカスタムオブジェクトに変換/カスタムオブジェクトをJSONに変換】

聞き馴染みのない言葉が出てきましたね。
「JSON」とはJavaScript Object Notationの略で、データを記述する方式の一種です。
JSONについての詳しい説明は省略しますが、JSONは次のような構造をしたテキストデータです。
 
{
"name": "テスト太郎",
"age": 24,
"birthday": "1999/05/20"
}
※見やすくするために改行とインデントを行っています。
 
リスト(一次元配列)と同じように考えると、%JSON[0]%とすれば「"name": "テスト太郎"」が取り出せるように感じますが、PowerAutomateでは単なる文字列として扱われるため、{"name" ・・・・・・ の1文字目である { が出力されてしまいます。
 
そこで、カスタムオブジェクトに変換アクションを使うことで、PowerAutomate上で識別可能な形式へ変換することができます。

この状態で%JsonAsCustomObject["name"]%と指定すると「テスト太郎」を出力することができます。
 
なお、リストと同じく、変数を設定する段階で「%{"name" ・・・・・・ }%」のように%で囲んであげると、最初からカスタムオブジェクトとして認識してくれるようになります。
 
長くなってしまいましたので、今回はこの辺で。
もっと詳しく知りたい! 自社でも取り組めるかも? という方は、お気軽にお問い合わせください。

システム部 田中


この記事が気に入ったらサポートをしてみませんか?