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


    [Resolvido]Filtro de data em formulário

    avatar
    Roselip
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 66
    Registrado : 18/09/2013

    [Resolvido]Filtro de data em formulário Empty [Resolvido]Filtro de data em formulário

    Mensagem  Roselip em 29/12/2013, 00:31

    Ola pessoal,

    Tenho um formulário com as datas de pesquisa e um botão filtrar para trazer as informações do formulário, mas o comando não responde e eu não consigo encontrar o erro banal que cometi.
    Quero que o filtro me traga as informações do formulário, mas como sou leiga em VBA, eu encontrei o CStr para buscar a primeira coluna, claro que estou deduzindo ser o correto, mas preciso de uma avaliação, pois as colunas é composta de:

    Cliente - Razão Social
    Valor Total da Venda
    Endereço
    Cidade
    Estado
    etc...

    E no botão FILTRAR em propriedades ao clicar eu coloquei:


    Private Sub Btfiltro_Click()
    If IsNull(Me![DataInicial]) Or IsNull(Me![DataFinal]) Then Exit Sub
    Me.Filter = "CStr([Cliente - Razão Social]) between #" & Format(Me![DataInicial], "mm/dd/yyyy") & "# AND #" & Format(Me![DataFinal], "mm/dd/yyyy") & "#"
    Me.FilterOn = True
    Me![DataInicial] = Null
    Me![DataFinal] = Null
    Me![DataInicial].SetFocus

    Podem me explicar onde esta o erro.

    Muito obrigada!
    Anexos
    [Resolvido]Filtro de data em formulário AttachmentProjClientes.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (54 Kb) Baixado 25 vez(es)
    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  HARYSOHN em 29/12/2013, 10:08

    Bom dia Roselip.

    Duas observações no exemplo que enviaste:

    1 - Se vais aplicar um filtro no formulário não se deve ter critérios no campo Data do Pedido na consulta. Ou filtra por critérios na consulta ou por filtro no formulário

    2 - Se pretende filtrar a data do pedido deve especificar esta como filtro, no teu exemplo está pretendendo filtrar o cliente com critérios de data

    Me.Filter = "[Data do Pedido] >= #" & Format(Me![DataInicial], "mm/dd/yyyy") & "# AND [Data do Pedido] <=#" & Format(Me![DataFinal], "mm/dd/yyyy") & "#"

    Cumprimentos.
    avatar
    Roselip
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 66
    Registrado : 18/09/2013

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Roselip em 29/12/2013, 21:37

    Harysohn

    Na sua 1ª observação, eu gostaria de entender porque não posso ter critério na consulta e também no filtro do formulário.
    Te pergunto isso, porque tenho um outro formulário que funciona com o critério da consulta e no filtro do formulário, ajudado a montar por esse forum, só que no formulário tenho a 1ª coluna como sendo a data, e deste tirei o modelo para fazer esse formulário, só que nesse caso, preciso do filtro por data sendo que não vou usar no resultado do formulário, e a 1ª coluna o nome do cliente.

    Tentei fazer como você me informou, excluí do critério da consulta e coloquei no filtro do formulário, mas não deu ceto.


    avatar
    Convidado
    Convidado

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Convidado em 29/12/2013, 23:56

    Pedindo licença ao amigo Piloto, Roseli pelo que entendi você quer filtrar o cliente pela data inicial e final, não é isso? Baixe o exemplo e faça o teste, tive que criar no form. um campo chamado código do cliente, onde você digita o código desse cliente que quer filtrar, digita as datas e faz a filtragem.
    avatar
    Roselip
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 66
    Registrado : 18/09/2013

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Roselip em 30/12/2013, 01:18

    Oi Beto,
    Obrigado pela ajuda, mas neste formulário eu quero digitar o período e o formulário irá me trazer os 20 maiores clientes agrupando o valor das vendas do período digitado..
    Eu não quero trabalhar com código do cliente e sim que traga as colunas que são importante para a manutenção desses clientes.
    avatar
    Convidado
    Convidado

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Convidado em 30/12/2013, 04:11

    e porque não faz a consulta mostrando esses 20 clientes? É só incluir o predicado TOP 20 junto ao select da consulta, mas vale ressaltar que para funcionar a tabela origem da consulta tem que ter uma chave primária, coisa que não vi na sua tabela e que é um erro que deve ser corrigido.


    Última edição por betogivoni em 30/12/2013, 16:12, editado 1 vez(es)
    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  HARYSOHN em 30/12/2013, 11:02

    Respondendo à questão do critério:

    Você pode ter sim um critério na consulta e outro no Filtro... Porém no teu caso o critério da consulta corresponde ao mesmo critério do filtro.
    Oras... ou utiliza um ou outro...

    Beto.. Boa observação sobre a chave primária e a cláusula top
    Consulta agrupada somando os valores e a cláusulaa  Top

    Uma observação... a soma do agrupamento funcionará por Data...
    Se o mesmo cliente tiver Vendas em datas diferentes a consulta exibirá soma de registros para o cliente por data.
    Ou seja... Se a venda tiver data diferente não agrupará.. o que poderá fazer é utilizar o DSum.


    Cumprimentos.
    avatar
    Roselip
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 66
    Registrado : 18/09/2013

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Roselip em 30/12/2013, 21:58

    Meninos,
    Para explicar:
    A minha consulta já tem top 20 no select (SQL), e eu não quero que traga a coluna de data, porque quero que o usuário digite o período da data e o resultado seja a quantidade das maiores 20 vendas por cliente.
    Quanto a chave primária, posso colocar.
    Mas como faço essa coisa funcionar! Sad 
    avatar
    Convidado
    Convidado

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Convidado em 31/12/2013, 21:18

    Chave primária, vem do inglês Primary Key, refere-se a tuplas (conjuntos) de um ou mais campos, cujos valores, nunca se repetem e que podem ser usadas como um índice para os demais campos da tabela do banco de dados, são essenciais pra os relacionamentos e como disse anteriormente, não adianta você ter o TOP junto ao select de sua consulta se não tiver a chave primária, pode alimentar a tabela origem da consulta com 1000 registros que você não vai conseguir ter os 20 na consulta. Você pode baixar apostilas do repositório e você vai entender uma série de coisas que envolve banco de dados e que vai corrigir uma série de erros que cometemos quando inciante, tem se falado bastante aqui no fórum de erros primários que cometemos e que continuamos a cometer, como não colocar espaços, símbolos, nomes reservados ao access (Data, Valor e etc.) em nome de campos e objetos.
    avatar
    Roselip
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 66
    Registrado : 18/09/2013

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Roselip em 1/1/2014, 16:12

    oi Beto

    tudo que tenho aprendido , tenho tirado e buscado do fórum. Mais uma vez, obrigado pelas dicas.
    Mas quero compreender, porque a consulta funciona muito bem, mas se eu levo para o formulário, esse não funciona.
    Acho que o problema esta na construção pelo vba, uma vez que os exemplos tenho tentado adaptar para meu projeto.

    Private Sub Btfiltro_Click()

    If IsNull(Me!DataInicial) Or IsNull(Me!DataFinal) Then Exit Sub
    Me.Filter = "cdate([Data do Pedido]) between #" & Format(Me!DataInicial, "mm/dd/yyyy") & "# AND #" & Format(Me!DataFinal, "mm/dd/yyyy") & "#"
    Me.FilterOn = True
    Me!DataInicial = Null
    Me!DataFinal = Null
    Me!DataInicial.SetFocus
    End Sub

    Como não quero que me traga a coluna "data do pedido", e somente o filtro de data, quando click no botão filtrar esse deveria funcionar. mas acho que o meu erro esta na começo da formula " Me.Filter = "cdate([Data do Pedido])", uma vez que não quero que apareça no resultado do formulário (Coluna).
    Então, a pergunta é como eu escreveria?

    obrigada!
    Silvio
    Silvio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4480
    Registrado : 20/04/2011

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Silvio em 1/1/2014, 18:41

    Boa tarde Rose, feliz 2014 !

    Poste parte do projeto aqui, para darmos uma olhada.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    avatar
    Convidado
    Convidado

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Convidado em 1/1/2014, 21:21

    Roseli, a coisa é um pouco mais complexa do que fazer essa filtragem pelo vba, a questão da consulta quando vc diz que funciona, eu digo: do jeito que você criou a consulta não funciona, pra você tirar suas dúvidas abra a consulta que você criou (052 - 20MaioresVendas), coloquei 30 registros na tabela origem, mas você só vai visualizar apenas 17, depois abra a consulta (Cópia de 052 - 20MaioresVendas), nela você vai ver os 20 registros como pede o TOP 20, isso ocorre porque na sua não tem a chave primária como eu havia dito antes e a outra consulta tem essa chave (IdVenda). Depois de fazer esses testes pode excluir as 2, pois as que vão servir para sua necessidade são as outras 2 (qryFiltro e qry20Tops), sendo que, a 1ª faz a filtragem das datas e a 2ª pega os 20 registros. Então você vai esquecer aquela filtragem pelo formulário e vai usar a da consulta, ou seja quando mandar abrir o formulário vai aparecer as caixas de datas inicial e final para você digitar as datas que quer filtrar e os 20 maiores compradores vão ser carregados co formulário.
    avatar
    Convidado
    Convidado

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Convidado em 2/1/2014, 01:34

    Roseli, desculpa, tinha anexado o exemplo errado, o corretor é esse que postei no mesmo lugar acima, baixe novamente e teste, na verdade são 3 consultas e não 2 como disse na msg anterior. O exemplo anterior foi o primeiro teste que fiz, mas está retornando 21 registro e não 20.
    avatar
    Roselip
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 66
    Registrado : 18/09/2013

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Roselip em 4/1/2014, 00:55

    OI Beto,
    Eu adaptei no meu projeto conforme seu exemplo, mas não gostaria de abrir o formulário com a caixa de data do Windows
    Então tentei criar um formulário que filtre as datas e um botão para filtrar o relatório principal, mas não esta trazendo as informações do formulário principal.
    Poderia me dizer onde estou errando?.

    Obrigada!!
    Anexos
    [Resolvido]Filtro de data em formulário AttachmentProjClientes_Alterado2.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (310 Kb) Baixado 38 vez(es)
    avatar
    Convidado
    Convidado

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Convidado em 4/1/2014, 16:22

    Oi Roseli, você quer saber onde está errando? Como diz a música seu erro é que você está tentando assoviar e chupar cana ao mesmo tempo, e ai não dá certo, o amigo Piloto alertou sobre o uso do filtro em um ou em outro e não nos 2 e você disse que tinha um formulário que funciona com o filtro nos 2, sinto contradizer-lhe mas estais equivocada, o filtro que está funcionando na verdade é o do formulário o da consulta está obsoleto, é só observar  a origem do seu formulário, provavelmente é a tabela e não a consulta, pra você tirar suas dúvidas é só tirar a filtragem do critério da sua consulta que vai ver que o filtro vai continuar funcionando. Infelizmente vc terá que usar a caixa de datas da própria consulta, lembra que disse anteriormente para esquecer a filtragem pelo formulário que a questão era um pouco complexa? Pois é, criei as 3 consultas por ser 2 filtragens a ser feita, ou seja, a 1ª faz a filtragem do período, sendo que podem ter 100 registros no período especificado pelo usuário, a 2ª faz a soma das vendas e a 3ª faz a filtragem dos 20 clientes. Faça a importação das consultas do modelo que postei para o seu projeto, pois essas que veio na sua postagem estão erradas, elas não estão retornando os 20 registros.
    avatar
    Roselip
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 66
    Registrado : 18/09/2013

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Roselip em 5/1/2014, 16:02

    Beto, Valeu, vou deixar de assoviar e chupar cana ao mesmo tempo, ( Very Happy ), ainda estou no nível I de aprendizado, e é meu primeiro projetinho, gostaria de deixa-lo com uma aparência melhor, mas vou usar a caixa de dialogo do Windows mesmo para o filtro de datas.
    Só gostaria de tirar a msn "Inserir valor do parametro?" para "Digitar data de pesquisa.", Isso é possível para esse filtro?

    obrigada
    avatar
    Convidado
    Convidado

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Convidado em 6/1/2014, 14:29

    Roseli, faça o teste nesse novo exemplo, entre pelo Frm_FiltrarData e digite as datas para fazer a filtragem, mas lembre-se, quando falei que voce estava tentando assoviar e chupar cana ao mesmo tempo, estava me referindo a fazer a filtragem na consulta e no formulário que não daria certo, veja que no exemplo atual a filtragem é o da consulta, nos formulários não existe filtragem. Teste várias vezes para ver se os registros estão sendo filtrados corretamente, aparentemente pelo teste que fiz está certinho.
    avatar
    Roselip
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 66
    Registrado : 18/09/2013

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Roselip em 7/1/2014, 01:33

    oi Beto,
    Testei no meu projeto e agora deu certo, agora sim entendi o processo do filtro.
    Demorou, mas peguei, e mais uma vez obrigada pela dedicação.

    abraço
    Roseli
    avatar
    Convidado
    Convidado

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Convidado em 7/1/2014, 02:08

    Ok, e que bom que entendeu o processo, saudações do fórum pelo retorno.
    crysostomo
    crysostomo
    VIP
    VIP

    Respeito às Regras 75%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1030
    Registrado : 23/01/2018

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  crysostomo em 27/8/2019, 13:29

    Bom dia , o meu está dando erro , ele não está filtrando pelo formulario, , antes de abrir ven a janela pedindo a data , e está bloqueando o carregamento da minha lista


    .................................................................................
    Uma mão ajuda a outra.
    Feliz aquele que transfere o que sabe e aprende o que ensina.

    Conteúdo patrocinado

    [Resolvido]Filtro de data em formulário Empty Re: [Resolvido]Filtro de data em formulário

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 9/12/2019, 10:20