Cognos 10.1 Report Builder If ... else if filters

时间:2014-03-04 19:17:07

标签: if-statement filtering cognos

我在Cognos中设置了当前的过滤器,效果很好。

if ((?Area?) = 'BEVEL') then
([WorkCenter] in ( 'VG3', 'VG2', 'BERGER', 'BG1', 'BG2', 'HG1', 'HG2', 'HOLLOW'))

else if ((?Area?) = 'BLADEMILL') then ([WorkCenter] in ('BLADE', 'MANUAL')) 

else if((?Area?) = 'FINISH') then  ([WorkCenter] in ('1-FIN', '2-FIN', 'BLAST', 'COAT', 'CTGPRP', 'FINISH', 'HEFS', 'VIBE'))

else ([WorkCenter] is null)

但是,当我尝试添加更多其他内容时,我会收到错误信息。是否有任何想法是否Cognos对可以完成的IF语句数量有限制?如果他们这样做是有解决方法吗?

以下是我想在声明中提出的所有内容。

if ((?Area?) = 'BEVEL') then
([WorkCenter] in ( 'VG3', 'VG2', 'BERGER', 'BG1', 'BG2', 'HG1', 'HG2', 'HOLLOW'))

else if ((?Area?) = 'BLADEMILL') then ([WorkCenter] in ('BLADE', 'MANUAL')) 

else if((?Area?) = 'FINISH') then  ([WorkCenter] in ('1-FIN', '2-FIN', 'BLAST', 'COAT', 'CTGPRP', 'FINISH', 'HEFS', 'VIBE'))

else if ((?Area? = 'GRIND') then ([WorkCenter] in ('1-SURF', '2-SURF', 'SURFAC'))

else if ((?Area? = 'HANDLEMILL') then ([WorkCenter] in ('CUTSAW', 'HANDLE', 'HZMACH'))

else if ((?Area? = 'LASER') then ([WorkCenter] in ('DEBUR', 'LASER', 'LSRPRC'))

else if ((?Area? = 'LINER') then ([WOrkCenter] in ('LNRCEL', 'STAMP'))

else if ((?Area? = 'SCREW') then ([WorkCenter] in ('SR-16'))

else if ((?Area? = 'TIGER') then ([WorkCenter] in ('TIGER'))

else if ((?Area? = 'Gold') then ([WorkCenter] in ('Gold'))

else if ((?Area? = 'ASSEMBLY' then ([WorkCenter] in ('ASSEMB', 'ASYGRP', 'BLEND', 'CLNBOX', 'ENGRAV', 'HKCELL', 'ROBOT', 'SERRAT', 'SHARPN'))

else ([WorkCenter] is null)

任何帮助都将不胜感激。

由于

0 个答案:

没有答案