public FrmImprime(ReporteParam ReporteActivo) { InitializeComponent(); //this.Reporte = Rpt; //this.Pref = V_Variable; Reporte = ReporteActivo; Pordonde = 1; CargaRpt(); }
public FrmImprime(ReporteParam ReporteActivo, IWin32Window Form) { InitializeComponent(); //this.Reporte = Rpt; //this.Pref = V_Variable; Reporte = ReporteActivo; Formulario = Form; Pordonde = 2; CargaRpt(); }
public FrmImprime(ReporteParam ReporteActivo, string NombreImpresora, IWin32Window Form) { InitializeComponent(); //this.Reporte = Rpt; //this.Pref = V_Variable; Reporte = ReporteActivo; if (NombreImpresora != null) { Impresora = new PrinterSettings(); Impresora.PrinterName = NombreImpresora; // Opciones = new PrintOptions(); // Opciones.PrinterName = NombreImpresora; Pagina = new PageSettings(); Pagina.PrinterSettings = Impresora; Formulario = Form; Pordonde = 2; } CargaRpt(); }
private void CargaRpt() { reporte = new ReportDocument(); try { // ReportDocument reporte = new ReportDocument(); //reporte.Close(); //reporte. string RutaRpt = Reporte.Ruta_Reporte;// "C:/Reportes/" + Reporte; reporte.Load(RutaRpt); ConnectionInfo CnnReport = new ConnectionInfo(); Tables MyTablas = reporte.Database.Tables; CnnReport.ServerName = Reporte.Base_de_Datos; CnnReport.UserID = Reporte.User_de_Datos; CnnReport.Password = Reporte.Pass_de_Datos; foreach (CrystalDecisions.CrystalReports.Engine.Table MyTabla in MyTablas) { TableLogOnInfo Tbl_LoginInfo = MyTabla.LogOnInfo; Tbl_LoginInfo.ConnectionInfo = CnnReport; MyTabla.ApplyLogOnInfo(Tbl_LoginInfo); } ParameterDiscreteValue NewParamVal = new CrystalDecisions.Shared.ParameterDiscreteValue(); ParameterValues CurrParamVal; //Busca automaticamente tdos los parametros de entrada includo los parametros de los subreportes for (int intI = 0; (intI <= reporte.DataDefinition.ParameterFields.Count - 1); intI++) { if (reporte.ParameterFields[intI].ReportParameterType != ParameterType.ReportParameter) { string nombre = reporte.DataDefinition.ParameterFields[intI].Name; string X = reporte.DataDefinition.ParameterFields[intI].ValueType.ToString(); NewParamVal.Value = Reporte.Rpt_RetornaValorParam(nombre); NewParamVal.Description = nombre; CurrParamVal = reporte.DataDefinition.ParameterFields[intI].CurrentValues; CurrParamVal.Clear(); CurrParamVal.Add(NewParamVal); reporte.DataDefinition.ParameterFields[intI].ApplyCurrentValues(CurrParamVal); } } if (Pordonde == 1) { CRV.ReportSource = reporte; // Asigno los resultados del reporte al Visor de Crystal Report } else { if (Formulario == null) { if (Impresora == null) { reporte.PrintToPrinter(1, false, 0, 0); //copies, collated, startpage, endpage } else { reporte.PrintToPrinter(Impresora, Pagina, false); } return; } else { CRV.ReportSource = reporte; this.Show(Formulario); } } //reporte.Close(); } catch (Exception er) { reporte = null; Reporte = null; MessageBox.Show("Error: " + er.Message); return; } }