Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
Mobile Link サーバがダウンロードデータの準備を完了した直後に、特定のテーブルに関連した文を処理します。
次の表の説明では、SQL データ型を示します。Java または .NET でスクリプトを作成する場合、適切な対応するデータ型を使用します。 SQL データ型と Java データ型とSQL データ型と .NET データ型を参照してください。
SQL スクリプトでは、名前または疑問符を使用してイベントパラメータを指定できます。疑問符の使用は推奨されなくなりました。名前付きパラメータを使用することをおすすめします。1 つのスクリプト内で名前と疑問符を混在させることはできません。疑問符を使用する場合、パラメータは以下に示す順に指定する必要があり、後続のパラメータが指定されていない場合のみ省略可能です (たとえば、パラメータ 2 を使用する場合は、パラメータ 1 を使用してください)。名前付きパラメータを使用する場合は、パラメータの任意のサブセットを任意の順に指定できます。
s.last_table_download
TIMESTAMP。テーブルの最後のダウンロード時刻。
1
s.username
VARCHAR(128)。Mobile Link ユーザ名。
2
s.table
VARCHAR(128)。テーブル名。
3
なし。
すべてのダウンロードローが統合データベースからフェッチされてから、Mobile Link サーバはこのスクリプトを実行します。このスクリプトの実行が、このダウンロードトランザクションで最後のテーブル固有の非統計アクションとなります。
リモートデータベースのテーブルごとに、end_download スクリプトを 1 つ指定できます。
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' )
次の Mobile Link システムプロシージャコールは、スクリプトバージョン ver1 を同期するときに、endDownloadTable という Java メソッドを end_download テーブルイベント用のスクリプトとして登録します。
CALL ml_add_java_table_script ( 'ver1', 'table1', 'end_download', 'ExamplePackage.ExampleClass.endDownloadTable' )
次に示すのは、サンプルの Java メソッド endDownloadTable です。このメソッドは現在のテーブルメンバー変数をリセットします。
public void endDownloadTable( Timestamp ts, String user, String table ) { _curTable = null; }
次の Mobile Link システムプロシージャコールは、スクリプトバージョン ver1 とテーブル table1 を同期するときに、EndTableDownload という .NET メソッドを end_download テーブルイベント用のスクリプトとして登録します。
CALL ml_add_dnet_table_script( 'ver1', 'table1', 'end_download', 'TestScripts.Test.EndTableDownload' )
次に示すのは、サンプルの .NET メソッド EndTableDownload です。このメソッドは現在のテーブルメンバー変数をリセットします。
public void EndTableDownload DateTime timestamp, string user, string table ) { _curTable = null; }}}