ページの先頭行へ戻る
Interstage Host Access Service V10.0.1 ユーザーズガイド
Interstage

19.4.2 スクリーンインターフェースの使用方法(キー入力シミュレート)

エミュレータのキー入力をシミュレートし行桁位置に基づいた処理を実現するには、スクリーンインターフェースを利用します。

スクリーンインターフェースの使用方法を説明します。

対象とするエミュレータ操作

  1. ホストに接続します。

    ログオン画面が表示されます。

  2. ログオン画面でユーザIDとパスワード入力し、[Enter]キーを押します。

    業務メニュー画面へ移行します。

  3. 業務メニュー画面で、業務番号(例:1)を入力し、[Enter]キーを押します。

    商品登録業務が実行されます。

  4. ホストから切断します。

実装方法

  1. Sessionクラスのインスタンスを作成します。

  2. Sessionクラスのconnectメソッドによりホストと接続します。

  3. Sessionクラスのscreenメソッドにより、Screenクラスのインスタンスを取得します。

  4. ScreenクラスのsendKeysメソッドによりログオンIDとパスワードを入力し、ホストへ実行キーを送り、ログオンします。

  5. ScreenクラスのwaitStringメソッドにより、新しいホスト画面を待ち合わせます。

  6. ScreenクラスのsendKeysメソッドにより、業務番号(例:1)を入力し、ホストへ実行キーを送り、業務を実行します。

  7. すべての処理が終了したら、Sessionクラスのdisconnectメソッドによりホストから切断します。

import com.fujitsu.interstage.has.api.Session; 
import com.fujitsu.interstage.has.api.Screen; 
import com.fujitsu.interstage.has.api.IHASException;

public class Example2 {
    public static void main(String[] args) {

      // Sessionインスタンスの生成  (手順1) 
      Session session = new Session();

      try {
          // ホストに接続  (手順2) 
          session.connect("connect_path1");
      } catch (IHASException e) {
          System.out.println(e.getMessage());
          return; 
      }

      try {
          // Screenの参照を取得  (手順3) 
          Screen screen = session.screen();

          // ログオン処理  (手順4) 
          screen.sendKeys("USER1[TAB]"); 
          screen.sendKeys("PASSWORD[ENTER]"); 

          //新しいホスト画面を待ち合わせ  (手順5) 
          screen.waitString("業務メニュー");

          // 処理コードの入力  (手順6) 
          screen.sendKeys("1[ENTER]"); 
      } catch (IHASException e) {
          System.out.println(e.getMessage());
          return; 
      } finally {
          // 切断  (手順7) 
          try {
            session.disconnect();
          } catch (IHASException e) {
            System.out.println(e.getMessage());
            return; 
          }
      }
    }
}