Visual Basic - Ordenar un DataGrid

Life is soft - evento anual de software empresarial
 
Vista:

Ordenar un DataGrid

Publicado por Juan (12 intervenciones) el 23/12/2002 20:01:53
Por favor si alguien puede ayudarme, tengo que ordenar un DataGrid y no se como hacerlo. quiero ordenarlo por distintos campos haciendo click en el encabezado.
Tengo una Tabla Acces con Art, Desc, Precio, etc, quiero que la hacer click en el encabezado de la columna Art. me lo ordene por artículo, al hacer click en Desc, me lo ordene alfabéticamente por descripción y asi por cada uno de los campos de la tabla. Si alguién me puede ayudar se lo voy a Agradecer mucho
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ordenar un DataGrid

Publicado por Rodolfo del Peru (454 intervenciones) el 25/12/2002 17:40:14
Para ordenar n DataGrid, debes usar el evento "HeadClick" como sigue:

Private Sub Grid_HeadClick(ByVal ColIndex As Integer)
Static FlagAscendDescen As Boolean
Dim sqlAscend As String
Dim sqlDescend As String

sqlAscend = Grid.Columns(ColIndex).DataField & " ASC"
sqlDescend = Grid.Columns(ColIndex).DataField & " DESC"
Grid.ClearSelCols

FlagAscendDescen = Not FlagAscendDescen

If FlagAscendDescen Then
rsAFP.Sort = sqlAscend
Else
rsAFP.Sort = sqlDescend
End If
End Sub

Saludos desde Lima
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Se requiere un objeto

Publicado por jlcastro (114 intervenciones) el 25/12/2002 19:02:45
Hola Rodolfo Este e utilizado este codigo del foro,
Pero me da un error
(Se requiere un objeto en la linea que te indico mas abajo)
Saludos y feliz Navidad.

Private Sub DataGrid2_HeadClick(ByVal ColIndex As Integer)
Static FlagAscendDescen As Boolean
Dim sqlAscend As String
Dim sqlDescend As String

sqlAscend = DataGrid2.Columns(ColIndex).DataField & " ASC"
sqlDescend = DataGrid2.Columns(ColIndex).DataField & " DESC"
Grid.ClearSelCols

FlagAscendDescen = Not FlagAscendDescen

If FlagAscendDescen Then
rsAFP.Sort = sqlAscend ( EN ESTA LINEA )
Else
rsAFP.Sort = sqlDescend
End If
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar