Mobile Link 同期スクリプトは、SQL で記述することも、Java (Java 用 Mobile Link サーバ API を使用) または .NET (.NET 用 Mobile Link サーバ API を使用) で記述することもできます。
サポートされている統合データベースと同期する場合は、通常は SQL 同期論理が最適です。
サポート対象外の統合データベースと同期する場合は、Java や .NET が便利です。また、SQL 言語の制限事項やデータベース管理システムの機能によって設計が制限されている場合や、異なる RDBMS タイプ間での移植性が必要な場合も、Java や .NET が便利です。
Java と .NET の同期論理は、SQL 論理と同様に機能します。Mobile Link サーバは、Mobile Link イベントの発生時に SQL スクリプトにアクセスするのと同様に、Java メソッドや .NET メソッドを呼び出すことができます。Java または .NET を使用している場合は、一部の追加処理を実行するイベントを使用できます。ただし、アップロードローやダウンロードローを直接処理するイベントのスクリプトを処理するときは、Java または .NET の実装が SQL 文字列を返す必要があります。ダイレクトローハンドリングで使用される 2 つのイベントを除き、Java と .NET の同期論理では、アップロードとダウンロードに直接アクセスできません。Java または .NET から SQL 文字列で返された内容を Mobile Link が実行します。
ダイレクトローハンドリングでは、handle_UploadData イベントと handle_DownloadData イベントを使用して、データソースと同期します。この操作により、アップロードローとダウンロードローが「直接操作されます」。
Java または .NET でのスクリプトの作成を検討する場合のシナリオを以下に示します。
ダイレクトローハンドリング Java と .NET の同期論理では、Mobile Link を使用して、統合データベース以外のデータソース (アプリケーションサーバ、Web サーバ、ファイルなど) にアクセスできます。
認証 ユーザ認証プロシージャを Java または .NET で記述し、Mobile Link 認証を企業のセキュリティポリシーに組み込みます。
ストアドプロシージャ RDBMS でユーザ定義のストアドプロシージャを使用できない場合は、Java や .NET でメソッドを作成できます。
外部呼び出し プログラムが同期イベント中に外部サーバへの接続を必要とする場合は、Java または .NET 同期論理を使用して、同期イベントによりトリガされるアクションを実行できます。Java または .NET 同期論理は、複数の接続間で共有できます。
変数 データベースに変数を処理する機能がない場合は、接続または同期の間持続する変数を Java や .NET で作成できます。また、SQL スクリプトでユーザ定義の名前付きパラメータを使用することもできます。この方法は、すべてのタイプの統合データベースに使用できます。 ユーザ定義の名前付きパラメータを参照してください。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |