MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


3 participantes

    [Resolvido]Enviar email com relatório da Base de Dados em pdf

    avatar
    anarpcoelho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Portugal
    Mensagens : 11
    Registrado : 23/05/2012

    [Resolvido]Enviar email com relatório da Base de Dados em pdf Empty Enviar email com relatório da Base de Dados em pdf

    Mensagem  anarpcoelho 5/9/2012, 10:39

    Bom dia,

    Eu não tenho muita experiência em Access, no entanto estou a tentar criar uma base de dados e deparei-me com uma grande dúvida.
    A minha intenção é enviar, ao clicar num botão, um relatório do Access por email para determinadas pessoas mas dá-me sempre erro.

    O código que escrevi foi o seguinte, será que alguém me dá uma ajuda a descobrir porque não funciona? É que se eu tirar a linha .Attachments.Add o email segue.


    Private Sub BotaoSalvar_Click()

    If Nz(Ordem_Servico.Value, "") = "" Then
    Ordem_Servico = ID
    Me.Refresh

    Set OutApp = CreateObject("Outlook.Application")
    OutApp.Session.Logon
    Set OutMail = OutApp.CreateItem(0)

    With OutMail
    .To = "x"
    .CC = "y"
    .CC = "z"
    .Subject = "Pedido de abertura de O.S."
    .Body = "Serve o presente para ..."
    .Attachments.Add "TBL_AberturaOS" , "*Pdf" --> Relatório da Base de Dados em pdf
    .Send[/color]
    End With

    Set OutMail = Nothing
    Set OutApp = Nothing

    End If

    DoCmd.RunCommand acCmdSaveRecord
    Me.AllowEdits = False

    End Sub

    Obrigada

    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3883
    Registrado : 04/04/2010

    [Resolvido]Enviar email com relatório da Base de Dados em pdf Empty Re: [Resolvido]Enviar email com relatório da Base de Dados em pdf

    Mensagem  Avelino Sampaio 5/9/2012, 11:25

    Vc tem que indicar o caminho do relatório, salvo em PDF.

    veja se esta meu artigo lhe ajuda:

    http://www.usandoaccess.com.br/dicas/dica8.asp?id=1#inicio

    E este:

    http://www.usandoaccess.com.br/tutoriais/tuto12.asp?id=1#inicio

    Pode usar também o comando Docmd.sendObject, indicando para que seja anexo o relatório, no formato PDF (acFormatPDF).

    Sucesso!




    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    anarpcoelho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Portugal
    Mensagens : 11
    Registrado : 23/05/2012

    [Resolvido]Enviar email com relatório da Base de Dados em pdf Empty Re: [Resolvido]Enviar email com relatório da Base de Dados em pdf

    Mensagem  anarpcoelho 5/9/2012, 16:11

    Muito Obrigada, funcionou! Smile
    avatar
    anarpcoelho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Portugal
    Mensagens : 11
    Registrado : 23/05/2012

    [Resolvido]Enviar email com relatório da Base de Dados em pdf Empty Re: [Resolvido]Enviar email com relatório da Base de Dados em pdf

    Mensagem  anarpcoelho 5/9/2012, 16:22

    Boa tarde mais uma vez. Eu coloquei o código abaixo e funcionou, no entanto o relatório em pdf aparece em branco, já tentei de várias formas e não consigo que faça o filtro correctamente. Será que me pode ajudar?

    Private Sub BotaoSalvar_Click()

    Dim objOut As Outlook.Application
    Dim objMail As Outlook.MailItem
    Dim objAnexo As Object
    Const olMailItem = 0
    Const olByValue = 1
    Dim strArquivo As String
    Dim strLocal As String
    On Error GoTo Err_BotaoSalvar_Click


    If Nz(Ordem_Servico.Value, "") = "" Then
    Ordem_Servico = ID

    Me.Refresh


    Set objOut = New Outlook.Application
    Set objMail = objOut.CreateItem(olMailItem)
    Set objAnexo = objMail.Attachments



    objMail.To = "x"
    objMail.CC = "y"
    objMail.BCC = "z"
    objMail.Subject = "Pedido de abertura de O.S."
    objMail.Body = "Serve o presente para solicitar abertura de O.S. de acordo com documento anexo, após abertura agradeço actualização dos dados do registo nº " & Ordem_Servico & " Obrigada "

    strArquivo = "Ordem_Servico" & Me.Ordem_Servico & ".pdf"
    strLocal = CurrentProject.Path & "\enviados\" & strArquivo

    'Salvando alterações no registro
    If Me.Dirty Then DoCmd.RunCommand acCmdSaveRecord

    DoCmd.OpenReport "TBL_AberturaOS", acViewPreview, , ID = " & Me.ID & ", acHidden
    DoCmd.OutputTo acOutputReport, "TBL_AberturaOS", acFormatPDF, strLocal
    DoCmd.Close acReport, "TBL_AberturaOS"


    objAnexo.Add strLocal, olByValue, 1

    objMail.Display
    Set objMail = Nothing
    Set objOut = Nothing
    Set objAnexo = Nothing

    End If

    DoCmd.RunCommand acCmdSaveRecord
    Me.AllowEdits = False

    Exit_BotaoSalvar_Click:
    Exit Sub

    Err_BotaoSalvar_Click:
    If Err.Number = 2046 Then
    MsgBox "O.S. guardada", vbExclamation, getTitulo & " - Cadastro de Documentos"
    Resume Next
    Else
    MsgBox Err.Description, vbExclamation, getTitulo & " - Cadastro de Documentos"
    Resume Exit_BotaoSalvar_Click
    End If

    End Sub

    Muito Obrigada
    avatar
    anarpcoelho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Portugal
    Mensagens : 11
    Registrado : 23/05/2012

    [Resolvido]Enviar email com relatório da Base de Dados em pdf Empty Resolvido! :)

    Mensagem  anarpcoelho 5/9/2012, 16:46


    Consegui...

    DoCmd.OpenReport "TBL_AberturaOS", acViewPreview, , "ID =" & Me.ID, acHidden

    Obrigada
    Marcelo David
    Marcelo David
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3873
    Registrado : 21/04/2011

    [Resolvido]Enviar email com relatório da Base de Dados em pdf Empty Re: [Resolvido]Enviar email com relatório da Base de Dados em pdf

    Mensagem  Marcelo David 5/9/2012, 18:01

    Ótimo que deu certo. Mas não esqueça de clicar no Resolvido.
    O botão fica do lado direito do título do tópico quando estamos
    respondendo. Smile
    Dessa vez eu ponho!


    .................................................................................
    Aprenda como criar formulário desacoplado.
    Conheça meu canal no Youtube e se inscreva.
    [Resolvido]Enviar email com relatório da Base de Dados em pdf Marcel11

    Conteúdo patrocinado


    [Resolvido]Enviar email com relatório da Base de Dados em pdf Empty Re: [Resolvido]Enviar email com relatório da Base de Dados em pdf

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 12/5/2024, 08:40