Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » Mobile Link - クイック・スタート » Mobile Link チュートリアル » チュートリアル:Java 同期論理の使用

 

レッスン 2:イベントを処理するクラス・メソッドの指定

前のレッスンで作成された CustdbScripts.class は、メソッド UploadInsert と DownloadCursor をカプセル化します。これらのメソッドには、それぞれ ULCustomer の upload_insert イベントと download_cursor イベントの実装が含まれています。

この項では、次の 2 つの方法を使用して、テーブル・レベル・イベント用のクラス・メソッドを指定します。

  • Sybase Central の Mobile Link の管理モードを使用する方法

    Sybase Central を使用して CustDB データベースに接続し、upload_insert スクリプトの言語を Java に変更して、イベントを処理する CustdbScripts.UploadInsert を指定します。

  • ml_add_java_table_script ストアド・プロシージャを使用する方法

    Interactive SQL を使用して CustDB データベースに接続し、ml_add_java_table_script を実行して、download_cursor イベントを処理する CustdbScripts.DownloadCursor を指定します。

♦  ULCustomer の upload_insert イベントを処理する CustdbScripts.UploadInsert を指定するには、次の手順に従います。
  1. Sybase Central の Mobile Link の管理モードを使用してサンプル・データベースに接続します。

    1. Sybase Central を起動します。

    2. [表示] - [フォルダ] をクリックします。

    3. [接続] - [Mobile Link 11 に接続] をクリックします。

    4. [ID] タブをクリックします。

    5. [ODBC データ・ソース名] をクリックし、SQL Anywhere 11 CustDB と入力します。

    6. [OK] をクリックします。

    Sybase Central は Mobile Link 11 プラグインで CustDB データ・ソースを表示します。

  2. ULCustomer テーブル用の既存の upload_insert イベントを削除します。

    1. 左ウィンドウ枠で、[同期テーブル] フォルダをダブルクリックし、ULCustomer テーブルを選択します。テーブル・レベル・スクリプトのリストが、右ウィンドウ枠に表示されます。

    2. custdb 11.0 の upload_insert イベントに関連するテーブル・スクリプトを選択します。[編集] - [削除] をクリックします。

    3. [削除の確認] ウィンドウで、[はい] をクリックします。ULCustomer テーブルから custdb 11.0 の upload_insert イベントが削除されます。

  3. ULCustomer テーブル用に新規の upload_insert イベントを作成します。

    1. [同期テーブル] フォルダで ULCustomer テーブルが選択された状態で、[ファイル] - [新規] - [テーブル・スクリプト] をクリックします。

    2. スクリプト・バージョンとして custdb 11.0 を選択します。

    3. 作成するイベントとして upload_insert を選択し、[次へ] をクリックします。

    4. [新しいスクリプト定義を作成する] を選択して [Java] を選択します。

    5. [完了] をクリックします。

  4. upload_insert event に対して CustdbScripts.UploadInsert メソッドを実行するよう Mobile Link サーバに指示します。

    1. custDB 11.0 の upload_insert スクリプトを選択します。

    2. 右ウィンドウ枠で、次のコードを入力します。

      CustdbScripts.UploadInsert
    3. [ファイル] - [保存] をクリックします。

  5. Sybase Central を終了します。

この手順では、Sybase Central を使用して、Java メソッドを ULCustomer の upload_insert イベント用のスクリプトとして指定しました。

別の方法として、ml_add_java_connection_script ストアド・プロシージャや ml_add_java_table_script ストアド・プロシージャも使用できます。これらのストアド・プロシージャは、同期イベントを処理するのに多数の Java メソッドが必要な場合に使用すると、より効率的です。

ml_add_java_connection_script システム・プロシージャml_add_java_table_script システム・プロシージャを参照してください。

♦  ULCustomer の download_cursor イベントを処理する CustdbScripts.DownloadCursor() を指定するには、次の手順に従います。
  1. Interactive SQL を使用して、サンプル・データベースに接続します。

    1. [スタート] - [プログラム] - [SQL Anywhere 11] - [Interactive SQL] をクリックするか、次のコマンドを実行します。

      dbisql
    2. [ID] タブをクリックします。

    3. [ODBC データ・ソース名] をクリックし、SQL Anywhere 11 CustDB と入力します。

    4. [OK] をクリックします。

  2. Interactive SQL で次のコマンドを実行します。

    CALL ml_add_java_table_script(
    'custdb 11.0',
    'ULCustomer',
    'download_cursor',
    'CustdbScripts.DownloadCursor');
    COMMIT;

    次に、各パラメータの説明を示します。

    パラメータ 説明
    custdb 11.0 スクリプト・バージョン
    ULCustomer 同期テーブル
    download_cursor イベント名
    CustdbScripts.DownloadCursor 完全に修飾された Java メソッド
  3. Interactive SQL を終了します。

このレッスンでは、ULCustomer テーブル・レベル・イベントを処理するための Java メソッドを指定しました。次のレッスンでは、Mobile Link サーバが確実に適切なクラス・ファイルと Mobile Link サーバ API をロードするように指定します。

詳細情報

ストアド・プロシージャを使用してスクリプトを追加する方法の詳細については、ml_add_java_connection_script システム・プロシージャml_add_java_table_script システム・プロシージャを参照してください。

同期スクリプトの追加方法と削除方法の概要については、スクリプトの追加と削除を参照してください。