MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    Filtro em consulta

    Waltair M Souza
    Waltair M Souza
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 104
    Registrado : 06/10/2012

    Filtro em consulta Empty Filtro em consulta

    Mensagem  Waltair M Souza em 10/2/2018, 14:12

    Olá a todos os colegas do forum, cá estou eu com mais uma duvida.

    Tenho uma tabela com três campos numéricos "nível" e "IdProd" e "IdNovo"nestes campos tenho os seguintes dados:

    Nível   Idprod     IdNovo2
    0 ; ...001 ;
    1 ; 00102 ;
    2 ; 00103 ;
    2 ; 00104 ;
    2 ; 00000 ;
    1 ; ........ ;
    2 ; 00105 ;
    0 ; 002.... ;
    1 ; 00201 ;
    2 ; 00205 ;
    2 ; ......... ;
    1 ; ......... ;
    1 ; 11111 ;
    0 ; 003.... ;
    1 ; 00301 ;

    O que preciso é:

    Atualizar os valores do campo IdNovo com o valor do campo IdProd do 1º registro com valor 0 no campo Nível, em todos os registros subsequentes ate encontrar o próximo valor 0 no campo nível e assim sucessivamente, conforme exemplo abaixo:

    Nível Idprod IdNovo2
    0 ; 001.... ;        
    1 ; 00102 ; 001
    2 ; 00103 ; 001
    2 ; 00104 ; 001
    2 ; 00000 ; 001
    1 ; .......... ; 001
    2 ; 00105 ; 001
    0 ; .......... ; 002        
    1 ; 00201 ; 002
    2 ; 00205 ; 002
    2 ; .......... ; 002
    1 ; .......... ; 002
    1 ; 11111 ; 002
    0 ; .......... ; 003
    1 ; 00301 ; 003

    O resumo é repetir o campo IdNovo enquanto o campo Nível for diferente de 0.
    Desculpem se não me fiz entender. Grato por qualquer ajuda que me leve a solução do impasse.
    tauron
    tauron
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1224
    Registrado : 07/12/2011

    Filtro em consulta Empty Re: Filtro em consulta

    Mensagem  tauron em 11/2/2018, 21:45

    Na consulta?

    Ja tentou usar o SeImed?

    IdNovo:seimed([nivel]>0;left([idprod];3);"")
    Waltair M Souza
    Waltair M Souza
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 104
    Registrado : 06/10/2012

    Filtro em consulta Empty Re: Filtro em consulta

    Mensagem  Waltair M Souza em 13/2/2018, 17:11

    Olá Tauron, obrigado pelo interesse na questão.

    veja na coluna "IdNovo" eu preciso que o campo vá sendo preenchido com o valor do campo "IDProd" da última linha que tem na coluna "Nível" o valor 0, este valor irá se repetir na coluna IdNovo ate que seja encontrado um novo valor 0 na coluna "Nível" assim verificado o valor do Campo "IdProd" e passando a o novo valor na coluna "IdNovo" até que o valor da coluna "Nível" encontre outro valor 0, dai verificado novamente o valor do campo IdProd e passando este valor para a coluna "IdNovo" ate que se encontre outro "nível" = 0 e assim sucessivamente ate correr toda a consulta.

    Usei o seimed no campo IdNovo mas quando abro a consulta ele pega os tres primeiros digitos do campo IdProd da mesma coluna. o que preciso é pegar sempre o IdProd da última linha que tem o valor 0 na coluna Nível, enquanto o campo Nível for diferente de 0 ele vai copiando o IdProd daquela última linha, quando for encontrado o próximo valor 0 no campo nível o IdProd desta linha passe a ser copiado para o campo IdNovo da linhas subsequentes ate novo valor 0 no campo Nível...

    No caso que exemplifiquei 001 no campo IdProd poderia ser 010021 ou 124545, na verdade o valor do campo e indiferente, o que preciso mesmo é que ele seja copiado para o campo IdNovo ate que o valor 0 seja encontrado no campo Nível

    Veja o exemplo abaixo
    Nível Idprod IdNovo
    0 ; 001.... ;       nesta linha o valor do campo nível é 0 e IdProd é 001
    1 ; 00102 ; 001 valor do campo IdProd linha 1 copiado para IdNovo
    2 ; 00103 ; 001 valor do campo IdProd linha 1 copiado para IdNovo
    2 ; 00104 ; 001 valor do campo IdProd linha 1 copiado para IdNovo
    2 ; 00000 ; 001 valor do campo IdProd linha 1 copiado para IdNovo
    1 ; .......... ; 001 valor do campo IdProd linha 1 copiado para IdNovo
    2 ; 00105 ; 001 valor do campo IdProd linha 1 copiado para IdNovo
    0 ; .......... ; 002 nesta linha o valor do campo nível é 0 e IdProd é 002
    1 ; 00201 ; 002 valor do campo IdProd linha nível 0 copiado para IdNovo
    2 ; 00205 ; 002 valor do campo IdProd linha nível 0 copiado para IdNovo
    2 ; .......... ; 002 valor do campo IdProd linha nível 0 copiado para IdNovo
    1 ; .......... ; 002 valor do campo IdProd linha nível 0 copiado para IdNovo
    1 ; 11111 ; 002 valor do campo IdProd linha nível 0 copiado para IdNovo
    0 ; .......... ; 003 nesta linha o valor do campo nível é 0 e IdProd é 003
    1 ; 00301 ; 003 valor do campo IdProd linha nível 0 copiado para IdNovo
    desculpe tanto texto...

    Achei algo semelhante aqui no forum relacionado a datas mas tentei exaustivamente usar e não deu resultado...

    No aguardo de seu socorro.

    Grato.
    tauron
    tauron
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1224
    Registrado : 07/12/2011

    Filtro em consulta Empty Re: Filtro em consulta

    Mensagem  tauron em 13/2/2018, 18:33

    Poste seu bd ou as partes envolvidas para que possamos analisar melhor.
    Waltair M Souza
    Waltair M Souza
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 104
    Registrado : 06/10/2012

    Filtro em consulta Empty Re: Filtro em consulta

    Mensagem  Waltair M Souza em 15/2/2018, 19:40

    Olá Tauron, desculpe a demora, mas estava de plantão no carnaval.

    Estou anexando a parte do bd pra você e amigos do forum dar uma olhada

    veja na segunda tabela o Campo2a vai replicando a coluna Campo2 até novo valor 0 na linha Campo1

    Qualquer duvida estamos aqui, grato pelo interesse na ajuda.

    Amigos Enviei a tabela de importação errada abaixo arquivo corrigido, desculpem o transtorno.


    Grato
    Anexos
    Filtro em consulta AttachmentBDCOTACAO_II.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1.4 Mb) Baixado 6 vez(es)

      Data/hora atual: 21/10/2020, 20:22