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

    Consulta Selecionar

    Compartilhe

    Gilberto Gaspar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 10
    Registrado : 04/10/2018

    Consulta Selecionar

    Mensagem  Gilberto Gaspar em 5/10/2018, 17:16

    boa tarde
    Criei um banco , pequeno,   e  travei nuam consulta...
    Vou explicar...
    Entrada de notas fiscais  com parcelas a pagar,  preciso  selecionar  apenas as parcelas que nao tenham data de pagamento informadas,   mas  a  minha consulta, nao traz as parcelas da nota que já tem um pagamento informado,  nao sei como resolver,..
    Podem me ajudar
    Deixei em anexo o meu banco,

    Agradeço demais...
    CT_PARCELAS_A_VENCER  cria a tabela  TB_PARCELAS_A_VENCER,  mas preciso que venham apenas as parcelas sem dt  pagto infromadas..
    (os dados informados são todos simulacao, entao podem mecher a vontade)
    Anexos
    PANIFICADORA_EDINEUSA.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (159 Kb) Baixado 6 vez(es)
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    Re: Consulta Selecionar

    Mensagem  Alexandre Neves em 6/10/2018, 10:57

    Bom dia e bem-vindo ao fórum
    Fala em data de pagamento. Não vejo nenhum campo com esse nome

    Atenção ao respeito pelas palavras reservadas do Access, para não ter problemas com execução do código
    Já temos abordado várias vezes. Procure no fórum


    .................................................................................
    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

    Gilberto Gaspar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 10
    Registrado : 04/10/2018

    Re: Consulta Selecionar

    Mensagem  Gilberto Gaspar em 6/10/2018, 12:34

    Bom dia
    na  consulta  CT_PARCELAS_A_VENCER,  voce  pode visualisar o campo PAGTO01, que vem da consulta CT_ENTRADA_NFISCAIS, cujo campo é DTPAGTO_01
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    Re: Consulta Selecionar

    Mensagem  Alexandre Neves em 6/10/2018, 13:26

    E também vejo PAGTO_02, PAGTO_03, ...


    .................................................................................
    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

    Gilberto Gaspar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 10
    Registrado : 04/10/2018

    Re: Consulta Selecionar

    Mensagem  Gilberto Gaspar em 6/10/2018, 13:51

    sim, tem 10 datas de pagamento, quando criei a entrada de notas fiscais, deixei espaço para até 10 parcelas, e cada uma tem a sua data de pagamento, porém, quando eu informo uma data de pagamento, em uma nota que tem mais de uma parcela a pagar, e quero selecionar apenas as parcelas não pagas, isso eu não estou conseguindo, a minha consulta simplesmente nao me mostra a nota fiscal onde já informei um pagamento,
    Preciso que me traga apenas as parcelas não pagas, da nota fiscal onde já tenho um pagamento infromado,
    Se puder me ajudar....
    Caso precise mudar a forma que criei, pode ficar à vontade....

    te agradeço antecipado
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    Re: Consulta Selecionar

    Mensagem  Alexandre Neves em 6/10/2018, 13:56

    Não entendi agora
    Quer que mostre as notas que não têm nenhum pagamento ou quer que mostre as que têm algum pagamento?


    .................................................................................
    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

    Gilberto Gaspar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 10
    Registrado : 04/10/2018

    Re: Consulta Selecionar

    Mensagem  Gilberto Gaspar em 6/10/2018, 14:22

    quero que mostre as parcelas que não tenham data de pagamento informadas. assim, se uma nota tiver 3 parcelas, mas uma parcela já foi paga, queria que mostrasse as parcelas faltantes desta nota fiscal, entende...
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    Re: Consulta Selecionar

    Mensagem  Alexandre Neves em 6/10/2018, 16:45

    como tem 10 parcelas em cada registo, quando a condição é verdadeira (tenha algum pagamento já efectuado) mostra o registo com as 10 parcelas (umas pagas, outras não)

    Se quiser mostrar só as parcelas não pagas dos registos que já tenham alguma parcela paga, ter-se-á que construir código para tal
    É isto que quer?

    Com os dados que apresentou, que dados queria como resultado?


    .................................................................................
    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

    Gilberto Gaspar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 10
    Registrado : 04/10/2018

    Re: Consulta Selecionar

    Mensagem  Gilberto Gaspar em 6/10/2018, 17:45

    Exato, isso mesmo
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    Re: Consulta Selecionar

    Mensagem  Alexandre Neves em 6/10/2018, 18:37

    Elimine a consulta acréscimo e execute o procedimento
    Código:
    Sub PreencheTabelaParcelasAVencer()
        ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        '   código criado por Alexandre Neves, do Fórum MaximoAccess   '
        ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        Dim Rst As DAO.Recordset, Rst2 As DAO.Recordset, B1 As Byte, B2 As Byte
        CurrentDb.Execute "DELETE * FROM TB_Parcelas_A_Vencer_01"
        Set Rst = CurrentDb.OpenRecordset("SELECT DATA, NFISCAL, COD_FORNECEDOR, NM_FORMECEDOR, VALOR_TOTAL, VCTO_PARC_01, VLR_PARC_01, IIf([DTPAGTO_01],1,0) AS PAGTO_01, VCTO_PARC_02, VLR_PARC_02, IIf([DTPAGTO_02],1,0) AS PAGTO_02, VCTO_PARC_03, VLR_PARC_03, IIf([DTPAGTO_03],1,0) AS PAGTO_03, VCTO_PARC_04, VLR_PARC_04, IIf([DTPAGTO_04],1,0) AS PAGTO_04, VCTO_PARC_05, VLR_PARC_05, IIf([DTPAGTO_05],1,0) AS PAGTO_05, VCTO_PARC_06, VLR_PARC_06, IIf([DTPAGTO_06],1,0) AS PAGTO_06, VCTO_PARC_07, VLR_PARC_07, IIf([DTPAGTO_07],1,0) AS PAGTO_07, VCTO_PARC_08, VLR_PARC_08, IIf([DTPAGTO_08],1,0) AS PAGTO_08, VCTO_PARC_09, CT_ENTRADA_NFISCAIS.VLR_PARC_09, IIf([DTPAGTO_09],1,0) AS PAGTO_09, VCTO_PARC_10, VLR_PARC_10, IIf([DTPAGTO_10],1,0) AS PAGTO_10 FROM CT_ENTRADA_NFISCAIS;")
        Set Rst2 = CurrentDb.OpenRecordset("SELECT * FROM TB_Parcelas_A_Vencer_01")
        
        Do While Not Rst.EOF
            For B1 = 1 To 9
                If Rst("PAGTO_" & Format(B1, "00")) = 0 Then
                    Rst2.AddNew
                    Rst2("DATA") = Rst("DATA")
                    Rst2("NFISCAL") = Rst("NFISCAL")
                    Rst2("COD_FORNECEDOR") = Rst("COD_FORNECEDOR")
                    Rst2("NM_FORMECEDOR") = Rst("NM_FORMECEDOR")
                    Rst2("VALOR_TOTAL") = Rst("VALOR_TOTAL")
                    For B2 = B1 To 10
                        Rst2("VCTO_PARC_" & Format(B2, "00")) = Rst("VCTO_PARC_" & Format(B2, "00"))
                        Rst2("VLR_PARC_" & Format(B2, "00")) = Rst("VLR_PARC_" & Format(B2, "00"))
                        Rst2("PAGTO_" & Format(B2, "00")) = Rst("PAGTO_" & Format(B2, "00"))
                    Next
                    Rst2.Update
                    Exit For
                End If
            Next
            Rst.MoveNext
        Loop
        Set Rst = Nothing: Set Rst2 = Nothing
    End Sub


    .................................................................................
    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

    Gilberto Gaspar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 10
    Registrado : 04/10/2018

    Re: Consulta Selecionar

    Mensagem  Gilberto Gaspar em 8/10/2018, 13:02

    bom dia alexandre...
    obrigado pelo retorno, vou ver se consigo inserir esse código, problema é que nem sei em qual local do BD tenho que inserir isso, mas vou pesquisar...

    Gilberto Gaspar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 10
    Registrado : 04/10/2018

    Re: Consulta Selecionar

    Mensagem  Gilberto Gaspar em 8/10/2018, 14:26

    Alguem pode me ajudar na inserção deste código? não sei fazer

    Gilberto Gaspar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 10
    Registrado : 04/10/2018

    Re: Consulta Selecionar

    Mensagem  Gilberto Gaspar em 9/10/2018, 12:35

    bom dia a todos..
    não consigo inserir esse codigo, não tenho habilidades suficientes do Access para conseguir fazer isso, se alguem puder me ajudar eu agradeço.

    FabioGO
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 66
    Registrado : 22/08/2012

    Re: Consulta Selecionar

    Mensagem  FabioGO em 9/10/2018, 13:07

    Crie um botão de comando e insira o código no evento ao clicar.

    Gilberto Gaspar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 10
    Registrado : 04/10/2018

    Re: Consulta Selecionar

    Mensagem  Gilberto Gaspar em 9/10/2018, 13:44

    consegui..... obrigado a todos pela ajuda....

    Gilberto Gaspar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 10
    Registrado : 04/10/2018

    Re: Consulta Selecionar

    Mensagem  Gilberto Gaspar em 9/10/2018, 15:46

    Obrigado Alexandre Neves e FabioGO, pela ajuda na criação do Código e pela dica de como inserir o código, coisas que eu nao sabia....
    Valeu muito a ajuda
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    Re: Consulta Selecionar

    Mensagem  Alexandre Neves em 9/10/2018, 20:50

    Boa noite
    O fórum é para isso mesmo: ajudar quem precisa

    Agora, marque o tema por resolvido, premindo o botão "Resolvido" que se encontra na zona inferior direita do formulário do fórum


    .................................................................................
    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

      Data/hora atual: 15/11/2018, 04:49