DEBIAN PRO

DEBIAN PRO
DEBIAN

miércoles, 7 de octubre de 2015

Gambas3 VisualBasic clon


Hace años había visto Gambas 2, una especie de "clon" de Visual Basic, de las viejas versiones.
Recientemente para una beta/lab/proyecto teníamos que hacer algo muy rápido y simple que corra en entorno gráfico en Linux, tomé el riezgo de probarlo como herramienta IDE.

No es algo "perfecto" ni "a prueba de balas", pero tiene la simplicidad del Basic, la facilidad de armar pantallas y componentes gráficos, todo muy rápido y fácil, sabiendo 5 cosas mínimas sobre como "trabajar" con Basic, hicimos una beta de un TPV en 10 horas, con acceso a logs en Texto, con acceso a datos mediante SQLite, que funcione perfectamente para pantallas táctiles.

He bajado todos los PDFs y documentos que pude y realmente es algo para recomendar, como prototipo/beta de un nuevo producto.

Dim A As New Integer[20, 20]






Private myCon As New Connection
Private myRes As Result
'-------------------------------------------------
Public Sub Form_Open()
Dim rowCount, iCount As Integer
Dim sql As String
Dim resField As ResultField
Dim myTable As Table
Dim databaseName As String = "bookmarksdb.sqlite"
Dim dbDir As String = Application.Path



'DB connection values
With myCon
.Type = "sqlite3"
.host = dbDir
.name = ""
End With

'Setting up some dummydata
If Not Exist(dbDir &/ databaseName) Then
myCon.Databases.Add(databaseName)
myCon.name = databaseName

myTable = myCon.Tables.Add("bookmarks")
myTable.Fields.Add("bookmarkID", db.Integer)
myTable.PrimaryKey = ["bookmarkID"]
myTable.Fields.Add("title", db.String)
myTable.Fields.Add("category", db.Integer)
myTable.Update

'fill the table with generated data
myCon.Begin
myRes = myCon.Create("bookmarks")
For iCount = 1 To 10
myRes!bookmarkID = iCount
myRes!title = "Bookmark #" & iCount
myRes!category = 1
myRes.Update
Next
myCon.Commit

myTable = myCon.Tables.Add("categories")
myTable.Fields.Add("categoryID", db.Integer)
myTable.Fields.Add("title", db.String)
myTable.PrimaryKey = ["categoryID"]
myTable.Update

myCon.Begin
myRes = myCon.Create("categories")
myRes!categoryID = 1
myRes!title = "Sample category"
myRes.Update
myCon.Commit
Else
myCon.name = databaseName
Try myCon.Open()
If Error Then
Message.Error(Error.Text)
Endif
Endif

'read the database
sql = "SELECT * FROM bookmarks"
myRes = myCon.Exec(sql)

If myRes.Count = 0 Then
Message("Fant ingen verdier i databasen!")
Else If myRes.Available
trvBookmarks.Add("C1", "Sample Category")
For rowCount = 0 To myRes.Count - 1
myRes.MoveTo(rowCount)
trvBookmarks.Add(Str(myRes[0]), myRes[1] & " #ID" & myRes[0],, "C1")
Next
Endif
myCon.Close()


Algunos links

FORO ESPAÑOL: http://www.gambas-es.org/viewforum.php?f=4



http://gambas-data-grid-codes-database.blogspot.com.es/2012_02_01_archive.html

https://kalaharix.wordpress.com/gambas/gridview-and-the-data-handling-event/


http://wiki.gambas-es.org/index.php?title=Trabajar_con_Bases_de_Datos

http://gambaswiki.org/wiki/howto/database

http://www.gambas-es.org/viewtopic.php?f=3&t=54

http://cursogambas.blogspot.com.es/2012/08/funciones-de-conversion-tipos-de.html

No hay comentarios:

Publicar un comentario