|
|
||||||
|
#1
|
|
|
|
|
Buenos días a todos como es ya costumbre vuelvo a este foro un día
más, aun no soluciono del todo mis problemas con los reportes, aunque he ido aclarando un poco la situación. Tengo varios reportes algunos con parámetros y otros sin elllos. Los reportes que tienen parámetros no me ocasionan ningún problema se actualizan y se presentan las veces que lo desee, los que tienen una consulta sin parámetros "Select * >From MiTabla" son los que me están haciendo la vida difícil, se presentan la primera vez correctamente, pero si intento abrirlos en una segunda ocasión me presenta error diciendo que se esperaba una consulta de tipo select, insert, update, etc. Todos los formularios presentan la siguiente sintaxis DataEnvironment1.Base_Datos_Reportes.Open' abro el data environment Listar_Clientes.Show y en el reporte en el evento terminate Private Sub Datareport_Terminate() 'Cerramos el recordset en el evento terminate del reporte ' Previa verificación del estado de éste para evitar errores ' en tiempo de ejecución With DataEnvironment1.rsLista_Clientes If .State = adStateOpen Then .Close DataEnvironment1.Base_Datos_Reportes.Close 'cerramos End If End With End Sub Una pregunta adicional que no me han podido brindar respuesta es que necesito saber como cerrar el espacio de trabajo en ADO, porque en DAO lo hacía de la siguiente manera DBengine.Workspace(0).close pero en ADO no funciona, lo necesito porque ya verifiqué que las conexiones al dataenvironment se cierran todas correctamente sinembargo cuando salgo del programa necesito obligatoriamente hacer un respaldo de la base de datos y me encuentro con una conexión abierta, por lo que supongo que es el espacio de trabajo el que queda abierto ya que lo mismo me sucedía en DAO. Desde ya les agradezco toda su ayuda. |
|
|
|
#2
|
|
|
|
|
Hola Frank:
En ADO no existe el concepto de Workspace. Lo que está ocurriendo es que el entorno de datos (Dataenvironment1) sigue manteniendo la conexión abierta. Solución: Antes de hacer el respaldo de la base de datos escribí la siguiente instrucción: 'Cerrar la conexión With Dataenvironment1 If .Nombredelaconexón.State = adStateOpen Then .Nombredelaconexón.Close End If End With 'Eliminar el objeto de la memoria Set Dataenvironment1 = Nothing Así es como se cierra una conexión del entorno de datos. Ojo, si existen otras conexiones abiertas de otros puestos de trabajo, de todos modos no vas poder hacer backup porque windows impide copiar un archivo abierto. Si aún así queres hacer un respaldo (con la base abierta) podes hacerlo desde DOS a través de un archivo por lotes. Saludos. |
|
|
| Temas Similares | |
| Datareport con envio de Parametros Como hacer para mostrar un Reporte con envio de Parametros. En un formulario deseo ingresar un Periodo, por ejemplo 04/2004 y deseo ke me muestre en mi Reporte todos los... |
|
| DataReport con parametros Intento crear un reporte el cual sea delimitado por un la seleccion que se haga en un combo de un formulario por ejemplo: Si selecciono CESAR ISLAS en un formulario al... |
|
| como pasarle parametros a un datareport Hola grupo, otra vez preciso de vuestra ayuda. Tengo un datareport asociado a un comando y le paso los parametros que preciso sin problemas, pero lo que quiero es saber como... |
|
| Parametros con datareport, Como? Amigos disculpen la molestia, alguno de ustedes tiene algun link o codigo de ejemplo para parametrizar un datareport. En un form1 tengo 2 textbox uno con fecha inicial y... |
|
|
La franja horaria es GMT. Ahora son las 04:06. | Privacy Policy
|