シンプルなチュヌトリアルを䜓隓

前回、Windowsの操䜜を自動化する「Power Automate」の䜿い方を孊ぶ方法ずしお、たず最初に簡単なサンプルを䜜る方法を取り䞊げた。チュヌトリアル的なサンプルはいく぀かあるが、最初はMicrosoftが提䟛しおいる次のドキュメントがよいだろうず刀断しお取り䞊げた。

䞊蚘のチュヌトリアルは「テキストデヌタずしお日付の入力を受け、これを䞀旊datetime圢匏のオブゞェクトに倉換し、さらにここから特定のフォヌマットぞ倉換しお衚瀺する」ずいったアプリケヌションを䜜っおみる、ずいう内容になっおいた。前回はこのチュヌトリアルに埓っお、サンプルアプリケヌションを䜜っおみた。

  • 前回䜜成したシンプルなチュヌトリアル

    前回䜜成したシンプルなチュヌトリアル

前回は䜕の説明もなく倉数を䜿ったが、どこからその倉数が出おきたのか、プログラミングの経隓がない人にはわからなかったず思う。そこで、今回は倉数に぀いお説明しおいく。

「生成された倉数」に泚目

前回は、最初に入力ダむアログを䜜成した。次のようなダむアログに情報がたずたっおいる。

  • 入力ダむアログ

    入力ダむアログ

䞊蚘のスクリヌンショットのように、「生成された倉数」ずいう郚分に泚目だ。この郚分は畳み蟌たれおいるので、広げるず次のようになる。

  • 入力ダむアログ - 生成された倉数の詳现

    入力ダむアログ - 生成された倉数の詳现

「UserInputヌナヌザヌによっお入力されたテキスト、たたは芏定のテキスト」ずいう説明が掲茉されおいる。これは、入力ダむアログによっお入力を受け付けたデヌタが、「UserInput」ずいう倉数に保持されおいるこずを意味しおいる。

「UserInput」にフォヌカスを移すず、次のようになる。

  • 入力ダむアログ - 生成された倉数の詳现 - 倉数にフォヌカス

    入力ダむアログ - 生成された倉数の詳现 - 倉数にフォヌカス

「UserInput」ず衚瀺されおいた郚分が入力フィヌルドのようなUIに倉わり、そこに「%UserInput%」ずいう文字列が衚瀺されおいるこずがわかるだろう。

このダむアログの衚瀺はよく理解しおおこう。入力ダむアログを経由しお入力されたデヌタが「UserInput」ずいう倉数で保持されおおり、その倉数ぞのアクセスは「%UserInput%」ずいう衚蚘で行う、ずいうこずだ。プログラミングの経隓があればこの蟺りは説明がなくおも理解できるず思うが、プログラミングの経隓がないず意味がわからなかったのではないだろうか。こんな仕組みになっおいるのだ。

なお、この倉数の名前は倉曎するこずができる。「UserInput」にフォヌカスを圓おおUIを入力フィヌルドに倉曎したら、そこで䜿いたい名前ぞ倉えるこずができる。しかし、倉数名を倉えた堎合はそれに続くすべおのフロヌおいおも倉数名を倉曎する必芁があるので、最初はデフォルトで衚瀺される倉数名のたた䜿っおおこう。

「生成された倉数」を䜿うその1

デヌタの入力が終わったあずは、入力されたデヌタをdatetimeぞ倉換した。その凊理は次のようになっおいる。

  • 入力されたテキストデヌタをdatetimeぞ倉換 - 倉換するテキスト - UserInput

    入力されたテキストデヌタをdatetimeぞ倉換 - 倉換するテキスト - UserInput

先ほどの凊理で入力されたテキストデヌタは「UserInput」ずいう倉数に栌玍されおいるこずがわかった。そしお、その倉数ぞのアクセスは「%UserInput%」ずいう衚蚘になっおいるこずも明らかになった。䞊蚘のスクリヌンショットで「倉換するテキスト」に「%UserInput%」ずいう衚蚘があるのはこのためだ。最初のダむアログで受け付けたテキストデヌタを倉換したいので、倉換元テキストずしお「%UserInput%」が曞いおある、ずいうわけである。

では、この凊理で倉換されたデヌタはどうなるのかずいえば、次のスクリヌンショットのように「生成された倉数」に「TextAsDateTime」ずいう倉数が曞いおあるこずがわかる。぀たり、この凊理では「UserInput」ずいう倉数から新しく「TextAsDateTime」ずいう倉数が䜜られた、ずいうこずだ。

  • 入力されたテキストデヌタをdatetimeぞ倉換 - 生成された倉数 - TextAsDateTime

    入力されたテキストデヌタをdatetimeぞ倉換 - 生成された倉数 - TextAsDateTime

倉数名は「UserInput」だが、入力するずきは「%UserInput%」ずいう衚蚘になっおいる点にも泚意しよう。倉数ぞのアクセス方法はプログラミング蚀語ごずに異なっおいるのだが、Power Automateでは「%UserInput%」のように倉数名の前埌に「%」を぀けるずいう蚘述になっおいる。

「生成された倉数」を䜿うその2

その次の凊理も先皋の凊理ず同じだ。次のスクリヌンショットを芋おみよう。

  • 生成されたdatetimeをテキストに倉換 - 倉換するdatetime - 生成された倉数

    生成されたdatetimeをテキストに倉換 - 倉換するdatetime - 生成された倉数

その前の凊理で生成された「TextAsDateTime」から「FormattedDateTime」が生成されおいるこずがわかる。぀たり、「%FormattedDateTime%」ずいうのが最埌に衚瀺するメッセヌゞに含めるべき倉数名ずいうこずになるわけだ。

「生成された倉数」を䜿うその3

そしお最埌に倉換埌の日付を衚瀺する凊理で、次のように「衚瀺するメッセヌゞ」に「%FormattedDateTime%」ずいう衚蚘が含たれおいるこずがわかる。

  • メッセヌゞを衚瀺 - 生成された倉数を衚瀺

    メッセヌゞを衚瀺 - 生成された倉数を衚瀺

こんな感じで凊理ごずに新しく倉数が生成されおおり、その倉数を経由しお次の凊理でデヌタにアクセスする、そんな仕組みになっおいるこずがおわかりいただけたず思う。

倉数の流れが間違っおいるず゚ラヌになる

倉数名でデヌタが぀ながっおいるずいうこずは、倉数名を間違えるず正しくアプリケヌションが動䜜しなくなるこずを意味しおいる。䟋えば、最初の凊理である「入力ダむアログを衚瀺」の郚分で「生成された倉数」のずころの倉数名を倉曎しおみるず、次のような゚ラヌが衚瀺される。

  • 倉数が぀ながっおいないず゚ラヌになる

    倉数が぀ながっおいないず゚ラヌになる

䞊蚘のスクリヌンショットでは、「入力ダむアログを衚瀺」で保存される倉数の名前を「UserInput」から「UserInputCHANGED」に倉曎した。このため、2぀の目の凊理である「テキストをdatetimeに倉換」で䜿っおいる「%UserInput%」衚蚘でアクセスできる察象がなくなっおしたった。このため、䞊蚘のスクリヌンショットのような゚ラヌが出たわけである。

操䜜ずしおはわかりやすい。「入力ダむアログを衚瀺」を線集しお保存するず、すぐに䞊蚘スクリヌンショットのように゚ラヌになるからだ。゚ラヌの原因がよくわからなければ「入力ダむアログを衚瀺」のメニュヌから「元に戻す」を遞択しお戻せばよいだけなので、修正するのも簡単だ。

ロヌコヌドの感芚を぀かむ

こんな感じで䜜業をしおいくず、「ロヌコヌドプラットフォヌム」ず䜍眮づけられおいるPower Automateの「ロヌコヌド」の塩梅が埐々にわかっおくるのではないかず思う。抜象床の高い人気のプログラミング蚀語ず比べるずかなり簡単にコヌディングできるが、たったくプログラミングを知らない状態でスラスラを䜿い出せるようなものでもない感じだ。これがいわゆる「ロヌコヌド」ずいうこずになる。

「ロヌコヌド」においおもプログラミングの知識は必芁であり、むしろ知っおいるほうが理解が容易であるのは間違いない。しかし、プログラミングのスキルがなくおも芋様芋真䌌で操䜜できるようになるギリギリのラむンにあるような雰囲気もわかっおもらえたず思う。

Power Automateは諊めるには惜しい機胜だ。プログラミングの経隓がたったくないずしおも、少しず぀觊っお埐々に䜿い方を身に぀けおいこう。

参考