04 de setembro de 2026
Dois filtros, uma armadilha: quando 'Este mês' e 'escolher outro mês' brigam entre si

Toda tela de lista com mais de uma dúzia de itens ganha um filtro de período. E toda vez que essa tela cresce, alguém adiciona um segundo filtro "pra facilitar" — um atalho rápido, tipo "Este mês", ao lado do seletor que deixa escolher qualquer mês. Faz sentido isoladamente. O problema aparece quando os dois tentam decidir a mesma coisa ao mesmo tempo, e ninguém testa o que acontece quando eles discordam.
O que o usuário via
Na tela de Pagamentos do igency havia duas formas de filtrar por período: quatro pílulas de atalho ("Este mês", "Este trimestre", "Este ano", "Tudo") e, separadamente, um dropdown pra escolher um mês específico ("Todos os meses" ou um mês do histórico). As pílulas vinham pré-selecionadas em "Este mês" — decisão tomada de propósito numa correção anterior, pra abrir a tela já filtrada no período mais útil.
O que ninguém tinha testado: os dois filtros não eram alternativas, eram aplicados em conjunto. Escolher um mês diferente no dropdown não substituía o "Este mês" da pílula — só adicionava uma segunda condição. Com a pílula travada no mês atual por padrão, qualquer mês diferente escolhido no dropdown produzia uma lista vazia ou um resultado que não batia com o que a pessoa esperava ver. Um gestor de tráfego real reportou exatamente isso, com prints: escolher outro mês no seletor "seria filtro aninhado" e simplesmente não funcionava — a sugestão dele foi direta: "o filtro anterior de período a mostrar é inútil e pode ser totalmente removido".
Por que dois filtros que parecem independentes não são
O erro não está em nenhum dos dois filtros isoladamente — cada um, sozinho, fazia exatamente o que deveria. Está na forma como foram combinados: um if pra cada filtro, aplicados em sequência sobre a mesma lista, o que na prática é um E lógico entre eles. Isso é natural de escrever e fácil de não perceber, porque cada filtro continua "funcionando" no sentido estrito — devolve resultado nenhum, não quebra, não gera erro. O bug não aparece em teste automatizado nem em revisão rápida de tela; aparece só quando alguém usa os dois ao mesmo tempo com valores que não são o mesmo período, que é exatamente o caso que a pessoa mais precisa: comparar o mês atual com um mês passado.
Dois filtros de período na mesma tela quase sempre respondem à mesma pergunta ("que intervalo eu quero ver?") de formas diferentes — um por atalho, outro por escolha manual. Quando os dois respondem a pergunta diferente ao mesmo tempo, combiná-los em AND silenciosamente restringe o resultado a "só o que os dois concordam", em vez de deixar o mais específico prevalecer. A saída não é sempre "juntar direito" — às vezes o atalho deveria substituir a escolha manual, não somar a ela. E às vezes, como aqui, dois filtros que fazem parte do mesmo trabalho (recortar por período) não deveriam existir como dois controles separados.
Como foi corrigido
A correção não foi ensinar os dois filtros a se coordenarem — foi remover a duplicação. Sobrou um único filtro de período: o dropdown de mês, que passou a vir pré-selecionado no mês corrente por padrão (preservando a mesma intenção original das pílulas, sem duas fontes de verdade concorrendo). O botão "Limpar" continua voltando o filtro pra "Todos os meses", igual antes. O segundo ponto que o mesmo usuário reportou — o valor de "Pendente" no rodapé da tabela "nunca atualiza" — na leitura do código não era esse bug: o valor já era recalculado a cada filtro aplicado. O que ele estava pedindo, na prática, era uma métrica diferente (receita esperada do mês menos o já recebido, em vez da soma do que está pendente de cobrança lançada) — isso não é bug, é decisão de produto, e ficou registrado à parte pra ser avaliado como tal.
O que isso ensina pra sua própria tela de filtros
Se sua ferramenta (ou a planilha que você monta pra cliente) tem mais de um controle de período na mesma view, vale uma pergunta simples: os dois respondem exatamente à mesma pergunta, ou a perguntas diferentes? Se for a mesma pergunta — "que intervalo eu quero ver" — dois controles são um convite ao bug que aconteceu aqui: um trava o outro sem avisar. A forma mais barata de evitar isso não é testar todas as combinações depois de pronto, é notar durante o desenho que dois filtros do mesmo tipo estão prestes a nascer, e decidir logo ali se um deles é redundante.
Como conferir cobrança por mês no igency, na prática
A tela ficou mais simples depois da correção: hoje há um único controle de período, e o passo a passo é direto.
- Abra Pagamentos (
/dashboard/payments) no menu do dashboard. - A tela já abre filtrada no mês corrente por padrão — os cards de total recebido e o valor pendente refletem só esse mês.
- Pra ver outro mês, use o dropdown de período (ao lado dos filtros de cliente e status) e escolha o mês do histórico que quiser conferir. A lista e os totais recalculam na hora, sem nenhum outro filtro escondido competindo com essa escolha.
- Pra voltar a ver tudo, clique em Limpar (aparece assim que algum filtro — mês, cliente ou status — está ativo) e o dropdown volta para Todos os meses.
Sem pílula de atalho pra lembrar de desmarcar, sem filtro escondido brigando com o que você escolheu — o mês que aparece na tela é sempre o mês que você selecionou.
Quer parar de montar filtro de planilha na mão pra saber quem te deve o quê?
Se você ainda controla cobrança de cliente em planilha, sobra menos tempo pra notar esse tipo de detalhe — e mais chance de errar o mês sem perceber. Com até 3 clientes, o plano Free do igency já inclui Kanban, aprovação de conteúdo por link e controle financeiro completo, sem limite de tempo e sem pedir cartão. Passou disso, o Pro libera clientes ilimitados por R$19,90/mês (ou R$199/ano), com 30 dias de teste grátis antes da primeira cobrança.
Gerencie clientes, tarefas e cobrança sem planilha
Grátis para até 3 clientes. No Pro, 30 dias de teste antes da primeira cobrança.
Testar o igency Pro grátis →