Fórum Erro na ordem dos Itens No DBGrid #395921

18/02/2011

0

Olá Srs.

Tenho uma aplicação desenvolvida no Delphi 7 e banco Firebird, para conexão com o banco de dados utilizo no dbexpres o SqlConection, SqlTable, dataSetProvidr e clientDataSet

Estou com o seguinte problema, quando monto uma venda e lanço os itens o sistema organiza direitinho EX:

venda codigo 20 item 1
item 2
item 3

até então tudo certo, posso fechar o sistema e abrir novamente q os itens continuam na ordem, ai digamos que depois de fechar e abrir o sistema novamente eu percebo que faltou um item, ai vou lá e lanço ele, este ultimo item fica na ordem certa tbém, mas caso eu feche o sistema e abra novamente o ultimo item lançado sai da ordem, ex:

venda codigo 20 item 1
item 4
item 2
item 3

a tabela q armazena os itens esta ligada a tabela orçamento pelo ClientDataSet da seguinte forma:

IndexFieldsName=CODORCAMENTO
MasterFields=CODORCAMENTO
MasterSource= DS_Orcamentos   No banco de dados na tabela orcamentos a chave primaria é codorcamento e na tabela itensvenda a chave primaria é iten, codorcamento.


se alguém puder ajudar eu agradeço
Rogsystem

Rogsystem

Responder

Posts

18/02/2011

Marcelo Letteri

Cara, vc já tentou criar um indice composto e inicializar ele no show do form. Exemplo:ClientDataSet1.IndexName:='NOME DO INDICE';
Responder

Gostei + 0

18/02/2011

Rogerio

Bom como eu não utilizo CDS pode ser que eu esteja falando besteira. Será que o select esta ordenando por um outro campo? depois quando você visualiza na grid os dados não ficam ordenado pelo o campo código. Boa Sorte!
Responder

Gostei + 0

19/02/2011

Rogsystem

Marcelo Lobão não deu certo, mas talvez eu esteja fazendo errado pois nunca usei o indexname, mas quando preencho o indexname ele desabilita o IndexfieldsName desta forma desfaz a ligação entra a tabelas das vendas e dos itens das vendas
Responder

Gostei + 0

19/02/2011

Rogsystem

Olá Srs,   Resolvi o problema   coloquei em IndexFieldsName=CODORCAMENTO;NUMITEM
Responder

Gostei + 0

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

Aceitar