MSFLEXGRID - SQL

ALVEAR 13/11/2009 11:08:46
#327627
Bom dia colegas!

Possuo um FlexGrid com a seguinte string SQL para carrega-lo:

SELECT cadOcor.Codigo, cadprococor.data, cadprococor.Ocorrencia, cadprococor.idProcOcor
From cadocor, cadprococor
where cadocor.idOcorrencia = cadprococor.idOcorrencia
and cadprococor.idProcesso = rsProc.Fields([Ô]idProcesso[Ô]).Value
ORDER BY cadprococor.Data[Ô]

Esta ordenando por data em ordem crescente, isso deve continuar, mas tenho que trazer o registro com a ultima data para a primeira linha do meu FlexGrid, e continuar ordenando por data crescente os demais registros.

Isso é possivel?

Agradeço a atenção e ajuda de todos!
Tenham um bom serviço e bom dia!
EDERMIR 13/11/2009 11:20:00
#327631
Através de código sim. A não ser que você DUPLIQUE o banco de dados.
MARCELO.TREZE 13/11/2009 11:21:18
#327632
so mude isto na query

ORDER BY cadprococor.Data DESC

e pronto

ALVEAR 13/11/2009 11:32:51
#327635
Então colegas,

Tenho que continuar trazendo em ordem crescente as datas, é somente a ultima data que tenho que trazer para a primeira linha.
ALVEAR 13/11/2009 11:45:56
#327641
Não adianta [Ô]ORDER BY cadprococor.Data DESC[Ô], pois ira trazer todas as datas em ordem decrescente, e não é esse meu objetivo, preciso que venham em ordem cresce, e SÃ’ A ULTIMA DATA, venha para a primeira linha, destacada das outras.
MARCELO.TREZE 13/11/2009 12:03:35
#327646
faz o seguinte então preencha o flexgrid a partir da segunda linhas, depois copie a ultima linha para primeira

poste como vc está fazendo para preencher o grid
EDERMIR 13/11/2009 12:06:43
#327647
ALVEAR.
Se você quiser utilizar código para povoar o grid, então deverá fazer 02 selects:


Para os dados:
SELECT cadOcor.Codigo, cadprococor.data, cadprococor.Ocorrencia, cadprococor.idProcOcor 
From cadocor, cadprococor
where cadocor.idOcorrencia = cadprococor.idOcorrencia
and cadprococor.idProcesso = rsProc.Fields([Ô]idProcesso[Ô]).Value
ORDER BY cadprococor.Data[Ô]


Para a primeira linha:
SELECT max(cadprococor.data) as DATAMAIOR, cadOcor.Codigo, cadprococor.data, cadprococor.Ocorrencia, cadprococor.idProcOcor 
From cadocor, cadprococor
where cadocor.idOcorrencia = cadprococor.idOcorrencia
and cadprococor.idProcesso = rsProc.Fields([Ô]idProcesso[Ô]).Value
ORDER BY cadprococor.Data[Ô]


Depois deverá juntar os dois selects para criar a tabela conforme seu critério.

Se a intenção é UM único select, então você pode criar um campo numérico sequencial e numera-lo a cada atualização. Será um pouco complexo mas o resultado é bom.
ALVEAR 13/11/2009 13:44:51
#327667
Consegui!

[Ô] ORDER BY cadprococor.Data DESC limit 1[Ô]

Alguem sabe como deixar somente a primeira linha da FlexGrid em negrito?
ROBIU 13/11/2009 13:55:13
#327669
Resposta escolhida
Seria assim?
    Dim A As Integer
For A = 0 To Grid.Cols - 1
Grid.Col = A
Grid.Row = 1
Grid.CellFontBold = True
Next A
Tópico encerrado , respostas não são mais permitidas