我在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)
任何帮助都将不胜感激。
由于