SALVAR E LER DADOS - TIPO NUMERO
Private Sub GravaDados()
Dim adCmdPaciente As New ADODB.Command
Dim CodCliente As Long
Dim Resp As Byte
If Not TudoOK Then Exit Sub
Resp = MsgBox([Ô]Confirma Gravação de [Ô] & txtNome & [Ô] em Cadastro de Cliente ?[Ô], vbYesNo + vbQuestion, [Ô]Salvar Dados[Ô])
If Resp = 7 Then Exit Sub
[ô]On Error Resume Next
CodCliente = Val(txtCodCliente.Text)
With adCmdPaciente
Set .ActiveConnection = cnSQL
.CommandType = adCmdText
.Prepared = True
If CodCliente > 0 Then
.CommandText = [Ô]UPDATE CadCliente set Nome = ?, Endereco = ? CodCliente = [Ô] & CodCliente
.Parameters.Append .CreateParameter([Ô]Nome[Ô], adVarChar, adParamInput, 30)
.Parameters.Append .CreateParameter([Ô]Endereco[Ô], adVarChar, adParamInput, 30)
.Parameters([Ô]Nome[Ô]) = txtNome.Text
.Parameters([Ô]Endereco[Ô]) = txtEndereco.Text
.Execute
If Err.Number <> 0 Then
MostraErro
End If
Else
.CommandText = [Ô]INSERT INTO CadCliente (Nome, Endereco) Values (?, ?)[Ô]
[ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô] SEFRIA AQUI MINNHA DUVIDA???? [ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô]
NAO USAR NUMERAÇAOAUTOMATICA
[ô][ô][ô][ô] .Parameters.Append .CreateParameter([Ô]CodigoCliente[Ô], adVarChar, adParamInput, 30)
tipo numero, e nao autonumerar..
[ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô]
.Parameters.Append .CreateParameter([Ô]Nome[Ô], adVarChar, adParamInput, 30)
.Parameters.Append .CreateParameter([Ô]Endereco[Ô], adVarChar, adParamInput, 30)
.Parameters([Ô]CodigoCliente[Ô]) = txtCodigoCliente.Text
.Parameters([Ô]Endereco[Ô]) = txtEndereco.Text
.Parameters([Ô]Bairro[Ô]) = txtBairro.Text
.Execute
If Err.Number <> 0 Then
MostraErro
End If
End If
End With
Set adCmdPaciente = Nothing
cmdNovo_Click
End Sub
Dim adCmdPaciente As New ADODB.Command
Dim CodCliente As Long
Dim Resp As Byte
If Not TudoOK Then Exit Sub
Resp = MsgBox([Ô]Confirma Gravação de [Ô] & txtNome & [Ô] em Cadastro de Cliente ?[Ô], vbYesNo + vbQuestion, [Ô]Salvar Dados[Ô])
If Resp = 7 Then Exit Sub
[ô]On Error Resume Next
CodCliente = Val(txtCodCliente.Text)
With adCmdPaciente
Set .ActiveConnection = cnSQL
.CommandType = adCmdText
.Prepared = True
If CodCliente > 0 Then
.CommandText = [Ô]UPDATE CadCliente set Nome = ?, Endereco = ? CodCliente = [Ô] & CodCliente
.Parameters.Append .CreateParameter([Ô]Nome[Ô], adVarChar, adParamInput, 30)
.Parameters.Append .CreateParameter([Ô]Endereco[Ô], adVarChar, adParamInput, 30)
.Parameters([Ô]Nome[Ô]) = txtNome.Text
.Parameters([Ô]Endereco[Ô]) = txtEndereco.Text
.Execute
If Err.Number <> 0 Then
MostraErro
End If
Else
.CommandText = [Ô]INSERT INTO CadCliente (Nome, Endereco) Values (?, ?)[Ô]
[ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô] SEFRIA AQUI MINNHA DUVIDA???? [ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô]
NAO USAR NUMERAÇAOAUTOMATICA
[ô][ô][ô][ô] .Parameters.Append .CreateParameter([Ô]CodigoCliente[Ô], adVarChar, adParamInput, 30)
tipo numero, e nao autonumerar..
[ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô]
.Parameters.Append .CreateParameter([Ô]Nome[Ô], adVarChar, adParamInput, 30)
.Parameters.Append .CreateParameter([Ô]Endereco[Ô], adVarChar, adParamInput, 30)
.Parameters([Ô]CodigoCliente[Ô]) = txtCodigoCliente.Text
.Parameters([Ô]Endereco[Ô]) = txtEndereco.Text
.Parameters([Ô]Bairro[Ô]) = txtBairro.Text
.Execute
If Err.Number <> 0 Then
MostraErro
End If
End If
End With
Set adCmdPaciente = Nothing
cmdNovo_Click
End Sub
Como vc esta criando os parametros, ficaria algo assim.
Parameters.Append .CreateParameter([Ô]CodigoCliente[Ô], Integer, adParamInput) ou
Parameters.Append .CreateParameter([Ô]CodigoCliente[Ô], Double, adParamInput)
Más pq ao invés de criar parametros, você já não envia direto ao banco
Insert Into suatabela(codigocliente,endereco,bairro) values ([Ô] & txtcodigocliente.text & [Ô],[ô][Ô] & txtendereco.text & [Ô][ô],[ô][Ô] & txtbairro.text & [Ô][ô])
Seria algo parecido com isso, ve se isso te ajuda
Parameters.Append .CreateParameter([Ô]CodigoCliente[Ô], Integer, adParamInput) ou
Parameters.Append .CreateParameter([Ô]CodigoCliente[Ô], Double, adParamInput)
Más pq ao invés de criar parametros, você já não envia direto ao banco
Insert Into suatabela(codigocliente,endereco,bairro) values ([Ô] & txtcodigocliente.text & [Ô],[ô][Ô] & txtendereco.text & [Ô][ô],[ô][Ô] & txtbairro.text & [Ô][ô])
Seria algo parecido com isso, ve se isso te ajuda
Obrigado por sua atenção agradeço mesmo colega
vc teria um pequeno exemplo pois na atualizaçao da erro..
grato
vc teria um pequeno exemplo pois na atualizaçao da erro..
grato
Segue em anexo, um controle simples de estoque
Acho que isso pode te ajudar, me ajudou quando comecei a mexer com ADO
Acho que isso pode te ajudar, me ajudou quando comecei a mexer com ADO
Valeu Alvaro vou testar agradeço mesmo valeu. te dou um retorno..
estou tentando assim,
Private Sub GravaDados()
RS.Open [Ô]CadCliente[Ô], CnSql, 1, 3
RS.AddNew
RS.Fields([Ô]ClienteID[Ô]) = txtClienteID.Text
RS.Fields([Ô]DataAbertura[Ô]) = txtDataAbertura.Text
RS.Fields([Ô]Nome[Ô]) = txtNome.Text
RS.Update
RS.Close
End If
End Sub
Private Sub GravaDados()
RS.Open [Ô]CadCliente[Ô], CnSql, 1, 3
RS.AddNew
RS.Fields([Ô]ClienteID[Ô]) = txtClienteID.Text
RS.Fields([Ô]DataAbertura[Ô]) = txtDataAbertura.Text
RS.Fields([Ô]Nome[Ô]) = txtNome.Text
RS.Update
RS.Close
End If
End Sub
Nilton esse esquema esta certo
Está dando algum erro?
Se tiver qual é o erro?
No banco de dados o campo ClienteID, não pode estar como autonumérico
O campo data, se o text comum, tente formatar
Segue abaixo um trecho do meu código que uso para inclusão
RS.Fields([Ô]DataAbertura[Ô]) = format(txtDataAbertura.Text,[Ô]MM/DD/YYYY[Ô])
Alias apenas um toque, você não precisa utilizar o .Fields([Ô]campo[Ô]), basta utilizar um ponto de exclamação como o meu exemplo abaixo
tb.AddNew
tb!CodCedente = txtCodCedente
tb!CodEmpr = txtCodEmpr
tb!dtEmissao = txtdtEmissao
tb!DtVencimento = txtdtVenc
tb!Valor = txtValor
tb!CodMsg = txtCodMsg
tb!nossoNumero = nossoN_Dv
tb!nossoNumero2 = [Ô]990[Ô] & Format(Now, [Ô]ddmmyyyyhhmmss[Ô])
tb!CodBarras = Codigo_Barra
tb!dvCliente = dvCliente
tb!TipoAcordo = txtTipoAcordo
tb!Preview = False
tb!Competencia = txtCompetencia.Text
tb.update
Eu coloquei o que pode dar de errado, senão for nenhuma dessas duas alternativas, coloca o erro que esta dando para a gente dar uma olhada
Está dando algum erro?
Se tiver qual é o erro?
No banco de dados o campo ClienteID, não pode estar como autonumérico
O campo data, se o text comum, tente formatar
Segue abaixo um trecho do meu código que uso para inclusão
RS.Fields([Ô]DataAbertura[Ô]) = format(txtDataAbertura.Text,[Ô]MM/DD/YYYY[Ô])
Alias apenas um toque, você não precisa utilizar o .Fields([Ô]campo[Ô]), basta utilizar um ponto de exclamação como o meu exemplo abaixo
tb.AddNew
tb!CodCedente = txtCodCedente
tb!CodEmpr = txtCodEmpr
tb!dtEmissao = txtdtEmissao
tb!DtVencimento = txtdtVenc
tb!Valor = txtValor
tb!CodMsg = txtCodMsg
tb!nossoNumero = nossoN_Dv
tb!nossoNumero2 = [Ô]990[Ô] & Format(Now, [Ô]ddmmyyyyhhmmss[Ô])
tb!CodBarras = Codigo_Barra
tb!dvCliente = dvCliente
tb!TipoAcordo = txtTipoAcordo
tb!Preview = False
tb!Competencia = txtCompetencia.Text
tb.update
Eu coloquei o que pode dar de errado, senão for nenhuma dessas duas alternativas, coloca o erro que esta dando para a gente dar uma olhada
Esta sim so estou vendo a parte do update, pra nao gravar a chave primaria
vou ter que usar tipo
if cadCliente then
Update
todos menos ClienteID.
é que via paramentro sempre funcionou bem , mas desta forma ébem melhor
grato
pela atençao
vou ter que usar tipo
if cadCliente then
Update
todos menos ClienteID.
é que via paramentro sempre funcionou bem , mas desta forma ébem melhor
grato
pela atençao
Tópico encerrado , respostas não são mais permitidas