簡體   English   中英

Rownumber()在報告中不受支持?

[英]Rownumber() unsopported in reports?

我有以下查詢(由tablevalued函數返回)

SELECT 
ROW_NUMBER() OVER (ORDER BY ClientHId)  AS RowNumber,
ClientHId,
FirstName,
LastName,
FROM Client

然后像這樣在SSRS中填充數據集:

select RowNumber,ClientHId,FirstName,LastName from fuctionClient

到現在為止還挺好。 現在,我正在嘗試使用RowNumber列進行排序或顯示。 如果我嘗試排序,SSRS錯誤會指出: "unsopported datatype exception"如果我只是嘗試在Tablix中顯示它,則會顯示#error而不是行號。 Visual Studio intellisense表示僅支持整數,字符串,字符...。 但是Row_Number函數返回整數! 我什至試圖在rownumber上強制轉換cast as integer ,但仍然無濟於事。 有沒有人遇到過同樣的問題? ClinetHid-HierarchyId

令人恐懼的“無法復制”。

我剛剛創建了一個示例查詢報告,該查詢幾乎與您的查詢相同,包括創建一個表值UDF,然后從該報告中調用它。 然后,我按行編號字段對詳細信息組進行了排序,沒有任何問題。 我確保使用上面顯示的相同名稱調用了RowNumber字段。

您如何在UDF中聲明該字段的返回數據類型?

CREATE FUNCTION [dbo].[JamieTestFunction]
(
)
RETURNS 
@Requests TABLE 
(
    -- Make sure your type below is correct:
    [RowNumber] int, 
    [ClientID] int,
    [ClientName] NVARCHAR(200)
)
AS
BEGIN
INSERT @Requests
SELECT 
    ROW_NUMBER() OVER (ORDER BY ClientID)  AS RowNumber,
    ClientID,
    ClientName
    FROM clients

    RETURN;
END

(此外,請確保無論在何處指定要使用Field!RowNumber.Value的RowNumber,而不是SSRS中內置的RowNumber()函數,這可能會產生不同的結果。不過,我懷疑這是您的問題。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM