PROBLEMA COM EOF E BOF

VENOMGZ 14/12/2010 14:12:07
#359528
eu entendi o problema, de fato era na query q eu mandava trazer apenas quando o verificador for 0

mas tem alguma forma de verificar se o recordset esta vazio para prevenir que de esse erro de bof ou eof antes?
JEISONANTONI 14/12/2010 14:42:56
#359532
sim, igual vc fez no primeiro if.

if not rim.eof then ---> essa linha verifica se a recordset está vazia. se retornar True está vazia, senao é pq trouxe registros

EOF - quando não há mais registros a frente da recordset ou seja no movenext

BOF - quando não há mais registros para tras da recordset ou seja moveprevious
VENOMGZ 14/12/2010 14:48:22
#359533
blz, valeu!!!

consegui aqui... obrigadão mesmo...

só mais uma duvida, tem como eu colocar algum comando para verificar se um campo existe sem dar erro?
JEISONANTONI 14/12/2010 15:18:08
#359540
nao entendi. q tipo de campo? de uma tabela?
VENOMGZ 14/12/2010 16:03:10
#359547
sim...

tipo, pra quando o programa iniciar, verificar no banco do access se um campo está presente, se não estiver, criar
JEISONANTONI 14/12/2010 16:24:03
#359552
bem vc pode ter um vetor com os nomes das tabelas e dos campos.

ex.:

tabela Produtos

vetProds(0) = [Ô]Chave[Ô]
vetProds(1) = [Ô]Descricao[Ô]
etc...

dai vc faz o seguinte

dimTabela as TableDef
dim campo as field

set tabela = db.tabledefs([Ô]Produtos[Ô])

for each campo in tabela.fields
for i = 0 to ubound(vetProds)
if ucase(vetProds(i)) = ucase(campo.name) then
tem_Campo = True
end if
next

if tem_campo = false then
Tabela.CreateField(vetProds(i), Tipo, 255) [ô][Ô]tipo[Ô] tipo do campo se é numérico, texto etc...
end if
next

obs.
esses exemplos que dei é usando o vb com o access e usando DAO. mas acredito q deve ser + ou - pos ai usando outras formas

espero ter ajudado
VENOMGZ 14/12/2010 16:36:05
#359554
blz velho, me ajudaram muito

muito obrigado pela atenção e pela força!
Página 2 de 2 [17 registro(s)]
Tópico encerrado , respostas não são mais permitidas