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


2 participantes

    [Resolvido]Erro tempo de execução ao tentar gerar PDF

    avatar
    Odabrius
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 06/11/2016

    [Resolvido]Erro tempo de execução ao tentar gerar PDF Empty [Resolvido]Erro tempo de execução ao tentar gerar PDF

    Mensagem  Odabrius Ter Mar 07, 2017 11:46 pm

    Boa noite a todos do Fórum.

    Sou um entusiasta do Access, mas ainda sem muitos conhecimentos e nem experiência.
    Criei um sistema de contas a pagar, para a empresa onde trabalho e agora estou com um novo desafio de desenvolvimento para o sistema.
    Preciso criar uma rotina que permita através de um relatório, disparar e-mails a todos os fornecedores, contendo um resumo dos pagamentos mensais.
    A rotina para disparo de e-mail, mais a geração de PDF individual, já consegui.
    O problema está quando realizo o filtro através de um Form, para estipular o período entre datas, que deve ser apresentado no relatório.
    O filtro em si, funciona perfeitamente, abre o relatório com as informações desejadas. O problema ocorre quando clico no botão para gerar o PDF.
    Apresenta Erro em tempo de execução 3075: Erro de sintaxe na cadeia na expressão de consulta '(((Cns_Resumo_Pagamentos.Datapagamento) BETWEEN #01/11/2016# and #30/11/2016#


    Abaixo o código que está gerando o erro:


    Private Sub Btn_Gera_Pdf_Click()

    Dim db As Database
    Dim rs As DAO.Recordset

    Dim strSQL As String, strstartdate As Date, strEndDate As Date


    Set db = CurrentDb
    strstartdate = [Forms]![Formulário_Resumo_vendas]![Text_Data_Ini].Value
    strEndDate = [Forms]![Formulário_Resumo_vendas]![Text_Data_Fim].Value


    strSQL = "SELECT Cns_Resumo_Pagamentos "
    strSQL = strSQL & " FROM Cns_Resumo_Pagamentos  WHERE (((Cns_resumo_Pagamentos.datapagamento) BETWEEN #" & strstartdate & "# and #" & strEndDate & "#"""


    Set rs = db.OpenRecordset(strSQL, dbOpenSnapshot)


    Do While Not rs.EOF
    DoCmd.OpenReport "Rlt_Resumo_Pagamentos", acViewPreview, , "CodPrestador=" & rs!CodPrestador, acWindowNormal
    DoCmd.OutputTo acOutputReport, "Rlt_Resumo_Pagamentos", acFormatPDF, "C:\Users\Fabi e Piter\Desktop\projeto" & rs!CodPrestador & ".pdf", False, "", 0, acExportQualityPrint
    DoCmd.Close acReport, "Rlt_Resumo_Pagamentos"

    rs.Edit
                  rs!Data_PDF = Date
                  rs.Update

    rs.MoveNext
    Loop

    MsgBox "Os registros foram exportados para PDF", vbInformation, "Concluído"

    rs.Close
    Set rs = Nothing


    End Sub


    Quando eu informo as datas direto no critério da consulta, funciona, mas não quero que o usuário tenha acesso a raiz do sistema.

    Agradeço antecipadamente, caso alguém tenha alguma dica para resolver este impasse.

    Muito obrigado
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro tempo de execução ao tentar gerar PDF Empty Re: [Resolvido]Erro tempo de execução ao tentar gerar PDF

    Mensagem  FabioPaes Qua Mar 08, 2017 9:38 am

    Esta linha, corrija os erros: strSQL = strSQL & " FROM Cns_Resumo_Pagamentos WHERE (((Cns_resumo_Pagamentos.datapagamento) BETWEEN #" & strstartdate & "# and #" & strEndDate & "#"""



    strSQL = strSQL & " FROM Cns_Resumo_Pagamentos WHERE (Cns_resumo_Pagamentos.datapagamento) BETWEEN #" & Format(strstartdate, "mm/dd/yyyy") & "# AND #" & Format(strEndDate,"mm/dd/yyyy") & "#"


    Tinha (( a mais e """ a mais!
    Alem da necessidade de formatar o campo data para mês/dia/ano.





    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    avatar
    Odabrius
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 06/11/2016

    [Resolvido]Erro tempo de execução ao tentar gerar PDF Empty Re: [Resolvido]Erro tempo de execução ao tentar gerar PDF

    Mensagem  Odabrius Qua Mar 08, 2017 10:39 pm

    Boa noite Fabio,

    Muito obrigado pela sua resposta.
    Fiz as alterações, mas agora deu erro 3061 " Parâmetros insuficientes. Eram esperados 3"
    Alterei o formato da data no campo,mas ainda não deu.

    Alguma sugestão?

    Obrigado


    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro tempo de execução ao tentar gerar PDF Empty Re: [Resolvido]Erro tempo de execução ao tentar gerar PDF

    Mensagem  FabioPaes Qui Mar 09, 2017 2:48 pm

    Poste aqui por favor seu exemplo!
    E nos diga como proceder para obter o erro!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    avatar
    Odabrius
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 06/11/2016

    [Resolvido]Erro tempo de execução ao tentar gerar PDF Empty Re: [Resolvido]Erro tempo de execução ao tentar gerar PDF

    Mensagem  Odabrius Qui Mar 09, 2017 10:20 pm

    Boa noite Fabio,

    Estou postando meu BD.

    Abrindo o sistema você encontrará o Formulário_Resumo_Vendas, informe como parametro de 01/10/2016 a 31/10/2016.
    Clique no botão para abrir o relatório, que abrirá com as informações das faturas.
    Quando clicar no botão gerar PDF, ocorrerá o erro.

    Mais uma vez obrigado pelo suporte.
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro tempo de execução ao tentar gerar PDF Empty Re: [Resolvido]Erro tempo de execução ao tentar gerar PDF

    Mensagem  FabioPaes Sex Mar 10, 2017 2:04 am

    Amigo o seu problema esta no critério informado na Consulta "Cns_Resumo_Pagamentos"... Pois o VB não entenderá aquele critério la! Veja se buscando os dados direto da tabela resolve seu caso...

    Mude para:
    Código:
    Private Sub Btn_Gera_Pdf_Click()

    Dim db As Database
    Dim rs As DAO.Recordset

    Dim strSQL As String, strstartdate As Date, strEndDate As Date


    Set db = CurrentDb
     strstartdate = [Forms]![Formulário_Resumo_vendas]![Text_Data_Ini].Value
     strEndDate = [Forms]![Formulário_Resumo_vendas]![Text_Data_Fim].Value


    strSQL = "SELECT * "
    strSQL = strSQL & "FROM Tab_CadastroFaturas WHERE datapagamento BETWEEN #" & Format(strstartdate, "mm/dd/yyyy") & "# AND #" & Format(strEndDate, "mm/dd/yyyy") & "#"

    MsgBox strSQL
    Set rs = db.OpenRecordset(strSQL, dbOpenSnapshot)


    Do While Not rs.EOF
    DoCmd.OpenReport "Rlt_Resumo_Pagamentos", acViewPreview, , "CodPrestador=" & rs!CodPrestador, acWindowNormal
    DoCmd.OutputTo acOutputReport, "Rlt_Resumo_Pagamentos", acFormatPDF, "C:\Users\Fabi e Piter\Desktop\projeto" & rs!CodPrestador & ".pdf", False, "", 0, acExportQualityPrint
    DoCmd.Close acReport, "Rlt_Resumo_Pagamentos"

    rs.Edit
                  rs!Data_PDF = Date
                  rs.Update

    rs.MoveNext
    Loop

    'Dim rs As Recordset
    'Set rs = CurrentDb.OpenRecordset("Cns_Resumo_Pagamentos")

    MsgBox "Os registros foram exportados para PDF", vbInformation, "Concluído"

    rs.Close
    Set rs = Nothing

    'Dim rs As Recordset
    'Set rs = CurrentDb.OpenRecordset("Cns_Resumo_Pagamentos")



    End Sub



    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    avatar
    Odabrius
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 06/11/2016

    [Resolvido]Erro tempo de execução ao tentar gerar PDF Empty Re: [Resolvido]Erro tempo de execução ao tentar gerar PDF

    Mensagem  Odabrius Sex Mar 10, 2017 2:06 pm

    Prezado Fabio,

    Era exatamente isso,

    Alterei a SQL, indicando a tabela e não mais a consulta e funcionou perfeitamente.
    Tive também que alterar a referência dbOpenSnapshot, para dbOpenDynaset, pois como Snapshot, a função de atualizar com a data de emissão do PDF não funcionava.

    Muito obrigado pela ajuda.

    Fórum nota 10

    Resolvido!!!
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro tempo de execução ao tentar gerar PDF Empty Re: [Resolvido]Erro tempo de execução ao tentar gerar PDF

    Mensagem  FabioPaes Sex Mar 10, 2017 2:21 pm

    Grato pelo retorno amigo e ate a proxima se Deus quiser.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    Conteúdo patrocinado


    [Resolvido]Erro tempo de execução ao tentar gerar PDF Empty Re: [Resolvido]Erro tempo de execução ao tentar gerar PDF

    Mensagem  Conteúdo patrocinado


      Data/hora atual: Qua maio 15, 2024 7:38 am