2016-07-07 28 views
1

毎月、毎月、四半期ごと、四半期ごとにレポートを実行する必要があります。両方のレポートの基礎となるデータは同じです。開始日と終了日のパラメータのデフォルトをカスタマイズできるように、またはrdlファイルを両方とも同じソリューションに保つことができるように、rdlファイルごとに個別のssrsソリューションを維持する必要がありますか?monthStartDateとmonthEndDateパラメータ月々のレポート参照とquarterStartDateおよびquarterEndDateパラメータのみ?SSRS複数レポート単一ソリューション

乾杯、あなたが共有してきたものから、

答えて

0

は、私はこれは異なっても、レポートにする必要がある理由については明らかではないよ(の.rdlファイル。)一つの.rdlはstartendパラメータとサブスクリプションを取ることができます四半期ごとおよび月ごとに異なる値で設定することができます。または、データセットまたはフィルタの変数値が変更された別のパラメータMonthOrQuarterを追加することもできます。

確かに、これは共有データセットを参照する2つの.rdlである可能性があります。

0

現在の日付に基づいて、必要な種々の期間の開始と終了を算出し、ビューを作成し、あなたはパラメータラベルとして使用できるラベル

CREATE VIEW DateRangeParameters 
AS 
SELECT 
DATEADD(month, DATEDIFF(month, '2000-01-01', getdate()), '2000-01-01') AS StartDate, 
DATEADD(month, DATEDIFF(month, '2000-01-01', getdate())+1, '2000-01-01') AS EndDate, 
'This Month' as Label 
UNION ALL 
SELECT 
DATEADD(month, DATEDIFF(month, '2000-01-01', getdate())-1, '2000-01-01') AS 
StartDate, 
DATEADD(month, DATEDIFF(month, '2000-01-01', getdate()), '2000-01-01') AS EndDate, 
'LastMonth' as Label 
UNION ALL 
DATEADD(month, DATEDIFF(month, '2000-01-01', getdate()), '2000-01-01') AS StartDate, 
DATEADD(quarter, DATEDIFF(quarter, '2000-01-01', getdate())+1, '2000-01-01') AS EndDate, 
'This quarter' as Label 
UNION ALL 
SELECT 
DATEADD(quarter, DATEDIFF(quarter, '2000-01-01', getdate())-1, '2000-01-01') AS 
StartDate, 
DATEADD(quarter, DATEDIFF(quarter, '2000-01-01', getdate()), '2000-01-01') AS EndDate, 
'LastQuarter' as Label 

は、他の時間延長しています週、年など必要な期間

このビューを直接使用して1つのデータセットを作成し、日付範囲を選択することができます。

> = startおよび<終了日列を使用して既存のクエリとビューをリンクします。ラベルをレポートパラメータにリンクするWHERE句を追加します。

このようにパラメータを使用すると、クエリで使用する時間範囲が選択されます。

レポートを手動で実行し、時間範囲のパラメータを選択するか、レポートを毎月実行して別々に実行し、四半期ごとに実行するようにスケジュールできます。毎回適切なパラメータを選択し、適切な日付範囲を動的に計算します。

関連する問題