SQL 2005自己提供的报表查看web part功能比较简单,不太适合中国人对报表界面的复杂要求。
这个WebPart的主要功能是提供新的参数录入方式,如日期型改用日历来选择。
第一步:建立一个新的web part
新建一个的dll工程BARreportWebPart
将class1.cs重命名为BARreportWebPart。
增加对System.web的引用,并将类BARreportWebPart从webpart派生。重写Render方法,控制自己的输出。
using System;
using System.Collections.Generic;
using System.Text;
using System.Web.UI;
using System.Web.UI.WebControls.WebParts;
namespace BARreportWebPart
{
public class BARreportWebPart : WebPart
{
protected override void Render(System.Web.UI.HtmlTextWriter writer)
{
writer.Write("This web part is a report view for SQL 2005 reporting services :)");
}
}
}
web part需要强名来注册到GAC中,用命令行 sn -k BARreportWebPart.snk 生成强名文件,在工程属性的签名页指定使用该文件作强名。
web part注册还需要两个注册信息文件,后缀为webpart和dwp。
新建一个xml文件,重命名为BARreportWebPart.webpart,内容为
<?xml version="1.0" encoding="utf-8"?>
<webParts>
<webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
<metaData>
<type name="BARreportWebPart.BARreportWebPart, BARreportWebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6b51eec99acee804" />
<importErrorMessage>Cannot import this Web Part.</importErrorMessage>
</metaData>
<data>
<properties>
<property name="Title" type="string">BARreportWebPart</property>
</properties>
</data>
</webPart>
</webParts>
新建一个xml,重命名为BARreportWebPart.dwp,内容为
<?xml version="1.0" encoding="utf-8"?>
<WebPart xmlns="http://schemas.microsoft.com/WebPart/v2" >
<Title>BAR reports Web Part</Title>
<Description>The BAR report viewer web part</Description>
<Assembly>BARreportWebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6b51eec99acee804</Assembly>
<TypeName>BARreportWebPart.BARreportWebPart</TypeName>
<!-- Specify initial values for any additional base class or custom properties here. -->
</WebPart>
到现在,一个没有功能的web part已经完成了。下一步,我们需要把它配置到sharepoint站点上。
第二步 配置sharepoint,注册这个web part
编译工程,将文件拷贝到sharepoint服务器的GAC中。
修改sharepoint根站点的web.config(C:/Inetpub/wwwroot/wss/VirtualDirectories/80/web.config),将BARreportWebPart的dll添加到SafeControls中
<SafeControls>
.......
<SafeControl Assembly="BARreportWebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6b51eec99acee804" Namespace="BARreportWebPart" TypeName="*" Safe="True" />
</SafeControls>
打开sharepoint站点,进入根站点的Site Settings,在Galleries中选择web part进入Web Part Gallery。
选择upload document,上传BARreportWebPart.webpart文件。一个新的web part被注册了。
需要重新启动IIS让这些设置生效