2016-07-15 2 views
0

미안하지만 비슷한 질문/답변을 놓친 경우.DAX 이전 비 공휴일

기본적으로 DAX에서 날마다 비교하려고하지만 이전의 비어 있지 않은 날에 대한 측정 값을 얻는 좋은 방법을 찾을 수 없습니다.

나는 PREVIOUSDAY 기능을 시도했지만 일에 차이가있을 때 토 & 일에는 판매가없는 경우, 예를 들어, 결과는 내가 필요하지

PreviousAmount = CALCULATE([Total $ Amount], PREVIOUSDAY('Fact'[Date])) 

내가 생각할 수있는 것 이전의 비어있는 날짜를 나타 내기 위해 날짜 차원에 도우미 열을 추가하는 것입니다 (즉, 날짜가 월요일 인 경우 이전 비어 있지 않은 날짜는 이전 금요일이됩니다). 그런 다음 CALCULATE 함수를 사용하고 비어있는 날짜별로 필터링 할 수 있습니다.

대신에 계산을 수행하는 방법이 있습니까? 미리 감사드립니다. 테이블 아래

내가 무엇을 달성하고자 반영해야한다 :

<table border="1"> 
 
    <th>Date</th><th>Amount</th><th>What I got</th><th>What I hope</th> 
 
    <tr> 
 
     <td>01/07/2016</td> 
 
     <td>7983</td> 
 
     <td></td> 
 
     <td></td> 
 
    </tr> 
 
    <tr> 
 
     <td>04/07/2016</td> 
 
     <td>15933</td> 
 
     <td></td> 
 
     <td>7983</td> 
 
    </tr> 
 
    <tr> 
 
    <tr> 
 
     <td>05/07/2016</td> 
 
     <td>38591</td> 
 
     <td>15933</td> 
 
     <td>15933</td> 
 
    </tr> 
 
    <tr> 
 
     <td>06/07/2016</td> 
 
     <td>7859</td> 
 
     <td>38591</td> 
 
    <td>38591</td> 
 
    </tr> 
 
    <tr> 
 
     <td>07/07/2016</td> 
 
     <td>3252</td> 
 
     <td>7859</td> 
 
    <td>7859</td> 
 
    </tr> 
 
    <tr> 
 
     <td>07/07/2016</td> 
 
     <td>9474</td> 
 
     <td>3252</td> 
 
    <td>3252</td> 
 
    </tr> 
 
</table>

답변

0

는 그것은 산뜻한하지 않을 수 있습니다하지만 당신은 전날 값을 저장하는 계산 된 열을 만들 수 있습니다

PreviousDate = 
CALCULATE (
    MAX ([Date]), 
    FILTER (AmountTable, AmountTable[Date] < EARLIER (AmountTable[Date])) 
) 

다음에 전날 금액 계산 열을 새로 작성하십시오.

= 
CALCULATE (
    SUM ([Amount]), 
    FILTER (
     ALL (AmountTable), 
     AmountTable[Date] = EARLIER (AmountTable[PreviousDate]) 
    ) 
) 
+0

안녕하세요, 댓글 주셔서 감사합니다. 그러나 EARLIER 함수를 적용하면 엔진이 오류를 반환합니다. "이전에 존재하지 않는 이전 행 컨텍스트를 참조합니다." – cqi

+0

안녕하세요 - 계산 된 열 대신 측정 값으로 추가 할 수 있습니까? 이 수식은 날짜 필드와 금액 필드가있는 테이블의 계산 열에 대한 것입니다. 계산 된 열은 행 단위로 작동합니다. EARLIER는 FILTER가 적용되기 전에 원래의 행 값을 참조합니다. – Rory