\' Gambas class file
Private hconn As Connection
Private hresult As Result
Public Sub Form_Open()
\'ajuste la posiciĆ³n de la ventana al lado del formulario principal
ColumnViewTabla.PopupMenu = "Menu1"
\'formateo columview
formato()
\'cargo los datos en el columview
recarga("")
End
Public Sub formato()
With ColumnViewTabla
.Columns.count = 5
.Columns[0].text = "id"
.Columns[0].Width = 20
.Columns[1].text = "Nombre"
.Columns[1].Width = 100
.Columns[2].text = "Apellidos"
.Columns[2].Width = 150
.Columns[3].text = "Edad"
.Columns[3].Width = 50
.Columns[4].text = "Fecha nacimiento"
End With
End
Public Sub recarga(sentenciaSQL As String)
ColumnViewTabla.Clear
formato()
hconn = ModComun.ConectarBase()
If sentenciaSQL = "" Then
hresult = hconn.Exec("Select * from Personas")
Else
hresult = hconn.Exec(sentenciaSQL)
Endif
\'relleno los datos
RellenarColumnView(hresult)
End
Public Sub RellenarColumnView(resultado As Result)
Dim clave As String
ColumnViewTabla.Clear
formato()
\'relleno los datos
Do While resultado.Available
clave = resultado["id"]
ColumnViewTabla.Add(clave, clave)
ColumnViewTabla[clave][1] = resultado["nombre"]
ColumnViewTabla[clave][2] = resultado["apellidos"]
ColumnViewTabla[clave][3] = resultado["edad"]
ColumnViewTabla[clave][4] = Format(resultado["fecha_nacimiento"], "dd/mm/yyyy")
resultado.MoveNext
Loop
End
Public Sub Menu1Editar_Click()
hresult = hconn.Edit("Personas", "id=&1", ColumnViewTabla.Current.key)
FMain.SetActivoModoEditor(hresult)
End
Public Sub Menu1Borrar_Click()
hconn = ModComun.ConectarBase()
hconn.Delete("Personas", "id=&1", ColumnViewTabla.Current[0])
\'cargo los datos en el columview
recarga("")
End
Public Sub Menu1Buscar_Click()
Dim cadena As String
cadena = InputBox("Busqueda por nombre:", "Filtrar contenido de nombre", "")
cadena = "%" & cadena & "%" \'uso % para busquedas por contendio
hresult = hconn.Find("Personas", "nombre like &1", cadena) \'solo busco en el campo "nombre"
RellenarColumnView(hresult)
End
Public Sub Menu1QuitarFiltro_click()
\'quito el filtro, mostrando todos los registros
recarga("")
End