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

4 participantes

    Limpar registos de uma consulta

    avatar
    cantu
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 24/03/2012

    Limpar registos de uma consulta Empty Limpar registos de uma consulta

    Mensagem  cantu 13/8/2021, 11:11

    Bom dia,

    Tenho um formulário que contem um subformulário. Este formulário tem um botão "Imprimir" que chama um relatório baseado
    numa consulta, ao mesmo tempo que guarda esse relatório em pdf.
    Acontece que todos os registos ficam na consulta e ao imprimir acaba por imprimir todos os relatórios dos clientes que ficam
    guardados na consulta.
    Pretendo ao "Imprimir":
    1. Imprimir o relatório (está correcto)
    2. Guardar o relatório em pdf na pasta do cliente (está correcto)
    3. Limpe os registos da consulta de modo a só imprimir o cliente actual(acumula os registos já efectuados)

    Obrigado
    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  Marcelo David 13/8/2021, 11:56

    Bom dia! Creio que deve usar o cliente como critério da cláusula where da consulta.
    Pois a consulta não guarda nenhum registro, ela apenas apresenta registros baseados
    em seus critérios.

    Seria algo do tipo: SELECT * FROM SuaTabela WHERE CodigoCliente=NumeroCodigoCliente


    .................................................................................
    Aprenda como criar formulário desacoplado.
    Clique aqui e conheça o treinamento.
    Limpar registos de uma consulta Marcel11

    cantu gosta desta mensagem

    avatar
    cantu
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 24/03/2012

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  cantu 13/8/2021, 13:47

    Boa tarde Marcelo,

    Em primeiro lugar o meu muito obrigado por se interessar no meu problema.
    Não sei como fazer isso que me diz. Será que ajudava se enviasse a BD?

    Agradecido
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

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

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  Avelino Sampaio 13/8/2021, 14:18

    Olá!

    Mostre o código que o senhor utiliza para imprimir.

    Aguardamos


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.

    cantu gosta desta mensagem

    avatar
    cantu
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 24/03/2012

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  cantu 13/8/2021, 16:00

    Boa tarde,

    O código é o seguinte:

    Private Sub BtnTerapImprimir_Click()

    On Error Resume Next
       
       Dim strDocName As String
       Dim strFilter As String
       Dim strArquivo As String
       Dim strLocal As String
       
       
       If MsgBox("Imprimir registo actual?", vbQuestion + vbYesNo, "IMPRIMIR") = vbYes Then
           strDocName = "REL_GTRAT"
           FiltroRelatorioUtente = Me.TxtTerapID
           DoCmd.OpenReport strDocName
           DoCmd.OpenReport acViewPreview

           strArquivo = "\" & Form_FRM_TERAPEUTICA.TxtTerapNome & "\" & "GUIA_TRATAMENTO " & Format(Now, "ddmmyyyy") & ".pdf"
           strLocal = CurrentProject.Path & "\PROCESSOS" & strArquivo
           DoCmd.OutputTo acOutputReport, "REL_GTRAT", acFormatPDF, strLocal
           DoCmd.OutputTo acOutputReport, "REL_GTRAT", acFormatPDF, "C:\Users\hmconpneumoenf\Desktop\Tuberculosis\PROCESSOS" & strArquivo
       End If
         
    End Sub


    Obrigado
    avatar
    cantu
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 24/03/2012

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  cantu 20/8/2021, 17:42

    Alguém no fórum pode ajudar-me. Desde já agradeço
    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  Marcelo David 23/8/2021, 14:21

    Bom dia,
    pelo o que vi no seu código, há uma variável que contem o filtro do relatório,
    porém não é usado essa variável na cláusula WHERE na abertura do relatório
    além de que o filtro parece incmopleto.

    strDocName = "REL_GTRAT"
    FiltroRelatorioUtente = Me.TxtTerapID
    DoCmd.OpenReport strDocName
    DoCmd.OpenReport acViewPreview


    O filtro em negrito deve receber um valor parecido com isso:
    FiltroRelatorioUtente = NomeCampoIdNaTabela = Me.TxtTerapID

    Para usar o filtro, na abertura do relatório, altere o código em vermelho para algo
    semelhante a isso (Será reduzido o seu código para apenas uma linha mesmo):

    DoCmd.OpenReport strDocName, , , FiltroRelatorioUtente, acViewPreview



    DoCmd.OpenReport "rel", acViewPreview, , ""


    .................................................................................
    Aprenda como criar formulário desacoplado.
    Clique aqui e conheça o treinamento.
    Limpar registos de uma consulta Marcel11

    cantu gosta desta mensagem

    avatar
    cantu
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 24/03/2012

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  cantu 23/8/2021, 15:07

    Caro Marcelo,

    Segui o conselho e o que acontece é que dá um relatório em branco (Sem os dados do utente e sem a medicação que está a fazer).
    Mantendo a linha como:
    FiltroRelatorioUtente=Me.TxtTerapID
    Imprime mas vai acumulando os registos, isto é:
    Seleciono o utente Mário seleciono a medicação dele e carrego em imprimir e sucesso, mas se a seguir selecionar a Maria e fizer os mesmos
    procedimentos aparecem no mesmo relatório o Mário e agora a Maria e assim sucessivamento. Se sair do programa e voltar a entrar dá certo e
    depois vai acumulando.
    Obrigado pela atenção
    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  Marcelo David 23/8/2021, 18:12

    Sim, essa linha: FiltroRelatorioUtente=Me.TxtTerapID, nada faz. está aí e remover não terá nenhuma ação diferente.

    E se o relatório retornou sem dados, isso indica que os critérios usados não foram os corretos.

    Precisamos saber qual é o campo na tabela a ser comparado com Me.TxtTerapID, se esse for de fato o filtro a
    ser aplicado.


    .................................................................................
    Aprenda como criar formulário desacoplado.
    Clique aqui e conheça o treinamento.
    Limpar registos de uma consulta Marcel11
    avatar
    cantu
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 24/03/2012

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  cantu 24/8/2021, 10:58

    Caro Marcelo,

    Se enviar a BD dá para perceber?

    Cumprimentos
    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  Marcelo David 24/8/2021, 13:08

    Sim, pode enviar. Aguardo.


    .................................................................................
    Aprenda como criar formulário desacoplado.
    Clique aqui e conheça o treinamento.
    Limpar registos de uma consulta Marcel11

    cantu gosta desta mensagem

    avatar
    cantu
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 24/03/2012

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  cantu 24/8/2021, 14:18

    Caro Marcelo,

    Envio em anexo a minha BD.
    O que acontece agora é que imprime o cliente selecionado no FRM_TERAPEUTICA mas imprime os fármacos todos
    e não aqueles que estão selecionados.

    Grato pela atenção.
    Anexos
    Limpar registos de uma consulta AttachmentCRTMTJ_2.0.1G.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1.3 Mb) Baixado 9 vez(es)
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1772
    Registrado : 13/12/2016

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  Alexandre Fim 24/8/2021, 14:40

    Aproveitando so pra sugestão e dúvida:

    Cantu?

    QUEM tá relacionado com QUEM?

    Limpar registos de uma consulta Utente10


    O erro do relatório está relacionado com este problema.

    Verifique em que momento vc grava o ID do Utente na "TB09_UTENTES_DETALHES"

    é ISSO

    cantu gosta desta mensagem

    avatar
    cantu
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 24/03/2012

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  cantu 26/8/2021, 11:45

    Bom dia,

    Em primeiro lugar os meus agradecimentos pelas contribuições positivas que tenho recebido.
    Efectuei alguns ajustes nas relações das tabelas e neste momento emite apenas um relatório por cliente, no entanto
    (há sempre algo errado! Limpar registos de uma consulta 1f612 ) o relatório aparece com todos os fármacos da lista e não apenas aqueles que foram escolhidos no FRM_TERAPEUTICA.

    Desde já os meus agradecimentos
    avatar
    cantu
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 24/03/2012

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  cantu 13/9/2021, 16:48

    Boa tarde,
    Continuo sem conseguir resolver o meu problema, agradeço desde já a todos que possam ajudar-me a ultrapassar este problema.
    Obrigado
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1772
    Registrado : 13/12/2016

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  Alexandre Fim 13/9/2021, 16:50

    Boa tarde,

    Por gentileza, nos envie a versão onde você realizou os ajustes para analisarmos.

    []'s


    FIM

    cantu gosta desta mensagem

    avatar
    cantu
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 61
    Registrado : 24/03/2012

    Limpar registos de uma consulta Empty Re: Limpar registos de uma consulta

    Mensagem  cantu 15/9/2021, 13:47

    Boa tarde Alexandre,

    Desde já os meus agradecimentos pelo interesse demonstrado.
    A versão é a mesma que já enviei (CRTMTJ_2.0.1G) e que você comentou, mas desculpe mas eu não consigo
    perceber como resolver esta questão.
    O que eu pretendia era depois de selecionar um cliente e indo para a folha de terapêutica selecionar a terapêutica
    daquele cliente e imprimir a terapêutica selecionada, mas o que acontece é que imprime toda a terapêutica existente...
    Será que o erro estará na elaboração do relatório? Se sim como fazer tudo funcionar na perfeição?
    Grato por toda a ajuda que me puder dar.
    Cumprimentos

      Data/hora atual: 18/9/2021, 18:08