惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
S
Schneier on Security
C
Cyber Attacks, Cyber Crime and Cyber Security
N
News and Events Feed by Topic
TaoSecurity Blog
TaoSecurity Blog
T
Threat Research - Cisco Blogs
博客园 - 三生石上(FineUI控件)
大猫的无限游戏
大猫的无限游戏
The Last Watchdog
The Last Watchdog
Latest news
Latest news
AI
AI
Webroot Blog
Webroot Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
The Hacker News
The Hacker News
Google DeepMind News
Google DeepMind News
S
Securelist
IT之家
IT之家
雷峰网
雷峰网
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
P
Proofpoint News Feed
Last Week in AI
Last Week in AI
博客园 - Franky
美团技术团队
Cyberwarzone
Cyberwarzone
C
CERT Recently Published Vulnerability Notes
Security Archives - TechRepublic
Security Archives - TechRepublic
Security Latest
Security Latest
T
Tailwind CSS Blog
S
Security Affairs
S
Security @ Cisco Blogs
H
Heimdal Security Blog
腾讯CDC
N
News | PayPal Newsroom
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
博客园 - 司徒正美
博客园_首页
Jina AI
Jina AI
M
MIT News - Artificial intelligence
Hacker News - Newest:
Hacker News - Newest: "LLM"
B
Blog
F
Full Disclosure
www.infosecurity-magazine.com
www.infosecurity-magazine.com
T
The Blog of Author Tim Ferriss
Schneier on Security
Schneier on Security
N
News and Events Feed by Topic
NISL@THU
NISL@THU
C
Cisco Blogs
T
Troy Hunt's Blog
O
OpenAI News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - karoc

《重构-改善既有代码的设计》读书笔记 扩展GridView,增加单选按钮列 任务开始时间和完成时间 最大长度验证控件:MaxLengthValidator 又是关于AjaxControlToolkit的ModalPopup的问题 有个总结 使用svn的小插曲 开发小经验总结(不断更新) 今天发现一个VS2008中文版和英文版的差别 解决DocType引起AjaxTookit的ModulPopup显示异常问题的方法 用VSTO开发Project插件心得 自定义MemberShipProvider和PersonalizationProvider使用WebParts实现个性化页面 在线修改KeyValue配置节 瞎搞八搞,另类PageBase 改造Duwamish中的Configuration 直接用Response输出可以加批注的Excel C#控制Windows Messenger和Windows Live Messenger窗口发送消息 一个读取扩展名为xml的资源文件的方法 用C#+WMI实现获取w3wp进程对应的应用程序池
Reporting Services 2005 常见问题解决方法(不断更新)
karoc · 2009-02-20 · via 博客园 - karoc
  • 在新窗口打开链接
    默认跳转到Url是在当前窗口打开,如果要在新窗口打开,使用以下格式输入:
    ="javascript:void(window.open('" & "url&para1=" & Fields!field1.Value & "','_blank'))"
  • 动态显示嵌入图片
    首先拖一个图像控件到位置,然后设置控件的Source属性为Embedded,然后设置Value表达式,不同情况使用不同的嵌入图像名称,形如:
    =IIF (Fields!DelayEntityPercent.Value < 10, "prj_green", IIF(Fields!DelayEntityPercent.Value >= 10 And Fields!DelayEntityPercent.Value < 30, "prj_yellow", "prj_red"))
  • 图片在单元格居中
    设置Padding的Left到合适的大小
  • 按记录数分页
    为表格创建组,并设置在结尾处分页,分组表达式为:Int((RowNumber(Nothing)-1)/10) ,其中10表示没10条记录分一页
  • 嵌入应用应用方案比较

    嵌入方式

    是否需要ReportServer

    是否包含工具栏

    是否包含参数输入区域

    部署

    安全性

    在何处生成报表

    总评

    iframe,设置src为报表Url

    是,依据报表设定,可显示完整工具栏

    是,依据报表设定决定显示内容

    Report Server和应用独立部署

    当前用户需要有权限访问报表

    Report Server

    基本完整利用Reporting Services各种功能,但需要处理权限问题,另外iframe高度设置不够,会有滚动条

    Iframe,设置src为某个调用Reporting Service API动态生成html的地址

    Report Server和应用独立部署

    可以模拟用户访问报表

    Report Server

    可解决权限问题,但是没有了Reporting Services的很多优点,还增加了Render成本

    调用API获得HTML片段

    Report Server和应用独立部署

    可以模拟用户访问报表

    Report Server

    基本同上,只是省掉了iframe

    ReportViewer+ReportServer(远程方式)

    是,需要一个授权的副本

    是,依据报表或Report Viewer设定,可显示完整工具栏

    是,依据报表或Report Viewer设定

    Report Server和应用独立部署,并且在应用的Web.config中添加Report Viewer配置

    当前应用进程需要有权限访问报表

    Report Server

    基本完整利用Reporting Services功能,但是需要解决权限问题并考虑授权副本的问题,通过实现一个接口来获得报表访问权限

    RerportViewer+RDLC(本地方式)

    是,但不完整,缺少一些导出格式及打印按钮

    部署应用及报表文件,并且在应用的Web.config中添加Report Viewer配置

    由应用控制

    当前应用

    不能充分利用Reporting Services功能,应用服务器承担了生成报表的计算

  • 除以零错误号,因为IIF和Switch等函数每个表达式都要计算,所以无法避免错误,因此使用自定义函数解决(调用时使用=Code.SafeDivide(a,b)):

    Public Function SafeDivide(ByVal top, ByVal bottom) As Decimal
            If IsNothing(top) Or IsNothing(bottom) Then
                Return 0
            End If

            If bottom = 0 Or top = 0 Then
                Return 0
            End If

            Return top / bottom
        End Function

  • 隐藏ReportViewer控件的一些导出格式
    ReportViewer控件有很多导出格式,下面的代码可以只保留导出Excel:

    隐藏导出格式

  • 在设计器里预览时,点击“查看报表",有数据缓存时,点击工具条的刷新按钮可以达到目的

posted @ 2009-02-20 12:30  karoc  阅读(3845)  评论()    收藏  举报