| |||
cargar rápido un grid Hola amigos, como siempre por aquí, tengo unos grid que cargo con datos que el usuario elige entre fechas, el problema es que cuando elige un mes se hace muy larga la espera...hay manera de acelerar la carga de un grid? |
| ||||
Respuesta: cargar rápido un grid Hola guille la carga demora cuando tienes demasiada informacion a listar, cuando la conexion es pésima, cuando tus consultas contienen Group By,Order By... (aqui ya que cuando lista todos los datos tiene que recorrer todas las rows y y ver letra por letra con las demas para ordenarlo, lo cual obviamente genera la demora etc,etc...). Pega el codigo que usas. Saludos!.
__________________ Internet es tener todo el conocimiento global a tu disposición. Desarrollo de Software - Ejemplos .Net |
| |||
Respuesta: cargar rápido un grid lo hago así Public Sub conectagridcompleto() Dim adapta2 As New OleDbDataAdapter Dim datavacio As New DataSet Dim comados = conexion.CreateCommand comados.CommandType = CommandType.Text Try comados.CommandText = "SELECT reg,Plu,Producto,Cantidad,Pts,Fecha,NombreFormaPag o,IvaVenta,Barra,NombTerminal,Anulado,IdComanda From IntroduccionDeVentasAhora WHERE Barra = @combo1 and NombTerminal = @combo2 and Anulado=0 and Fecha BETWEEN @FI AND @FF order by reg " ' and NombreFormaPago <> ('TARJETA CREDITO') and 'creo los parametros que uso en el SELECT, para filtrar en el datagridview(dgtotales) comados.Parameters.AddWithValue("@combo1", ComboMostrador.SelectedValue.ToString) comados.Parameters.AddWithValue("@combo2", ComboTerminal.SelectedValue.ToString) comados.Parameters.AddWithValue("@FI", Fecha1.Value.Date.ToString("dd/MM/yyyy")) comados.Parameters.AddWithValue("@FF", Fecha2.Value.Date.ToString("dd/MM/yyyy")) adapta2.SelectCommand = comados adapta2.Fill(datavacio, "IntroduccionDeVentasAhora") 'MessageBox.Show(adapta2.Fill(datavacio, "IntroduccionDeVentasAhora").ToString) 'aquí cargo el datasource y el datamenber del datagrid dgcompleto.DataSource = datavacio dgcompleto.DataMember = "IntroduccionDeVentasAhora" dgcompleto.Refresh() Catch 'If RadioBIVA18.Checked = True Then ' MessageBox.Show("No hay datos") 'End If End Try 'cargo las funciones para los radiobutton una vez se seleccionan 'sumatotallabel() 'sumatotal() 'sumatodo() sumatodograntotal() conexion.Close() End Sub |
| |||
Respuesta: cargar rápido un grid y otra es así Public Sub conectagrid() Dim adapta2 As New OleDbDataAdapter Dim datavacio As New DataSet Dim comados = conexion.CreateCommand comados.CommandType = CommandType.Text Try comados.CommandText = "SELECT reg,Barra,NombTerminal,ROUND(Sum(Cantidad*Pts),2) AS TOTAL,NombreFormaPago,Fecha,Anulado From IntroduccionDeVentasAhora WHERE Barra = @combo1 and NombTerminal = @combo2 and Anulado=0 and NombreFormaPago <> ('TARJETA CREDITO') and Fecha BETWEEN @FI AND @FF group by reg,Barra,NombTerminal,NombreFormaPago,Anulado,Fec ha Order by ROUND(Sum(Cantidad*Pts),2) DESC" 'comados.CommandText = "SELECT reg,Barra,NombTerminal,Anulado,Fecha, ROUND(Sum(Cantidad*Pts),2) AS TOTAL From IntroduccionDeVentasAhora WHERE Barra = @combo1 and NombTerminal = @combo2 and Anulado=0 and Fecha BETWEEN @FI AND @FF group by reg,Barra,NombTerminal,Anulado,Fecha Order by ROUND(Sum(Cantidad*Pts),2) DESC" 'creo los parametros que uso en el SELECT, para filtrar en el datagridview(dgtotales) comados.Parameters.AddWithValue("@combo1", ComboMostrador.SelectedValue.ToString) comados.Parameters.AddWithValue("@combo2", ComboTerminal.SelectedValue.ToString) comados.Parameters.AddWithValue("@FI", Fecha1.Value.Date.ToString("dd/MM/yyyy")) comados.Parameters.AddWithValue("@FF", Fecha2.Value.Date.ToString("dd/MM/yyyy")) adapta2.SelectCommand = comados adapta2.Fill(datavacio, "IntroduccionDeVentasAhora") 'MessageBox.Show(adapta2.Fill(datavacio, "IntroduccionDeVentasAhora").ToString) 'aquí cargo el datasource y el datamenber del datagrid DgEstima.DataSource = datavacio DgEstima.DataMember = "IntroduccionDeVentasAhora" DgEstima.Refresh() Catch MessageBox.Show("Compruebe si dispone de datos cargados") frmProgressbar.Close() End Try 'sumatodograntotal() conexion.Close() End Sub |
| |||
Respuesta: cargar rápido un grid yo no lo noto por que tengo un equipo potente, pero los clientes he visto que el programa carga lento y los grid lentísimossss....y tiene 2 gb de ram disco 500 gb y procesador alto |
| |||
Respuesta: cargar rápido un grid eeeeeeeeeeeeeeeeeeeeeeee super aqua...no te había leído...holaaaaaaaaaaaaaaaaa amigo....espero estés bien...me alegra leerte por el forrrooooooooooooooo :) |
| ||||
Respuesta: cargar rápido un grid wow es una consulta un poco cargadita.... SUM, GROUP BY... ORDER BY(Dentro del order un SUM), tu cliente tendrá demasiados registros? y si mas no me equivoco lo trabajas con un archivo access no ?
__________________ Internet es tener todo el conocimiento global a tu disposición. Desarrollo de Software - Ejemplos .Net |
| |||
Respuesta: cargar rápido un grid que quiere decir "si es una vista", y que ponga el query...?¿? no comprendo me lo explicas?, es que no se que pides que ponga...gracias |
| ||||
Respuesta: cargar rápido un grid ok, una vista es un query que reside en la base de datos y consultas a el query residente, o sea create view VAlgo as select c.nombre, e.empresa from cliente inner join empresa e on c.idempresa = e.idempresa luego la llamas Select nombre, empresa from VAlgo los indices son las llaves primarias de la tabla, as de cuenta, el indice es eso un indice, jajaja, no mira, es como un libro, antes de ir a leerte todo el libro, por un tema en especifico, mejor miras en el indice, ves la pagina y te vas a la pagina, resulta igual con las bases de datos, cuando creas una llave primaria por default se crea un indice sobre esa llave, tambien puedes crear tus indices pero eso es en las propiedades de la tabla. |
Etiquetas: |