power automate 複数のUI要素を連動して動的に動かす

power automateで業務効率化の続きです。
前回の記事では、テキストボックスに予め用意してある定型文を自動入力するフローを解説しました。

訪問介護では、曜日や時間によって異なるサービスを提供する場合が多いので、何曜日(または何時のサービス)にはこの定型文を入れ、別の曜日(別の時間帯)には別の定型文が入力できるようになると便利ですよね。
これを行うには、複数のUI要素に変数を組み込むのはもちろん、これらを連動して動かさないといけません。

画像は、ヘルパーへの指示を入力するフォームのサンプルですが、説明のため改変してあり実際のものとは異なります。
サンプル画像では、備考のテキストフォームがヘルパーへの毎回の指示欄になります。

流れとしては、入力するテキストボックスと同じ行の別の列にある曜日や時間帯などのデータを取得し、そのデータが何の時はこの定型文を入力し、別の時は別の定型文を入れるようにフローを組みます。
テキストボックスのUI要素には設定したtab変数を組み込んでいますので、別列のデータにもtab変数を組み込まないと連動できません。

サンプルでは月曜日と土曜日のサービスがありますので、月曜日にはこの定型文を入れて、土曜日にはこの定型文を入れる、と言ったフローにしたいと思います。

具体的には、変数を組み込んだUIエレメント属性のテキストを取得、変数に収納し、テキストボックスにテキストを入力する際、変数に応じて異なるテキストを入力するようにします。

まずは曜日のUI要素の確認です。
UI要素の最下層は上から順に、以下のようになっていました。

曜日のUI要素の最下層の属性値

dataitem[Class=”colum02 saturday”][Name=”土”]
dataitem[Class=”colum02″][Name=”月”]
dataitem[Class=”colum02″][Name=”月”]:eq(1)
dataitem[Class=”colum02 sunday”][Name=”土”]:eq(1)

結論から言うと、ダメでした。
2列目の属性値が違っていて、ワイルドカードを使ったり、colum02属性名をカットして後ろに直接「:eq(%tub%)」を入れても動きませんでした。

失敗例

dataitem[Class=”colum02 *]:eq(%tub%)
dataitem:eq(%tub%)

続いて3列目のサービスと時間のUI要素を見てみます。最下層は以下のようになっていました。

サービス名のUI要素の最下層の属性値

dataitem[Class=”colum03″][Name=”サービス① 09:00 ~ 10:00″]
dataitem[Class=”colum03″][Name=”サービス② 16:00 ~ 17:00″]
dataitem[Class=”colum03″][Name=”サービス① 09:00 ~ 10:00″]:eq(1)
dataitem[Class=”colum03″][Name=”サービス② 16:00 ~ 17:00″]:eq(1)

インデックス「:eq()」は連続していませんが、属性値をcolum03だけにして、上から順に「:eq(%tub%)」を追加しました。ちなみに、インデックス番号の最初は0です。
テキストボックスのtub変数と同じなので、同じ行のデータが取得できます。
これで実行したら、見事に動作しました。月曜日と土曜日で異なる定型文を自動で入力することができました。

Name属性の属性値をカットして変数を組み込む

dataitem[Class=”colum03″]:eq(%tub%)

UI要素の構造にもよりますが、取得しやすい列をターゲットにすることがポイントのようです。

動作確認する際には、ポインターの移動をアニメーションにしたり、メッセージボックスで目的のUIエレメントの属性、ここでは目的のテキストが取得できているか、確認しながらフローを作るとよいと思います。

最後に、条件式はIfではなく、Swich〜Case〜Caseを使うのが正解みたいです。If~Elseではうまく動作しませんでした。

コロナ禍で昨年の介護事業所の倒産件数が過去最多を記録しました。
訪問介護事業所では小規模な事業所が軒並み倒産しています。
ニーズがあるのに倒産が多いのも皮肉ですが、訪問介護事業所は小規模なところが多く、効率化や生産性の面から問題視されていました。
国の方も方針として、介護事業所の「大規模化」や「協働化」を掲げています。

それぞれの事業所の取り組みを積極的に情報発信してゆくことも、私たち訪問介護事業所に求められているのだと思います。

Power Automate Desktop とは

Power Automate Desktop とは、Windows11より標準搭載されているRPA(ロボティック・プロセス・オートメーション)で、アクションをドラック&ドロップしてプログラミングするローコード・ツールです。