Filtro dinâmico condicional de consulta de energia

1

Eu tenho uma consulta do Power Query que usa uma consulta de função secundária que extrai parâmetros de uma tabela na minha pasta de trabalho. Por exemplo, para filtrar por intervalo de data, eu uso

#"Filtered Rows" = Table.SelectRows(#"Added Custom", each [EventDatetime] >= fnGetParameterValue("EventStartDate") and [EventDatetime] <= fnGetParameterValue("EventEndDate"))

O que eu gostaria de fazer é filtrar apenas se um valor retornado por fnGetParameterValue ("AccountNumber") não for uma string vazia.

Eu tentei inserir esta etapa após a etapa do filtro de datas:

#"Filtered Rows1" = if fnGetParameterValue("AccountNumber") = "" then #"Filtered Rows" else Table.SelectRows(#"Filtered Rows", each [AccountNumber] = fnGetParameterValue("AccountNumber"))

Não pareço ter um erro de sintaxe, mas não recebo nenhum dado de volta.

Como posso filtrar condicionalmente os dados?

    
por Dave 16.09.2015 / 21:15

1 resposta

0

Eu adicionaria uma etapa intermediária para adicionar uma coluna usando sua função (por exemplo, [Filtro de Numeração de Contas]) e usando sua lógica if, nos moldes de:

if fnGetParameterValue("AccountNumber") = "" then [AccountNumber] else fnGetParameterValue("AccountNumber")

Então, eu usaria essa nova coluna em uma etapa "Filtrar", por exemplo,

[AccountNumber] = [AccountNumber Filter]

O passo intermediário também será mais claro para revisão / teste, etc.

    
por 17.09.2015 / 05:43