Escolar Documentos
Profissional Documentos
Cultura Documentos
'http://www.gambas-es.org/viewtopic.php?f=3&t=1965
La clase {registro_Tabla}
Analizar Base de datos. Tipo Sqlite / MySql
Crear tantas clases Tablas como n de tablas que haya en la B.D.
Crear una clase Registro por cada Tabla
Crear tantos campos como n de campos haya en el registro
------------------------------------------------------------------------------------------------------------------ Clase de Registro ----------------------------------------------------------------------------------------------------------------Por cada Propiedad/Campo del Registro: listado de {nombre_campo}, campo.count
mtodos _read() y _write()
y crear variable private h{nombre_campo}
Segn el tipo de campo [integer, string, etc]
repetir tantas veces como campos haya:
PRIVATE h{nombre_campo} AS {tipo_datos}
PROPERTY {nombre_campo} AS {tipo_datos}
'-----------------------------------'Metodos de lectura y escrituras
'de los atributos de la clase
'------------------------------------FUNCTION {nombre_campo}_read() AS {tipo_datos}
RETURN h{nombre_campo}
END
SUB {nombre_campo}_write(Valor AS {tipo_datos})
h{nombre_campo} = Valor
END
'-----------------------------------'Metodo constructor
'-----------------------------------PUBLIC SUB _New(
repetir tantas veces como campos haya:
{nombre_campo}_write( {tipo_datos} [0,] )
END SUB
La clase {tabla}
INHERITS {registro_Tabla}
PRIVATE hRes AS Result
PRIVATE hConexion AS Connection
'---------------------------------------------------------------'Metodos de operaciones sobre la Base de Datos (abrir para MySql)
'---------------------------------------------------------------PUBLIC SUB open()
RETURN lRs.Count
END FUNCTION
'--------------------------------------------------------------------------------------'NOs posiciona en la primer registro de la Tabla
'----------------------------------------------------PUBLIC SUB Primero()
IF hresul.Available THEN
hresul.MoveFirst
Leer
END IF
END
'----------------------------------------------------------------------------------------'nos mueve al siguiente registro de la tabla
'---------------------------------------------PUBLIC SUB Siguiente()
IF mRs.Available THEN
mRs.MoveNext
Leer
END IF
END
'---------------------------------------------------------------------------------'Nos mueve al registro anterior de la tabla
'--------------------------------------------PUBLIC SUB Anterior()
IF mRs.Available THEN
mRs.MovePrevious
Leer
END IF
END
'----------------------------------------------------------------------------------'nos mueve al ultimo registro de la tabla
'---------------------------------------------------------------------------------PUBLIC SUB Ultimo() as
IF mRs.Available THEN
mRs.MoveLast
Leer
END IF
END
'----------------------------------------------------------------------------------'Nos muestra el registro donde estamos posicionado
'---------------------------------------------------'repetir por cada campo
PUBLIC FUNCTION ver_{**campol**}(Dato AS {**campo_tipo**) AS Boolean
DIM Criterio AS String
Criterio=\ & {**campo**} & = & dato & \ 'ver tambien subst
hresult = hconexion.Exec("SELECT * FROM {**tabla**} WHERE " & Criterio)
IF mRs.Count > 0 THEN
Leer
RETURN TRUE
ELSE
RETURN FALSE
END IF
END FUNCTION
'-------------------------------------------------------------------------------