Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » Ultra Light - C/C++ プログラミング » アプリケーション開発 » Palm OS 用 Ultra Light アプリケーションの開発

 

Palm アプリケーションへの HotSync 同期の追加

HotSync 同期は、Ultra Light アプリケーションが閉じるときに行われます。同期は HotSync によって開始されます。

HotSync を使用する場合は、アプリケーションを閉じる前に ULSetSynchInfo を呼び出して同期します。HotSync 同期には、ULSynchronize や ULConnection.Synchronize は使用しないでください。

アプリケーションから HotSync 同期を有効にするには、次の手順でコードを追加します。

  1. ul_synch_info 構造体を準備します。

  2. ULSetSynchInfo 関数を呼び出し、ul_synch_info 構造体を引数として指定します。

    この関数は、ユーザが Ultra Light アプリケーションから別のアプリケーションに切り替えたときに呼び出されます。すべての処理がコミットされていることを確認してから、db_fini を呼び出してください。ul_synch_info.stream パラメータは無視されるので、設定する必要はありません。

    次に例を示します。

    //C++ API
    ul_synch_info info;
    ULInitSynchInfo( &info );
    info.stream_parms =
      UL_TEXT( "stream=tcpip;host=localhost" );
    info.user_name = UL_TEXT( "50" );
    info.version = UL_TEXT( "custdb" );
    
    ULSetSynchInfo( &sqlca, &info );
    
    if( !db.Close( ) ) {
      return( false );
    }
  3. db_fini を呼び出します。

Ultra Light Palm アプリケーションのステータスの管理 (旧式)Ultra Light の同期パラメータを参照してください。

Ultra Light アプリケーションの HotSync 同期には、Ultra Light HotSync コンジットが必要です。Palm アプリケーションの終了時にコミットされていないトランザクションがあるときに同期を行った場合、コンジットは、データベース内にコミットされていない変更があるため同期が失敗したとレポートします。

ストリーム・パラメータの指定

ul_synch_info 構造体の同期ストリーム・パラメータは、Mobile Link サーバとの通信を制御します。HotSync 同期では、Ultra Light アプリケーションは Mobile Link サーバと直接通信しません。HotSync コンジットと通信します。

同期ストリーム・パラメータを次のいずれかの方法で指定することによって、Mobile Link コンジットの動作を制御できます。

参照