ギャップの検査
Concept Information
順番に並んでいる数値フィールドや日付時刻フィールドにおける欠落は、データ ファイルが不完全であることを示す可能性があります。フィールドの順番に並んでいる値にギャップがないかを調べ、1 つまたは複数のギャップや欠落項目がある場合は、それを識別することができます。
有効な結果を得るために、検査されるフィールドは、事前に順番どおりに整列されている必要があります。フィールドの並べ替えは、前もって実行しておくか、ギャップの検査時に[あらかじめ並べ替える]オプションを使用して行うことができます。
数値フィールドや日付時刻フィールド、あるいは文字フィールド内の数字を検査することができます。一度に 1 つのフィールドしか検査できません。
ギャップの幅の列挙または欠落している項目の列挙
ギャップの検査結果を出力する際のオプションは 2 つあります。
- ギャップ幅の列挙
- 欠落項目の列挙
ギャップ幅の列挙
ギャップの開始点と終了点、およびギャップ内の欠落項目の総数を割り出します。
ギャップの開始点と終了点を特定する値は、その値自体は欠落項目でありません。開始点と終了点は連続した値で、ギャップの直前および直後に現れる値です。これらには、「ギャップ開始(除く)」と「ギャップ終了(除く)」というラベルが付けられます。たとえば、小切手番号 12345 と 12350 がある場合、それら 2 つの番号の間に 4 つの欠落項目を含むギャップが割り出されます。
欠落項目の列挙
ギャップ内の個々の欠落項目を一覧表示します。たとえば、小切手番号 12346、12347、12348、および 12349 となります。
これらの欠落した項目は計算された値であり、実際は検査するデータに現れません。このオプションを使用する場合は、[欠落項目の最大数]フィールドで、各ギャップについて個別に列挙する欠落項目の最大数を指定できます。これは、ギャップが大きい場合に有用です。最大数を超えると、Analytics は代わりに範囲の方法を用いてギャップを特定します。1 つの差異について、ギャップの開始点と終了点を識別する値が、連続する欠落項目の最初と最後になります。これらには、「ギャップ開始(含める)」と「ギャップ終了(含める)」というラベルが付けられます。
メモ
[欠落項目の最大数]に指定した数は、ギャップ単位で適用されます。これは、データ セット全体での結果となる欠落項目の総数を制限するものではありません。個別に列挙されるか、それともグループで列挙されるかどうかを制限します。
欠落項目の方法を使用する場合は、[欠落項目の最大数]フィールドの値とそれぞれ異なるギャップのサイズに応じて、結果には個々の欠落項目と範囲が混在して含まれます。
数値データ内のギャップ検査
数値データのギャップを検査する場合、次のようにデータの小数点以下の桁数によってデータ内の許容間隔が制御されます。
- 数値データに整数のみ(小数部なし)が含まれる場合、許容間隔は 1
です。1 より大きい間隔が 1 つのギャップです。範囲として報告されるギャップの場合、欠落項目の数は欠落している整数の数です。
- 数値データには小数点が含まれます許容される間隔は最小の小数点間隔と等しくなります
たとえば、数値フィールドが小数点 2 桁の場合、許容される間隔は 0.01 です。最も小さい小数間隔よりも大きい間隔が 1 つのギャップです。範囲として報告されるギャップの場合、欠落項目の数は欠落している小数間隔の数です。
数値データ内のギャップ検査の例
最初の例では、数値データに整数のみが含まれます。許容される間隔は 1 です。
|
検査値 |
欠落項目 |
欠落項目の数 |
|---|---|---|
|
-2 -1 0 1 4 5 15 |
2 3 6 ~14 (6 と 14 も含む) |
1 (整数) 1 (整数) 9 (整数) |
2 番目の例では、数値データに小数点 2 桁が含まれます。許容される間隔は 0.01 です。
|
検査値 |
欠落項目 |
欠落項目の数 |
|---|---|---|
|
4.24 4.25 4.26 4.29 4.30 5.00 |
4.27 4.28 4.31 ~ 4.99(4.31 と 4.99 も含む) |
1(0.01 間隔) 1(0.01 間隔) 69(0.01 間隔) |
日付時刻データ内のギャップ検査
日付、日付時刻または時刻データでギャップを検査することができます。
- 日付フィールドにおける許容間隔は 1 日です
1 日以上の間隔が 1 つのギャップです。範囲として報告されるギャップの場合、欠落項目の数は欠落している日数です。
- 日付時刻または時刻フィールドにおける許容間隔は 1 秒です
1 秒以上の間隔が 1 つのギャップです。範囲として報告されるギャップの場合、欠落項目の数は欠落している秒数です。したがって、1 時間のギャップは 3,600 個の欠落項目がある範囲として報告され、1 日のギャップは 86,400 個の欠落項目がある範囲として報告されます。
日付および日付時刻データ内のギャップ検査の例
最初の例では、データに日付のみが含まれます。許容間隔は 1 日です。
|
検査値 |
欠落項目 |
欠落項目の数 |
|---|---|---|
|
2014/12/27 2014/12/28 2014/12/31 2015/01/01 2015/01/02 2015/01/12 2015/01/13 |
2014/12/29 2014/12/30 2015/01/03 ~ 2015/01/11 |
1(日) 1(日) 9(日) |
2 番目の例では、データに日付時刻が含まれます。許容間隔は 1 秒です。
|
検査値 |
欠落項目 |
欠落項目の数 |
|---|---|---|
|
2014/12/31 23:59:54 2014/12/31 23:59:55 2014/12/31 23:59:58 2014/12/31 23:59:59 2015/01/01 01:00:00 2015/01/01 01:00:01 2015/01/02 01:00:02 |
2014/12/31 23:59:56 2014/12/31 23:59:57 2015/01/01 00:00:00 ~ 2015/01/01 00:59:59 2015/01/01 01:00:02 ~ 2015/01/02 01:00:01 |
1(秒) 1(秒) 3,600(秒) 86,400(秒) |
文字フィールド内の数値データのギャップ検査
文字フィールドに存在する数値データ(通常は文字データとして書式設定される小切手番号など)に対してギャップ検査を行うことができます。
文字フィールドに文字と数字が続けて現れる場合は、数字のみが検査され、文字は無視されます。
文字フィールド内の数字のギャップ検査の例
英字のプレフィックスは無視されます。数値のみが考慮されます。
|
検査値 |
欠落項目 |
欠落項目の数 |
|---|---|---|
|
A123 C124 |
|
0(文字数字) |
|
A123 B125 |
124 |
1(文字数字) |
文字フィールドの並べ替えがギャップの検査に影響することがある
文字フィールドの値の文字と数字の配列によっては、ギャップ検査の結果間に矛盾が存在する可能性があります。たとえば、一部の数字は文字の前にあり、一部は前にない場合、あるいは Analytics の非 Unicode 版で、前にある一部の文字は小文字で、一部は大文字である場合は、結果が正確でないかもしれません。
不正確な結果になるのは、アルファベット文字の存在が一貫していない、あるいはアルファベット文字の大文字/小文字の表記が統一されていないため、 [あらかじめ並べ替える]オプションで適切な順序で並べ替えられないことが原因です。次の表の[欠落項目]欄で示す 126 と 127、および 124 は実際には欠落してる項目ではありませんが、検査値が英数文字として並べ替えられているため、欠落項目として挙げられています。
検査値に矛盾があるのではないかと疑わしい場合は、そのフィールドで個別に並べ替えて、ギャップが検査される文字フィールドの値の順序を明らかにします。連続する数値の順序が文字の存在によって不適切になる場合に、有効な結果を確実に得るには、ギャップを検査する前に、INCLUDE( ) などの Analytics 関数を使用して文字を取り除いておくことができます。
ギャップ検査の不正な結果の例
一貫性がない英字の存在、または一貫性がない英字の大文字と小文字により、項目が欠落していると誤って報告されます。
|
検査値 |
欠落項目 |
欠落項目の数 |
|---|---|---|
|
123 124 125 128 129 A-126 A-127 |
126 127 |
1(文字数字) 1(文字数字) |
|
A-123 a-124 A-125 A-128 A-129 A-126 A-127 |
124 |
1(文字数字) |
手順
順番に並んでいる数値や日付時刻値に欠落(ギャップ)がないかどうかを検出するために、アクティブなテーブルについて一度に 1 つのフィールドを検査することができます。
フィールドの選択
- ナビゲーターでギャップをテストするテーブルを開きます。
- [分析 > ギャップ] を選択します。
- [メイン]タブで、次のいずれかを行います。
[ギャップの対象]リストから、テストするフィールドを選択します。
[ギャップの対象]をクリックして、フィールドを選択するか、または式を作成します。
一度に 1 つのフィールドしか検査できません。
- 省略可能。[ギャップの対象] をクリックした場合は、選択したフィールドの横の並べ替えの矢印
をクリックすることにより、出力結果を降順に並べ替えるように指定できます (デフォルトは昇順)。
レコードを処理対象から除外する(省略可能)
-
現在のビューに処理から除外したいレコードがある場合には、次のようにします。
-
[If] テキストボックスに条件を入力します
-
[If] をクリックし、式ビルダーを使用して IF ステートメントを作成します
If 条件は、ビュー内のすべてのレコードを判断し、指定された条件を満たさないレコードを除外します。
メモ
If 条件は、任意の範囲オプション(先頭、次へ、While)が適用された後に、テーブルに残るレコードに対してのみ評価されます。
-
[事前並べ替え]をオフにする(省略可能)
-
テストフィールドが前の操作で既に並べ替え済みであれば、[あらかじめ並べ替える] をオフにすることにより、大きなテーブルのギャップを検査する場合の時間を節約できます。
テストフィールド内のデータがソートされていない場合は、すべてのギャップが確実に検出されるようにするために、[あらかじめ並べ替える] はオンのままにしておいてください。
メモ
[あらかじめ並べ替える] をオフにする場合、結果を有効なものにするには、テストフィールドが事前に並べ替えられている必要があります。ソートされていないフィールドに対してギャップ検査を行うと、結果に "警告:ファイルの順序が正しくありません" というメッセージが提示されます。結果を Analytics テーブルに出力する場合、警告メッセージはコマンド ログに記載されます。
欠落の範囲または欠落アイテムの出力
-
[出力タイプ] の下で、以下のいずれかを選択します。
-
[ギャップの幅を列挙する] を選択すると、ギャップの開始点と終了点、およびギャップ内の個々の欠落項目の総数を割り出すことができます。
-
[欠落している項目を列挙する] を選択すると、ギャップ内の個々の欠落項目を一覧表示できます。
[欠落項目の最大数]テキスト ボックスで、各ギャップについて個別に列挙する欠落項目の最大数を指定するか、またはデフォルトの 5 のままにしておきます。
-
出力を構成する
- [出力]タブをクリックします。
-
[出力先] パネルで、適切な出力オプションを選択します。
メモ
特定の分析操作に対して適用されない場合に、出力オプションは無効になります。
オプション 詳細 画面 Analytics の表示領域に結果を表示します
ヒント
ヒント表示領域内で、リンク付きの任意の結果値をクリックすると、関連付けられているソーステーブル内の 1 つまたは複数のレコードにドリルダウンすることができます。
出力レコードに多数のレコードが含まれている場合は、結果を画面に表示するよりファイルに保存した方が、処理が速く便利です。
印刷 通常使うプリンターに結果を送信します。 グラフ 結果を基にグラフを作成し、それを Analytics 表示領域に表示します ファイル 結果を新しい Analytics テーブルまたはテキストファイル保存または追加するか、あるいは既存の Analytics テーブルまたはファイルを上書きします。
- Analytics テーブル - テーブルがまだプロジェクトに存在しないときは、開いているプロジェクトに追加されます。
- テキストファイル - ファイルは Analytics の外部に保存されます。
-
出力タイプとして [ファイル] を選択した場合は、[出力指定] パネルで適切な情報を指定します。
オプション 詳細 ファイル タイプ -
Analytics テーブル - 結果を Analytics テーブルに保存または追加するか、既存のテーブルを上書きします。
-
ASCII テキストファイルまたは Unicode テキストファイル - 結果をテキストファイルに保存または追加するか、既存のファイルを上書きします。
名前 -
新しいテーブルまたはファイルを保存するには、次のようにします。
[名前]テキスト ボックスにファイル名を入力します。Analytics によってファイル名があらかじめ設定されている場合は、その設定されている名前を受け入れることも、あるいは変更することもできます。
-
既存のテーブルまたはファイルに追加するか、既存のテーブルまたはファイルを上書きするには、次のようにします。
[名前] をクリックして、[保存] または [名前を付けて保存] ダイアログボックスで既存のテーブルまたはファイルを選択します。
絶対ファイルパスや相対ファイルパスを指定したり、別のフォルダーへ移動したり、プロジェクトの場所とは違う場所でファイルの保存、追加、または上書きを実行したりできます。例:
C:\Results\Output.fil または Results\Output.fil。
メモ
Analytics のテーブル名は、最長で 64 文字の英数字(拡張子 .FIL を含まない)に制限されます。名前にはアンダースコア文字(_)を使用できますが、他の特殊文字やスペースは使用できません。名前の先頭を数字にすることはできません。
ローカル サーバーテーブルに接続されており、Analytics テーブルに保存、追加、またはそれを上書きする場合にのみ有効になります。
-
[ローカル] を選択すると、Analytics プロジェクトと同じ場所で保存、追加、または上書きを実行できます。
-
[ローカル] を選択解除したままにしておくと、サーバーの Prefix フォルダーで保存、追加、または上書きを実行できます。
メモ
出力結果が AX Server テーブルの分析や処理から生成される場合は、[ローカル]を選択します。結果テーブルを AX Server へインポートするために[ローカル]設定を選択解除することはできません。
-
- 省略可能。適切なテキストボックスにヘッダーまたはフッターを指定します。
複数行のヘッダーやフッターを入力する場合は、[ヘッダー] または [フッター] ボタンをクリックします。ヘッダーまたはフッターのテキストボックスで、改行文字としてセミコロン (;) を入力することもできます。
デフォルトでは、ヘッダーとフッターは中央揃えで出力されます。ヘッダー テキストやフッター テキストを左揃えにするには、テキストの前に始め山かっこ(<)を入力します。複数行を左揃えにするには、各行の先頭に山かっこが必要です。
メモ
出力タイプによっては、ヘッダーまたはフッターを指定できないものもあります。
処理の範囲を指定する
- [詳細]タブをクリックします。
-
[適用範囲] パネルで、適切なオプションを選択します。
- すべて
- 先頭
- 次へ
- While
詳しく表示
適用範囲オプション 詳細 すべて (デフォルト) ビュー内のすべてのレコードを処理することを指定します。 先頭 テキストボックスに数を入力します。ビュー内の先頭レコードから処理が開始され、指定した件数のレコードのみが処理対象とされます。 次へ テキストボックスに数を入力します。ビュー内の現在選択したレコードから処理が開始され、指定した件数のレコードのみが処理対象とされます。行内のデータではなく、ビュー内の左端列で実際のレコード番号が選択されている必要があります。 While WHILE ステートメントを使用して、特定の条件または条件のセットに基づいてビュー内のレコードの処理を制限します。
[While] テキストボックスに条件を入力するか、または [While] ボタンをクリックし、式ビルダーを利用して WHILE ステートメントを作成します。
WHILE ステートメントでは、指定した条件が true と評価される間のみ、ビュー内のレコードを処理することができます。条件が false と評価されるとすぐに処理が終了し、それ以上レコードは判断されません。
While オプションは、"すべて"、"先頭"、または "次" オプションと組み合わせて使用することができます。1 つの制限に達するとすぐに、レコードの処理が停止します。
メモ
[先頭] または [次] オプションは、テーブル内のレコードの物理的な順序またはインデックス付けされた順序のいずれかを参照します。[先頭] または [次] では、テーブル ビューに適用されたフィルタリングまたはクイック ソートは無視されます。ただし、分析操作の出力結果ではすべてのフィルターを考慮します。
ビューでクイック ソートが実行されている場合、"次" は "先頭" のように動作します。
設定の最終処理と結果の出力
-
省略可能。出力タイプとして [ファイル] を選択した場合、出力結果を既存テーブルまたはファイルの末尾に追加するときは、次のいずれかを行います。
-
出力結果とテーブルまたはファイルの構造がまったく同じであることがわかっている場合は、[既存のファイルに追加する] を選択します。
[既存のファイルに追加する] では、出力結果と既存のテーブルやファイルのレコード長が異なっていても、強制的に追加が実行されます。レコード長が異なっていれば、データ構造は同じではなく、追加は正しく動作しません。
-
出力結果と既存のテーブルのレコード長を Analytics に比較させたい場合は、[既存のファイルに追加する] を選択解除したままにしておきます。この自動チェックは Analytics テーブルに対してのみ実行され、テキストファイルには実行されません。
メモ
出力結果と既存のテーブルが同一のデータ構造であるかどうかが不明な場合は、[既存のファイルに追加する] を選択解除したままにしておきます。追加およびデータ構造の詳細については、既存テーブルへの出力結果の追加を参照してください。
-
-
出力の種類としてファイル(Analytics テーブル)を選択した場合、操作の完了時に、自動的に出力テーブルを開く場合は、[出力テーブルを開く]を選択します。
- [OK]をクリックします。
- 上書きを確認するメッセージが表示されたら、適切なオプションを選択します。
[最後に追加]オプションが表示されることを期待していたのに表示されない場合は、[いいえ]をクリックして操作をキャンセルし、既存テーブルへの出力結果の追加を参照してください。