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 イベント » 同期イベント

 

begin_synchronization 接続イベント

同期処理の準備中にアプリケーションが Mobile Link サーバに接続する時点で、任意の文を処理します。

パラメータ

次の表の説明では、SQL データ型を示します。Java または .NET でスクリプトを作成する場合、適切なデータ型を使用してください。SQL データ型と Java データ型SQL データ型と .NET データ型を参照してください。

SQL スクリプトのパラメータ名

説明

順序

s.remote_id VARCHAR(128)。Mobile Link リモート ID。名前付きパラメータを使用している場合のみ、リモート ID を参照できます。 適用不可

s.username

VARCHAR(128)。Mobile Link ユーザ名。

1

デフォルトのアクション

なし

備考

同期を準備するアプリケーションが Mobile Link サーバとの接続を形成した直後に、Mobile Link サーバがこのイベントを実行します。このイベントは、アップロード・トランザクションの前に、別のトランザクションで実行されます。

begin_synchronization スクリプトは統計値の管理に便利です。これは、エラーや競合が発生しても end_synchronization スクリプトが起動されるので、アップロード・トランザクションがロールバックされている間は、統計値のようにデータが維持されるためです。

参照
SQL の例

username の値を後続のスクリプトで何度も参照する場合は、その値をテンポラリ・テーブルまたは変数に格納できます。

CALL ml_add_connection_script ( 
  'version1', 
  'begin_synchronization', 
  'set @EmployeeID = {ml s.username}' );
Java の例

次の Mobile Link システム・プロシージャ・コールは、スクリプト・バージョン ver1 を同期するときに、beginSynchronizationConnection という Java メソッドを begin_synchronization 接続イベント用のスクリプトとして登録します。

CALL ml_add_java_connection_script( 
 'ver1',
 'begin_synchronization',
 'ExamplePackage.ExampleClass.beginSynchronizationConnection'
)

次に示すのは、サンプルの Java メソッド beginSynchronizationConnection です。このメソッドは後で使用する同期ユーザの名前を保存します。

public String beginSynchronizationConnection(
  String user ) {  
  _curUser = user;
  return ( null );
}
.NET の例

次の Mobile Link システム・プロシージャ・コールは、スクリプト・バージョン ver1 を同期するときに、BeginSync という .NET メソッドを begin_synchronization 接続イベント用のスクリプトとして登録します。

CALL ml_add_dnet_connection_script( 'ver1',
  'begin_synchronization',
  'TestScripts.Test.BeginSync'
)

次に示すのは、サンプルの .NET メソッド BeginSync です。このメソッドは後で使用する同期ユーザの名前を保存します。

public string BeginSync( 
  string user ) { 
  _curUser = user;
  return ( null );
}