public DataTable InsertaCapacitaciones(Capacitaciones capacitaciones) { TablaAuditoriaIntelectualSQL tablaAuditoriaIntelectual = new TablaAuditoriaIntelectualSQL(); DataTable datos = tablaAuditoriaIntelectual.InsertaCapacitaciones(capacitaciones); if (datos != null) { this.log = "OK"; return datos; } else { this.log = tablaAuditoriaIntelectual.Log; return null; } }
public List<Capacitaciones> ObtenerProveedor() { ManagerOracle baseOracle = new ManagerOracle("JDE"); string sentenciaSQL = " SELECT * " + " FROM PRODDTA.F0101 " + " where ABAT1='V' or ABAT1='E' "; DataSet conjuntoDatos = baseOracle.Consultar(sentenciaSQL); if (conjuntoDatos != null) // Valida que no exista error { DataTable datos = conjuntoDatos.Tables[0]; if (datos.Rows.Count != 0) // Valida que existan registros { List<Capacitaciones> listaProveedor = new List<Capacitaciones>(); foreach (DataRow fila in datos.Rows) { Capacitaciones proveedores = new Capacitaciones(); proveedores.nomproveedor = fila["ABALPH"].ToString(); proveedores.idproveedor = fila["ABAN8"].ToString(); listaProveedor.Add(proveedores); } this.log = listaProveedor.Count.ToString(); return listaProveedor; } else { this.log = "VACIO"; return null; } } else { this.log = baseOracle.Log; return null; } }
public List<Capacitaciones> ObtenerCurso() { ManagerSqlServer baseSqlSever = new ManagerSqlServer(); DataTable datos; SqlCommand comando = new SqlCommand(); comando.CommandText = " SELECT id_curso,descripcion_curso " + " FROM AUD_C_CURSOS " + " GROUP BY id_curso,descripcion_curso " + " ORDER BY descripcion_curso "; datos = baseSqlSever.Consultar(comando); if (datos != null) { if (datos.Rows.Count != 0) { List<Capacitaciones> listaCapacitaciones = new List<Capacitaciones>(); foreach (DataRow fila in datos.Rows) { Capacitaciones cursos = new Capacitaciones(); cursos.idcurso = fila["id_curso"].ToString(); cursos.curso = fila["descripcion_curso"].ToString(); listaCapacitaciones.Add(cursos); } this.log = listaCapacitaciones.Count.ToString(); return listaCapacitaciones; } else { this.log = "VACIO"; return null; } } else { this.log = baseSqlSever.Log; return null; } }
protected void cmdAgrega_documento_Click(object sender, EventArgs e) { string vigenciaini; string vigenciafin; Digitalizaciones entidadDigitlizacionesSC = new Digitalizaciones(); string NombreArchivo = ""; string nombreempleado = ""; string RutArchivo = ""; string nomtxt = ""; string yourDirectory = ""; string nombrecurso = ""; string idcurso = ""; string ultimoidcurso = ""; string totalarchivos=""; string anexo=""; string Agrupacion=""; string FechaIniVig =""; string FechaFinVig =""; int graba = 1; MensajeError(string.Empty); MensajeExito(string.Empty); if (ddlCurso.SelectedValue=="*") { graba = 0; } if (ddlModalidad.SelectedValue == "*") { graba = 0; } if (ddlModalidad.SelectedValue == "*") { graba = 0; } if (graba == 0) { MensajeError("Debe seleccionar algun curso o una modalidad"); graba = 0; } else { // Guarda la capacitacion del curso tomado en detalle de capacitacion Capacitaciones entidadCapacitaciones = new Capacitaciones(); entidadCapacitaciones.idcurso = ddlCurso.SelectedValue; entidadCapacitaciones.idproveedor = ddlProveedor.SelectedValue; entidadCapacitaciones.idempleado = txtNoEmpleado.Text; entidadCapacitaciones.modalidad = ddlModalidad.SelectedValue; entidadCapacitaciones.lugar = txtLugar.Text; entidadCapacitaciones.costo = txtCosto.Text; entidadCapacitaciones.area = ddlAreaPersonal.SelectedValue; entidadCapacitaciones.areapersonal = ddlAreaPersonal.SelectedValue; //cambiar //entidadCapacitaciones.moneda = txtmoneda.Text; entidadCapacitaciones.moneda = dllMoneda.SelectedValue; entidadCapacitaciones.departamento = txtDepartamento.Text; entidadCapacitaciones.duracionhrs = txthoras.Text; entidadCapacitaciones.observaciones = txtObservaciones.Text; // entidadCapacitaciones.duracionhrs = txthoras.Text; //para la fecha inicio de vigencia de capacitacion if (!string.IsNullOrEmpty(txtFechainivig.Text)) { vigenciaini = txtFechainivig.Text; //24/05/2015 string[] parts = vigenciaini.Split('/'); string anio = parts[2]; string mes = parts[1]; string dia = parts[0]; entidadCapacitaciones.fechainicurso = dia + "/" + mes + "/" + anio; } else { entidadCapacitaciones.fechainicurso = ""; } // para la fecha fin de vigencia if (!string.IsNullOrEmpty(txtfechafinvig.Text)) { vigenciafin = txtfechafinvig.Text; //24/05/2015 string[] parts = vigenciafin.Split('/'); string anio = parts[2]; string mes = parts[1]; string dia = parts[0]; entidadCapacitaciones.fechafincurso = dia + "/" + mes + "/" + anio; } else { entidadCapacitaciones.fechafincurso = ""; } string nomusuario = (string)(Session["Nombre"]); string claveusuario = (string)(Session["ClaveJDE"]); if (claveusuario == null) { entidadCapacitaciones.userlogin = nomusuario; } else { entidadCapacitaciones.userlogin = claveusuario; } negCapacitacionesSQL negocioCapacitaciones = new negCapacitacionesSQL(); try { negocioCapacitaciones.InsertaCapacitaciones(entidadCapacitaciones); } catch (Exception d) { MensajeErrorFiltros("No se pudo guardar, ocurrio un Error: " + negocioCapacitaciones.Log); return; } // AQUI CHECA SI SE ADJUNTO ALGUN ARCHIVO Y LO GUARDA EN LA TABLA AUD_EXPEDIENTE en caso de que tambien agrege doctos digitalizados. Boolean fileOK = false; if (fupCargarDigitalizacion.HasFile) { String fileExtension = System.IO.Path.GetExtension(fupCargarDigitalizacion.FileName).ToLower(); String[] allowedExtensions = { ".pdf" }; for (int i = 0; i < allowedExtensions.Length; i++) { if (fileExtension == allowedExtensions[i]) { fileOK = true; } } } if (fileOK) { try { RutArchivo = "Expedientes/"; nomtxt = TxtEmpleado.Text; //nombre con guin sobre los espacios nombreempleado = nomtxt.Replace(" ", "_"); idcurso = ddlCurso.SelectedValue; //para sacar el idcurso string connectionString = ConfigurationManager.ConnectionStrings["conexionAPPS"].ConnectionString; using (SqlConnection cnx = new SqlConnection(connectionString)) { cnx.Open(); string query = "select * from AUD_C_CURSOS where id_curso= '" + idcurso + "' "; SqlCommand cmd = new SqlCommand(query, cnx); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { nombrecurso = dr["descripcion_curso"].ToString(); } } else { nombrecurso = idcurso; //sino existe pongo el numero de id del curso } } // cierre de la conn using (SqlConnection cnx = new SqlConnection(connectionString)) { cnx.Open(); string query = "SELECT max(doc_id) as ultimoidcurso FROM AUD_D_CAPACITACION "; SqlCommand cmd = new SqlCommand(query, cnx); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { ultimoidcurso = dr["ultimoidcurso"].ToString(); } } else { ultimoidcurso = "0"; //sino existe pongo el numero de id del curso } } // cierre de la conn //=======================aqui va el codigo para guardar cuando son mas archivos //====================================AQUI VAN LOS DATOS A GUARDAR================================ HttpFileCollection uploadedFiles = Request.Files; for (int i = 0; i < uploadedFiles.Count; i++) { HttpPostedFile userPostedFile = uploadedFiles[i]; try { //recorre el upload tanto archivos se hayam subido if (userPostedFile.ContentLength > 0) { //Label1.Text += "<br><u>File #" + (i + 1) + "</u><br>"; //Label1.Text += "File Content Type: " + userPostedFile.ContentType + "<br>"; //Label1.Text += "File Size: " + userPostedFile.ContentLength + "kb<br>"; //Label1.Text += "File Name: " + userPostedFile.FileName + "<br>"; // ---AQUI DEBE IR TODO LO LOS DATOS QUE SE VAYAN A GUARDAR RUTA Y NOMBRE DEL LOS ARCHIVOS EN AUD EXPEDIENTE //==============================busco los demas datos para buscar sus cursos using (SqlConnection cnx = new SqlConnection(connectionString)) { cnx.Open(); string query = " SELECT COUNT(doc_IdArchivo) as totalarchivos " + " FROM AUD_EXPEDIENTE " + " WHERE (doc_id_curso = '" + idcurso + "') AND (doc_IdEmpleado = '" + txtNoEmpleado.Text + "') " + " order by 1 "; SqlCommand cmd = new SqlCommand(query, cnx); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { totalarchivos = dr["totalarchivos"].ToString(); } } else { totalarchivos = "0"; //sino existe } } // cierre de la conn if (totalarchivos == "1") { anexo = "Parte2"; } if (totalarchivos == "2") { anexo = "Parte3"; } if (totalarchivos == "3") { anexo = "Parte4"; } if (totalarchivos == "4") { anexo = "Parte5"; } if (totalarchivos == "5") { anexo = "Parte6"; } if (totalarchivos == "6") { anexo = "Parte7"; } if (totalarchivos == "7") { anexo = "Parte8"; } if (totalarchivos == "8") { anexo = "Parte9"; } if (totalarchivos == "9") { anexo = "Parte10"; } if (totalarchivos == "10") { anexo = "Parte11"; } if (Convert.ToInt32(totalarchivos) > 11) { lbEstatus.Text += "Solo puedes subir maximo 10"; return; } //directorio donde se guardara el archivo if (totalarchivos == "0") { string rutaserver = HttpContext.Current.Server.MapPath("/Expedientes/"); NombreArchivo = rutaserver + nomtxt + "\\" + nombrecurso + "_" + nombreempleado + "_" + txtNoEmpleado.Text + ".pdf"; entidadDigitlizacionesSC.NombreArchivo = nombrecurso + "_" + nombreempleado + "_" + txtNoEmpleado.Text + ".pdf"; } else { string rutaserver = HttpContext.Current.Server.MapPath("/Expedientes/"); NombreArchivo = rutaserver + nomtxt + "\\" + nombrecurso + "-" + nombreempleado + "_" + txtNoEmpleado.Text + "_" + anexo + ".pdf"; entidadDigitlizacionesSC.NombreArchivo = nombrecurso + "-" + nombreempleado + "_" + txtNoEmpleado.Text + "_" + anexo + ".pdf"; } string rutaserver2 = HttpContext.Current.Server.MapPath("/Expedientes/"); //yourDirectory = "C:\\Users\\Public\\Documents\\APPS\\APPS\\Apps\\Documentos\\Expedientes\\" + nomtxt + "\\"; yourDirectory = rutaserver2 + nomtxt + "\\"; // para validar que exista el directorio donde se va guardar el archivo if (!Directory.Exists(yourDirectory)) { Directory.CreateDirectory(yourDirectory); //fupCargarDigitalizacion.PostedFile.SaveAs(NombreArchivo); userPostedFile.SaveAs(NombreArchivo); lbEstatus.Text = " Estado: Archivo subido! "; } else { //fupCargarDigitalizacion.PostedFile.SaveAs(NombreArchivo); userPostedFile.SaveAs(NombreArchivo); lbEstatus.Text = " Estado: Archivo subido! "; } FechaIniVig = txtFechainivig.Text; FechaFinVig = txtfechafinvig.Text; //busco los demas datos using (SqlConnection cnx = new SqlConnection(connectionString)) { cnx.Open(); string query = " SELECT doc_IdArchivo, doc_nombre, doc_ruta, doc_IdEmpleado, doc_tipo, doc_subtipo, " + " doc_agrupador, doc_Mes, doc_anio, doc_descripcion, doc_alta, doc_user, " + " doc_id_curso, doc_id_capacitacion, doc_fecha_ini_vig, doc_fecha_fin_vig " + " FROM AUD_EXPEDIENTE " + " WHERE (doc_id_curso = '" + idcurso + "') AND (doc_IdEmpleado = '" + txtNoEmpleado.Text.Trim() + "')"; SqlCommand cmd = new SqlCommand(query, cnx); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { Agrupacion = dr["doc_agrupador"].ToString(); if (!string.IsNullOrEmpty(FechaIniVig)) { FechaIniVig = dr["doc_fecha_ini_vig"].ToString(); FechaFinVig = dr["doc_fecha_fin_vig"].ToString(); } } } else { Agrupacion = ""; //sino existe pongo el numero de id del curso } } // cierre de la conn if (Agrupacion == "") { Agrupacion = ddlGrupoExp.SelectedValue; } if (totalarchivos == "0") { //para cambiar el formato de fechas if (!string.IsNullOrEmpty(FechaIniVig)) { vigenciafin = FechaIniVig; // ejemplo 2015-12-01 string[] parts = vigenciafin.Split('/'); string anio = parts[2]; //string[] parts2 = anio.Split(' '); //string anio2 = parts[2]; string mes = parts[1]; string dia = parts[0]; entidadDigitlizacionesSC.FechaIniVig = dia + "/" + mes + "/" + anio; } else { entidadDigitlizacionesSC.FechaIniVig = ""; } // para cambiar el formato de fecha if (!string.IsNullOrEmpty(FechaFinVig)) { vigenciafin = FechaFinVig; // ejemplo 2015-12-01 string[] parts = vigenciafin.Split('/'); string anio = parts[2]; //string[] parts2 = anio.Split(' '); //string anio2 = parts[2]; string mes = parts[1]; string dia = parts[0]; entidadDigitlizacionesSC.FechaFinVig = dia + "/" + mes + "/" + anio; } else { entidadDigitlizacionesSC.FechaFinVig = ""; } } else { //para cambiar el formato de fechas if (!string.IsNullOrEmpty(FechaIniVig)) { vigenciafin = FechaIniVig; // ejemplo 22/05/2014 09:00:00 string[] parts = vigenciafin.Split('/'); string anio = parts[2]; //string[] parts2 = anio.Split(' '); //string anio2 = parts2[0]; string mes = parts[1]; string dia = parts[0]; entidadDigitlizacionesSC.FechaIniVig = dia + "/" + mes + "/" + anio; } else { entidadDigitlizacionesSC.FechaIniVig = ""; } // para cambiar el formato de fecha if (!string.IsNullOrEmpty(FechaFinVig)) { vigenciafin = FechaFinVig; // ejemplo 22/05/2014 09:00:00 string[] parts = vigenciafin.Split('/'); string anio = parts[2]; //string[] parts2 = anio.Split(' '); //string anio2 = parts2[0]; string mes = parts[1]; string dia = parts[0]; entidadDigitlizacionesSC.FechaFinVig = dia + "/" + mes + "/" + anio; } else { entidadDigitlizacionesSC.FechaFinVig = ""; } } // aqui agrego los demas campos entidadDigitlizacionesSC.Ubicacion = RutArchivo + TxtEmpleado.Text.Trim() + "/"; entidadDigitlizacionesSC.NumeroEmpleado = txtNoEmpleado.Text.Trim(); entidadDigitlizacionesSC.TipoDocumento = nombrecurso; entidadDigitlizacionesSC.SubTipo = "CAPACITACION"; entidadDigitlizacionesSC.Agrupacion = Agrupacion; entidadDigitlizacionesSC.Mes = DateTime.Now.ToString("MM"); entidadDigitlizacionesSC.Anio = DateTime.Now.Year.ToString(); entidadDigitlizacionesSC.IdCurso = idcurso; entidadDigitlizacionesSC.IdCapacitacion = ultimoidcurso; if (claveusuario == null) { entidadDigitlizacionesSC.Userlogin = nomusuario; } else { entidadDigitlizacionesSC.Userlogin = claveusuario; } Indicadores negocioDigitalizacionesSC = new Indicadores(); try { //para guardar las digitalizaciones si es que subio el archivo negocioDigitalizacionesSC.InsertaDigitalizaciones2(entidadDigitlizacionesSC); } catch (Exception Ed) { MensajeErrorFiltros("No se pudo guardar la digitalizacion, ocurrio un Error: " + negocioDigitalizacionesSC.Log); lbEstatus.Text = "No se pudo guardar la digitalizacion, ocurrio un error " + negocioDigitalizacionesSC.Log; return; } } } catch (Exception Ex) { lbEstatus.Text += "Error: <br>" + Ex.Message; } } } catch (Exception d) { //MensajeErrorFiltros("El Archivo no se pudo subir, ocurrio un Error: " + d); lbEstatus.BorderColor = Color.Red; lbEstatus.Text = " Estado: El Archivo no se pudo subir "; lbEstatus.BorderColor = Color.Red; return; } //CreateGrid(); } //=============================================================================================================================== // entidadDigitlizacionesSC.NombreArchivo = nombrecurso + "-" + nombreempleado + "_" + txtNoEmpleado.Text.Trim() + ".pdf"; // //directorio donde se guardara el archivo // NombreArchivo = "C:\\Users\\Public\\Documents\\APPS\\APPS\\Apps\\Documentos\\Expedientes\\" + nomtxt + "\\" + nombrecurso + "-" + nombreempleado + "_" + txtNoEmpleado.Text.Trim() + ".pdf"; // yourDirectory = "C:\\Users\\Public\\Documents\\APPS\\APPS\\Apps\\Documentos\\Expedientes\\" + nomtxt + "\\"; // // para validar que exista el directorio donde se va guardar el archivo // if (!Directory.Exists(yourDirectory)) // { // Directory.CreateDirectory(yourDirectory); // fupCargarDigitalizacion.PostedFile.SaveAs(NombreArchivo); // StatusLabel.Text = " Estado: Archivo subido! "; // } // else // { // fupCargarDigitalizacion.PostedFile.SaveAs(NombreArchivo); // StatusLabel.Text = " Estado: Archivo subido! "; // } // // aqui agrego los demas campos // entidadDigitlizacionesSC.Ubicacion = RutArchivo + TxtEmpleado.Text.Trim() + "/"; // entidadDigitlizacionesSC.NumeroEmpleado = txtNoEmpleado.Text.Trim(); // entidadDigitlizacionesSC.TipoDocumento = nombrecurso; // entidadDigitlizacionesSC.SubTipo = "CAPACITACION"; // entidadDigitlizacionesSC.Agrupacion = ddlGrupoExp.SelectedValue.Trim(); // entidadDigitlizacionesSC.Mes = DateTime.Now.ToString("MM"); // entidadDigitlizacionesSC.Anio = DateTime.Now.Year.ToString(); // entidadDigitlizacionesSC.FechaIniVig = entidadCapacitaciones.fechainicurso; // entidadDigitlizacionesSC.FechaFinVig = entidadCapacitaciones.fechafincurso; // entidadDigitlizacionesSC.IdCurso = ddlCurso.SelectedValue; // entidadDigitlizacionesSC.IdCapacitacion = ultimoidcurso; // if (claveusuario == null) // { // entidadDigitlizacionesSC.Userlogin= nomusuario; // } // else // { // entidadDigitlizacionesSC.Userlogin = claveusuario; // } // Indicadores negocioDigitalizacionesSC = new Indicadores(); // try // { // //para guardar las digitalizaciones si es que subio el archivo // negocioDigitalizacionesSC.InsertaDigitalizaciones2(entidadDigitlizacionesSC); // } // catch (Exception ed) // { // MensajeErrorFiltros("No se pudo guardar la digitalizacion, ocurrio un Error: " + negocioDigitalizacionesSC.Log); // return; // } // //actualizo el grid // CreateGrid(); // } // catch (Exception d) // { // MensajeErrorFiltros("El Archivo no se pudo subir, ocurrio un Error: " + d); // StatusLabel.Text = " Estado: El Archivo no se pudo subir "; // return; // } //} CreateGrid(); //limpia los detalles ddlCurso.SelectedIndex = 0; ddlProveedor.SelectedIndex = 0; ddlModalidad.SelectedIndex = 0; txtLugar.Text = null; txtFechainivig.Text = null; txtfechafinvig.Text = null; txtCosto.Text = null; ddlAreaPersonal.SelectedIndex = 0; ddlGrupoExp.SelectedIndex = 0; StatusLabel.Text = null; dllMoneda.SelectedIndex = 0; txthoras.Text = null; txtObservaciones.Text = null; //txtmoneda.Text = null; panel3.Visible = true; panel1.Visible = true; panelFiltros.CssClass = "da-panel collapsible"; //CreateGrid(); } }
public List<Capacitaciones> ObtenerNoProveedor(string parNoproveedor) { try { ManagerOracle baseOracle = new ManagerOracle("JDE"); OracleCommand comando = new OracleCommand(); //AuditoriaIntelectual entidadauditoria; //nombre de la entidad DataTable datos; comando.CommandText = " SELECT * " + " FROM PRODDTA.F0101 " + " where ABAT1='V' and ABAN8 like :parNoproveedor "; comando.Parameters.Clear(); comando.Parameters.Add(":parNoproveedor", OracleType.VarChar).Value = parNoproveedor; datos = baseOracle.Consultar(comando); if (datos != null) { if (datos.Rows.Count != 0) { List<Capacitaciones> listanProveedor = new List<Capacitaciones>(); foreach (DataRow fila in datos.Rows) { Capacitaciones proveedores = new Capacitaciones(); proveedores.idproveedor = fila["ABAN8"].ToString(); proveedores.nomproveedor = fila["ABALPH"].ToString(); listanProveedor.Add(proveedores); } this.log = listanProveedor.Count.ToString(); return listanProveedor; } else { this.log = "VACIO"; return null; } } else { this.log = baseOracle.Log; return null; } } catch (Exception ex) { this.log = ex.Message; return null; } }
public DataTable InsertaCapacitaciones(Capacitaciones parCapacitaciones) { ManagerSqlServer baseSqlSever = new ManagerSqlServer(); SqlCommand comando = new SqlCommand(); DateTime FAlta = DateTime.Now; try { comando.CommandText = " INSERT INTO AUD_D_CAPACITACION (id_curso, id_proveedor_jde, id_empleado, modalidad_cap, " + " lugar_cap, costo_cap, area_ebs_cap, moneda_cap, depto_cap, user_captura_cap, fecha_inicio_cap, fecha_fin_cap, duracion_hrs, observaciones) " + " VALUES(@parIdcurso,@parIdProveedorJDE,@parNumeroEmpleado, @parModalidad, @parLugar, @parCosto, " + " @parArea, @parMoneda, @parDepartamento, @parUser, @parFechaIniVig, @parFechaFinVig, @duracionhrs, @parObservaciones)"; comando.Parameters.Clear(); comando.Parameters.Add("@parIdcurso", SqlDbType.VarChar).Value = parCapacitaciones.idcurso; comando.Parameters.Add("@parIdProveedorJDE", SqlDbType.VarChar).Value = parCapacitaciones.idproveedor; comando.Parameters.Add("@parNumeroEmpleado", SqlDbType.VarChar).Value = parCapacitaciones.idempleado; comando.Parameters.Add("@parModalidad", SqlDbType.VarChar).Value = parCapacitaciones.modalidad; comando.Parameters.Add("@parLugar", SqlDbType.VarChar).Value = parCapacitaciones.lugar; comando.Parameters.Add("@parCosto", SqlDbType.VarChar).Value = parCapacitaciones.costo; comando.Parameters.Add("@parArea", SqlDbType.VarChar).Value = parCapacitaciones.area; comando.Parameters.Add("@parMoneda", SqlDbType.VarChar).Value = parCapacitaciones.moneda; comando.Parameters.Add("@parDepartamento", SqlDbType.VarChar).Value = parCapacitaciones.departamento; comando.Parameters.Add("@parFechaIniVig", SqlDbType.VarChar).Value = parCapacitaciones.fechainicurso; comando.Parameters.Add("@parFechaFinVig", SqlDbType.VarChar).Value = parCapacitaciones.fechafincurso; comando.Parameters.Add("@parUser", SqlDbType.VarChar).Value = parCapacitaciones.userlogin; comando.Parameters.Add("@duracionhrs", SqlDbType.VarChar).Value = parCapacitaciones.duracionhrs; comando.Parameters.Add("@parObservaciones", SqlDbType.VarChar).Value = parCapacitaciones.observaciones; DataTable datos = baseSqlSever.Consultar(comando); return datos; } catch (Exception ex) { // this.log = baseSqlSever.Log; //return null; throw ex; } }