デフォルト値のデータ・フィルター・パラメーターを定義する方法

垂直フィルター操作は、DB2 DataPropagator サブスクリプションの 「拡張サブスクリプションの定義」ノートブックの 「ターゲット列」ページ、および JDBC サブスクリプションの「拡張レプリケーション・サブスクリプション」ノートブックの「行」ページを使用します。 これらのノートブックをオープンするには、次のようにします。

  1. JDBC サブスクリプションまたは DataPropagator サブスクリプションを作成または編集します。
  2. サブスクリプションの定義」をクリックします。「レプリケーション・サブスクリプションの定義」ウィンドウがオープンします。
  3. 拡張」をクリックします。 DB2 DataPropagator サブスクリプションの場合、 「拡張サブスクリプションの定義」ノートブックがオープンします。 JDBC サブスクリプションの場合は、「拡張レプリケーション・サブスクリプション」ノートブックがオープンします。

このセクションでは、7 列あるサンプル表を使用します。 このサンプル表の特性は、次のとおりです。

列名           データ・タイプ   NULL 可能    デフォルト値
NOTNULLINT1    INTEGER          NO
NOTNULLCHAR1   CHAR             NO
NOTNULLDATE1   DATE             NO
DEFAULTINT1    INT              YES          1000
DEFAULTCHAR1   CHAR             YES          'a'
DEFAULTDATE1   DATE             YES          '2001-06-29'
ID             INTEGER          NO

ID 列は主キーです。

手順

デフォルト値のデータ・フィルター・パラメーターを定義する方法

  1. フィルター操作するグループの「グループの作成または編集」ノートブックをオープンします。 フィルター変数を使用して作成したサブスクリプションは、編集中のグループに割り当てなければなりません。
  2. 「グループ」ノートブックの「データ・フィルター」ページで、 「追加」をクリックします。
  3. パラメーター名」フィールドに、デフォルト値のデータ・フィルター・パラメーター名を入力します。
  4. デフォルト値」フィールドに、デフォルト値を入力します。 例えば、デフォルト値のデータ・フィルター・パラメーター :PARAMINT1 には、 次を入力します。
    100
    

    特殊値も使用できます。 値 $USERNAME を使用すると、同期サーバーのユーザー ID をパラメーターの値として挿入できます。 これにより、特定のフィールドに特定のユーザーの同期サーバー・ユーザー ID があるデータ・ソースに、そのユーザーによって作成された行を挿入することができます。 例えば、:PARAMCHAR1 に次の値を入力します。

    $USERNAME
    

    これで、サンプル表のすべての行の NOTNULLCHAR1 列に、同期サーバー・ユーザー ID が挿入されます。 例示表で、さらに次の 2 つのパラメーターを追加します。

    :PARAMDATE1.    '2001-06-29'
    :PARAMINT2.     15
    
  5. 「グループ」ノートブックを完成させ、クローズします。
  6. フィルター操作するユーザーの「ユーザーの作成または編集」ノートブックをオープンします。 フィルター・パラメーターを使用して、ユーザーをグループに割り当てなければなりません。
  7. 「ユーザー」ノートブックの「データ・フィルター」ページで、このユーザーの特定のデフォルト値をオーバーライドできます。 $USERNAME フィルターを使用中の場合、このユーザーのユーザー ID が自動的に「ユーザー・オーバーライド」列に挿入されます。 例えば、値 :PARAMINTZ をオーバーライドするには、次のようにします。
    1. 変更」をクリックします。
    2. ユーザー・オーバーライド」フィールドに、値を入力します。 例えば、このユーザーの :PARAMINT2 の値をオーバーライドし、20 にセットするには、20 と入力します。
    3. OK」をクリックします。
  8. 「ユーザー」ノートブックを完成させ、クローズします。

フィルタリングされたグループに割り当てられたすべてのユーザーは、 サンプル表のサブスクライブされた 3 列のみを受信します。ユーザーが 表に新しい行を挿入すると、その行は、アンサブスクライブされた各列の グループのデフォルト値を使用してデータ・ソースに同期化されます。 データ・フィルターに $USERNAME キーワードが 使用されている場合、その行を挿入したユーザーのユーザー ID が、 フィルタリングされた列の値に対して挿入されます。また、個々のユーザーには、 ユーザーを基本にして構成されるグループのデフォルト値によって異なる特定のデフォルト値があります。

関連したタスク

関連した解説