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]Mais do mesmo. Enviar relatorio no corpo da mensagem...

    avatar
    Antonio Tavares
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 19
    Registrado : 22/02/2013

    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Empty [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem...

    Mensagem  Antonio Tavares em 15/12/2016, 19:22

    Boa noite,

    Estou a tentar fazer uma pequena bd que me permita ter rastreio de ocorrências de assistência, usando para isso muitos dos exemplos e vastos conhecimentos que os Mestres (e não só) do fórum, gentilmente partilham, e aos quais muito agradeço.
    A bd ainda está numa fase embrionária, ainda precisa de muitos retoques mas o problema que surgiu foi o envio por email de um relatório (pedido de orçamento a fornecedor no caso, mas depois serão outros) não como anexo, mas sim no corpo da mensagem. Já revirei todos os exemplos que encontrei (a maior parte envia como anexo), já revirei o código, mas não chego lá. De referir que como poderão verificar os meus conhecimentos são muito limitados, mas a coisa vai andando...Usei código que funcionou bem, a enviar como anexo em pdf, mas ao adaptar para enviar no corpo, com a ajuda de uma função que vi num excelente exemplo do Mestre Avelino Sampaio(só que não queria um form para mandar o email, queria enviar direto por botão)...quase que funciona Laughing
    Não dá erro nenhum no código, mas acontecem duas coisas: no objeto Para: que vai buscar o email do fornecedor aparece algo como "fornecedor@provedor.com#mailto:fornecedor@provedor.com#" e o outo é que não aparece nada no corpo da mensagem.

    Pedia então que, por favor dessem uma vista de olhos, a ver se me podem elucidar sobre o que está errado. E se virem mais alguma coisa que possa levar umas polidelas...

    Agradeço antecipadamente e peço desculpa por tão longa exposição.
    A bd em anexo está em *.accdb porque o "access" não deixou gravar em mdb
    Anexos
    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... AttachmentAssistência Técnica.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (341 Kb) Baixado 21 vez(es)
    avatar
    Antonio Tavares
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 19
    Registrado : 22/02/2013

    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Empty Está quase...

    Mensagem  Antonio Tavares em 18/12/2016, 18:42

    Boa tarde,

    Depois de mais algum estudo e umas voltas no código, lá consegui resolver parte do meu problema.
    "Parece-me" que o problema era como estava a indicar o caminho à função fncLerArquivo retirada de um exemplo do Mestre Avelino Sampaio (obrigado). Acho eu... Smile
    Este foi o código que funcionou...

    Código:
    Private Sub enviapedidoorçmailbutt_Click()

    Dim objOut As Object
    Dim objMail As Object
    Dim strCaminho As String

    Set objOut = CreateObject("Outlook.application")
    Set objMail = objOut.CreateItem(olMailItem)

    strCaminho = fncLocalBD & "\enviados\" & "PO" & Format(Me!ocorrencia, "") & ".htm"
    DoCmd.OpenReport "pedido_orç_rlt", acViewPreview, , "ocorrencia_orç=" & Me!ocorrencia, acHidden
    DoCmd.OutputTo acOutputReport, "pedido_orç_rlt", acFormatHTML, strCaminho, 0
    DoCmd.Close acReport, "pedido_orç_rlt"

    With objMail
        .To = DLookup("e_mail_forn", "fornecedores_tbl", "Nome_forn = '" & Me!nome_forn_os & "'")
        .HTMLBody = fncLerArquivo(strCaminho)
        .Subject = "Pedido de Orçamento e Disponibilidade"
        .Display
        '.Send 'envia o email
    End With

    Set objMail = Nothing
    Set objOut = Nothing

    MsgBox "Mensagem enviada...", vbInformation, "Aviso"
        
    End Sub

    Agora só falta o outro caso: "fornecedor@provedor.com#mailto:fornecedor@provedor.com#".
    Vou tentando, mas se alguém me puder indicar o caminho...

    Abraços,
    JPaulo
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 10591
    Registrado : 04/11/2009

    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Empty Re: [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem...

    Mensagem  JPaulo em 19/12/2016, 10:05

    Olá bom dia !

    Isso acontece porque você tem o campo da tabela como Hyperlink, se tiver como texto funciona direito.

    Se não quiser alterar o campo da tabela para texto, faça assim no código:

    Código:
    With objMail
        .to = DLookup("e_mail_forn", "fornecedores_tbl", "Nome_forn = '" & Me!nome_forn_os & "'")
        .to = Left(Replace(CStr(.to), "mailto:", ""), InStr(Replace(CStr(.to), "mailto:", ""), "#") - 1)
        .HTMLBody = fncLerArquivo(strCaminho)
        .Subject = "Pedido de Orçamento e Disponibilidade"
        .Display
        '.Send 'envia o email
    End With


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Folder_announce_new Instruções SQL como utilizar...
    avatar
    Antonio Tavares
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 19
    Registrado : 22/02/2013

    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Empty Re: [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem...

    Mensagem  Antonio Tavares em 19/12/2016, 10:36

    Bom dia Mestre JPaulo,

    Encontrei ontem um post em que já tinha dado essa dica (ao kadhu) e já tinha alterado o campo, mas não resolveu (???) Se calhar devia ter eliminado/feito outro campo, ainda vou experimentar. Agora com o código que me passou sim, já resolveu. Muito obrigado. Este fórum é excelente e vocês são uns génios.
    Posso agora avançar até me aparecer outra...

    Vou dar como resolvido.

    Abraços
    JPaulo
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 10591
    Registrado : 04/11/2009

    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Empty Re: [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem...

    Mensagem  JPaulo em 19/12/2016, 10:40

    Obrigado pelo retorno o forum agradece.

    Feliz Natal


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Mais do mesmo. Enviar relatorio no corpo da mensagem... Folder_announce_new Instruções SQL como utilizar...

      Data/hora atual: 25/5/2020, 16:20