SharePoint의 계산된 열 | 개요
SharePoint에서 계산된 열의 중요성과 목록에서 자동 계산 및 데이터 수집을 수행하는 방법을 알아보세요.
오늘은 숨겨진 DAX 함정이라고 부르는 것에 집중하고 싶습니다. 이러한 상황이 발생하면 DAX가 제대로 표시되지만 제대로 작동하지 않기 때문에 미쳐버릴 것 같은 느낌이 들 것입니다. 이러한 상황이 발생하는 경우와 이에 대해 수행할 수 있는 작업을 안내하고 그 과정에서 몇 가지 일반적인 DAX 최적화 모범 사례에 대해서도 설명합니다. 이 블로그 하단에서 이 튜토리얼의 전체 비디오를 볼 수 있습니다.
먼저 우리가 여기서 작업하고 있는 것을 살펴보겠습니다. 우리는 Internet Movie Database에서 약 10년 간의 데이터를 가지고 있습니다. 팩트 테이블은 매우 간단하며 등급 데이터, 예산 데이터 및 총 데이터가 있습니다.
오늘은 전 세계 매출에 대해 알아보겠습니다.
확장 날짜 테이블도 있습니다. 이것은 날짜 테이블과 팩트 테이블을 기반으로 한 시간 인텔리전스 분석이 될 것입니다.
목차
연간 전 세계 총액
우리는 정말 일반적이고 단순한 일을 하고 싶습니다. Total Worldwide Gross는 백분율로 변환하려는 매우 단순한 합계 합계 측정값입니다.
이를 위해 분자( Total Worldwide Gross measure)와 분모( Total Worldwide Gross measure, 그러나 연도 필터에서 컨텍스트를 제거함)를 사용합니다.
코드를 읽을 때 더 직관적이라고 생각하기 때문에 사용했지만 선호하는 경우에도 마찬가지입니다. 결과를 얻기 위해 분자를 분모로 나누기만 하면 됩니다.
결과 측정값을 가져와서 테이블에 놓으면 우리가 예상한 대로 정확하게 작동하는 것을 볼 수 있습니다. 하단에 100%가 표시되고 연도가 개별 백분율로 변환됩니다. 지금까지는 좋았고 아직 문제가 발생하지 않았습니다.
분기당 전 세계 총액
분기별로 가는 비슷한 상황을 살펴보겠습니다. 이 측정은 여름 영화 시즌의 총 수익이 연초와 다르고 오스카 시즌으로 이어지는 연말로 갈수록 다르다는 가설이 있기 때문에 유용할 수 있습니다.
다시, 우리는 연도 대신 분기 번호에 대한 REMOVEFILTERS 함수를 사용하여 정확히 동일한 측정값을 갖습니다.
방금 만든 측정값을 테이블에 놓으면 예상대로 정확하게 수행됩니다.
월별 및 연도별 전 세계 총액
세 번째 경우를 살펴보겠습니다. 정말 흔할 수 있는 것으로 월별, 연도별로 살펴보고자 합니다.
그리고 다시, 우리는 이전과 같은 척도를 사용할 것입니다. 하지만 이번에는 월과 연도에 대한 필터를 제거하겠습니다.
그것을 우리 테이블에 떨어뜨리자. 갑자기 작동하지 않습니다.
우리는 그것에 대해 작동하지 않는 것을 말할 수 있습니다. 우리는 Worldwide Gross 척도가 작동한다는 것을 알고 있으므로 분자는 괜찮지만 분모는 그렇지 않다는 것을 의미합니다. 이전의 각 경우에서 REMOVEFILTERS 함수는 필터를 적절하게 제거했지만 여기서는 확실히 제거하지 않았습니다.
여기 결과에서 반환한 내용을 변경하여 실제로 이를 테스트할 수 있습니다.
결과 대신 분모를 사용합시다. 이 형식은 백분율로 표시되므로 약간 웃기게 보일 것입니다.
분모에 대해 우리가 얻어야 하는 것은 모든 행에서 같은 숫자이지만 그렇지 않습니다.
월과 연도에 대한 필터를 제거하지 않는다는 것을 알 수 있으며 월과 연도가 텍스트에 있기 때문이라고 생각합니다.
하지만 이전 분기도 텍스트로 표현되었으므로 단순히 텍스트 때문만은 아닙니다. 정리만 하면 됩니다. 정렬하지 않고 필드를 놓으면 사전순으로 정렬됩니다.
확장 날짜 테이블에서 Month & Year 라는 필드를 살펴보겠습니다 . 정렬 기준 열 에서 이를 보면 흥미로운 것을 볼 수 있습니다.
해당 열이 MonthnYear라는 숫자로 정렬된 것을 볼 수 있습니다. 한 열을 다른 열로 정렬하면 해당 정렬 열이 실제로 필터 컨텍스트의 일부가 됩니다. 이것이 이 계산을 버리는 것입니다.
측정값으로 돌아가서 정렬로 사용하는 월과 연도의 컨텍스트를 제거해 보겠습니다.
이제 우리는 적절한 백분율로 계산된 월과 연도를 정확하게 얻고 있습니다.
필터 컨텍스트를 제거할 때 정렬될 때 이를 수행하기 위해 두 개의 필드가 필요합니다 . 여기서 두 개의 필드를 수행하는 대신 전체 날짜 테이블에서 필터를 제거할 수 없는 이유는 무엇입니까?
대답은 가능하다는 것입니다. 각 열이 날짜 테이블의 일부이기 때문에 이것은 우리가 이야기한 세 가지 예에 대해 작동할 것입니다. 해당 테이블에서 모든 필터 컨텍스트를 제거하면 세 가지 경우 모두에 대해 작동하지만 실제로는 좋지 않습니다.
일반적인 DAX 최적화 원칙에 따라 원하는 결과를 얻는 데 필요한 만큼 필터 컨텍스트를 제거해야 합니다.
대부분의 경우 이를 표 형식으로 표시하지 않을 것입니다. 이를 매트릭스로 표시하고 동일한 열에 두 개의 서로 다른 세분성이 있기 때문에 더 복잡한 측정이 필요합니다. 이 측정은 복잡해 보이지만 실제로는 그렇지 않습니다.
이것은 우리가 이미 수행한 작업의 확장일 뿐입니다. 이 DAX 최적화 계산의 첫 번째 부분은 다양한 세분성의 분모를 보여줍니다. 월, 연도 및 전체 테이블에 대한 필터 컨텍스트를 제거합니다.
계산의 두 번째 부분에서는 SWITCH TRUE를 사용했습니다. 이 기능을 사용하려면 가장 구체적인 것부터 가장 덜 구체적인 것으로 이동해야 합니다. 월은 우리의 가장 좁고 구체적인 범위이므로 여기에서 시작합니다. 식별한 두 필드를 사용하여 컨텍스트를 제거해야 합니다.
연도 범위의 경우 연도의 컨텍스트를 제거하고 전체 테이블의 컨텍스트를 제거해야 합니다.
전체 날짜 테이블 에서 컨텍스트를 가져오고 제거하는 경우 어떤 일이 발생하는지 살펴보겠습니다 . 세 가지 경우 모두에 대해 전체 날짜 테이블에서 컨텍스트를 제거하는 다른 측정을 사용합니다.
측정값이 컨텍스트를 과도하게 제거하는 것을 볼 수 있습니다. 해당 연도에 대한 각 달의 기여도를 계산하는 대신 전체 데이터 세트에 대한 해당 월의 기여도를 계산합니다. 전체 테이블에서 컨텍스트를 제거하는 것은 메스가 필요할 때 무딘 도구에 불과하기 때문에 이것은 우리가 원하는 것이 아닙니다.
결론
행렬이 있고 제거할 컨텍스트를 신중하게 제어해야 하는 경우가 많이 있습니다. 전체 테이블에서 컨텍스트를 제거하면 이러한 종류의 문제가 발생합니다.
이 상황이 발생하면(언젠가는 변함없이) 이 DAX 최적화 게시물에서 논의한 숨겨진 함정으로 인식하고 같은 좌절감 없이 피할 수 있기를 바랍니다. 처음 보았을 때 내 DAX가 제대로 작동하지 않는 이유를 알 수 없었습니다.
이 특정 자습서에서 다루는 DAX 최적화 주제가 마음에 드셨다면 LuckyTemplates TV 채널을 구독하십시오 . 저와 다양한 콘텐츠 작성자가 항상 제공하는 엄청난 양의 콘텐츠가 있습니다. 이들 모두는 LuckyTemplates 및 Power Platform을 사용하는 방식을 개선하는 데 전념하고 있습니다.
SharePoint에서 계산된 열의 중요성과 목록에서 자동 계산 및 데이터 수집을 수행하는 방법을 알아보세요.
컬렉션 변수를 사용하여 Power Apps에서 변수 만드는 방법 및 유용한 팁에 대해 알아보세요.
Microsoft Flow HTTP 트리거가 수행할 수 있는 작업과 Microsoft Power Automate의 예를 사용하여 이를 사용하는 방법을 알아보고 이해하십시오!
Power Automate 흐름 및 용도에 대해 자세히 알아보세요. 다양한 작업 및 시나리오에 사용할 수 있는 다양한 유형의 흐름에 대해 설명합니다.
조건이 충족되지 않는 경우 흐름에서 작업을 종료하는 Power Automate 종료 작업 컨트롤을 올바르게 사용하는 방법을 알아봅니다.
PowerApps 실행 기능에 대해 자세히 알아보고 자신의 앱에서 바로 웹사이트, 전화, 이메일 및 기타 앱과 같은 기타 서비스를 실행하십시오.
타사 애플리케이션 통합과 관련하여 Power Automate의 HTTP 요청이 작동하는 방식을 배우고 이해합니다.
Power Automate Desktop에서 Send Mouse Click을 사용하는 방법을 알아보고 이것이 어떤 이점을 제공하고 흐름 성능을 개선하는지 알아보십시오.
PowerApps 변수의 작동 방식, 다양한 종류, 각 변수가 앱에 기여할 수 있는 사항을 알아보세요.
이 자습서에서는 Power Automate를 사용하여 웹 또는 데스크톱에서 작업을 자동화하는 방법을 알려줍니다. 데스크톱 흐름 예약에 대한 포괄적인 가이드를 제공합니다.