내 통합 문서의 테이블에서 매개 변수를 가져오는 보조 함수 쿼리를 사용하는 파워 쿼리 쿼리가 있습니다. 예를 들어 날짜 범위별로 필터링하려면 다음을 사용합니다.
#"Filtered Rows" = Table.SelectRows(#"Added Custom", each [EventDatetime] >= fnGetParameterValue("EventStartDate") and [EventDatetime] <= fnGetParameterValue("EventEndDate"))
내가 하고 싶은 것은 fnGetParameterValue("AccountNumber")에 의해 반환된 값이 빈 문자열이 아닌 경우에만 필터링하는 것입니다.
날짜 필터 단계 뒤에 이 단계를 삽입해 보았습니다.
#"Filtered Rows1" = if fnGetParameterValue("AccountNumber") = "" then #"Filtered Rows" else Table.SelectRows(#"Filtered Rows", each [AccountNumber] = fnGetParameterValue("AccountNumber"))
구문 오류가 없는 것 같지만 데이터를 다시 가져올 수 없습니다.
데이터를 조건부로 필터링하려면 어떻게 해야 하나요?
답변1
함수(예: [AccountNumber Filter] )를 사용하고 if 논리를 사용하여 다음 행을 따라 열을 추가하는 중간 단계를 추가하겠습니다.
if fnGetParameterValue("AccountNumber") = "" then [AccountNumber] else fnGetParameterValue("AccountNumber")
그런 다음 필터 단계에서 해당 새 열을 사용합니다. 예:
[AccountNumber] = [AccountNumber Filter]
검토/테스트 등을 위해 중간 단계도 더 명확해집니다.