日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Reporting Services 的多值參數(shù)究竟能否用在數(shù)

系統(tǒng) 2252 0

編寫映射到多值報(bào)表參數(shù)的查詢

您可以為要?jiǎng)?chuàng)建的任何報(bào)表參數(shù)定義多值參數(shù)。不過,如果要將多個(gè)參數(shù)值傳回查詢,則必須滿足下列要求:

  • 數(shù)據(jù)源必須為 SQL Server、Oracle 或 Analysis Services。
  • 數(shù)據(jù)源不能是存儲過程。Reporting Services 不支持將多值參數(shù)數(shù)組傳遞給存儲過程。
  • 查詢必須使用 IN 語句來指定參數(shù)。

MSDN有上述的描述,可見多值參數(shù)必須用于數(shù)據(jù)集查詢文本為Select ... Where XXXId in (@Parameters)的典型應(yīng)用,

如果用到存儲過程就會(huì)報(bào)類型(ID參數(shù)是字符串型)無法轉(zhuǎn)換等錯(cuò)誤;

如獲取數(shù)據(jù)為 exec dbo.pGetOrders @OrderID??? (存儲過程內(nèi)容見如下代碼)

?

USE ? [ AdventureWorks ]
GO
SET ?ANSI_NULLS? ON
GO
SET ?QUOTED_IDENTIFIER? ON
GO

ALTER ? PROCEDURE ? [ dbo ] . [ spGetOrders ]
????
@OrderIDs ? varchar ( 500 )? = ? ''
AS
BEGIN
????
SET ?NOCOUNT? ON ;
????
????
DECLARE ? @sql ? varchar ( 500 )

????
SET ? @sql ? = ? ' SELECT?*?FROM?Sales.SalesOrderDetail ' ;
????
IF ? @OrderIDs ? <> ? '' ? SET ? @sql ? = ? @sql ? + ? ' ?WHERE?[SalesOrderID]?IN?( ' ? + ? @OrderIDs ? + ? ' ) ' ;
????
EXEC ?( @sql );
????
????
SET ?NOCOUNT? OFF ;
END ;

?

?

上面問題通過筆者反復(fù)琢磨,找到一種變通的辦法:

增加一個(gè)“內(nèi)部”參數(shù),將其設(shè)置為級聯(lián)參數(shù)(必須排列在上面提到的多值參數(shù)之后),如@InnerOrderIDs類型為String,可用值和默認(rèn)值都設(shè)置為表達(dá)式如下:

=Join(Parameters!OrderID.Value,??", ")

然后修改獲取數(shù)據(jù)的SQL為 exec dbo.pGetOrders @InnerOrderIDs 就大功告成!

?

Reporting Services 的多值參數(shù)究竟能否用在數(shù)據(jù)集獲取途徑為存儲過程的情景呢?


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 滨海县| 苏州市| 乌海市| 黄骅市| 舟曲县| 东城区| 香港 | 手机| 瓮安县| 洛扎县| 民权县| 兖州市| 新乐市| 师宗县| 乌兰察布市| 隆昌县| 邮箱| 修武县| 遂宁市| 视频| 唐海县| 灵璧县| 吐鲁番市| 海兴县| 丰台区| 武威市| 罗平县| 英德市| 惠东县| 确山县| 霍山县| 方正县| 桃园县| 宣汉县| 祁阳县| 孙吴县| 石河子市| 自治县| 滨海县| 汉寿县| 乐东|