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_upload 接続イベント

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 サーバは、アップロードした情報を処理する最初の手順としてこのイベントを実行します。アップロード情報は 1 つのトランザクションで処理されます。このイベントは、このトランザクションで最初に実行されます。

参照
SQL の例

begin_upload 接続イベントを使って、ローをアップロードする前に行う必要がある手順を実行できます。次の SQL スクリプトは、sales_order テーブルの矛盾処理のために新旧のローの値を保存するテンポラリ・テーブルを作成します。この例は SQL Anywhere 統合データベースで動作します。

CALL ml_add_connection_script(
 'version1',
 'begin_upload',
 'CREATE TABLE #sales_order_conflicts (
    id          integer NOT NULL default autoincrement,
    cust_id     integer NOT NULL,
    order_date      date NOT NULL,
    fin_code_id char(2) NULL,
    region      char(7) NULL,
    sales_rep       integer NOT NULL,
    new_value       char(1) NOT NULL,
    PRIMARY KEY (id) )' )
Java の例

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

CALL ml_add_java_connection_script( 
 'ver1', 
 'begin_upload', 
 'ExamplePackage.ExampleClass.beginUploadConnection ' )

次に示すのは、サンプルの Java メソッド beginUploadConnection です。このメソッドは、Mobile Link メッセージ・ログにメッセージを出力します (メッセージを Mobile Link メッセージ・ログに出力すると、開発時には便利ですが、運用サーバのパフォーマンスが遅くなります)。

public String beginUploadConnection( String user ) {  
  java.lang.System.out.println(
    "Starting upload for user: " + user );
  return ( null );
}
.NET の例

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

CALL ml_add_dnet_connection_script(
  'ver1',
  'begin_upload',
  'TestScripts.Test.BeginUpload'
)

次の C# サンプルは、後のイベントで使用するために現在のユーザ名を保存します。

public string BeginUpload( string curUser ) {
  user = curUser;
  return ( null );
}