StudioXのアクティビティ

UiPath StudioXのアプリ/Webアクティビティ【ユーザー補助】

2021/11/25

自動操作している動作の状態を確認するためのアクティビティが、2つあります。

ひとつは画面のスクリーンショット、もうひとつは操作のターゲットとなっている項目(UI要素)を強調表示する機能です。

これらを利用することで、自動操作途中の状態を把握しやすくなりますね。

この記事では、以下のアクティビティについて解説します。

記事編集時のStudioX - ver2021.10

ユーザー補助のアクティビティ

  • スクリーンショットを作成
  • 強調表示
  • ダウンロードを待機
  • ユーザー名/パスワードを取得

スクリーンショットを作成

アプリケーションまたはUI要素のスクリーンショットを作成します。(ガイドはこちら)

リソースに指定したアプリ/Webの画面をスクリーンショットします。

キャプチャとか、プリントスクリーンとも言いますが、つまり表示されている画面をイメージとして保存する機能ですね。

ここでは、以下の項目について解説します。

  • 画面上のターゲットを指定
  • 出力先
  • ファイル名
  • 自動インクリメント
  • 入力要素
  • 出力要素
  • エラー発生時に実行を継続
  • スクリーンショット作成前の待機時間
  • タイムアウト
  • 実行前の待機時間
  • 実行後の待機時間
  • 保存先のファイルパス

画面上のターゲットを指定

スクリーンショットする対象(UI要素)を指定します。

リソースで指定したアプリ/Webの画面全体、あるいは、部分的なUI要素を指定してキャプチャすることも出来ます。

例えば、キャプチャの対象にボタンを指定する場合を見てみましょう。

予めサイト/Webを開き、リソースで指定しておきます。 アクティビティをリソースの内側に追加します。
[次で指定]をクリックします。
キャプチャする対象(UI要素)をクリックし、
[確認]をクリックします。
対象(UI要素)が指定されました。

キャプチャした結果は、以下のようになります。

出力先

画像の保存方法として、ファイルとして保存するか、クリップボードにコピーするかを選択します。

ファイル クリップボード

上図のように、選択によって表示される項目が変わります。

それぞれ見ていきましょう。

ファイル

キャプチャした画像を、ファイルとして保存します。

ファイル名

保存するファイル名を指定します。

初期値では"screenshot.png"となっていますが、このようにフォルダのパスが省略されている場合は、プロジェクトフォルダ内へ保存されます。

プロジェクトフォルダを開きたい場合は、リボンから開くといいでしょう。

本題に戻りますが、保存するファイル名を変更する場合は、[Browse for File]ボタンをクリックします。

ちなみに、保存するファイルの画像形式は、PING形式となっています。

ですが、他の拡張子にすることで、別の画像形式で保存が可能です。

以下5つのファイル形式で保存可能なことが確認出来ました。

  • BMP
  • GIF
  • JPG
  • PNG
  • TIFF
JPG形式で保存すると、ほんの少しですが、ファイルサイズを小さくできますね。
おぐし
自動インクリメント

ファイル名に数値または日時を付与することで、キャプチャを保存します。

なし(上書き)

[ファイル名]に指定したファイル名で保存します。

括弧にあるとおり、既に同じファイル名が存在する場合は上書きされます。

インデックス

[ファイル名]に、数値を追加して保存します。

最初は数値なしで、その後は括弧書きでナンバリングされていきます。

screenshot.png

screenshot (1).png

screenshot (2).png

・・・
YYYY.MM.DDatHH.MM.SS

[ファイル名]に、日時を追加して保存します。

"インデックス"と同じように、最初は日時なしのファイル名になります。

screenshot.png

screenshot 2021.11.16 at 00.59.54.png

screenshot 2021.11.16 at 01.00.32.png

・・・

クリップボード

キャプチャした画像を、クリップボードに保存します。

ここで引っ掛かるのが、クリップボードに保存された画像をどうやって出力するのか、でしょう。

StudioXでは、クリップボードを制御する専用のアクティビティはありませんが、[キーボードショートカット]アクションを使う事で、WordやExcelなどへ貼り付けることが可能です。

入力要素

他のアプリ/Web系アクティビティで参照した項目(UI要素)と、同じものを利用したい場合に指定します。

この項目を使うためには、予め別のアプリ/Web系アクティビティで[出力要素]を指定しておく必要があります。

ここでポイントがひとつ。

ガイドに記載されている話になりますが、[項目を選択]アクションだけだと、選択できない場合があります。

それを回避する手段として、まずコンボボックスを[クリック]してください。

このときに、[クリック]アクションの[出力要素]で指定した名前を、[項目を選択]アクションの[入力要素]で参照するといいでしょう。

出力要素

[スクリーンショットを作成]アクションで指定した項目(UI要素)を、他のアクティビティで参照するため、名前を付けて記憶します。

エラー発生時に実行を継続

チェックON(True)にすると、項目の選択に失敗しても処理を継続し、次のアクティビティを実行します。

失敗したとき、次のステップへ進めても問題ない場合は、チェックON(True)にしておきましょう。

スクリーンショット作成前の待機時間

例えば、アプリ/Webを複数操作している場合、キャプチャの対象が他のアプリ/Web画面の後ろに隠れてしまうこともあります。

そうなると、欲しい画面のキャプチャが撮れませんよね。

そのため、キャプチャを撮る前に、まず対象のアプリ/Webを前面に移動する仕組みになっています。

[スクリーンショット作成前の待機時間]は、アプリ/Webを前面に移動した後から、キャプチャするまでの間隔を指定します。

"1.5"のように、小数点以下の指定も可能です。

既定値は0.2秒です。

タイムアウト

対象のUI要素が認識するまで、待機する時間です。

既定値は30秒です。

指定時間内にUI要素が認識できなかった場合は、エラーとなります。

実行前の待機時間

ひとつ前のアクティビティから、アクティビティを実行するまでの間の、待機する時間を指定します。

"1.5"のように、小数点以下の指定も可能です。

既定値は0.2秒です。

ここで、[スクリーンショット作成前の待機時間]との違いを説明しておきましょう。

名前が長いので、便宜上[スクショ前待機時間]と記述します。

[スクリーンショットを作成]アクションの動作を分解すると、「①対象を前面に移動する」、「②キャプチャする」、の2アクションを実行します。

[実行前の待機時間]は、前のアクティビティから①までの時間です。

対して[スクショ前待機時間]は、①から②までの時間を指します。

実行後の待機時間

項目を選択した後から、次のアクティビティを実行するまでに、待機する時間を指定します。

"1.5"のように、小数点以下の指定も可能です。

既定値は0.3秒です。

保存先のファイルパス

[保存先]が"ファイル"である場合に使用します。

キャプチャを保存した画像のファイルパスを、名前を付けて記憶します。

例えば、[自動インクリメント]を設定している場合に、どのようなファイル名になっているかを確認することができます。

キャプチャの画像ファイルを、他のアクティビティで使用する場合などにも、ファイルパスが必要になりますね。

実行後のメッセージは、以下のように表示されます。

強調表示

選択したUI要素を強調表示します。(ガイドはこちら)

アクティビティで指定している項目(UI要素)を、視覚的に分かるよう枠で囲みます。

以下は、[Get Unicorn Name]ボタンを指定した例です。

ボタンが"Gold"色の枠で囲まれていますね。つまり、これが強調表示です。

ここでは、以下の項目について解説します。

  • 画面上のターゲットを指定
  • 継続時間
  • 入力要素
  • 出力要素
  • エラー発生時に実行を継続
  • タイムアウト
  • 実行前の待機時間
  • 実行後の待機時間

画面上のターゲットを指定

強調表示する対象(UI要素)を指定します。

リソースで指定したアプリ/Webの画面内にあるUI要素を指定出来ます。

 

予めサイト/Webを開き、リソースで指定しておきます。 アクティビティをリソースの内側に追加します。
[次で指定]をクリックします。
キャプチャする対象(UI要素)をクリックし、
[確認]をクリックします。
対象(UI要素)が指定されました。

継続時間

強調表示する時間の長さを指定します。

初期値は2秒で、ドロップダウンから他の時間を選択できます。

直接数値を入力することも可能で、小数点以下の指定も可能です。

UI要素を囲む枠の色を指定します。

初期値は"Gold"で、その他174種類のカラーから選択できます。

色を、RGB値で指定することも可能ですね。

RGB値とは、赤緑青を、それぞれ0~255の範囲で数値化した表現で、"赤の値, 緑の値, 青の値"という形式で指定する方法です。

例えば、"255, 255, 0"であれば黄色、"0, 0, 0"だと■黒になります。

入力要素

他のアプリ/Web系アクティビティで参照した項目(UI要素)と、同じものを利用したい場合に指定します。

この項目を使うためには、予め別のアプリ/Web系アクティビティで[出力要素]を指定しておく必要があります。

出力要素

[強調表示]アクションで指定した項目(UI要素)を、他のアクティビティで参照するため、名前を付けて記憶します。

エラー発生時に実行を継続

チェックON(True)にすると、項目の選択に失敗しても処理を継続し、次のアクティビティを実行します。

失敗したとき、次のステップへ進めても問題ない場合は、チェックON(True)にしておきましょう。

タイムアウト

対象のUI要素が認識するまで、待機する時間です。

既定値は30秒です。

指定時間内にUI要素が認識できなかった場合は、エラーとなります。

実行前の待機時間

ひとつ前のアクティビティから、アクティビティを実行するまでの間の、待機する時間を指定します。

"1.5"のように、小数点以下の指定も可能です。

既定値は0.2秒です。

実行後の待機時間

項目を選択した後から、次のアクティビティを実行するまでに、待機する時間を指定します。

"1.5"のように、小数点以下の指定も可能です。

既定値は0.3秒です。

ダウンロードを待機

ユーザーに任意のアプリケーションからのファイルダウンロードを許可し、ダウンロードが完了するまで待機します。ファイルがダウンロードされると、ワークフロー内でファイルの次の処理に進みます。(ガイドはこちら)

ファイルのダウンロードを監視し、完了するまで待機します。

また、完了後のファイルの情報を取得できます。

監視する対象は、主にWebブラウザーですが、アプリケーションにダウンロード機能がある場合にも利用できますね。

ここでは、以下の項目について解説します。

  • ダウンロードを開始するアクティビティ
  • 監視対象のフォルダー
  • ダウンロードされるファイル
  • タイムアウト

ダウンロードを開始するアクティビティ

ダウンロードを開始するトリガーとなるアクティビティを、指定します。

例えばよくあるのは、"ダウンロード"と表示されているリンクやボタンをクリックした時にダウンロードが始まることが多いでしょう。

この場合は、[クリック]アクションを追加します。

アクティビティの追加は1つのみにしてください。

監視対象のフォルダー

ファイルがダウンロードされる、保存先のフォルダーを指定します。

初期値で、Webブラウザーのダウンロード先があらかじめ指定されています。

保存先が違う場合は、適宜変更してください。

ダウンロードされるファイル

ダウンロードしたファイルの情報に、名前を指定して記憶します。

保存した名前には、複数の情報が格納されていますね。

タイムアウト

ダウンロードが完了するまでの、待機する時間を指定します。

未指定(空白)の場合は300秒です。

ダウンロードが300秒以上かかるような場合には、値を入力するといいでしょう。

「これ以上長いのはおかしい」と判断できる、十分な秒数を指定すればいいですね。
おぐし

ユーザー名/パスワードを取得

ユーザー名およびパスワードを安全に保存し読み込みます。(ガイドはこちら)

予め登録しておいたユーザー名とパスワードを取得し、ログイン画面などで利用します。

ユーザー名/パスワードを登録できる箇所は、PC上(資格情報マネージャー)とオンライン上(Orchestrator)の2つから選択できます。

[資格情報ソース]の選択で、使われる項目や動作が異なるので、それぞれ別に解説します。

  • 資格情報マネージャー(ローカル)
    • 自動送信までのタイムアウト(秒)
  • Orchestrator
    • 資格情報の参照(アセット名)
    • Orchestratorのフォルダー
    • タイムアウト(秒)
  • 後で使用するために次の名前で保存

[資格情報ソース]="資格情報マネージャー(ローカル)"

PC上の資格情報マネージャーから値を参照することはもちろん、アクティビティ上から資格情報の追加/更新/削除ができます。

資格情報の参照

[保存されている資格情報]から、参照する資格情報を選択します。

資格情報の編集

[管理]ボタンをクリックして、資格情報を編集します。

資格情報の追加手順は以下のとおり。

[管理]ボタンをクリックします。 [資格情報を追加]をクリックします。 [アプリまたはサイト]に任意の名前、
[ユーザー名]、[パスワードを入力し、
[OK]をクリックします。
資格情報の登録感情です。
この画面で編集や削除も可能です。
[管理]ボタンは、ユーザー目線で考えてくれている、嬉しい機能ですね。
おぐし

自動送信までのタイムアウト(秒)

自動化処理を実行すると、以下のような画面が10秒間表示されます。

表示されている間、必要に応じてユーザー名やパスワードを編集できます。

ただ、編集することがないのであれば、10秒は長いですよね。

そんなときは、[プロパティ]パネルから値を"0"に設定するといいでしょう。

[資格情報ソース]="Orchestrator"

Orchestrator上に登録した資格情報アセットから値を取得します。

オンライン上でユーザー名/パスワードを管理するので、複数のPCで共有できるメリットがありますね。

(準備)Orchestratorへ資格情報を登録

まずは、Orchestratorに資格情報を登録しておきましょう。

今回は、Orchestrator上にある自身のワークスペースフォルダの中に、”サンプル資格"という名前で作成します。

タスクバーの通知領域から
をクリックします。
緑のランプをクリックします。
Webサイトが開くのでサインインします。
[My Workspace]を選択し、
[アセット]をクリックします。
[アセットを追加]-[新しいアセットを追加]
をクリックします。
[種類]を"Credential"に指定します。
その他入力して[作成]をクリックします。
[資格情報]が追加されました。

資格情報の参照(アセット名)

Orchestratorに追加した資格情報の名前を、[アセット名]に指定します。

Orchestratorのフォルダー

Orchestratorの違うフォルダー、例えば"Shared"のアセットを参照する場合は、プロパティの[Orchestratorのフォルダー]にフォルダー名を入力してください。

もしくは、StudioX右下のメニューを切り替えることでも、対象フォルダーのアセットを参照できますね。

補足(リソースパネル)

Orchestratorに登録されているアセット情報は、[リソース]パネルに表示されていますので、こちらを参照すると便利です。

から、Orchestartorのアセットにリンクできます。

ver2021.4.4ではアクセスに失敗していましたが、2021.10.5以降で解消していることを確認しました。

タイムアウト(秒)

Orchestratorのアセット値取得までの、タイムアウトの時間を指定します。既定値は30秒です。

後で使用するために次の名前で保存

ローカルとOrchestrator共通に使用する項目ですね。

参照したユーザー名/パスワードを、他のアクティビティで使うため、保存する名前を指定します。

保存した名前を参照するときは、[ユーザー名]と[パスワード]に分けて呼び出すことができます。

まとめ

ここで紹介したアクティビティを上手く使うことで、組んだロジックの不具合(いわゆるバグ)を見つけやすくなります。

おそらく[Write Line]アクションと共に、デバッグ用として活用することが多いことでしょう。

まとめます。

まとめ

  • [スクリーンショットを作成]では、保存する画像形式を変更できる。
  • [強調表示]は、枠の色指定をRGBで指定できる。

この記事で、何か1つでも新しい発見が得られたのなら、僕もうれしいです。

-StudioXのアクティビティ

© 2023 おぐしログのRPA入門