首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

高手帮忙,水晶报表显示在网页上的内容不更新,TKS

2012-01-30 
高手帮忙,水晶报表显示在网页上的内容不更新,在线等,TKS!我新建个网站,加入一个CrystalReportViewer1,然后

高手帮忙,水晶报表显示在网页上的内容不更新,在线等,TKS!
我新建个网站,加入一个CrystalReportViewer1,然后填加下面代码,其它的什么也不做,但运行后只显示做水晶报表时的数据记录在网页上,即使更改参数的值再运行,也是这样,即参数没有传进去。

请问高手为什么啊?


下面的代码是用来打开c:\a\IndentedCurrentBillOfMaterial.rpt报表,加入了参数和登录信息


Imports   CrystalDecisions.CrystalReports.Engine
Imports   CrystalDecisions.Shared


Partial   Class   _Default
        Inherits   System.Web.UI.Page

        Protected   Sub   Page_Load(ByVal   sender   As   Object,   ByVal   e   As   System.EventArgs)   Handles   Me.Load
                Dim   logOnInfo   As   New   TableLogOnInfo
                Dim   oRpt   As   New   ReportDocument
                Dim   i   As   Int16
                Dim   tmp   As   DBNull

                oRpt.Load( "c:\a\IndentedCurrentBillOfMaterial.rpt ")
                For   i   =   0   To   oRpt.Database.Tables.Count   -   1
                        logOnInfo.ConnectionInfo.UserID   =   "sa "
                        logOnInfo.ConnectionInfo.ServerName   =   "it-zmyang "
                        logOnInfo.ConnectionInfo.DatabaseName   =   "TESTDB1_APP "
                        logOnInfo.ConnectionInfo.Password   =   "forex "
                        oRpt.Database.Tables(0).ApplyLogOnInfo(logOnInfo)
                Next
                'CrystalReportViewer1.ReportSource   =   oRpt

                ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '
                Dim   paramFields   As   New   ParameterFields
                Dim   paramField   As   New   ParameterField
                Dim   discreteVal   As   New   ParameterDiscreteValue
                Dim   rangeVal   As   New   ParameterRangeValue

                '   第一个参数是具有多个值的离散参数。

                '   设置参数字段的名称,它必须
                '和报表中的参数相符。
                paramField.ParameterFieldName   =   "@StartingItem "

                '   设置第一个离散值并将其传递给该参数
                discreteVal.Value   =   "FG-AL03AU0100-B "


                paramField.CurrentValues.Add(discreteVal)

                '   设置第二个离散值并将其传递给该参数。
                '   discreteVal   变量被设置为新值,这样,以前的设置
                '就不会被覆盖。
                'discreteVal   =   New   ParameterDiscreteValue
                'discreteVal.Value   =   "FG-AL01AU0100 "
                'paramField.CurrentValues.Add(discreteVal)

                '   将该参数添加到参数字段集合。
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@EndingItem "
                discreteVal.Value   =   "FG-AL03AU0100-B "
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@StartingProCode "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@EndingProCode "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@MaterialType "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@Source "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField


                paramField.ParameterFieldName   =   "@Stocked "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@ABCCode "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@EffectiveDate "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@EffectiveDateOffset "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@PageJob "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@PrintLevelZero "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@DisplayRefer "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField


                paramField.ParameterFieldName   =   "@DisplayHeader "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@PrintAlternateMaterials "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@FgTypeQty "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@FgQty "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@StartVendorItem "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)

                paramField   =   New   ParameterField
                paramField.ParameterFieldName   =   "@EndVendorItem "
                discreteVal.Value   =   tmp
                paramField.CurrentValues.Add(discreteVal)
                paramFields.Add(paramField)


                '   将参数字段集合放入查看器控件。
                CrystalReportViewer1.ParameterFieldInfo   =   paramFields
                CrystalReportViewer1.ReportSource   =   oRpt

        End   Sub
End   Class


[解决办法]
VB.NET偶不懂,只能给楼主友情帮顶了~
同时向大家学习。

热点排行