从ASP.NET传递参数给水晶报表

上次Insus.NET有简单写了一篇文章《Visual Studio 2012使用水晶报表Crystal Report》 http://www.cnblogs.com/insus/archive/2013/05/22/3090786.html
此篇只是简单介绍了Visual Studio 2012可以方便是以快捷安装Crystal Report了,Crystal Report的创建与显示于ASP.NET网页上。

今天Insus.NET 想跟大家分享的是从ASP.NET网页传递参数给水晶报表。

首先创建两个存储过程,第一个是参数,Insus.NET将把这个参数做成一个下拉式菜单(DropDownList),供用户选择。

第二个存储过程,是供水晶报使用:

然后去asp.net程序,创建两个对象(class类):

准备另外一个类:

准备完毕,我们开始创建一个水晶报表。创建过程中,为了减少篇幅而且生动形象,Insus.NET把过程做成一个实时操作。让你慢慢看来。

我们在网站上创建一个网页asp.net,用来显示报表。不过我们的重点是从asp.net传递参数给水晶报表。因此先在网页放一个DropDownList,并绑定数据给它。

去.aspx.cs为DropDownList写绑定程序:

上图中#13和#23行代码,可以参考:http://www.cnblogs.com/insus/archive/2013/01/28/2880618.html

现在我们开始在网页上显示水晶报了,添加一个铵钮(#15行html markup)。把光标定在#16行位置,去工具栏,双击

将产生下图#3行和#16行html markup。

接下来,我们去写铵钮的事件:

引用命名空间:

using Insus.NET;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;

第#34至#39行为本篇博文重点,参数设置:

 ParameterValues prmV;
 ParameterDiscreteValue pdv = new ParameterDiscreteValue();
 prmV = rptDoc.DataDefinition.ParameterFields["@FruitKind_nbr"].CurrentValues;
 pdv.Value = this.DropDownList1.SelectedItem.Value;
 prmV.Add(pdv);
 rptDoc.DataDefinition.ParameterFields["@FruitKind_nbr"].ApplyCurrentValues(prmV);

最后是网页实时操作,在浏览时,遇上一些小问题,及解决方法,还是显示的一些格式情况,均一一展现。

从ASP.NET传递参数给水晶报表

时间: 2024-08-07 04:45:38

从ASP.NET传递参数给水晶报表的相关文章

水晶报表制作实例

水晶报表貌似是比较"古老"的报表技术了,它是由SAP公司开发的报表产品,通过安装开发包可以在VS中集成Crystall Reports设计器.通过可视化的设计和操作,可以完成报表的制作.正好最近有空帮朋友一个小忙,他也提到了使用水晶报表技术完成报表的批量打印和导出.N年不用水晶报表了,正好练练手. 开发工具我们选用目前主流的VS2010旗舰版.VS2010默认是不集成水晶报表的,需要安装开发包CRforVS_13_0.exe.这里我提供一个下载地址,方便大家下载安装. http://y

ASP.NET MVC 5使用CrystalReport(水晶报表)

原文:ASP.NET MVC 5使用CrystalReport(水晶报表)   http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_13_0_15.exe (290M) 这个应该是开发包 http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_redist_install_64bit_13_0_15.zip (78.5M) 看起来像部署包   安装完成之后, 

ASP.NET MVC 页面调整并传递参数

转自:http://blog.csdn.net/zhensoft163/article/details/7174661 使用过ASP.NET MVC的人都知道在MVC中页面后台中常用的页面跳转方法有几种,如:return View().return RedirectToAction() 一般情况下我们返回的都是本页面,所以使用return View()就可以解决问题了,但是很多时候我们也会遇到返回的页面不是本页面的,那么就会用到后面两种,但是如果我们在页面返回的时候也要返回操作的结果的时候,我们

Asp.net WebService 传递参数长度限制

在写Web Service 接口的时候遇到了调用传递参数自动截过长的参数截取,参数类型设置的是String,传递的时候是一长串xml中,但是发项在文本里面自动截取了 找了好多方法都没有成功,最后看之前项目写的接口,把前面几行代码都给注释了就好了. /// <summary> /// MobileApproval 的摘要说明 /// </summary> //[WebService(Namespace = "http://tempuri.org/")] //[We

ASP.NET 页面间传递参数的方法

这个新特性意味着ASP.NET2.0开发人员目前有三种可供选择的技术来将数据从一个web页面传送到另外一个页面.这三种方法是:响应重定向,服务端传输和新的跨网页提交特性.我们可以已经熟悉前两种技术了,因此,我们只是简要地复习一下它们,然后我们会将主要精力放到学习如何使用跨网页提交特性,以及阐述一下这种方法和响应重定向以及服务传输方式有什么不同. 一.响应重定向方法 响应重定向方法是目前为止将一个网页重定向到另一个网页的最简单的方法的最简单的方法.当Web服务器接到一个重定向请求后,它会将一个响应

Asp.Net中使用水晶报表

Asp.Net中使用水晶报表(上) 在我们对VS.Net中的水晶报表(Crystal Reports)进行研究之前,我和我朋友对如何将这个复杂的东东加入我们的Web应用有着非常的好奇心.一周以后,在阅读了大量的“HOWTO”文档之后,我们成功地将一些简单的报告加入到了我们的Asp.net程序中,并得到了一些小决窍. 这篇文章教你如何在.Net Web应用中使用水晶报表,也可以让你在学习过程中少走一些弯路.为了得到最好的效果,读者最好需要有一些基础的Asp.Net访问数据库的知识以及使用VS.Ne

ASP.NET jquery ajax传递参数

第一种:GET传递 前台 ajax   GET 传递 :即在请求的地址后面加上参数,URL地址长度有显示,安全性低 后台接收:Request.QueryString[“参数名字”]! 例如: function LoadBar(id) { var project = id; var month = $("#txtMonth").val(); $.ajax({ type: "GET", async: false, url: 'GetProjectScore.aspx?p

asp传递参数的几种方式

把下列代码分别加入a.asp和b.asp的<body></body>中,点提交,就可以将a.asp文本框的内容传给b.asp并显示出来 a.ASP <form action="B.asp" method="get"> <input name="ABC" type="text" /> <input name="" type="button&quo

水晶报表--弹框(登录数据库和参数字段)

最近项目中使用到了水晶报表,公司也没几个会用,自己就研究了一番. 刚开始用的时候,问题真的是接踵而至,解决一个又来一个.有些问题,百度出来的答案也满足不了我的需求.所以只有自己慢慢研究了. 这篇主要是想说一下水晶报表打印时弹出“登陆数据库”及“参数字段”的问题. 我用的是VS,然后用web窗体对报表进行引用. <CR:CrystalReportViewer ID="CrystalReportViewer1" runat="server" AutoDataBin