Cognos Report Studio-条件为真时过滤,否则返回所有值

时间:2018-08-21 21:36:51

标签: filter report cognos-10 cognos-bi

我正在尝试根据条件过滤数据,但无法过滤。如果可以的话。
要求:该过滤器将应用于一个字段的一组值,而不应用于其他值。示例:在提示页面中,我有“业务部门”下拉列表(零售,金融和零售+金融)(业务是金融还是非金融)
还有另一个提示-“发布国家/地区代码”。
现在,当我选择“业务部门”作为“零售+金融”,并且将“发行国家/地区代码”选择为“ US”和“ GB”时,我希望报告仅过滤零售数据并返回所有国家/地区作为财务信息(即,我希望“发行国家”过滤器仅适用于零售数据,而不适用于财务数据)
像:输出如下:
    业务部门 国家/地区 总份额 客户
    零售US 1000 CAB;
    零售1500 CYZ;
    零售GB 1200 CEF;
    《金融IN 2000 CVB》;
    财经CN 5600 CYR;
    Finance US 3200首席信息官;
    财务GB 4567 CIO;
我的方法
(1)我为业务部门创建了一个数据项:IF(类型='财务')THEN('F')ELSE('R')
(2)业务部?和?发行国家代码?是来自提示页面的参数
(3)发出国家/地区代码是包装中的文件名。
代码1。

IF (?Business division? = 'R+F' AND ?I/E Issuing Country Code? = 'Include') 
 THEN  
 (  
  IF (Business Division <> 'F')  
 THEN  
(  
Issuing Country Code in ?Issuing Country Code?  
)  
)  
ELSE  
(IF   
(Business Division = 'F')  
THEN  
Issuing Country Code = Issuing Country Code  
)  

代码2。

IF (?I/E Issuing Country Code? = 'Include')  
THEN (  
CASE [Business Division]   
WHEN 'R'   
THEN (Issuing Country Code in (?Issuing Country Code?))  
WHEN 'F'  
THEN Issuing Country Code = Issuing Country Code  
END)  
ELSE (IF (?I/E Issuing Country Code? = 'Exclude')  
THEN (  
CASE [Business Division]   
WHEN 'R'  
THEN (Issuing Country Code not in (?Issuing Country Code?))  
WHEN 'F'  
THEN Issuing Country Code = Issuing Country Code  
END)  
ELSE(''))  

请提出建议。
谢谢!

0 个答案:

没有答案