USANDO CHECK EM BASE DE DADOS

JPAULO101 31/05/2011 11:35:07
#375420
PESSOAL EU NOVAMENTE A PEDIR AJUDA, TIVE QUE COLOCAR 04 CHECK EM MEU PROJETO ONDE O CLIENTE VAI ESCOLHER OS TIPOS DE ACESSORIO. MAIS TENHO DÚVIDAS TANTO PARA INSERT INTO E UPDATE COM CHECK, ALGUéM PODERIA MIM UMA AJUDA.

USO STRING PARA GRAVAR
Dim sSQL As String
On Error GoTo erro

con.BeginTrans
sSQL = [Ô]INSERT INTO TBLPOCKET ([Ô]
sSQL = sSQL & [Ô]CODIGO,[Ô]
sSQL = sSQL & [Ô]SML,[Ô]
sSQL = sSQL & [Ô]ESCRITORIO,[Ô]
sSQL = sSQL & [Ô]APARELHO,[Ô]
sSQL = sSQL & [Ô]SN,[Ô]
sSQL = sSQL & [Ô]IMEI,[Ô]
sSQL = sSQL & [Ô]CHIPTIMNOVO,[Ô]
sSQL = sSQL & [Ô]RESPONSAVEL,[Ô]
sSQL = sSQL & [Ô][Ô] & atxtCodigo.Text & [Ô],[Ô]
sSQL = sSQL & [Ô][ô][Ô] & atxtSml.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô][ô][Ô] & atxtEscritorio.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô][ô][Ô] & atxtAparelho.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô][ô][Ô] & atxtsn.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô][ô][Ô] & atxtImei.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô][ô][Ô] & atxtChip.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô][ô][Ô] & atxtResp.Text & [Ô][ô],[Ô]

con.Execute sSQL
con.CommitTrans
MsgBox [Ô]Registro incluso com sucesso![Ô], vbInformation, [Ô]Cadastro de Equipamento[Ô]

Exit Sub
erro:
con.RollbackTrans
MsgBox [Ô]Ocorreu um erro ao gravar o cadastro[Ô] & vbCrLf & Err.Description, vbExclamation, [Ô]Erro[Ô]

PARA ALTERAR

Dim sSQL As String
On Error GoTo erro

Msg1 = [Ô][Ô]
Msg1 = Msg1 & [Ô] ** AVISO ** [Ô] & vbNewLine & vbNewLine
Msg1 = Msg1 & [Ô]Confirmar alteração do cadastro [Ô] & Format(rs.Fields([Ô]codigo[Ô]), [Ô]000[Ô]) & [Ô].[Ô] & vbNewLine
If MsgBox(Msg1, vbInformation + vbYesNo, [Ô]Pocket[Ô]) = vbYes Then

con.BeginTrans
sSQL = sSQL & [Ô]UPDATE tblpocket SET [Ô]
sSQL = sSQL & [Ô]sml=[ô][Ô] & atxtSml & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]escritorio=[ô][Ô] & atxtEscritorio & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]aparelho=[ô][Ô] & atxtAparelho & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]sn=[ô][Ô] & atxtsn & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]imei=[ô][Ô] & atxtImei & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]chiptimnovo=[ô][Ô] & atxtChip & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]responsavel=[ô][Ô] & atxtResp & [Ô][ô],[Ô]
sSQL = sSQL & [Ô] WHERE codigo=[Ô] & atxtCodigo & [Ô];[Ô]

con.Execute sSQL
con.CommitTrans
MsgBox [Ô]Registro alterado com sucesso![Ô], vbInformation, [Ô]Cadastro de Equipamento[Ô]
erro:
con.RollbackTrans
MsgBox [Ô]Ocorreu um erro ao alterar o cadastro[Ô] & vbCrLf & Err.Description, vbExclamation, [Ô]Erro[Ô]

COMO ACRESCENTAR OS 04 CHECK, MINHA ESTRUTURA DA TABELA TBLPOCKET

AGRADEÇO E ABRAÇOS A TODOS
ROBIU 31/05/2011 12:55:39
#375429
Resposta escolhida
Teste isso para o insert enquanto eu monto a outra parte:

Dim sSQL As String

sSQL = [Ô]INSERT INTO TBLPOCKET VALUES([Ô]
sSQL = sSQL & atxtCodigo.Text & [Ô],[ô][Ô]
sSQL = sSQL & atxtSml.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtEscritorio.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtAparelho.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtsn.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtImei.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtChip.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtResp.Text & [Ô][ô],[Ô]
sSQL = sSQL & Check1.Value & [Ô],[Ô] [ô] Troque o nome do Check1
sSQL = sSQL & Check2.Value & [Ô],[Ô] [ô] Troque o nome do Check2
sSQL = sSQL & Check3.Value & [Ô],[Ô] [ô] Troque o nome do Check3
sSQL = sSQL & Check4.Value & [Ô])[Ô] [ô] Troque o nome do Check4

con.Execute sSQL
MsgBox [Ô]Registro incluso com sucesso![Ô], vbInformation, [Ô]Cadastro de Equipamento[Ô]


e para alterar:

Dim sSQL As String
Msg1 = [Ô][Ô]
Msg1 = Msg1 & [Ô] ** AVISO ** [Ô] & vbNewLine & vbNewLine
Msg1 = Msg1 & [Ô]Confirmar alteração do cadastro [Ô] & Format(Rs.Fields([Ô]codigo[Ô]), [Ô]000[Ô]) & [Ô].[Ô] & vbNewLine
If MsgBox(Msg1, vbInformation + vbYesNo, [Ô]Pocket[Ô]) = vbYes Then

sSQL = sSQL & [Ô]UPDATE tblpocket SET [Ô]
sSQL = sSQL & [Ô]sml=[ô][Ô] & atxtSml.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]escritorio=[ô][Ô] & atxtEscritorio.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]aparelho=[ô][Ô] & atxtAparelho.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]sn=[ô][Ô] & atxtsn.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]imei=[ô][Ô] & atxtImei.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]chiptimnovo=[ô][Ô] & atxtChip.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]responsavel=[ô][Ô] & atxtResp.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]CAPA=[Ô] & Check1.Value & [Ô],[Ô]
sSQL = sSQL & [Ô]BATERIA=[Ô] & Check2.Value & [Ô],[Ô]
sSQL = sSQL & [Ô]CARREGADOR=[Ô] & Check3.Value & [Ô],[Ô]
sSQL = sSQL & [Ô]CANETA=[Ô] & Check4.Value & [Ô],[Ô]
sSQL = sSQL & [Ô] WHERE codigo=[Ô] & atxtCodigo.Text

con.Execute sSQL
MsgBox [Ô]Registro alterado com sucesso![Ô], vbInformation, [Ô]Cadastro de Equipamento[Ô]
End If
JPAULO101 31/05/2011 14:42:08
#375447
BOA TARDE ROBIU, FIZ CONFORME SEU EXEMPLO, MAIS NO INSERT INTO SÓ GRAVAR OS DADOS DOS TEXT OS CHECK MARCADO NA GRAVA NA BASE DE DADOS, E NO UPDATE MAIS O SEGUINTE ERRO.

OCORREU UM ERRO AO ALTERAR CADASTRO
ERRO DE SINTAXE NA INSTRUÇÃO UPDATE

ABRAÇOS
LLAIA 31/05/2011 14:46:43
#375449
Quando o Check estiver marcado, coloque 1 na string e 0 se for o contrário. Use a função
IIf
pra isso.
ROBIU 31/05/2011 15:30:17
#375456
Então vamos por parte. Primeiro Teste isso no insert.
Se possíve, posta o projeto para facilitar.
Dim sSQL As String
sSQL = [Ô]INSERT INTO TBLPOCKET VALUES([Ô]
sSQL = sSQL & atxtCodigo.Text & [Ô],[ô][Ô]
sSQL = sSQL & atxtSml.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtEscritorio.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtAparelho.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtsn.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtImei.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtChip.Text & [Ô][ô],[ô][Ô]
sSQL = sSQL & atxtResp.Text & [Ô][ô],[Ô]
sSQL = sSQL & IIf(Check1.Value, 1, 0) & [Ô],[Ô] [ô] Troque o nome do Check1
sSQL = sSQL & IIf(Check2.Value, 1, 0) & [Ô],[Ô] [ô] Troque o nome do Check2
sSQL = sSQL & IIf(Check3.Value, 1, 0) & [Ô],[Ô] [ô] Troque o nome do Check3
sSQL = sSQL & IIf(Check4.Value, 1, 0) & [Ô])[Ô] [ô] Troque o nome do Check4

con.Execute sSQL
MsgBox [Ô]Registro incluso com sucesso![Ô], vbInformation, [Ô]Cadastro de Equipamento[Ô]
JPAULO101 31/05/2011 15:50:25
#375460
OK ROBIU AGORA SIM O INSERT INTO ESTÁ TUDO OK, MAIS UPDATE CONTINUA COM O MESMO ERRO.

ABRAÇOS
ROBIU 31/05/2011 16:08:55
#375464
Eu tinha posto uma vírgula a mas neste trecho:
Citação:

sSQL = sSQL & [Ô]CANETA=[Ô] & Check4.Value & [Ô],[Ô]
sSQL = sSQL & [Ô] WHERE codigo=[Ô] & atxtCodigo.Text




Tenta agora:
   Dim sSQL As String
Msg1 = [Ô][Ô]
Msg1 = Msg1 & [Ô] ** AVISO ** [Ô] & vbNewLine & vbNewLine
Msg1 = Msg1 & [Ô]Confirmar alteração do cadastro [Ô] & Format(Rs.Fields([Ô]codigo[Ô]), [Ô]000[Ô]) & [Ô].[Ô] & vbNewLine
If MsgBox(Msg1, vbInformation + vbYesNo, [Ô]Pocket[Ô]) = vbYes Then

sSQL = sSQL & [Ô]UPDATE tblpocket SET [Ô]
sSQL = sSQL & [Ô]sml=[ô][Ô] & atxtSml.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]escritorio=[ô][Ô] & atxtEscritorio.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]aparelho=[ô][Ô] & atxtAparelho.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]sn=[ô][Ô] & atxtsn.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]imei=[ô][Ô] & atxtImei.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]chiptimnovo=[ô][Ô] & atxtChip.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]responsavel=[ô][Ô] & atxtResp.Text & [Ô][ô],[Ô]
sSQL = sSQL & [Ô]CAPA=[Ô] & IIf(Check1.Value, 1, 0) & [Ô],[Ô]
sSQL = sSQL & [Ô]BATERIA=[Ô] & IIf(Check2.Value, 1, 0) & [Ô],[Ô]
sSQL = sSQL & [Ô]CARREGADOR=[Ô] & IIf(Check3.Value, 1, 0) & [Ô],[Ô]
sSQL = sSQL & [Ô]CANETA=[Ô] & IIf(Check4.Value, 1, 0)
sSQL = sSQL & [Ô] WHERE codigo=[Ô] & atxtCodigo.Text
con.Execute sSQL
MsgBox [Ô]Registro alterado com sucesso![Ô], vbInformation, [Ô]Cadastro de Equipamento[Ô]
End If
JPAULO101 31/05/2011 17:30:04
#375482
AGORA SIM TUDO BELEZA, MUITO OBRIGADO ROBIU PELA AJUDA E A OS OUTROS COLEGA TAMBéM PELA FORÇA.

ABRAÇOS A TODOS.
Tópico encerrado , respostas não são mais permitidas