SharePoint의 계산된 열 | 개요
SharePoint에서 계산된 열의 중요성과 목록에서 자동 계산 및 데이터 수집을 수행하는 방법을 알아보세요.
LuckyTemplates 보고서를 준비하면서 채택한 모범 사례를 제시하고 싶습니다. 지난 몇 년 동안 저는 제 여정에 중요한 역할을 했던 데이터 로드 및 변환에 대한 많은 온라인 리소스를 사용했지만 콘텐츠에 금방 압도되어 결국 저만의 메모를 작성하게 되었습니다. 이 블로그 하단에서 이 튜토리얼의 전체 비디오를 볼 수 있습니다.
이것은 완전한 목록이나 모범 사례가 결코 아닙니다. 그것들은 제가 제 개발에 통합한 것 중 일부일 뿐입니다. 또한 모범 사례는 LuckyTemplates 애플리케이션에 새롭고 향상된 기능이 도입되고 LuckyTemplates 커뮤니티에서 제시됨에 따라 시간이 지남에 따라 항상 발전합니다.
LuckyTemplates 개발의 네 가지 기둥 중 첫 번째를 제시하고자 합니다. 네 가지 기둥은 데이터 로드 및 데이터 변환 , 데이터 모델링 , DAX 계산 , 보고서 및 시각화 입니다 . 이 블로그 게시물의 사전 개발 설정과 첫 번째 기둥을 다룰 것입니다.
목차
자동 날짜/시간 비활성화
에서 자동 날짜 및 시간 기능을 비활성화하는 것이 좋습니다 . 두 가지 방법으로 이 작업을 수행할 수 있습니다.
다음 단계에 따라 모든 파일에 대해 전역적으로 이 작업을 수행할 수 있습니다.
설정을 변경하여 현재 파일에 대해 비활성화할 수도 있습니다.
자동 감지 관계 비활성화
또한 자동 검색 관계를 비활성화하는 것이 좋습니다. 파일로 이동하고 옵션 및 설정을 보고 데이터가 로드된 후 새 관계 자동 감지를 비활성화할 수 있습니다.
LuckyTemplates 보고서의 시각적 개체와 상호 작용
다음으로 이야기하고 싶은 것은 LuckyTemplates 보고서에서 시각적 개체와 상호 작용할 수 있는 두 가지 방법입니다. 이러한 상호 작용은 교차 필터링 되거나 교차 강조 표시 될 수 있습니다 .
교차 강조 표시는 LuckyTemplates에서 기본적으로 활성화됩니다. 파일로 이동한 다음 옵션 및 설정으로 이동하여 이를 변경할 수 있습니다. 보고서 설정 섹션의 현재 파일에 대해 교차 강조 표시에서 교차 필터링으로 시각적 상호 작용을 변경할 수 있습니다.
보고서를 살펴보겠습니다. 기본적으로 LuckyTemplates는 관련 시각적 개체에 상호 강조 표시를 사용합니다. 왼쪽 막대 차트에서 한 채널을 클릭하면 선택한 부분이 어두운 색으로 강조 표시되고 선택하지 않은 부분은 두 번째 막대 차트에서 밝은 색으로 유지되는 것을 볼 수 있습니다.
그래프에서 전체 모양이 변경되지 않고 강조 표시된 부분만 표시되는 것을 볼 수 있습니다. 보고서 설정에서 이를 변경할 수 있으며 교차 강조 표시에서 교차 필터링으로 기본 시각적 상호 작용을 변경할 수 있습니다.
이 작업을 완료하면 선택 또는 선택 그룹을 만들 때마다 관련 막대 차트의 모양이 변경되는 것을 볼 수 있습니다. 이것은 들어가기에 좋은 습관입니다.
보고서에서 데이터 세트 분리
다음으로 이야기하고 싶은 것은 데이터 세트 개발과 보고서 개발을 분리하는 것입니다. 여기에서 시각적 개체가 없는 독립 실행형 데이터 세트로 게시된 두꺼운 데이터 세트 파일과 이러한 게���된 데이터 세트를 사용할 얇은 보고서 파일 개발을 가질 수 있습니다.
데이터 집합을 개별적으로 게시하는 이점 중 하나는 LuckyTemplates 서비스에서 보증 프로세스를 사용하여 데이터 집합을 승격하고 인증할 수 있다는 것입니다. 새 보고서를 개발할 때 승인된 데이터 세트, 가능하면 인증된 데이터 세트를 선택하는 것이 이상적입니다.
전용 날짜 테이블 만들기
보고서에 전용 날짜 테이블이 있는지 확인하십시오. LuckyTemplates 포럼에서 사용할 수 있는 사용할 수 있습니다 . M 코드를 복사하여 빈 쿼리에 붙여넣을 수 있습니다.
전용 Dates 테이블이 있으면 두 번째로 해야 할 일은 테이블을 그렇게 표시하는 것입니다. 이렇게 하면 시간 인텔리전스 계산을 위해 LuckyTemplates에서 사용할 수 있습니다.
날짜 테이블에 대한 기타 알림
항상 데이터 테이블이 연속적이고 하루에 하나의 행이 있는지 확인하십시오. 또한 팩트 테이블의 가장자리를 완전히 덮는지 확인하십시오.
또한 Dates 테이블에 전체 연도를 추가합니다. 미래 또는 예측 시간 인텔리전스 계산을 사용하도록 날짜 테이블에 추가 미래 연도를 추가하는 것도 좋은 생각입니다.
날짜 테이블에 보고서에 표시하려는 일보다 더 많은 일수가 있는 경우 IsAfterToday 열 또는 필터 창에서 사용할 수 있는 오프셋 열을 사용하여 슬라이서에 표시되는 항목을 제어할 수 있습니다.
보고서에 대한 질문하기
다음으로 이야기하고 싶은 것은 보고서를 작성해야 하는지 여부입니다. 작업을 수행하면서 필요를 충족하는 데 사용할 수 있는 기존 보고서가 있는지 확인하십시오. 보고서가 없는 경우 요구 사항을 충족하는 데 사용할 수 있는 기존 데이터 모델이 있습니까? 사용할 수 있는 기존 데이터 세트가 있습니까, 아니면 실제로 처음부터 시작해야 합니까?
데이터 준비 및 참조
데이터 로드 시 다음으로 이야기할 내용은 데이터 준비 및 참조입니다. 플랫 데이터 테이블을 로드할 때 Excel 파일과 같은 동일한 테이블에 팩트와 차원이 있을 수 있습니다 . 로드를 수행하고 이를 스테이징 쿼리 섹션으로 이동하고 이름을 바꿀 때 Enable load 를 선택 취소할 수 있습니다 .
다음 단계는 각 팩트 및 조회 차원에 대해 해당 테이블의 참조를 만들고 테이블의 이름을 적절하게 바꾸는 것입니다. 각 참조를 편집하고 필요한 열만 유지하고 중복 항목을 제거하십시오.
데이터 모델을 구성하고 자체 그룹에 넣습니다. 내 시각적 개체에서 사용할 모든 테이블이 있는 데이터 모델이라는 데이터 모델에 항상 그룹이 있습니다.
데이터 부하 줄이기
다음으로 이야기할 것은 데이터 로드 시 도구의 성능입니다. 성능에 가장 큰 영향을 미치는 것 중 하나는 데이터 양이므로 로드할 데이터 양을 최대한 줄이도록 노력하십시오.
이 공리를 따르십시오.
필요하지 않으면 검색하지 마십시오.
보고서에서 항목을 제거하는 것보다 보고서에 새 항목을 추가하는 것이 훨씬 쉽습니다. 또한 보고서에 너무 많은 정보를 입력하면 경험하지 않아도 되는 성능에 대해 과태료를 지불하게 됩니다.
바람직하게는 소스에서 필터링을 수행하십시오. 원본에서 수행할 수 없는 경우 파워 쿼리의 자동 필터 드롭다운 화살표를 사용하여 관심 있는 필드를 필터링합니다.
또한 소스에서 열 선택 드롭다운을 사용하고 관심 있는 열만 선택하여 표시되는 열 수를 줄일 수도 있습니다 .
열 선택 또는 열 제거를 사용할 수 있습니다 . 돌아가기 쉽기 때문에 열 선택을 모범 사례로 사용하는 것이 좋습니다 .
나중에 마음이 바뀌면 고급 편집기로 들어가 M 코드를 직접 편집하는 대신 UI를 통해 빠르게 할 수 있습니다.
쿼리 폴딩
쿼리 폴딩은 여러 데이터 선택 및 변환 단계를 단일 데이터 원본 쿼리로 결합하기 위한 LuckyTemplates의 또 다른 데이터 로드 시도입니다.
쿼리가 접혀 있는지 확인하려면 쿼리의 적용된 단계를 마우스 오른쪽 단추로 클릭합니다. 네이티브 쿼리가 회색으로 표시되는지 확인할 수 있습니다.
회색으로 표시되면 쿼리가 접히지 않는 것입니다. 회색으로 표시되지 않으면 쿼리를 접을 수 있습니다.
데이터 변환 으로 이동한 다음 파워 쿼리로 이동합니다 . 이 표에서 탐색 단계를 마우스 오른쪽 버튼으로 클릭하면 View Native Query가 회색으로 표시되지 않아 선택할 수 있습니다.
여기에서 간단한 SQL 선택 문을 볼 수 있습니다.
필터링이 완료된 후 다음 단계로 이동하여 네이티브 쿼리를 보면 쿼리가 약간 변경되었으며 해당 쿼리 하단에 'where' 절이 있는 것을 확인할 수 있습니다.
세 번째 단계로 이동하여 마우스 오른쪽 버튼을 클릭하면 기본 쿼리가 회색으로 표시되지 않으므로 한 번 더 선택할 수 있습니다.
일단 선택하면 세 개의 쿼리가 하나로 훨씬 더 많이 축소되는 것을 볼 수 있습니다. LuckyTemplates는 데이터를 모델로 가져오는 가장 좋은 방법은 내가 작업을 수행하는 대신 소스가 작업을 수행하는 것이라고 말합니다.
쿼리 폴딩을 위한 데이터 소스 사용
일반적으로 쿼리 폴딩과 함께 사용할 수 있는 데이터 원본은 테이블 및 보기와 같은 관계형 데이터베이스의 표준 개체입니다.
관계형 데이터베이스에 대한 사용자 지정 SQL 쿼리는 쿼리 폴딩을 사용할 수 없습니다. 플랫 파일과 웹 데이터도 접을 수 없습니다.
쿼리 폴딩과 함께 사용할 수 있는 변환 중 일부는 행 필터링 , 열 제거 , 열 이름 바꾸기 및 동일한 데이터 원본의 다른 쿼리에 대한 조인 입니다.
쿼리 폴딩과 함께 사용할 수 없는 일부 변환 에는 인덱스 열 추가 , 열 데이터 유형 변경 , 다른 데이터 원본의 쿼리 병합 또는 추가가 포함됩니다 .
올바른 연결 모드 선택
성능을 향상시키기 위해 다음으로 해야 할 일은 올바른 연결 모드를 선택하는 것입니다. 가져오기 모드 는 기본값이며 최상의 보고서 성능을 제공하므로 가능할 때마다 사용해야 합니다.
최신 데이터가 필요한 경우 직접 쿼리 모드를 사용할 수 있지만 성능에 부정적인 영향을 미칠 가능성이 있다는 점에 유의하십시오.
마지막으로 SSAS 다차원 큐브와 같은 데이터 웨어하우스에 액세스할 때 라이브 연결 모드를 사용할 수 있습니다.
변환 찾기
다음으로 이야기하고 싶은 것은 이러한 변환이 수행되는 위치입니다. 이러한 작업을 수행할 수 있는 가장 좋은 위치는 소스 입니다 . 소스에서 수행할 수 없는 경우 파워 쿼리 에서 수행하십시오 . 파워 쿼리에서 수행할 수 없는 경우 DAX 에서 수행하십시오 .
데이터 변환을 가능한 한 업스트림으로 수행하고 필요한 만큼 다운스트림으로 수행하십시오.
파워 쿼리에서 무언가를 할 수 있다면 아마도 그렇게 해야 할 것입니다.
다시 말하지만 보고서 세션의 컨텍스트 내에서 동적인 것이 아닌 경우 파워 쿼리에서 수행하여 DAX를 단순화하고 보고서 성능을 높이는 것을 고려하십시오.
테이블의 모양에 관한 한 팩트 테이블을 길고 얇게 만들고 차원 테이블을 짧고 넓게 만들기 위해 노력하십시오 .
이름 지정 및 데이터 유형에 대한 모범 사례
보고서 사용자가 이해하기 쉬운 일관된 이름 지정 및 대소문자 체계를 사용합니다 . 보고서의 명명 및 대/소문자 표준을 준수하도록 필요에 따라 테이블 및 쿼리의 이름을 바꿉니다 .
이러한 이름 지정 및 대소문자 표준을 준수하도록 필요에 따라 열의 이름을 변경하고 보고서를 유지 관리하는 사람이 아닐 수 있으므로 단계를 자체 설명적으로 만들기 위해 필요에 따라 파워 쿼리 단계의 이름을 변경합니다 .
LuckyTemplates는 데이터를 가져올 때 올바른 데이터 유형을 할당하는 탁월한 작업을 수행하지만 경우에 따라 일부 조정도 필요합니다. 서로 다른 테이블의 열이 데이터 유형이 동일한 두 테이블 간의 연결 열로 사용되는지 확인해야 합니다.
모든 날짜 열이 텍스트가 아닌 날짜인지 확인하십시오. 날짜/시간 열을 별도의 날짜 및 별도의 시간 열로 분할합니다.
마지막 단계로 데이터 유형을 다시 확인합니다 . 특정 변환이 데이터 형식을 자동으로 텍스트로 전환할 수 있으므로 파워 쿼리에서 닫기 및 적용을 누르기 전에 항상 데이터 형식을 다시 확인하는 습관을 들이십시오.
일관된 세분성에서 데이터 소싱
마지막으로 논의할 사항은 세분성입니다. 데이터 로드 및 변환 프로세스 중에 일관된 세분성으로 데이터를 소싱하기 위해 노력해야 합니다. 솔루션에서 서로 다른 세분성을 결합하는 경우 파워 쿼리(가급적) 또는 DAX를 사용하여 참조 데이터를 적절하게 할당합니다.
예를 들어 주요 판매 데이터가 일별 수준인 경우 세부 수준은 일별입니다. 예산 참조 데이터가 월별 수준인 경우 세분성은 월별입니다. 다음은 세분성 조정에 대해 검토할 수 있는 예산 할당 DAX 수식 의 예입니다 .
결론
데이터 로드 및 변환에 대한 이 자습서가 도움이 되었기를 바랍니다. 그렇다면 새로운 콘텐츠에 대한 알림을 받을 수 있도록 LuckyTemplates YouTube 채널을 구독하는 것을 잊지 마세요.
그렉
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를 사용하여 웹 또는 데스크톱에서 작업을 자동화하는 방법을 알려줍니다. 데스크톱 흐름 예약에 대한 포괄적인 가이드를 제공합니다.