Hi , guys...
I want to directly print the report which gets showed in crystalreportviewer..
i tried
rptGP.PrintToPrinter(1, true, 1, 1);
But my report has one parameter and it shows me error that it can't get the parameter value so doesn't print.
my code :
private void printgatepass(string _srno, string _visitorname, string _mobileno, string _company, string _purpose, string _department, string _contactperson, string _city, string _status, string _luggage)
{
try
{
DataTable dtGatePass = _objVreg.getDataFromQuery("SELECT a.SRNO,a.VISITOR_NAME,a.VISIT_DATE,a.MOBILE_NO,a.COMPANY,a.PURPOSE,b.DEPARTMENT_NAME as DEPARTMENT,c.EMP_NAME as CONTACT_PERSON,a.CITY,a.STATUS FROM VISITOR_REG a,DEPARTMENT b,EMP_DETAILS c WHERE SRNO='" + _srno + "' and a.CONTACT_PERSON=c.EMP_ID and a.DEPARTMENT=b.DEPARTMENT_ID");
DataSet dsGatePass = new DataSet();
dsGatePass.Tables.Add(dtGatePass.Copy());
dsGatePass.Tables["Table"].TableName = "dtGatePass";
Reports.crGatePass rptGP = new Reports.crGatePass();
DataTable _dttime = _objVreg.gettime(_srno);
paramField = new ParameterField();
paramField.Name = "Time";
ParameterDiscreteValue dsvalue = new ParameterDiscreteValue();
dsvalue.Value = _dttime.Rows[0][0].ToString();
paramField.CurrentValues.Add(dsvalue);
paramFields.Add(paramField);
rptGP.SetDataSource(dsGatePass);
CrystalReportViewer1.ParameterFieldInfo = paramFields;
CrystalReportViewer1.ReportSource = rptGP;
CrystalReportViewer1.DataBind();
CrystalReportViewer1.Visible = false;
rptGP.PrintToPrinter(1, true, 1, 1);
}catch (Exception ex)
{
Response.Write(ex.Message);
}
}
Please Guide me...Is there any other way i can set parameter value and print the report?