使用 SQL Server 2008 R2、.NET 4 和 C#,我在找出如何链接报告计划和报告订阅时遇到了一些麻烦。
我可以获得所有报告、所有订阅和所有时间表的列表,这很好并且有效。因此,我拥有最原始形式的数据,但是当试图找到某种方法来获取使用 ScheduleA 的所有订阅的列表时,例如,我根本找不到任何东西。
我搜索了 MSDN,花了一个下午的时间在谷歌上搜索,都无济于事。我希望它不像看起来那么困难,因为它真的不应该。
使用 SQL Server 2008 R2、.NET 4 和 C#,我在找出如何链接报告计划和报告订阅时遇到了一些麻烦。
我可以获得所有报告、所有订阅和所有时间表的列表,这很好并且有效。因此,我拥有最原始形式的数据,但是当试图找到某种方法来获取使用 ScheduleA 的所有订阅的列表时,例如,我根本找不到任何东西。
我搜索了 MSDN,花了一个下午的时间在谷歌上搜索,都无济于事。我希望它不像看起来那么困难,因为它真的不应该。
感谢对我最初的问题发表评论的人,这使我有了一个接受计划 ID 的方法,并在收到报告后执行以下操作:
var subscriptions = service.ListSubscriptions(report.Path);
foreach (var subscription in subscriptions)
{
ExtensionSettings settings;
string description, status, eventType, matchData;
ActiveState state;
ParameterValue[] parameters;
string user = service.GetSubscriptionProperties(subscription.SubscriptionID, out settings,
out description, out state, out status, out eventType,
out matchData, out parameters);
if (matchData == scheduleId)
{
// Do what I need to do
}
}
这最终为我提供了我正在寻找的解决方案。不幸的是,现在我遇到了一个不同的问题,但如果需要,我会提出一个不同的问题。