Fórum Demora para atualizar #369612
04/04/2009
0
Uso Firebird e Mercury para conexão com o banco de dados. Tenho uma tela de orçamentos, onde o cabeçalho do orçamento esta ligado a um MDODataSet e os itens do orçamento ligado a outro MDODataSet.
Depois que crio um novo orçamento, e preciso voltar a navegação nos registros de orçamento colocar na posição do orçamento que criei.
Faço assim:
DM.MDS_ORCAM.Close;
DM.MDS_ORCAM.SelectSQL.Clear;
DM.MDS_ORCAM.SelectSQL.Add(´select * from ORCAM´);
DM.MDS_ORCAM.Open;
DM.MDS_ORCAM.Locate(´ONUM´,onum_aux,[]);
onde onum_aux é o numero do orçamento que criei, porém demora cerca de 8 segundos até voltarem os registros dos itens.
Entre itens e venda há uma relação mestre detalhe.
Por que essa demora?
Grato.
Fonsenix
Curtir tópico
+ 0Posts
05/04/2009
Dbergkamps10
kra se vc estiver usando em redes, verifique se no caminho esta o nome da maquina, se estiver coloque o ip, pode ser q fique mais rapido.
Att
Dalton
Gostei + 0
05/04/2009
Picyka
passando o pedido la em cima no sql
fazendo um where
tenho certeza que as duas formas terá resultado.
Gostei + 0
05/04/2009
Fonsenix
Então Dalton, já uso com o ip, valeu pela dica.
Picyka, infelizmente acho que o MDO não tem a função FindKey, e quanto buscar somente o registro que inseri não dá certo porque assim que o usuário acabar de inserir, eu devo deixar os registros disponiveis para consulta onde o usuario com as setas move-se pelos registros.
Gostei + 0
05/04/2009
Dbergkamps10
Verifique entao se o MDO tem a funçao Locate. Funciona quase da mesma forma:
MDO.Locate(NomedoCampo,NomedaChave, [lopartialkey]);
nao esquece de colocar na clausula uses a unit DB.
Espero ter ajudado.
Att
Dalton
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)