非表示データの問題の解決
データには、すぐにはわからない問題が含まれている場合があります。例えば、データカラムのNULL値を検索するルール仕様を定義したとします。しかし、ルール仕様は、スペース文字のみを含む値を検出しません。このような値は、画面に表示したときにようやくNULLとして見えます。
値を見つけるには、一連のルール文を使用してルール仕様を定義します。1つのルール文でNULL値を検索します。追加の2つのルール文で、スペース文字のみを含むフィールドを検索します。スペース文字のみを含むフィールドを検索するには、ルール文の1つを、その前にあるルール文の条件から出力を読み取るように設定します。
NULL値の検索
このタスクでは、NULLまたは空の文字列を検索するルール文を定義します。NULLまたは空の文字列を含むフィールドを検索するには、条件タイプをNULL値に設定し、is演算子を使用して、入力値がNULLかどうかを判定します。
1ルール仕様のルールセットを選択します。
2ルールセットのプロパティで、[ルールロジック]をクリックします。
3[ルール文の追加]をクリックします。
4ルール文に文字列型の入力を選択します。
- - 使用可能な入力がルール仕様に含まれない場合は、入力を作成します。ビジネスデータを含むカラムの種類を表す入力プロパティを設定します。
5条件分析の結果を検証する演算子を選択します。
- - 入力データが条件のデータに一致する必要があることを指定するには、次の演算子を選択します。
is
6入力に適用する条件の種類を選択します。
- - 入力値がNULLであることを確認するには、次の条件タイプを選択します。
null value
7条件ロジックを満たすデータに適用されるアクションの種類を選択します。
- - 整数値を返すには、次のアクションタイプを選択します。
integer value
8アクションが返す値を入力します。例えば、2と入力します。
注: 1と0以外の値を入力してください。値1および0は、次のタスクにある、スペース文字を識別する関数の結果であるtrueとfalseを表します。
スペース文字のみを含む値の検索
このタスクでは、スペース文字のみを含むフィールドを検索するルール文を定義します。2つのルール文を設定し、そのうちの1つのルール文は、別のルール文の結果を読み取ります。スペース文字のみを含むフィールドを検索するには、Is Spaces関数を使用するルール文を作成します。
1[ルール文の追加]をクリックします。
2前のタスクで追加した入力を選択します。
3条件分析の結果を検証する演算子を選択します。
- - 条件がNullデータに適用されないようにするには、次の演算子を選択します。
is not
4入力に適用する条件の種類を選択します。
- - NULLでない入力値を識別するため、次の条件タイプを選択します。
null value
5条件ロジックを満たすデータに適用されるアクションの種類を選択します。
- - 整数値を返すには、次のアクションタイプを選択します。
integer value
6アクションが返す値を入力します。例えば、3と入力します。
注: 1と0以外の値、および前のタスクで指定した値以外の値を入力します。
7現在のルール文のアクションメニューから、[結果を使用したルール文の追加]を選択します。
ルール仕様は、現在のルール文の下に空のルール文を追加します。ルール文は、その上にあるルール文の結果を読み取ります。
8手順7で追加したルール文で、条件分析の結果を検証する演算子を選択します。
- - 条件が前のルール文からの出力を読み取るように指定するには、次の演算子を選択します。
is
9 入力に適用する条件の種類を選択します。
- - 前のルール文からの出力を確認するには、次の条件タイプを選択します。
integer value
10手順6で追加した値を現在のタスクに入力します。
入力文字列がNULLでないことを示す値を検索する条件を設定します。例えば、入力文字列がNULLでない場合に、前のルール文で値3が返された場合は、「3」と入力します。
11条件ロジックを満たすデータに適用されるアクションの種類を選択します。
- - アクションで関数式を使用するには、次のアクションタイプを選択します。
function
12入力データでスペース文字のみを検索するようにアクションを設定します。
- - [条件の定義]ダイアログボックスを開きます。
- - [関数]を選択し、[スペースである]を選択します。
- - 前のルール文で指定した文字列入力を選択します。
- - [OK]をクリックします。
13ルール仕様を保存します。
ルール仕様は、最初にNULL文字列を検索し、次にスペース文字のみを含む文字列を検索します。Is Spaces関数は、スペース文字のみを含む文字列に対して1を返し、それ以外で読み取った文字列に対して0を返します。