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]Selecionar os "n" maiores valores em um relatório

    avatar
    JSommavilla
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 66
    Registrado : 21/09/2014

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  JSommavilla 26/8/2018, 21:56

    Pessoal, boa tarde.

    Já fiz pesquisa aqui no fórum para a minha dúvida, mas ainda não consegui encontrá-la. Vejamos se podem me ajudar:

    Tenho um relatório onde me mostra todos os custos de uma unidade já numerados e classificados do maior valor para o menor e mostra os custos no período de seis meses (mês a mês). Gostaria de que quando eu pedisse para rodar esse relatório, eu pudesse escolher quantos registros o relatório vai mostrar. Exemplo:

    Em uma ocasião gostaria que o relatório me mostrasse os 5 maiores custos; Em outra ocasião, os 10 maiores ou "n" maiores; e em outra, se eu não colocasse nenhum número ele me mostrasse todos os custos da unidade selecionada.

    Penso que eu deva criar uma caixa de texto no formulário onde peço o relatório para colocar o número que desejar e o relatório viria com quantos itens eu quisesse mostrar, conforme o numero digitado nessa caixa de texto.

    No relatório eu criei um campo [txtnr] para numerar os registros, com a fonte de controle =1 e soma parcial = Total. Desta forma ele numera todos os registros encontrados para a unidade selecionada.

    Existe algum código onde eu possa escolher quantos registros o relatório deverá mostrar?

    Espero ter sido claro, e agradeço antecipadamente.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7995
    Registrado : 15/03/2013

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  Alvaro Teixeira 26/8/2018, 23:02

    Olá Jose Eugenio,

    Se a origem dos dados for uma consulta, pesquise no.forum por TOP.

    Abraço
    avatar
    JSommavilla
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 66
    Registrado : 21/09/2014

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  JSommavilla 26/8/2018, 23:11

    AhTeixeira,

    Muito obrigado por responder.

    Já tentei pesquisar como você sugeriu e de outras formas, sem sucesso.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7995
    Registrado : 15/03/2013

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  Alvaro Teixeira 27/8/2018, 08:05

    Olá José,

    Veja este por exemplo:

    https://www.maximoaccess.com/t27557-consulta-funcao-top

    Abraço
    avatar
    JSommavilla
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 66
    Registrado : 21/09/2014

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  JSommavilla 27/8/2018, 14:24

    Muito obrigado pela dica. Vou verificar e posto o resultado aqui.
    avatar
    JSommavilla
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 66
    Registrado : 21/09/2014

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  JSommavilla 30/8/2018, 02:33

    Prezado ahteixeira, boa noite!

    Agradeço mais uma vez pela ajuda!

    Nos links que você enviou, tem esse arquivo que está bem parecido com o que eu já tenho e preciso.

    O único ponto que eu não estou conseguindo, é fazer com que nesse relatório ele demonstre, por exemplo, os 8 ou 10 primeiros registros classificados do maior para o menor valor.

    Nesse exemplo em anexo, o relatório mostra por categoria. Perfeito! Somente falta, no meu caso, mostrar somente os 8 ou 10 primeiros registros!
    Anexos
    [Resolvido]Selecionar os "n" maiores valores em um relatório Attachmentteste (1).zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (94 Kb) Baixado 2 vez(es)
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7995
    Registrado : 15/03/2013

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  Alvaro Teixeira 30/8/2018, 17:00

    Olá José,

    O que eu pretendia não se aplica, uma vez que tem grupos.
    No entanto para ficar a saber o que me referia (TOP) no exemplo que postou:

    1º crie uma consulta
    2º altere para a vista de SQL
    3º Cole instrução abaixo:
    Código:
    SELECT TOP 8 * FROM TIRO_Geral_PROVAS_Tiros;

    E teste e vai verificar que vai mostrar os primeiros 8 registos.

    Quanto ao relatório, vamos ver como poderemos fazer para obter o pretendido.

    Abraço
    avatar
    JSommavilla
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 66
    Registrado : 21/09/2014

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  JSommavilla 31/8/2018, 02:51

    Prezado Alvaro,

    Realmente, se colocarmos o "top 8" na consulta são demonstrados os primeiros 8 registros.

    Agora é descobrir como fazer isso, demonstrar os 8 registros para cada grupo. É aí que está o meu problema!

    Fico no aguardo de uma "luz"!

    Obrigado pela ajuda!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7995
    Registrado : 15/03/2013

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  Alvaro Teixeira 3/9/2018, 11:11

    Olá José, fico feliz por já compreender.

    Relativamente ao que pretende estou a verificar a possibilidade via codigo.

    No entanto reparei que na tabela PROVAS_Tiros não está a colocar os dados do Escalão
    Outra questão não devemos usar acentuação no mome dos campos, nem palavras reservadas o Access.

    Abraço
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7995
    Registrado : 15/03/2013

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  Alvaro Teixeira 3/9/2018, 15:22

    Olá José,

    Par ao que pretende, tive que criar um campo "ordem" na tabela "PROVAS_Tiros".
    Depois usamos o código abaixo para atualizar a ordem ao abrir o reporte, veja:
    Código:

    Private Sub Report_Open(Cancel As Integer)
    'ahteixeira 2018 para MaximoAccess
       'atualiza escalao na tabela PROVAS_Tiros
       DoCmd.RunSQL "UPDATE PROVAS_Tiros INNER JOIN MESTRE ON PROVAS_Tiros.DORSAL = MESTRE.DORSAL SET PROVAS_Tiros.ESCALÃO = [MESTRE].[ESCALÃO];"
       
       Dim rsESC As dao.Recordset, rsPRO As dao.Recordset, intOrd As Integer
       Set rsESC = CurrentDb.OpenRecordset("SELECT * FROM [ESCALOES]")
       
       'percorre registos do ESCALOES
       Do While Not rsESC.EOF
           Set rsPRO = CurrentDb.OpenRecordset("SELECT PROVAS_Tiros.ORDEM FROM PROVAS_Tiros WHERE PROVAS_Tiros.[ESCALÃO]='" & rsESC(1) & "' ORDER BY PROVAS_Tiros.TOTAL DESC;")
           intOrd = 0
               'percorre os registos PROVAS_Tiros e abtribui ORDEM - já está a na abertura por ordem descendente do campo TOTAL
               Do While Not rsPRO.EOF
                   intOrd = intOrd + 1
                   rsPRO.Edit
                   rsPRO("ORDEM") = intOrd
                   rsPRO.Update
                   rsPRO.MoveNext
               Loop
           rsESC.MoveNext
       Loop
       Set rsPRO = Nothing
       Set rsESC = Nothing
    End Sub

    Para filtrar o numero de "linhas", veja na consulta.

    Abraço
    Anexos
    [Resolvido]Selecionar os "n" maiores valores em um relatório Attachmentordenar_e_limite_no_reporte.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (63 Kb) Baixado 19 vez(es)
    avatar
    JSommavilla
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 66
    Registrado : 21/09/2014

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  JSommavilla 4/9/2018, 02:31

    Prezado Alvaro,

    Realmente é exatamente isso que preciso! No código que voce fez, ainda dá para escolher quantas linhas queremos ver.

    Pelo seu código vejo que ainda tenho muito a aprender!

    Muito obrigado pela força.

    Parabéns!

    Um abraço.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7995
    Registrado : 15/03/2013

    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  Alvaro Teixeira 4/9/2018, 08:07

    Olá Jose Eugenio,

    Obrigado pelo retorno.
    Quanto ao "aprender" está no caminho certo com o MaximoAccess

    Abraço

    Conteúdo patrocinado


    [Resolvido]Selecionar os "n" maiores valores em um relatório Empty Re: [Resolvido]Selecionar os "n" maiores valores em um relatório

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 7/11/2024, 21:39