別のパラメータリスト(年)に基づいて週リスト(param):w1,W2,...
を作成する方法はありますか?最初のリストは年、2番目は選択した年に対応する週です。SSRSリストの週数
たとえば、最初のリストから2017を選択した場合、2番目のリスト(週)はラベルW1、W2で更新する必要があります。&値は、指定した年の対応する日付です。
別のパラメータリスト(年)に基づいて週リスト(param):w1,W2,...
を作成する方法はありますか?最初のリストは年、2番目は選択した年に対応する週です。SSRSリストの週数
たとえば、最初のリストから2017を選択した場合、2番目のリスト(週)はラベルW1、W2で更新する必要があります。&値は、指定した年の対応する日付です。
はこれを試してみてください必要がある場合は、外側のループで年を含めることができます...あなたは、これまで
declare @year as int
declare @startdate as datetime
declare @wk as int
declare @endwk as datetime
declare @tbl as table (
tbl_wk int,
tbl_Monday datetime
)
set @endwk= (SELECT DATEPART(wk, GETDATE())+1)
set @wk = 1
set @year = '2017'
set @startdate = CAST (cast(@year as varchar(4))+ '/01/01 00:00:00' as datetime)
while (@wk < @endwk)
begin
insert into @tbl (tbl_wk,tbl_Monday)
select @wk,DATEADD(wk, DATEDIFF(wk,0,@startdate), 0) as monday--MondayOfCurrentWeek,
set @wk = @wk+1
set @startdate = @startdate+7
end
select * from @tbl
それは働いています、ありがとうございます。 –
SQLで表を作成してレポートでこれを参照することもできます。 注:あなたが一年以上からの日付
declare @year as int
declare @startdate as datetime
declare @wk as int
declare @tbl as table (
tbl_wk int,
tbl_Monday datetime
)
set @wk = 1
set @year = '2017'
set @startdate = CAST (cast(@year as varchar(4))+ '/01/01 00:00:00' as datetime)
while (@wk < 53)
begin
insert into @tbl (tbl_wk,tbl_Monday)
select @wk,DATEADD(wk, DATEDIFF(wk,0,@startdate), 0) as monday--MondayOfCurrentWeek,
set @wk = @wk+1
set @startdate = @startdate+7
end
select * from @tbl
Miguel、私はそれが私のためにうまくいくと思います。今年の初めから今週までの週のみを表示したい場合、sqlで条件を追加することは可能ですか、ssrsでHide/displayで再生できますか?ありがとうございます –
何をしましたか?あなたの週の開始日は何ですか?月曜? – MiguelH
あなたの年と週を含むデータのサンプルを投稿することができます# –
MiguelH、私はiso週を取る必要があり、週の始まりは月曜日です –