측정값에 대한 동적 서식 문자열 만들기
적용 대상: Power BI Desktop Power BI 서비스
측정값에 대한 동적 서식 문자열을 사용하면, 별도의 DAX 식을 사용하여 서식 문자열을 조건부로 적용하여 측정값이 시각적 개체에 나타나는 방식을 결정할 수 있습니다.
참고 항목
측정값에 대한 동적 서식 문자열은 현재 미리 보기로 제공됩니다. 미리 보기 단계에서는 기능 및 설명서가 변경될 수 있습니다.
동적 서식 문자열은 FORMAT 함수를 사용할 때 내재된 단점을 극복합니다. 즉, FORMAT을 사용하면 숫자 데이터 형식도 문자열로 반환되며 차트와 같이, 숫자 값이 필요한 시각적 개체에서는 작동하지 않을 수 있습니다. 동적 서식 문자열을 사용하는 경우 측정값은 해당 데이터 형식을 유지하며 문자열 데이터 형식으로 강제로 변경되지 않습니다. 이것은 컨텍스트에 따라 측정값에 다른 서식 문자열을 적용합니다.
동적 서식 문자열을 계산 그룹과 함께 사용할 수도 있습니다. 계산 그룹과 함께 작동하는 동일한 DAX 패턴을 측정값에 대한 동적 서식 문자열에서도 사용할 수 있지만 범위는 모델의 모든 측정값이 아닌 개별 측정값으로 제한됩니다. 자세한 내용은 계산 그룹 - 동적 서식 문자열을 참조하세요.
동적 서식 문자열 만들기
동적 서식 문자열을 만들려면
데이터 창에서 동적 서식 문자열을 지정할 측정값을 선택합니다.
측정값 도구 리본 >서식 지정 섹션 >서식 목록 상자에서 동적을 선택합니다. 서식이 이미 선택된 새 목록 상자가 DAX 수식 입력줄 왼쪽에 나타납니다. 이 드롭다운은 정적 측정값 DAX 식과 동적 서식 문자열 DAX 식 간에 전환할 수 있는 방법입니다. 동적으로 전환하기 전에 정적 서식 문자열이 사용되었던 것이 무엇이든 DAX 수식 입력줄에 문자열로 미리 채워집니다.
측정값에 대한 올바른 서식 문자열을 출력하는 DAX 식으로 문자열을 덮어씁니다. 예를 들어 다음 식은 '국가 통화 서식 문자열' 테이블에서 원하는 통화 서식 문자열을 조회합니다.
동적 서식 문자열이 시각적 개체에서 작동하는지 확인합니다.
동적 서식 문자열을 삭제하고 정적 서식 문자열 사용으로 돌아가려면 서식 지정 섹션 >서식 목록 상자에서 다른 서식 옵션을 선택합니다. 이 작업은 실행 취소할 수 없으므로 계속할지 묻는 대화 상자가 나타납니다. 다시 동적 서식 문자열 사용으로 돌아가려면 DAX 식을 다시 입력해야 합니다.
예시
새 기능에 대해 알아보는 가장 좋은 방법은 직접 해보는 것입니다. DAX 샘플 모델에서 사용할 수 있는 샘플 Adventure Works 2020 PBIX 파일로 해볼 수 있습니다. 샘플 모델을 사용하면 통화 변환을 추가하여 연도별로 변환된 판매액을 표시할 수 있습니다. 다운로드한 후 Power BI Desktop에서 파일을 엽니다.
새 테이블 만들기
샘플 모델에는 동적 서식 문자열을 만들고 사용하는 데 필요한 모든 데이터가 포함되어 있지 않습니다. 시작하려면 먼저 두 개의 테이블을 추가해야 합니다.
홈 리본에서 데이터 입력을 선택합니다.
테이블 만들기 대화 상자에서 다음 테이블 이름을 입력한 다음, 다음 테이블을 복사하여 붙여넣습니다.
테이블 이름: 국가 통화 서식 문자열
Country 통화 형식 오스트레일리아 달러 AU$#,0.00 캐나다 달러 C$#,0.00 덴마크 크로네 kr#,0 유로존 유로 € #,0.00 일본 엔 ¥ #,0 스웨덴 크로나 kr#,0 스위스 프랑 CHF#,0.00 영국 파운드 £ #,0 미국 달러 US$#,0.00 테이블이 올바르게 보이는지 확인한 다음, 로드를 클릭합니다.
다음 테이블에 대해 이전 단계를 반복합니다.
테이블 이름: 연간 평균 환율
Country 통화 Year 연간 평균 환율 오스트레일리아 달러 2022 1.442 오스트레일리아 달러 2021 1.332 오스트레일리아 달러 2020 1.452 오스트레일리아 달러 2019 1.439 오스트레일리아 달러 2018 1.34 오스트레일리아 달러 2017 1.358 캐나다 달러 2022 1.301 캐나다 달러 2021 1.254 캐나다 달러 2020 1.341 캐나다 달러 2019 1.327 캐나다 달러 2018 1.297 캐나다 달러 2017 1.35 덴마크 크로네 2022 7.077 덴마크 크로네 2021 6.29 덴마크 크로네 2020 6.538 덴마크 크로네 2019 6.67 덴마크 크로네 2018 6.319 덴마크 크로네 2017 6.864 유로존 유로 2022 0.951 유로존 유로 2021 0.846 유로존 유로 2020 0.877 유로존 유로 2019 0.893 유로존 유로 2018 0.848 유로존 유로 2017 0.923 일본 엔 2022 131.454 일본 엔 2021 109.817 일본 엔 2020 106.725 일본 엔 2019 109.008 일본 엔 2018 110.424 일본 엔 2017 116.667 스웨덴 크로나 2022 10.122 스웨덴 크로나 2021 8.584 스웨덴 크로나 2020 9.205 스웨덴 크로나 2019 9.457 스웨덴 크로나 2018 8.703 스웨덴 크로나 2017 8.894 스위스 프랑 2022 0.955 스위스 프랑 2021 0.914 스위스 프랑 2020 0.939 스위스 프랑 2019 0.994 스위스 프랑 2018 0.979 스위스 프랑 2017 1.024 영국 파운드 2022 0.811 영국 파운드 2021 0.727 영국 파운드 2020 0.779 영국 파운드 2019 0.784 영국 파운드 2018 0.75 영국 파운드 2017 0.808
연도 열 만들기
기존 날짜 테이블에 새 연도 열이 필요합니다.
모델 보기에서 날짜 테이블을 마우스 오른쪽 단추로 클릭한 다음, 새 열을 선택합니다.
DAX 수식 입력줄에
Year = YEAR([Date])
식을 입력한 다음 Enter 키를 누릅니다.
관계 만들기
새 연간 평균 환율 테이블과 국가 통화 서식 문자열 테이블 간의 관계와 연간 평균 환율 테이블과 기존 날짜 테이블 간의 관계가 필요합니다.
관계에 대한 자동 검색을 켠 경우, 국가 열에 국가 통화 서식 문자열과 연간 평균 환율 간의 관계가 생성되었을 수 있습니다. 그렇지 않으면 다음 관계를 만듭니다.
- 테이블 1: 연간 평균 환율
- 테이블 1 열: 국가
- 카디널리티: 다대일
- 테이블 2: 국가 통화 서식 문자열
- 테이블 2 열: 국가
- 이 관계를 활성으로 만들기: 예
- 교차 필터 방향: 단일
관계는 다음과 같습니다.
관계에 대한 자동 검색을 켠 경우, 국가 열에 국가 통화 서식 문자열과 영업 지역 간의 관계가 생성되었을 수 있습니다. 그러나 이 관계는 모델에 맞지 않습니다. 모델 보기에서 이 관계를 삭제합니다.
대신 연도 열에 연간 평균 환율과 날짜 간의 관계를 만듭니다.
- 테이블 1: 연간 평균 환율
- 테이블 1 열: 연도
- 카디널리티: 다대다
- 테이블 2: 날짜
- 테이블 2 열: 연도
- 이 관계를 활성으로 만들기: 예
- 교차 필터 방향: 단일('연간 평균 환율'이 '날짜’ 필터링)
관계는 다음과 같습니다.
모델을 저장합니다.
측정값 그룹 테이블 만들기
측정값 그룹을 사용하면 여러 측정값을 단일 테이블에 두어 구성할 수 있습니다.
홈 리본에서 데이터 입력을 선택합니다.
테이블 만들기 대화 상자에서 값을 비워 둡니다. 테이블에 Sales 측정값으로 이름을 지정한 다음, 로드를 클릭합니다. 이 테이블에는 새 측정값이 포함되어 있습니다.
측정값 만들기
데이터 창에서 Sales 측정값을 확장하고 마우스 오른쪽 단추로 클릭한 다음, 새 측정값을 선택합니다. DAX 수식 입력줄에 다음 DAX 식을 입력한 다음, Enter 키를 누릅니다.
Sales Amount = SUM(Sales[Sales Amount])
다음과 같이 표시되어야 합니다.
Sales 측정값에서 열1을 마우스 오른쪽 단추로 클릭한 다음, 보고서 보기에서 숨기기를 선택합니다. 이렇게 하면 Sales 측정값이 측정값 그룹으로 변경되고, 이제 다음과 같이 측정값 그룹 아이콘이 있는 데이터 창의 맨 위에 표시됩니다.
이제 환율을 계산하는 측정값을 만들 수 있습니다. Sales 측정값을 마우스 오른쪽 단추로 클릭하고 새 측정값을 선택하고 DAX 수식 입력줄에 다음 식을 입력한 다음 Enter 키를 누릅니다.
Exchange Rate (Yearly Avg) = IF ( ISBLANK ( SELECTEDVALUE ( 'Country Currency Format Strings'[Country] ) ) || SELECTEDVALUE ( 'Country Currency Format Strings'[Country] ) = "United States", 1, AVERAGE ( 'Yearly Average Exchange Rates'[Yearly Average Exchange Rate] ) )
다음과 같이 표시됩니다.
이제 판매액 측정값을 다른 통화로 변환하는 다른 측정값을 만듭니다. Sales 측정값을 마우스 오른쪽 단추로 클릭하고 새 측정값을 선택하고 DAX 수식 입력줄에 다음 식을 입력한 다음 Enter 키를 누릅니다.
Converted Sales Amount = SUMX('Date', CALCULATE( [Sales Amount] * [Exchange Rate (Yearly Avg)]))
이제 Sales 측정값 측정값 그룹은 다음과 같이 표시됩니다.
보고서 만들기
보고서 보기로 이동합니다. 보고서에 새 빈 페이지를 추가합니다.
새 보고서 페이지에 꺾은선형 차트 시각적 개체를 추가합니다. 측정값에 대한 동적 서식 문자열을 추가하기 전에 이 시각적 개체를 사용하여 측정값을 확인합니다.
데이터 창 >Sales 측정값에서 변환된 판매액을 선택합니다. 다른 위치를 클릭하지 않고, 날짜 테이블에서 연도도 선택합니다.
시각적 개체를 복사한 다음 붙여넣어 두 개의 꺾은선형 차트 시각적 개체가 있도록 합니다. 두 번째 꺾은선형 차트 시각적 개체를 테이블 시각적 개체로 변경한 다음 다음과 같이 꺾은선형 차트 아래로 이동합니다.
보고서 페이지에 슬라이서 시각적 개체를 추가합니다. 서식 리본에서 국가 통화 서식 문자열 테이블의 국가를 슬라이서에 추가합니다.
다음과 같이 레이아웃이 개선될 때까지 시각적 개체를 다시 정렬합니다.
필수는 아니지만, 시각적 속성을 변경하여 보고서를 더 멋지게 만들 수 있습니다.
슬라이서
- 슬라이서 설정: 단일 선택
- 크기 및 스타일, 안쪽 여백: 10px, 모든 가장자리
- 크기 및 스타일, 시각적 테두리: 연회색, 10px 둥근 모서리
- 슬라이서 설정, 스타일: 타일
- 슬라이서 머리글: 끄기
- 값, 테두리: 왼쪽, #333333, 6 선 두께
테이블
- 크기 및 스타일, 안쪽 여백: 10px, 모든 가장자리
- 크기 및 스타일, 시각적 테두리: 연회색, 10px 둥근 모서리
- 눈금, 가로 눈금선: 흰색, 2 너비
- 눈금, 세로 눈금선: 흰색, 2 너비
- 눈금, 테두리: 흰색
- 눈금, 옵션: 2 행 안쪽 여백
- 값, 값: 배경색 #F6F4F4
- 값, 값: 대체 배경색 #F6F4F4
- 열 머리글, 텍스트: 굵게, 텍스트 색 흰색, 배경색 #0D6ABF
꺾은선형 차트
- 크기 및 스타일, 안쪽 여백: 10px, 모든 가장자리
- 크기 및 스타일, 시각적 테두리: 연회색, 10px 둥근 모서리
- 제목, 부제목: 켜기
- Y축, 제목: 끄기
- Y축: 끄기
- 마커: 켜기
- 데이터 레이블: 켜기
- 데이터 레이블, 값: 굵게, 파란색
캔버스(선택 사항)
- 캔버스 배경: 연회색, 85% 투명도
이러한 시각적 속성을 사용하면 다음과 같은 멋진 보고서 페이지를 얻을 수 있습니다.
동적 서식 문자열 만들기
슬라이서에서 다른 국가 이름을 선택하면 변환된 판매액 측정값 결과가 해당 국가나 지역에 올바른 형식이 아닌, 시각적 개체로 표시됩니다.
데이터 창 >Sales 측정값에서 변환된 판매액을 선택합니다.
측정값 도구 리본에서 서식 드롭다운을 클릭한 다음 동적을 선택합니다.
이제 수식 입력줄 왼쪽의 드롭다운 목록 상자에 서식이 표시되고, 수식 입력줄의 수식에는 서식 문자열이 있어야 합니다. 서식 문자열을 다음 DAX 식으로 바꾼 다음 Enter 키를 누릅니다.
SELECTEDVALUE ( 'Country Currency Format Strings'[Format], "\$#,0.00;(\$#,0.00);\$#,0.00" )
다음과 같이 표시되어야 합니다.
슬라이서에서 다른 국가를 선택합니다. 이제 테이블 및 꺾은선형 차트 시각적 개체는 변환된 통화 금액을 해당 국가 또는 지역에 대해 올바른 형식으로 표시해야 합니다. 슬라이서에서 다른 국가/지역을 선택하여 시각적 개체가 어떻게 변경되는지 확인해 봅니다.
모델을 저장합니다.
알려진 문제 및 고려 사항
미리 보기 중 다음과 같은 문제 및 제한 사항이 해결됩니다.
시각적 개체에는 서식 문자열이 표시되는 방식에 영향을 미칠 수 있는 서식 지정 옵션이 있습니다. 시각적 개체에서 예기치 않게 서식 지정이 표시되는 경우 표시 단위를 검색하고 자동에서 없음으로 변경합니다.
측정값 자체는 [측정값 A]와 같은 이름을 사용하여 동적 서식 문자열에서 직접 참조하거나
SELECTEDMEASURE()
를 사용하여 간접적으로 참조할 수 있습니다.측정값에 대한 동적 서식 문자열은 모델 측정값에만 사용됩니다. 라이브 연결 보고서에 추가할 수 있는 보고서 측정값은 측정값에 대한 동적 서식 문자열을 가질 수 없습니다.
Analysis Services용 DirectQuery를 사용하면 라이브 연결 보고서에서 이 모델 변경을 클릭할 때 연결이 Analysis Services를 통해 DirectQuery로 이동합니다. 일반적으로 원격 모델 측정값의 서식 문자열을 변경할 수 있습니다. 미리 보기 중:
- 동적 서식 문자열이 정의된 원격 모델 측정값은 정적 서식 문자열 또는 다른 동적 서식 문자열 DAX 식으로 서식 문자열을 변경하지 못하도록 차단됩니다.
- 원격 모델 측정값은 정적 서식 문자열에서 로컬 모델에 정의된 동적 서식 문자열 DAX 식으로 변경할 수 없습니다.
- 로컬 모델 측정값은 측정값에 동적 서식 문자열을 사용하지 못하도록 차단됩니다.