private void btnNuevo_Click(object sender, EventArgs e) { Nuevo = true; programa = null; if (chkHeredar.CheckState == CheckState.Unchecked) { LimpiarControles(); } chkHeredar.CheckState = CheckState.Unchecked; txtId_evento.Value = 0; txtDescrip.SelectAll(); txtDescrip.Focus(); }
void GenerarArchivo(Int32 Id_evento, Boolean GenerarArchivo) { try { pSeleccionarParametros_Result p = new pSeleccionarParametros_Result(); Programa e = new Programa(); pSeleccionarReportes_Result r = new pSeleccionarReportes_Result(); List <pSeleccionarValores_prog_Result> v = new List <pSeleccionarValores_prog_Result>(); string returnValue = null; using (Profit_RGEntities context = new Profit_RGEntities()) { p = context.pSeleccionarParametros().FirstOrDefault(); e = context.Programas.Where(ev => ev.id_evento == Id_evento).FirstOrDefault(); r = context.pSeleccionarReportes(e.cod_rep.Trim()).FirstOrDefault(); v = context.pSeleccionarValores_prog(e.id_evento).ToList(); } ConnectionStringSettings settings = ConfigurationManager.ConnectionStrings["ProfitContenedor.Properties.Settings.Profit_RGConnectionString"]; if (settings != null) { returnValue = settings.ConnectionString; } SqlConnection sqlConn = new SqlConnection(returnValue); SqlCommand comd; comd = new SqlCommand(); comd.Connection = sqlConn; comd.CommandType = CommandType.StoredProcedure; comd.CommandText = r.funcion.Trim(); foreach (var item in v) { switch (item.tipo.Trim()) { case "Char": comd.Parameters.Add(item.parametro.Trim(), SqlDbType.Char); comd.Parameters[comd.Parameters.Count - 1].Value = item.valor_char; break; case "Int": comd.Parameters.Add(item.parametro.Trim(), SqlDbType.Int); comd.Parameters[comd.Parameters.Count - 1].Value = item.valor_int; break; case "Decimal": comd.Parameters.Add(item.parametro.Trim(), SqlDbType.Decimal); comd.Parameters[comd.Parameters.Count - 1].Value = item.valor_dec; break; case "DateTime": comd.Parameters.Add(item.parametro.Trim(), SqlDbType.DateTime); comd.Parameters[comd.Parameters.Count - 1].Value = item.valor_date; break; case "Time": comd.Parameters.Add(item.parametro.Trim(), SqlDbType.Time); comd.Parameters[comd.Parameters.Count - 1].Value = item.valor_time; break; case "Bit": comd.Parameters.Add(item.parametro.Trim(), SqlDbType.Bit); comd.Parameters[comd.Parameters.Count - 1].Value = item.valor_bit; break; } } SqlDataAdapter sqlAdapter = new SqlDataAdapter(); sqlAdapter.SelectCommand = comd; DataSet ds = new DataSet(); sqlAdapter.Fill(ds, r.funcion.Trim()); if (ds.Tables[0].Rows.Count == 0) { MessageBox.Show("Sin datos para mostrar.", "Profit Expansion", MessageBoxButtons.OK, MessageBoxIcon.Stop); } else { string Filename = r.ruta + @"\" + r.Archivo; CrystalDecisions.CrystalReports.Engine.ReportDocument oRpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument(); oRpt.Load(@Filename); oRpt.SetDataSource(ds); if (GenerarArchivo == false) { FrmRep Fr = new FrmRep(ds, r.Archivo, false); Fr.ShowDialog(); } else { Archivo = ""; //string Fecha = ((DateTime.Now.Day < 10) ? "0" : "") + DateTime.Now.Day.ToString() + // ((DateTime.Now.Month < 10) ? "0" : "") + DateTime.Now.Month.ToString() + // (DateTime.Now.Year.ToString()); //string Hora = ((DateTime.Now.Hour < 10) ? "0" : "") + DateTime.Now.Hour.ToString() + // ((DateTime.Now.Minute < 10) ? "0" : "") + DateTime.Now.Minute.ToString() + // ((DateTime.Now.Second < 10) ? "0" : "") + DateTime.Now.Second.ToString(); switch (e.Tipo.Trim()) { case "PDF": //Archivo = @p.ruta_pdf + @"\" + e.descrip.Trim() + " F[" + Fecha + "] H[" + Hora + "].pdf"; Archivo = @p.ruta_pdf + @"\" + e.descrip.Trim() + ".pdf"; oRpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, Archivo.TrimEnd()); break; case "XLS": Archivo = @p.ruta_pdf + @"\" + e.descrip.Trim() + ".xls"; oRpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.ExcelRecord, Archivo.TrimEnd()); break; } } oRpt.Close(); oRpt.Dispose(); } } catch (EntitySqlException ex) { MessageBox.Show(ex.Message, "Profit Expansion", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (SqlException ex0) { MessageBox.Show(ex0.Message, "Profit Expansion", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (Exception ex1) { MessageBox.Show(ex1.Message, "Profit Expansion", MessageBoxButtons.OK, MessageBoxIcon.Error); } }