Como cerrar la base de datos abierta en un datareport

Tengo desarrollado un programa en el que me encuentro con un problema. Al lanzar un listado (creado a través de un datareport y un dataenviroment) como es normal la base de datos se abre. El problema es que cuando cierro dicho listado me gustaría que esa base de datos se cerrase, ya que si abro la carpeta donde esta almacenada se ve como la base de datos sigue abierta.
Necesito esto ya que en uno de los procesos del programa esa base de datos se cambia de nombre y al estar abierta (en el caso de que se haya lanzado un listado antes) da un error debido a que no puede cambiar el nombre a algo que esta abierto.

1 respuesta

Respuesta
1
El recordset, ciérralo, recordset. Close y la conexión cnn. Close
He intentado poner.
Dataenvironment1.recordser.close pero no aparece el close.
¿Como deberia cerrarlo?
Gracias anticipadas
Cierra la conexión
Buenos Días.
He puesto en el terminate del datareport
DataEnvironment2.rsCommand1.Close
Para cerrar la conexión pero esto no hace nada ya que la base de datos sigue abierta. Esto ya lo había intentado antes y nada
Gracias
DataEnvironment2 = vbnull
No permite igualar el dataenvironment2 a vbnull al finalizar el datareport ya que da un error en el que indica " el objeto no permite esta propiedad o método"
Lo cierto que es que la tecnología que usas es bastante antigua, más que solo hasta 2010 hay soporte para VB6 que es lo que usas.
Si te dice que la BD esta abierta utiliza ese mismo dataenvironment para hacer lo que ue necesitas, solo cambias la sentencia o instrucción SQL a ejecutar que le pasas al recordset
Utilizo el Visual Basic 6.
No es el mismo proceso en el que me da el error. No se si me he explicado bien.
Te comento y sino para la próxima ya cierro la pregunta.
Tengo hecho un programa completo en el que se introducen clientes, puedes realizar distintos procesos y distintos listados y hay una zona que para funcionar necesita cambiar el nombre la base de datos utilizada mediante el proceso Name.
En cualquier momento puedo utilizar por ejemplo la gestión de clientes que es un formulario creado por mi en el cual abro y cierro la base de datos manualmente y seguidamente utilizar el otro proceso que que cambia el nombre a la base de datos y funciona correctamente.
El problema me lo encuentro cuando ejecuto un listado en el cual es el dataenvironment el que abre la base de datos ya que cuando cierro el datareport dicha base de datos permanece abierta, en ese momento si da la casualidad de que se realiza el proceso de cambiar la base de datos de nombre es cuando falla el programa ya que no se puede cambiar el nombre debido a que permanece abierta
¿Aunque cierres el formulario en el cual esta el dataenviroment permaneces abierta la conexión a la base de datos?
Porque si cierras el formulario en el cual esta el dataenviironment, debería cerrarse la base de datos.
Lo otro es que antes de hacer el proceso, verifiques si la base de datso esta abierta, y si lo esta, cerrarla.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas