メッセージ・フィールドからのデータのキャスト

あるエレメントを別のエレメント、変数、あるいは定数と比較する場合、エレメントを比較する対象である値が一貫したものであることを確認してください (たとえば、文字と文字を比較)。 値が一貫していない場合には、 暗黙のキャストを提供して不整合を解決できないとブローカーは実行時エラーを生成します。 サポートされている暗黙のキャストの詳細については、 暗黙のキャストを参照してください。

CAST 関数を使用して、ある値のデータ・タイプを別のデータ・タイプに変換できます。 たとえば、汎用 XML メッセージを処理する際には CAST 関数を使用できます。 XML メッセージ内のすべてのフィールドには文字値があるので、たとえば、算術計算や日時比較を実行したい場合には、そのフィールドのストリング値を CAST を使用して適切なタイプの値に変換する必要があります。

Invoice メッセージでは、「InvoiceDate」フィールドには送り状の日付が含まれています。 このフィールドを参照または操作する場合、まず適切な形式にキャスト (CAST) する必要があります。 たとえば、テストでこのフィールドを参照するには、次のようにします。

IF CAST(Body.Invoice.InvoiceDate AS DATE) = CURRENT_DATE THEN

これにより、「InvoiceDate」フィールドのストリング値は日付値の変換され、 現在日付と比較されます。

別の例は、整数から文字にキャストするものです。

DECLARE I INTEGER 1;
DECLARE C CHARACTER;

-- The following statement generates an error
SET C = I;

-- The following statement is valid
SET C = CAST(I AS CHARACTER);

関連概念
メッセージ・フロー
ESQL
メッセージのモデル化

関連タスク
メッセージ・フローの設計
メッセージ・フローの内容の定義
ESQL ファイルの管理

関連資料
Compute ノード
Database ノード
Filter ノード
ESQL
CAST 関数
DECLARE ステートメント
IF ステートメント
比較のための暗黙的 CAST
算術演算のための暗黙的 CAST
代入での暗黙的 CAST
SET ステートメント
サンプル・メッセージ