3.5.4.1. OpenRPA

以下に、OpenRPAツールボックス内のアクティビティを紹介します。

クリックエレメント

GetElementで見つかったElementをクリックします。

プロパティパラメータ

Animate MouseTrueに設定すると、カーソルは実行中にその位置を変えて表示されます。物理的なクリックの時のみ動作します

表示名– シーケンス内のアクティビティのタイトルです。

ダブル クリックTrueに設定すると、カーソルがウィンドウ内で2回クリックされます。

ElementGet Elementアクティビティで選択されたアプリケーション。

キーモディファイア– 設定すると、実行中に対応するキーが押されたように動作します。

Mouse Button– 左マウスボタンをクリックする場合は1、中央マウスボタンの場合は “2“、右マウスボタンの場合は3に設定されます。

Post WaitOpenRPAがこのアクティビティの実行を完了した後、終了を待つべき時間。

Virtual Click– デフォルトでTrueに設定されています。OpenRPAは、実際にマウスでクリックする代わりに、仮想クリックを試みます。詳細については、付録B仮想クリックを参照してください。

X Offset– クリックされるウィンドウの内側の水平方向のオフセットです.単位はピクセルです。また、負の値も可能です。物理的なクリックでのみ動作します。

Y Offset– クリックされるウィンドウの内側の垂直方向のオフセットです.単位はピクセルです。また、負の値も可能です。物理的なクリックでのみ動作します。

images/openrpa_click_element.png

OpenRPAクリック要素.

アプリケーションを閉じる

Get Elementアクティビティで選択したアプリケーションを終了します。

プロパティパラメータ

Displayname– シーケンス内のアクティビティのタイトルです。

Force- Trueに設定すると、アプリケーションを終了させます。

セレクタ– 選択されたアプリケーションに属するすべてのデータが含まれます。

Timeout– アプリケーションを正常に終了できなかった場合、アクティビティが停止するまでの時間間隔。単純な00:00:00.00 {hh:min:ss.mili}またはTimeSpanクラスのオブジェクトにすることができます。

images/openrpa_close_application.png

OpenRPAクローズアプリケーション

コメントアウト

Comment Out内のアクティビティは、ワークフローの実行では無視される。このアクティビティは、シーケンスから何かを指摘するのに便利である。

プロパティ パラメータ

Displayname– シーケンス内のアクティビティのタイトルです。

クリップボードのコピー

Windowsのクリップボードの内容を変数に保存します。

しかし、このアクティビティを繰り返し連続的に使用することは、バッファの問題で信頼性が低いので、お勧めできません。回避策として、 コード起動アクティビティを使用して、次のAHKコードを実行することができますvariable1 := Clipboard.variable1が変数名であることに注意してください。

コピーされるWindowsクリップボードの内容が文字列の場合、ユーザーはプロパティボックスの String Resultフィールドに変数を指定する必要があります。イメージの場合は、イメージの保存先であるBitmapSource変数のファイルパスをImage Resultに指定する必要があります。

プロパティパラメータ

Displayname– シーケンス内のアクティビティのタイトルです。

Image Result– クリップボードにコピーされたイメージからビットマップを作成し、BitmapSource変数として返します。

Send Ctrl+C– クリップボードの内容をコピーしようとする前に、Ctrl+Cを送信します。

String Result– クリップボードからの結果を文字列として返します。

images/openrpa_copy_clipboard.png

OpenRPA Copy Cliboard.

ディテクター活動

Detectorはワークフローをアイドルモードにし、選択したDetectorがトリガーされるのを待ちます。

DetectorはOpenRPAの内部でStateMachineのトリガーとして使用することもできることを、ユーザーに伝えておく価値があります。

Detectorの設定方法の例は、Windows Automationセクションにあります。

プロパティパラメータ

Detector– 条件をトリガするために使用される検出器のIDです。

Displayname– シーケンス内のアクティビティのタイトルです。

データ行を検索する

Foreach DataRowは DataTable内の各行を列挙する。

このアクティビティは、DataTableまたはDataViewを繰り返し処理します♪²Foreach DataRow内のすべてのアクティビティは、各行でループされます。Foreach DataRowアクティビティの使用例は、Web Automationと Excel Readのワークフロー例で紹介されています。

プロパティ パラメータ

DataTable– データを収集するために使用されるデータテーブルです。

DataView– データを収集するために使用されるデータビューです。DataViewの使用方法については、付録BのDataViewを参照してください。

Displayname– シーケンス内のアクティビティのタイトルです。

images/openrpa_foreach_datarow.png

OpenRPAのForeach DataRow.

² –DataViewとDataTableの違いは何ですか?(https://stackoverflow.com/questions/7382932/what-is-the-difference-between-dataview-and-datatable)

ハイライト要素

GetElement活動で見つけた要素をハイライト表示する。

また、GetElementアクティビティ以外でこのアクティビティを使用する場合、ユーザーは特定のElementをハイライト表示するよう定義することができます。さらに、DurationパラメータにHH:mm:ss形式のTimeSpanオブジェクトを挿入することで、ハイライトの継続時間を指定することができます(例えば00:00:30で 30 秒間ハイライトします)。また、BlockingパラメータをTrueに設定することで、ハイライトが終了するまでワークフローの実行をブロックすることができます。

プロパティパラメータ

BlockingTrueに設定すると、ハイライトが終了するまでワークフローの実行をブロックします。

DisplayName– シーケンス内のアクティビティのタイトルです。

Duration`-ハイライトの継続時間。単純な 00:00:00.00 {hh:min:ss.mili} またはTimeSpanクラスのオブジェクトを指定することができます。

ElementGetElementによってハイライトされる要素.

Result– [DEPRECATED] 現在使われていないパラメータです。

images/openrpa_highlight_element.png

OpenRPAハイライト要素

クリップボードの挿入

パラメータTextの内容をWindowsのクリップボードバッファにセットします。 しかし、このアクティビティを繰り返し連続して使用することは、バッファの問題で信頼性が低いので、お勧めしません。提案/回避策として、Invoke CodeActivityを使用して、以下のAHKコードを実行することができます。

Clipboard := variable1Timeout := 3WaitForAnyData := 1ClipWait, % Timeout, % WaitForAnyData; "variable1" is the name of the variable, can be changed.; More info about ClipWait at https://www.autohotkey.com/docs/commands/ClipWait.htm (yes .htm, not .html)

プロパティパラメータ

Displayname– シーケンス内のアクティビティのタイトルです。

Ignore Errors– エラーが発生した場合、それを無視して続行します。デフォルトはFalseです。

Text– クリップボードに挿入されるテキストです。

images/openrpa_insert_clipboard.png

OpenRPA Insert Clipboard.クリップボード挿入)。

OpenFlowの起動

Invoke OpenFlowはOpenFlow/ Node-REDで設定されたワークフローを呼び出すことができます。つまり、ワークフローのページ(例:http://localhost.openiap.io/#/Workflows)で利用可能です。

プロパティ パラメータ

Displayname– シーケンス内のアクティビティのタイトルです。

Wait until CompletedTrueに設定すると、OpenRPAは Workflow呼び出しが終了するまで待機します(成功またはエラー)。成功した場合、データを含むメッセージ(Node-REDのフローで設計されたもの)がOpenRPAロボットに返されます。

しかし、Falseに設定すると、OpenRPAは返されたメッセージにアクセスできなくなり、通信は一方通行となります。したがって、これに依存するすべてのロジックを再設計する必要があります。例外メッセージを返さないtry/catch例外ブロックのようなものだと考えてください。³

ワークフロー– 呼び出されるワークフロー

備考

ワークフローはOpenRPA/OpenFlowに現在ログインしているユーザーによって呼び出されます。つまり、呼び出すべきワークフローにアクセスできるユーザーでなければ、ワークフローのドロップダウンに表示すらされないということです。

images/openrpa_invoke_openflow.png

OpenRPA Invoke OpenFlow.

OpenRPAの起動

Invoke OpenRPAはOpenFlowのリポジトリに保存されているOpenRPA WorkflowsRPA Workflowsページで公開されているもの)を呼び出すことができます(例:http://localhost.openiap.io/#/RPAWorkflows)

Map Variables]ボタンをクリックすると、現在設定されている変数や引数をワークフ ローの呼び出しに渡すことができます。これを行うには、ドロップダウンからワークフローを選択した後、「変数、引数、イン ポート」ボックスで引数を作成し、アクティビティで「変数マッピング」ボタンをクリッ クします。

プロパティパラメータ

Displayname– シーケンス内のアクティビティのタイトルです。

Wait until CompletedTrueに設定すると、OpenRPAは Workflow呼び出しが終了するまで待機します(成功またはエラー)。成功した場合、データを含むメッセージ(Node-REDのフローで設計されたもの)がOpenRPAロボットに返されます。

しかし、Falseに設定すると、OpenRPAは返されたメッセージにアクセスできなくなり、通信が一方通行になるため、これに依存するすべてのロジックを再設計する必要があります。これは、例外メッセージを返さないtry/catch例外ブロックだと考えてください。

ワークフロー– 呼び出されるワークフロー

images/openrpa_invoke_openrpa.png

OpenRPAを起動する OpenRPA.

リモートOpenRPAの起動

OpenFlowのリポジトリに保存されたRPAワークフローをリモートで呼び出し、他のOpenRPAクライアントで実行できるようにします。

Map Variables] ボタンをクリックすると、現在設定されている変数や引数を ワークスフローの呼び出しに渡すことができます。これを行うには、ドロップダウンからワークフローを選択した後、「変数、引数、イン ポート」ボックスで引数を作成し、アクティビティで「変数マッピング」ボタンをクリッ クします。

プロパティ パラメータ

Displayname– シーケンス内のアクティビティのタイトルです。

Target– ワークフローを実行するためにアクティブにされるターゲットを識別するOpenFlowのハッシュ文字列。

完了 するまで待つ

Trueに設定すると、OpenRPAはWorkflow呼び出しが終了するまで待機します(成功またはエラー)。成功した場合、データを含むメッセージ(Node-REDでのフローで設計されたもの)がOpenRPAロボットに返されます。

しかし、Falseに設定すると、OpenRPAは返されたメッセージにアクセスできなくなり、通信が一方通行になるため、これに依存するすべてのロジックを再設計する必要があります。これは、例外メッセージを返さないtry/catch例外ブロックだと考えてください。

Workflow– 実行されるワークフローを識別するOpenFlowのハッシュ文字列。

images/openrpa_invoke_remote_openrpa.png

OpenRPA Invoke Remote OpenRPA.起動します。

マウスを移動させる

マウスカーソルをGetElementで見つかった要素(要素がない場合はデスクトップ)に相対する位置に移動します。

このActivityには、2つの使用モードがあります。

最初の使用モードはセレクタレスです。このモードでは、アクティビティはスクリーンの絶対値を使用してXと Yのオフセット値を見つけます。例として、ユーザーが 1366x768のディスプレイを持っている場合、アクティビティはスクリーン内のその解像度に従ってマウスを移動させる。このモードを使用するには、ユーザーがアクティビティのElementプロパティ内の任意の値(デフォルト値はitem)を削除するだけで、Xと Yのオフセット値を定義することができます。

2つ目の使用モードはセレクタバウンドです。このモードでは、Windowsの要素を選択した後、アクティビティは要素が占める画面の部分の相対値を使用して、Xと Yのオフセット値を見つけます。このモードを使用するには、ユーザーはMove Mouseアクティビティを選択された要素にドラッグし、Xと Yのオフセット値を定義するだけでよいのです。

アプリケーションは、「要素の取得」アクティビティを使用して選択する必要があります。

プロパティパラメータ

Animate MouseTrueに設定すると、カーソルは実行中にその位置を変えて表示されます。プレゼンテーションで何が起こっているかを示すのに適しています。

Displayname– シーケンス内のアクティビティのタイトルです。

要素要素の取得アクティビティで選択されたアプリケーション。

ポストウェイトOpenRPAがこのアクティビティの実行を完了した後、終了するまで待つ時間です。

X Offset– カーソルの移動先となるウィンドウ内の水平オフセット.単位はピクセルです。また、負の値を指定することもできます。

Y Offset– カーソルが移動するウィンドウ内の垂直方向のオフセットです.単位はピクセルです。また、負の値を指定することもできます。

備考

このアクティビティは、マウスIOを必要とします。もし見つからなかった場合は、エラーを返します。 マウス 入力を 送信 できませんでしたエラーコード。 5. OpenRPAClientがWindowsのリモートデスクトップ内から起動され、セッションが切断された場合に発生することがあります。これを避けるには、HDRobots拡張を使用し、RDPセッションを切断/終了しないか、他の方法(VNCサーバーの実行など)でセッションを永続化する必要があります。

images/openrpa_move_mouse.png

OpenRPAムーブマウス.

オープンアプリケーション

Open Applicationはセレクタを元にWindowsの要素を検索し、その要素にフォーカスを当てます。アプリケーションを見つけられなかった場合は、アプリケーションを起動します。

ハイライトをクリックすると、セレクタの条件に一致する最初の要素が赤くハイライトされます。セレクタが正しく設定されているかどうかを確認するのに便利です。

このアクティビティは、自身の内部でセレクタを操作することも可能です。必要なことは、GetElement、またはそれに応じたアクティビティを、そのシーケンス内にドラッグすることだけです。

このアクティビティは、ブラウザや、Java、SAPなどの他のアプリケーションで動作させることもできます。プロパティパラメータ

Animate Move– 開くアプリケーションのウィンドウを瞬時に移動させるのではなく、目に見える形で移動させます。プレゼンテーションに便利です。

Check Running– アプリケーションがセレクタを使用してすでに実行されているかどうかをチェックします。Falseに設定すると、何があっても新しいアプリケーションを起動します。

Displayname– シーケンス内のアクティビティのタイトルです。

Height– 設定された場合、アプリケーションはこの高さで開かれます。単位はピクセルです。

Result– 実行結果を変数に保存します。デフォルトでは、アプリケーションのElementそのものを保存します。

セレクタ– アプリケーションの識別に使用されるすべてのデータが含まれています。

Timeout– アプリケーションが見つかったかどうかを確認する時間。基本的には、Check Runningパラメータのタイムアウトです。 単純な00:00:00.00 {hh:min:ss.mili}またはTimeSpanクラスのオブジェクトにすることができます。

Width– 設定された場合、アプリケーションはこの高さで開かれます。単位はピクセルです。

X– 設定された場合、アプリケーションはこの水平オフセットに移動します。単位はピクセルです。また、負の値も可能です。

Y– 設定された場合、アプリケーションはこの垂直オフセットに移動します。単位はピクセルです。また、負の値も可能です。

images/openrpa_open_application.png

OpenRPAオープンアプリケーション

バルーンチップを表示する

バルーンチップの表示] は、システムトレイ付近の [通知の表示] アクティビティと同様のメッセージを表示します。タイトルが表示され、エラーや警告など他の種類の通知も可能な点で、[通知を表示]とのみ異なります。

プロパティパラメータ

期間– メッセージが表示される期間です。

Message– 表示されるメッセージ。引用符で囲む必要があります。

タイトル– バルーンチップのタイトルです。

Displayname– シーケンス内のアクティビティのタイトルです。

NotificationType– 異なる通知タイプ。情報、エラーまたは警告。

備考

UI 要素を変更するアクティビティ(Show Balloon Tip、WriteLine、Show Notification など)を多用しないようにします。これらのアクティビティはシングルスレッドで実行されるため、実行されるたびにワークフローの実行が一時的に停止する。

images/openrpa_show_balloon_tip.png

OpenRPAショーバルーンTip.

タイプ テキスト

ユーザーはこのアクティビティを使用することを強くお勧めします。GetElementアクティビティで要素を選択し、Assignプロパティを使って文字列値を割り当てるのが望ましいでしょう。

Type Textは、Hintに含まれるテキストから、現在フォーカスされているウィンドウにキーストロー クを送信します。すべてのキーストロークを記憶するのではなく、すべてのキーストロークを自動的にマッピングするRecorderの使用を推奨します¹。

キーストロークの構文は、「{{Modifier1, Key1}」とします。{修飾子2, キー2}」。{…}{修飾子N、KeyN}}」とします。補助キーとなる修飾子CtrlAltShiftなど)は必須ではありませんのでご注意ください。

また、ユーザーは変数や ハードコードされたテキストを送信することもできます。例えば、”{{Modifier1, Key1}}” を送信します。SOME TEXT ” + desired_variable + “{Enter}”のように送信します。

プロパティパラメータ

クリックディレイ– 各キーストローク間のディレイ。

Displayname– シーケンス内のアクティビティのタイトルです。

Textワークフローデザイナー内の表示名。

備考

このアクティビティは、キーボードIOを必要とします。もし見つからない場合は、”Could not send keyboard input. “を返します。エラーコード。5”.この現象は、Windowsリモートデスクトップセッションの内部からOpenRPAClientを起動し、そのセッションを切断した場合に発生することがあります。これを回避するためには、HDRobotsエクステンションを使用してください。RDPセッションを切断/終了したり、他の手法(VNCの実行など)でセッションを持続させたりしないでください。

images/openrpa_type_text.png

OpenRPAタイプテキスト

¹ – `TypeText Activityの概要 <https://openrpa.openiap.io/pages/typetext-syntax>`_ (“https://openrpa.openiap.io/pages/typetext-syntax“)