我有一個SSRS報告,它是根據給定2個變量的存儲過程構建的。我收到的錯誤是SSRS假設列數據類型錯誤
An error has occurred during report processing. (rsProcessingAborted)
Cannot read the next data row for the dataset Sheet2. (rsErrorReadingNextDataRow)
Conversion failed when converting the varchar value '.5' to data type int.
這沒有任何意義。問題變量被存儲爲一個varchar。我不在存儲過程中進行任何類型轉換。在sql server studio中執行存儲的proc可以正常工作。在查詢設計器中,我使用存儲過程的代碼替換了存儲過程調用,並且它也可以正常工作。切換回調用存儲過程會引發相同的錯誤。
爲什麼SSRS試圖將varchar轉換爲int?如果有的話,它應該是雙重的,或者只是單獨放置它,而不是嘗試對它進行類型化。
這是一個奇怪的。在Visual Studio中使用設計器時發生此錯誤嗎?我曾經看到過一些奇怪的行爲,儘管通常嘗試確定字段名稱,但在實際服務上運行時,它們從不出現。我唯一能想到的其他事情是,如果您在文本框的「格式」屬性中應用任何類型的值。 –
@MartinSoles在Visual Studio和SSRS報告服務器上。這就是它引起了我的注意。 – Luminous
嘗試查看報告後面的XML。字段類型包含在數據集中,但不包含在設計器中。也許它以某種方式被標記爲整數(就像報告最初開發時一樣,它是一個整數,但在存儲過程更新後現在是一個varchar)。 –