2016-08-22 4 views
0

SSMSで正しく動作する以下のクエリがあり、SSRSレポートビルダー3.0のクエリデザイナで動作します。それは3つのパラメータ(@年)のうちの1つで、今日から何年後に結果が得られるかです。 @yearに-1、-2、-3、-4、または-5を指定しました。しかし、私がレポートを実行すると、今年の1月からの結果のみが返されます(画像参照)。 @year式をレポートに追加すると、正しい値がクエリに渡されていることが示されます。私が間違っていることはありますか?SSRS - なぜ私のレポートは今年の日付のみを返しますか?

declare @complete varchar(1) = 'y', 
@supplier_id Nvarchar(max) = 1, 
@year int = -1 


select p21_view_address.name [Supplier Name], p21_view_po_hdr.supplier_id [Supplier ID], p21_view_po_line.po_no [PO #],p21_view_po_hdr.location_id [PO Location ID], line_no [PO Line #] 
    , p21_view_inv_mast.item_id [Item ID], p21_view_inv_mast.item_desc [item_desc], p21_view_po_line.date_created [PO Date Created], unit_quantity [Qty Ordered] 
    , qty_received [Qty Received] , convert(varchar(10), cast(p21_view_po_line.date_due as date), 101) [Expected Date], coalesce(convert(varchar(10), cast(p21_view_po_line.received_date as date), 101), 'Not Received Yet') [Receipt Date], p21_view_po_hdr.approved [PO Approved?], [pi].average_lead_time [Lead Time] 
    , convert(varchar(10), cast(po_hdr_ud.purchase_order_confirmation as date), 101) [Confirmation Date], convert(varchar(10), cast(p21_view_po_line.required_date as date), 101) [Required Date] from p21_view_po_line 
INNER JOIN p21_view_po_hdr ON p21_view_po_line.po_no = p21_view_po_hdr.po_no 
join p21_view_inv_mast on p21_view_inv_mast.inv_mast_uid = p21_view_po_line.inv_mast_uid 
join p21_view_supplier_purchasing_info [pi] on p21_view_po_line.inv_mast_uid = [pi].inv_mast_uid and p21_view_po_hdr.location_id = [pi].location_id and p21_view_po_hdr.supplier_id = [pi].supplier_id 
join p21_view_address on p21_view_po_hdr.supplier_id = p21_view_address.id 
join po_hdr_ud on p21_view_po_line.po_no = po_hdr_ud.po_no 
where p21_view_po_line.cancel_flag = 'N' and p21_view_po_line.delete_flag = 'N' and p21_view_po_line.complete = @complete and (@supplier_id = 1 or p21_view_po_hdr.supplier_id in (@supplier_id)) 
and p21_view_po_line.date_created > DATEADD(year, @year, GETDATE()) 
order by p21_view_po_line.date_created asc 

SSRSでレポートの実行から結果 Results from Running the Report in SSRS

SSRSクエリデザイナの結果 enter image description here

+0

古い日付は2ページ目以降に表示される可能性がありますか? – newGuy

答えて

1

私はわからない、なぜこれが起こったが、私は削除することで問題を修正Tablixプロパティをテーブルに並べ替えます。 PO_Date_createdに設定しましたが、私のSQLコードでPO_Date_createdの注文もありました。テーブルからTablixのソートプロパティを削除すると、結果が正しく返されました。 enter image description here

関連する問題