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

 

end_download テーブル・イベント

Mobile Link サーバがダウンロードされた挿入、更新、削除のストリームの準備を終了した直後に、特定のテーブルに関連した文を処理します。

パラメータ

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

SQL スクリプトでは、名前または疑問符を使用してイベント・パラメータを指定できますが、スクリプト内に名前と疑問符を混在させることはできません。疑問符を使用する場合、パラメータは以下に示す順に指定する必要があり、後続のパラメータが指定されていない場合のみ省略可能です (たとえば、パラメータ 2 を使用する場合は、パラメータ 1 を使用してください)。名前付きパラメータを使用する場合は、パラメータの任意のサブセットを任意の順に指定できます。

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

説明

順序

s.last_table_download

TIMESTAMP。テーブルの最後のダウンロード時刻。

1

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

s.username

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

2

s.table

VARCHAR(128)。テーブル名。

3

デフォルトのアクション

なし

備考

すべてのローのダウンロードと受信確認の受信後に、Mobile Link サーバはこのスクリプトを実行します。ダウンロード情報は、別のトランザクションで準備されます。このスクリプトの実行が、このトランザクションで最後のテーブル固有の非統計アクションとなります。

リモート・データベースのテーブルごとに、end_download スクリプトを 1 つ指定できます。

参照
SQL の例

end_download テーブル・イベントを使って、特定のテーブルをダウンロードした後で行う必要がある手順を実行します。次の SQL Anywhere の SQL スクリプトは、sales_summary テーブルのダウンロード・ローを保持するために prepare_for_download スクリプトが作成したテンポラリ・テーブルを削除します。

CALL ml_add_table_script(
 'MyCorp 1.0',
 'sales_summary',
 'end_download',
 'DROP TABLE #sales_summary_download' )
Java の例

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

CALL ml_add_java_table_script (
  'ver1',
  'table1',
  'end_download',
  'ExamplePackage.ExampleClass.endDownloadTable' )

次に示すのは、サンプルの Java メソッド endDownloadTable です。このメソッドは現在のテーブル・メンバ変数をリセットします。

public String endDownloadTable( 
  Timestamp ts,
  String user, 
  String table ) {
  _curTable = null;
  return ( null );
}
.NET の例

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

CALL ml_add_dnet_table_script(
  'ver1',
  'table1',
  'end_download',
  'TestScripts.Test.EndTableDownload'
)

次に示すのは、サンプルの .NET メソッド EndTableDownload です。このメソッドは現在のテーブル・メンバ変数をリセットします。

public string EndTableDownload
  DateTime timestamp,
  string user,
  string table ) {
  _curTable = null;
  return ( null );
}