LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

LuckyTemplates 공휴일 달력을 만드는 것은 많은 시간 인텔리전스 계산에 중요합니다. 이 자습서에서는 DAX 측정값을 사용하여 특정 휴일 날짜를 계산하는 방법을 보여 드리겠습니다. 이 블로그 하단에서 이 튜토리얼의 전체 비디오를 볼 수 있습니다.

이니셔티브 중 하나에서 가져온 것입니다 . 여기서 매월 실제 DAX 또는 파워 쿼리 문제를 가져와 자세히 분석합니다.

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

저는 Rubber Duck Debugging이라는 기술을 사용했습니다. 일반적으로 디버깅에 사용되지만 LuckyTemplates와 같은 복잡한 문제를 해결하는 데 사용할 초기 프레임워크를 제시하는 데에도 매우 유용합니다.

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

기본적으로 고무 오리나 대화 상대를 사용하여 상상하고 있는 해결책을 소리내어 말하고 문제를 해결하는 방법에 대한 계획을 개발하는 것입니다.

종종 문제를 해결하는 데 도움이 되는 단순한 목소리 표현 행위입니다. 경우에 따라 디버깅 상황에서 수행 중인 작업이 타당한지 여부를 인식하고 문제를 해결하여 문제를 해결할 수 있는 방법을 찾는 데 도움이 됩니다.

아래는 이 특정 과제에 대한 실제 DAX 문제입니다. 여기에 월과 일이 포함된 10개의 휴일이 있는 테이블이 있습니다. 어떤 날은 특정한 날이고 어떤 날은 상대적인 날입니다. Holiday Date와 Celebrated On 측정값을 제시해야 합니다.

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

이를 위해서는 Day 필드를 두 가지 구성 요소로 구문 분석해야 합니다. 첫 번째 구문 분석은 발생(세 번째, 마지막, 첫 번째, 두 번째)이고 두 번째 구문 분석은 요일(월요일, 목요일)입니다. 이들은 우리가 분리해야 하는 두 가지 중요한 정보입니다.

목차

LuckyTemplates 휴일 일정에서 특정 날짜 계산

일반적으로 구분 기호로 분할을 통해 파워 쿼리에서 이 작업을 수행하지만 DAX를 사용하여 수행하므로 다른 방식으로 수행해야 합니다. (이 챌린지에서는 파워 쿼리를 사용할 수 없습니다.)

지정된 연도, 월, 일 이름에 대한 최소 및 최대 날짜를 계산해야 합니다. 이 경우 예를 들어 2027년 1월, 세 번째 월요일에 대해 말할 수 있습니다. 주어진 달의 최소 날짜를 얻으면 두 번째 월요일에 도달하기 위해 7일, 세 번째 월요일에 도달하기 위해 14일, 네 번째 월요일에 도달하기 위해 21일을 더할 수 있습니다.

이 과제와 관련하여 여러분과 공유하고 싶은 또 다른 기술은 측정값을 생성할 때 부품으로 구성이라고 부르는 것입니다. 변수가 많은 경우 구축할 구성 요소가 많은 복잡한 측정에서 이것이 정말 유용하다는 것을 알았습니다.

내가 항상 하는 것은 끝에 결과 변수( VAR Result )가 있고 마지막 명령문은 Return Result 인 것입니다 . 이렇게 하면 돌아가서 내가 만든 변수를 테스트하기가 정말 쉬워집니다. 부분적으로 살펴보고 추적하고 해결할 수 있습니다.

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

여러분과 공유하고 싶은 마지막 기법은 제가 알 수 없는 함수 검색이라고 부르는 것입니다. 예를 들어 이 LuckyTemplates 공휴일 달력 과제에 어떤 기능을 사용해야 할지 모르겠다면 외부 도구 탭으로 이동하여 SQLBI DAX 가이드 로 이동합니다 .

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

여기에는 기능이 유형별로 그룹화되는 그룹 (왼쪽)이라는 정말 멋진 기능이 있습니다 . 따라서 예를 들어 텍스트 문자열을 구문 분석하는 경우 Text functions 를 검색할 수 있습니다 .

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

DAX가 가지고 있는 모든 텍스트 기능을 제공합니다. 이는 측정에 필요한 DAX 기능을 빠르게 찾을 수 있는 좋은 방법입니다 .

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

LuckyTemplates 휴일 일정에 대한 DAX 조치

Holiday Date 측정을 위해 슬라이서에서 날짜, 휴일 월, 월 번호 및 Date 테이블에서 일을 수집하여   이 시리즈 를 만들었습니다 .

그런 다음 길이( ) 함수를 사용하여 선택한 날의 길이를 얻습니다. 이 경우 텍스트를 반환하므로 해당 텍스트를 숫자 값으로 변경하려면 로 래핑해야 했습니다 .

함수를 사용 하고 VALUE로 묶었습니다. 그러나 선택한 날짜 내의 공백을 검색하여 위치 1에서 시작하여 해당 문자열을 찾지 못하면 0을 반환합니다.

CharsBeforeSpace (공백 앞의 문자) SpacePosition입니다. CharsAfterSpace (공백 뒤의 문자) 의 수 는 문자열의 길이( SelDayLen )에서 공백 위치를 뺀 값입니다. 여기에서 FirstParseSecondParse 를 수행할 수 있습니다 .

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

이제 두 개의 변수가 생겼습니다. 하나는 발생을 나타내고 다른 하나는 날짜를 나타냅니다.

그런 다음 날짜 테이블에서 필터를 제거하는 기본 ( Calc1st ) 이 있습니다 . 그런 다음 슬라이서에서 선택한 연도, 월 이름, 두 번째 구문 분석에서 요일의 필터를 적용합니다.

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

마찬가지로 마지막 계산( VAR CalcLast ) 에 대해서도 동일한 작업을 수행합니다 .

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

모든 것이 있으면 문으로 이동하고 마지막 부분은 RETURN 결과입니다.

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산

마지막으로 챌린지의 추가 보너스로 Celebrated On 측정을 안내해 드리겠습니다 . 이것은 이전 측정값에서 계산한 공휴일을 가져오고 Dates 테이블로 이동하여 요일 이름을 조회하는 단순한 그런 다음 DayLookup 의 결과를 가져오는 SWITCH 문을 수행했습니다 . 마지막으로 RETURN DateAdjust 로 마무리합니다 .

LuckyTemplates 휴일 달력 - DAX를 사용하여 날짜 계산


LuckyTemplates에서 공휴일을 위한 달력 테이블 만들기
LuckyTemplates 사용자 지정 달력: 월별 변경 계산 –
LuckyTemplates의 비표준 날짜 테이블에 대한 445개의 달력 시간 비교

결론

앞서 언급한 이 LuckyTemplates Holiday Calendar 챌린지는 실제 문제입니다. 제가 생각해낸 솔루션은 상당히 복잡하지만 특정 휴일 날짜를 계산하는 데 정말 효과적입니다.

이 튜토리얼에서 많은 것을 배웠기를 바랍니다. DAX 조치에 대한 자세한 연습 설명은 전체 비디오 자습서를 확인하십시오.

건배!

Leave a Comment

SharePoint의 계산된 열 | 개요

SharePoint의 계산된 열 | 개요

SharePoint에서 계산된 열의 중요성과 목록에서 자동 계산 및 데이터 수집을 수행하는 방법을 알아보세요.

Power Apps에서 변수 만들기: 컬렉션 작업

Power Apps에서 변수 만들기: 컬렉션 작업

컬렉션 변수를 사용하여 Power Apps에서 변수 만드는 방법 및 유용한 팁에 대해 알아보세요.

Microsoft Flow HTTP 트리거 | Power Automate 자습서

Microsoft Flow HTTP 트리거 | Power Automate 자습서

Microsoft Flow HTTP 트리거가 수행할 수 있는 작업과 Microsoft Power Automate의 예를 사용하여 이를 사용하는 방법을 알아보고 이해하십시오!

Power Automate 흐름: 사용법 및 유형 설명

Power Automate 흐름: 사용법 및 유형 설명

Power Automate 흐름 및 용도에 대해 자세히 알아보세요. 다양한 작업 및 시나리오에 사용할 수 있는 다양한 유형의 흐름에 대해 설명합니다.

흐름에서 Power Automate 종료 작업 제어

흐름에서 Power Automate 종료 작업 제어

조건이 충족되지 않는 경우 흐름에서 작업을 종료하는 Power Automate 종료 작업 컨트롤을 올바르게 사용하는 방법을 알아봅니다.

PowerApps 시작 기능: 앱에서 다른 서비스를 시작하는 방법

PowerApps 시작 기능: 앱에서 다른 서비스를 시작하는 방법

PowerApps 실행 기능에 대해 자세히 알아보고 자신의 앱에서 바로 웹사이트, 전화, 이메일 및 기타 앱과 같은 기타 서비스를 실행하십시오.

Power Automate의 HTTP 요청 – 소개

Power Automate의 HTTP 요청 – 소개

타사 애플리케이션 통합과 관련하여 Power Automate의 HTTP 요청이 작동하는 방식을 배우고 이해합니다.

Power Automate Desktop: 마우스 클릭 보내기 기능을 사용하는 방법

Power Automate Desktop: 마우스 클릭 보내기 기능을 사용하는 방법

Power Automate Desktop에서 Send Mouse Click을 사용하는 방법을 알아보고 이것이 어떤 이점을 제공하고 흐름 성능을 개선하는지 알아보십시오.

PowerApps 변수: 컨텍스트 및 전역 변수 식별

PowerApps 변수: 컨텍스트 및 전역 변수 식별

PowerApps 변수의 작동 방식, 다양한 종류, 각 변수가 앱에 기여할 수 있는 사항을 알아보세요.

Power Automate에서 실행할 데스크톱 흐름 예약

Power Automate에서 실행할 데스크톱 흐름 예약

이 자습서에서는 Power Automate를 사용하여 웹 또는 데스크톱에서 작업을 자동화하는 방법을 알려줍니다. 데스크톱 흐름 예약에 대한 포괄적인 가이드를 제공합니다.