• 検索結果がありません。

複合型の処理

ドキュメント内 4th Dimension 2003 (ページ 118-122)

4th  Dimension では、RPC モードや DOC モード、ならびに複合型で公開された Web サービ スを使用することができます(前述の「RPC、DOC、複合型の互換性」の節を参照)。 注:実際には複合 XML タイプであるにも関わらず、4D はデータ配列を単純型として処理 します。

「Web サービスウィザード」によって生成された、複合型を含むプロキシメソッド(つま り複合型を伴う RPC モードで公開、または DOC モードで公開されたメソッド)は、標準 的なプロキシメソッドと似ています。しかし、これらの Web サービスを使用する場合、

CALL WEB SERVICEコマンドでは引数として manual という語句を含む定数が使わ れていることがわかります

実際には、このような Web サービスを使用する際には、4D 開発者による追加処理が必要 になります。この主な理由は、複合型のやり取りが文書や XML 要素の形で行われるため です。つまり、これらの SOAP パラメータから情報の取得や組み込みを行うには、事前に XML を解析する必要があります。これに対して単純型の場合は、パラメータの値を直接 読み取ることができます。

単独タイプ(RPC)の使用

SOAP メッセージ

XML パラメータ

SOAP メッセージ

返された XML

返されたパラメータ パラメータ2 パラメータ1 メソッド クライアント

通信

Webサービス

返されたパラメータ パラメータ2 パラメータ1 メソッド

通信

Web サービス

複合型(DOC)の使用

4th  Dimension では、複合型のパラメータ(配列を除く)は BLOB 形式で処理されます。

これを取り扱うためには、4D ランゲージを使用しなければなりません。

複合入力タイプと出力タイプ

RPC モードで公開された Web サービスは、単純/複合型と入力/出力タイプのパラメー タを組み合わせたさまざまな設定で利用することができます。例えば、ある Web サービ スが、単純型のパラメータを含むリクエストを受け入れ、その結果を複合型の形でクラ イアント側に返すことができます。

これとは逆に、DOC モードで公開された Web サービスは、複合型のパラメータのみを処 理することができます。

複合型の処理は、SOAP パラメータが入力タイプか出力タイプかによって異なります。

■ 入力パラメータの場合(4th  Dimension によって受信される)、XML 構造の解析と有用 な情報の取り出しは、4D の XML コマンドを使用して実行されます(後述の「XML」

の節を参照)。

■ 出力パラメータの場合(4th  Dimension から送信される)、サーバから要求された情報に 従って、Web サービスへ送信する XML 構造を 手動で 作成するかどうかの判断は 4D 開発者に委ねられます。

この操作に関する詳細(ならびに入力パラメータの解析)に関しては、4th  Dimension から提供されるサンプルデータベースのコードを参照されることをお勧めします。複 合型のパラメータの送信/受信に関する詳細は、後述のCALL WEB SERVICEコマン ドの説明を参照してください。

SOAP メッセージ

SOAP メッセージ

応答 XML文書

XML XML BLOB

BLOB

XML BLOB

応答 XML文書 応答

XML BLOB メソッド クライアント

通信

Webサービス メソッド

通信

ランゲージ 6

4D バージョン 2003 のランゲージコマンドには、さまざまな変更が加えられています。

■ 新しいテーマ「Web サービス(サーバ)」と「Web サービス(クライアント)」には、

4th  Dimension における Web サービスの管理と監視のためのコマンドが集められていま す。

■ 新しいテーマ「XML」には、XML フォーマットのデータ解析用コマンドが集められて います。

■「印刷」テーマには新しいコマンド(後述の「新しい印刷コマンド」の節を参照)が 追加され、機能が強化されました。また、いくつかの既存コマンドの機能が拡張され ました。これらは、SET PRINT MARKERコマンドに関する変更、ならびにPAGE BREAKコマンドとCANCELコマンド(「入力制御」テーマ)をPrint form関数と一緒 に使用する場合に関する変更です。

■ その他にも、さまざまな新しいコマンドが追加されています:MULTI SORT ARRAY

(「配列」テーマ)、BEST OBJECT SIZE(「オブジェクトプロパティ」テーマ)、Is data file locked(「4D 環境」テーマ)。

■ 既存の各種コマンドと定数も変更されています:MENU BAR(「メニュー」テーマ)、 SET DATABASE PARAMETER(「ストラクチャアクセス」テーマ)。

■ 最後に、4D  Chart のグラフィックエディタに関する「CT  Area  Control」テーマに 2 つの 新しいコマンドが追加されました。

注:新しいテーマ「クイックレポート」には、新しくなった「クイックレポート」エ ディタを管理するコマンドが集められています。この新しいエディタに関しては、別の ドキュメントで説明しています。

ドキュメント内 4th Dimension 2003 (ページ 118-122)