最近のアクセス:
データ同期

スマートデバイス用オフラインアプリケーションのアーキテクチャで説明しているように、ほとんどのオフラインアプリケーションは、スタンドアロンのアプリケーションではなく、より大きなサーバーシステムのサブセットになっています。このため、オフラインアプリケーションとサーバーの間でデータを送受信するための接続が必要です。
この処理を「データ同期」と呼びます。GeneXus の開発者は、データ同期の問題を解決するための戦略を採用できます。

データの流れ

初期化

アプリケーションがデバイスにインストールされると、ローカルデータベースが作成されます。その後、ユーザーがオフラインアプリケーションの使用を開始できるように、データベースにデータを入力します。そのために、サーバーからデータを受信する方法があります。この場合、GeneXus 同期プログラムの Receive メソッドを呼び出します。詳細については、「Synchronization.Receive メソッド」を参照してください。
このメソッドを呼び出した後、デバイスで必要な情報をすべて受信し、ローカルデータベースに格納します。画像、Blob などの参照ファイルがある場合は、そのすべてがデバイスに格納されます。
別の方法として、データが事前にロードされた状態でアプリケーションをインストールできます。この場合、「データベースを事前にロードしてスマートデバイス用オフラインアプリケーションを作成する方法」に示す手順を参照してください。

データ変更の管理

アプリケーションにデータが入力されたら、ユーザーはアプリケーションを操作し、変更 (挿入、削除、更新) を行い、その変更をサーバー 1 に送信できます。同様に、ほかのユーザーによる変更がサーバーで発生する場合もあります。この場合、アプリケーションとサーバーの同期がとれなくなります。
これらの問題に対処するため、GeneXus では同期処理を次の 2 つの処理に分割しています: データ受信処理とデータ送信処理です。どちらの処理も GeneXus でオフライン データベース オブジェクトの特定のプロパティを変更することで設定できます。
データ受信の動作は、次のプロパティで設定します:
データ送信の動作は、 [ Send Changes ] プロパティで設定します。
GeneXus で生成される同期プログラムを使用せずに、データ同期プログラムのコード記述を行うことで同期の問題を解決することもできます。ただし、この場合、作業の負担が大きくなります。
1 Synchronization API Send メソッドが (手動または自動で) 実行されている場合、ビジネスコンポーネントによって、ローカルのデータベースに行われた変更 (挿入、更新、削除) のみが送信されたとみなされるということに留意することが重要です。詳細については、「オフライン アプリケーション アーキテクチャの概念の詳細」を参照してください。

参考情報




サブページ
Created: 15/01/07 22:47 by Admin Last update: 21/05/21 03:31 by Admin
カテゴリ
Powered by GXwiki 3.0