MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Relatório não abre

    avatar
    alantb
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 163
    Registrado : 25/07/2017

    [Resolvido]Relatório não abre Empty [Resolvido]Relatório não abre

    Mensagem  alantb em 23/10/2017, 03:24

    Olá, preciso emitir um relatório com os componentes abaixo, mas todas as modificações que fiz nem sequer abriram o relatório. Gostaria que os colegas me ajudasse nessa.
    frmRelClassificacao – formulário para seleção e emissão do relatório geral ou datas.
    RelClassificacao – nome do relatório
    ConsultaClassificacao – no design tem 25 campos, mais os cálculos abaixo, sem agrupamentos ativado

    'Assiduidade: Nz([NroTotal])-Nz([NroPontosAfasta])-Nz([NroPontosFNJ])
    'Disciplina: Nz([NroPontosOrdens])+Nz([NroPontosZelo])+Nz([NroPontosUrbanidade])+Nz([NroPontosCooperacao])+Nz([NroPontosEconomia])-Nz([NroPontosDestituiPAD])
             'Capacitacao: Nz([NroPontosAperfeicoamento])+Nz([NroPontosEnsMedio])+Nz([NroPontosTecProfi])+Nz([NroPontosGradSup])+Nz([NroPontosPosGrad])+Nz([NroPontosMestrado])+Nz([NroPontosDoutorado])
             'TotalAno: Nz([Assiduidade])+Nz([Disciplina])+Nz([Capacitacao])+Nz([NroPontosTrabalho])
    Para emissão estou inserindo datas como parâmetros, desse jeito:
    Private Sub cmdImprimir_Click()

    'Dim sql As String

    If Me.optTodos.Value = 1 Then
       If (Not IsNull(Me.txtDe)) And (Not IsNull(Me.txtAte)) Then
         
           Dim strFiltroDatas As String
           
           strFiltroDatas = "[dtDe] >=#" & Me.txtDe & "# And [dtDe] <=#" & Me.txtAte & "#"
         
             
             DoCmd.OpenReport "RelClassificacao", acViewPreview, , strFiltroDatas
             
             End If
             
    End If
    End Sub
    Um funcionário pode ter vários anos de avaliação. Preciso, por ex., selecionar um período de datas e em cada linha exibir o nome de cada funcionário e a soma total de pontos de avaliação do período. Basicamente cada linha do relatório tem de exibir a soma de TotalAno  dos registros cadastrados para cada funcionário.Exemplificando com poucos campos:

    Matricula    Nome         Ano     Pontos
    -------------------------------------------
    35745           Jose            1998   1365
    35742           Paulo          1999   1366
    35745   Jose           1999   1254
    35746           Abel            2000   1255
    35742           Paulo           2000   1350

    Seleção : 01/01/1998 a 01/01/2000

    O relatório deve exibir assim

    Matricula    Nome         Ano     Pontos
    --------------------------------------------
    35745           Jose         1998   2619
    35742           Paulo        1999   4081
    35746           Abel          2000   1255

    Segue cópia do bd para melhor ajudar a entender.

    ALAN
    Anexos
    [Resolvido]Relatório não abre Attachmentpromo1.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (897 Kb) Baixado 5 vez(es)


    Última edição por alantb em 23/10/2017, 13:26, editado 1 vez(es)
    thiagomcosta
    thiagomcosta
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 368
    Registrado : 23/01/2017

    [Resolvido]Relatório não abre Empty Re: [Resolvido]Relatório não abre

    Mensagem  thiagomcosta em 23/10/2017, 12:14

    A cópia do BD não veio, mas tenta alterar a linha de filtro para esta:

    strFiltroDatas = "[dtDe] BETWEEN #" & format(Me.txtDe,"mm/dd/yyyy") & "# And #" & format(Me.txtAte,"mm/dd/yyyy") & "#"
    avatar
    alantb
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 163
    Registrado : 25/07/2017

    [Resolvido]Relatório não abre Empty Re: [Resolvido]Relatório não abre

    Mensagem  alantb em 23/10/2017, 14:58

    thiagomcosta, com a alteração que enviaste deu certo, filtrou por data e carregou o relatório. Entretanto falta calcular os campos de acordo com a descrição acima: Assiduidade, Disciplina,Capacitação e totalizar tudo por funcionário com ou sem periodo de datas. Seguindo em frente....

    ALAN
    thiagomcosta
    thiagomcosta
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 368
    Registrado : 23/01/2017

    [Resolvido]Relatório não abre Empty Re: [Resolvido]Relatório não abre

    Mensagem  thiagomcosta em 23/10/2017, 16:20

    Agrupe no próprio relatório, nas opções de agrupamento e classificação, faça por funcionário (acho que é o campo Matricula).
    No rodapé do funcionário (por exemplo, no rodapé Matricula), coloque os campos de somatório deste funcionário. Nas linhas vai o campo normal.

    Segue um exemplo que eu fiz rapidinho aqui.
    Anexos
    [Resolvido]Relatório não abre Attachmentpromo1_Resposta.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (364 Kb) Baixado 3 vez(es)
    avatar
    alantb
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 163
    Registrado : 25/07/2017

    [Resolvido]Relatório não abre Empty Re: [Resolvido]Relatório não abre

    Mensagem  alantb em 23/10/2017, 17:04

    thiagomcosta, com o agrupamento que veio no teu exemplo eu já tenho em outro relatório (RelBoletimResumo). Nesse o relatório lista todos os anos cadastrados e soma embaixo. No que eu preciso agora não precisa aparecer os anos. Em cada linha carrega o funcionário, matricula,..e a SOMA TOTAL de pontos de todos os anos de cada funcionario em cada respectiva linha.Como abaixo:

    TODOS NA CONSULTA:

    Matricula Nome Ano Pontos
    -------------------------------------------
    35745 Jose 1998 1365
    35742 Paulo 1999 1366
    35745 Jose 1999 1254
    35746 Abel 2000 1255
    35742 Paulo 2000 1350

    Exemplo de uma Seleção por data : 01/01/1998 a 01/01/2000

    O relatório deve exibir assim

    Matricula Nome Ano Pontos
    --------------------------------------------
    35745 Jose 1998 2619
    35742 Paulo 1999 4081
    35746 Abel 2000 1255

    ALAN
    avatar
    alantb
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 163
    Registrado : 25/07/2017

    [Resolvido]Relatório não abre Empty Re: [Resolvido]Relatório não abre

    Mensagem  alantb em 23/10/2017, 18:38

    Pessoal, consegui emitir o relatório como estava querendo no inicio do tópico. Faltava 2 coisas: agrupar por matricula; e para sair a soma em cada linha, inseri os campos na seção "cabeçalho" do agrupamento. Porém para fechar esse tópico falta um pequeno detalhe que esqueci de perguntar antes: como exibir os funcionários com classificação DECRESCENTE do número de pontos (maior para menor)????, pois o meu campo soma no relatório é resultado de cálculos????

    ALAN
    avatar
    alantb
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 163
    Registrado : 25/07/2017

    [Resolvido]Relatório não abre Empty Re: [Resolvido]Relatório não abre

    Mensagem  alantb em 23/10/2017, 19:32

    Pessoal, pra finalizar preciso classificar o relatório em ordem decrescente, pelo número maior de pontos ao menor. Não pelo campo que criou o agrupamento (Nome). Tentei classificar direto na consulta, mas como ela tem campos calculados, ai começa a pedir parâmetros dos cálculos para executar. Também tentei direto no relatório ao carregar com: DoCmd.SetOrderBy "txtTotalTodos DESC", sem sucesso.  Também tentei no relatório "Agrupar e Classificar" , o campo disponivel para classificar é TotalAno, mas como na consulta, fica pedindo parâmetro. O que mais falta??

    ALAN
    Anexos
    [Resolvido]Relatório não abre Attachmentpromo1_NOVO.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (874 Kb) Baixado 2 vez(es)
    avatar
    alantb
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 163
    Registrado : 25/07/2017

    [Resolvido]Relatório não abre Empty Re: [Resolvido]Relatório não abre

    Mensagem  alantb em 24/10/2017, 01:55

    Galera, tentei colocar o "TotalAno" na consulta, só que, ai ao executar a consulta ou até mesmo selecionar pelo form, fica pedindo os parâmetros dos cálculos internos da consulta. Sendo assim, não tá fazendo a classificação decrescente em "PONTOS" no relatório. Existe então, outra maneira, uma fórmula que nem no crystal reports, ou uma expressão. Também inseri outro txt no relatorio que recebe o resultado do primeiro =soma(TotalAno)(que depois deixei invisivel), mas não dá opção de classificar, a não ser que seja um campo da consulta. Só que dai dá zebra total.....segue o baile...se alguém tiver uma solução alternativa, agradeço!!!

    ALAN
    thiagomcosta
    thiagomcosta
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 368
    Registrado : 23/01/2017

    [Resolvido]Relatório não abre Empty Re: [Resolvido]Relatório não abre

    Mensagem  thiagomcosta em 24/10/2017, 13:35

    Se não me falha a memória, onde faz o agrupamento do relatório tem uma opção para somente classificar.

    Eu estava com problema semelhante um tempo atrás e resolvi classificando por lá. Tira a classificação do agrupamento e coloca uma nova linha com classificação pelo campo desejado.
    avatar
    alantb
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 163
    Registrado : 25/07/2017

    [Resolvido]Relatório não abre Empty Re: [Resolvido]Relatório não abre

    Mensagem  alantb em 24/10/2017, 19:48

    Pessoal, não teve jeito mesmo, tive de alterar o bd e na tabela principal de origem do relatório inseri um campo de total das pontuações. Não sendo um campo calculado no relatório, ficou mais fácil de classificar. Dai simplesmente usei o "Agrupar e Classificar" e então tudo RESOLVIDO. Sendo assim agradeço a todos que me ajudaram até aqui. Valeu!!!!

    ALAN

      Data/hora atual: 1/6/2020, 20:13