Ir para conteúdo
  • 0

Função Switch


Carlos Silva
Ir para solução Solucionado por Bruno Abdalla de Souza ,

Pergunta

  • Alunos

Olá Pessoal, boa noite!
Estou com a seguinte situação,
Tenho 17 filiais e preciso fazer um calculo onde 3 delas seguem uma regra filtros diferentes das demais

 

tentei a seguinte medida e não funcional

VAR postoFO = CALCULATE([TT REPAROS], F_BASE_REPAROS[EMPRESA] = "abc", F_BASE_REPAROS[POSTO] = "FO")
VAR postoFIBRA = CALCULATE([TT REPAROS], F_BASE_REPAROS[EMPRESA] = "abc", F_BASE_REPAROS[POSTO] = "FIBRA")

RETURN

SWITCH(TRUE(),
F_BASE_REPAROS[UF] = "PR", postoFO,
F_BASE_REPAROS[UF] = "SC", postoFO,
F_BASE_REPAROS[UF] = "RS", postoFO, postoFIBRA)

na lista de filiais tenho 21

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos

Medida =

VAR postoFO = CALCULATE([TT REPAROS], F_BASE_REPAROS[EMPRESA] = "abc", F_BASE_REPAROS[POSTO] = "FO")

VAR postoFIBRA = CALCULATE([TT REPAROS], F_BASE_REPAROS[EMPRESA] = "abc", F_BASE_REPAROS[POSTO] = "FIBRA")

RETURN

SWITCH(

        TRUE(),

         MAX(F_BASE_REPAROS[UF]) IN  ("PR", "SC", "RS"), postoFO,

postoFIBRA)

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
9 minutos atrás, Bruno Abdalla de Souza disse:

Medida =

VAR postoFO = CALCULATE([TT REPAROS], F_BASE_REPAROS[EMPRESA] = "abc", F_BASE_REPAROS[POSTO] = "FO")

VAR postoFIBRA = CALCULATE([TT REPAROS], F_BASE_REPAROS[EMPRESA] = "abc", F_BASE_REPAROS[POSTO] = "FIBRA")

RETURN

SWITCH(

        TRUE(),

         MAX(F_BASE_REPAROS[UF]) IN  ("PR", "SC", "RS"), postoFO,

postoFIBRA)

Bruno, boa noite!
Não funcionou, pelo que pesquisei a função MAX retorna o maior valor de  uma coluna ou entre duas expressões escalares,  UF é um texto, acredito ser por isso que não funcionou

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
44 minutos atrás, Bruno Abdalla de Souza disse:

Explica um pouco melhor. Se for RS, PR ou SC, tem que aparecer somente F?. E se forem outros estados, tem que aparecer o que?

Desculpa, poderia ter explicado melhor
o que estou com dificuldade de fazer é o seguinte,

Quando tiver nas UFs RS, PR ou SC o calculo seja feito apenas no FO
Demais UFs só na Fibra

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
TT_REPETIDA_FIBRA = 
    VAR repSSE =
        CALCULATE(
            [TT_Retrabalho], 
            FILTER(
                Planilha1,
                Planilha1[POSTO]="FO"
            )
        )
    VAR repNNE =
        CALCULATE(
            [TT_Retrabalho], 
            FILTER(
                Planilha1,
                Planilha1[POSTO]="FIBRA"
            )
        )
RETURN
    SWITCH(
        TRUE(),
        MAX(Planilha1[UF]) IN {"PR", "RS", "SC"}, repSSE ,
        repNNE
    )

 

modelo.pbix

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
26 minutos atrás, Bruno Abdalla de Souza disse:
TT_REPETIDA_FIBRA = 
    VAR repSSE =
        CALCULATE(
            [TT_Retrabalho], 
            FILTER(
                Planilha1,
                Planilha1[POSTO]="FO"
            )
        )
    VAR repNNE =
        CALCULATE(
            [TT_Retrabalho], 
            FILTER(
                Planilha1,
                Planilha1[POSTO]="FIBRA"
            )
        )
RETURN
    SWITCH(
        TRUE(),
        MAX(Planilha1[UF]) IN {"PR", "RS", "SC"}, repSSE ,
        repNNE
    )

 

modelo.pbix 44 kB · 0 downloads

Muito obrigado, é isso
Deus abençoe!

Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...