Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
简单的SQL Reporting Services问题_Sql_Reporting Services - Fatal编程技术网

简单的SQL Reporting Services问题

简单的SQL Reporting Services问题,sql,reporting-services,Sql,Reporting Services,我正在为一个项目写一份可行性研究报告,在我深入研究之前,我可以用.net程序来获取SQL Reporting Services中服务器的报告列表吗 换句话说,如果有人添加了一个新报告,我们希望它显示在列表中。另外,您能否通过某种枚举获取有关报表的详细信息?Reporting Services有一个SOAP API,因此您可以通过该API检索报表列表,但我认为直接访问数据库会更容易。ReportServer数据库中的Catalog表包含每个报告的列表。您甚至可以从那里链接到ExecutionLog

我正在为一个项目写一份可行性研究报告,在我深入研究之前,我可以用.net程序来获取SQL Reporting Services中服务器的报告列表吗


换句话说,如果有人添加了一个新报告,我们希望它显示在列表中。另外,您能否通过某种枚举获取有关报表的详细信息?

Reporting Services有一个SOAP API,因此您可以通过该API检索报表列表,但我认为直接访问数据库会更容易。
ReportServer
数据库中的
Catalog
表包含每个报告的列表。您甚至可以从那里链接到
ExecutionLog
表,以了解它何时运行(尽管该表似乎是一个大约三个月的滑动窗口-您不会得到比这更久的执行详细信息)。

您可以通过Reporting Services Web服务访问所有这些数据。您必须首先创建一个代理对象,但一旦创建完成,获取报告列表就很简单了。例如:

ReportingService2005 service = new ReportingService2005();
service.Url = ConfigurationManager.AppSettings["ReportingServicesURL"];
service.UseDefaultCredentials = true;
CatalogItem[] items = service.ListChildren(reportingServicesfolderPath, false);
List<string> reports = new List<string>(items.Length);
foreach (var item in items)
{
    reports.Add(item.Name);
}
return reports;
ReportingService2005服务=新的ReportingService2005();
service.Url=ConfigurationManager.AppSettings[“ReportingServicesURL”];
service.UseDefaultCredentials=true;
CatalogItem[]items=service.ListChildren(reportingServicesfolderPath,false);
列表报告=新列表(items.Length);
foreach(项目中的var项目)
{
报告.添加(项.名称);
}
返回报告;
我建议你仔细阅读。毕竟,报告服务是一个WebService端点,所以您可以使用SOAP WebService端点或HTTP调用。除此之外,还有图书馆,最后还有图书馆。Afaik上面的每个库都允许您按照自己的要求进行操作