ScheduledRules 要素 (ADF)
1 つのサブスクリプション クラスで使用する定期的なサブスクリプション ルールの定義を必要な数だけ記述します。
構文
<SubscriptionClasses>
<SubscriptionClass>
...
<ScheduledRules>
要素の特性
特性 | 説明 |
---|---|
データ型 |
なし。 |
既定値 |
なし。 |
個数 |
SubscriptionClass 要素につき 1 個 (省略可)。 |
更新 |
アプリケーションの更新時に追加および削除できます。 |
要素の関係
関係 | 要素 |
---|---|
親要素 |
|
子要素 |
解説
ScheduledRules 要素には、サブスクリプション クラスの定期的なルールが 1 つ以上含まれています。定期的なルールには、定期的なサブスクリプションの通知生成ルールが含まれています。
使用例
次の例では、ScheduledRules 要素に定期的なルールが 2 つ含まれています。1 つ目の定期的なルールは、通知を作成し、記録データを更新します。2 つ目の定期的なルールは、サブスクリプション情報をアーカイブします。
<ScheduledRules>
<ScheduledRule>
<RuleName>StockSubScheduledRule</RuleName>
<Action>
-- Generate Notifications
INSERT INTO ScheduledNotifications
( SubscriberId, DeviceName, SubscriberLocale,
StockSymbol, StockPrice )
SELECT S.SubscriberId, S.DeviceName,
S.SubscriberLocale, C.StockSymbol, C.StockPrice
FROM StockSubscriptions S JOIN StockEventChron C
ON S.StockSymbol = C.StockSymbol
WHERE S.StockTriggerPrice <= C.StockHighPrice
GROUP BY S.StockSymbol, C.StockHighPrice
-- Maintain the subscription chronicle
INSERT StockSubscriptionChron
(SubscriberId, StockSymbol, StockPrice)
SELECT S.SubscriberId, S.StockSymbol, C.StockHighPrice
FROM StockSubscriptions S JOIN StockEventChron C
ON S.StockSymbol = C.StockSymbol
</Action>
<ActionTimeout>P0DT00H00M45S</ActionTimeout>
</ScheduledRule>
<ScheduledRule>
<RuleName>StockSubArchiveRule</RuleName>
<Action>
-- Maintain an archive table
INSERT StockSubscriptionArchive
(SubscriberId, StockSymbol, StockPrice, ArchiveDate)
SELECT S.SubscriberId, S.StockSymbol, S.StockPrice, GETDATE()
FROM StockSubscriptionsChron S
</Action>
<ActionTimeout>P0DT00H01M00S</ActionTimeout>
</ScheduledRule>
</ScheduledRules>