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

 

modify_error_message 接続イベント

このスクリプトを使用すると、リモート・データベースに送信される (エラー、警告、情報) メッセージのテキストをカスタマイズできます。

パラメータ

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

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

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

説明

順序

s.error_message

VARBINARY(1024)。これは INOUT パラメータです。

1

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

s.username

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

2

s.error_code

INT

3

デフォルトのアクション

なし

備考

modify_error_message イベントの SQL スクリプトは、ストアド・プロシージャとして実装してください。

参照
SQL の例

次の例は、データベースが 1 日前から現在までの間に同期されたかどうかに関わらず、1 日前からのデータをすべてダウンロードします。

次の SQL 文は ModifyLastErrorMessage ストアド・プロシージャを作成します。

CREATE PROCEDURE ModifyLastErrorMessage(
  inout error_message VARBINARY(1024),
  in username VARCHAR(128),
  in error_code INT )
BEGIN
  SELECT dateadd(day, -1, last_download_time )
  INTO last_download_time
END

次の Mobile Link システム・プロシージャ・コールは ModifyLastErrorMessage を、スクリプト・バージョン modify_ts_test の modify_error_message 接続イベントに割り当てます。

CALL ml_add_connection_script(
  'modify_ts_test',
  'modify_error_message',
  'CALL ModifyLastErrorMessage ( 
    {ml s.error_message}, 
    {ml s.username}, 
    {ml s.error_code} )' );
Java の例

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

CALL ml_add_java_connection_script(
  'ver1',
  'modify_error_message',
  'ExamplePackage.ExampleClass.modifyLastErrorMessage' )

次に示すのは、サンプルの Java メソッド modifyLastErrorMessage です。このメソッドは、現在のエラー・メッセージとエラー・コードを出力します。

public String modifyLastErrorMessage(
  String lastErrorMessage,
  String userName,
  int errorCode ) {  
  java.lang.System.out.println( "error message: " +
   lastErrorMessage );
  java.lang.System.out.println( "error code: " +
   String.valueOf(errorCode) );
  return( null ); 
}
.NET の例

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

CALL ml_add_dnet_connection_script(
  'ver1',
  'modify_error_message',
  'TestScripts.Test.ModifyLastErrorMessage' )

次に示すのは、サンプルの .NET メソッド ModifyLastErrorMessage です。このメソッドは、現在のエラー・コードとエラー・メッセージを出力します。

public string ModifyLastErrorMessage (
  string errorMessage,
  string userName,
  string errorCode  ) {
  System.Console.WriteLine( "error message: " + errorMessage );
  System.Console.WriteLine( "error code: " +  errorCode );
  return ( null );
}