Непосредственно печать отчета без его отображения в Crystal report viewer
Привет, ребята...
Я хочу непосредственно распечатать отчет, который будет показан в crystalreportviewer..
я пытался
rptGP.PrintToPrinter(1, true, 1, 1);
Но мой отчет имеет один параметр, и он показывает мне ошибку, что он не может получить значение параметра, поэтому не печатает.
мой код :
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); } }
Пожалуйста, Веди меня...Есть ли другой способ установить значение параметра и распечатать отчет?