CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

水晶报表传值的问题

楼主alex198342(努力)2003-11-03 22:35:28 在 .NET技术 / C# 提问

我在form里记录集调用了select   *   from   zichan   where   CunFangDiDian='"   &   Me.Combo1.Text   &   "'"的数据  
   
  但是到了水晶报表里面怎么样或取在form那边选择的'"   &   Me.Combo1.Text   &   "'里的内容呢,请高手指教... 问题点数:100、回复次数:6Top

1 楼haoliqi(学习男孩)回复于 2003-11-03 22:40:57 得分 0

建个xsd数据集,把DataSet推给报表Top

2 楼shanmin(shanmin)回复于 2003-11-03 22:44:27 得分 100

//向报表传递参数  
  ParameterFields   ParamFields   =   new   ParameterFields();  
  ParameterField   ParamField1   =   new   ParameterField();    
  ParameterValues   ParamValues1   =   new   ParameterValues();    
  ParameterDiscreteValue   ParamValue1   =   new   ParameterDiscreteValue();  
   
  ParamValue1.Value="测试公司";  
  ParamValues1.Add(ParamValue1);    
  ParamField1.ParameterFieldName="LicensedTo";   //   参数名    
  ParamField1.CurrentValues=ParamValues1;    
  ParamFields.Add(ParamField1);    
   
  this.crystalReportViewer.ParameterFieldInfo   =   ParamFields;Top

3 楼alex198342(努力)回复于 2003-11-03 22:58:06 得分 0

各位老大,我是在VB里做的,可以用VB的语法写个例子看看吗?Top

4 楼alex198342(努力)回复于 2003-11-03 23:48:56 得分 0

高手帮帮忙吧,很急的...Top

5 楼shanmin(shanmin)回复于 2003-11-03 23:58:27 得分 0

我用c#写的,和vb基本一样压。Top

6 楼haibodotnet(海波.NET)回复于 2003-11-04 09:54:47 得分 0

水晶报表参数编程示例代码(作者:海波.NET,更新:2003-10-21-1)  
   
          Imports   CrystalDecisions.Shared  
          Imports   CrystalDecisions.CrystalReports.Engine  
   
          Private   Const   RPT_NAME   As   String   =   "CustomerOrders.rpt"  
          Private   Const   PARAMETER_FIELD_NAME   As   String   =   "CustomerID"  
   
          Private   Sub   Page_Load(ByVal   sender   As   System.Object,   ByVal   e   As   System.EventArgs)   Handles   MyBase.Load  
                  '在此处放置初始化页的用户代码  
   
                  '   设置报表源  
                  report   =   New   ReportDocument()  
                  report.Load(GetReportPath(RPT_NAME))  
   
                  '   设置参数  
                  crvOrders.ParameterFieldInfo   =   GetParameterInfo(CType(Session("list"),   ListItemCollection))  
   
                  crvOrders.ReportSource   =   report  
   
                  '   显示报表  
                  crvOrders.DataBind()  
   
          End   Sub  
           
          '----------------------------------------------------------------  
          '   Function   GetParameterInfo:  
          '       从复选框列表获取参数字段信息  
          '   Returns:  
          '       参数字段  
          '   Parameters:  
          '       [in]     list:   复选框列表  
          '   Throws:  
          '        
          '   PreConditions:  
          '        
          '----------------------------------------------------------------  
          Private   Function   GetParameterInfo(ByVal   list   As   ListItemCollection)   As   ParameterFields  
   
                  Dim   item   As   ListItem  
                  Dim   isEmpty   As   Boolean   =   True  
                  Dim   itemCount   As   Integer   =   0  
   
                  '   声明将参数传递给查看器控件所需的变量。  
                  Dim   paramFields   As   New   ParameterFields()  
                  Dim   paramField   As   New   ParameterField()  
                  Dim   discreteVal   As   New   ParameterDiscreteValue()  
   
                  '   参数是具有多个值的离散参数。  
   
                  '   设置参数字段的名称,它必须和报表中的参数相符。  
                  paramField.ParameterFieldName   =   PARAMETER_FIELD_NAME  
   
                  For   Each   item   In   list  
                          If   item.Selected   Then  
                                  isEmpty   =   False  
                                  itemCount   +=   1  
   
                                  '   设置一个离散值并将其传递给该参数  
                                  discreteVal.Value   =   item.Value  
                                  paramField.CurrentValues.Add(discreteVal)  
                                  '   新建一个离散值  
                                  discreteVal   =   New   ParameterDiscreteValue()  
                          End   If  
                  Next  
   
                  If   isEmpty   Then  
                          For   Each   item   In   list  
                                  '   设置一个离散值并将其传递给该参数  
                                  discreteVal.Value   =   item.Value  
                                  paramField.CurrentValues.Add(discreteVal)  
                                  '   新建一个离散值  
                                  discreteVal   =   New   ParameterDiscreteValue()  
                          Next  
                  End   If  
   
                  '   将该参数添加到参数字段集合。  
                  paramFields.Add(paramField)  
                  GetParameterInfo   =   paramFields  
   
          End   FunctionTop

相关问题

  • 一个水晶报表传值的问题
  • 求教代码中将值传给水晶报表的问题
  • 如何传值给水晶报表的文本text?
  • 如何向水晶报表如的Parameter Field传值
  • 请问如何向水晶报表传值?如何在水晶报表中显示传过来的值?`````````````(winform -- 各位支持下新人)
  • 急:请教高手怎么给水晶报表的参数字段传值?
  • 水晶报表字段传值问题和Excel打印模板问题
  • 水晶报表如何获取VB传递的值(用户交互式)
  • 水晶报表传参的问题
  • 如何将参数值传递到水晶报表的参数字段里显示?

关键词

  • 水晶报表
  • paramfields
  • paramvalues
  • parameterfield
  • 参数

得分解答快速导航

  • 帖主:alex198342
  • shanmin

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo