2016-11-22 2 views
1

SSRS를 배우기 시작했습니다. 간단한 질문인데 용서해주세요.하지만 적절한 답을 찾지 못하는 것 같습니다. 서비스 티켓이있는 데이터 세트를 가지고 있습니다. 이 같은 :원형 차트 용 datediff 별 SSRS 그룹

SELECT service_tickets, Company_id, Urgency, Date_Entered_UTC, Date_Closed_UTC 
    CASE when servicetype = '' then 'Other' else servicetype end as ServiceType, 
    CASE when servicesubtype = '' then 'Other' else servicesubtype end as ServiceSubType, 
FROM v_Service 
WHERE Hours_Actual >0 

나는 그룹에 원하는 오전 원형 차트의 date_entered 필드를 사용하여 분기하여이 결과 (궁극적으로는 1 분기에 기록 된 모든 티켓의 40 %, 즉 전체의 백분율로 표시 Q2 등판에 기록 된 모든 티켓의 20 %가 나중에 걱정할 것입니다.) 나는 그들이 첫 번째 쿼리에있는 모든 필드를 유지할 필요가 동일한 보고서에 여러 그래프의 데이터 집합을 사용하고 같은, 그러나

SELECT count(service_tickets) as Tickets 
FROM v_service 
    WHERE ... 
GROUP BY DATEDIFF(qq, date_entered, getdate()) 

: 아래의 쿼리는 나에게 정확한 수를 제공합니다. 그래서 SSRS에게 두 번째 쿼리에서와 같은 결과를 얻기 위해 첫 번째 데이터 집합의 결과를 그룹화하는 방법을 알아 내려고합니다. 본질적으로 원래 데이터 세트를 사용하여 group by datediff을 원형 차트로 변환하려면 어떻게해야합니까?

+0

답변이 없지만 datepart()가 아닌 datediff()별로 그룹화 하시겠습니까? 첫 번째는 현재 날짜에서 얼마나 많은 분기를 계산할 것인가, 두 번째는 실제 분기를 제공 할 것인가 ... – SMM

답변

0

실제로이 작업을 수행하는 가장 쉬운 방법은 차트를 하위 보고서로 삽입하여 자체 차트를 만들고 기존 차트에 사용 된 데이터 집합으로 제한되지 않는다는 것입니다.

0

가장 쉬운 방법은 SSRS 식을 그룹화하는 것입니다. 이 경우 :

=DATEDIFF(DateInterval.Quarter, Fields!date_entered.Value, Now()) 

그러나 데이터 세트의 계산 된 열로 해당 표현식을 추가하는 것이 더 깨끗할 수 있습니다. 데이터 세트 속성을 열고 왼쪽에서 "필드"를 선택한 다음 "추가"... "계산 된 열"을 클릭하십시오. 그런 다음 필드에 이름을 지정하고 소스 상자에 표현식을 추가하십시오.

그러나 보고서의 다른 항목에 영향을주지 않고 SQL 쿼리에서 추가 열로 추가 할 수 있어야합니다. SELECT 절에 DATEDIFF(qq, date_entered, GETDATE()) AS Quarters_since_entered을 추가하기 만하면됩니다.