複数行のレコードおよびフィールドの操作
ソース ファイル内の複数行にわたるレコードやフィールドのデータを定義することができます。例:
- 複数の行に配置された住所データまたはコメント データ
- 単一フィールドに積み重ねられた異なる型のデータ
- 複数行フィールドの値に含まれる行数が異なるデータ
次のセクションでは、このようにデータが配置されたファイルを定義する方法について説明します。
複数行のレコードと複数行のフィールド
ソース ファイルで、複数行のレコードには、すべてが同じレコードに属する 2 行以上のデータが含まれています(1 行のフィールドと複数行のフィールドがある複数行のレコード を参照してください。)
複数行のレコードのフィールドには、複数行のフィールドがある場合とない場合があります。たとえば、2 行のレコードは、印刷イメージまたは PDF レポートのレイアウトで 2 番目の行に折り返された、一連の 1 行のフィールド値である可能性もあります。
複数行のフィールドには、ソース ファイルで 2 行以上にまたがるフィールド値が含まれます。たとえば、複数行に配置された住所、複数行のテキストを含むコメント フィールドなどです。フィールドが複数行の場合は、フィールドを含むレコードも複数行である必要があります。
1 行のフィールドと複数行のフィールドがある複数行のレコード
以下の例では、3 行で構成される 1 件のレコードを示します。このレコードには、1 行の "Cust No" フィールドと 3 行の "Name & Address" フィールドが含まれます。
複数行のレコードの定義
これらの方法のいずれかを使用して、複数行のレコードを定義できます。
- レコードの最初の行の初期データ値と、レコードの最後の行の一意の値を選択します。
レコードの最初の行の初期データ値と、最後の行の一意の値では、顧客番号が最初の行で選択され、郵便番号が最後の行で選択されています。定義された複数行のレコード は結果の複数行レコードを示します。
- レコードの最初の行を定義し、その後、[レコード定義]ダイアログ ボックスの[レコード内の行数]設定で適切な行数を指定し、レコード定義を編集します。レコードの最後の行で一意の値を指定できない場合は、この方法を使用できます。
レコードの最初の行の初期データ値と、最後の行の一意の値
定義された複数行のレコード
複数行のレコードのフィールドの定義
複数行のレコードのフィールドを定義するときには、次のオプションがあります。
- 単一行のフィールドとして単一の行を占める値を定義できます。
単一行のフィールドと複数行のフィールドでは、顧客番号、市、州、郵便番号、取引金額、および上限の値がすべて単一行のフィールドとして定義されています。
単一行のフィールドを定義するには、フィールドの値のいずれかの単一のインスタンスを選択します。
- 2 つの方法のいずれかで複数行を示す値を定義できます。
- 単一の行のデータを含む複数のフィールド
単一行のフィールドと複数行のフィールドでは、顧客名と住所がこの方法で定義されています。
複数行のフィールド、単一行のフィールドを定義するには、複数行データの単一のインスタンスを選択します。デフォルトでは、Analytics は各行に個別のフィールドを作成します。各フィールドには、フィールド名の末尾に増分数字が追加されます。
- すべての行のデータを含む単一のフィールド
単一行のフィールドと複数行のフィールドでは、コメント値は単一のフィールドとして定義されます。
すべての行のデータを含む単一のフィールドを定義するには、複数行データの単一のインスタンスを選択します。[フィールド定義]ダイアログ ボックスの[詳細オプション]で、[単一フィールドに変換する]を選択します。
- 単一の行のデータを含む複数のフィールド
単一行のフィールドと複数行のフィールド
結果の Analytics テーブルのフィールドのプレビュー
以下の例は、単一行のフィールドと複数行のフィールドの定義済みフィールドが結果の Analytics テーブルに表示される方法を示します。
高さが異なるフィールドの定義
[フィールド定義]ダイアログ ボックスの[空白行で終わる]設定を使用して、値が占める行数が異なる複数行のフィールドを定義できます。この設定は、空白の行があるときに値が終了することを指定します。1 つ以上の空白行が複数行フィールドの各値を区切る場合にのみ、この機能は動作します。
フィールドの境界とフィールド値の不一致
以下の例は、フィールド値の高さが異なるときに発生する可能性がある問題を示します。
フィールドの高さが "5" に設定され、"Name & Address" フィールドの最初の値のすべての 5 行が取り込まれます。2 番目の値には 3 行しかないため、5 行のフィールドの高さではデータを取り込みすぎてしまい、2 番目の値すべてと 3 番目の最初の行取り込むことになります。結果として、フィールドの境界とフィールド値の間に不一致が発生し、レコードの境界も不一致になります。
フィールド値に合わせてサイズ変更されたフィールドの境界
以下の例は[空白行で終わる]を選択することでこの問題を解決する方法を示します。フィールドとレコードの境界のサイズが動的に変更され、各フィールド値が占める行数に合うようになります。