Reorganizar DBGrid sem abrir/fechar o IBDataset

Firebird

06/03/2005

Olá pessoal, o meu problema é o seguinte:
Tenho uma tabela firebird 1.5 relacionada a outra tabela mestre da seguinte forma:
TABELA MESTRE: RECEITA (INDICE: CODIGO)
TABELA DETALHE: PROCESSO (INDICE: CODIGO, ORDEM)
TABELA DETALHE: ITENS (INDICE: CODIGORECEITA, ORDEM PROCESSO, CODIGOITEM)
O meu problema é o seguinte:
Preciso que o usuário escolha a Ordem correta dos processos só que usando IBDataset o DBGrid que eu uso para entrada de dados não fica ordenado (Sendo que no IBDataset já está configurada na SELECT SQL a opção ORDER BY ´ORDEM´).
O problema é que o campo ORDEM é uma chave e não pode ficar e queria que o usuário digitasse o número da ordem e automaticamente no grid o registro fosse para a posição correta. Só que o maior problema é que não posso abrir e fechar o dataset pois isso ´commitaria´ a minha transação e não posso deixar que isso aconteça já que é uma parte de cadastro.

Obrigado à todos pela atenção


Alexsjn

Alexsjn

Curtidas 0

Respostas

Afarias

Afarias

06/03/2005

A melhor forma para tratar questões de ordenação, filtro e outros recursos de registros em Buffer, é usar tabelas de memória.

Existem vários componentes por ai, e no Delphi vc conta com o ClientDataSet q é ótimo.


T+


GOSTEI 0
Tlima

Tlima

06/03/2005

faça a ordenação no IBDataSet mesmo, e use o CommitRetaning, como isso a IBDataSet continua aberta do jeito q estiver.


GOSTEI 0
POSTAR