USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Com Access, DAO ou ADO
delSF
SANTO ANDRÉ
SP - BRASIL
Postada em 18/03/2005 10:44 hs         
Oi! pessoal!! blz?
 
Ontem eu lí um artigo aqui no Vbweb dizendo que a DAO é muito ultrapassada e é melhor usar ADO, mas e se eu estiver usando banco de dados Access? fale a pena usar ADO?, é que eu tenho o seguinte problema:
 
Eu preciso retornar o conteudo de um campo sem ter dado Update, e o ADO nao permite isso, exemplo:
 
tenho um campo autonumeração e tenho que exibilo na tela ou para impressao,
 
tabela.addnew
xVariavel = tabela![codigo]
tabela![nome] = txtNome
tabela.Update
 
usando DAO eu consigo armazenar o conteudo de tabela![codigo] sem ter dado update, mas com ADO da um erro de campo nulo, pq. o tabela![codigo] ainda esta em branco, poderia localizar o registro novamente, mas se estiver em rede fica dificil localizar o mesmo registro pq. alguem ja poderia ter gravado outro simultaneamente, ja tentei usar o bookmark mas nao consegui...
 
eu faço isto pq. ja tive o problema de duplicação de codigos, eu criei uma tabela separada para contagem de codigos sequenciais, mas quando dois ou mais usuarios gravavam ao mesmo tempo era gravado as vezes o mesmo codigo para dois ou mais...
 
o que eu poderia fazer?
 
Obrigado
 
 
 
 
 
     
ghost_jlp
Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 21/03/2005 01:57 hs            
acho q vc abrindo a tabela com o recordset com o LockType = adLockOptimistic por exemplo vai fazer o q vc quer... veja estes links pra ver se ajuda:
 
 
t+
TÓPICO EDITADO
   
Elieser Topassi
Pontos: 2843 Pontos: 2843
SÃO JOSÉ DO RIO PRETO
SP - BRASIL
Postada em 21/03/2005 13:01 hs            
Realmente,
 
Abrindo a tabela como AdLockOptimistc vc trava o acesso para outro usuário nao gravar os registros q vc tem aberto... mas so vai funcionar se vc usar campo Numerico no Access e controlar os codigos pela sua aplicação. Se usar o Autonumeração, vai dar o mesmo erro, pq o ADO so vai solicitar a criação de um novo codigo ao access no momento do Update.
 
Já tive esse problema, vou descrever minha solução:
 
Meu campo codigo era Autonumeração. Eu precisava exibir o numero antes de gravar o registro. Aí tava o meu problema: o ADO nao retornava o codigo antes de gravar. Como resolvi? Simples. Criei a tabela no access sem restrições de conteudo. Com o ADO eu abria um novo registro, e dava update com ele em branco. Assim gravava somente o Codigo Autonumeração. Apos o update, eu abro o registro para edição, e então permito o usuario gravar os dados que quizer. Assim, na hora que eu abro para edição, posso mostrar o codigo para o usuario. Ah, o usuario nao precisa saber tudo o que foi feito. Para o operador do sistema, apenas estou gravando um registro novo.
 
Acho que isso é mais ou menos o seu problema. Se nao for, explique-se melhor...
QQ coisa, posta ou manda um e-mail... tb estou no MSN
 
Abraços...


Elieser Carlos Topassi
Analista de Sistemas - Desenvolvedor VB/ASP/.Net

e-mail/msn:
elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil
_____________________________________________________
Emoções "O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)

     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página