物理フィールド
Analytics テーブル レイアウトでは、データ ソースの実際の物理データに対応するフィールドは、物理フィールドと呼ばれます。
場合によってはフィールド定義と呼ばれる物理フィールドは、次のようなメタデータ情報を指定して、未加工フィールド データを構成します。
- フィールドの名前
- レコードのフィールドの開始位置
- フィールドの長さ
- フィールドのデータ型。Analytics がフィールドに保存されているデータを読み取って処理する方法を決定します。
さらに、データ型によって、またデフォルト値を無効にするために提供する設定のために、追加情報を指定する必要もあります。たとえば、数値フィールドに適用する書式設定、またはビューやレポートで使用する列見出しは、空白にしてデフォルト値を割り当てたり、あるいは使用する値を指定することもできます。
物理フィールド定義の例
以下の例は、[テーブル レイアウト]ダイアログボックスの Invoice_Amount フィールドの定義を示します。データ プレビュー領域で、フィールドに含まれる実際の物理データは、緑色でハイライト表示されます。
メタデータ要素 | 説明 | 値 |
---|---|---|
名前 | 物理フィールド名 | Invoice_Amount |
種類 | データ型 | 数値 |
開始位置 | フィールドの開始位置 | バイト位置 29 |
長さ | フィールド長 | 12 バイト |
小数点以下の桁数 | 小数点以下桁数 | 2 |
有効なデータ型 | データ型候補のクリック可能なリスト |
数値 フィールドの最初の値のプレビューを含みます |
書式 | 数値の書式 |
(9,999,999.99)
|
幅 | ビューとレポートのフィールド表示幅 | 12 文字 |
代替列見出し | ビューとレポートのフィールド表示名 | 請求金額(2 行) |
物理フィールドを定義する
データ ソースのフィールドの中から、Analytics テーブル レイアウトに追加するフィールドを物理フィールドとして個別に定義する必要があります。
多くの場合、データ定義ウィザードまたはデータ アクセス ウィンドウを使用して、データを定義およびインポートするときに、必須の物理フィールドが定義されます。ただし、追加のフィールドを手動で定義するか、テーブル レイアウトで手動ですべてのフィールドを定義できます。
各フィールドの開始位置と長さの指定
- [編集 > テーブル レイアウト]の順にクリックします。
- [フィールド/式の編集]タブで、[新しいデータ フィールドの追加 ]をクリックします。
- 次のいずれかを実行し、フィールド開始位置と長さを指定します。
- クリックしてドラッグデータ プレビュー領域で、グリッド内の任意のデータ行でフィールド対象部分を強調表示(クリックしてドラッグ)させることができます。
- 手動で指定[開始]および[長さ]テキスト ボックスで、フィールド開始位置と長さをバイトで手動で指定できます。
開始および長さ変数を手動で指定する場合は、次のガイドラインに従います。
非 Unicode Analytics 1 バイト = 1 文字 Unicode Analytics、拡張 ASCII (ANSI) データ 1 バイト = 1 文字 Unicode Analytics、Unicode データ 2 バイト = 1 文字 Unicode データ:
- [
- 開始]では、一般的に、奇数で開始するバイト位置を指定してください。偶数の開始位置を指定すると、文字が正しく表示されない可能性があります。 [
- 長さ]では、偶数バイトのみを指定します。奇数バイトを指定すると、文字が正しく表示されない可能性があります。
フィールド メタデータの指定
- [名前]テキスト ボックスにフィールド名を入力します。
メモ
フィールド名は 256 文字までの小文字の英字に制限されます。名前にはアンダースコア文字(_)を使用できますが、他の特殊文字やスペースは使用できません。名前の先頭を数字にすることはできません。
Analytics には多くの予約キーワードがあり、フィールド名にこのキーワードを使用することはできません。詳細については、予約キーワードを参照してください。
- [データ型]ドロップダウン リストで適切なデータ型を選択または確認します。
指定するデータ型は、ソース データのデータ型と同じ、あるいはそのデータの使用方法に適したデータ型である必要があります。たとえば、あるフィールドがデータ ソースでは数値データであっても、Analytics ではそのフィールドを文字データとして定義したいこともあります。
[有効なデータ型]の下で、クリック可能なリストには、指定した物理データ型と一致するデータ型が表示されます。データ型は適用可能性が最も高い順に表示されます。一般的なデータ型の後にはシステムやアプリケーション固有のデータ型も表示されます。
- (オプション) [幅]テキスト ボックスにフィールドの幅を文字で指定します。
Analytics ビューおよびレポートにフィールドを表示する場合、幅値は列サイズとして使用されます。
- (オプション) [[代替列見出し]テキスト ボックスには、表示名を指定します。
Analytics ビューおよびレポートにフィールドを表示する場合、表示名はフィールド名の代わりに列見出しとして使用されます。この値が指定されていない場合は、フィールド名が使用されます。
- (省略可能)演算フィールドによって評価されるレコードを制限したい場合は、[If]テキスト ボックスで条件を指定します。直接入力するか、または[If]ボタンをクリックして、式ビルダーを利用して IF ステートメントを作成します。
IF 文によって除外されるレコードは、演算フィールドによって評価されません。たとえば、IF 文 Invoice_Amount >= 1000 では、$1000 未満の請求金額のレコードが評価されません。
除外されたレコードの場合、演算フィールド値は、空白、0.00、または False (F) です。これは、演算フィールドのデータ型によって異なります。
- 選択したデータ型に応じて、以下の設定の値を指定する必要があります。
設定 記述 Dec の設定は、小数点桁数を指定します。このオプションは、数値(Numeric)フィールドの場合のみ有効になります。 書式 ビューやレポートにおける数値フィールドの表示書式を制御します。ソース データの日付時刻フィールドの入力書式も指定します。
このドロップダウン リストは、数値または日付時刻以外のデータ型が選択された場合には無効になります。書式は、ドロップダウン リストから選択する、または直接入力するか、あるいはドロップダウン リストから書式を選択後、その書式を編集することもできます。
[書式]ドロップダウン リストが空白の場合、このフィールドのデータには[オプション]ダイアログ ボックスで指定されたデフォルトの表示形式が適用されます。ここで指定した書式は、デフォルトの書式に優先します。
合計を出力しない このフィールドの値の合計は算出されなくなります。
Analytics では、レポート内の数値フィールドは自動的に集計されます。数値フィールドによっては、単価や口座番号など、合計する必要がない情報が格納されている場合もあります。このオプションは、数値(Numeric)データ型の場合のみ有効になります。
静的 Analytics が、IF ステートメントを評価するときに使用するデフォルトの動作が変わります。(省略可能な IF ステートメントの詳細については、フィールド定義を確定するを参照してください。)
静的が選択解除(デフォルト)IF ステートメントが False と評価される場合、フィールドのデータ カテゴリに応じて、フィールドには空の値(空白、ゼロ(0)、または False(F))が割り当てられます。
静的を選択IF ステートメントが False と判定された場合、Analytics では空の値ではなく、そのフィールドの最後の有効な値が繰り返し使用されるようになります。IF ステートメントが True と評価され、新しい値が使用されるまで、最後の有効な値が各行で繰り返されます。
日付時刻 数値フィールドが日付時刻フィールドとして解釈されるようになります。
[日付時刻]チェック ボックスをオンにした場合は、使用する日付時刻書式も[書式]ドロップダウン リストで指定する必要があります。
コントロール合計 フィールドをコントロール合計フィールドとして指定します。
コントロール合計は数値フィールドの値の合計です。これを使用して、データの整合性を確認することができます。新規のテーブルにデータを抽出した場合、または新規のテーブルでデータを並べ替えた場合、コントロール合計フィールドの入力値合計と出力値合計がテーブル履歴に格納されます。入力は元テーブルを指しています。出力は新規テーブルを指しています。2 つの合計が一致する場合は、抽出または並べ替え処理で失われたデータはありません。
データ提供者が提供するコントロール合計を Analytics が算出するコントロール合計と比較して、すべてのデータを受け取ったかどうかを確認することができます。
複数のフィールドに対してコントロール合計を指定すると、テーブル履歴はその中で開始位置が最も左にある数値フィールドについてのみ集計を報告します。
デフォルト フィルター Analytics テーブルを開くたびに、デフォルトのビューのレコードをこのフィールドの値に基づいてフィルターします。
True と判定されたレコードのみが表示され、フィルターは自動的に適用されます。このオプションは、論理データ型の場合のみ有効です。また、各テーブル レイアウトに指定できるデフォルト フィルターは 1 つのみです。
フィールド定義を確定する
- (省略可能)含まれる値を制限したい場合は、[If]テキスト ボックスで条件を指定します。直接入力するか、または[If]ボタンをクリックして、式ビルダーを利用して IF ステートメントを作成します。
- フィールドに含まれる IF ステートメントを満たす値
- フィールドから除外 IF ステートメントを満たさない値
たとえば、IF ステートメント Invoice_Amount >= 1000 に $1000 以上の請求金額が含まれ、$1000 未満の請求金額が除外されます。
除外された値はフィールドに表示されないか、コマンド処理に含まれません。フィールドのデータ カテゴリに応じて、除外された値は、空白、ゼロ(0)、または False(F)として表示されます。IF ステートメントを削除すると、いつでも除外を元に戻すことができます。
- (オプションl) 開いたテーブル ビューに新しく定義されたフィールドを自動的に追加しない場合は、[作成されたフィールドを現在のビューに追加] の選択を解除します。
オプションを選択したままにした場合、新しいフィールドがテーブル ビューに追加されます。フィールドはビューの最後の列として配置されるか、ビューの選択した列の左に移動します。
いつでも手作業でフィールドをビューに追加することができます。詳細については、ビューに列を追加するを参照してください。
- (省略可能)フィールドに関するノートを追加する場合は、[フィールド ノートの編集 ] をクリックしてノート テキストを入力し、[閉じる ]をクリックします。
- [入力を受け入れる ]をクリックします
。Analytics により、フィールド定義がテーブル レイアウトに追加されます。
- [閉じる ] をクリックしてテーブル レイアウト ダイアログ ボックスを終了します。
[作成されたフィールドを現在のビューに追加] を選択したままにした場合、関連する列がテーブルビューに追加されます。
日付時刻フィールドの定義
作業対象のデータ ソースによって、日付時刻情報(日付、日付時刻または時刻)は文字データまたは数値データとして格納されています。日付時刻情報を含むフィールドを手動で定義する場合、Analytics はこれをデフォルトでは文字データとして扱います。Analytics で日付時刻情報を正しく読み込むようにするには、データ型として日付時刻を選択し、[書式]ドロップダウン リストからは日付時刻の書式を指定する必要があります。
日付時刻ソース書式
日付時刻のソース書式では、ソース データ内で年、月、日、および時、分、秒を表す文字や数字、また、日付時刻データの各要素を区切るのに使用する文字を識別します。
日付時刻がソースデータに保存される方法を一致させるには、次の操作を行うことができます。
- 既存の日付時刻の選択
- 独自の日付時刻形式の指定
- 既存の形式の選択と修正
たとえば、December 31, 2014 と表される日付が、データ ソースでは 14-31-12 として格納されている場合、日付時刻書式として YY-DD-MM と入力して Analytics が日付の値を正しく解釈できるようにします。
詳細については、ソース データに含まれる日付および時刻データの書式を参照してください。
日付時刻表示書式
選択または指定する日付時刻書式が Analytics での日付時刻の表示方法やレポートでの書式設定に影響することはありません。日付時刻の表示形式は[オプション]ダイアログ ボックスの[日付と時刻]タブで指定される[日付の表示書式]設定や[時刻の表示書式]設定で決まります。
詳細については、[日付と時刻]タブ([オプション]ダイアログ ボックス)を参照してください。
重複フィールドの定義
ほとんどの場合、レコードの物理フィールドを定義するときに、レコードの各バイト位置は、1 つのフィールドにのみ割り当てられます。基本的に、テーブルの定義は、レコードの各フィールドの開始位置と長さの定義の問題であり、1 つのフィールドは前のフィールドが終了した後に開始します。
しかし、場合によっては、各フィールドが重なるように定義する必要があるかもしれません。その場合、同じバイト位置が複数のフィールドで使用されます。ソースデータの構造が非標準であるか、特定の方法で Analytics でデータを操作する場合に、この状況が発生することがあります。
たとえば、データ ソースのレコードの先頭 6 バイトを DDMMYY という書式の日付時刻フィールドとして定義した後、月を示す 3 バイト目と 4 バイト目の 2 バイトを数値フィールドとして別定義することができます。この方法によって、日付全体を表すフィールドを経過日数に使用することができ、さらに月を別のフィールドの単独の値として月別合計の作成に使用することができます。