区切り記号付き入力ファイルのフィールドの定義
[フィールド] タブでは、ファイルの各フィールドの名前と位置、またファイルの種類によっては、さらにフィールドの長さも定義します。[ファイル プロパティ] タブで入力ファイルを定義したら、フィールドを定義できます。
入力ファイルにヘッダ レコードが含まれていない場合、またはフィールドを手動で定義する場合は、[フィールド] タブで以下の手順に従います。
- 入力ファイル内に既に存在するフィールドを定義するには、[再生成] をクリックします。その後、[検出タイプ] をクリックします。これにより、ファイルの最初の 50 個のレコードに基づいて、各フィールドのデータ タイプが自動的に設定されます。
- 出力にフィールドを追加するには、[追加] をクリックします。
- [名前] フィールドで、追加するフィールドを選択するか、フィールドの名前を入力します。
-
[タイプ] フィールドで、データに対して数学的または日時に関する操作を行う予定がない場合は、データ タイプを
string
のままにしておくことができます。ただし、そのような操作を行う予定がある場合は、適切なデータ タイプを選択します。ファイルに含まれる文字列データは、データフローでの適切なデータ操作を可能にするデータ タイプに変換されます。Spectrum™ Technology Platform では、以下のデータ タイプがサポートされています。
- bigdecimal
- 小数点以下 38 桁の精度をサポートする数値データ タイプ。高い精度が必要な算術計算で使用されるデータ (特に金融データ) には、このデータ タイプを使用してください。bigdecimal データ タイプは、double データ タイプより正確な計算をサポートします。
- boolean
- true と false の 2 つの値を持つ論理タイプ。
- bytearray
- バイトの配列 (リスト)。 注: bytearray は REST サービスの入力としてはサポートされていません。
- date
- 月、日、年を含むデータ タイプ。例: 2012-01-30、January 30, 2012。デフォルトの日付の形式は Management Console で指定できます。
- datetime
- 月、日、年、時、分、秒を含むデータ タイプ。例: 2012/01/30 6:15 PM。
- double
- 正と負の倍精度数を含む数値データ タイプ。値の範囲は、2-1074 ~ (2-2-52)×21023。指数表記すると、値の範囲は、-1.79769313486232E+308 ~ 1.79769313486232E+308 となります。
- float
- 正と負の単精度数を含む数値データ タイプ。値の範囲は、2-149 ~ (2-223)×2127。指数表記すると、値の範囲は、-3.402823E+38 ~ 3.402823E+38 となります。
- integer
- 正と負の整数を含む数値データ タイプ。値の範囲は、-231 (-2,147,483,648) ~ 231-1 (2,147,483,647)。
- list
- 厳密に言えば、リストはデータ タイプではありません。しかし、フィールドが階層データを含む場合、"リスト" フィールドとして扱われます。Spectrum™ Technology Platform では、リストは複数の値で構成されるデータのコレクションです。例えば、Names フィールドには名前の値のリストを含めることができます。これは、XML 構造では次のように表すことができます。
XML のリスト データ タイプが複数の値で構成される単純データ タイプであるのに対し、Spectrum™ Technology Platform のリスト データ タイプは XML の複合データ タイプに似ているという点で、Spectrum™ Technology Platform のリスト データ タイプは XML スキーマのリスト データ タイプと異なることに注意してください。<Names> <Name>John Smith</Name> <Name>Ann Fowler</Name> </Names>
- long
- 正と負の整数を含む数値データ タイプ。値の範囲は、-263 (-9,223,372,036,854,775,808) ~ 263-1 (9,223,372,036,854,775,807)。
- string
- 文字シーケンス。
- time
- 時刻を含むデータ タイプ。例: 21:15:59 or 9:15:59 PM。
-
日付、時間、または数値データ タイプを選択した場合は、デフォルトの日付と時間の形式を使用することも、この特定のフィールド用に別の形式を指定することもできます。デフォルトの形式は、Management Console のタイプ変換オプションに設定されているシステムのデフォルトの形式であるか、Enterprise Designer のタイプ変換オプションに指定されているデータフローのデフォルトの形式です。有効な形式が表示されます。デフォルトの形式を使用するには、[デフォルト] を選択したままにします。別の形式を指定するには、[カスタム] を選択し、以下の手順に従います。
注: 日付/時間形式は、ファイルから読み込むデータを正確に反映する形式を選択することが重要です。例えば、ファイルに含まれている日付データの形式は月/日/年であるが、選択した日付形式が日/月/年であると、データフローで実行する日付計算 (日付によるソートなど) に正確な日付が反映されません。また、レコードのタイプ変換が失敗することもあります。その場合、Management Console または Enterprise Designer のタイプ変換オプションで指定された失敗操作が有効になります。
- [ロケール] フィールドで、使用する形式規則のある国を選択します。[形式] フィールドのデフォルト値は、ここでの選択によって決まります。また、日付データの月のスペルを表記するときの言語も、ここでの選択によって決まります。例えば、英語を指定した場合、1 年の最初の月は "January" ですが、フランス語を指定した場合は "Janvier" になります。
-
[形式] フィールドで、データの形式を選択します。形式は、フィールドのデータ タイプによって異なります。選択したロケールで最も一般的に使用される形式の一覧が表示されます。
選択した形式の例が [形式] フィールドの右側に表示されます。
また、ニーズを満たす形式がない場合は、独自の日付、時間、および数値形式を指定することもできます。独自の日付または時間形式を指定するには、日付および時間パターン に記載される表記を使用して、その形式をフィールドに入力します。独自の数値形式を指定するには、数字パターン に記載される表記を使用して、形式をファイルに入力します。
-
[位置] フィールドで、レコード内のこのフィールドの位置を入力します。
例えば、この入力ファイルで、AddressLine1 は位置 1、City は位置 2、StateProvince は位置 3、PostalCode は位置 4 です。
"AddressLine1"|"City"|"StateProvince"|"PostalCode" "7200 13TH ST"|"MIAMI"|"FL"|"33144" "One Global View"|"Troy"|"NY"|12180
- フィールドの値文字列の先頭と末尾から余分なスペース文字を削除するには、[トリム] チェック ボックスをオンにします。