Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Pessoal, preciso fazer um campo que se alguma loja for filtrada ele tras o valor da loja, mas se todas as lojas forem selecionadas no filtro, ele apresente o valor de 422, pensei no if, mas como colocar no if essa condição?
Fiquei com uma dúvida, todas as lojas são as 422 ou não?
Não, cada loja possui um valor médio de liberação de crédito inicial. Mas se todas as lojas forem selecionadas, o valor deve ser 422, não é uma média comum, é um cálculo feito pela empresa parceira que leva em contas diversos fatores, por isso não posso calcular. Preciso trazer a média entre as lojas selecionadas (com exceção se todas forem selecionadas), aí seria os 422 que comentei.
Ficaria inviável fazer um IF com essas 422 lojas, acho que seria interessante ter um campo no seu modelo de dados indicando quais são essas lojas através de um flag (0 ou 1).
Desta maneira a regra pode ser bem mais simples de se aplicar, seja em medidas ou dimensões
Detalhe, esse flag você pode criar através de um DE/Para usando a função applymap para aplicar.
Olá, entao na verdade são 37 lojas. Esse valor é o valor médio em reais liberado em cada loja.
Eu precisaria que no campo trouxesse a média dos valores de cada loja que se fosse todas as lojas selecionadas no filtro daria 436 reais. Mas tem esse detalhe, ele deve trazer a média se não forem todas as lojas. Caso seja todas as lojas selecionadas no filtro, deverá trazer o valor fixo de 422 reais. Obrigado
Forneça mais informações de seus dados, assim podemos trabalhar com um exemplo.
Sinceramente ainda não consegui entender o cálculo que deseja fazer.
Desculpe a demora, mas já agradeço pela ajuda.
Vamos lá, vou tentar exemplificar melhor.
Por exemplo tenho 3 lojas:
Loja 1 valor médio liberado de crédito é R$ 400
Loja 2 valor médio liberado de crédito é R$ 450
Loja 3 valor médio liberado de crédito é R$ 440
Se eu selecionar no filtro a Loja 1 e Loja 2 ele traria a média R$ 425, se eu selecionar no filtro a Loja 1 e Loja 3 ele também traria a média que seria R$ 420, a mesma coisa se eu selecionar no filtro Loja 2 e Loja 3 que traria a média que seria a média R$ 445. Mas se eu selecionar todas no filtro ou seja Loja 1, 2 e 3 ele deve trazer obrigatoriamente o valor de R$ 422 sempre e não a média de R$ 430 como seria o normal.
OK, consegui entender, apesar de achar meio estranho ter um número fixo no seu código.
Bom, para saber se todos os valores do campo LOJA foram selecionados: Existem duas situações
Para saber se o usuário não selecionou nada, é mais fácil, basta utilizar a função GetSelectecCount(NOME_DO_CAMPO_LOJA)=0
Para saber se o usuário selecionou todas as lojas, então vamos ter que fazer uma operação para descobrir a quantidade de lojas da sua base:
Count({1} DISTINCT NOME_DO_CAMPO_LOJA)
Agora a operação fica mais simples:
if( GetSelectedCount(NOME_DO_CAMPO_LOJA) = Count({1} DISTINCT NOME_DO_CAMPO_LOJA) OR GetSelectedCount(NOME_DO_CAMPO_LOJA)=0, 422, AVG(VALOR))
Estou anexando um QVF para você ver o exemplo
Muito obrigado amigo, irei fazer o teste aqui.