[英]Records repeat for SSRS 2005 report
當我為采購訂單生成報告時,該報告會重復記錄產品代碼。
例如,采購訂單為:P000976,當產品代碼僅應出現一次時,報告將顯示兩次產品代碼。 45-5540出現兩次。
P000976 2012年9月17日15,040.00 15,040.00 0.00
45-5540“頸椎前突墊片10mm,頸椎前突墊片10mm” 20 20 0
45-5540“頸椎前突墊片10mm,頸椎前突墊片10mm” 20 20 0
當我將報表的SQL放入SQL Server並通過查看導致附加產品代碼的代碼來運行sql時,它就是SQL中的以下行:
在q.distpartno = p.distpartno上加入all_product_codes_VW p
select q.specialrequirement
, q.distpartno
, q.toproduce
, q.prodbegindate
, q.distributor
, rc.report_category_name
, s.productperpo
, r.ebi_released
, w.ebi_in_WIP
, p.distproductname
, tp.typeprefixdetail
, tp.cost
, '1' as ReportTotals
from all_required_vw q
left join all_shipped_grafts_new_VW s on (q.distpartno = s.distpartno and q.specialrequirement = s.ponumber)
left join all_released_Grafts_VW r on q.distpartno = r.distpartno
left join all_in_WIP_VW w on q.distpartno = w.distpartno
join all_product_codes_VW p on q.distpartno = p.distpartno
join setup_tissue_prefix tp on q.typenumber = tp.typeprefix
join setup_report_category_1 rc on q.distributor = rc.report_category_id
where q.prodbegindate < @enddate
and q.completed = '0'
and rc.report_category_name like '%' + isnull(@tcustomer, '') + '%'
order by q.prodbegindate, p.distproductname
這是聯接為其創建副本的視圖的SQL。
SELECT COUNT_BIG(*) AS BIG, DistPartNo, DistProductName, Distributor, UMTBProductCode
FROM dbo.Setup_Distributor_Product_info
WHERE (Distributor <> '7') OR (Distributor IS NULL)
GROUP BY DistPartNo, DistProductName, Distributor, USSAProductCode
如果您注釋掉這些行
--, p.distproductname
--join all_product_codes_VW p on q.distpartno = p.distpartno
查詢是否為每個distpartno返回單行? 如果是,那么您正確的認為all_products_code_VW視圖導致了多行。
運行這兩個查詢,查看每個查詢中有多少行,它將為您提供線索,這是為什么:
Select * from all_required_vw where distpartno = '45-5540'
Select * from all_product_codes_VW where distpartno = '45-5540'
我的猜測是僅加入distpartno不足以給您帶來獨特的結果。 同一零件可能有多個分銷商,或者相同零件號可能有多個產品名稱,例如,不同分銷商使用相同零件號的不同產品。
此GROUP BY子句可能
GROUP BY DistPartNo, DistProductName, Distributor, USSAProductCode
需要替換這個
GROUP BY DistPartNo, DistProductName, Distributor, UMTBProductCode
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.