MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Enviar e-mail com anexo dentro de campo no BD

    Compartilhe
    avatar
    ernandofc
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 21/10/2015

    [Resolvido]Enviar e-mail com anexo dentro de campo no BD

    Mensagem  ernandofc em 21/11/2018, 18:54

    Procurei muito, mas não achei uma solução.

    Tenho uma tabela chamada TAB_NFE_PV. Nesta tabela, tenho o campo do tipo de dados Anexo com nome "Doc". Neste campo, incluímos alguns anexos.

    Tenho um formulário, que está vinculado a TAB_NFE_PV, e possui o campo "Doc". O que eu preciso é que este anexo, que está no BD, seja anexado e enviado por email.. Ou então, que este anexo seja salvo em alguma pasta, para eu posteriormente usar o diretório para anexar o arquivo ao criar o procedimento de envio do email.
    Muito obrigado.
    EvandoNunes
    EvandoNunes
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 45
    Registrado : 24/01/2012

    Re: [Resolvido]Enviar e-mail com anexo dentro de campo no BD

    Mensagem  EvandoNunes em 21/11/2018, 19:45

    Olá amigo!

    Se estiver usando o CDO.Message é só passar o caminho do anexo para o parametro .AddAttachment
    vieirasoft
    vieirasoft
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    Re: [Resolvido]Enviar e-mail com anexo dentro de campo no BD

    Mensagem  vieirasoft em 21/11/2018, 20:18

    Veja este exemplo do grande Criquio e adapte. Bom trabalho

    dropbox.com/s/7djvbrtuk3aoowv/EmailCDO1.mdb?dl=1
    avatar
    ernandofc
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 21/10/2015

    Re: [Resolvido]Enviar e-mail com anexo dentro de campo no BD

    Mensagem  ernandofc em 22/11/2018, 12:00

    vieirasoft,

    Muito bacana o modelo, mas o email não foi enviado. Tenho que alterar as configurações abaixo para as do meu email?

    With Config

    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
    .Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
    .Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = "evando@gmail.com"
    .Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "minha passwordevando"
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60

    .Fields.Update
    End With
    vieirasoft
    vieirasoft
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    Re: [Resolvido]Enviar e-mail com anexo dentro de campo no BD

    Mensagem  vieirasoft em 22/11/2018, 12:13

    Olá Evando. Sim, tem que configurar com os dados do seu email. Eu enviei-lhe já preenchido um modelo para exemplo.

    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
    .Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
    .Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = "evando@gmail.com"
    .Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "minha passwordevando"
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60

    Se não for o gmail o seu gestor de correio, deve verificar as configurações do seu gestor

    Não esqueça de marcar CDO for windows (versão) library
    avatar
    ernandofc
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 21/10/2015

    Re: [Resolvido]Enviar e-mail com anexo dentro de campo no BD

    Mensagem  ernandofc em 22/11/2018, 12:18

    Sensacional. Deu muito certo. Só tive que alterar a configuração do gmail para permitir que aplicativos "menos seguros" façam login. Do contrário, o servidor bloqueia a comunicação.

    Novamente, muito obrigado.
    vieirasoft
    vieirasoft
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    Re: [Resolvido]Enviar e-mail com anexo dentro de campo no BD

    Mensagem  vieirasoft em 22/11/2018, 12:22

    Que bom, obrigado pelo retorno. Bom trabalho

      Data/hora atual: 23/1/2019, 08:06