「Javascriptを挿入(NB)」アクティビティのご紹介をします。
1.アクティビティのプログラム名
RCA.Activities.NativeBrowser.InjectJs
2.説明
Studio バージョン 2.1.1.1から
クイックアクセス: 「ツールボックス」 > 「Native Browser」 > 「Javascriptを挿入(NB)」
コボットStudio 2.1.1.1リリース時に追加されたアクティビティです。パッケージマネージャーから追加可能です。WebページにJavascriptを挿入することができます。
※動作を確認したコボットStudioのバージョン:2.1.1.2
※バージョンによって文言などが一部異なる場合がございます
3.プロパティ
プロパティ項目 | プロパティ名 | 入力欄 | 説明 |
---|---|---|---|
その他 | パブリック | チェック項目 | ログにアクティビティ内の変数と引数がログファイルに書き込まれ、Centerにプッシュされる。(詳細は「プロパティ項目「パブリック」について」を参照) |
表示名 | 任意の文字列 | デザイナーパネルのアクティビティ名に反映される。 | |
一般 | エラー時に続行 | 値を入力(Boolean型) | エラー時に後続の処理に進む。 |
タイムアウト | 値を入力(Int32型) | エラーになる前に指定した時間(ミリ秒)待機する。 | |
実行後の待機時間 | 値を入力(Int32型) | Javascriptを実行した後に指定した時間(ミリ秒)待機する。 | |
実行前の待機時間 | 値を入力(Int32型) | Javascriptを実行する前に指定した時間(ミリ秒)待機する。 | |
出力 | 出力スクリプト | 値を入力(String型) | Javascriptの結果を取得する。 |
入力 | スクリプトファイル | 値を入力(String型) | 実行したいJavascriptが記述されたファイルを設定する。 |
4.使い方
「Javascriptを挿入(NB)」アクティビティの使用例を参考に説明します。
【例】Chromeで任意のページを開いている状態でテキストボックスにJavascriptで文字入力を行う
今回は、Webページ内のテキストボックスに「kobot」と入力するJavascriptを実行するワークフローを作成します。
「Native Browser」 > 「ブラウザを開く(NB)」アクティビティで開きたいページを設定している状態で、「Native Browser」 > 「Javascriptを挿入(NB)」アクティビティを「ブラウザを開く(NB)」内にドラッグ&ドロップで配置します。
このとき「一般」 > 「完了または障害が発生した場合にブラウザを終了」プロパティのチェックが外れていることを確認してください。(デフォルトではチェックは外れています。)
「入力」 > 「スクリプトファイル」プロパティに実行したいJavascriptを記載したファイルを設定します。
今回実行するスクリプトファイルの中身は以下のようになっています。
「ホーム > スタート」ボタン、または「F5」キーにてワークフローを実行すると、指定した入力フィールドに文字が入力されます。
【例】JS出力を用いて、スクリプトからの戻り値を取得する
「出力」 > 「出力スクリプト」プロパティを用いることで、スクリプトからの戻り値を取得することが出来ます。今回実行するスクリプトファイルの中身は下の画像のようになっています。
※「function利用時の注意点」もご確認お願いします
スクリプトから取得した戻り値を格納するString変数「result」を「出力スクリプト」プロパティに設定します。変数の作成方法について詳しくは「変数の作成」をご参照ください。
「コア」 > 「ダイアログ」 > 「メッセージボックス」アクティビティを配置し、「入力」 > 「テキスト」プロパティにString型変数「result」を設定します。
「ホーム > スタート」ボタン、または「F5」キーにてワークフローを実行すると、指定した入力フィールドに文字が入力された後、メッセージが画面に表示されます。
5.function利用時の注意点
Javascriptで関数(function)を使用する場合の注意点があります。
- 「Intrnet Explorer」 > 「Javascriptを挿入(IE)」アクティビティ
- 「ブラウザ」 > 「Javascriptを挿入(B)」アクティビティ
- 「Native Browser」 > 「Javascriptを挿入(NB)」アクティビティ
上記3つのアクティビティではJavascriptの記述方法と出力の内容が異なります。
Javascriptの記述方法について
この記事で説明している「Javascriptを挿入(NB)」の場合はfunctionの定義の外側に「return」の記述は不要ですが、functionの定義の外側にfunctionを呼び出す記述を行なう必要があります。
「Javascript(IE)」の場合(returnの記述は不要)
・・・
}
「Javascript(B)」の場合(returnの記述が必要)
・・・
}
return a();
「Javascript(NB)」の場合(returnの記述は不要だがfunctionを呼び出す記述が必要)
・・・
}
a();
出力の内容について
「Javascriptを挿入(IE)」アクティビティや「Javascriptを挿入(B)」アクティビティでは出力は「期待した出力値」という形で出力されますが、「Javascriptを挿入(NB)」の場合は以下のように前後に「[」と「]」がついた状態で出力されます。
「Javascriptを挿入(NB)」の場合
"期待した出力値"
]