Contribua

Doação

terça-feira, 28 de junho de 2016

CRUD com GAMBAS codigo completo Melhorado

CRUD com GAMBAS codigo completo Melhorado
Este um exemplo de CRUD completo e funcional pode ser melhorado, e adaptado para outras aplicaçoes.

CRUD e um acronimo Create Read Update e Delete, se trata de um aplicativo que faz uma interaçao com uma Base de Dados, onde interagimos com o banco suas tabelas e registros, cadastrando, modificando, excluindo ou apenas lendo seus dados.



















CRUD EM GAMBAS ( VISUAL BASIC MELHORADO)

' Gambas class file

'CRUD, LISTVIEW, LISTBOX, COMBOBOS, STREAM, CONEXAO MYSQL
'AUTHOR EDSON PESSOTTI
'JUNHO/2016
''PRAMAÇAO VISUAL GAMBAS3
''-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0
''VARIAVEIS GLOBAIS
'''0-0--------0-0--
Public hFile As File
Public jog As String
Public pos As String
Public cam As Short
Public idx As Short
Public minhaSt As String
Public $cod As String
Public $nome As String
Public resultado As Result
Public Sub _new()

End
'iNICIALIZAÇAO-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-
''-0-0-0-
Public Sub Form_Open()
tb1.text = " "
tb2.text = " "
TB3.text = " "
TB4.text = " "
TB5.text = " "
'create the file if it does not exist, otherwise just open it
If Exist(Application.path & "/file.txt") Then
hFile = Open Application.path & "/file.txt" For Write Append
Else
hFile = Open Application.path & "/file.txt" For Write Create
Endif

End
'cARGA DO LISTBOX.
''-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-
Public Sub Button1_Click()
Dim pkey As Short = CInt(TB5.Text)
Dim lista As String
Module1.conex()
Module1.resultado = db.EXEC(" Select * From jogadores where id = &1 ", pkey)

tb1.Text = module1.resultado!jogador
tb2.text = module1.resultado!posicao
TB4.text = module1.resultado!camisa
TB5.text = module1.resultado!id

lista = "id--" & TB5.text & "--Nome--" & TB1.text & "Posição--" & tb2.text & "--camisa--" & TB4.text & "--Time--" & TB3.text
LB1.Add(lista)
Module1.db.Close()

End
'
''MODULO DE NOVA INSERÇAO NO BANCO DE DADOS
Public Sub Button2_Click()
jog = TB1.text
pos = TB2.text
cam = TB4.text
idx = CInt(TB5.text)
Module1.conex()
module1.db.EXEC("insert into jogadores values(&1,&2,&3,&4)", jog, pos, cam, idx)
' Module1.consulta2()
db.Close

End

Public Sub Button3_Click()
Dim tt As Integer = CInt(TB5.Text)
Module1.conex()
Module1.resultado = db.EXEC("delete from jogadores where id=&1", tt)

End
'
''MODULO DE CARGA DO LISTVIEW
''-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-
Public Sub Button5_Click()
Dim a As String
Dim b As String
Dim c As String
Dim d As String
Dim x As Short
LV1.Clear()
' Dialog.Filter = ["*.lst", "Lists", "*.txt", "Arquivos de texto", "*", "All Files"]
' If Dialog.OpenFile() Then Return
'' Lb1.List = Split(File.Load(Dialog.Path), "\\n")
'Catch
' Message.Info("Não é possível carregar lista:\\n" & Dialog.Path & "\\n" & Error.Text)
Module1.conex()
Module1.resultado = db.EXEC("Select id ,jogador , posicao, camisa from jogadores")
For Each Module1.resultado
a = module1.resultado!jogador
b = module1.resultado!posicao
c = module1.resultado!camisa
d = module1.resultado!id
minhaSt = a & " -- " & b & " -- " & c & " -- " & d
x = x + 1
With LV1
.Add(x, minhaSt)
End With
Next
db.Close
End

Public Sub CB1_Click()

TB3.text = CB1.current.text

End
'
''METODO DE CARGA DOS TEXTBOX COM DADOS DO BANCO DE DADOS.
''-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0--0-0-0-0-0-
Public Sub Button7_Click()
Dim pkey As Short = CInt(TB5.Text)
tb1.text = " "
tb2.text = " "
TB4.text = " "
Module1.conex()
Module1.resultado = db.EXEC(" Select * From jogadores where id = &1 ", pkey)

tb1.Text = module1.resultado!jogador
tb2.text = module1.resultado!posicao
TB4.text = module1.resultado!camisa
TB5.text = module1.resultado!id

db.Close
End
''METODO DE INSERÇAO
''-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0
''
Public Sub Button8_Click()
Dim tt As Integer = CInt(TB5.Text)
Module1.conex()
Module1.db.EXEC("delete from jogadores where id=&1", tt)
jog = TB1.text
pos = TB2.text
cam = TB4.text
module1.db.EXEC("insert into jogadores values(&1,&2,&3,&4)", jog, pos, cam, tt)

db.Close

End
'
''METODO DE GRAVAÇAO EM ARQUIVO TEXTO.
'''-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-
Public Sub Button6_Click()
Dim a As String
Dim b As String
Dim c As String
Dim d As String
Dim x As Short = 1

Dialog.Filter = ["*.lst", "Lists", "*.txt", "Text Files", "*", "All Files"]
If Dialog.SaveFile() Then Return
File.Save(Dialog.Path, Lb1.List.Join("\\n"))
Catch
Message.Info("Cannot save list:\\n" & Dialog.Path & "\\n" & Error.Text)

End
'METODO DE FIMALIZAÇAO DO AP
''-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-
Public Sub Button4_Click()
hFile.Close
module1.db.Close()
FTest.Close

End

Public Sub PB1_MouseDown()


End

-0-0-0-0-0-00-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-
-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-
=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0
-------------------------------------------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------------------------------------------------
 MODULO DE CONEXAO

' Gambas module file

'metodo de conexao
'Author Edson Pessotti
''Junho/2016
'''PROGRAMAÇAO VISUAL GAMBAS3
''''-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0

Public db As New Connection

Public resultado As Result

Public Function conex() As Boolean

db.CLOSE()

db.Type = "mysql"
db.host = "localhost"
db.Port = "3306"
db.Login = "root"
db.Name = "gambas"
db.password = "edson...9"
db.OPEN()
Return True

Catch
message.error(" Deu PAU na conexao")
Return False
End
'Metodo de seleçao0x0x0x0x0x0x0x0x0
''-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0
Public Sub consulta(query As String)

'
End '
'Metodo de inserçao
''--0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0
Public Sub Insere(query As String)
 

Return
End
'Metodo de Deleçao
''-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0
Public Sub Deleta(query As String)


End
'Metodo de Atualizaçao
'-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0
Public Sub Atualiza(query As String)
 




Abçs at'e o proximo post.

terça-feira, 21 de junho de 2016

Gambas conexão com banco de dados

Esta uma classe de conexão genérica.
Serve para todos os bancos sportados Postgree SQLite e Mysql é só trocafr o type.

Link pra ebook completaço, t em algumas coisas caducas , mas a maior parte esta uptodate

Public Sub Conecta_Click()

Dim i As Float
Dim $Con As New Connection
Dim $Query As String
Dim rs As Result
Dim $nome As String
Dim $peso As String
Dim $sexo As String

$Con = New Connection
With $Con
$Con.Type = "mysql"
$Con.Host = "localhost"
$Con.Login = "root"
$Con.Password = "edson...9"
$Con.Name = "gambas"
Try $Con.Open()
If Error Then Message.Info("Deu pau da  conexão")
rs = $Con.Exec("Select * from teste")
               
End With
      
With rs
    $nome = rs!nome
    Message.Info($nome)
For Each rs
 
  'do something with the data
Next

'TV1.rows.count = 0
'If .count <> 0 Then
'TV1.columns.count = .fields.count
''TV1.rows.count = .count
' End If
End With
End

quinta-feira, 16 de junho de 2016

Conversão de tipos em GAMBAS3

Funções de Conversão de Tipos de Dados em Gambas

A muitos casos em nossos programas onde precisamos converter um tipo de dados para outro tipo.

Nesse ponto a linguagem Gambas oferece uma série de funções que executam diferentes tipos de conversão:

Funções de conversão:

CBool Converte um valor booleano.
CByte Converte um valor de byte.
CDate Converte um valor de data.
Cfloat Converte um valor para Flutuante.
CInt Converte um valor em Integer.
CLONG Converte um valor para Long.
Conv $ Converte uma sequência de um conjunto de caracteres para outro.
CShort Converte um valor para Short.
CSng Converte um valor único.
CStr Converte um valor de cadeia.
CVariant Converte um valor Variant.

Apenas na versão 3.0

DConv $ Converte os caracteres do Sistema para UTF 8 conjunto de caracteres (GUI).
SConv $ Converte caracteres UTF-8 (o empregado no GUI) para o carátere do sistema.
Str $ Converte um número ou data para uma String.
Val Converte uma String em um número ou data.

Mais informações: http://gambasdoc.org/help/cat/conv?en&v3 e http://gambasdoc.org/help/cat/conv?es&v3

Um exemplo:
Este programa recebe uma String, converte para número, e adiciona 33, mostrando o resultado:
Public Sub Main()
Dim cadeia As String
Dim numero As Float
Print "Exemplo de converção de tipos:"
Print "Converter uma String em un numero"
Input cadeia
Print "Istoo seria cadeia:", cadeia
numero = Val(cadeia) 'aqui faço uso da função de converção
Print "Isto seria um numeroo: ", numero
http://cursogambas.blogspot.com.br/2012/08/funciones-de-conversion-tipos-de.html
numero += 33 'Somando os valores
Print "E já posso realizar operações matemáticas:", numero
Stop
End


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




Collections em GABAS3

Coleções

LINK PARA APRESENTAÇÃO


LINK PARA O VIDEO

As coleções são grupos de objetos implementados com uma tabela hash.
Onde os objetos chaves declarados na coleção são implementados como tipos de dados Strings.

Os valores correspondentes  as chaves  para qualquer coleção são do tipo de dados Variant.
 NULL é usado quando nada está associado a uma determinada chave.
 Por conseguinte, associar-se a uma chave NULL tem o mesmo efeito que  remo-lo  da coleção.
 O tamanho da tabela de hash interna cresce dinamicamente à medida em que os dados forem inseridos.

 Esta classe é criada usando o formato geral Declarando uma coleção:

as chaves são associadas a uma String.

Declaramos as chaves assim  "algo" : "valor da Chave",

Exemplo:

Dim cCollection AS cCollection = ["Seg": "Segunda-Feira" , "Ter": "Terça=Feira"]

Observe que os elementos da coleção são enumeradas na ordem em que foram inseridos.
No entanto, se você substituir o valor de uma chave já inserida, a ordem de inserção original é mantida.

Para navegarmos pela collection e acessar seu itens, utilizamos o comando :

For Each  String-name  In Collection-name next

Para cada instrução Executa um loop while Simultaneamente
enumerando um objeto.
 A expressão deve ser uma referência a um objeeto enumerável, tal como uma  coleção ou uma matriz.
 O formato geral da instrução é:


Expressão variável IN for each ... Next

Ex:

 For Each stMinhaString In cMinhaColeção
    Print cMinhaColeção.Key & " --> " & stMinhaString
  Next
O resultado seria:

Seg --> Segunda-Feira
Ter --> Terca-Feira

Note que para acessar o nome de uma  Key utilizamos o método .key.

A String deve ser declarada como uma string comum,

 Dim stMinhaString As String,

veja no laço For Each fazemos referênciaa ela para invocar os valores das  Keys.

 For Each stMinhaString In cMinhaColeção

Para trabalharmos com a coleção, obtermos seu numero de tamanho,
adicionar ou remover elementos. copiar etc, utilizamos métodos:

Addicionando elementos da Collection, método .Add()
cMinhaColeção.Add("Quar" , "Quarta-Feira")

Removendo elementos da Collection. método .Remove()
cMinhaColeção.Remove("Quar").

Obtendo o valor do tamanho da coleção. método .Count()  ou .Length()
Dim x As integer
 x  =  cMinhaColeção.Count
Print  cMinhaColeção.Length

Para testar a existencia de uma key, método .Exist(nome-da-key)
cMinhaColeção.Exist("Seg")

Para copiar uma  coleção para outra coleção: o método .Copy()

quinta-feira, 9 de junho de 2016

APOSTILA DE LINGUAGEM GAMBAS

Este ebook e exelente e muito didático, tem me ajudado muito a aprender gambas, sempre quis estudar gambas, mas só estou podendo faze-lo agora, acredito ser uma linguagem de muito futuro ainda, com o crescimento do Linux e principalmente do LibreOffice..
Gambas e voltada para Objetos o que faz dela uma linguagem atual, sua ide de criação gráfica e ótima.
Tenho certeza que quem estudar este ebook se tornará uma grande desenvolvedor Gambas.
CLICK AQUI PARA ACESSAR O DOWNLOAD DO LIVRO GAMBAS. 

quarta-feira, 1 de junho de 2016

Programa exempo para consulta em bd Mysql com programa C

#include<stdio.h> #include<mysql/mysql.h> # ...