ADICIONANDO CODIGO VB6

FANYPINK 10/08/2010 14:25:59
#349896
Oi...

Como faço para adicionar os código em cada botão de comando
criado? Alguém poderia me ajudar?
O projeto tá faltando o Banco e os codigo para funcionar.

JIRAIAA 10/08/2010 21:15:27
#349928
Amigo, se eu entendi direito você não conseguiu colocar os códigos nos botões.
1 - Primeiramente você tem que pensar em operações.
Se eu clicar em salvar o que deve ser feito? Salvar? (para salvar precisa estar conectado no banco de dados.)
qual banco de dados você pensa em utilizar?

se você der dois cliques no botão ele vai entrar no evento click do mesmo. é neste evento que você irá trabalhar. Pode colocar sua validações ou chamar algum evento ou rotina para validar. Assim como também para gravar , excluir, ou consultar


Private Sub CmdSalvar_Click()
MsgBox CmdSalvar.Caption, vbInformation, [Ô]Cabeçalho[Ô]
End Sub

FANYPINK 10/08/2010 22:32:01
#349931
Citação:

:
Amigo, se eu entendi direito você não conseguiu colocar os códigos nos botões.
1 - Primeiramente você tem que pensar em operações.
Se eu clicar em salvar o que deve ser feito? Salvar? (para salvar precisa estar conectado no banco de dados.)
qual banco de dados você pensa em utilizar?

se você der dois cliques no botão ele vai entrar no evento click do mesmo. é neste evento que você irá trabalhar. Pode colocar sua validações ou chamar algum evento ou rotina para validar. Assim como também para gravar , excluir, ou consultar


Private Sub CmdSalvar_Click()
MsgBox CmdSalvar.Caption, vbInformation, [Ô]Cabeçalho[Ô]
End Sub



JIRAIAA,

Sim, perfeitamente... Queria um exemplo por onde começar, sou iniciante...

E o banco em Access (ADO). Tem algum exemplo?

Fiz os form, apenas faltando o BD e o projeto como vc explessou.

Ok!
GERARDA 11/08/2010 10:32:22
#349960
Resposta escolhida
veja este exemplo

Option Explicit

Global cn As ADODB.Connection
Global rs As ADODB.Recordset

Conexão:
Private Sub Main()
Dim strArquivo As String
Dim strLocal As String
Dim ConectaAccess As String

Load frmAgenda
frmAgenda.Show
DoEvents
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset

strArquivo = [Ô]agenda.mdb[Ô]
strLocal = App.Path
Set cn = CreateObject([Ô]ADODB.Connection[Ô])
ConectaAccess = [Ô]Driver={Microsoft Access Driver (*.mdb)};[Ô] & _
[Ô]Dbq=[Ô] & strArquivo & [Ô];[Ô] & _
[Ô]DefaultDir=[Ô] & strLocal & [Ô];[Ô] & _
[Ô]Uid=Admin;Pwd=;[Ô]

cn.Open ConectaAccess
End Sub

Rotina de Inclusão:
Public Function Inserir(ByVal strNome As String, _
strEnd As String, _
strFone As String) As Variant

cn.Execute ([Ô]insert into pessoal(nome,end,fone)[Ô] _
& [Ô]values([ô][Ô] & strNome & [Ô][ô],[ô][Ô] & strEnd & [Ô][ô],[ô][Ô] & strFone & [Ô][ô])[Ô])

Inserir = True
End Function

Rotina de Alteração:
Public Function Alterar(ByVal intCodigo As Integer, _
strNome As String, _
strEnd As String, _
strFone As String) As Variant

cn.Execute [Ô]update pessoal set nome= [ô][Ô] & strNome & [Ô][ô],[Ô] _
& [Ô] end= [ô][Ô] & strEnd & [Ô][ô], fone= [ô][Ô] & strFone & [Ô][ô][Ô] _
& [Ô] where codigo = [Ô] & intCodigo

Alterar = True
End Function

Rotina de Consulta:
Public Function Consultar(ByVal intCodigo As Integer) As Variant
Set rs = CreateObject([Ô]ADODB.Recordset[Ô])

With rs
.Open [Ô]select * from pessoal where codigo=[Ô] & intCodigo & [Ô][Ô], cn, adOpenKeyset, adLockOptimistic
If .RecordCount = 0 Then
MsgBox [Ô]Código Inválido[Ô], vbExclamation, [Ô]Erro[Ô]
Else
frmAgenda.lblCod = !codigo
frmAgenda.txtNome = IIf(IsNull(!nome), Empty, !nome)
frmAgenda.txtEnd = IIf(IsNull(!End), Empty, !End)
frmAgenda.txtFone = IIf(IsNull(!fone), Empty, !fone)
End If
.Close
End With

End Function

Rotina de Exclusão:
Public Function Excluir(ByVal intCodigo As Integer) As Variant

cn.Execute [Ô]delete * from pessoal where codigo=[Ô] & intCodigo & [Ô][Ô]
Excluir = True

agora eu tive olhando seu form

como sera a consulta?

pela data?

mas se vc tiver varios lancamentos para a mesma data?


FANYPINK 11/08/2010 11:54:34
#349975
Sim
Citação:

:
veja este exemplo

Option Explicit

Global cn As ADODB.Connection
Global rs As ADODB.Recordset

Conexão:
Private Sub Main()
Dim strArquivo As String
Dim strLocal As String
Dim ConectaAccess As String

Load frmAgenda
frmAgenda.Show
DoEvents
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset

strArquivo = [Ô]agenda.mdb[Ô]
strLocal = App.Path
Set cn = CreateObject([Ô]ADODB.Connection[Ô])
ConectaAccess = [Ô]Driver={Microsoft Access Driver (*.mdb)};[Ô] & _
[Ô]Dbq=[Ô] & strArquivo & [Ô];[Ô] & _
[Ô]DefaultDir=[Ô] & strLocal & [Ô];[Ô] & _
[Ô]Uid=Admin;Pwd=;[Ô]

cn.Open ConectaAccess
End Sub

Rotina de Inclusão:
Public Function Inserir(ByVal strNome As String, _
strEnd As String, _
strFone As String) As Variant

cn.Execute ([Ô]insert into pessoal(nome,end,fone)[Ô] _
& [Ô]values([ô][Ô] & strNome & [Ô][ô],[ô][Ô] & strEnd & [Ô][ô],[ô][Ô] & strFone & [Ô][ô])[Ô])

Inserir = True
End Function

Rotina de Alteração:
Public Function Alterar(ByVal intCodigo As Integer, _
strNome As String, _
strEnd As String, _
strFone As String) As Variant

cn.Execute [Ô]update pessoal set nome= [ô][Ô] & strNome & [Ô][ô],[Ô] _
& [Ô] end= [ô][Ô] & strEnd & [Ô][ô], fone= [ô][Ô] & strFone & [Ô][ô][Ô] _
& [Ô] where codigo = [Ô] & intCodigo

Alterar = True
End Function

Rotina de Consulta:
Public Function Consultar(ByVal intCodigo As Integer) As Variant
Set rs = CreateObject([Ô]ADODB.Recordset[Ô])

With rs
.Open [Ô]select * from pessoal where codigo=[Ô] & intCodigo & [Ô][Ô], cn, adOpenKeyset, adLockOptimistic
If .RecordCount = 0 Then
MsgBox [Ô]Código Inválido[Ô], vbExclamation, [Ô]Erro[Ô]
Else
frmAgenda.lblCod = !codigo
frmAgenda.txtNome = IIf(IsNull(!nome), Empty, !nome)
frmAgenda.txtEnd = IIf(IsNull(!End), Empty, !End)
frmAgenda.txtFone = IIf(IsNull(!fone), Empty, !fone)
End If
.Close
End With

End Function

Rotina de Exclusão:
Public Function Excluir(ByVal intCodigo As Integer) As Variant

cn.Execute [Ô]delete * from pessoal where codigo=[Ô] & intCodigo & [Ô][Ô]
Excluir = True

agora eu tive olhando seu form

como sera a consulta?

pela data?

mas se vc tiver varios lancamentos para a mesma data?




Sim, a CONSULTA pode ser pela data...
Tem como alterar-lo, para que seja pela data?

FANYPINK 11/08/2010 12:22:22
#349977
Citação:

:
veja este exemplo

Option Explicit

Global cn As ADODB.Connection
Global rs As ADODB.Recordset

Conexão:
Private Sub Main()
Dim strArquivo As String
Dim strLocal As String
Dim ConectaAccess As String

Load frmAgenda
frmAgenda.Show
DoEvents
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset

strArquivo = [Ô]agenda.mdb[Ô]
strLocal = App.Path
Set cn = CreateObject([Ô]ADODB.Connection[Ô])
ConectaAccess = [Ô]Driver={Microsoft Access Driver (*.mdb)};[Ô] & _
[Ô]Dbq=[Ô] & strArquivo & [Ô];[Ô] & _
[Ô]DefaultDir=[Ô] & strLocal & [Ô];[Ô] & _
[Ô]Uid=Admin;Pwd=;[Ô]

cn.Open ConectaAccess
End Sub

Rotina de Inclusão:
Public Function Inserir(ByVal strNome As String, _
strEnd As String, _
strFone As String) As Variant

cn.Execute ([Ô]insert into pessoal(nome,end,fone)[Ô] _
& [Ô]values([ô][Ô] & strNome & [Ô][ô],[ô][Ô] & strEnd & [Ô][ô],[ô][Ô] & strFone & [Ô][ô])[Ô])

Inserir = True
End Function

Rotina de Alteração:
Public Function Alterar(ByVal intCodigo As Integer, _
strNome As String, _
strEnd As String, _
strFone As String) As Variant

cn.Execute [Ô]update pessoal set nome= [ô][Ô] & strNome & [Ô][ô],[Ô] _
& [Ô] end= [ô][Ô] & strEnd & [Ô][ô], fone= [ô][Ô] & strFone & [Ô][ô][Ô] _
& [Ô] where codigo = [Ô] & intCodigo

Alterar = True
End Function

Rotina de Consulta:
Public Function Consultar(ByVal intCodigo As Integer) As Variant
Set rs = CreateObject([Ô]ADODB.Recordset[Ô])

With rs
.Open [Ô]select * from pessoal where codigo=[Ô] & intCodigo & [Ô][Ô], cn, adOpenKeyset, adLockOptimistic
If .RecordCount = 0 Then
MsgBox [Ô]Código Inválido[Ô], vbExclamation, [Ô]Erro[Ô]
Else
frmAgenda.lblCod = !codigo
frmAgenda.txtNome = IIf(IsNull(!nome), Empty, !nome)
frmAgenda.txtEnd = IIf(IsNull(!End), Empty, !End)
frmAgenda.txtFone = IIf(IsNull(!fone), Empty, !fone)
End If
.Close
End With

End Function

Rotina de Exclusão:
Public Function Excluir(ByVal intCodigo As Integer) As Variant

cn.Execute [Ô]delete * from pessoal where codigo=[Ô] & intCodigo & [Ô][Ô]
Excluir = True

agora eu tive olhando seu form

como sera a consulta?

pela data?

mas se vc tiver varios lancamentos para a mesma data?




Criei a primeira parte: Coloquei o primeiro no Módulo.
[ô]-------------------------------------------------------------
Option Explicit

Global cn As ADODB.Connection
Global rs As ADODB.Recordset

[ô]Conexão:
Private Sub Main()
Dim strArquivo As String
Dim strLocal As String
Dim ConectaAccess As String

Load frmFluxo
frmfluxo.Show
DoEvents
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset

strArquivo = [Ô]fluxo.mdb[Ô]
strLocal = App.Path
Set cn = CreateObject([Ô]ADODB.Connection[Ô])
ConectaAccess = [Ô]Driver={Microsoft Access Driver (*.mdb)};[Ô] & _
[Ô]Dbq=[Ô] & strArquivo & [Ô];[Ô] & _
[Ô]DefaultDir=[Ô] & strLocal & [Ô];[Ô] & _
[Ô]Uid=Admin;Pwd=;[Ô]

cn.Open ConectaAccess
End Sub
[ô]--------------------------------------------------------------------

O restante do código, não entendi onde colocar.?

GERARDA 11/08/2010 12:27:32
#349978
mas em uma data vc tera mais de um lancamento

ex.

data I tipo I descricao I valor
20/10/1999 I saida I mercado I 200,00
20/10/1999 I entrada I venda I 500,00

se consultar pela data vc terá esses dois regidtros

e como vc pretende mostrar esse resultado?

vc precisaria de no minimo uma lista para que fossem listados os registros
e um numero unico que identificasse cada lancamento

portanto acho que vc precisaria de um outro form




GERARDA 11/08/2010 12:29:43
#349979
esse exemplo vai todo no modulo

e as operações são feitas pelas variaveis
FANYPINK 11/08/2010 14:23:52
#349991
Citação:

:
esse exemplo vai todo no modulo

e as operações são feitas pelas variaveis



Desculpe, GERARDA...
Sou Iniciante. Já estou perdida

Tem como vc [Ô]elaborar[Ô] esse projeto? E me passar?

Obrigada.

FanyPink
Tópico encerrado , respostas não são mais permitidas