印刷イメージまたは PDF ファイルで整列していないフィールドの定義

以下の手順は、印刷イメージまたは PDF ファイルで整列していないフィールドを定義する手順について説明します。この方法では、データ定義ウィザードで整列していないフィールドをおおまかに定義するだけで構いません。Analytics にデータが取り込まれたら、Analytics 関数を使用する 1 つ以上の演算フィールドを作成し、すべての値の調整など、フィールドのデータを正確に形成する必要があります。

演算フィールドの作成については、条件付き演算フィールドを定義するを参照してください。

印刷イメージまたは PDF ファイルで整列していないフィールドを定義するには

  1. 通常の方法で、整列しているフィールドを定義します。

    最低限、レコードのセットの定義として、1 つ以上のフィールドを定義する必要があります。データの多くが整列していない場合でも、ファイルのすべてのレコード データを取り込むレコードのセットを作成してみてください。

    レコードのセットの定義の詳細については、クイック スタート:印刷イメージまたは PDF ファイルを定義する方法を参照してください。

  2. 次の方法の 1 つ以上を使用して、整列していないフィールドを定義します。

    整列していないフィールドの左端と右端の文字を取り込むのに十分な長さがあるフィールド定義を作成する

    Analytics では、ALLTRIM( ) 関数を使用してフィールドを調整します。

    必要に応じて、重複フィールドの定義を作成する

    場合によっては、データが整列していないことが原因で、2 つの異なるフィールドの値が重なり合ってしまうことがあります。各フィールドを個別に定義し、各フィールドに属するすべての値が該当するフィールド定義によって取り込まれるようにします。

    同じバイト位置は、1 つのフィールド定義の最後と他のフィールド定義の最初に含まれます。共有されたバイト位置では、一貫した構造のデータを取り込んでみてください。たとえば、一部のレコードに単一の文字列があり、別のレコードには別々の 2 つの文字列があるか文字がないものではなく、1 つの完全な文字列を使用します。

    Analytics では、ALLTRIM( )、REGEXREPLACE( )、および SPLIT( ) 関数を使用して、フィールドを調整し、不要な文字を取り除きます。

    複数の整列していないフィールドを含めることができる、単一の長いフィールド定義を作成します。

    レコードのセットの大部分が整列していない場合は、長いフィールド定義を使用して、レコード データの問題がある部分を取り込むことができます。整列していないデータのブロックの左端と右端の文字を取り込むのに十分な長さがあるフィールドである必要があります。

    整列していないデータがレコードのセットの別の部分で発生する場合は、さらに別の長いフィールド定義を作成し、整列していない各部分を取り込みます。

    メモ

    1 つのフィールドで、その値に含まれる単語数が異なる場合は、これらの値に対して個別のフィールド定義を作成するか、これらの値が複数の整列していないフィールドを含む長いフィールド定義の末尾で最後のフィールドを表すようにしてください。サンプル "Inventory.pdf" の "Product Description" フィールドは、値に異なる単語数が含まれるフィールドの例です。

    Analytics では、ALLTRIM( )、REGEXREPLACE( )、および SPLIT( ) 関数を使用して、単一のフィールドを個別の整列したデータ要素に分割します。

  3. ファイル全体をチェックし、フィールド定義の水色の強調表示以外で整列していないフィールドの値がないことを確認します。必要に応じて、フィールド定義の長さを調整します。
  4. 文字データ型が、[フィールド定義]ダイアログ ボックスの各フィールド定義で指定されているこをと確認します。
  5. 通常どおり、インポート処理を完了します。

    フィールド プロパティの編集]ページで、ASCII または UNICODE データ型がすべてのフィールドで指定されていることを確認します。

    詳細については、印刷イメージ ファイルの定義PDF ファイルの定義を参照してください。

  6. 整列していないフィールドで、重複するフィールドのデータがない場合は、次の式を使用する演算フィールドを Analytics で作成します。
    ALLTRIM(整列していないフィールド名)

    最初と最後のスペースがフィールドから削除され、フィールドのすべての値が調整されます。

  7. 整列していないフィールドで、重複するフィールドのデータを含む場合は、Analytics で次の手順を実行します。
    1. 次の式を使用する最初の演算フィールドを作成し、フィールド値と不要な文字の間の 1 つ以上のスペースを単一のスペースで置換します。
      ALLTRIM(REGEXREPLACE(整列していないフィールド名, "\s+", " "))

      この式は、整列していないフィールドの先頭と末尾のスペースも除去します。

    2. 次の式のいずれかを使用する 2 番目の演算フィールドを作成して、フィールド値を抽出し、不要な文字を破棄します。
      • 不要な文字がフィールドの末尾にある場合は、次の式を使用します。

        SPLIT(初期演算フィールド名," ", 1)
      • 不要な文字がフィールドの先頭にある場合は、次の式を使用します。

        SPLIT(初期演算フィールド名," ", 2)

      ヒント

      不要な文字がフィールドの末尾にあったり、先頭にあったりする場合、あるいは一部のレコードにのみ現れる場合は、整列していないフィールドの別の部分に別の SPLIT( ) 式を適用する、条件付き演算フィールドを作成する必要があります。たとえば、条件 RECNO( ) > 100 では、先頭から 100 件のレコードを超えるレコードにのみ、ある特定の式を適用できます。

      詳細については、条件付き演算フィールドを定義するを参照してください。

  8. 複数の整列していないフィールドを含めることができる、単一の長いフィールド定義については、Analytics で次の手順を実行します。
    1. 次の式を使用する最初の演算フィールドを作成し、データ要素間の 1 つ以上のスペースを単一のスペースで置換します。
      ALLTRIM(REGEXREPLACE(長いフィールド名, "\s+", " "))

      この式は、長いフィールドの先頭と末尾のスペースも除去します。

      ヒント

      式で OMIT( ) 関数を使用すると、一貫性がなく出現して後続の処理を複雑にするデータの部分を削除するのに便利なことがわかるでしょう。たとえば、OMIT(ALLTRIM(REGEXREPLACE(長いフィールド名, "\s+", " ")), "-") は上記の式と同じ処理を実行することに加え、ハイフンも削除します。

    2. 次の式を使用する 2 番目の演算フィールドを作成し、最初のデータ要素を抽出します。
      SPLIT(初期演算フィールド名," ", 1)
    3. 同じ式のバリエーションを使用して、必要な数の演算フィールドを作成し、すべてのデータ要素を抽出します。

      例:

      SPLIT(initial_computed_field_name," ", 2)
      SPLIT(初期演算フィールド名," ", 3)

      連続するデータ要素を指定するには、SPLIT( ) 関数の セグメント パラメーターの数を増やします。

    メモ

    複数の単語を含むフィールド値(サンプル "Inventory.pdf" の "Product Description" フィールドなど)の場合、この方法によって、各単語を別々のフィールドに分離できます。必要に応じて、この別々のフィールドを連結し、値を返すこともできます。詳細については、フィールドの連結を参照してください。

  9. すべてのデータ要素を個別のフィールドに抽出した後、次の手順を実行して、数値および日付時刻データを該当するデータ型に変換します。
    1. 数値フィールドについては、次の式を使用する演算フィールドを作成します。
      VALUE(フィールド名, 小数点以下桁数)

      VALUE( ) 関数の詳細については、『ACL のスクリプト作成ガイド』を参照してください。

    2. 日付フィールドについては、次の式を使用する演算フィールドを作成します。
      CTOD(フィールド名, "日付書式")

      CTOD( ) 関数の詳細については、『ACL のスクリプト作成ガイド』を参照してください。

      日付時刻または時刻値を変換するには、CTODT( ) または CTOT( ) 関数を使用します。

    ヒント

    関数を適用すると同時にデータ型を変換して、整列していないデータを修正すると、作業を軽減し、作成する演算フィールドを減らすことができます。例:

    VALUE(ALLTRIM(整列していないフィールド名), 2)

  10. 必要な演算フィールドをすべて作成したら、テーブル ビューに追加します。

    最初の演算フィールドをビューに追加する必要はありません。整列していないフィールドまたは長いフィールドをビューから削除できます。

    詳細については、ビューに列を追加するビューからの列の削除を参照してください。

Analytics 14.1 ヘルプ