TDataSet

30/11/2005

0

Bom dia a todos

Tem como indexar um determinado campo da tabela diretamente no dataset, ao invez de usar o componente?

Exemplo:
quando clica na coluna do dbgrid os dados da grade ficam em ordem crescente de acordo com a coluna clicada, porem, quero por os dados em ordem na grade, mas nao pelos componentes(TTable, TQuery, TClientDataSet, Etc), e sim, diretamente no DataSet. Isso é possivel ?

desde ja agradeço
Ricardo


Ricardo Oliveira

Ricardo Oliveira

Responder

Posts

30/11/2005

Emerson Nascimento

rapaz... hoje eu estou meio devagar... não consegui entender a sua dúvida.

o que você quer dizer com ´diretamente no DataSet´?

TTable -> use índices
TQuery -> use a instrução SQL
TClientDataSet -> você pode usar tanto a instrução SQL, como criar índices ou ainda usar a propriedade IndexFieldNames


Responder

30/11/2005

Ricardo Oliveira

A verdade é a seguinte:
Criei um componente DBGrid com clique no titulo; bom, até ai normal.
porem, quero fazer uma funcao que ponha os registros em ordem usando diretamente o dataset dos registros e nao passando pelo componente que está vinculado ao datasource da grade !!!
por que ?!? veja bem, nunca vou saber qual componente o ´usuario programador´ irá usar para acessar a base de dados, certo ? então se eu trabalhar diretamente no DataSet dos registros, vou conseguir ordenar os dados independente do componente utilizado.

se nao consegui ser claro, tento explicar de outra forma.


Responder

30/11/2005

Ramms

só uma pergunta...
pq não no clientdataset ???

se pudesse ser pelo cds era só colocar no ontitleclick isso
DM.cds_seucds.IndexFieldNames := Column.FieldName;


Responder

30/11/2005

Emerson Nascimento

agora entendi... você deveria ter dito que precisa ordenar o Resultset e não o Dataset.

olha... nos componentes que eu já vi que possuem esse recurso é criado um dataset temporário (em memória) e o resultset original é copiado para esse memory dataset e, a partir daí, os dados são manipulados nele.


Responder

30/11/2005

Ricardo Oliveira

porque a dbgrid ficaria preso no clientdataset ! E se o dbgrid for usado por um programador que nao utiliza o clientedataset ?

é justamente isso que eu nao quero. quero deixar o dbgrid preparado para todos os componentes


Responder

30/11/2005

Ricardo Oliveira

mas vc seberia como fazer a ordenação dos dados independentemente do componente ?

como faço isso ?


Responder

30/11/2005

Emerson Nascimento

isso vai depender de como vc criará seu dataset temporário.


Responder

30/11/2005

Ricardo Oliveira

obrigado pela ajuda amigao

nem sei por onde começar,
tem alguma dica, exemplos, algum material ?

quebra essa, estou precisando mesmo,


Responder

30/11/2005

Emerson Nascimento

procure pelo componente cxGrid da suite DevExpress. essa grid faz exatamente o que você quer.


Responder

02/12/2005

Ricardo Oliveira

Muito obrigado pela dica, valeu mesmo...
Ricardo


Responder

02/12/2005

Ricardo Oliveira

baixei a package que vc citou mas na intalacao da o seguinte erro
package cxLibraryVCLD7 not found

existem varias, menos essa que é requerida
vc conhece um site expecifico para baixá-las ?
ou se vc tiver os arquivos e quizer me enviar !?!
adapternews@ig.com.br


Responder

02/12/2005

Odacir_z

Developer Express Inc.. QuantumGrid o pacote esta com este nome.. [b:aaf4952029]qgrid.v3.2.1.d6.exe[/b:aaf4952029]


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar