asp.net中程序水晶报告的正确形式是什么?和视觉基础
发布时间:2020-12-16 07:39:28 所属栏目:asp.Net 来源:网络整理
导读:Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object,ByVal e As EventArgs) Handles GridView1.SelectedIndexChanged Dim rptv As New rptVenta() Session("vseleccionada") = GridView1.SelectedRow().Cells(1).Text.ToString() Dim dao
Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object,ByVal e As EventArgs) Handles GridView1.SelectedIndexChanged Dim rptv As New rptVenta() Session("vseleccionada") = GridView1.SelectedRow().Cells(1).Text.ToString() Dim daove As New DAOVenta() Dim tabla As New DataTable() tabla = daove.ImprimirFactura(Session("vseleccionada").ToString(),Session("nombreusuario").ToString()) 'Label2.Text = tabla.Rows(0)(3).ToString() ' rptv.SetDatabaseLogon("ventas.triton","triton") ' rptv.SetDatabaseLogon("ventas.triton","triton","alumno-auc","admodos") rptv.SetDataSource(tabla) rptv.SetDatabaseLogon("ventas.triton",".","admodos") CrystalReportViewer1.ReportSource = rptv rptv.Load("..GUIrptVenta.rpt") CrystalReportViewer1.LogOnInfo().Item(0).ConnectionInfo().DatabaseName = "admodos" CrystalReportViewer1.LogOnInfo().Item(0).ConnectionInfo().IntegratedSecurity = True CrystalReportViewer1.LogOnInfo().Item(0).ConnectionInfo().Password = "triton" CrystalReportViewer1.LogOnInfo().Item(0).ConnectionInfo().ServerName = "." CrystalReportViewer1.LogOnInfo().Item(0).ConnectionInfo().UserID = "ventas.triton" ' CrystalReportSource1.ReportDocument.SetDatabaseLogon("USER","PASSWORD","SERVIDOR","Base de datos") CrystalReportViewer1.BackColor = Drawing.Color.White 'CrystalReportViewer1.DataBind() Label2.Text = Session("vseleccionada").ToString() + Session("nombreusuario").ToString() End Sub 我有一个错误 The report requested additional information needed. 那么,让它运作的正确步骤是什么?我正在使用visual basic,visual studio 2008,sql server 2008 r2编程. 解决方法
我之前收到过这个错误.我不记得究竟是如何修复的(它发生在2 – 3年前),但这里是项目的代码.我不得不将它转换为VB,但我编译并运行它,它工作正常.顺便说一句,这是在ASP.Net Web表单页面中,所以这是来自后面的代码.页面中的代码只有CrystalReportViewer.
参考文献: > CrystalDecisions.CrystalReports.Engine Imports CrystalDecisions.CrystalReports.Engine Imports CrystalDecisions.Shared Private Sub Page_Init(ByVal sender As Object,ByVal e As System.EventArgs) Handles Me.Init ConfigureCrystalReports() End Sub Private Sub ConfigureCrystalReports() Dim myConnectionInfo As ConnectionInfo = New ConnectionInfo() myConnectionInfo.DatabaseName = "ReportDatabase" myConnectionInfo.UserID = "ReportUser" myConnectionInfo.Password = "ReportPassword" myConnectionInfo.ServerName = "ReportServer" Dim ParamArrayList As ArrayList = New ArrayList() aReport = New ReportDocument() Dim reportPath As String = Server.MapPath("ReportReportName.rpt") aReport.Load(reportPath) Dim Param as ArrayList Param.Add("Value") SetCurrentValuesForParameterField(aReport,Param,"@Param1") myCrystalReportViewer.ReportSource = aReport SetDBLogonForReport(myConnectionInfo,aReport) End Sub Private Sub SetDBLogonForReport(ByVal myConnectionInfo As ConnectionInfo,ByVal myReportDocument As ReportDocument) Dim myTables As Tables = myReportDocument.Database.Tables For Each myTable As CrystalDecisions.CrystalReports.Engine.Table In myTables Dim myTableLogonInfo As TableLogOnInfo = myTable.LogOnInfo myTableLogonInfo.ConnectionInfo = myConnectionInfo myTable.ApplyLogOnInfo(myTableLogonInfo) Next End Sub Private Sub SetCurrentValuesForParameterField(ByVal myReportDocument As ReportDocument,ByVal myArrayList As ArrayList,ByVal ParameterFieldName As String) Dim currentParameterValues As ParameterValues = New ParameterValues() For Each submittedValue As Object In myArrayList Dim myParameterDiscreteValue As ParameterDiscreteValue = New ParameterDiscreteValue() myParameterDiscreteValue.Value = submittedValue.ToString() currentParameterValues.Add(myParameterDiscreteValue) Next Dim myParameterFieldDefinitions As ParameterFieldDefinitions = myReportDocument.DataDefinition.ParameterFields Dim myParameterFieldDefinition As ParameterFieldDefinition = myParameterFieldDefinitions(ParameterFieldName) myParameterFieldDefinition.ApplyCurrentValues(currentParameterValues) End Sub Private Sub SetCurrentValuesForParameterField(ByVal myReportDocument As ReportDocument,ByVal ParameterFieldName As String,ByVal SubReportName As String) Dim currentParameterValues As ParameterValues = New ParameterValues() For Each submittedValue As Object In myArrayList Dim myParameterDiscreteValue As ParameterDiscreteValue = New ParameterDiscreteValue() myParameterDiscreteValue.Value = submittedValue.ToString() currentParameterValues.Add(myParameterDiscreteValue) Next Dim myParameterFieldDefinitions As ParameterFieldDefinitions = myReportDocument.DataDefinition.ParameterFields Dim myParameterFieldDefinition As ParameterFieldDefinition = myParameterFieldDefinitions(ParameterFieldName,SubReportName) myParameterFieldDefinition.ApplyCurrentValues(currentParameterValues) End Sub (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |