次の方法で共有


LinkLeafCondition Constructor (LinkLeafOperator, FilterRule, JoinClause[])

LinkLeafOperator オブジェクト、FilterRule オブジェクト、および 0 個以上の JoinClause オブジェクトを使用して、LinkLeafCondition クラスの新しいインスタンスを初期化します。

名前空間: Microsoft.SqlServer.NotificationServices.Rules
アセンブリ: Microsoft.SqlServer.NotificationServices.Rules (microsoft.sqlserver.notificationservices.rules.dll 内)

構文

'宣言
Public Sub New ( _
    op As LinkLeafOperator, _
    filter As FilterRule, _
    ParamArray linkChain As JoinClause() _
)
public LinkLeafCondition (
    LinkLeafOperator op,
    FilterRule filter,
    params JoinClause[] linkChain
)
public:
LinkLeafCondition (
    LinkLeafOperator op, 
    FilterRule^ filter, 
    ... array<JoinClause^>^ linkChain
)
public LinkLeafCondition (
    LinkLeafOperator op, 
    FilterRule filter, 
    JoinClause[] linkChain
)
public function LinkLeafCondition (
    op : LinkLeafOperator, 
    filter : FilterRule, 
    ... linkChain : JoinClause[]
)

パラメータ

  • op
    filter 結果に適用される演算子です。
  • filter
    linkChain によって関連付けられたテーブルやビューの行が、op 条件に適合するかどうかを判別するロジックを持つ、FilterRule です。
  • linkChain
    この条件が参照するテーブルまたはビューと、filterInputType との間のリンクを説明する、0 個以上の JoinClause インスタンスです。

解説

filter を定義しない場合は、Filter プロパティを設定する必要があります。

使用例

次の例に、フィルタを定義し、リンク リーフ条件でそのフィルタを使用するサブスクリプションを定義する方法を示します。

このフィルタは、製造フェーズが Subassembly である製品を判別します。このフィルタに一致するイベントだけが、サブスクリプションの評価時に使用されます。

サブスクリプション自体では、Any 演算子、定義した toolCrib 関数を使用し、イベント ビューと製品の場所との間のリンク チェーンを指定します。リンク チェーンでは、イベント ビューが inventory テーブルにリンクされ、その inventory テーブルが location テーブルにリンクされます。

// Subscribe to products in Subassembly location. This
// requires select permissions on all tables in the sample.

//Specify server and database.
Server server = new Server("MyServer");
Database db = server.Databases[nsApplication.DatabaseName];

// Specify tables and views used by the condition.
Table locationTable = db.Tables["Location", "Production"];
Table inventoryTable = db.Tables["ProductInventory", "Production"];
View eventView = db.Views["InventoryTrackerEvents",
    "NS_InventoryTrackerApplication"];

// Filter defining "Subassembly" locations.
FilterRule toolCrib = new FilterRule(
    new TableInputType(db.Tables["Location", "Production"]),
    new SimpleLeafCondition(new FieldValue("Name"),
        SimpleOperator.Equals, "Subassembly"));

// Create subscription and define basic properties.
s = new Subscription(nsApplication, subscriptionClassName);
s.SubscriberId = "Stephanie";
s.Enabled = true;
s.RuleName = "InventoryTrackerRule";
s.SetFieldValue("DeviceName", "myDevice");
s.SetFieldValue("SubscriberLocale", "en-us");

// Define a condition using the filter.
s.Condition = new LinkLeafCondition(
    LinkLeafOperator.Any,
    toolCrib,
    new JoinClause(eventView.Columns["ProductId"],
        inventoryTable.Columns["ProductId"]),
    new JoinClause(inventoryTable.Columns["LocationId"],
        locationTable.Columns["LocationId"]));

// Add subscription.
s.Add();

プラットフォーム

開発プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

対象プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

参照

関連項目

LinkLeafCondition Class
LinkLeafCondition Members
Microsoft.SqlServer.NotificationServices.Rules Namespace