2016-12-09 2 views
0

@Period (텍스트), @FromDate (날짜) 및 @ToDate (날짜)의 세 가지 매개 변수가있는 SSRS 2014 보고서가 있습니다. 기간 드롭 다운 목록 (1 월, 2 월, 3 월 등 ...)에서 값을 선택하여 함께 작동합니다. 선택한 기간에 따라 @FromDate 및 @ToDate 매개 변수가 선택에 따라 변경됩니다. 이것은 잘 작동하지만 날짜 매개 변수가 새로 고쳐지지 않으므로 새 기간을 선택한 후 새 기간을 선택하면 문제가 발생합니다.SSRS : 계단식 날짜 매개 변수 두 개가 새로 고침되지 않습니다.

몇 가지 제안 및 해결 방법을 살펴 보았지만 아직 두 개의 종속 날짜 매개 변수를 처리하는 방법을 찾지 못했습니다. 어떤 제안?

+0

기본 또는 사용 가능한 값을 채우는 데 상위 (@Period) 매개 변수를 사용하고 있습니까? UI는 변경되지 않지만'@ FromDate' 및 @ @ ToDate 매개 변수는 런타임에 올바르게 설정됩니다. –

+0

@alejandrozuleta Period 매개 변수는 사용 가능한 값으로 만 채워지지만 FromDate 및 ToDate는 기본값으로 채워집니다. – Simon

+0

이 경우 두 날짜 매개 변수를 모두 '내부'로 설정할 수 있으므로 매개 변수는 UI가 아닌 기간 매개 변수에서만 채워집니다. 그러나 사용자가 날짜를 선택하게해야한다면 두 개의 추가 매개 변수를 내부로 생성하고 @Period 매개 변수의 기본값 또는 표시되는 날짜 매개 변수의 값을 사용할지 결정하기 위해 식을 사용하여 날짜를 채워야합니다. –

답변

0

한 번 생성 된 날짜 매개 변수는 변경할 수 없습니다. 그것은 계단식 시설이없는 마이크로 소프트에 따르면,이 디자인의 (그것은 그들이 행동하고 싶었 방법) :

Follow this link please

0

으로 이미 계단식에서/사용 가능한 값이없는 매개 변수 기본값을 언급 쿼리가 기본값을 새로 고치지 않습니다.

해결 방법 : 당신의 DateFrom 및 DateTo 날짜, 각각 별도의 열의와 @Period 매개 변수에 따라 계산하는 하나의 행 데이터 세트를 생성하고 모두 당신의 매개 변수의 가능한 기본 값으로 데이터 집합을 할당합니다. 단점 : 필드가 데이터 집합으로 채워지기 때문에 보고서를 실행할 때 값을 편집 할 수 없습니다.

0

의도 한대로 작동하지만 Microsoft는 종속 매개 변수를 변경하면 계단식 날짜 매개 변수를 새로 고치지 않습니다. 그러나 주위를 둘러 쌀 수 있습니다.

@Period 매개 변수에 따라 필요한 데이터가있는 행 하나를 반환하는 두 개의 데이터 매개 변수에 대해 두 개의 데이터 집합이 필요합니다.

DECLARE @Dates as TABLE ([Period] INT, [Date] SMALLDATETIME) 

INSERT INTO @Dates VALUES 
(1,DATEADD(s, 86340, DATEADD(dd,-1,DATEADD(mm,DATEDIFF(mm,0,GETDATE()),0)))) 
,(2,DATEADD(DAY , 7-DATEPART(WEEKDAY,GETDATE()),DATEADD(MINUTE,- 1,DATEADD(DAY,0,DATEADD(day,DATEDIFF(day,0,GETDATE())+1,0))))) 
,(3,DATEADD(MINUTE,- 1,DATEADD(DAY,0,DATEADD(day,DATEDIFF(day,0,GETDATE()),0)))) 

SELECT 
    [Period] 
    ,[Date] 
FROM 
    @Dates 
WHERE 
    [Period] = @Period 

는 @Period 매개 변수 too match의 사용 가능한 값을 설정하고 자신의 matching datasets에 데이터 매개 변수의 기본 값을 설정합니다.

@Period 매개 변수를 변경하면 날짜 데이터 집합이 강제로 다시 실행되고 날짜 매개 변수의 기본값이 새 결과로 설정됩니다.

관련 문제