List <ET_M38> _lista_et_m38 = new List <ET_M38>(); //lista de cargos public List <ET_M38> TexBox_Cargo(TextBox _textbox) { _et_m38 = new ET_M38(); _et_m38._filtro = "";//_textbox.Text.ToString(); var result = _dt_m38.filter_list(_et_m38); if (!result._hubo_error) { _textbox.AutoCompleteCustomSource.Clear(); _lista_et_m38 = new List <ET_M38>(); _lista_et_m38 = result._lista_et_m38.ToList(); foreach (ET_M38 row in result._lista_et_m38.ToList()) { _textbox.AutoCompleteCustomSource.Add(row._TM38_DESCRIP); } } else { _entidad = result; Mensaje(_entidad); } return(_lista_et_m38); }
//OBTENER LA LISTA DE CARGOS public ET_entidad filter_list(ET_M38 objEntity) { string Mensaje_error = ""; DataTable dt = new DataTable(); using (SqlConnection cn = new SqlConnection(_cnx.conexion)) { cn.Open(); SqlTransaction sqlTran = cn.BeginTransaction(); SqlCommand cmd = new SqlCommand("pa_tm38get_001", cn, sqlTran); cmd.CommandType = CommandType.StoredProcedure; try { _lista_m38 = new List <ET_M38>(); cmd.Parameters.Add("@p_TM38_TM2_ID", SqlDbType.VarChar, 10).Value = _global._TM2_ID; cmd.Parameters.Add("@p_filtro", SqlDbType.VarChar, 50).Value = objEntity._filtro; SqlDataAdapter da = new SqlDataAdapter(); da.SelectCommand = cmd; da.Fill(dt); foreach (DataRow fila in dt.Rows) { _etm38 = new ET_M38(); _etm38._TM38_ID = fila["TM38_ID"].ToString(); _etm38._TM38_TM2_ID = fila["TM38_TM2_ID"].ToString(); _etm38._TM38_DESCRIP = fila["TM38_DESCRIP"].ToString(); //_etm38._TM38_UCREA = fila["TM38_UCREA"].ToString(); //_etm38._TM38_FCREA = fila["TM38_FCREA"].ToString(); //_etm38._TM38_UACTUALIZA = fila["TM38_UACTUALIZA"].ToString(); //_etm38._TM38_FACTUALIZA = fila["TM38_FACTUALIZA"].ToString(); _lista_m38.Add(_etm38); } _Entidad._lista_et_m38 = _lista_m38; _Entidad._hubo_error = false; } catch (SqlException exsql) { try { sqlTran.Rollback(); } catch (Exception exRollback) { } } catch (Exception ex) { Mensaje_error = string.Format("{1}{0}", Environment.NewLine, (Mensaje_error + ex.Message.ToString())); if (ex.InnerException != null) { Mensaje_error = string.Format("{1}{0}", Environment.NewLine, (Mensaje_error + "Inner exception: " + ex.InnerException.Message)); } Mensaje_error = string.Format("{1}{0}", Environment.NewLine, (Mensaje_error + "Stack trace: " + ex.StackTrace)); _Entidad._hubo_error = true; _Entidad._contenido_mensaje = Mensaje_error; _Entidad._titulo_mensaje = "Error!"; } finally { cn.Close(); } return(_Entidad); } }
private void dgv_entrada_datos_mano_de_obra_CellValidating(object sender, DataGridViewCellValidatingEventArgs e) { #region entrada_datos if (!dgv_entrada_datos_mano_de_obra.Rows[e.RowIndex].IsNewRow) { for (int a = 0; a < dgv_entrada_datos_mano_de_obra.Rows.Count; a++) { if (a != e.RowIndex) { dgv_entrada_datos_mano_de_obra.Rows[a].DefaultCellStyle.BackColor = Color.White; } } string nombre_columna = dgv_entrada_datos_mano_de_obra.Columns[e.ColumnIndex].Name; string cabecra_columna = dgv_entrada_datos_mano_de_obra.Columns[e.ColumnIndex].HeaderText; if (nombre_columna.Equals("_COL_DELETE_ROW")) { return; } var msg = string.Format("El campo de nombre {0} esta vacio", cabecra_columna); if (string.IsNullOrEmpty(e.FormattedValue.ToString())) { dgv_entrada_datos_mano_de_obra.Rows[e.RowIndex].ErrorText = msg; dgv_entrada_datos_mano_de_obra.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.DarkSalmon; e.Cancel = true; } else { Indice_fila_grid_entrada_datos_mano_obra = e.RowIndex; bool existe = _lista_et_r29.Any(item => item._Fila == e.RowIndex); // sis existe actualizo la lista if (existe) { ET_R29 _fila = _lista_et_r29.FirstOrDefault(cus => cus._Fila == e.RowIndex); switch (nombre_columna) { case "_COL_CARGO": _fila._TR29_DESCRIP = e.FormattedValue.ToString(); ET_M38 cargo = _lista_Cargos.FirstOrDefault(x => x._TM38_DESCRIP == _fila._TR29_DESCRIP); if (cargo != null) { _fila._TR29_TM38_ID = cargo._TM38_ID; //id_cargo } else { dgv_entrada_datos_mano_de_obra.Rows[e.RowIndex].ErrorText = msg; dgv_entrada_datos_mano_de_obra.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.DarkSalmon; e.Cancel = true; } break; case "_COL_HORA_ENTRADA": DateTime hora_e_no_Fecha = new DateTime(1900, 1, 1, Convert.ToDateTime(e.FormattedValue.ToString()).Hour, Convert.ToDateTime(e.FormattedValue.ToString()).Minute, Convert.ToDateTime(e.FormattedValue.ToString()).Second); _fila._TR29_HORA_ENTRADA = hora_e_no_Fecha; // Convert.ToDateTime(e.FormattedValue.ToString()); break; case "_COL_HORA_SALIDA": DateTime hora_s_no_Fecha = new DateTime(1900, 1, 1, Convert.ToDateTime(e.FormattedValue.ToString()).Hour, Convert.ToDateTime(e.FormattedValue.ToString()).Minute, Convert.ToDateTime(e.FormattedValue.ToString()).Second); _fila._TR29_HORA_SALIDA = hora_s_no_Fecha; // Convert.ToDateTime(e.FormattedValue.ToString()); break; case "_COL_DIAS_POR_SEMANA": _fila._TR29_DIAS_SEMANA = Convert.ToInt32(e.FormattedValue.ToString()); break; case "_COL_REMUNERACION": _fila._TR29_REMUNERACION = Convert.ToDecimal(e.FormattedValue.ToString()); break; } _fila._TR29_TR28_ID = id_Servicio_hijo; } else { //es nuevo ingreso ET_R29 in_et_r29 = new ET_R29(); in_et_r29._Fila = e.RowIndex; in_et_r29._TR29_ST = 0; in_et_r29._TR29_FLG_ELIMINADO = 0; in_et_r29._TR29_TR28_ID = id_Servicio_hijo; switch (nombre_columna) { case "_COL_CARGO": in_et_r29._TR29_DESCRIP = e.FormattedValue.ToString(); ET_M38 cargo = _lista_Cargos.FirstOrDefault(x => x._TM38_DESCRIP == e.FormattedValue.ToString()); if (cargo != null) { in_et_r29._TR29_TM38_ID = cargo._TM38_ID; } else { dgv_entrada_datos_mano_de_obra.Rows[e.RowIndex].ErrorText = msg; dgv_entrada_datos_mano_de_obra.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.DarkSalmon; e.Cancel = true; } break; case "_COL_HORA_ENTRADA": DateTime hora_e_no_Fecha = new DateTime(1900, 1, 1, Convert.ToDateTime(e.FormattedValue.ToString()).Hour, Convert.ToDateTime(e.FormattedValue.ToString()).Minute, Convert.ToDateTime(e.FormattedValue.ToString()).Second); in_et_r29._TR29_HORA_ENTRADA = hora_e_no_Fecha; // Convert.ToDateTime(e.FormattedValue.ToString()); break; case "_COL_HORA_SALIDA": DateTime hora_s_no_Fecha = new DateTime(1900, 1, 1, Convert.ToDateTime(e.FormattedValue.ToString()).Hour, Convert.ToDateTime(e.FormattedValue.ToString()).Minute, Convert.ToDateTime(e.FormattedValue.ToString()).Second); in_et_r29._TR29_HORA_SALIDA = hora_s_no_Fecha; // Convert.ToDateTime(e.FormattedValue.ToString()); break; case "_COL_DIAS_POR_SEMANA": in_et_r29._TR29_DIAS_SEMANA = Convert.ToInt32(e.FormattedValue.ToString()); break; case "_COL_REMUNERACION": //if(e.FormattedValue.ToString().Contains('.')) // in_et_r29._TR29_REMUNERACION = Convert.ToDecimal(e.FormattedValue.ToString()); //else in_et_r29._TR29_REMUNERACION = Convert.ToDecimal(e.FormattedValue.ToString()); break; } _lista_et_r29.Add(in_et_r29); } } } #endregion }