' gambas class file
'by postapase
'http://novatocodegambas.blogspot.com/
'http://tanteador-tenis-de-mesa.blogspot.com/
Public Conexion As Connection
Public RutaBD As String
Public NombreBD As String
Public NombreTabla As String
Public Sub Form_Open()
Me.Center
Me.y = 0
End
Public Sub btnAbrirDB_Click()
Dialog.Title = "Selecciona un archivo de base de datos (sqlite3)"
If Dialog.openfile() Then Return
RutaBD = File.Dir(Dialog.path)
NombreBD = File.Name(Dialog.path)
txtDirDB.Text = RutaBD & "/" & NombreBD
Me.Title = Application.Name & " - " & NombreBD
btnConectar.Enabled = True
End
Public Sub ListaTablasMaestras_Click()
Dim Xcampo As Field
Dim Xtabla As Table
ListaTablasCreadas.UnselectAll
NombreTabla = ListaTablasMaestras.Text
For Each Xtabla In Conexion.Tables
If Xtabla.Name = ListaTablasMaestras.Text Then
ListaCampos.Clear
For Each Xcampo In Xtabla.Fields
ListaCampos.Add(Xcampo.Name)
Next
Endif
Next
DataSource1.Connection = Conexion
DataSource1.Table = NombreTabla
DataSource1.Visible = True
End
Public Sub ListaTablasCreadas_Click()
Dim Xcampo As Field
Dim Xtabla As Table
ListaTablasMaestras.UnselectAll
NombreTabla = ListaTablasCreadas.Text
For Each Xtabla In Conexion.Tables
If Xtabla.Name = ListaTablasCreadas.Text Then
ListaCampos.Clear
For Each Xcampo In Xtabla.Fields
ListaCampos.Add(Xcampo.Name)
Next
Endif
Next
DataSource1.Connection = Conexion
DataSource1.Table = NombreTabla
DataSource1.Visible = True
End
Public Sub btnConectar_Click()
Dim Xtabla As Table
ListaTablasMaestras.Clear
Conexion = New Connection
Conexion.type = "sqlite"
Conexion.host = RutaBD
Conexion.name = NombreBD
Try Conexion.Open
If Error Then
Message.Error("El fichero elegido no es una base de datos sqlite")
txtDirDB.Clear
btnConectar.Enabled = False
Return
Else
btnDesconectar.Enabled = True
btnConectar.Enabled = False
btnAbrirDB.Enabled = False
DataSource1.Connection = Conexion
For Each Xtabla In Conexion.Tables
If Left$(Xtabla.Name, 7) = "sqlite_" Then
ListaTablasMaestras.Add(Xtabla.name)
Else
ListaTablasCreadas.Add(Xtabla.name)
Endif
Next
Endif
End
Public Sub btnDesconectar_Click()
If Conexion.Opened = True Then Conexion.Close
Limpiar()
btnAbrirDB.Enabled = True
End
Public Sub Form_Close()
If IsNull(Conexion) = False Then
If Conexion.Opened = True Then Conexion.Close
Endif
End
Public Sub Limpiar()
btnConectar.Enabled = True
btnDesconectar.Enabled = False
ListaTablasMaestras.Clear
ListaTablasCreadas.Clear
ListaCampos.Clear
DataSource1.Table = Null
DataSource1.Visible = False
End
Public Sub btnDesconectar2_Click()
TextArea1.Clear
TextArea1.SetFocus
End
'by postapase
'http://novatocodegambas.blogspot.com/
'http://tanteador-tenis-de-mesa.blogspot.com/
Public Conexion As Connection
Public RutaBD As String
Public NombreBD As String
Public NombreTabla As String
Public Sub Form_Open()
Me.Center
Me.y = 0
End
Public Sub btnAbrirDB_Click()
Dialog.Title = "Selecciona un archivo de base de datos (sqlite3)"
If Dialog.openfile() Then Return
RutaBD = File.Dir(Dialog.path)
NombreBD = File.Name(Dialog.path)
txtDirDB.Text = RutaBD & "/" & NombreBD
Me.Title = Application.Name & " - " & NombreBD
btnConectar.Enabled = True
End
Public Sub ListaTablasMaestras_Click()
Dim Xcampo As Field
Dim Xtabla As Table
ListaTablasCreadas.UnselectAll
NombreTabla = ListaTablasMaestras.Text
For Each Xtabla In Conexion.Tables
If Xtabla.Name = ListaTablasMaestras.Text Then
ListaCampos.Clear
For Each Xcampo In Xtabla.Fields
ListaCampos.Add(Xcampo.Name)
Next
Endif
Next
DataSource1.Connection = Conexion
DataSource1.Table = NombreTabla
DataSource1.Visible = True
End
Public Sub ListaTablasCreadas_Click()
Dim Xcampo As Field
Dim Xtabla As Table
ListaTablasMaestras.UnselectAll
NombreTabla = ListaTablasCreadas.Text
For Each Xtabla In Conexion.Tables
If Xtabla.Name = ListaTablasCreadas.Text Then
ListaCampos.Clear
For Each Xcampo In Xtabla.Fields
ListaCampos.Add(Xcampo.Name)
Next
Endif
Next
DataSource1.Connection = Conexion
DataSource1.Table = NombreTabla
DataSource1.Visible = True
End
Public Sub btnConectar_Click()
Dim Xtabla As Table
ListaTablasMaestras.Clear
Conexion = New Connection
Conexion.type = "sqlite"
Conexion.host = RutaBD
Conexion.name = NombreBD
Try Conexion.Open
If Error Then
Message.Error("El fichero elegido no es una base de datos sqlite")
txtDirDB.Clear
btnConectar.Enabled = False
Return
Else
btnDesconectar.Enabled = True
btnConectar.Enabled = False
btnAbrirDB.Enabled = False
DataSource1.Connection = Conexion
For Each Xtabla In Conexion.Tables
If Left$(Xtabla.Name, 7) = "sqlite_" Then
ListaTablasMaestras.Add(Xtabla.name)
Else
ListaTablasCreadas.Add(Xtabla.name)
Endif
Next
Endif
End
Public Sub btnDesconectar_Click()
If Conexion.Opened = True Then Conexion.Close
Limpiar()
btnAbrirDB.Enabled = True
End
Public Sub Form_Close()
If IsNull(Conexion) = False Then
If Conexion.Opened = True Then Conexion.Close
Endif
End
Public Sub Limpiar()
btnConectar.Enabled = True
btnDesconectar.Enabled = False
ListaTablasMaestras.Clear
ListaTablasCreadas.Clear
ListaCampos.Clear
DataSource1.Table = Null
DataSource1.Visible = False
End
Public Sub btnDesconectar2_Click()
TextArea1.Clear
TextArea1.SetFocus
End
El paquete fuente esta en el servidor farm de gambas.
Descargar base de datos sqlite de ejemplo: Cortes
Nueva versión 0.1.2
Es necesario registrarse
http://www.gambas-es.org/download.php?id=570
Ultima versión
No hay comentarios.:
Publicar un comentario