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]Repetir linhas em uma consulta baseado em determinada quantidade

    MadMax
    MadMax
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 20/04/2021

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  MadMax 25/8/2021, 22:55

    Olá Pessoal,
    Tenho registros que tem uma coluna de quantidade e gostaria de gerar uma consulta que baseado nessa coluna de quantidades  repetissem as linhas na consulta.

    Ex. tabela
    Registro     Data                                    Defeito          Description                       Inspetor    Quantidade
    19097        25/08/2021 17:33:05          AP22-11        Missing Receiver             t.abreu            1
    19097        25/08/2021 17:33:05          LC24             PROXIMITY                     t.abreu            1
    19097        25/08/2021 17:33:05          AP12-08        Antenna Damaged           t.abreu           5

    Nesse caso por exemplo eu precisaria repetir a última linha 5 vezes.
    Esses dados serão usados para gerar um relatório que irá imprimir as informações em etiquetas e esse relatório deveria gerar 7 etiquetas mas eu só consegui fazer gerar 3, uma para cada linha.


    Mais uma vez obrigado MaximoAccess
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8272
    Registrado : 05/11/2009

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  Alexandre Neves 26/8/2021, 18:38

    Boa tarde
    Crie uma tabela espelho. Crie código para recordset ler os registos da primeira tabela e acrescentar tantos quantos os indicados no campo quantidade. A partir daí, tem o resultado na segunda tabela


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  Alexandre Fim 26/8/2021, 21:47

    Olá MadMax,

    Fiz um pequeno exemplo para gerar as linhas, conforme solicitado.

    Ao abrir o formulário, o sistema carrega os dados da tabela "tb_dados" na listbox de cima.

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Gerada10

    Ao clicar no botão "Gerar Dados", o sistema gera os registros na tabela "tb_dados_rel" e atualiza a listbox abaixo

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Gerada11

    OBS: As etiquetas ficam por sua conta...rsss

    É isso.

    Espero ter ajudado.

    Boa sorte

    []'s

    FIM
    Anexos
    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade AttachmentRepeteLinha.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (51 Kb) Baixado 15 vez(es)


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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Setinf11
    Sistemas e Tecnologia Ltda
    MadMax
    MadMax
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 20/04/2021

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  MadMax 27/8/2021, 21:41

    Grande Mestre Alexandre....
    Você é o cara.

    Muito obrigado pelo código criado, adaptei no meu BD e estou com problema de "erro 3061 Parâmetros insuficientes. Eram esperado 1".
    Pesquisei sobre o erro e fui resolvendo os problemas pois quando rodei o código tinha 7 erros.
    Até agora consegui resolver 6 o último estou tentando ainda, o difícil é que não dá para saber onde está o erro.
    Mas estou tentando aqui e assim que conseguir resolver, ou não, eu posto aqui.

    Att.
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  Alexandre Fim 27/8/2021, 22:06

    Olá Mad Max.

    Mande parte do seu projeto que consta o erro, pra analisarmos.

    []'s

    FIM


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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Setinf11
    Sistemas e Tecnologia Ltda
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  Alexandre Fim 30/8/2021, 14:28

    Bom dia MadMax,

    Conseguiu resolver o problema do erro?
    Se Sim, finalize o tópico, por favor.
    Se Não, nos envie o bd para análise.

    Grato

    []'s

    FIM


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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Setinf11
    Sistemas e Tecnologia Ltda
    MadMax
    MadMax
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 20/04/2021

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  MadMax 30/8/2021, 16:28

    Alexandre

    Descobri que o erro está acontecendo por eu estar usando uma Consulta como origem dos dados e uma tabela para os registros da etiqueta.
    No banco que vc postou vc utilizou tabela como origem dos dados e tabela para os registros da etiqueta.
    Acredito ser só um detalhe no código, ou não é possível carregar os dados a partir de uma consulta?

    Sobre postar o banco ele é muito grande.
    MadMax
    MadMax
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 20/04/2021

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  MadMax 30/8/2021, 18:38

    Alexandre boa tarde.

    Para ficar mais claro, eu reproduzi o erro que está acontecendo no banco que vc postou, eu não enviei meu banco porque ele é grande e aqui na empresa não consigo fazer upload de arquivos grandes.
    As alterações que fiz foram:
    1- coloquei mais registros;
    2- Adicionei um campo no formulário com o nome de "Registro";
    3- Criei uma Consulta que filtra o registro digitado no campo "Registro" do formulário;
    4- Alterei o código para ler os valores da Consulta (tudo que era tb_dados alterei para Consulta_tb_dados).


    att
    MadMax
    Anexos
    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade AttachmentRepeteLinha_REV02.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (30 Kb) Baixado 1 vez(es)
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  Alexandre Fim 30/8/2021, 18:53

    MadMax,

    Vc criou uma consulta usando como filtro o campo novo no formulário, porém, não está filtranda lista e também tá dando erro ao gerar registro pq tá faltando uma condição (WHERE) que é o campo da tela.
    Não precisava ter criado a consulta. O filtro poderia ser feito evento "Apos Atualizar" do campo novo, e ai ele filtraria a lista, mas no evento que gera os registros também tem que colocar o filtro.

    Vou ajustar e te mando.

    Aguarde.

    []'s

    FIM


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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Setinf11
    Sistemas e Tecnologia Ltda
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  Alexandre Fim 30/8/2021, 19:06

    MadMax,

    Segue versão com os ajustes. Verifique como é feito o filtro de dados no código.

    É isso.

    Segue nova versão.

    []'s

    FIM
    Anexos
    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade AttachmentRepeteLinha_v3.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (34 Kb) Baixado 12 vez(es)


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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Setinf11
    Sistemas e Tecnologia Ltda
    MadMax
    MadMax
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 20/04/2021

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  MadMax 30/8/2021, 22:26

    Ola Alexandre,

    Deu certinho como eu queria, único problema era que no meu banco de dados real as informações vinham de várias tabelas, então eu fiz conforme abaixo.
    1- Coloquei a consulta em modo design;
    2- Cliquei na opção "Criar tabela";
    3- Acrescentei no código conforme abaixo;
    Código:

        DoCmd.SetWarnings False 'Desabilita os avisos
        DoCmd.OpenQuery "Etq_Consulta_Defeito1", acViewNormal, acReadOnly ' Faz com que a consulta gere a tabela

    E assim pude executar o código conforme você fez.
    Desculpe o textão, e para ficar bem explicado para consultas futuras.

    Obrigado pelo suporte de sempre.
    MadMax
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Empty Re: [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade

    Mensagem  Alexandre Fim 30/8/2021, 22:53

    Ok MadMax !!!
    O fórum agrade.
    Sucesso !!!


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

    [Resolvido]Repetir linhas em uma consulta baseado em determinada quantidade Setinf11
    Sistemas e Tecnologia Ltda

      Data/hora atual: 1/2/2023, 06:54