現在の日付から 1 か月を引いた日付のYEAR部分を取得するBIDS
必要があります。expression
たとえば、 Today's date is は20/04/2012
、次の式が返される目的の式です。
2012年
今日の日付が05/01/2012
想定外の式である場合、次のように返されます。
2011年
現在の日付から 1 か月を引いた日付のYEAR部分を取得するBIDS
必要があります。expression
たとえば、 Today's date is は20/04/2012
、次の式が返される目的の式です。
2012年
今日の日付が05/01/2012
想定外の式である場合、次のように返されます。
2011年
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION YearRollOver
(
@dDateIn DATETIME
)
RETURNS DATETIME
AS
BEGIN
declare @dDATEOut DATETIME
SELECT @dDATEOut = CAST(CAST(YEAR(@dDateIn)+1 AS varchar)+'/'+CAST(MONTH(@dDateIn) as varchar)+'/'+cast(DAY(@dDateIn) as varchar) AS DATETIME)
RETURN @dDATEOut
END
GO
この機能を試してください。インクリメントする日付を渡すだけで、YEARが1増加します。
満足している場合は、スレッドを閉じることを忘れないでください。
乾杯
マック
したがって、ルールは次のとおりです。
右?
=IIf(Datepart("m", Fields!date.Value)=1,Datepart("YYYY", Fields!date.Value)-1,Datepart("YYYY", Fields!date.Value))
あなたが多くのことをしているのであれば、年、月、日をそれぞれ独自の変数に抽出する関数を作成します。年をインクリメントし、日付を文字列として再構築し、文字列を DATE としてキャストします。手が必要な場合はお知らせください。
マック