2016-05-31 21 views
0

我正在嘗試編寫一個ssrs表達式,該表達式需要一個參數值,將其格式化爲時間戳記,然後從該時間戳記中顯示監管年度和季度。例如,如果參數是01/01/2016,那麼它應該將參數格式設置爲2016-01-01 00:00:00,然後從中顯示監管年度和季度,例如2015/2016年第四季度。我的數據存儲在使用時間戳獲取監管年度和季度的多維數據集中。SSRS表達式使用多維數據集數據從時間戳值中獲得季度和年度

回答

0

執行此操作的更簡單方法是在完整的日期維度中具有所需值的所有版本。這可以返回所需的不同格式。

如果這不是一個選項,我會嘗試在SQL中首先構造日期部分。我發現這比使用SSRS表達式語法更容易編寫。即使您必須將其創建爲報表中的數據集並將結果作爲表達式傳遞。

例如:當前財政年度

SELECT 
    CASE 
     WHEN DATEPART(M, GETDATE()) < '4' THEN CAST(YEAR(GETDATE()) -1 AS VARCHAR) + '/' + SUBSTRING(CAST(DATEPART(YYYY, GETDATE()) AS VARCHAR),3,2) 
     ELSE CAST(YEAR(GETDATE()) AS VARCHAR) + '/' + SUBSTRING(CAST(DATEPART(YYYY, GETDATE()) + 1 AS VARCHAR),3,2) 
    END 

結果:

2016/17

+0

難道這樣的事情來代替實施? = IIF格式(參數!PeriodFrom.Value,「yyyy-MM-dd 00:00:00」)= [計劃日曆]。[白天時間戳]。[白天時間戳],[計劃日曆]。[監管期限] [監管區],0) –

相關問題