SSRS奇怪報錯Could not update a list of fields for the quer.

今天遇到一個奇怪的問題,SSRS我以爲是個半成品,不少東西都搞不了。寫了一段SQL,原本SQL寫法都有點怪了,以下數據庫

 

WITH TMP_A AS (SELECT *,ROW_NUMBER() OVER(PARTITION BY L1_WorkOrderType,L2_TaskCode ORDER BY L4_QTY)CC FROM測試

(SELECTspa

B.B1_APP_TYPE_ALIAS AS L1_WorkOrderType,3d

WO.TASK_CODE AS L2_TaskCode,blog

WO.COST_ITEM AS L3_CostItem,ip

SUM(WO.COST_QUANTITY) AS L4_QTY,io

MAX(WO.COST_UNIT_TYPE) AS L5_UOMselect

FROM B1PERMIT Bim

LEFT JOINd3

GWORK_ORDER_COSTING WO

on b.SERV_PROV_CODE = WO.SERV_PROV_CODE

AND B.B1_PER_ID1 = WO.B1_PER_ID1

AND B.B1_PER_ID2 = WO.B1_PER_ID2

AND B.B1_PER_ID3 = WO.B1_PER_ID3

WHERE (B.B1_ALT_ID = 'WO-2013-00145' or B.B1_ALT_ID = 'WO-2013-00142')

AND B.SERV_PROV_CODE = 'ARAPAHOE'

GROUP BY B.B1_APP_TYPE_ALIAS,WO.TASK_CODE,WO.COST_ITEM)T1),

TMP_B AS

(SELECT *,ROW_NUMBER() OVER(PARTITiON BY L1_WorkOrderType,L2_TaskCode ORDER BY L6_PartsQTY)CC

FROM

(select

b.B1_APP_TYPE_ALIAS as L1_WorkOrderType,

p.TASK_CODE as L2_TaskCode,

P.PART_DESCRIPTION AS L8_Description,

SUM(p.QUANTITY) as L6_PartsQTY,

MAX(P.UNIT_OF_MEASUREMENT) AS L7_PartsUOM

FROM B1PERMIT B

LEFT JOIN

GPART_TRANSACTION P

on b.SERV_PROV_CODE = p.SERV_PROV_CODE

AND B.B1_PER_ID1 = p.B1_PER_ID1

AND B.B1_PER_ID2 = p.B1_PER_ID2

AND B.B1_PER_ID3 = p.B1_PER_ID3

WHERE (B.B1_ALT_ID = 'WO-2013-00145' or B.B1_ALT_ID = 'WO-2013-00142')

AND B.SERV_PROV_CODE = 'ARAPAHOE'

and p.TRANSACTION_TYPE = 'ISSUE'

GROUP BY b.B1_APP_TYPE_ALIAS,

p.TASK_CODE,

P.PART_DESCRIPTION) T2)

SELECT COALESCE(A.L1_WorkOrderType,B.L1_WorkOrderType),COALESCE(A.L2_TaskCode,B.L2_TaskCode),A.L3_CostItem,A.L4_QTY,A.L5_UOM,B.L6_PartsQTY,B.L7_PartsUOM,B.L8_Description

FROM TMP_A A FULL OUTER JOIN TMP_B B

ON A.L1_WorkOrderType = B.L1_WorkOrderType

AND A.L2_TaskCode = B.L2_TaskCode

AND A.CC = B.CC

大體意思就是TMP_A表與TAMP_B表關聯條件是TYPE和CODE,且兩張表須要全鏈接,即TAMP_B中的678字段須要對應的填衝到TAMP_A表中,因此我構造了一個CC字段,分組後再給一個序號也做爲其鏈接條件才能成功的將678接到345後面,不然它會產生迪卡爾積的樣子。

 

當一切就緒後,放到SSRS中之後,以上腳本直接放到數據庫當中無任何問題,可是在SSRS中就出錯了,以下

 

通過幾回測試結果是COALESCE(A.L1_WorkOrderType,B.L1_WorkOrderType),COALESCE(A.L2_TaskCode,B.L2_TaskCode) 字段沒取別名引發的,我呸。

再來SSRS其實常常會出現相似的錯誤,可能多嵌套幾層就會致使沒法運行了,離水晶報表感受仍是差好遠的。

今天星期三啦,一個星期又過去一半多了,哦耶~明兒個深圳又要下雨啦,涼快啦~,字裏好熱,但願家裏也能下雨啊~我娘在家好熱的說~啊哦~

要下班啦,哦耶~

相關文章
相關標籤/搜索