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


3 participantes

    [Resolvido]Relatório com dados apresentados na horizontal

    avatar
    ratrevizam
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 21/03/2017

    [Resolvido]Relatório com dados apresentados na horizontal Empty [Resolvido]Relatório com dados apresentados na horizontal

    Mensagem  ratrevizam 24/3/2017, 01:43

    Pessoal,

    Boa noite!

    Fiz um relatório para imprimir o pedido. Está perfeito e funcional. Mas, agora preciso incluir os vencimentos. Contudo, quando crio a relação da tabela PAGAMENTOS com a tabela DETALHES DO PEDIDO, ele repete os dados na quantidade dos vencimentos. Portanto, pretendo fazer um sub-relatório para os vencimentos. Todavia, gostaria que eles fossem exibidos na horizontal, ao invés de serem relacionados na vertical, por exemplo:

    MODELO ALMEJADO

    23/03/2017   |   23/04/2017   |   23/05/2017


    MODELO FEITO ATÉ AGORA

    23/03/2017
    23/04/2017
    23/05/2017


    Posto o supracitado, alguém sabe como fazer isso e pode me ajudar? Li bastante sobre o assunto, mas nada deu certo. Por exemplo, já tentei consulta cruzada, entre outros.

    Fico no aguardo.

    Obrigado!
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Relatório com dados apresentados na horizontal Empty Re: [Resolvido]Relatório com dados apresentados na horizontal

    Mensagem  Alexandre Fim 24/3/2017, 05:22

    Olá Ratrevizam,

    Fiz um pequeno exemplo contendo um relatório com as parcelas na horizontal.
    Ai vc faz adaptações ao seu relatório, ok?

    Espero ter ajudado.

    Abraço
    Anexos
    [Resolvido]Relatório com dados apresentados na horizontal AttachmentParcelas.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (29 Kb) Baixado 118 vez(es)
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Relatório com dados apresentados na horizontal Empty Re: [Resolvido]Relatório com dados apresentados na horizontal

    Mensagem  Alexandre Fim 24/3/2017, 14:21

    Olá Ratrevizam,
    Conseguiu ver o relatório?
    avatar
    ratrevizam
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 21/03/2017

    [Resolvido]Relatório com dados apresentados na horizontal Empty Re: [Resolvido]Relatório com dados apresentados na horizontal

    Mensagem  ratrevizam 24/3/2017, 22:17

    Alexandre,

    Boa noite!

    Muito obrigado pela ajuda, pois foi de extrema valia. Deu tudo certo, sim. Era exatamente o que precisava. Fiz algumas alterações, buscando os dados diretamente na tabela ao invés de trabalhar com consulta. Também, acrescentei uma condição para evitar a replicação do separador ao final da relação das datas.

    Segue o resultado final:

    Private Sub Report_Load()
    If Me.Pedido > 0 Then 'Verifica se o valor do registro selecionado no formulário e enviado ao relatório é válido

    Dim db As DAO.Database 'Criação de instrução de abertura do banco de dados
    Dim rs As DAO.Recordset 'Criação de instrução de consulta
    Dim strparc As String 'Criação de instrução variável

    Set db = CurrentDb() 'Usa o banco de dados atual
    Set rs = db.OpenRecordset("SELECT vencimento FROM pagamentos WHERE pedido = " & Me.Pedido & " GROUP BY vencimento") 'Abre a tabela pagamentos de acordo com o critério definido ao campo pedido

    Do While Not rs.EOF 'Verifica se não é o fim do arquivo

    separador = " | " 'Cria uma variável para determinar o separador das datas dos vencimentos
    If (rs.RecordCount - 1) = rs.AbsolutePosition Then 'Condição SE para verificar se é o último registro válido
    separador = " " 'Troca o valor do separador das datas dos vencimentos quanto atinge o último registro válido, a fim de não replicar mais uma barra ao final da última data
    End If 'Encerra a condição SE

    strparc = rs("vencimento") 'Traz as datas dos vencimentos, em conformidade com a pesquisa feita na tabela
    txtParc.Value = txtParc & Format(strparc, "dd/mm/yyyy") & separador 'Transfere as datas para a caixa de texto chamada de txtParc no relatório
    rs.MoveNext 'Avança os registros
    Loop

    rs.Close 'Encerra a consulta
    db.Close 'Encerra o banco de dados
    Set rs = Nothing 'Libera a memória qu havia sido reservada para a consulta

    End If 'Encerra a condição SE de verificação da validade do registro enviado ao relatório pelo formulário
    End Sub


    Um forte abraço, bom final de semana e até logo.
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Relatório com dados apresentados na horizontal Empty Re: [Resolvido]Relatório com dados apresentados na horizontal

    Mensagem  Alexandre Fim 25/3/2017, 00:47

    Boa Noite Ratrevizam...
    E isso aí!!! A idéia é explorar os recursos do VBA.
    Parabéns pelo seu trabalho.

    Abracos
    avatar
    phafini
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 19/04/2020

    [Resolvido]Relatório com dados apresentados na horizontal Empty Dúvida!

    Mensagem  phafini 21/12/2020, 17:38

    Alexandre,

    Boa noite!

    Muito obrigado pela ajuda, pois foi de extrema valia. Deu tudo certo, sim. Era exatamente o que precisava. Fiz algumas alterações, buscando os dados diretamente na tabela ao invés de trabalhar com consulta. Também, acrescentei uma condição para evitar a replicação do separador ao final da relação das datas.

    Segue o resultado final:

    Private Sub Report_Load()
    If Me.Pedido > 0 Then 'Verifica se o valor do registro selecionado no formulário e enviado ao relatório é válido

    Dim db As DAO.Database 'Criação de instrução de abertura do banco de dados
    Dim rs As DAO.Recordset 'Criação de instrução de consulta
    Dim strparc As String 'Criação de instrução variável

    Set db = CurrentDb() 'Usa o banco de dados atual
    Set rs = db.OpenRecordset("SELECT vencimento FROM pagamentos WHERE pedido = " & Me.Pedido & " GROUP BY vencimento") 'Abre a tabela pagamentos de acordo com o critério definido ao campo pedido

    Do While Not rs.EOF 'Verifica se não é o fim do arquivo

    separador = " | " 'Cria uma variável para determinar o separador das datas dos vencimentos
    If (rs.RecordCount - 1) = rs.AbsolutePosition Then 'Condição SE para verificar se é o último registro válido
    separador = " " 'Troca o valor do separador das datas dos vencimentos quanto atinge o último registro válido, a fim de não replicar mais uma barra ao final da última data
    End If 'Encerra a condição SE

    strparc = rs("vencimento") 'Traz as datas dos vencimentos, em conformidade com a pesquisa feita na tabela
    txtParc.Value = txtParc & Format(strparc, "dd/mm/yyyy") & separador 'Transfere as datas para a caixa de texto chamada de txtParc no relatório
    rs.MoveNext 'Avança os registros
    Loop

    rs.Close 'Encerra a consulta
    db.Close 'Encerra o banco de dados
    Set rs = Nothing 'Libera a memória qu havia sido reservada para a consulta

    End If 'Encerra a condição SE de verificação da validade do registro enviado ao relatório pelo formulário
    End Sub

    Um forte abraço, bom final de semana e até logo.

    Aqui deu certo... Porém, vou tentar ilustrar o que eu preciso:

    Exemplo:

    Minha db "Manutenções":

    Fabricante----------NumSerie------------NumOS
    LG------------------12345----------------108/2020
    LG------------------67890----------------108/2020  
    LG------------------01234----------------108/2020
    LG------------------34158----------------108/2020
    Samsung-----------P1233----------------109/2020
    Apple---------------A5587----------------108/2020
    Apple---------------A87788---------------110/2020
    Samsung-----------P55474---------------110/2020

    O relatório precisa me retornar a seguinte informação:

    Número da Ordem de Serviço: 108/2020 (textbox para consultar)

    Resultado:

    LG: 12345, 67890, 01234, 34158.

    Apple: A55877.

    Consegui ser claro?

    Conteúdo patrocinado


    [Resolvido]Relatório com dados apresentados na horizontal Empty Re: [Resolvido]Relatório com dados apresentados na horizontal

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 29/3/2024, 06:31