CONTADOR ALGUEM AJUDA?
No meu projeto queria desenvolver um contador ex:
codigo = 1 cliente = vbmania
na hora que eu for cadastrar outro ele ja mostrace assim
no txtcodigo = 2
que contase automaticamente.
contador = contador + 1.
e que nele não poça ter duplicidade na chave primaria que seria o codigo.
se alguem puder ajudar
codigo = 1 cliente = vbmania
na hora que eu for cadastrar outro ele ja mostrace assim
no txtcodigo = 2
que contase automaticamente.
contador = contador + 1.
e que nele não poça ter duplicidade na chave primaria que seria o codigo.
se alguem puder ajudar
Public Sub Matri_Func() [ô]Matricula Cadastral do Funcionario
Sql = [Ô]Select Max(Matricula) As Matric From Tbl_Colobarador[Ô]
Set Rst = Conexao.Execute(Sql)
If IsNumeric(Rst!Matric) = False Then
Frm_CadColabor.TxtMatricula.Text = 1
Else
Frm_CadColabor.TxtMatricula.Text = Format(Rst!Matric + 1, [Ô]000000[Ô])
End If
Frm_CadColabor.TxtMatricula.Text = Frm_Cad_Funcionarios.TxtMatricula.Text
End Sub
no meu caso eu coloquei dentro de um modulo.
Sql = [Ô]Select Max(Matricula) As Matric From Tbl_Colobarador[Ô]
Set Rst = Conexao.Execute(Sql)
If IsNumeric(Rst!Matric) = False Then
Frm_CadColabor.TxtMatricula.Text = 1
Else
Frm_CadColabor.TxtMatricula.Text = Format(Rst!Matric + 1, [Ô]000000[Ô])
End If
Frm_CadColabor.TxtMatricula.Text = Frm_Cad_Funcionarios.TxtMatricula.Text
End Sub
no meu caso eu coloquei dentro de um modulo.
entendi nada
crie um modulo e cole essa função que postei ai pra você...
depois poste ai a função que vc usa pra gravar os dados.....
depois poste ai a função que vc usa pra gravar os dados.....
Public Sub Matri_Func() [ô]Matricula Cadastral do Funcionario
SQL = [Ô]Select Max(código) As Matric From cad_cli[Ô]
Set Rst = objConexao.Execute(SQL)
If IsNumeric(adoRecord!Código) = False Then
Form8.txtcod.Text = 1
Else
Form8.txtcod.Text = Format(adoRecord!Código + 1, [Ô]000000[Ô])
End If
Form8.txtcod.Text = Form8.txtcoc.Text
End Sub
SQL = [Ô]Select Max(código) As Matric From cad_cli[Ô]
Set Rst = objConexao.Execute(SQL)
If IsNumeric(adoRecord!Código) = False Then
Form8.txtcod.Text = 1
Else
Form8.txtcod.Text = Format(adoRecord!Código + 1, [Ô]000000[Ô])
End If
Form8.txtcod.Text = Form8.txtcoc.Text
End Sub
qual a função que você esta usando para gravar os Dados....
Private Sub sub_Salva_Dados()
Dim Ssql As String
Dim adoRecord As New ADODB.Recordset
[ô]
Ssql = [Ô]Select [Ô] _
& [Ô] *[Ô] _
& [Ô]From [Ô] _
& [Ô] cad_cli [Ô] _
& [Ô]Where [Ô] _
& [Ô] cad_cli.código = [ô][Ô] & txtcod.Text & [Ô][ô][Ô]
adoRecord.Open Ssql, objConexao, adOpenKeyset, adLockBatchOptimistic
[ô]
If adoRecord.EOF Then
adoRecord.AddNew
adoRecord!Código = txtcod.Text
End If
[ô]
adoRecord!Código = txtcod.Text & [Ô][Ô]
adoRecord!nome_cli = txclinome.Text & [Ô][Ô]
adoRecord!fone_cli = mskFone.Text & [Ô][Ô]
adoRecord!cel_cli = mskCelu.Text & [Ô][Ô]
adoRecord!email_cli = txtcliem.Text & [Ô][Ô]
adoRecord!veic_cli = txtclivei.Text & [Ô][Ô]
adoRecord!ano_cli = mskano.Text & [Ô][Ô]
adoRecord!km_cli = txtclikm.Text & [Ô][Ô]
adoRecord!placa_cli = txtplaca.Text & [Ô][Ô]
[ô]
adoRecord.UpdateBatch adAffectCurrent
[ô]
[ô]sub_Salva_Grid
[ô]
adoRecord.Close
Set adoRecord = Nothing
contador = contador + 1
txtcod.Text = contador
[ô]
End Sub
Dim Ssql As String
Dim adoRecord As New ADODB.Recordset
[ô]
Ssql = [Ô]Select [Ô] _
& [Ô] *[Ô] _
& [Ô]From [Ô] _
& [Ô] cad_cli [Ô] _
& [Ô]Where [Ô] _
& [Ô] cad_cli.código = [ô][Ô] & txtcod.Text & [Ô][ô][Ô]
adoRecord.Open Ssql, objConexao, adOpenKeyset, adLockBatchOptimistic
[ô]
If adoRecord.EOF Then
adoRecord.AddNew
adoRecord!Código = txtcod.Text
End If
[ô]
adoRecord!Código = txtcod.Text & [Ô][Ô]
adoRecord!nome_cli = txclinome.Text & [Ô][Ô]
adoRecord!fone_cli = mskFone.Text & [Ô][Ô]
adoRecord!cel_cli = mskCelu.Text & [Ô][Ô]
adoRecord!email_cli = txtcliem.Text & [Ô][Ô]
adoRecord!veic_cli = txtclivei.Text & [Ô][Ô]
adoRecord!ano_cli = mskano.Text & [Ô][Ô]
adoRecord!km_cli = txtclikm.Text & [Ô][Ô]
adoRecord!placa_cli = txtplaca.Text & [Ô][Ô]
[ô]
adoRecord.UpdateBatch adAffectCurrent
[ô]
[ô]sub_Salva_Grid
[ô]
adoRecord.Close
Set adoRecord = Nothing
contador = contador + 1
txtcod.Text = contador
[ô]
End Sub
Private Sub sub_Salva_Dados()
Dim Ssql As String
Dim adoRecord As New ADODB.Recordset
[ô]
Ssql = [Ô]Select [Ô] _
& [Ô] *[Ô] _
& [Ô]From [Ô] _
& [Ô] cad_cli [Ô] _
& [Ô]Where [Ô] _
& [Ô] cad_cli.código = [ô][Ô] & txtcod.Text & [Ô][ô][Ô]
adoRecord.Open Ssql, objConexao, adOpenKeyset, adLockBatchOptimistic
[ô]
If adoRecord.EOF Then
adoRecord.AddNew
adoRecord!Código = txtcod.Text
End If
[ô]
adoRecord!Código = txtcod.Text & [Ô][Ô]
adoRecord!nome_cli = txclinome.Text & [Ô][Ô]
adoRecord!fone_cli = mskFone.Text & [Ô][Ô]
adoRecord!cel_cli = mskCelu.Text & [Ô][Ô]
adoRecord!email_cli = txtcliem.Text & [Ô][Ô]
adoRecord!veic_cli = txtclivei.Text & [Ô][Ô]
adoRecord!ano_cli = mskano.Text & [Ô][Ô]
adoRecord!km_cli = txtclikm.Text & [Ô][Ô]
adoRecord!placa_cli = txtplaca.Text & [Ô][Ô]
[ô]
adoRecord.UpdateBatch adAffectCurrent
[ô]
[ô]sub_Salva_Grid
[ô]
adoRecord.Close
Set adoRecord = Nothing
[ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô] contador = contador + 1 nao usar mais
[ô] [ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô]txtcod.Text = contador nao usar mais
call Matri_Func <<<------ chamar a função que voce colocou no modulo
MAS... LEMBRANDO EM MUDAR A FUNÇÃO A SUA NECESSIDADE...
End Sub
Dim Ssql As String
Dim adoRecord As New ADODB.Recordset
[ô]
Ssql = [Ô]Select [Ô] _
& [Ô] *[Ô] _
& [Ô]From [Ô] _
& [Ô] cad_cli [Ô] _
& [Ô]Where [Ô] _
& [Ô] cad_cli.código = [ô][Ô] & txtcod.Text & [Ô][ô][Ô]
adoRecord.Open Ssql, objConexao, adOpenKeyset, adLockBatchOptimistic
[ô]
If adoRecord.EOF Then
adoRecord.AddNew
adoRecord!Código = txtcod.Text
End If
[ô]
adoRecord!Código = txtcod.Text & [Ô][Ô]
adoRecord!nome_cli = txclinome.Text & [Ô][Ô]
adoRecord!fone_cli = mskFone.Text & [Ô][Ô]
adoRecord!cel_cli = mskCelu.Text & [Ô][Ô]
adoRecord!email_cli = txtcliem.Text & [Ô][Ô]
adoRecord!veic_cli = txtclivei.Text & [Ô][Ô]
adoRecord!ano_cli = mskano.Text & [Ô][Ô]
adoRecord!km_cli = txtclikm.Text & [Ô][Ô]
adoRecord!placa_cli = txtplaca.Text & [Ô][Ô]
[ô]
adoRecord.UpdateBatch adAffectCurrent
[ô]
[ô]sub_Salva_Grid
[ô]
adoRecord.Close
Set adoRecord = Nothing
[ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô] contador = contador + 1 nao usar mais
[ô] [ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô]txtcod.Text = contador nao usar mais
call Matri_Func <<<------ chamar a função que voce colocou no modulo
MAS... LEMBRANDO EM MUDAR A FUNÇÃO A SUA NECESSIDADE...
End Sub
Função para o próximo código:
Public Function ProximoCodigo(vTabela As String, vCampo As String, vCondicao As String)
Dim Rs As New ADODB.Recordset
Sql = [Ô]SELECT MAX([Ô] & Trim(vCampo) & [Ô]) AS CODIGO FROM [Ô] & Trim(vTabela) & [Ô][Ô] & vCondicao & [Ô][Ô]
Rs.Open Sql, dbBanco, adOpenKeyset, adLockReadOnly
If IsNull(Rs([Ô]CODIGO[Ô])) = True Then
ProximoCodigo = 1
Else
ProximoCodigo = Rs([Ô]CODIGO[Ô]) + 1
End If
Rs.Close: Set Rs = Nothing
End Function
Chame assim:
TxtCodigo.Text = ProximoCodigo [Ô]CLIENTES[Ô], [Ô]CLI_CODIGO[Ô]
Public Function ProximoCodigo(vTabela As String, vCampo As String, vCondicao As String)
Dim Rs As New ADODB.Recordset
Sql = [Ô]SELECT MAX([Ô] & Trim(vCampo) & [Ô]) AS CODIGO FROM [Ô] & Trim(vTabela) & [Ô][Ô] & vCondicao & [Ô][Ô]
Rs.Open Sql, dbBanco, adOpenKeyset, adLockReadOnly
If IsNull(Rs([Ô]CODIGO[Ô])) = True Then
ProximoCodigo = 1
Else
ProximoCodigo = Rs([Ô]CODIGO[Ô]) + 1
End If
Rs.Close: Set Rs = Nothing
End Function
Chame assim:
TxtCodigo.Text = ProximoCodigo [Ô]CLIENTES[Ô], [Ô]CLI_CODIGO[Ô]
Seque um exemplo funcional.
[ô]--Grava na Tabela
Sql = [Ô]Insert Into Tbl_Venda (Cod_Cliente, Cliente, End_Cliente)[Ô]
[ô]--
Sql = Sql & [Ô]Values ([Ô]
[ô]--
Sql = Sql & [Ô][ô][Ô] & TxtCod_Cliente.Text & [Ô][ô],[Ô]
Sql = Sql & [Ô][ô][Ô] & TxtCliente.Text & [Ô][ô],[Ô]
Sql = Sql & [Ô][ô][Ô] & Ender & [Ô][ô])[Ô]
Conexao.Execute (Sql)
call Matri_Func [ô]Número da matricula
MsgBox ([Ô]Dados Gravados com Sucesso[Ô]), vbExclamation, [Ô]ATENÇAO[Ô]
OBS: Com Conexao ADO..
[ô]--Grava na Tabela
Sql = [Ô]Insert Into Tbl_Venda (Cod_Cliente, Cliente, End_Cliente)[Ô]
[ô]--
Sql = Sql & [Ô]Values ([Ô]
[ô]--
Sql = Sql & [Ô][ô][Ô] & TxtCod_Cliente.Text & [Ô][ô],[Ô]
Sql = Sql & [Ô][ô][Ô] & TxtCliente.Text & [Ô][ô],[Ô]
Sql = Sql & [Ô][ô][Ô] & Ender & [Ô][ô])[Ô]
Conexao.Execute (Sql)
call Matri_Func [ô]Número da matricula
MsgBox ([Ô]Dados Gravados com Sucesso[Ô]), vbExclamation, [Ô]ATENÇAO[Ô]
OBS: Com Conexao ADO..
Tópico encerrado , respostas não são mais permitidas