业务对象BO中的过滤条件

时间:2017-06-08 11:28:19

标签: database filter business-objects

我在BO中遇到过滤条件问题。 想象一下,我有这个数据库

ID | DESC

0 |无

1 |公司

2 |所有

在BO中我有一个过滤器,询问你想在哪里找到这些对象和2个选项:

"公司"或者"所有"。

如果我选择"全部"那么我应该拥有" ID"的所有数据。 0,1,2如果我选择"公司"只有带有" ID"的数据1。

所以我做了这样的事情:

TABLE_NAME.ID <= (CASE WHEN @Prompt('where do you want to find the objects','A',{'Company', 'All'},mono,constrained,not_persistent,{'Company'}) = 'Company' THEN 1 ELSE 2 END)

当我选择&#34; All&#34;因为我拥有所有&#34; ID&#34;小于2,即0,1,2。

但是当我的选项是公司时,它不起作用,因为它还显示带有&#34; ID&#34;的数据。 0

我应该有一些&#34; =&#34;与&#34;&lt; =&#34;

结合使用

1 个答案:

答案 0 :(得分:1)

如果它真的那么简单,那么下面的方法就可以了:

TABLE_NAME.ID = 
    (CASE @Prompt('where do you want to find the objects',
            'A',
            {'Company', 'All'},
            mono,
            constrained,
            not_persistent,{'Company'}
            ) 
          WHEN 'Company' 
          THEN 1  
          WHEN 'All' 
          THEN TABLE_NAME.ID
          END)