Visual Basic - Mensaje de Error

Life is soft - evento anual de software empresarial
 
Vista:

Mensaje de Error

Publicado por Karina (7 intervenciones) el 19/11/2007 02:31:30
Hola a todos:
Tengo el siguiente codigo en un boton del formulario llamado frmCierredecaja, lo que me hace es realizar una suma de un campo de una tabla de la base de datos.

datPrimaryRS.Recordset.Open "Select *from Ingresos where fecha='" & _frmCierredecaja.Text2.Text & "'", conn, adOpenStatic, adLockOptimistic
If datPrimaryRS.Recordset.RecordCount > 0 Then
Do While Not rs.EOF
suma = suma + datPrimaryRS.Recordset("Total_Monto")
datPrimaryRS.Recordset.MoveNext
Loop
End If
frmCierredecaja.Text3.Text = suma

Ahora viene el problema, cuando apreto el boton me salta un error diciendome que no se puede realizar la operacion si el objeto esta abierto, calculo que con objeto se debe referir al formulario. El tema que yo quiero realizarlo con el formulario abierto, alguien me puede decir cual es el error? - Muchas gracias 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:Mensaje de Error

Publicado por Llaverin (70 intervenciones) el 19/11/2007 09:20:29
Hola Karina:
"si el objeto esta abierto", el objeto se refiere, es con el que abres la base de datos, en tu caso es el datPrimaryRS. Significa, que antes de esa instrucción, has abierto el objeto y no lo has cerrado.

Revisa el codigo, y mira por donde pasa, y asi de esa manera, podrás cerrarlo, y ya no te dara ningun error.

Saludos
Ana
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:Mensaje de Error

Publicado por fede (189 intervenciones) el 22/11/2007 12:35:54
es como dice llaverin al objeto que hace alucion es el recordset osea datPrimaryRS
yo hago esto y siempre funciona

if datPrimaryRS.state=1 then datPrimaryRS.close ' aca lo que hago es comprobar si el recordset esta abierto y si es asi lo cierro

datPrimaryRS.Recordset.Open "Select *from Ingresos where fecha='" & _frmCierredecaja.Text2.Text & "'", conn, adOpenStatic, adLockOptimistic
If datPrimaryRS.Recordset.RecordCount > 0 Then
Do While Not rs.EOF
suma = suma + datPrimaryRS.Recordset("Total_Monto")
datPrimaryRS.Recordset.MoveNext
Loop
End If
frmCierredecaja.Text3.Text = suma
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