SharePoint의 계산된 열 | 개요
SharePoint에서 계산된 열의 중요성과 목록에서 자동 계산 및 데이터 수집을 수행하는 방법을 알아보세요.
LuckyTemplates에서 이전 기간 값을 검색하는 것은 일반적인 작업이지만 이전 주 값을 검색하려면 특별한 주의가 필요합니다. 이 자습서에서는 도구 상자에 유용한 추가 항목이 될 수 있는 LuckyTemplates의 이전 주 값을 얻기 위한 두 가지 간단하고 다양한 방법(하나는 DAX를 사용하고 다른 하나는 파워 쿼리를 사용)에 대해 설명합니다. 이 블로그 하단에서 이 튜토리얼의 전체 비디오를 볼 수 있습니다.
이 튜토리얼은 LuckyTemplates 회원에게서 받은 질문에서 가져왔습니다. 회원은 지난주 번호를 결정하는 가장 쉬운 방법이 무엇인지 물었습니다. 이것은 내가 만나는 일반적인 질문입니다. 매우 간단해 보이지만 파고들수록 처리해야 할 것이 상당히 많다는 것을 깨닫게 됩니다.
목차
LuckyTemplates의 이전 주 값: 문제
주 번호를 보면 52주가 있습니다. 여기에 7일(일주일)을 곱하면 364가 됩니다. 따라서 매년 하루가 추가되고 윤년에는 2일이 추가됩니다. 이 1~2일은 결국 많은 문제를 야기합니다.
날짜 테이블에서 측정값을 만들어 보겠습니다. MAX Week # (숫자) 라고 하겠습니다 . 이 분석에서는 LuckyTemplates Extended Dates Table을 사용하고 있습니다. 이것은 매우 유용한 ISO Weeknumber 를 가지고 있습니다. 이제 ISO Weeknumber의 MAX를 살펴보겠습니다.
이제 테이블을 가져와 Year 와 MAX Week #를 드롭해 보겠습니다 . 이 데이터 세트에는 10년의 데이터가 있으며 처음 2년은 52주입니다. 그런 다음 2년은 53주, 3년은 52주, 그리고 2년은 53주, 1년은 52주입니다.
여기에는 실제로 식별할 수 있는 패턴이 없습니다. 돌아가서 한 해는 52주가 될 것이고 다른 해는 53주가 될 것이라고 예측하는 것은 쉽지 않습니다.
DAX 시간 인텔리전스 함수에 익숙한 경우 다음으로 생각할 수 있는 것은 지정된 기간만큼 날짜 범위를 뒤로 이동하는 DATEADD 함수를 사용하는 것입니다. 일, 월, 분기 및 연도에 대해 정말 잘 수행하지만 주를 포함하지 않으므로 이를 수행하는 다른 방법을 찾아야 합니다.
우리가 사용하고 있는 LuckyTemplates Extended Dates Table에서 Melissa(LuckyTemplates 전문가 중 한 명)는 OFFSETS 라는 함수를 포함했습니다 . DAX 관점에서 이 문제를 해결하는 데 절대적으로 중요하므로 이 함수에 대해 자세히 살펴보겠습니다.
현재 기간(예: 이 튜토리얼을 작성하는 기간인 1월 20일)을 보면 오프셋이 0 이라는 것을 알 수 있습니다 . 오프셋이 작동하는 방식은 현재 기간 동안 오프셋이 0이 되는 것입니다.
현재 주 이전 주는 음수 1이고 현재 주 이전 2주는 음수 2입니다. 그런 다음 양수에서 앞으로 이동합니다. 다음 주에 1, 2주에 2 등.
오늘 날짜를 기준으로 보고서를 열 때마다 오프셋이 계산됩니다. 이것은 매우 강력하며 이제 오프셋을 사용할 때 이 LuckyTemplates 이전 주 번호와 같은 일부 어려운 문제를 해결하는 것이 얼마나 쉬운지 보여드리겠습니다.
DAX를 사용하여 이전 주에 LuckyTemplates 얻기
새 측정값을 만들고 이름을 Previous Wk # 로 지정하겠습니다 . 우리는 변수( SelWkOffset )로 시작할 것입니다. 여기에서 WeekOffset 의 SELECTEDVALUE 를 수행할 것입니다 . 따라서 현재 행에서 해당 WeekOffset을 그려 변수에 넣을 것입니다.
다음 변수는 Result 입니다 . 이것이 우리가 원하는 궁극적인 결과이며 컨텍스트를 전환할 것이기 때문에 CALCULATE를 사용할 것입니다 .
그런 다음 MAX ISO Weeknumber가 필요하며 이러한 필터 조건이 적용됩니다. 따라서 Dates 테이블에서 모든 필터를 제거하므로 여기서는 ALL을 사용합니다 . 날짜 슬라이서가 있는 경우 ALLSELECTED 를 사용하고 싶을 수 있지만 지금은 사용하지 않으므로 ALL을 사용하여 해당 날짜 테이블에서 필터를 제거할 것입니다.
그런 다음 WeekOffset이 SelWkOffset에서 1을 뺀 것과 같을 것이라고 말할 것입니다 . 이것은 OFFSETS가 매우 강력해지는 곳입니다. Weeknumber - 1은 매년 재설정되기 때문에 사용할 수 없습니다. 그러나 ALL OFFSETS는 순차적이므로 이전 연도를 찾고 각 이전 연도에 대해 1씩 빼는 것처럼 처리할 수 있습니다. 따라서 이 오프셋은 연속된 숫자와 같은 방식으로 작동합니다.
이제 해당 필터 조건을 제거하고 닫고 CALCULATE를 닫고 Result 를 RETURN 할 수 있습니다 .
이제 이 측정이 어떻게 작동하는지 살펴보겠습니다. 아래 표에서 우리가 원하는 대로 정확히 수행되고 있음을 확인할 수 있습니다. 다음 해의 기간 1에 대한 52주차에서 이전 주는 52주입니다. 그런 다음 각 기간마다 뒤로 물러납니다. 이런 식으로 계속됩니다.
이제 오프셋이 없는 경우 어떻게 합니까?
데이터 웨어하우스에서 가져온 회사 날짜 테이블로 작업 중이고 이러한 오프셋이 포함되어 있지 않다고 가정해 보겠습니다. 파워 쿼리에서 보여주고 싶은 기술이 있습니다. 내가 처음 본 것은 Imke Feldmann의 블로그 항목이었습니다.
이 접근 방식은 테이블을 오름차순으로 주문할 수 있고 오프셋이 필요하지 않은 모든 상황에서 정말 잘 작동합니다. 날짜 필드가 없어도 됩니다. 완전히 다른 유형의 테이블이 될 수 있습니다. 오름차순으로 정렬할 수 있는 한 이 기술을 사용할 수 있습니다.
따라서 이 Dates Raw 테이블을 참조하고 이를 Dates 라고 하겠습니다 . 그런 다음 이를 오름차순으로 정렬 합니다 .
다음으로 주별로 그룹화 하고 싶습니다 . 그 이유는 두 개의 인덱스 열을 추가할 것이기 때문입니다. 이러한 인덱스 열을 추가할 때 일 단위 가 아닌 주 단위 로 열을 추가하려고 합니다 .
다음으로 해당 인덱스 열을 추가하려고 합니다. 여기서 중요한 것은 우리가 추가할 첫 번째 인덱스가 0 기반 인덱스가 될 것이라는 점입니다. 그런 다음 1 기반 인덱스인 두 번째 인덱스를 추가할 것입니다.
그런 다음 이 열을 가져오고 테이블을 자체에 병합할 것입니다 . 두 개의 서로 다른 인덱스 열을 기반으로 병합할 것입니다. 그것은 우리에게 행의 이동을 줄 것입니다.
따라서 이것을 가지고 첫 번째를 0 기반 인덱스와 1 기반 인덱스로 병합하면 522 행에서 521과 일치합니다. 이것이 바로 두 번째 테이블이 1에서 시작하기 때문에 0 인덱스를 선택하지 않을 것이기 때문에 우리가 기대하는 것입니다.
그런 다음 ISO Weeknumber를 사용하여 이를 적절하게 확장합니다.
그것은 우리에게 지난 주 번호를 제공합니다. 이제 원래 그룹화를 확장하고 WeekEnding 필드와 원래 ISO 주 번호를 제거하여 중복되지 않도록 합니다.
이를 표로 나타내면 DAX 기법을 사용한 것과 정확히 같은 결과임을 알 수 있습니다. DAX 측정과 똑같이 작동하지만 이 경우에는 오프셋을 사용할 필요가 없었습니다.
결론
이것은 이전 주 번호를 찾는 매우 다양한 방식의 두 가지 다른 방법입니다. 첫 번째 기술에서는 오프셋의 힘을 볼 수 있습니다. 그렇지 않으면 어려운 계산이 될 수 있지만 매우 간단합니다. 두 번째 기법은 DAX 측정과 똑같이 작동하지만 이 경우에는 오프셋을 사용할 필요가 없었습니다.
이 튜토리얼이 도움이 되었기를 바랍니다. 아래에서 전체 비디오 자습서를 시청하고 더 유사한 콘텐츠에 대한 관련 링크를 확인할 수 있습니다.
건배!
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를 사용하여 웹 또는 데스크톱에서 작업을 자동화하는 방법을 알려줍니다. 데스크톱 흐름 예약에 대한 포괄적인 가이드를 제공합니다.