最近のアクセス:
同期イベント API
GeneXus で生成されたオフラインアプリケーションがデバイスにインストールされるたびに、GXPendingEvents という補助テーブルがローカルデータベース内に自動的に作成されます。
GXPendingEvents テーブルは、オフラインで実行されたビジネスコンポーネントのすべての変更 (挿入、削除、更新) を、後でサーバーに複製するためにイベントとして格納します。各イベントには、そのイベントの状態を表す項目属性が設定されます。状態の値は、EventStatus ドメインによって定義されます:
名前 意味
1 Pending この状態のイベントは、デバイスによってサーバーに送信できる状態です。さらに、これらのイベントは、ビジネス コンポーネント トランザクションが実行されるたびに、作成されます。
2 ProcessingServer これは、サーバー側でイベントを処理中のときの一時的状態です。
3 ConfirmedServer この状態は、サーバー側にイベントが正常に複製されたことを意味します。確認済みのイベントは、格納しておく必要はないので、GXPendingEvents テーブルからすべて即座に削除されます。
4 RejectedServer この状態のイベントは、何らかのエラーの発生によりサーバー側で複製できませんでした。デバイスから、GetEvents メソッドおよび GxSynchroEventSD の [ EventErrors ] プロパティを使用することで、エラーコードおよびメッセージにアクセスできます。
5 CanceledUser イベントがユーザーによってキャンセルされたことを意味します。
6 RejectedFK 2 つ以上の挿入イベントが送信され、そのうちの 1 つのイベントにほかのイベントへの外部キーが追加されている場合、そのイベントが失敗すると (RejectedServer 状態)、外部キーを持つイベントも失敗しますが、状態は RejectedFK になります。
たとえば、Customer-Invoice モデルがあり、Invoice が 1 つある Customer を挿入した場合、何らかの理由でこの Customer に関連付けられたイベントが複製時にサーバーによって却下されると、Invoice イベントは RejectedFK としてマークされます。

:ProcessingServerConfirmedServerCanceledUser はイベントの一時的状態であり、これらのいずれかの状態であるイベントはすべて、GXPendingEvents テーブルから削除されます。つまり、状態が PendingRejectedServer、または RefectedFK のイベントだけが GXPendingEvents テーブルに残ります。
同期イベント API には、GXPendingEvents のデータにアクセスしてそれを操作できるメソッドがあります。
次のメソッドです:

検討事項

RejectedFK 状態のイベントは、GeneXus X Evolution 3 Upgrade 1 以降、Apple スマートデバイス (iOS) オフラインアプリケーションでのみサポートされます。

参考情報




サブページ
Created: 15/01/07 22:48 by Admin Last update: 17/05/30 00:33 by Admin
カテゴリ
Powered by GXwiki 3.0