Click here to Skip to main content
15,867,950 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
I had tried the following code but its not working.
what should i have to chnges in the code?

code on the form1 that have crystalreportviewer1.
CrystalReportViewer1.Refresh()
Dim paramfields As ParameterFields = Me.CrystalReportViewer1.ParameterFieldInfo
Dim param As New ParameterField
param.Name = "result"
Dim param_value As New ParameterDiscreteValue
param_value.Value = LoginForm.UsernameTextBox.Text
param.CurrentValues.Add(param_value)
paramfields.Add(param)
CrystalReportViewer1.Refresh()
Posted

Looks pretty close... This is how I do it (VS2010).

VB
Dim crDoc As CrystalDecisions.CrystalReports.Engine.ReportClass
Dim pvParamValue As New CrystalDecisions.Shared.ParameterValues
Dim pdvParamDiscreteValue As New CrystalDecisions.Shared.ParameterDiscreteValue

crDoc = new CRYSTALREPORTNAME

pdvParamDiscreteValue.Value = FIELDNAME.tostring
pvParamValue.Add(pdvParamDiscreteValue)
crDoc.DataDefinition.ParameterFields("@P_PARAMETERNAME").ApplyCurrentValues(pvParamValue)
 
Share this answer
 
v2
Comments
sandhyagor 6-May-13 2:11am    
it shows error in last line.
error-Object reference not set to an instance of an object.
_Damian S_ 6-May-13 2:15am    
Oops... missed a line... have added above. Need to set the crDoc to your Crystal Report that you are wanting to open.

You will also need to actually open the Crystal Report at some point, but I've not included that as it isn't relevant to adding parameters.
sandhyagor 6-May-13 2:24am    
still nt working.. it displays originally created report no change even sending parametere to it.. i had make a report namely result1.rpt and retived it in the crystalreportviewer in vb.net.. so is this code is written into the parent form or in the form that have crystalreportviewer??
Try this...........



Private Sub btn_save_print_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_save_print.Click

Dim obj As New Letter_print


obj.Code=txt_code.text
obj.doc_nm = txt_doc_name.Text
obj.address = txt_address.Text

obj.ShowDialog(Me)

End Sub

Public Class _Print
Public CodeAs String = ""
Public doc_nm As String = ""
Public address As String = ""


Private Sub Letter_Print_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim k As New Letter_report

k.SetParameterValue("code1,code

k.SetParameterValue("doc_nm1", doc_nm)
k.SetParameterValue("address1", address)


CrystalReportViewer1.ReportSource = k

End Sub
End Class
 
Share this answer
 
VB.NET
CrystalReportViewer1.Refresh()
     Dim rpt As New ReportDocument
     rpt.FileName = "c:\Users\sandy\BCA\CBT\result2.rpt"
     Dim paramDV As New ParameterDiscreteValue()
     paramDV.Value = LoginForm.UsernameTextBox.Text
     rpt.Refresh()
     Dim paramfields As ParameterFields = Me.CrystalReportViewer1.ParameterFieldInfo
     Dim param As New ParameterField
     Dim params As New ParameterFields
     param.Name = "result"
     Dim param_value As New ParameterDiscreteValue
     param_value.Value = LoginForm.UsernameTextBox.Text
     param.CurrentValues.Clear()
     param.CurrentValues.Add(param_value)
     params.Add(param)
     CrystalReportViewer1.ParameterFieldInfo = params
     rpt.Refresh()
     CrystalReportViewer1.ReportSource = rpt
     CrystalReportViewer1.ReuseParameterValuesOnRefresh = True
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900