C语言能开发水晶报表吗,Visual Studio 2017 集成Crystal Report为ASP.NET MVC呈现报表

795ce235b014a3fc43cc7f9929bc1ad4.png

选择语言,点击下一步,同意SAP BUSINESSOBJECTS license Agreement:

5ebb178dd3504b5f9b2c0bf26ed34752.png

选中Yes,install 64-bit runtime选项。

点击Finish按钮,继续安装。

0081ddd4018af624b6593969aef9505b.png

9d69864c779a850dc28469e86a3c324c.png

安装结束,所有安装窗口自动关闭。

打开你的项目,参考下面几个类:

1f0086313e7ba71ea6d0ad98d75875f7.png

打开Web.Config文档,需要配置Crystal Report:

be1bd562bbff313493d36a77306c9cf2.png

aa217baee6862722b4c2ac3308451797bbf.jpg

ea1effb1a330b070b9ea6f0376ce95b5be8.jpg

configSections Source Code

37155a96eda0cd26eb0eac42e159464306a.jpg

c67f64fd4e1b847b845d8db5a0253e2cdc8.jpg

assemblies Source Code

93612d4b54ea3577f1e353326a41e7989d6.jpg

14943f412317cb4e62e6c70b1bde217955c.jpg

pilation.RptBuildProvider, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>

businessObjects Source Code

接下来,为ASP.NET MVC项目添加一页网页是asp.net 的ASPX,网页名为CurrencyReport.aspx,它自带有CurrencyReport.aspx.cs如下图。

对这页网页暂时不需添加任何代码,稍后创建好.Rpt报表后再来写代码。

现在开始创建.rpt水晶报表:

6b4706bd3fef2328d27f38953e7e091c.png

报表创建完毕,此时打开上面创建的ASPX网页。

58300b78dccc3785aad38451edacc916.png

再打开.aspx.cs代码页,编写加载水晶报表程序:

08ad6c8d64fd1170cb0a48bcb22c6d26.png

ca632bdfe9143612e9c2308a86629d508a0.jpg

9602d8fa0595717450e99d50b3f6cee6371.jpg

string reportPath = Server.MapPath("CurrencyReport.rpt");

ReportDocument repDoc= newReportDocument();try{if (!File.Exists(reportPath))

{

Response.Write("指定的报表不存在。 \n");

}

repDoc.Load(reportPath);

repDoc.SetDatabaseLogon("username", "password", "127.0.0.1", "DBname", true);this.CrystalReportViewer1.ToolPanelView =CrystalDecisions.Web.ToolPanelViewType.None;this.CrystalReportViewer1.HasToggleGroupTreeButton = false;this.CrystalReportViewer1.ReportSource =repDoc;

}catch(Exception ex)

{

Response.Write(ex.Message);

}

Source Code

为程序添加水晶报表完成,我们运行程序,结果如下:

cbed91d67d1785db3cb8b152bae0a44a.png

什么内容也没有显示,按F12查看,还有crv.js加载失败和bobj is not defind错误。

经过研究与测试,我们还做少一步动作。前往电脑C驱动器:C:\inetpub\wwwroot把aspnet_client整个目录拷贝至项目的根目录之下。

0e6054b08b6e17b2a28dff190c537188.png

5a71dc4d649d6d89a89a8142730ecd50.png

再次运行程序:

08ea68c2f688550c6bdea32ab63c7447.png

数据还是没有显示,水晶报表需要输入连接数据安全信息。

解决这个问题,需要打开加载水晶报表的程序,添加一个方法SetDatabaseLogon,并赋其参数

c413b245b48e21562c4af391c02238e8.png

再次刷新网页,上面的对话框消失,报表已经正常显示了》

8444159fa6db5a06028d3d6c88b474eb.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值