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

简介: 原文 http://www.cnblogs.com/insus/p/3281114.html 上次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网页上。

原文 http://www.cnblogs.com/insus/p/3281114.html

上次Insus.NET有简单写了一篇文章《Visual Studio 2012使用水晶报表Crystal Reporthttp://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);

 

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

目录
相关文章
|
Go 分布式数据库 计算机视觉
.Net脱壳工具 de4dot参数说明/简易教程
原文:.Net脱壳工具 de4dot参数说明/简易教程 de4dot  /? 帮助原文  使用方法 de4dot "d:\xx.exe" -p xc -p xc 指定壳类型 , 这里是xc,表示Xenocode壳.
4013 0
|
2月前
|
机器学习/深度学习 存储 编解码
多任务学习新篇章 | EMA-Net利用Cross-Task Affinity实现参数高效的高性能预测
多任务学习新篇章 | EMA-Net利用Cross-Task Affinity实现参数高效的高性能预测
42 0
|
4月前
|
程序员 数据库
VB.NET—Bug调试(参数话查询、附近语法错误)
VB.NET—Bug调试(参数话查询、附近语法错误)
25 0
|
6月前
|
前端开发 JavaScript
.net core 前端传递参数有值 后端接收到的数据却是null
1、问题分析 在做接口测试时,偶然出现了前端输出有值,但是后端断点调试时却出现接收参数总是为null的情况 2、解决办法 前端打印log,看前端的每一个传值的数据类型,与后端请求参数类进行认真的一一比对 小技巧: ① 直接打印调用接口的传参值的数据类型,例如 console.log(type of this.form.name) --string console.log(type of this.form.age) --number 打印的数据类型与后端接口的参数类比对,查出不对应的类型 ② 关于非必填的值,默认传值可能出现空字符串(' ')、NaN值(Not a Number
99 0
|
9月前
|
前端开发
解决.NET Core Ajax请求后台传送参数过大请求失败问题
解决.NET Core Ajax请求后台传送参数过大请求失败问题
|
前端开发
.NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
.NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
372 0
.NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
.NET中将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),并使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA
.NET中将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),并使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA
230 0
.Net ADO拼接带参数的SQL语句
.Net ADO拼接带参数的SQL语句
121 0
|
开发框架 前端开发 JavaScript
ASP.NET 母版页,内容页之间如何传参数
绪论:本文介绍如何使用.net 母版页(.master)和内容页(.aspx)相互传参数
73 0
ASP.NET 母版页,内容页之间如何传参数
|
开发框架 .NET
面试官:如何在ASP.NET Core里给Action传递参数
在ASP.NET Core 中给Action传参是在面试和实际开发中必定会遇到和使用到的,那么下面我们就来说说如何给Action传参。常用的传参方式有四种: 1. url 方式; 2. querystring 方式; 3. request header 方式; 4. request body 方式。
237 0