public void CargarGrid() { if (Clientes != null && Clientes.Count > 0) { //seleccion de cliente: se selecciona el padre, si no hay padre se selecciona el hijo con el numero de cliente mas pequeno //remover duplidos Clientes = Clientes.Distinct().ToList(); dt.Clear(); dt.Columns.Clear(); dt.Columns.Add("Cliente"); dt.Columns.Add("Nombre"); dt.Columns.Add("Tipo"); dt.Columns["Cliente"].DataType = Type.GetType("System.Int32"); DataRow row; foreach (int cli in Clientes) { //validar y cargar datos Cliente objCliente = objApp.Cliente.CrearObjeto(); Conciliacion.RunTime.DatosSQL.Conexion conexion = new Conciliacion.RunTime.DatosSQL.Conexion(); conexion.AbrirConexion(true); objCliente.Referencia = cli.ToString(); if (objCliente.ValidaClienteExiste(conexion)) { //asignar nombre y tipo row = dt.NewRow(); row["Cliente"] = cli; row["Nombre"] = objCliente.Nombre; row["Tipo"] = objCliente.Tipo; dt.Rows.Add(row); } } if (dt.Rows.Count == 0) { throw new System.Exception("No existe cliente al cual asignar el pago."); } else { //El gridview deberá mostrar los registros ordenados por número de Cliente de forma ascendente dt.DefaultView.Sort = "Cliente"; grvClientes.DataSource = dt; grvClientes.DataBind(); //-Cuando el control sea mostrado el cliente padre(si lo hay) se elige por defecto //-Si no hay cliente padre se elige por defecto la sucursal con el número de Cliente más pequeño indiceGridSeleccionado = -1; int indexfila = 0; foreach (GridViewRow fila in grvClientes.Rows) { if (fila.Cells[3].Text == "PADRE") { indiceGridSeleccionado = indexfila; break; } indexfila = indexfila + 1; } if (indiceGridSeleccionado == -1) //Si no hay cliente padre { indexfila = 0; int idmenor = 999999999; foreach (GridViewRow fila in grvClientes.Rows) { if (fila.Cells[3].Text == "SUCURSAL") { if (int.Parse(fila.Cells[1].Text) < idmenor) { idmenor = int.Parse(fila.Cells[1].Text); indiceGridSeleccionado = indexfila; } } indexfila = indexfila + 1; } } if (indiceGridSeleccionado == -1) { indiceGridSeleccionado = 0; } quitarSeleccionRadio(); pintarFilaSeleccionada(indiceGridSeleccionado); GridViewRowCollection filas = grvClientes.Rows; indexfila = 0; foreach (GridViewRow f in filas) { if (indiceGridSeleccionado == indexfila) { hdfClienteSeleccionado.Value = f.Cells[1].Text; break; } indexfila = indexfila + 1; } ActivarSeleccionRadio(indiceGridSeleccionado); } } }
public List <DetalleInformeInternosAFuturo> consultaInformeInternosAFuturo(Conexion _conexion, DateTime FechaIni, DateTime FechaFin, string Banco, string CuentaBanco) { List <DetalleInformeInternosAFuturo> ListaResultado = new List <DetalleInformeInternosAFuturo>(); try { _conexion.Comando.CommandType = CommandType.StoredProcedure; _conexion.Comando.CommandText = "spCBReporteMovimientosCanceladosAFuturoInternos"; _conexion.Comando.Parameters.Clear(); _conexion.Comando.Parameters.Add(new SqlParameter("@FechaIni", System.Data.SqlDbType.DateTime)).Value = FechaIni; _conexion.Comando.Parameters.Add(new SqlParameter("@FechaFin", System.Data.SqlDbType.DateTime)).Value = FechaFin; _conexion.Comando.Parameters.Add(new SqlParameter("@Banco", System.Data.SqlDbType.VarChar)).Value = Banco; _conexion.Comando.Parameters.Add(new SqlParameter("@CuentaBancaria", System.Data.SqlDbType.VarChar)).Value = CuentaBanco; SqlDataReader reader = _conexion.Comando.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { DetalleInformeInternosAFuturo dato = new DetalleInformeInternosAFuturo(); dato.Banco = (reader["banco"] == DBNull.Value ? "" : Convert.ToString(reader["banco"])); dato.Corporativo = Convert.ToString(reader["corporativo"]); dato.Secuencia = Convert.ToInt32(reader["secuencia"]); dato.CuentaBancoFinanciero = Convert.ToString(reader["cuentabancofinanciero"]).Trim(); dato.ConsecutivoFlujo = Convert.ToInt32(reader["consecutivoflujo"] == DBNull.Value ? "0" : reader["consecutivoflujo"]); // mcc 20180503 dato.FOperacion = Convert.ToDateTime(reader["foperacion"]); dato.FMovimiento = Convert.ToDateTime(reader["fmovimiento"]); dato.Referencia = Convert.ToString(reader["referencia"]); dato.Concepto = Convert.ToString(reader["concepto"]); dato.Retiros = Convert.ToDecimal(reader["retiro"]); dato.Depositos = Convert.ToDecimal(reader["deposito"]); ListaResultado.Add(dato); } reader.Close(); } return(ListaResultado); } catch (Exception ex) { throw ex; } }