第29話 Power Automateの癖。利用する上で知っておくべきこと。

 ◆2022.11.12朝時点のレポート:


 https://kakuyomu.jp/users/hyper_space_lab/news/16817330649490509903


 ◆◆◆


 マイクロソフトのPower Automate Desktop。無料である程度の機能を利用できるお手軽なRPA(Robotic Process Automation)ツールである。ロボット好きなら使いこなさなきゃね。


 ということで、いわゆる「ルーチンジョブ」を肩代わりさせようと、いろいろ使い方を研究している。


 その中で「これは癖だな」と思った点があるので、覚書を兼ねて紹介したい。


 ◆「フロー」呼び出し時の更新処理:


 PADの中ではいわゆるプログラムに相当する物を「フロー」と呼ぶ。で、フローの内部には「Main」と「Sub」という複数のルーチンを記述できる。


 Cなどプログラミングになじみがある人なら当然の機能であるが、「Sub」は「Main」から呼び出すことを目的としたサブルーチンである。

 ロボットである「フロー」にやらせたいことをパーツに分割したものと考えると良いかもしれない。


「Main」と「Sub」(複数作れる)をいかにうまく構成できるかがプログラマーの力量ともいえる。


 それはそれとして。


「呼び出される側のルーチン」単体で実行したい場面がある。たとえば、


 ・「近況ノート」を投稿して、

 ・ポストした結果をtwitterに投稿する。


 という一連のフローがあるとする。


 新規のノートを一から作成しようという時はこれでよいのだが、既に投稿してあるノートをtwitterに展開したいという時は、新しいノートを投稿する必要はない。


 したがって、最初のプロセス(=ノート投稿)は実行したくない。


 こんなとき、「twitterへ投稿する」というサブフローのみを実行できればよいのだが、それはできない。なので、そこだけ実行できるようにしておくためにはサブフローではなくて、独立した「デスクトップフロー」にしておく必要がある。


 要するに別プログラムとして記述するのだ。


 PADには「あるフローの内部から別のデスクトップフローを呼び出して実行する」という呼び出し機能がある。これは使い勝手の良い機能だ。


 なので、この場合で言うと「twitterに投稿する」というデスクトップフローを単体で用意しておけばよい。


 が、ここで「癖」がある。


 フローAからフローBを呼び出す場合、フローAを記述して保存した後フローBを変更しても、その変更はフローA側に反映されない。(本稿記載時点の筆者体験による。任意の将来においてMSによる仕様変更があるかもしれない)


 なので、フローBのバグ取りをやって最新版に更新したとしても、それはフローAに反映されない。


 反映させるためにはフローAの中にあるフローB呼び出しプロセスに変更を入れ、更新した上でフローAを保存する必要がある。

 フローAの中から呼び出すフローBは、いわゆる「ミラー」と呼ばれるある時点でのコピーなので、最新の変更を反映するためにはこうする必要がある。


 これは案外「はまる」癖だと思う。(仕様としては未熟と言わざるを得ない)


 ◆テキストボックス入力機能の「不具合」:


 これはマイクロソフト社に言わせれば「仕様であって不具合ではありません」と言うかもしれない。


 しかし、現実には非常に使いにくい機能となっている。


 次の処理を行わせると、バグる。


 ・クリップボードにコピーされたテキストデータを、(ブラウザ上の)テキストボックスに入力させる。


 これをやると、「何かの変換機能を通した」ようなパイピング処理が行われるらしく、おかしな変換をされたデータが入力される。(日本語固有の現象かもしれない)


 このバグを回避するためには、「テキストボックス入力」機能ではなく「キーを送信する」機能により「Ctrl + V」キーを送信してやる必要がある。


 その際、対象テキストボックスエリアにカーソルを移す必要があるため、マウスクリックを送信するか、「Tab」キー送信によるフォーカス移動を行うことになる。


 筆者の経験上、迂遠ではあるが「Tab」または「Shift + Tab」をエミュレートした方が動作が確実である。マウスクリックは対象特定に微妙な制御が必要で信頼性が低い。



 相手の癖を覚えると、トラブルを回避して幸せになりやすいよー。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る