場景:當我們在DW中新建了一個表,但是在FM中沒有創建模型,想針對這個表直接做一個報表,那么就需要在reportstudio中直接用sql來查詢,為了追求查詢速度,我們可以把頁面用戶選擇的條件直接傳給sql.
如下圖:上面是省份對應key值為1-2-3-4-5,下面是商品類型對應key值為1-2,省份選擇1,5類型選擇1則出現想要的數據
實現步驟:
1:從工具箱拖一個sql,每個sql會綁定一個查詢接收sql的查詢結果,如下圖
2:指定sql引用的數據源,數據源已經在CognosConnection中創建好了的,可供選擇
3:在sql中寫入以下內容
select * from testorder t where t.ordertype=#prompt('ordertype','integer')#
and t.orderprovince in (#promptmany('pkey','integer')#)
解析:
#prompt('ordertype','integer')# 針對值提示單選值 第一個參數是參數名,第二個參數是日期類型
#promptmany('pkey','integer')#針對值提示可多選的時候,第一個參數是參數名,第二個參數是日期類型
PS:宏函數也可以用在模型設計器FM中,有情趣的朋友們可以自行組團去研究了.