ORDERNAR CAMPO DATA EM UM MSFLEXGRID

FERRUBIM 21/06/2016 10:09:10
#463836
Tenho um MSFLEXGRID (Vb6) com um campo Data, porém ao classificar clicando no cabeçalho fica por exemplo:
01/06/2016
01/05/2016
02/06/2016 ou seja,parece que classifica pelo dia... alguem sabe como fazer para que seja classificado por dia,mes,ano ??/ abaixo como estou usando:

Private Sub GRDTABLE_MouseUp(Button As Integer, Shift As Integer, x As Single, Y As Single)
If GRDTABLE.MouseRow <> 0 Then Exit Sub
SortByColumn GRDTABLE.MouseCol
End Sub

Private Sub SortByColumn(ByVal sort_column As Integer)

GRDTABLE.Visible = False
GRDTABLE.Refresh


GRDTABLE.col = sort_column
GRDTABLE.ColSel = sort_column
GRDTABLE.row = 0
GRDTABLE.RowSel = 0

If m_SortColumn <> sort_column Then
m_SortOrder = flexSortGenericAscending
ElseIf m_SortOrder = flexSortGenericAscending Then
m_SortOrder = flexSortGenericDescending
Else
m_SortOrder = flexSortGenericAscending
End If
GRDTABLE.Sort = m_SortOrder

If m_SortColumn >= 0 Then
GRDTABLE.TextMatrix(0, m_SortColumn) = Mid$(GRDTABLE.TextMatrix(0, m_SortColumn), 3)
End If

m_SortColumn = sort_column
If m_SortOrder = flexSortGenericAscending Then
GRDTABLE.TextMatrix(0, m_SortColumn) = [Ô]> [Ô] & GRDTABLE.TextMatrix(0, m_SortColumn)
Else
GRDTABLE.TextMatrix(0, m_SortColumn) = [Ô]< [Ô] & GRDTABLE.TextMatrix(0, m_SortColumn)
End If

GRDTABLE.Visible = True
End Sub
ACCIOLLY 21/06/2016 10:20:47
#463839
Você não consegue classificar diretamente no SQL? Pra que quebrar tanto a cabeça uma vez que o SQL faz isso uzando a cláusula ORDER BY ?
FERRUBIM 21/06/2016 10:25:09
#463840
sao 18 campos no cabecalho...se para cada um eu for fazer um sort já viu o tamanho do comando ...
ACCIOLLY 21/06/2016 10:44:30
#463846
Talvez seja apenas uma configuração nas propriedades do objeto. Na plataforma .Net agente pode especificar o tipo de dado pra cada coluna de uma grid. Se for data agente coloca como Date. No seu caso, se o FlexGrid tiver essas configurações nas propriedades, provavelmente esse campo vai estar como String e não Date
Faça seu login para responder