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]Filtrar Relatorio de uma tabela relacionada

    avatar
    cacousa2005
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 28/02/2022

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Empty [Resolvido]Filtrar Relatorio de uma tabela relacionada

    Mensagem  cacousa2005 28/2/2022, 17:24

    Boa tarde mestres!
    Criei um BD para minha escola, para controle de alunos e notas e gereação de um boletim("relatorio") do aluno.

    O mesmo codigo que uso para imprimir um relatorio de alunos (que busca dados na tabela principal Tab_alunos), consegue filtrar os dados do aluno pelo nome corretamente, porém não filtra os dados da outra tabela relacionada chamada Tab_notas para geração do boletim do aluno.

    Este é o codigo para filtrar o aluno no Form_alunos da tabela principal:

    Private Sub Bot_filtrar_Click()

    Me.Filter = "Nome = '" & Me![Texto] & "'"  ----> [Texto] é o nome do Textbox usado para filtrar o nome do aluno
    Me.FilterOn = True

    On Error Resume Next
       If Me.Filter = "" Then
           MsgBox "Apply a filter first."
       Else
           DoCmd.OpenReport "Rel_de_alunos", acViewPreview, , Me.Filter
       End If
    End Sub

    Ja na tabela relacionada onde busco as notas pelo campo Aluno vinculado ao Nome da tabela principal, nao funciona.
    Segue o código:


    Private Sub Bot_filtrar_Click()

    Dim strFilter As String
    strFilter = "SELECT Tab_alunos.[Nome], FROM Tab_alunos;"  ----> estou usando uma variavel para o Metodo "Me.Filter"

    Me.Filter = "strFilter= '" & Me![Texto] & "'"
    Me.FilterOn = True


    On Error Resume Next

       If Me.Filter = "" Then
           MsgBox "Apply a filter first."
       Else
           DoCmd.OpenReport "Rel_notas", acViewPreview, , Me.Filter
       End If
    End Sub

    Neste caso, quando clico no botao ele abre uma caixa de mensagem solicitando o valor de strFilter, e abre o relatorio completo, sem filtro.
    Como posso filtrar um campo em uma tabela relacionada, por favor.
    Agradeco

    Ricardo
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Empty Re: [Resolvido]Filtrar Relatorio de uma tabela relacionada

    Mensagem  Alexandre Fim 28/2/2022, 17:50

    Olá Ricardo,

    Seja bem-vindo ao fórum.

    A sua rotina está um pouco confusa, misturando instrução SQL com a função Filter do formulário.
    OBS: Não é recomendável utilizar Nome para filtro de dados, pois na tabela podem haver homônimos, o que pode trazer dados incorretos ao relatório.

    Para ficar mais fácil, compartilhe aqui uma cópia do seu bd, somente objetos pertinentes à sua duvida (tabelas, consultas, relatórios, modulos e etc.) para análise e solução.

    Veja no link abaixo como postar anexos:
    https://www.maximoaccess.com/t32003-como-postar-anexos-e-imagens-no-site-maximoaccess-com

    É isso

    []'s

    FIM


    .................................................................................
    Arrow  Marcar tópico como Resolvido: clique aqui
    Arrow  Postar anexos no fórum: clique aqui

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Setinf11
    Sistemas e Tecnologia Ltda
    avatar
    cacousa2005
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 28/02/2022

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Empty Re: [Resolvido]Filtrar Relatorio de uma tabela relacionada

    Mensagem  cacousa2005 28/2/2022, 18:39

    Obrigado Alexandre
    Inseri alguns dados nas tabelas para testar o funcionamento do sistema.
    As informações ainda foram carregadas.
    Agradeço tua ajuda.

    Ricardo
    Anexos
    [Resolvido]Filtrar Relatorio de uma tabela relacionada AttachmentControleAlunosBCKUP.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (684 Kb) Baixado 15 vez(es)
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Empty Re: [Resolvido]Filtrar Relatorio de uma tabela relacionada

    Mensagem  Alexandre Fim 1/3/2022, 05:56

    Ricardo bom dia,

    Fiz uma avaliação do seu banco de dados e verifiquei que necessitava de alguns ajustes.
    Tomei a liberdade e alterei a nomenclatura dos campos das tabelas para ficar mais adequado. Ajustei também o relacionamento entre elas.
    Ficou assim:
    [Resolvido]Filtrar Relatorio de uma tabela relacionada Escola14

    Criei um formulário (frmBoletim) para visualizar o relatório, conforme os parametros informados, através dos combobox:
    [Resolvido]Filtrar Relatorio de uma tabela relacionada Escola15

    Relatorio com os dados filtrados conforme parametros informados:
    [Resolvido]Filtrar Relatorio de uma tabela relacionada Escola16
    NOTA: Este tipo de visualização do relatório permite a utilização do ribbon de impressão, com as opções para impressão, ajustes das páginas e importação para outros formatos:

    OBS: Verifique o código do formulário "frmBoletim" e veja os comentários para que você entenda o que cada rotina faz.

    É isso
    Segue versão.
    Espero ter ajudado

    []'s

    FIM


    .................................................................................
    Arrow  Marcar tópico como Resolvido: clique aqui
    Arrow  Postar anexos no fórum: clique aqui

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Setinf11
    Sistemas e Tecnologia Ltda
    avatar
    cacousa2005
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 28/02/2022

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Empty Re: [Resolvido]Filtrar Relatorio de uma tabela relacionada

    Mensagem  cacousa2005 1/3/2022, 13:35

    Maravilha!
    Design realmente faz a diferença.
    Vou testar a funcionalidade e principalmente ver o codigo para leitura das tabelas relacionadas que foi aonde me enganchei.
    Muito obrigado Alexandre.
    Assim que desenvolver mais meus conhecimentos adoraria ajudar esse projeto de voces.
    Parabéns!

    Ricardo
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Empty Re: [Resolvido]Filtrar Relatorio de uma tabela relacionada

    Mensagem  Alexandre Fim 1/3/2022, 13:39

    Ola Ricardo,

    O importante é compreender a relação entre as tabelas (chave primária e chave estrangeira) e o comportamento de banco de dados também.

    Se atendeu às suas expectativas e resolveu o problema, por getileza, marque o tópico como resolvido.
    Veja no link abaixo como fazer:

    https://www.maximoaccess.com/t860-resolucao-de-topicos

    O fórum agradece.

    Boa sorte


    .................................................................................
    Arrow  Marcar tópico como Resolvido: clique aqui
    Arrow  Postar anexos no fórum: clique aqui

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Setinf11
    Sistemas e Tecnologia Ltda
    avatar
    cacousa2005
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 28/02/2022

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Empty Re: [Resolvido]Filtrar Relatorio de uma tabela relacionada

    Mensagem  cacousa2005 1/3/2022, 20:47

    Alexandre meu amigo,
    Na veredade nao resolveu.
    As alterações que fizestes estao trazendo os ID e nao os nomes. Isto nao me serve.

    Rode o banco que me enviou e verás.
    E o filtro do boletim nao existe.

    Mas de boa, agradeço de coração tua ajuda.

    Ricardo
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Empty Re: [Resolvido]Filtrar Relatorio de uma tabela relacionada

    Mensagem  Alexandre Fim 1/3/2022, 23:24

    Ricardo boa noite,


    As alterações que fizestes estao trazendo os ID e nao os nomes. Isto nao me serve.

    Quais alterações que você se refere?
    Por acaso você está se referindo aos campos das tabelas onde você usava como combobox?
    Se for isso, na verdades você continua utilizando o ID do respectivo campo. Se você analisar com mais atenção o relacionamento de tabelas, vc vai ver que elas se relacionam através de um ID (de preferência numério e que não se repete).
    Um banco de dados trabalha com tabelas onde uma delas possui chave primaria (Primary Key) e a outra que é relacionada é a chave estrangeira (Foreign Key).
    No que diz respeito à banco de dados, não é correto fazer alterações/inclusões/exclusões diretamente na tabela. Por isso deve ser utilizar formulários que são a "interface" que realiza essas rotinas.


    E o filtro do boletim nao existe.

    O formulário "frmBoletim" faz o filtro dos dados dos valores informados nos comboboxes.
    Você pode selecionar somente o "Curso", e o sistema ira carregar todos os alunos e suas respectivas notas do curso selecionado.
    Ou se você fizer a combinação de mais campos, trais como, Curso e Nível, o sistema irá carregar todos os alunos e suas respectivas notas do Curso e Nivel selecionados.

    Acredito que deve estar acontecendo algum equívoco.

    É isso.

    []'s

    FIM








    .................................................................................
    Arrow  Marcar tópico como Resolvido: clique aqui
    Arrow  Postar anexos no fórum: clique aqui

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Setinf11
    Sistemas e Tecnologia Ltda
    avatar
    cacousa2005
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 28/02/2022

    [Resolvido]Filtrar Relatorio de uma tabela relacionada Empty Re: [Resolvido]Filtrar Relatorio de uma tabela relacionada

    Mensagem  cacousa2005 6/3/2022, 01:03

    Obrigado Alexandre

    Conteúdo patrocinado


    [Resolvido]Filtrar Relatorio de uma tabela relacionada Empty Re: [Resolvido]Filtrar Relatorio de uma tabela relacionada

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 9/12/2024, 02:58