ConnectHTML
GuiXT
Controls
目的 | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
制御または表示コマンドで表示したHTMLページから値を読み取ることができます。 値を変更したり、リンクをクリックするなどのさまざまなアクションを実行したりすることもできます。 独自のHTMLページとインターネットまたはイントラネットページの両方を使用できます。 コントロールまたはビューを介した表示は、SAP画面に統合することも、独立した「フローティング」ウィンドウにすることもできます。
このコマンドには、コンポーネント “GuiXTコントロールズ” ”Viewer” が必要です。 |
||||||||||||||||||||||
例 | ||||||||||||||||||||||
connectHTML click=“button_Continue”
Viewで現在表示されているHTMLページで[Continue]ボタンをクリックします。 |
||||||||||||||||||||||
書式 | ||||||||||||||||||||||
connectHTML options name=“myname”
ステートメントで指定されたものと同じ名前を使用します。 Control …. name=“myname” connectHTML options window=“&V[viewwindow]” “View …. returnwindow=viewwindow” ステートメントによって返されたウィンドウ番号を使用します。 すべてのオプションとHTML変数は、このウィンドウを参照します。 connectHTMLの後、HTML変数を使用できます。 Set html[name] “value” // HTMLページに値をセットします。 “… &html[name] …” // HTMLページから値を読み取ります。 if html[name] // HTML要素の存在を問い合わせます。 |
||||||||||||||||||||||
オプション | ||||||||||||||||||||||
|
||||||||||||||||||||||
HTML要素の使用 | ||||||||||||||||||||||
HTML変数は、通常のスクリプト変数V […]と同じように使用できます。 表記はhtml […]です。 次のコンテキストで使用できます。
Set html[name] “value” // HTMLページに値をセットします。 “… &html[name] …” // HTMLページから値を読み取ります。 if html[name] // HTML要素の存在を問い合わせます。 新しい値が設定されると、GuiXTはこの要素のHTMLページの「変更時」ルーチンを自動的に呼び出します。 ドロップダウンフィールド(要素の選択)の場合、場合によっては、この要素を変更した後、click =を使用してクリックする必要があります。 そうしないと、HTMLページの内部処理の一部が失われる可能性があります。 HTMLページのユーザー操作を自動化する場合、ほとんどの場合(値を設定してリンク、ボタン、または画像をクリックすること)、connectHTMLが提供する手段で十分です。 ただし、特別なJavaScriptまたはVBScript関数が使用されている場合や、ページに特別なプラグインが含まれている場合は、ユーザー操作の自動化がconnectHTML機能を超える場合があります。 |
||||||||||||||||||||||
HTML要素の命名法 | ||||||||||||||||||||||
開発中は、listelements= および--shownames機能を使用してHTML要素名を表示することをお勧めします。
GuiXTは次の方法で要素の名前を作成します。名前は常に要素タイプ(image_, button_, checkbox_, …)で始まります。 次に、要素の内部IDまたは名前、またはユーザーテキスト(ボタンテキストなど)。 すべての「スペース」文字は下線に置き換えられます。 重複する名前が発生した場合、GuiXTは接尾辞.2、.3、…を追加します。
例: html[image_help.jpg] |
||||||||||||||||||||||
HTMLテーブル | ||||||||||||||||||||||
テーブルはHTMLページでは非常に一般的です。入れ子にすることができます。 GuiXTを使用すると、各テーブルセルに対処できます。名前には、GuiXTは次の表記を使用します。cell_i.j.kは、テーブルiの行jのセル番号kです。
例: html[cell_1.4.5] ぺージの最初のテーブル内のセル、つまり行4、カラム5(1から始まる)のセルを示します。 ネストされたテーブルの場合、名前はテーブルを含むセルの名前で始まり、その後に「〜」とネストされたテーブル内の通常のセル座標が続きます。 例: html[cell_3_1_7~1_2_2~2.2.4] これは次のセルです。ページの3番目の外部テーブルから始めます。行1、カラム7のセルを選択します。このセルには少なくとも1つのネストしたテーブルがあります。最初のネストされたテーブルの最初の1つを取得してから、行2、カラム2のセルを取得します。このセルには、少なくとも2つのネストされたテーブルがあります(ネストレベル2)。 2番目のものを取得し行2とカラム4に移動すると、セルcell_3_1_7~1_2_2~2.2.4に到達します。 各テーブルの行数 各テーブルに対して、GuiXTはこのテーブルの行数を含むHTML変数 “…_ rows”を割り当てます。
“&html[table_1_rows]”
“&html[table_3_1_7~1_rows]” 行カウントを使用する代わりに、特定のセルの存在を照会する方が多くの場合より現実的です。 例: // row index label begin // no further row? … process table row Set V[i] &V[i] + 1 label end |
||||||||||||||||||||||
チェックボックスとラジオボタン | ||||||||||||||||||||||
チェックボックスまたはラジオボタンの値は0および1で表されます。ラジオボタンを設定すると、同じグループ内の他のすべてのラジオボタンは自動的にリセットされます。
例: Set html[radio_English] 1 |
||||||||||||||||||||||
HTMLページのロード時間 | ||||||||||||||||||||||
いくつかのアクションの後、例えば ボタンをクリックすると、新しいHTMLページをロードする必要があります。これには時間がかかる場合があります。
各connectHTML コマンドはまず、ページが完全に読み込まれるまで待機してから、必要なアクションを実行します。 2分間待機した後、connectHTMLはスクリプト処理に戻ります。下記を使用すると、connectHTMLの後で、アクションが成功したかどうかを照会できます。 if not Q[ok]
Return “….” |