전체 글(139)
-
DAX - Calculate 함수 정리 2편
지난 1편에 이어 Calculate 함수 2번째 포스팅입니다. 1편에서 참고하는 동영상의 재생목록을 링크 했어야 하는데 첫 동영상만 링크가 걸려서 먼저 재생목록 링크 부터 다시 소개 합니다. youtube.com/playlist?list=PLU6II7MW-aiIees6mrPfdjt9c8noi7P66 CALCULATE in DAX - pills Learn many details about the most important DAX function: CALCULATE! www.youtube.com 이제 2편 입니다. 2편에 앞서 1편의 이야기를 조금 더 이어가보죠. 첫번째 동영상을 보면 알 수 있지만 Calculate 에 FILTER( ALL( fSales[고객유형] ) , fSales[고객유형] = "개인"..
2021.01.08 -
DAX - Calculate 함수 정리 1편
Calculate 는 이미 한번 포스팅 한적이 있었는데요. 그때는 DAX를 이해하는 수준이 지금보다는 한참 떨어지던 시기 였죠. 당연히 포스팅의 내용도 내 생각 대로만 정리가 된 것 같아서 몹시 불만 스럽던 차에 개념을 이해하기 아주 좋은 동영상이 있어서 그 내용을 직접 따라 하면서 정리 해보려 합니다. 이건 부족한 지난 포스팅 링크 : FILTER( ALL( fSales[고객유형] ) , fSales[고객유형] = "개인" ) 때문이죠. 풀이하자면 고객유형 필드의 현재 피벗 테이블에서 어떤 상태이던지 다 무시하고 => ALL 고객유형 필드의 값이 "개인" 인 측정값 매출액을 출력하라는 의미로 볼 수 있습니다. 2) 여기서 FILTER 함수의 ALL 을 빼면 어떻게 될까요? 피벗테이블에 고객유형 필드가 ..
2021.01.07 -
나보다 먼저 일어나는 아이들
오늘 아이들이 먼저 일어났다. 6시 20분. 겨울이라 아직 해가 뜨지도 않은 시간에 10살,7살 두아들이 먼저 하루를 시작했다. 엄마 아빠가 아직 단잠을 자고 요 녀석들은 무엇을 하려고 이 시간에 일어났을까? 계기 코로나 일상에 적응 하는 초기인 지난 4월 나는 아이들과 약속을 한가지 했다. 아침에 일어나서 아침식사 전까지 게임이던 TV던 마음대로 할 수 있는 시간을 갖을 수 있다는 것이다. 코로나로 학교와 유치원을 가지 않으면서 매일 늦잠을 자는 아이들을 일찍 깨우고 싶은 마음에 한 약속인데 이렇게 엄청난 결과를 가져 올 줄은 몰랐다. 10살인 큰애는 6시반에 알람을 맞추고 동생을 깨워 게임을 하고 유튜브를 본다. 엄마,아빠 간섭이 없는 진정한 자신만의 시간을 갖게 되었다. 지난 8개월 동안 우리 큰 ..
2021.01.01 -
파워쿼리로 판매약속가능수량(Available-to-promise) 산출하기
Available-to-promise (ATP)는 현시점에서 판매가 가능한 수량을 의미합니다. 지난 번 일자별 재고 수량을 만들듯이 측정값을 이용하여 산출이 가능합니다. 주문 수량을 (-) 로 입고/생산 수량을 (+)로 적용하여 일자별로 누적 수량을 구하는 측정값을 만들면 됩니다. 하지만 이번에는 조금 다른 방식, 파워쿼리로 데이터를 늘려서 일자별 판매약속가능수량을 산출하는 데이터 모델을 만들어 보도록 하겠습니다. 이 방법은 아래 블로그의 기능 소개 글을 참고하여 작성하였습니다. www.poweredsolutions.co/2019/07/23/fill-dates-between-dates-with-power-bi-power-query/ Fill dates between dates with Power BI /..
2020.12.05 -
DAX 측정값에 사용되는 필터 컨텍스트의 이해를 위한 예시
제가 파워피벗을 사용하면서 아직도 이해가 잘 안되고 어려운게 '컨텍스트'라는 개념입니다. 그래도 책 사서보고 무료 기초 온라인 강의 챙겨 보다보니 조금은 이해가 되는 것 같아 이참에 정리를 해봤습니다. 먼저 MS의 설명 페이지 링크입니다. support.microsoft.com/ko-kr/office/dax-%EC%88%98%EC%8B%9D%EC%9D%98-%EC%BB%A8%ED%85%8D%EC%8A%A4%ED%8A%B8-2728fae0-8309-45b6-9d32-1d600440a7ad DAX 수식의 컨텍스트 컨텍스트를 사용 하면 수식 결과를 변경 하 여 현재 행 또는 셀 선택 항목을 반영 하 고 관련 데이터도 반영할 수 있습니다. 컨텍스트를 효과적으로 이해 하 고 컨텍스트를 사용 하는 것이 매우 sup..
2020.11.21 -
[파워쿼리] 그룹화 기능을 활용하여 문자셀을 병합 하여 표를 정리하자
병합된 후에도 값을 잃지 않고 표로 정리해봅시다. 예제를 통해서 설명을 하겠습니다. 이런 형태의 표를 만나면 판매수량을 요약하기 참 어렵습니다. 제품명과 판매수량은 병합되었고는 설명 필드는 각 셀로 표시되어 "설명" 필드를 하나씩 하나의 셀에 복붙하여 만들어줘야 하죠. 엄청난 노가다 작업입니다. 그림의 화살표 아래처럼 한개의 행에 데이터를 예쁘게 넣고 싶은 건데요. 하지만 파워쿼리의 '그룹화' 기능을 약간 손보면 간단하게 처리됩니다. 먼저 표를 파워쿼리로 생성합니다. Tip. 해당 표에서 우클릭을 하여 '표/범위에서 데이터 가져오기" 를 클릭하면 표형태로 전환과 동시에 파워쿼리를 생성합니다. 생성된 쿼리의 내용을 보면 제품명과 판매수량 필드에 'null(값없음) ' 이 존재합니다. 이것을 '채우기'로 채..
2020.11.20 -
파워쿼리로 문자 검색기 만들기(복수의 단어)
이번 포스팅에서는 파워쿼리를 이용해서 검색 기능을 만들어 봅니다. 최근 프로젝트에서 품목 속성, 특히 명칭의 정비하는 일을 하다보니 부쩍 문자 검색과 관련된 작업에 관심이 많아졌네요. 예전 직장에서도 이와 비슷한 일을 한적이 있었는데 정말 힘들었던 기억이 납니다. 엄청난 노가다 작업이기도 한데요. 다행히 그당시에는 TFT 내에 VBA를 잘 다루는 형님이 계셔서 좀 수월 했죠. 하지만 엑셀도 발전해서 최근에 나온 FILTER 함수는 아주 기가 막히게 좋습니다. 이걸 보면 앞으로 VBA를 쓸일이 있을까 하는 생각이 들정도로 간편하고 뛰어나다는 생각이 듭니다. 단, 이 함수는 구독형인 Office 365버젼에서만 지원됩니다. 아무래도 Microsoft가 수익성이 좋은? 구독형 비지니스로 아예 오피스를 다 넘기..
2020.11.19 -
[파워피벗] 계산된 열을 사용한 피벗테이블에 자동 금액구간 만들기
어떤 목적에서든 데이터 집계. 요약을 하다보면 유의미한 수준으로 그룹핑을 해야 할 경우가 많습니다. 고객유형, 품목범주, 매출유형 등등 대표성을 갖는 값들로 세부 데이터를 묶는 경우가 일반적입니다. 이 경우 피벗 테이블을 통해서 간단하게 그룹핑 하는 방법 부터 LOOKUP 함수를 이용해서 그룹핑 항목을 원본 데이터에 붙이기 등 여러 방법이 있죠. 그리고 그리 어렵지 않게 적용이 가능합니다. 하지만 그룹핑 대상이 숫자 값, 즉 금액이나 수량과 같이 구간으로 그룹핑 해야 하는 경우 상당히 귀찮은 작업이 됩니다. 중복 IF 문 또는 IFS 로 반복된 여러 조건을 주며 구간을 나누어 주어야 하기 때문이죠. 이걸 파워피벗의 계산된열을 사용해서 쉽게 처리 할 수 있는 방법을 소개합니다. 먼저 예시 데이터는 아래와 ..
2020.11.18 -
[슈퍼차지 파워BI] 데이터 모델링 이란?
슈퍼차지 파워BI를 1회독 완료 하였네요. 저에게는 도움이 많이 되는 책이었습니다. 보자마자 바로 써먹은 Case도 있고요. 아주 난이도가 있는 책은 아니기 때문에 처음 DAX를 접하는 사람도 예제를 따라하며 익힐 수 있다고 생각됩니다. 특히 '필터 컨텍스트' 관련 부분은 많은 도움이 되었습니다. 이전에 SQLBI 사이트의 강의를 통해 배웠던 개념을 다시 복습 할 수 있어 좋았습니다. 종종 책에서 정리 해 놓은 개념들을 정리 하고 싶을때 마다 꺼내서 포스팅 하며 익혀 두는 것이 좋을 것 같아서 먼저 오늘은 책의 1장에 나오는 "데이터 모델링 이란" 설명 부분을 발췌하여 정리합니다. 파워 Bl에서 시용하는 데이터 모델링 엔진은 엑셀의 파워 피벗과 동일하다. 데이터 모델링은 IT나 Bl 전문가의 영역이기 때..
2020.11.18 -
엑셀 데이터 모델 - VLOOKUP을 놓아주자 (원본구조)
책을 보면서 파워 BI(& 파워피벗)의 DAX를 공부하다 보니 여러 생각이 들더군요. 좀 개념을 정리 해볼 필요가 있다고 생각 되는 주제들이 떠올라서 남겨 보려 합니다. 먼저 오늘은 업무에 활용하기 위해 엑셀로 데이터 모델을 구성하는 방식에 대해서 적어 봅니다. 제목에는 '놓아주자' 는 과격한 표현을 썼지만 엑셀을 사용 하면서 VLOOKUP을 안 쓸수는 없습니다. 또한 VLOOKUP을 사용하는 것이 더 좋은 경우가 훨씬 많죠. 다만 과다 하게 사용되는 것이 문제 일 뿐입니다. 적정 수준에서는 여전히 엑셀 최강 함수라 생각합니다. 그럼 어떤 것이 과한 것일까요? 아래 내용은 판매실적과 각 마스터 데이터 간의 관계를 예시로 표현한 것 입니다. 일반적으로 우리가 사용하는 업무 시스템에 구성된 일별 판매실적 보..
2020.11.17