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

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2

    avatar
    cjsilva2013
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 259
    Registrado : 26/06/2013

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2 Empty [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2

    Mensagem  cjsilva2013 26/2/2018, 11:14

    Bom dia a todos,

    Havia fechado o outo tópico referente a emissão de carteirinhas para alunos, filtrando por turno...

    O Grande Silvio me ajudou, com o script conforme endereço abaixo, porém verifiquei que mesmo fazendo as alterações, só consigo visualizar a primeira opção...

    No caso, preciso visualizar as três opções, quando no cadastro do aluno estiver marcada a opção seja: Matutino, Vespertino ou Noturno...

    Tá meio caminho andado... Mais preciso de ajuda para desenrolar o restante...

    Minha dificuldade é porque estou aprendendo. E ainda não tinha feito ou visto algo no fórum... Procurei na internet e não encontrei um BD para emissão de carteirinhas no Access...

    Por isso peço ajuda aos companheiros...

    Segue link com BD...

    O que preciso: É que ao selecionar a checkbox e clicar no botão, abra o relatório referente aos alunos só do turno X... Pois são três modelos de carteirinhas para cada turno...

    https://www.4shared.com/rar/QFb8kqdoei/CadAlunos.html
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 362
    Registrado : 12/01/2017

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2 Empty Ajuda com relatório por TURNO escolar_Novo 2

    Mensagem  thiagonsilvaa 26/2/2018, 12:31

    Bom dia !

    Uma dúvida, o que diferencia o turno de cada aluno ? É o campo (texto curto) "turno", ou os campos (sim/não) vespertino, matutino ou noturno ?

    Se for o campo texto "turno", basta criar três consultas filtrando por "Vespertino, matutino ou noturno", ou se for pelos campos sim/não, você cria pra cada turno uma consulta e no critério referente ao turno você coloca " =-1 ", ou, verdadeiro e baseia os relatórios em cada consulta criada.

    Qualquer dúvida, volte a retornar.
    avatar
    cjsilva2013
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 259
    Registrado : 26/06/2013

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2 Empty Ajuda com relatório por TURNO escolar_Novo 2

    Mensagem  cjsilva2013 26/2/2018, 13:41

    Bom dia Thiago,

    O script no botão está conforme abaixo. Criei para cada carteirinha uma consulta...

    O Campo para critério na consulta é o "CargoAtual".

    Private Sub cmdCredenciaisPDF_Click()
    On Error GoTo Err_cmdCredenciaisPDF_Click


    Dim stDocName As String
    Dim F As String
    Dim G As String
    Dim H As String


    'F = ""
    'G = ""
    'H = ""



    'Constroi o Filtro de acordo com o valor do campo
    If Me.Matutino = -1 Then 'F = "CargoAtual = 'Turno Matutino'"   ' acrescentado o TM
    'Abre o Relatório filtrando de acordo com o filtro construido a cima.
    stDocName = "rel_Cred_Matutino"
    DoCmd.OutputTo acOutputReport, "rel_Cred_Matutino", acFormatPDF, "C:\IGBereia\Credenciais\" & "Credencial de Aluno Matutino  - " & Format(Now(), "ddmmyy") & ".pdf", True, , F
    DoCmd.Maximize

    If Me.Vespertino = -1 Then ' G = G & "CargoAtual = 'Turno Vespertino' OR " ' acrescentado o TV
    'Abre o Relatório filtrando de acordo com o filtro construido a cima.
    stDocName = "rel_Cred_Vespertino"
    DoCmd.OutputTo acOutputReport, "rel_Cred_Vespertino", acFormatPDF, "C:\IGBereia\Credenciais\" & "Credencial de Aluno Vespertino  - " & Format(Now(), "ddmmyy") & ".pdf", True, , G
    DoCmd.Maximize

    If Me.Noturno = -1 Then ' H = H & "CargoAtual = 'Turno Noturno' OR " ' acrescentado o TN
    'Abre o Relatório filtrando de acordo com o filtro construido a cima.
    stDocName = "rel_Cred_Noturno"
    DoCmd.OutputTo acOutputReport, "rel_Cred_Noturno", acFormatPDF, "C:\IGBereia\Credenciais\" & "Credencial de Aluno Noturno  - " & Format(Now(), "ddmmyy") & ".pdf", True, , H
    DoCmd.Maximize
    End If
    End If
    End If





    'Remove os 5 ultimos caracteres do Filtro, que será o " OR "
    'F = left(F, Len(F) - 5)
    'G = left(G, Len(G) - 5)
    'H = left(H, Len(H) - 5)

    Exit_cmdCredenciaisPDF_Click:
       Exit Sub

    Err_cmdCredenciaisPDF_Click:
       MsgBox Err.Description
       Resume Exit_cmdCredenciaisPDF_Click
       

    End Sub
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 362
    Registrado : 12/01/2017

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2 Empty Ajuda com relatório por TURNO escolar_Novo 2

    Mensagem  thiagonsilvaa 26/2/2018, 14:32

    Bom dia.
    Pela base de dados que você anexou não há a "tblmembros" a qual faz a filtragem.

    Uma dica, faça um grupo de opções e um botão para realizar as ações, acredito que resolva seu problema.

    Por exemplo:
    (Código no click do botão)
    If me.qdturnos.value = 1 then
    abre o relatório X
    elseif me.qdturnos.value = 2 then
    Abre o relatório Y
    elseif me.qdturnos.value = 3 then
    abre o relatório Z
    End if
    avatar
    cjsilva2013
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 259
    Registrado : 26/06/2013

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2 Empty Ajuda com relatório por TURNO escolar_Novo 2

    Mensagem  cjsilva2013 26/2/2018, 14:40

    Vou estudar uma forma thiago...

    Se vc baixar o exemplo, ao clicar no botão vai emitir o relatório... Matutino com a credencial...

    Se passar para os demais registros, não emite...

    Criei as consultas que faltavam, no campo vespertino, no critério coloquei verdadeiro...

    Alterei a tabela no relatório para as consultas criadas...

    Mesmo assim, só emite o primeiro registro: Matutino

    Vou continuar tentando aqui...
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 362
    Registrado : 12/01/2017

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2 Empty Ajuda com relatório por TURNO escolar_Novo 2

    Mensagem  thiagonsilvaa 26/2/2018, 15:18

    Tente alterar essa parte do código para:

    Código:
    'Constroi o Filtro de acordo com o valor do campo
    If Me.Matutino = -1 Then 'F = "CargoAtual = 'Turno Matutino'"  ' acrescentado o TM
    'Abre o Relatório filtrando de acordo com o filtro construido a cima.
    stDocName = "rel_Cred_Matutino"
    DoCmd.OutputTo acOutputReport, "rel_Cred_Matutino", acFormatPDF, "C:\IGBereia\Credenciais\" & "Credencial de Aluno Matutino  - " & Format(Now(), "ddmmyy") & ".pdf", True, , F
    DoCmd.Maximize

    elseIf Me.Vespertino = -1 Then ' G = G & "CargoAtual = 'Turno Vespertino' OR " ' acrescentado o TV
    'Abre o Relatório filtrando de acordo com o filtro construido a cima.
    stDocName = "rel_Cred_Vespertino"
    DoCmd.OutputTo acOutputReport, "rel_Cred_Vespertino", acFormatPDF, "C:\IGBereia\Credenciais\" & "Credencial de Aluno Vespertino  - " & Format(Now(), "ddmmyy") & ".pdf", True, , G
    DoCmd.Maximize

    elseIf Me.Noturno = -1 Then ' H = H & "CargoAtual = 'Turno Noturno' OR " ' acrescentado o TN
    'Abre o Relatório filtrando de acordo com o filtro construido a cima.
    stDocName = "rel_Cred_Noturno"
    DoCmd.OutputTo acOutputReport, "rel_Cred_Noturno", acFormatPDF, "C:\IGBereia\Credenciais\" & "Credencial de Aluno Noturno  - " & Format(Now(), "ddmmyy") & ".pdf", True, , H
    DoCmd.Maximize
    End If
    avatar
    cjsilva2013
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 259
    Registrado : 26/06/2013

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2 Empty Ajuda com relatório por TURNO escolar_Novo 2

    Mensagem  cjsilva2013 26/2/2018, 18:08

    Grande Thiago, usei as funções que você disponibilizou e fiz outros ajustes nas consultas... Deu certo agora. Está emitindo.

    Consigo visulizar todas...

    Agora vou estudar uma forma de emitir só o registro atual... Caso queira imprimir a credencial só do aluno X e a impressão também...

    Obrigado pela ajuda...

    Fica aí o exemplo para outros utilizarem...
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 362
    Registrado : 12/01/2017

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2 Empty Ajuda com relatório por TURNO escolar_Novo 2

    Mensagem  thiagonsilvaa 26/2/2018, 18:20

    Boa tarde !

    Que bom que deu certo.
    Agora sobre imprimir o registro atual pode-se usar o CPF do aluno para isso ou algum número que unifique aquele aluno. Como o cpf é uma identificação única pra cada pessoa, fica fácil, por exemplo:

    DoCmd.openreport nomedorelatorio, acViewPreview , , "CPF = '" & me.campocpf & "'"

    Qualquer dúvida volte a retornar.
    Abraços.
    avatar
    cjsilva2013
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 259
    Registrado : 26/06/2013

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2 Empty Ajuda com relatório por TURNO escolar_Novo 2

    Mensagem  cjsilva2013 26/2/2018, 20:24

    Boa tarde,

    Deu certo... Obrigado Thiago. Você me ajudou muito!

    Estava batendo cabeça pra fazer a função e sem sucesso... Desde já fico em dívida...

    Deus abençoe você, sua família e lhe dê cada dia mais conhecimento e inteligência na execução dos seus objetivos...

    Nos itens que você escreveu, estou colocando seus direitos... Depois vou subir a base aqui no fórum e é justo colocar... Para ficar como exemplo e se alguém quiser melhorar o projeto é bem vindo...

    Abraço,

    Resolvido.

    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 362
    Registrado : 12/01/2017

    [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2 Empty [Resolvido]Ajuda com relatório por TURNO escolar_Novo 2

    Mensagem  thiagonsilvaa 26/2/2018, 21:41

    Boa noite meu caro !
    Fico feliz em ter dado certo.

    Com certeza seu exemplo será de grande valia aqui no fórum.

    O fórum agradece o retorno !!!

    Abraços.

      Data/hora atual: 11/4/2021, 14:26