Programación General > Bases de Datos

 Error Al Cerrar Ventana

(1/2) > >>

kike_monarcas:
Hola. Estoy realizando una aplicación que manipula los registros de una base de datos, para lo cual, al momento de registrar un artículo en almacén, presento al usuario una ventana emergente que contiene un DataGrid donde se describen los artículos que se pueden registrar en base a una lista de catálogos existentes. Necesito que al presionar la tecla Enter sobre el DataGrid de la ventana emergente retorne los datos al formulario en que se procesa el registro. Sin embargo, al presionar Enter me aparece el error de que "la instrucción xxx hace referencia a la memoria. No se puede read... Aceptar/Cancelar". Más sin embargo cuando cierro la ventana con Alt F4 funciona perfectamente. Estoy utilizando objetos ADODB.Recordset y ADODB.Command para realizar las consultas a la base de datos.

Espero que puedan ayudarme, un saludo y gracias por sus comentarios.

LeGatoRojo:
jejejejej, creo que necesitamos algo de codigo para ver en que podemos ayudar  :P

kike_monarcas:
Bien. En un formulario, el primero que aparece, hay un campo de texto en el cual el usuario coloca una clave, por ejemplo 1502. En el mismo formulario tengo una función que se encarga de establecer la instrucción sql de búsqueda...


--- Código: Text --- // Parte de frmRegistrarPrivate Function buscarArticulosEnCatalogo(valor As String)    If resultset.State = adStateOpen Then        resultset.Close    End If    Select Case valor        Case "XXX"            With comando  // Variable global                .ActiveConnection = sentenciasSQL.conexion // Conexion a la bdd                .CommandText = "SELECT * FROM XXX where Clave = '" & cmpClave.Text & "'"            End With            With resultset  // Variable global                .CursorType = adOpenKeyset                .LockType = adLockOptimistic                .Open comando            End With        // Los otros casos son similares    End Select    frmBusqueda.Show vbModal  // Es es el formulario emergente    resultset.CloseEnd Function  
Dentro del formulario frmBusqueda solo aparece solamente un DataGrid en el que se coloca el resultado de la búsqueda, y el código siguiente...


--- Código: Text --- Private Sub dtgArticulos_KeyPress(KeyAscii As Integer)    If KeyAscii = 13 Then        Select Case formularioDestino             //.. El Select Case lo utilizo porque este formulario es llamado por varios formularios                frmRegistrar.cmpColor = dtgArticulos.Columns("Color").Text                frmRegistrar.cmpMaterial = dtgArticulos.Columns("Material").Text                frmRegistrar.cmpTalla = dtgArticulosColumns("Talla").Text                frmRegistrar.cmpPrecio = dtgArticulosColumns("PrecioVenta").Text                frmRegistrar.cmpFechaRegistro.Text = Format(Date, "dd/mm/yyyy")        End Select        Unload Me  // Aqui quiero realizar el Unload Me pero causa el  error     End IfEnd Sub Private Sub Form_Load()    Set dtgArticulos.DataSource = resultset  // Esta variable es global    dtgMarcas.Columns("Color").Width = 1500    dtgMarcas.Columns("Material").Width = 1500    dtgMarcas.Columns("Talla").Width = 1500    dtgMarcas.Columns("Precio").Width = 1500    dtgMarcas.Columns("PrecioVenta").Width = 1500End Sub  
Y el error no se produce cuando cierro la ventana con Alt F4.

ArKaNtOs:
podrias decirnos que error te marca y si te selecciona alguna linea en especial?

kike_monarcas:
El error es el siguiente:

La instrucción en "0x24ec4e80" hace referencua a la memoria en "0x00000054". La memoria no se puede "read"

Haga clic en Aceptar para finalizar el programa
Haga clic en Cancelar para depurar el programa

Aceptar/Cancelar

Cuando le doy Aceptar finaliza la aplicación, pero si le doy depurar abre MS V C++ y me da el siguiente error:

Unhandled exception in VB6.exe (MSDATGRD.ocx) 0xC0000005: Access violation.

En la ventana de VB no se marca ninguna línea.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa