質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Blue Prism

Blue Prismは、複数ロボットの統括管理RPAです。各企業の事業部門に分散されているロボットに対し、プロセスの制御・監視・実行・スケジュールを行うコンソールでロボットの運用を推進。内部統制を強化できます。

Q&A

解決済

2回答

3779閲覧

[Blue Prism] IEオブジェクト作成時の操作ステージ:Terminateアクション利用について

momo2301

総合スコア7

Blue Prism

Blue Prismは、複数ロボットの統括管理RPAです。各企業の事業部門に分散されているロボットに対し、プロセスの制御・監視・実行・スケジュールを行うコンソールでロボットの運用を推進。内部統制を強化できます。

0グッド

0クリップ

投稿2020/07/21 01:53

編集2020/07/22 02:52

[Blue Prism] オブジェクト作成時の操作ステージ:Terminateアクションについて

Blue Prismで、オブジェクト作成において
アプリケーションモデラーのルートに対して、
Terminateアクションを利用し、アプリケーションを終了させていますが
Terminateアクションを利用していいのか迷っています。

今回の対象アプリケーションはIEで、
ユーザーIDとPWを入力してログインするサイトです。
ログアウトして、Terminateアクションを使うという手順です。

プロセス:オブジェクト.ログアウト → オブジェクト.終了(Terminateアクション)

例えば基幹系システムだったり、独自開発のWindowsアプリケーションであれば
どこかに終了といったメニューが存在すると思うので、そちらをスパイして、
動作を設定すれば問題ないと思います。

IE(または他のブラウザ系)を終了させる場合には、
当該システムからログアウトした後に、
Terminateアクションを利用するのが
ベストプラクティスなのでしょうか?

文章長くなってまとまりなくすみません。よろしくお願いいたします。

試したこと

下記の記事を見て、Terminateは極力使用すべきではないことは理解しています。

https://www.ebocean.work/entry/2019/08/29/000904
Terminateの操作ステージは極力回避し、正しくログアウト、終了するメニューを利用すること

また、下記BP内ドキュメントより、緊急性のある場合のみ利用することも理解しています。
Terminate
Terminate the target application. For emergency use only
This action takes no parameters
The internal ID for this action is 'Terminate'
Works with the following element types:
Application elements

補足情報(FW/ツールのバージョンなど)

BP6.4.2 IE11

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

はじめまして。

私の場合ですが、EBOの記事にある通り、
Terminateは基本使用しないようにしています。

というのも、「Terminate」の挙動として
アプリケーションのプロセスを強制的に落としているようで、
「Terminate」を使用した後再度起動すると
アプリケーションによっては
挙動が変わるものがあるためです。
(Chromeの場合「前回のタブを復元しますか?」のようなポップアップが表示されるなど)

そのため、アプリケーションに終了のメニューがない場合は、
Win32モードでアプリケーションのウィンドウ全体をスパイして
基本的に**「ウィンドウを閉じる」**
(v6.4.2の場合は「Close Window」だったかな?)
を使用して終了するようにしています。

IEの場合、ウィンドウの左右の端の方にマウスカーソルを乗せないと
ウィンドウ全体をスパイできないので、ちょっとコツが必要ですね。
イメージ説明

ウィンドウ右上の×ボタンをUIAやAAなどでスパイしてクリック処理でもいいのですが、
以下の理由からウィンドウ全体をスパイして使っています。
・UIAだと「Close Window」と比較して若干処理スピードが劣る
・AAだと処理スピードはそこそこだがWin32モードと比較して安定性が劣る。
・ウィンドウ全体をスパイしておく方が汎用的。
(Global Send Keysの前のActivate Applicationなどに使える)

また、「Terminate」アクションは
アプリケーションにアタッチしているときしか使えない
(アタッチされていない状態で使用するとInternal Errorが出る)
ので、強制終了する場合は
**「Utility - Environment」の「Kill Process」**を使用したほうが
何かと便利、という点も補足させていただきます。

投稿2020/07/27 02:36

Neapolitan

総合スコア21

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

momo2301

2020/07/27 12:45

Neapolitanさん、はじめまして。 terminate やはり、次回起動時、「前回のタブを復元しますか?」のようなポップアップ表示など 現象あられるんですね。 私も当該システムからログアウトした後に使用した場合でも、たまにポップアップ出るのですね。 Windowのスパイができなくて、タブはなんとかなったのですが、CLOSEを使っても うろ覚えですが、表示だけが消えて、タブは残ってる(空白のタブ)だったかと・・・に なったりして困っていました。 > 「Terminate」の挙動として > アプリケーションのプロセスを強制的に落としているようで、 私もおそらく、このやり方だと思ったので それであれば Kill Process を利用するのと変わりがないなと 思っておりました。 Win32モードでアプリケーションのウィンドウ全体をスパイする方法までご丁寧に解説いただいたので 明日、職場で確認してみます。 お忙しいところ、ご丁寧にありがとうございました。
guest

0

こんばんは。

既に Neapolitan さんが素晴らしい回答をされてますが、別のやり方としてグローバルキー送信で Alt + F4 を送ると言う方法もあるかと思います。

イメージ説明

ただ、Neapolitan さんが紹介されたやり方の方がスマートかなと思います。????

投稿2020/07/27 14:00

EnterpriseOcean

総合スコア276

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

momo2301

2020/07/29 00:39

EnterpriseOceanさん、回答ありがとうございます。 やはり、みなさん、極力Terminateは利用されていないんですね。 新たな方法をご教示いただいたので、その時々で活用させていただきます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問