文字列を日付に変換

「文字列を日付に変換」トランスフォーマは、文字列または配列属性の値を取得し、その値を日付書式の参照リストを使用して認識し、標準の日付型または日付配列型への変換を試みます。

「文字列を日付に変換」は、文字列または文字配列属性に日付値が格納されている場合に、たとえば、日付プロファイラを介した実行など、その値に対して日付固有の処理を実行するときに使用します。

文字列属性内の日付値を検索するには、データ型プロファイラを実行します。指定の属性から想定したデータ型以外のレコードを分離するには、「データ型チェック」を実行します。

注意:

参照リストを使用して日付と認識されない値は、「文字列を日付に変換」プロセッサによる変換が失敗となる(nullに変換される)ため、このプロセッサ自体が単独で分離を実行できます。これには、無効な日付(日付の月の部分に日の値がある日付など)が含まれます。

文字列または文字配列属性を日付型または日付配列型に変換するために、プロセッサは日付の値を正しく認識する必要があります。そのために日付書式の参照リストが使用されます。日付の暗黙の書式はロケール固有である可能性があり、たとえば、英国書式で取得される日付では01/04/2001を1st-Apr-2001に変換し、米国書式で取得される日付では4th-Jan-2001に変換する必要があります。日付を正しく認識するために、参照リストで日付の正しい書式を使用する必要があります。書式のデフォルト・リストはEDQに付属しています。認識する必要がある書式がこのリストにない場合は、標準Java APIが認識する(したがってEDQの日付プロセッサが認識する)日付書式を指定した独自のリストを作成できます(http://java.sun.com/javase/6/docs/api/java/text/SimpleDateFormat.htmlを参照)。

次の表に、構成オプションを示します。

構成 説明

入力

日付型または日付配列型に変換する1つ以上の文字列または文字配列属性を指定します。

複数の属性が変換のために送信されたが、そのうち1つが失敗した場合、レコード全体に失敗のマークが付きますが、有効な属性は正しく変換されます。

オプション

次のオプションを指定します。

  • 認識済日付書式のリスト: 様々な書式の日付を認識します。参照リストは順番にチェックされるため、日付はリスト内で最初に一致した行に従って認識されます。参照データ(日付書式カテゴリ)として指定します。デフォルト値: *日付書式

  • タイム・ゾーン: 入力文字列値に関連付けられたタイム・ゾーン。日付は、このタイム・ゾーンからUTCタイム・ゾーンに変換することにより生成されます。出力日付値にはタイム・ゾーンが関連付けられていないため、すべての日付はUTC値として格納されます。タイム・ゾーンとして指定します。デフォルト値は、ディレクタのタイム・ゾーンです。

出力

データ属性またはフラグ属性の出力を記述します。

データ属性

次のデータ属性が出力されます。

  • [Attribute Name].StringToDate: 文字列から日付への変換結果を格納します。値は、元の属性値を日付型または日付配列型に変換して導出されます。

フラグ

次のフラグが出力されます。

  • StringToDateSuccess: 各レコードの文字列から日付への変換が成功したかどうかを示すフラグです。使用可能な値: Y/N

次の表に、このプロファイラによって生成される統計情報を示します。

統計 説明

成功

文字列から日付への変換に成功したレコードの数。

失敗

文字列から日付への変換に失敗したレコードの数。

入力された値が日付として(まったく)認識されなかったり、無効な日付(うるう年でない年の2月29日のような存在しない日付など)として認識されたりすることで発生する可能性があります。

「追加情報」ボタンをクリックすると、前述の統計がパーセントとして表示されます。

出力フィルタ

次の出力フィルタを使用できます。

  • 変換が成功したレコード

  • 変換が失敗したレコード

顧客表には、文字列として格納され、日付属性として管理されていないDT_PURCHASED属性があります。

日付値を認識するために標準の「*日付書式」参照リストを使用し、文字列から日付に変換した結果を次に示します。

成功 失敗

2003 99.7%

7 0.3%

「成功」または「失敗」にドリルダウンできます。

注意:

値がnullのため、または日付として認識されない値が含まれているために、値が日付として認識されない場合、変換された日付値はnullになります。