tecp
|
PORTO ALEGRE RS - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 09/06/2008 13:40 hs
E aí pessoal do VBWEB? Tenho um programa que envia e-mails pelo VB através do controle MAPI. Criei um form para salvar na tabela histórico do bd o assunto, a mensagem, o contato e a data de envio, sempre quando eu enviar um e-mail. O e-mail é enviado corretamente, mas os dados não são salvos no bd e dá o seguinte erro: "Operação não permitida quando objeto está aberto" O código que tenho é esse: Private Sub cmdenviar_Click() RS.Open "Select * From TblHistorico", BD, 3, 3 'O erro vem para essa linha RS.AddNew RS("Assunto") = txt_assunto.Text RS("Anexo") = txt_anexo.Text RS("Mensagem") = txt_mensagem.Text RS("Data_Envio") = txt_dataenvio.Text RS.Update RS.Close Set RS = Nothing RS.Open "Select * From TblHistorico Order by Empresa", BD, 3, 3 RS.MoveMin RS.Close Set RS = Nothing No modúlo a conexão com o bd é feita assim: Sub Connect() BD.Open "provider=microsoft.jet.oledb.4.0;" & _ "Data source=C:CONTATOS1.mdb;" & _ "persist security info=false;" End Sub Agradeço muito toda e qualquer ajuda! Grato, Pedro Henrique
|
|
|
|
Treze
|
SÃO VICENTE SP - BRASIL
|
|
Postada em 09/06/2008 14:48 hs
Postei lá vbmania também Private Sub cmdenviar_Click() RS.Open "insert into TblHistorico(Assunto,Anexo,Mensagem,Data_Envio) Values ('" & txt_assunto.text & "','" & txt_anexo.Text & "','" & txt_mensagem.text & "','" & txt_dataenvio.Text & "')", BD, 3, 3 RS.Close Set RS = Nothing End Sub
|
|
|
tecp
|
PORTO ALEGRE RS - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 09/06/2008 15:19 hs
Agora o erro é na linha: RS.Open "insert into TblHistorico(Assunto,Anexo,Mensagem,Data_Envio) Values ('" & txt_assunto.text & "','" & txt_anexo.Text & "','" & txt_mensagem.text & "','" & txt_dataenvio.Text & "')", BD, 3, 3 :
Run time error '424':
Object required
Marcelo, desde já agradeço, obrigado pela força cara!
|
|
|
Treze
|
SÃO VICENTE SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 09/06/2008 15:31 hs
Colega já expliquei uma forma segura de fazer a conexão e salvar alterar e excluir usando sql seria esta em um Módulo Global Conexao As New ADODB.Connection Public Function Conecta(ByVal Valor As Boolean) If Valor = True Then Conexao.Open "provider=microsoft.jet.oledb.4.0; data source=" & App.Path & "SistemaTimeSheet.mdb;jet OLEDB:System Database=system.mdw;" Else Conexao.Close Set Conexao = Nothing End If End Function
agora basta você fazer fazer oseguinte no form eu abro e fecho o aconexão o tempo ´todo é mais seguro: basta você setar á conexão 'no botão incluir coloque Conecta True ' abre a conexão SQL= "insert into TblHistorico(Assunto,Anexo,Mensagem,Data_Envio) Values ('" & txt_assunto.text & "','" & txt_anexo.Text & "','" & txt_mensagem.text & "','" & txt_dataenvio.Text & "')" Set Incluir=Conexao.Execute(SQL) Conecta False ' fecha aconexão faça um teste utilizando desta forma a partir dai você pesquisa altera, exclui com mais facilidades veja se funciona
|
|
|
tecp
|
PORTO ALEGRE RS - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 09/06/2008 16:22 hs
Agora o erro foi esse quando clico no botão incluir: "Não foi possível encontrar o arquivo '\Servidor....................." Obrigado!
|
|
|
Treze
|
SÃO VICENTE SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 09/06/2008 16:36 hs
o caminho está errado verifique o caminho ou seja altere Global Conexao As New ADODB.Connection Public Function Conecta(ByVal Valor As Boolean) If Valor = True Then Conexao.Open "provider=microsoft.jet.oledb.4.0; data source=" & App.Path & "SistemaTimeSheet.mdb;jet OLEDB:System Database=system.mdw;" Else Conexao.Close Set Conexao = Nothing End If End Function
para isto Conexao.Open "provider=microsoft.jet.oledb.4.0; data source=C:\CONTATOS1.mdb;jet OLEDB:System Database=system.mdw;"
|
TÓPICO EDITADO
|
|
|
|
|