Usuário com melhor resposta
Tabela Vinculada SQL Server

Pergunta
-
Olá pessoal,
Seguinte, eu estou com um probleminha chato, mas talvez alguém já passou por isso.
Eu tenho um formulário em modo folha de dados, com dois controles combobox.
A lista do segundo combobox é preenchida conforme a escolha do primeiro combobox.
Até aí blz.
O que ocorre é o seguinte. Toda vez que eu clico no segundo combobox (evento Enter) para carregar a lista
conforme a escolha do primeiro combobox, ao passar o mouse nos outros registros do formulário em modo folha
de dados, os valores se apagam (visualmente), exceto os relacionados a lista do primeiro combobox.
Percebi que isso só ocorre em tabelas vinculadas ao Microsoft SQL Server. Fiz um teste colocando as tabelas
no próprio Access, e esse "bug" não ocorre.
Gostaria de saber se isso tem solução!
Caso alguém não tenha entendido bem, façam o download de um exemplo que eu montei.
http://rapidshare.com/files/25657304/FolhaDados.mdb.html
Só peço para exportar as tabelas para o SQL Server, e vinculá-las com o mesmo nome para as consultas
funcionarem.
sexta-feira, 13 de abril de 2007 01:00
Respostas
-
O campo não precisa estar vinculado ao SQL Server para gravar. Pode estar vinculado ao Access e depois gravado no SQL Server por meio de uma Procedure. Evidentemente não é a melhor arquitetura, mas se realmente precisar resolver o problema na interface, pode ser uma alternativa.
Particularmente acho que não compensa muita manipulação de dados em razão do efeito visual, procuraria resolver mudando a interface.
sábado, 14 de abril de 2007 02:31Moderador
Todas as Respostas
-
Oi Kleber,
eu entendi o problema, pois também uso o recurso do Enter/Exit para mudar o RowSource de combos dependentes em formulários contínuos. Nunca, porém, fiz com tabelas vinculadas do SQL Server.
Na minha opinião o certo é justamente "apagar" o valor dos outros registros, já que a origem de linha traz um conjunto de registros que não os inclui, e o que seria "bug" (que felizmente existe) é o Access não atualizar a tela, mantendo todas as linhas preenchidas.
O vínculo com o SQL deve fazer com que a tela se atualize, o que no seu caso é ruim.
Não sei bem o que sugerir, mas experimente alimentar a combo com uma consulta Pass-Through em vez de fazer SELECT direto na tabela vinculada.
Outra alternativa seria carregar os dados numa tabela local do Access (no próprio front-end).
sexta-feira, 13 de abril de 2007 01:53Moderador -
Olá Luiz,
Obrigado pelas sugestões, porém não consegui resolver meu problema.
Percebi que o problema não é nos dados da lista que são carregados, mas sim no controle que está vinculado a um campo da tabela no SQL Server. Ou seja, mesmo eu criando a tabela da lista no Access, o fato do resultado ser gravado em uma tabela do SQL Server é que ocorre este problema.
Como eu obrigatoriamente preciso gravar isso no SQL Server, e este campo precisa estar vinculado, eu infelizmente não vou conseguir resolver este problema.
Mas mesmo assim, agradeço pela atenção e ajuda.
Abs,
Klebersexta-feira, 13 de abril de 2007 15:32 -
O campo não precisa estar vinculado ao SQL Server para gravar. Pode estar vinculado ao Access e depois gravado no SQL Server por meio de uma Procedure. Evidentemente não é a melhor arquitetura, mas se realmente precisar resolver o problema na interface, pode ser uma alternativa.
Particularmente acho que não compensa muita manipulação de dados em razão do efeito visual, procuraria resolver mudando a interface.
sábado, 14 de abril de 2007 02:31Moderador -
OK Luiz, obrigado pelas dicas!!!
Abs,
Kleberquarta-feira, 18 de abril de 2007 16:36