欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)

程序员文章站 2022-06-03 19:28:45
...
VisualRules实例二(下)


         书接上回,在这篇实例的最后一部分介绍一下“员工月工资管理”的相关内容。

一、员工月工资管理需求

         我们以月为单位来计算员工的月工资,首先我们定义的一个初始化逻辑,根据员工的入职时间,将当月在职的员工的基本工资初始化到月工资表中。
         初始化之后,就有了员工工资的基本信息,然后设置员工当月的奖金以及惩罚金额。根据这些设置最后计算员工工资数据。
         最后员工就可以查询自己的月工资信息了。
         在工资管理工程下面,建立一个员工月工资规则组。该规则组下面维护月工资相关的规则包。
         我们首先需要建立一个月工资初始化的规则包,这个规则包传入月份后,就可以初始化月工资数据。
         我们再做一个月工资维护的规则包。这个规则包,显示员工的月基本工资、奖金、惩罚金额。
计算工资规则包,根据录入的数据,计算月工资、扣款、实发工资。
         最后再作一个查询功能,根据员工姓名,查询员工的月工资清单。


二、月工资初始化规则包

         首先我们在规则组下面新建一个月工资初始化的规则包,然后将该规则包的外部调用名命名为wage.salary.init。
         这个初始化的规则,是根据需要计算的月份,从员工信息表中将入职日期在该月之前的员工的基本工资取出来,作为员工的基本数据,然后将这些数据初始化到员工该月的基本工资。
         最后将这些月工资数据,更新到月工资表中。



规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


1.定义数据源

         我们在规则包的对象库中,添加一个hr数据源,然后在其下面导入月工资表。另外我们在建立一个取入职日期在该月之前的员工的基本工资的sql查询。如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         这个sql可以通过向导生成,然后将sql语句做相应的修改,变量名称如果需要可读性强些,也可以进行定义。

2.定义内存表

         我们可以在hr数据源下面也可以直接在对象库下面建立内存表。本例中我们在hr数据源下面建立月工资的内存表。
         如下所示,右键点击hr数据源,选择“添加计算表格”:


规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         然后将内存表的显示名称改为“月工资内存表”,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         点击确定后,系统会在hr数据源下面建立一个月工资内存表。下面我们需要定义月工资内存表的列信息。这些列信息,可以从月工资表的字段复制过来。在本例中,我们只需要初始化员工编号、年、月、基本工资,奖金和惩罚我们都设置为0,当月工资为基本工资,所得税和税后工资暂时都设为0,表示还没有进行计算。
         首先到月工资表的也工资表结构,选中所有的表的字段,然后右键选择复制:


规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         然后点击月工资内存表,在其编辑窗口,右键选择“粘贴”:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         粘贴后,会在内存表中,设定完和月工资表一致的列信息。我们选中所有的列,并且在前面打上勾,这样会将所有的列设成是可以选中的:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


3.定义变量

         初始化月工资表,需要输入设置的月的年份和月份。我们分别定义变量sayear,samonth两个变量在对象库的传入数据中:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         我们在本例的业务逻辑处理时,需要根据年份和月份取得该月的最后一天,因此我们需要定义一个临时变量,这个临时变量存储该月最后一天。


规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         另外我们再定义一个外部方法规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类 ,这个方法用于根据年份和月份,取得该月的最后一天。此方法在com.flagleader.util.DateUtil中的getCurMonthLastDay方法定义:点击对象库的外部调用中的添加按钮,弹出类名的输入框:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         然后在类名的输入框中输入com.flagleader.util.DateUtil,点击回车后,出现类的静态方法规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类的选择窗体,在此选择窗体中,选择getCurMonthLastDay方法:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         点击确定后,在外部调用里面就会增加一个方法,我们将其显示名称修改为“取{arg1}年 {arg2}月的最后一天”,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


4.定义规则

         定义完了对象库之后,我们来定义操作这些数据的逻辑。首先我们根据传入的年份和月份,然后取得入职日期在该月最后一天之前的那些员工的基本工资,然后这些员工信息添加到月工资内存表中。在将内存表中员工的其他信息进行初始化。最后将这些员工信息,存入数据库表中。

(1)有效月份判断规则集

         首先定义一个校验是否输入有限的年份和月份的规则集:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


(2)读取员工信息规则

         我们在规则集下面建立一个规则,名为读取员工信息,我们先设置该月最后一天,赋值给临时变量:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         设置完之后,我们根据该月最后一天执行取员工的基本工资的sql查询语句:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         我们在将查询后的数据,导入到月工资内存表中:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         添加了将查询结果“请点击选择”中的数据根据设定的列对应关系全部导入到表格(月工资内存表)中的方法后,我们点击“请点击选择”,然后再输入框中,选择“入职日期之前的员工基本信息”查询作为来源列表数据,列的对应关系,如下所示进行设置:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         点击确定后,就设置了将查询的结果集数据导入到内存表中的操作。
(3)初始化月工资数据规则

         接下来我们需要初始化月工资数据,我们要把月工资内存表中的奖金设为0,惩罚设为0,月工资设为已经分配的基本工资,所得税扣款设为0,税后工资设为0。
         先添加一个规则,命名为初始化月工资。然后通过其属性窗口,将其中的遍历表格属性打上勾,选择表格属性,选择“月工资内存表”。如下所示:



规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         设置完后,我们再设置具体的逻辑,我们设置多个赋值语句,被赋值的为月工资内存表的列,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         最后我们将内存表的数据写入数据库,我们建立一个名为“写入数据库”的规则。将其遍历表格属性打上勾,选择表格属性,选择“月工资内存表”。
         我们通过向导设置表的赋值语句,并且赋值语句的值的来源,选自月工资内存表,如下,我们先选择右键点击“写入数据库”规则,选择“对表字段赋值向导”:


规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         然后我们选择“月工资表”下面所有的字段,并且将包含插入操作和包含更新操作打上勾,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         点击确定后,会自动添加插入表语句,由于月工资内存表的所属年和所属月字段和输入的年和月一致,因此缺省选择的根据变量赋值给表字段的操作,不用做修改。如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


5.定义页面

         业务逻辑定义完毕后,我们需要定义调用页面。这个页面通过在维护月工资数据时发起,因此我们将其设置为判断处理页面,并且设置成无错就直接返回到table.jsp页面。

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         init.jsp页面不能单独显示,在table.jsp通过提交调用。

三、月工资维护规则包

         我们需要通过输入年月来查询该月的月工资数据,可以通过初始化月工资数据,可以看到该月所有员工的月工资数据,并且进行修改维护。可以对这些维护的数据,自动计算所得税和税后工资,可以将修改的数据保存到数据库中。
         我们在员工月工资规则组下面,新建一个名为“月工资维护”的规则包,将其外部调用名定义为 wage.salary.table。


1.定义数据源

         我们在对象库下面新建一个hr数据源,并且在hr数据源下面建立一个查询,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         这是根据所属年和月,查询该月的工资表数据。

2.定义内存表

         由于我们需要以纵横表格的形式来显示数据,因此在纵轴上我们希望显示员工姓名,在横轴上我们希望显示月份。这样我们在取得的数据中,需要包含一列信息是月份信息的。因此我们定义一个内存表,增加一列信息,用于表示月份信息。
         我们在hr数据源下面,增加一个名为“员工月工资内存表”的计算表格,然后设置其信息如下所示:


规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         其中monthinfo为我们需要增加的月份信息,其他字段可以直接从sql查询中得到。

3.定义变量

         我们再定义需要的变量,本例中根据输入年和输入月,来查询得到月工资表,因此需要定义输入年和输入月两个变量。另外需要定义一个salarylist变量,用于从内存表中取值,另外我们还需要定义一个变量表示数据是查询页面提交上来的:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


4.定义规则

         具体的业务逻辑如下,首先是根据传入年和月查询该月工资表,将该工资表赋值给内存表,将其中的月信息描述成中文,最后将此数据返回给salarylist变量传到页面。

(1)提交查询规则集

         我们定义一个规则集,其进入条件是提交不为空,并且输入年和月信息合法:


规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


(2)读取表数据规则

         我们在规则集下面新建一个“读取表数据”的规则,规则逻辑为先根据输入年和月执行sql语句,再将sql查询的结果集赋值给内存表。

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         其中列对应关系为:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


(3)更新月描述信息规则

         我们在规则集下面,建立一个“更新月描述信息”规则,将此规则属性的遍历表格属性打上勾,选择表格属性,选择“员工月工资内存表”。
         然后我们在具体的逻辑中,增加一条赋值语句,被赋值为内存表的月份信息。我们需要将月份信息设置为 输入年+“年”+输入月+“月”这种形式。由于输入年和输入月为数值型,而月份信息的类型为字符串型。因此需要先设置,可以将数值型设置为字符串型。
         定义的赋值语句如下:


规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         然后我们点击工程菜单中的设置,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         然后我们将编辑选项中的“自动转换其他类型为字符串”打上勾,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         这样我们就可以在赋值语句中选择到输入年和输入月:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         设置完成后,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


(4)取内存表数据规则

         最后我们定义一个取内存表数据的规则,将内存表的数据赋值给salarylist变量,赋值语句如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         属性栏设置为:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类



规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


5.定义table.jsp页面

         我们用xy纵横表格来显示月工资表,首先我们在规则包下面新建一个jsp页面,然后设置该jsp页面的模板文件为“纵横表格显示”,显示导航属性为“显示并包含返回按钮”,检索条件为“不显示”,快速检索为“不显示”,提交页面为table.jsp,保存页面为“save.jsp”,查询页面为“select.jsp”:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         然后我们设置页面的字段信息,我们将输入年的录入方式设置为“隐含字段”,将输入月的录入方式设置为“隐含字段”,将月工资表的输出方式设置为“纵横表格”,将提交的录入方式设置为“不设置”,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         接下来,我们为月工资表的纵横表格,设置纵轴、横轴和中间值的信息。首先我们右键点击月工资表,在弹出的菜单中,选择“添加列字段向导”:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         然后弹出的选择窗体中,我们选择“员工月工资内存表”下面一些列作为显示,其中员工姓名在纵轴上显示,月份信息在横轴上显示。

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         这样会在月工资表的纵横表格下面,建立值信息,缺省情况下,这些值都被设置成中间值,我们需要做以下的修改:当月基本工资、当月奖金、惩罚扣除的录入方式设置为“文本输入框”,员工姓名的字段类型设置为“纵横显示”,月份信息的字段类型设置为“横轴显示”,然后调整“月份信息”,“员工姓名”位置:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         接下来我们设置字段的扩展属性,我们将月工资表纵横表格的扩展属性做如下的修改:exportExcel属性设置为true,表示可以直接可以生成Excel数据。valuetop属性设置为true,将值设成是横向排列。hiddencolamount属性设置为true,表示隐藏汇总的列信息。

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         在纵横表格的中间值中,当月工资是由当月基本工资+奖金+惩罚得到的。其中惩罚为负数。因此当月工资我们设成是公式。
         我们在当月工资字段的扩展属性中,将其formula属性设置为 @3+@4+@5:


规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         接下来,我们需要为页面增加一个“初始化”按钮,因此我们在jsp页面的页面元素窗体中,点击添加按钮,在弹出的输入框中输入如下:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         添加确定后,会增加一个页面元素,我们将其扩展属性做如下的设置:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         table.jsp我们设置完后,我们需要一个select.jsp来调用它。

6.设定select.jsp页面

         我们在规则包下面添加一个jsp页面,并且将其名称设置为wage/salary/select.jsp,另外我们将其模板文件设置为“录入提交页面”,另外我们将提交页面设置为“table.jsp”页面:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         我们设置页面的字段信息,由于select.jsp页面不处理salarylist,因此将此字段删除。我们要将年和月合并在一起显示,因此我们要通过扩展属性来进行设置。首先我们将sayear的录入方式设置为“文本输入框”,并且其显示名称设置为“请选择:”,另外我们将samonth的录入方式设置为“下拉式菜单选择框”,将其显示名称设置为空。我们将提交设置“提交按钮”,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         接下来我们设置sayear的扩展属性,我们将其width设置为40,将posfix设置为年,表示后缀显示为年,hasnext设置为samonth:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         我们在设置samonth的扩展属性,我们将其postfix的属性设置为“月”,并且我们添加多个“单个菜单项”,分别用于表示下拉选择1到12月,如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         定义完页面后保存,通过jsp web浏览器打开select.jsp,出现如下界面:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         点击提交后,出现2009年3月的月工资表,但是是空白的:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         点击初始化后,再查询,就出现如下界面:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         这样就初始设置了这些员工的基本工资等信息。

三、月工资表保存规则包

         在月工资表维护界面,当修改了基本工资、奖金、惩罚等数据后,点击保存。需要激活保存规则包。点击保存时,首先需要根据基本工资、奖金、惩罚计算月工资,然后根据月工资计算所得税,最后计算实发工资,最后把这些数据存到月工资表中。
         我们在员工月工资规则组下面建立“月工资表保存”规则包,并把其外部调用名设置为 wage.salary.save


1.设定数据源

         我们在规则包的对象库中建立hr数据源,并且导入hr_salary表。

2.设定内存表

         我们定义一个内存表和月工资维护的员工月工资内存表一致,因此我们直接从月工资维护规则包中复制过来。
         首先我们在月工资维护规则包中,右键点击员工月工资内存表,选择复制。


规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         然后我们在月工资表保存规则包中的hr数据源,右键点击,并选择“粘贴”:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


3.定义变量

         我们从月工资维护规则包的对象库中,直接复制sayear,samonth,salarylist三个变量。


规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         另外我们保存之后,需要根据所得税表格计算工资,因此我们定义一些临时变量来进行设置,可以直接从原先例子中计算所得税规则包中直接复制过来,这样就可以直接复制原先的规则来用。

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


4.定义规则

         我们的业务逻辑是当输入了有效的年月之后,我们首先将传入的salarylist重新导入到内存表中,然后逐条数据进行处理。在处理一条员工工资数据时,先将数据的值赋值给临时变量,然后通过计算所得税的那些规则来进行计算。最后将计算结果再赋值给内存表。最后将内存表的数据更新到数据库中。

(1)有效输入年月规则集

         我们定义有效输入年月规则集,进入条件如下:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


(2)导入工资数据规则

         接下来我们定义导入工资数据规则,执行内存表的以下方法:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


(3)逐条处理内存表记录规则

         我们将前面的例子中已经完成的计算所得税的规则包的“月工资大于零”的规则集整个复制过来,粘贴到“有效年月”的规则集下:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         粘贴后,我们将月工资大于零规则集的遍历表格属性打上勾,并且将选择表格设为“月工资内存表”。另外我们将进入条件设为空。

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


(4)修改计算应纳税所得额

         我们将计算应纳税所得额规则,做一下修改。添加上将内存表中的当月工资数据赋值给临时变量:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


(5)修改计算税后工资规则

         设置税率的决策表不做调整,我们在计算税后工资的规则中增加将临时变量的值,再赋值给内存表:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


(5)写入数据库规则

         最后我们在增加一个写入数据库的规则,将此内存表的数据更新到数据库中:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         以上完成了业务逻辑的设置。如下所示:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


5.定义页面

         最后我们设置保存页面,由于保存页面是一个没有界面的操作,是直接根据月工资维护页面的提交数据,然后更新数据库。最后直接再返回页面进行显示。因此我们将此页面设定为判断处理页面:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         这样保存好,在月工资维护页面,当修改了数据后,点击保存,计算所得税和税后工资。

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         再查询就可以看到修改奖金、惩罚扣除后的数据信息了:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         提交后就可以查看到具体的工资情况:

规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类


         上面这些例子讲述了利用VisualRules进行数据库开发的操作。
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 34 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 18.1 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 12.6 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 16.9 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 15.2 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 30.5 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 12.4 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 5 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 14 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 487 Bytes
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 9 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 1.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 44.4 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 6.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 30.4 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 32.3 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 4.4 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 15.7 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 21.9 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 12.3 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 8.5 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 15.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 23.4 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 14.3 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 6 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 21.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 39.3 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 7.2 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 3.9 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 4.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 27.1 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 11.6 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 4.1 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 15.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 4.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 3 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 64.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 11.4 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 21 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 8.7 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 8.6 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 14.4 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 29.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 22.1 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 26 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 23.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 7.7 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 9.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 8.5 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 10.4 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 18.5 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 24.2 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 12.2 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 5.5 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 23.2 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 16.8 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 8.5 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 5.5 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 14 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 17 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 19.5 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 19.7 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 10.9 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 28.7 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 27.2 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 35.9 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 10.2 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 5.9 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 29.3 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 16.4 KB
  • 规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
            
    
    博客分类: 规则引擎VRS javaweb规则引擎VRSjava类
  • 大小: 27.7 KB