ここでは、OpenRPAでのActivityの使い方に関する質問を取り上げます。
OpenIAPカテゴリー: 3.B. OpenRPA - FAQ
3.B.1.1. 要素が存在することを確認する方法
まず、GetElement
ActivityのMinResults
パラメータを0に
変更する必要があります。
次に、使用するGetElement
アクティビティに応じて、Elements
またはResult
パラメータに変数を設定する必要があります。
そして、一番外側、つまりメインのシーケンスにIf
アクティビティを追加する必要があります。Elements
またはResult
パラメータの変数をitemと
定義した場合、item.Length = 0
– またはitem.Length <> 0に対して
チェックし、Elementが
存在しないことをチェックする必要があります。
3.B.1.2. スクリプト 実行 アクティビティーの内容を返す方法
ユーザは、同じ名前のパラメータ内にResult
変数を定義して、最後に評価された式をString
オブジェクトとして返すことができます。詳しくは、スクリプトの実行アクティビティを参照してください。
3.B.1.3. メール取得アクティビティを使用して、メールのステータスを変更し、送信者のメールアドレスを取得するにはどうすればよいですか
item.UnRead
パラメータをTrue
またはFalseに
設定することで、ユーザーはメールの ステータスを
変更することができます。
また、SenderEmailAddress
パラメータを変数に代入して取得することも可能です。
3.B.1.4. カスタムNuGetパッケージのインポートは可能ですか
はい、OpenRPA v1.1.1(https://github.com/open-rpa/openrpa/releases/tag/1.1.1
) からは、カスタムNuGetパッケージをOpenRPAのネームスペースにインポートできるようになりました。
3.B.1.5. OpenFlow 内部でSecureString(https://docs.microsoft.com/en-us/dotnet/api/system.security.securestring?view=netcore-3.1) として格納されているパスワードを、OpenRPA 内部で利用できるように変換するにはどうすればよいですか?
GetCredentials
Activity で取得したSecureString
をSystem.Net.NetworkCredential(string.Empty, securePassword).Password
に代入することができます。ここで、string.Empty
は、上記の Activity 内でPassword
パラメータとしてキャプチャされた変数です。
また、Unsecure Password
パラメータを使用して取得することもできます。しかし、これはかなり安全性の低い方法です。
3.B.1.6. 他のワークフローから取得した引数をOpenRPAのInvoke OpenRPAActivityでOpenRPA内部にマッピングするには?
ユーザーはMap Argument
ボタンを使って、そのavlueを保存するためにOpenRPA内部であらかじめ作成された引数にマッピングすることができます。
3.B.2. 変数と引数
OpenRPAでの変数・引数の使い方に関する質問です。
3.B.2.1. Node-REDに変数や引数を返す方法
変数はワークフローのローカルスコープに収まるため、Node-REDに渡すことはできません。
一方、引数はmsg
オブジェクトの一部として渡されます。したがって、例えばユーザがname という
引数を定義していた場合、関数
ノードを使ってmsg.payload.name
をmsg.name
に代入します。
REST Service (Node-REDとの統合)のセクションで、ユーザは手近な例を見つけることができます。
3.B.3. セレクタ
ここでは、OpenRPAの内部でセレクタを使用する際の質問について説明します。
3.B.3.1. NMで他のタイプのセレクタを使用するには
通常のXPath セレクタの
他に、GetElement
Activityの中でcssselector
パラメータを使って、CSS セレクタを
定義することができます。
詳しくは、「CSSセレクタの使用」をご参照ください。