マッピング (InterChange Server Express 統合ブローカーのみ)

このセクションでは、以下について説明します。

マッピングの問題

ビジネス・オブジェクトがマップされていない場合、またはマッピングが起動されていない場合には、マップが正しいディレクトリーにインストールされていることを確認します。

日付型変換

注:
この日付変換手順は、バージョン 1.5.0 よりも前のバージョンのコネクターのみに適用できます。

データベースに Date 形式で格納されているデータを WebSphere Business Integration Adapter ビジネス・オブジェクトで使用する String 形式に変換するには、マップを使用します。

例えば、Oracle データベースに格納されている次のような日付

Sun Jan 01 00:00:00 CEST 1999
 

が存在するとします。この日付を、次のようなストリングに変換してから、WebSphere Business Integration Adapter for JDBC ビジネス・オブジェクト内で処理する必要があるとします。

Jan 01 1999 00:00:00
 

この変換を行うには、マッピングでデータ変換用に定義されている DtpDate() コンストラクターおよび DtpSplitString() コンストラクターを使用します。これらのコンストラクターの構文と説明、およびこれらのコンストラクターによってオブジェクトが作成されるクラスについては、「マップ開発ガイド」を参照してください。

マップを使用して Date 値を String に変換するには、以下のステップを行います。

  1. DtpSplitString() を使用して、スペースを区切り文字としてストリングを 6 つの部分に分け、DtpDate で使用できる順序に並べ替えます。上の例の日付を変換する場合、次のように使用します。
    DtpSplitString OurSplitString = new DtpSplitString
        ("Sun Jan 01 00:00:00 CEST 1999"," ");
     

    このステートメントでは、OurSplitStringDtpSplitString 型のユーザー定義変数です。また、スペースが区切り文字に指定されています。

  2. DtpSplitString クラスの nextElement() メソッドを使用して、新規に作成した OurSplitString 変数の中をループし、その変数に 6 個ある要素それぞれを要素の型が String の配列に格納します。以下の例では、出力配列として OurStringPieces を指定しています。
    String[] OurStringPieces = new String[6];
     for (i=0;i<=5;i=i+1){
        OurStringPieces[i]=OurSplitString.nextElement();
     }
     

    このループ処理により、次の配列要素が生成されます。

    OurStringPieces[0] = Sun
     OurStringPieces[1] = Jan
     OurStringPieces[2] = 01
     OurStringPieces[3] = 00:00:00
     OurStringPieces[4] = CEST
     OurStringPieces[5] = 1999
     
  3. これらの断片的なストリングのうち、DtpDate に入力する必要があるものを連結します。ここでの変換例では、DtpDate への入力のフォーマットとして「M D Y h:m:s」を使用します。これにより、変換後のストリングは、「Jan 01 1999 00:00:00」と表示されます。下記の例では、StringOurStringPieces 配列の要素 1、2、5、および 3 を使用します。
    OurConcatenatedString =
     OurStringPieces[1]+OurStringPieces[2]+OurStringPieces[5]+OurStringPieces[3];
     
  4. 連結された新しいストリングを、DtpDate への入力として使用します。
    DtpDate OurDtpDate = new DtpDate(OurConcatenatedString,"M D Y h:m:s");
     

Date 値を DtpDate 形式に変換した後は、マップを使用してその日付を操作することができます。

Copyright IBM Corp. 2004