有没有办法在ASP.Net网页上显示和显示SQL Server实例,配置和活动的服务器仪表板报告?我知道SQL Server 2008 R2具有生成标准报告的内置功能,有关如何在ASP.Net/C#中为最终用户视图复制和引入该报告的任何想法?非常感谢您的帮助。
答案 0 :(得分:2)
这些是使用外部URL链接在MS SQL Server 2008 R2中配置和显示服务器仪表板性能的步骤:
在MS SQL Server 2008 R2中显示性能仪表板报告:
1 - 从以下位置下载Microsoft SQL Server 2012性能仪表板报告: http://www.microsoft.com/en-us/download/details.aspx?id=29063 通过执行setup.sql
从SSMS运行脚本2 - 下载完成后,您可以转到SQL Server Management Studio并连接到本地服务器来运行报告。在对象资源管理器下右键单击(本地)(SQL Server)>报告>自定义报告...找到C:\ Program Files(x86)\ Microsoft SQL Server \ 110 \ Tools \ Performance Dashboard \ performance_dashboard_main.rdl和Run。你应该得到报告。
使用外部网址链接显示效果信息中心报告:
1 - 在MS SQL Server 2008 R2下,转到配置工具> Reporting Services配置管理器并连接到本地服务器或单击以查找它(启动报表服务器)。
规范提示:
服务帐户 =使用内置帐户:网络服务(默认)
网络服务网址 =保留所有配置的默认值
数据库 = [当前报表服务器数据库] /点击 - 更改数据库
动作: 选择现有的报表服务器db
数据库服务器:
服务器名称=与您连接的本地服务器名称相同
身份验证类型=当前用户集成安全性(测试连接)
数据库:
SQL Server实例=与您连接的本地服务器名称相同
报表服务器db = ReportServer
报表服务器模式=本机
凭据/登录密码=保留默认/ AdministratorAccount以进行访问
外部链接。 (推荐)
验证类型=服务凭证
[当前报表服务器数据库凭据] /保留默认值
报告管理员网址 = http://<ComputerName>:80/<YourReportName>
电子邮件设置 =可选
执行帐户 =默认(空白)
加密密钥 =默认
横向扩展部署 =默认
2 - 点击报告管理器网址的主页链接并上传: C:\ Program Files(x86)\ Microsoft SQL Server \ 110 \ Tools \ Performance Dashboard \ performance_dashboard_main.rdl
3 - 上传后,单击它并在数据源下选中自定义数据源并检查Windows集成安全性&gt;测试连接。现在,它应该工作。
注意: 如果您使用的是Chrome或Safari,则该页面不会显示任何内容;所以,你必须找到: C:\ Program Files \ Microsoft SQL Server \ MSRS10_50.MSSQLSERVER \ Reporting Services \ ReportManager \ js \ ReportingServices.js ...并且,在文件中添加以下脚本:
function pageLoad() {
var element = document.getElementById("ctl31_ctl09");
if (element) {
element.style.overflow = "visible"; }
}
var jQueryScriptOutputted = false;
function initJQuery() {
//if the jQuery object isn't available
if (typeof (jQuery) == 'undefined') {
if (!jQueryScriptOutputted) {
//only output the script once..
jQueryScriptOutputted = true;
//output the script
document.write("<scr" + "ipt type=\"text/javascript\" src=\"../js/jquery- 1.6.2.min.js\"></scr" + "ipt>");
}
setTimeout("initJQuery()", 50);
} else {
$(function () {
// Bug-fix on Chrome and Safari etc (webkit)
if ($.browser.webkit) {
// Start timer to make sure overflow is set to visible
setInterval(function () {
var div = $('table[id*=_fixedTable] > tbody > tr:last > td:last > div')
div.css('overflow', 'visible');
}, 1000);
}
});
}
}
initJQuery();
I hope it helps someone!