Visual Basic - Error "tonto" en ADODC, URGENTE!!

Life is soft - evento anual de software empresarial
 
Vista:

Error "tonto" en ADODC, URGENTE!!

Publicado por JorgeChasis (88 intervenciones) el 03/12/2002 13:11:15
No se porque pero al poner esto en el Form Load del formulario me da este error:

Error '91': Variable de tipo Object o la variable de bloque With no esta establecida.

Y no se de que es si lo unico que hago es:

If adodcasiento.Recordset.RecordCount <> 0 Then
adodcasiento.Recordset.MoveLast
valordeid = adodcasiento.Recordset.Fields("ID2").Value
valordeid = valordeid + 1
Else
valordeid = 1
End If

Lo curioso es que llevo con ese codigo ya tiempo y no me dio error, y ahora al abrir el proyecto si que me lo da... Haria algo? Las conexiones las he comprobado a ver si era de eso pero no!!! Toy flipando y cabreadisimo... manda huevos!!! A ver si me podeis echar una manito con ello. Saludos a todos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Error

Publicado por hendrixo (248 intervenciones) el 03/12/2002 18:34:15
MIra en que linea te salta el error pero puede ser que el nombre del campo no se llame asi.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error

Publicado por JorgeChasis (88 intervenciones) el 03/12/2002 19:24:52
Me salta en la linea

if adodcasiento.recordset.recordcount <> 0 then

El campo es el correcto. Ni siquiera entra ahi... no se a que es debido, y es que lo hice paso a paso y nada de nada... me da error ahi y se va al carajo. Espero que me podais ayudar. Muchas Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error

Publicado por Esperanza (17 intervenciones) el 05/12/2002 09:38:03
Hola, el error puede ser que no te reconozca el recordset porque no tenga registros o algo así. A continuación te pongo un ejemplo de como hago yo el proceso (es un trozo de un programa mío), no usa ADO pero creo que podrás adaptarlo:

Public Sub añadir_Identificador()
' Hago un Querydef con el campo Identificador de la tabla , lo ordeno de mayor a
' menor y me situo en el primer registro (este valor será el mayor). Luego le sumo 1.
Dim base As Database
Dim registro As Recordset
Dim miquery As QueryDef
Set base = OpenDatabase("Nombre tabla.mdb")
Set miquery = base.CreateQueryDef("")
With miquery
.SQL = "select Identificador from [No Urbanizable] order by Identificador Desc"
Set registro = .OpenRecordset()
End With
Else
With miquery
.SQL = "select Identificador from [Tabla] order by Identificador Desc"
Set registro = .OpenRecordset()
End With
End If
If registro.BOF Then
numero_registro = 1
Else
registro.MoveFirst
numero_registro = registro!Identificador + 1
End If
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error

Publicado por isma (96 intervenciones) el 05/12/2002 13:36:27
Hola Jorge, si el error te está dando en la instrucción:
If adodcasiento.Recordset.RecordCount <> 0 Then
mira a ver como estás declarando el recordset. Si lo has declarado como: adOpenDinamyc o como adOpenForwardOnly, creo que el recordcount no te va a funcionar. Quizá debas declararlo como adOpenKeyset

Prueba a ver y suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error

Publicado por Bismarck Pineda (18 intervenciones) el 07/01/2003 18:20:29
Hola, no se si resoviste ya tu problema, a mi me ha pasado igual y lo he resuelto colocando la propiedad refresh al control de adodc.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar