0

Red lines need to be displayedSSRS 사용자 정의 그리드 선을

안녕 아래

내 차트가 보여, 나는 각 4 개 바 후 라인을 siaplay해야합니다. SSRS는 나에게 막대 사이에 선을 표시하는 기능을 제공하지만 두 간격 사이에 선을 표시하려고합니다.

회색 선은 "주요 눈금 표시"로 표시 할 수 있지만 빨간색으로 강조 표시된 선이 필요하므로 매달마다 빨간색 직선을 표시해야합니다.

SSRS 매우 유연하지 않기 때문에 감사

답변

0

과 때때로 우리는 우리가해야 할 일을 할 수있는 까다로운 일을 할 필요가있다.

X 축은 월간 데이터이므로 매월 15 일마다 행을 두 배로 늘립니다.

INSERT INTO @Output SELECT * FROM Result UNION ALL SELECT Cast(Year(DateAdd(d, -15, RevisedPeriod)) AS VarChar(4)) + '-' + Cast(Month(DateAdd(d, -15, RevisedPeriod)) AS VarChar(2)) + '-15', NULL , NULL , NULL , NULL , NULL , NULL , NULL , NULL , NULL FROM Result

그때 나는 모든 바 주위의 피크 값을 계산합니다.

SELECT @Max1 = Max(Bar1) FROM @Output SELECT @Max2 = Max(Bar2) FROM @Output SELECT @Max3 = Max(Bar3) FROM @Output SELECT @Max4 = Max(Bar4) FROM @Output

SELECT @MaxAll = Max(Value) FROM (VALUES (@Max1), (@Max2), (@Max3), (@Max4)) AS AllValues(Value)

그리고 다음 피크 값이 40,000 것 I는 37,295으로 최대 값을 얻을 경우 바 예를 들어, 도달 할 수있는 다음 피크 값을 얻을 - 그래서 라인이 그 0.01 차트 상단까지 도달 할 것입니다. 다음 결과를 참조하십시오.

SET @MaxAll = Cast(Cast(Cast(SubString(Cast(Cast(@MaxAll AS BigInt) AS VarChar(50)), 1, 1) AS Int) + 1 AS VarChar(1)) + Replace(Space(Len(Cast(Cast(@MaxAll AS BigInt) AS VarChar(50)))-1), ' ', '0') AS Decimal(18, 2)) - 0.01

마지막으로

SSRS에서 다음

UPDATE @Output SET PeriodSeparator = @MaxAll WHERE Day(RevisedPeriod) = 15 AND Month(RevisedPeriod) <> 6

이 범위 차트 유형으로 매월이 15 일을 보여이 @MaxDAll 값으로 매월 15 일을 나타내는 행을 업데이트 (Eror 바)

이제 매월 줄 구분 기호가 표시됩니다.

관련 문제