![]() |
ADOS Developer's Site - XML Stadium |
![]() |
![]() |
|
![]() |
【SiteArc Tips】WebページからSiteArcセッションを起動する †SiteArcを起動したいWebページのフォームの中に、起動用のボタンを入れます。 <input type="button" value="シナリオ起動" onClick="Start_SiteArc()"> ボタンがクリックされたときに実行される、JavaScript関数を用意し、Webページに直接入れるか、別ファイルとしてWebページから参照します。 例:セッションファイル scenario1.rec を起動する関数 function Start_SiteArc() { var win = window.open("about:blank", "SiteArc"); win.location.href = "http://sitearc.task/?session=scenario1"; } IEのメニューバーやツールバーを表示させない †var winStyle = "left=10,top=10,width=500,height=300,menubar=no,toolbar=no,resizable=yes"; var win = window.open("about:blank", "SiteArc", winStyle); win.location.href = "http://sitearc.task/?session=scenario1"; 他のWebサイトへ行って戻るWebサイト間情報連携 †WebサイトA(出発地)から、別のWebサイトBへジャンプして情報を引き渡し、WebサイトB内の処理を行い、取得した情報をWebサイトA(出発地)に戻す方法です。 WebサイトA(CGI、JSP、ASPなどのWebアプリケーションを想定) フォームに情報入力 ↓ 送信ボタンクリック ↓ ページにバンドルされたJavaScriptを起動 ・引渡し情報をレジストリに書き込む ・SiteArcセッションを別ウィンドウに起動 ・WebサイトBの処理終了を監視 WebサイトB(SiteArcセッションで自動実行) ・レジストリの引渡し情報を基に、自動実行処理 ・Webページから情報を取得してレジストリやファイルに書き込む ・処理終了情報をレジストリに書き込む WebサイトA WebサイトBの処理終了を監視 ↓ 処理終了時に、レジストリやファイルからWebサイトBの戻り情報を取得 ↓ Webページに表示する 自動実行だけでなく、ユーザの手動操作の監視もしたい場合 †IEをWebブラウザオブジェクトとしてスクリプトから生成 ↓ 生成したIEオブジェクトにSiteArcセッションを起動して自動実行 ↓ 自動実行終了後、手動操作の監視に切り替え ↓ ユーザの手動操作を監視し、情報の保管や他システム連携を行う 上記のような流れになります。 ウィンドウにフレームがある場合、すべてのフレームを処理する †雛形となるスクリプト(外部jsファイルに記述する場合) if (document.frames.length > 0) { for (var n = 0; n < document.frames.length; n++) { alert("!!! frames(" + n + ") !!!"); alert(document.frames(n).document.body.innerHTML); } } セッションファイルに直接記述する場合は、「<」をエスケープする <script> if (document.frames.length > 0) { for (var n = 0; n < document.frames.length; n++) { alert("!!! frames(" + n + ") !!!"); alert(document.frames(n).document.body.innerHTML); } } </script> SiteArc を、ウィンドウ(IE)を非表示にして実行する †利用者に余計な操作をさせないために、Internet Explorerを非表示のまま起動して実行したい場合があります。 その要求は、WSH(Windows Scripting Host)からSiteArcを起動することによって実現できます。 invisible.vbs Dim IE, IsTerminated IsTerminated = False Set IE = WScript.CreateObject("InternetExplorer.Application", "IE_") IE.Visible = False IE.Navigate "http://sitearc.task/?session=sales" Do While(Not IsTerminated) WScript.Sleep 1000 Loop Sub IE_OnQuit() IsTerminated = True End Sub invisible.vbsのダブルクリック、またはコマンドラインから実行できます。 |
Copyright 2005-2008. ADOS Co., Ltd. All Rights Reserved. |