cancel
Showing results for 
Search instead for 
Did you mean: 

ブラウザでポップアップしたウインドウを別オブジェクトでスパイするとHTMLモードにならない件

MarikoNishiwaki
Level 6
コミュのみなさまこんにちわ。

表題の件、サポートに投げたんですがあまり納得できてないのでこちらでも聞いてみます。

とある社内アプリで、ブラウザでログイン後ポップアップして操作するものがあります。
開発者は1つのオブジェクトで開発していたので、「ポップアップは別オブジェクトのほうがいいよ」というセオリー通りの指導をしました。
すると、別オブジェクトでポップアップをウインドウタイトル+ブラウザベースのアプリケーション(IE)でアタッチ後スパイしようとするとHTMLモードになりません。

サポートは「ポップアップはJavascriptだからスパイできない」という説明でしたが、
別オブジェクトでなく、ポップアップ前の状態から1つのオブジェクトを利用していればHTMLでスパイが可能なのです。

1)まず、ポップアップのときは別オブジェクトというベストプラクティス的なことは、皆さまどのようにお考えでしょうか?
2)ブラウザベースのアプリケーションを選択しているのに、HTMLでスパイできないのはそもそも納得できないんですけど…

と、いろいろモヤモヤしているのでご意見やアドバイスいただきたいです。

とりあえずこのアプリは1つのオブジェクトで開発させようと思ってます。

以上、よろしくおねがいいたします。

------------------------------
Mariko Nishiwaki
ProjectAsistantManager
Denso
Asia/Tokyo
------------------------------
7 REPLIES 7

TomohideMiya
Level 2
初めまして、宮と申します。

社名は出せませんが、弊社でも記載いただいたように別オブジェクトとして開発していますので、
回答させていただきます。

1)まず、ポップアップのときは別オブジェクトというベストプラクティス的なことは、皆さまどのようにお考えでしょうか?
 →これはBPのAttachの仕様として、仕方ないと思っています。(もちろん作りとして不格好ですが。)
  BPでは、HTMLモードの場合、IEに描画されているWebサイトの内容をスパイすることができるようにしているかと思いますが、
  あくまでポップアップはWebサイトの機能ではなくInternet Excplorer本体の機能だと考えています。

  したがって、Webサイトの内容にかかわるものはIEモード、Internet Explorerそのものの機能はIE自体はWin32モードでスパイするようにしています。


2)ブラウザベースのアプリケーションを選択しているのに、HTMLでスパイできないのはそもそも納得できないんですけど…
 → 上記の通り、ポップアップはあくまでHTMLからIE自体の機能を呼び出しているにすぎないので、ポップアップはHTMLではありません。
   なので、WindowsアプリケーションであるIEの機能としてスパイした方が良いかなと思います。
   これはポップアップだけでなく、ファイルダウンロード用のダイアログやファイルアップロード用のダイアログ、PDFのビューワーも同様と思います。

------------------------------
Tomohide Miya
Robot Engineer
MetLife Insurance
Asia/Tokyo
------------------------------

宮さん

お返事ありがとうございます!

説明が足りなくて申し訳なかったのですが、
「ダウンロードダイアログ」や「セキュリティダイアログ」といったポップアップではなく、
HTMLの別ウインドウがポップアップする状態なんですね。

なので、ポップアップした画面内は、大枠はHTMLで設計されているんですね。
(ポップアップ自体はJavaScriptで実行されているかもしれないけれども)

ダイアログはWinモードでスパイしないといけないことは理解するんですが、
別ウインドウのポップアップの場合は宮さんの仰るように、IEで、つまりHTMLでスパイしたいですよね。

で、ポップアップにIEでアプリケーションモデラーを設定し、アタッチしてもHTMLが選択できないのはなぜだあああ!!
という話なんです。。。

(もしかして、私だけというかこのアプリだけの現象なんだろうか…)

------------------------------
Mariko Nishiwaki
ProjectAsistantManager
Denso
Asia/Tokyo
------------------------------

大変お世話になっております、BP 永田です。 

ポップアップ用オブジェクトから アタッチする際、Child Index (子インデックス)を変更した場合

HTMLモードで解析可能か試してください。

ポップアップの作りにより Child Indexの変更が必要な場合があった経験がございます。

貴社環境(アプリ)を理解しておらず、ざっくりとした返信で申し訳ありません。



------------------------------
Tamotsu Nagata
Sr Solutions Consultant
Blue Prism KK
Asia/Tokyo
------------------------------

永田さん

西脇です。お世話になっております。
お返事ありがとうございます!

子インデックス設定済みでした・・・
確かに、子インデックスがないとアタッチすら出来なかったので。

やっぱりアプリの仕様ですかね~…涙
とはいえ、開発者が「これはHTMLだよっ」って指示してるのに、
HTMLでスパイ出来ないのはもやもやする…

------------------------------
Mariko Nishiwaki
ProjectAsistantManager
Denso
Asia/Tokyo
------------------------------

西脇様

僕も もやもやするので、もう少し考えます。

即答できず 申し訳ございません。



------------------------------
Tamotsu Nagata
Sr Solutions Consultant
Blue Prism KK
Asia/Tokyo
------------------------------

試せる方法を探していて、以下のサイト見つけましたがHTMLのポップアップってこういうのですよね?

閲覧者に不便をかけない「サブウインドウ」を開く方法
https://allabout.co.jp/gm/gc/23816/


何故か私の環境では上記サイト、Chrome等では正しくポップアップしてくれるのですが、
IE11ではポップアップではなく強制的に別タブで開いてくれるので
普通にBPでアタッチしてHTML操作できてしまいました・・・

逆に上記事象より、以下の可能性をちょっと疑っています。

・私の端末のIEは何かの設定で強制的に新ウィンドウをタブとして開いているのだと思うので
 そのような設定に変えられれば操作できるようになるかも?
・IE的には新ウィンドウを別タブで開いているような動作をするとすると、
 モデラーのOnly Interacts with Active Tabのチェックを外すと何かいいことがあるかも?
・IEのタブ管理方式によってはプロセスのChild Indexが変わるので色々変えて試す必要があるかも?
 (設定はしてあるということですが念のため、child indexは単にアタッチできればOKではなく、数字を色々変えて試すことが重要です)

あんまり役立たない気がしますが折角調べたのでコメント残しておきます。

------------------------------
Hidetoshi Suzuki
Nissho Electronics
Asia/Tokyo
------------------------------

永田さん・鈴木さん

お返事ありがとうございました。
おかげさまで解決しました!
Child Index を0にしたらHTMLでスパイ出来ました!
マッチインデックスだと1から始まるのに、Child Indexは0からなんですね~…

ものすごく勉強になりました。

お二方ありがとうございました!

------------------------------
Mariko Nishiwaki
ProjectAsistantManager
Denso
Asia/Tokyo
------------------------------