Hice hace un par de meses un programa en VB con Acces y he tenido que formatear el equipo (Con una copia de seguridad vieja) en la que no tenia los archivos necesarios de un programa que habia creado.
La cosa está en que estoy haciendola nuevamente desde 0 y estoy teniendo problemas.
Estoy utilizando VB.NET 2008 Express con una base de datos en Acces a la cual estoy accediendo correctamente.
Después de hacer la conexión a la base de datos y al intentar listar el contenido de la misma me da el siguiente error:
Cita:
Pongo el código que tengo en la Clase:Execute Reader: la propiedad Connection no se ha inicializado
Cita:
El código del Form:Imports System.Data.Odbc
Imports System.Data.OleDb
Imports System.Data
Imports System
Public Class CAkotei
Private conexionBD As OleDb.OleDbConnection
Private sql As OleDb.OleDbCommand
Private datos As OleDb.OleDbDataReader
Public lista As String
Public UsuariosAKO
Public PassAKO
Public PcAKO
Public RAMAKO
Public EquipoAKO
Public MAILAKO
Public APEAKO
Public IMPAKO
'Constructor de la clase
Public Sub conectar()
Dim ruta As String
Try
sql = New OleDb.OleDbCommand
sql.Connection = conexionBD
ruta = Application.StartupPath & "\bdDatabase.mdb"
'MsgBox(ruta)
'conexionBD = New OdbcConnection("dsn=RedUtility;uid=root;pwd=pass;" )
conexionBD = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLED B.4.0; Data Source=" & ruta)
conexionBD.Open()
MsgBox("Conexión establecida correctamente con Akotei")
Catch ex As Exception
MsgBox("No se ha podido conectar a la base de datos")
End
'MsgBox(ex.Message)
'End
End Try
End Sub
Public Sub Listar()
MsgBox("LISTAR")
Try
sql.CommandText = String.Format("Select * from AKOTEI")
datos = sql.ExecuteReader()
Catch ex As Exception
MsgBox(ex.Message)
End
End Try
End Sub
Public Function ListarCombo() As Boolean
MsgBox("ListarCombo")
sql.CommandText = String.Format("Select * from AKOTEI")
datos = sql.ExecuteReader()
If datos.Read Then
UsuariosAKO = datos("Nom_Usuario")
ListarCombo = True
Else
datos.Close()
ListarCombo = False
End If
End Function
Public Sub ListarUsuarios()
sql.CommandText = "Select Nom_Usuario from Akotei ORDER BY Nom_Usuario"
datos = sql.ExecuteReader()
End Sub
End Class
Imports System.Data.OleDb
Imports System.Data
Imports System
Public Class CAkotei
Private conexionBD As OleDb.OleDbConnection
Private sql As OleDb.OleDbCommand
Private datos As OleDb.OleDbDataReader
Public lista As String
Public UsuariosAKO
Public PassAKO
Public PcAKO
Public RAMAKO
Public EquipoAKO
Public MAILAKO
Public APEAKO
Public IMPAKO
'Constructor de la clase
Public Sub conectar()
Dim ruta As String
Try
sql = New OleDb.OleDbCommand
sql.Connection = conexionBD
ruta = Application.StartupPath & "\bdDatabase.mdb"
'MsgBox(ruta)
'conexionBD = New OdbcConnection("dsn=RedUtility;uid=root;pwd=pass;" )
conexionBD = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLED B.4.0; Data Source=" & ruta)
conexionBD.Open()
MsgBox("Conexión establecida correctamente con Akotei")
Catch ex As Exception
MsgBox("No se ha podido conectar a la base de datos")
End
'MsgBox(ex.Message)
'End
End Try
End Sub
Public Sub Listar()
MsgBox("LISTAR")
Try
sql.CommandText = String.Format("Select * from AKOTEI")
datos = sql.ExecuteReader()
Catch ex As Exception
MsgBox(ex.Message)
End
End Try
End Sub
Public Function ListarCombo() As Boolean
MsgBox("ListarCombo")
sql.CommandText = String.Format("Select * from AKOTEI")
datos = sql.ExecuteReader()
If datos.Read Then
UsuariosAKO = datos("Nom_Usuario")
ListarCombo = True
Else
datos.Close()
ListarCombo = False
End If
End Function
Public Sub ListarUsuarios()
sql.CommandText = "Select Nom_Usuario from Akotei ORDER BY Nom_Usuario"
datos = sql.ExecuteReader()
End Sub
End Class
Cita:
Alguna sugerencia? Gracias Imports System.Net
Imports System.Net.Sockets
Imports System.Runtime.InteropServices
Imports System.Text
Imports System.Data.OleDb
Imports System.Data
Imports System.Data.Odbc
Public Class Form1
'Declaramos las Variables para Akotei
Public akotei As CAkotei
Public usuariosAKO As CAkotei
Private Sub lblresul_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles lblresul.TextChanged
If lblresul.Text = 1 Then
Akotei = New CAkotei
usuariosAKO = New CAkotei
MDIParent1.Text = "Contactos"
akotei.conectar()
akotei.Listar()
While Akotei.ListarCombo = True
cmbnombreusuario.Items.Add(usuariosAKO.UsuariosAKO )
End While
txtusuario.Text = ""
txtusuario.Text = usuariosAKO.Obtener_Usuario(cmbnombreusuario.Selec tedItem)
End If
End Sub
End Class
Imports System.Net.Sockets
Imports System.Runtime.InteropServices
Imports System.Text
Imports System.Data.OleDb
Imports System.Data
Imports System.Data.Odbc
Public Class Form1
'Declaramos las Variables para Akotei
Public akotei As CAkotei
Public usuariosAKO As CAkotei
Private Sub lblresul_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles lblresul.TextChanged
If lblresul.Text = 1 Then
Akotei = New CAkotei
usuariosAKO = New CAkotei
MDIParent1.Text = "Contactos"
akotei.conectar()
akotei.Listar()
While Akotei.ListarCombo = True
cmbnombreusuario.Items.Add(usuariosAKO.UsuariosAKO )
End While
txtusuario.Text = ""
txtusuario.Text = usuariosAKO.Obtener_Usuario(cmbnombreusuario.Selec tedItem)
End If
End Sub
End Class