2012-12-13 3 views
1

보고서 작성기 3.0에서 월요일부터 시작하여 매주 열 머리글에 해당 날짜의 각 날짜를 채우는 보고서를 작성하려고합니다. 보고서는 해당 날짜가 주어진 행 항목에 대해 "Dates Received"필드에 나타날 때마다 계산을 수행합니다 (아래 그림 1 참조).현재 주별로 필터 매트릭스

보고서 작성기에서 보고서를 매일 실행해도 지정된 주간 날짜 만 표시 한 다음 계속 계산할 수있는 필터 또는 매개 변수를 만드는 방법이 궁금합니다.

그림 1 : 매트릭스 모의 업 (날짜는 현재 주입니다) 이전 enter image description here

나는 '(케이 한 다음 5 일을 보여주기 위해 테이블에 열을 얻기 위해이 코드를 사용했다 난 그냥 그 주에 대한 일을해야하기 때문에 t)는 여기서 일 :

=IIF(6 - WeekDay(Today()) - X < 0, DateAdd("d", X + 2, Today()), 
DateAdd("d", X, Today())) 

답변

0

가장 쉬운 것은 당신을 위해 무거운를하고 가장 편리한 방식으로 데이터를 준비하기 위해 SQL을 얻는 것입니다 보고.

SELECT PersonId, SomeDate 
FROM MyTable 
WHERE SomeDate >= DateAdd('d', 0 - (WeekDay(Today())-2), Today()) // Monday 
AND SomeDate <= DateAdd('d', 0 - (WeekDay(Today())-6), Today()) // Friday 

그런 다음 당신은 단지에이 피드 : 즉, 이번 주 금요일에 이번 주 월요일부터 아무것도입니다 - 그래서 우리가 수행 할 작업을 현재 주 일에 관련된 모든 데이터를 얻을 수있다 당신의 행렬, 사람과 날짜에 대한 그룹화 그리고 당신은 잘 가야합니다.

+0

쿼리 작성기를 사용하는 경우 이러한 조건이 보고서 작성기 3.0에서 필터로 추가됩니까? 나는 SQL pull을 편집하는 방법을 이해할 수 없다. – webdevanddata

0

나는 도구 사용 가능한 없어요하지만 당신에 essentually 데이터 세트 또는 테이블에 필터를 추가하는 경우 :

X > today() - day of the week --this will get the date for the sunday 

그리고

X < today() + (6 - day of the week) --this will get the date for saturaday 

이 데이터가 월요일 사이입니다 보장합니다 금요일.

0
Declare @DateFrm datetime= N'2014-11-04' 
Select 
    [EnquiryTypeValue], 
    [CallerValue], 
    Created 
FROM [BPU].[dbo].[vwEnquiry] 
WHERE 
    CAST(Created as date) between DATEADD(ww, DATEDIFF(ww,0,@DateFrm), 0) 
     and DATEADD(ww, DATEDIFF(ww,0,@DateFrm), 6)