- 浏览: 56037 次
-
文章分类
最新评论
-
蒙奇君杰:
煎蛋就是幸福 写道我想说,lz你英语水平真不咋的,错误信息提示 ...
tomcat在Debug模式下无法启动解决办法 -
煎蛋就是幸福:
我想说,lz你英语水平真不咋的,错误信息提示的是在45秒内启动 ...
tomcat在Debug模式下无法启动解决办法
VisualRules实例二(上)
一、准备数据库
我们以Mysql作为数据库,在Mysql中建立一个hr数据库,并且建立三张表。一张是部门信息表,一张是员工信息表,一张是月工资表。
我们通过Mysql自带的建表工具Mysql Administrator来建立以下三张表:

部门表用于对用户进行分类,以便于树状菜单分类展示用户的效果。

员工信息中记录了该用户的基本工资,这个基本工资可能会随着工龄的增加有所调整。

每月工资计算时,首先会从用户信息中取出当前的基本工资,然后输入该员工当月的奖金以及罚款。计算得到当月工资、所得税扣除以及实发工资。
二、配置数据源
建好表之后,需要为规则库配置该数据源,这样规则里面就可以直接调用该数据库,操作其中的表,或者执行该数据库支持的sql语句。
打开VisualRules安装时自带的数据库配置器


数据库配置器,是一个数据库结构的管理器。其可以将已经在数据库创建的表导入到此管理器中。配置表的各个字段信息,以及相关的外键关联信息。通过此数据库配置器,可以生成规则库所需要的数据源,以及直接将配置好的表结构信息导入到规则包的对象库中。
三、新建数据源
点击上图中文件菜单中的新建菜单,选择从MySql数据库导入。(如果数据库是其他的,可以选择从其他数据库导入)。

弹出新建数据源的输入窗体,在以下的窗体中,输入数据源名称以及数据库名称,用户名和密码,如下所示:

由于我们在mysql数据库中建立了hr数据库,因此数据源名称我们定义为hr,数据库名称也定义为hr。点击确定后,会显示已经在数据库中建立的表,可以选择其中规则库需要用到的表进行定义。

导入后,会从数据库中将表的信息取出来。如下所示:

上图中左侧部分为表名,其中表按照其名称进行了分类。由于hr_department, hr_employee, hr_salary三个表,都以 hr_作为开头,因此系统会将这个三个表放到hr目录下。系统是以表名中的“_”来进行区分表的。
四、配置表结构信息
导入了表之后,就可以设置表的结构信息。依次设置三张表的中文描述。首先设置表的中文描述。
右键点击上图左侧的表名,选择弹出菜单中的属性菜单。如下所示:

弹出之后,可以在表的属性窗口中,输入表的中文描述信息,如下所示:

并且如下图所示,在后侧表的字段信息窗体中,将字段的显示名设置成中文描述:

按上述方法设置员工信息表,如下所示:

再设置月工资表,如下所示:

五、设置表之间的关系
设置完表的信息之后,我可以设置表之间的关系。表之间的关系采用外键关联的方式来进行设置。本工具设置的外键关联关系,可以直接通过数据库表已经设置的外键关联关系取得,也可以单独进行设置,作为对数据库表的一个补充。
这些外键关系,会在自动生成联合查询的sql语句时,有用处。
点击工具栏上的


我们在新建一个月工资表中的empid和员工表中的empid进行外键关联。

六、导出数据源配置
设置好了数据库的信息之后,就可以将他保存到文件系统中,在下面的例子中,我们将这个数据库结构信息文件保存到桌面上。
点击工具栏中的


保存后,可以为规则包执行环境生成一个数据源配置。
在数据库配置器左侧的编辑框中,右键点击数据库名,如下所示:

选择生成数据库连接配置文件,点击后,将此文件生成在规则包执行环境的classpath路径中,一般是 tomcat\webapps\ROOT\WEB-INF \classes目录下:

这样会在该classes目录下生成一个hr.conf文件。同理,如果规则包应用的工程,在别的路径中,就将此文件复制到该工程的classes目录下。
七、员工信息管理
我们已经建立了员工信息管理所需要的表hr_employee,下面我们举例建立这个表的维护程序。基本上这是一个单表的维护程序,因此主要包括员工信息列表页面、新增员工信息页面、修改员工信息页面、删除功能。
1.员工信息规则组
首先我们在原先工资管理规则工程的基础上,建立一个员工信息的规则组,如下所示:

在工资管理的规则工程上,点击鼠标右键,在弹出的菜单中,选择新建规则组,并将规则组的名称变更为员工信息:

2.员工信息列表规则包
以下我们在员工信息工程下面,建立一个员工信息列表规则包。这个规则包,包含了列表形式展示员工信息的页面和逻辑。
展现的逻辑,就是将员工信息表的内容,用select语句从数据库中查询出来。页面就是提供一个table形式的页面,并且提供翻页功能。
(1)新建规则包
右键点击员工信息的规则组,选择新建规则包菜单。

输入规则包的名称为员工信息列表。

(2)配置数据源
创建好规则包之后,我们需要配置从表hr_employee中读取数据的数据源。这个数据源已经在数据库配置工具中得到了定义,因此只要导入就行。
右键点击“员工信息列表”规则包所属的对象库,选择从dbs文件中导入表。

然后选择数据库配置器保存在桌面上的hr.dbs文件,打开:

然后选择该规则包需要的表hr_employee,hr_department,如下所示:

点击确定后,对象库中就自动加入hr数据库源,并且在该数据库源下面加入了员工信息表。并且自动添加对该表操作的方法,以及该表的字段信息、相关外键信息以及数据查询等操作。如下所示:

导入了员工信息表之后,就可以对这个表进行操作,包括查询所有数据。不过这个信息列表中,我们希望可以取出该部门下的所有员工信息。因此需要根据sql语句来作为列表的数据源。以下建立一个sql查询,先右键点击已经导入的hr数据源,然后选择根据向导生成查询语句,如下所示:

然后选择已经存储在目录中的hr.dbs文件,作为导入的源。

接下来选择关联查询对应的表,在以下的操作界面中,选择hr_employee:

接下来,选择需要查询出来的字段,我们需要显示员工信息表所有的字段,以及该员工所在的部门信息。
在以下的输入框中,选择员工信息表所有字段如下所示:

选择完显示字段后,需要选择条件字段。在本例子中,我们查看所有员工,不根据条件来进行选择。如下所示,我们直接点击完成:

确定后,会显示一个添加sql查询的录入界面,此界面已经生成了关联查询sql,注意检查这个语句的正确性。另外我们将此sql查询命名为所有员工信息,如下所示:

点击确定后,在hr数据源下面,就会建立一个所有员工信息的查询。对这个查询结果的字段和方法,已经得到了定义。

导入后我们需用到部门表中已定义好的方法,在selectAll,getListResult方法前面打勾,我们就可以在规则中直接调用该方法了:

最后,我们要定义有部门编号传入时,我们就需要显示该部门下的的所有员工信息的数据源。选择“根据向导生成查询语句”,选择员工表:




我们可以看到数据库中的对象有:

(3)定义表格类型的变量
定义完所有员工信息的sql查询,我们在对象库中定义一个变量,来存储取所有员工信息的数据。
如下所示,我们在对象库中定义名为emplist的变量名称,并将其类型定义为list<list>,其中文描述我们定义为员工信息;定义一个deplist对象,类型为list<list>,表示部门信息;再定义id变量,这个id是我们从树状部门结构中传过来的,表示当前部门编号,用于显示该部门下的所有员工信息:

(4)定义查询规则
定义完变量和数据源之后,我们定义将数据源的数据分配给变量的规则。
首先,我们在规则属性窗口的初始化打勾:

然后在规则中定义逻辑,如下:

此操作是用来显示该员工所输部门名称。
其次,我们在读取员工列表时需要判断是否有传入部门编号(id),如果有我们就显示该部门下所有的员工信息;如果没有,则我们就显示所有员工信息。
首先,我们定义逻辑,判断部门编号是否大于零:


如果大于零,则我们根据传入的部门编号查询高部门下的所有员工信息:

然后我们要添加部门号不是大于零(等于零)情况,我们在属性面板添加否则动作:

没有传入部门编号,我们则显示该部门下的所有员工信息,其逻辑如下:

(5)定义列表显示页面
定义完后端的业务逻辑以及数据源之后,就需要再定义前端的显示页面。我们用列表页面来显示所有员工信息。
如下,我们右键点击“员工信息列表”规则包,然后选择“添加jsp页面”。

这样就会在规则包下面新建一个名为wage/employee/list.jsp的jsp页面。点击这个页面,在其属性窗口,将其模板类型修改为 “分类浏览页面”,如下所示:

如下所示,在其属性设置其他的属性,将权限控制设置为“session级控制”,将显示导航设置为“显示”,将检索条件设置为“显示”,将显示分页设置为“底部显示”,将增加页面设置为“add.jsp”,将编辑页面设置为“edit.jsp”,将删除页面设置为“del.jsp”,将提交页面设置为“list.jsp”。

接下来在该页面的编辑窗口,点击编辑窗口中已经存在的名为emplist的字段,注意其输出方式已经设置为列表显示。右键点击该字段,在弹出的菜单中,选择“添加列字段向导”,如下所示:

接下来需要选择列表显示时需要显示的列,由于emplist是从所有员工信息的查询中取得的,因此可以根据查询的结果集的字段描述中,取得对应的列表需要的列的名称,在以下的选择框中,选择所有员工信息,下面的员工姓名、员工性别、手机号、生日、加入公司日期、职位、基本工资、部门名称。这些列来进行显示,如下所示:

点击确定后,该页面中emplist列表下面就会自动增加上这些列的说明。下面就要对这些列的显示进行设置。首先将生日和加入公司日期列的类型设置为date型,如下所示:

由于显示员工性别时,数据的类型是int型,是0、1在表示男女,因此,需要在页面上做一下转化。将员工性别的录入方式类型设置为“下拉式菜单选择框”,如下所示:

然后双击员工性别的右边的扩展属性位置,设置员工性别列的扩展属性。在弹出的扩展属性窗口中,添加添加按钮,然后在弹出的输入框中,选择“单个菜单项”,然后设置属性值为0,属性名为o_男,如下所示:

同理在增加一个属性值为1,属性名为o_女,添加完后,在扩展属性框中会如下所示:

然后我们把所属部门的录入字段也设置为“下拉式菜单选择框”如:

再设置其拓展属性,将p_options属性设置为deplist,如图所示:

最后设置id(部门号),deplist(部门列表)录入方式为不设置,然后把他移至最上面:

这样我们就完成了页面的设置,可以选择保存。系统会自动在指定的服务器路径中添加该jsp页面,以及对应的规则包编译文件。
保存后我们点击jsp web浏览器按钮


由于还没有添加数据,因此列表记录是0.以下,我们在分别制作增加、修改和删除页面。
3.增加员工信息规则包
在员工信息规则组下面,新建一个“增加员工信息”规则包,将该规则包的外部调用名设置为“wage.employee.add”。
(1)添加数据源
然后在该规则包的对象库中增加hr数据源以及增加一个hr_employee表。可以采用和上面同理的方法操作,从dbs文件中导入员工信息表:

我们还需要在hr数据源中,定义一个部门信息的sql查询,作为该员工所在的部门信息的源,在hr数据源中,选择根据向导生成sql查询,然后选择hr_department表,以及depid、depname作为选择字段。最后生成sql语句如下所示:

根据需要将显示名称修改为所有部门信息,点击确定后,就会增加一个可选部门的sql查询。
(2)定义变量
设置完数据源之后,需要设置与页面交互的变量。也就是增加员工信息时,需要录入的字段。这些字段从页面接收之后,再录入到数据库中。在定义变量时,我们可以通过向导从表结构中将需要录入的字段信息读取出来,作为变量。如下,右键点击对象库,在弹出的下拉式菜单中,选择“根据表字段定义变量”,如下所示:

然后在弹出的窗口中,选择需要定义的表字段。在这个例子中,我们需要录入hr_employee表的各个字段,我们选择除了empid字段的其他所有字段。(empid是自动递增的,不需要录入)。如下所示:

点击确定后,在对象库中,就会自动增加这些字段作为变量,变量的名称和字段名一致。注意将生日和加入公司日期的类型修改为date类型,另外我们还需要定义一个tijiao字段,这个字段用于区分是否页面中按了提交按钮。我们还需要定义一个成功字段su,表示数据录入成功了,并且存储成功提示信息。而且由于部门是一个外键关联,因此我们还需要定义一个deplist字段,用于作为所属部门的可选择项。如下所示:

(3)定义规则
定义了变量以及数据源后,我们就可以定义变量和数据源交互的业务逻辑。在这个例子中,变量从页面接收到数据。我们先判断是否有数据提交上来,如果有,就将他添加到数据库表中,如果没有,就显示录入页面,并且提供可选部门给页面。
首先我们来定义提交的逻辑:我们新建一个规则集,命名为提交不为空,设置其编辑逻辑为只有公共条件:

进入条件设置为调教按钮不为空:

然后在该规则集下添加添加记录的规则,右键添加规则记录的规则,选择表字段赋值向导,因为我们是添加记录所有选择插入操作:

确认后如下添加记录规则逻辑如下:

我们还需添加成功字段的赋值逻辑:

然后我们需要定义部门信息的逻辑,新建个规则命名为部门信息(部门信息是用于显示所属部门下拉菜单框信息):

(4)定义页面
定义完业务逻辑之后,就可以定义页面。在规则包下面添加jsp页面,会自动添加一个名为wage/employee/add.jsp的jsp页面。在这个jsp页面的属性窗口中,将其模板文件设置为“录入提交页面”,如下所示:

另外在编辑窗口,将字段信息进行调整,首先将照片的字段放到第二个字段的位置,可以通过ALT+↑或者ALT+↓来移动位置。将员工性别的录入方式设置为“下拉式菜单选择框扩展属性中,增加两个属性,一个属性名为o_男,属性值为0;另一个属性名为o_女,属性值为1;并将其校验类型设置为“不校验”。将生日字段设置为“日期输入框”,注意其变量类型设置为date。将加入公司日期设置为“日期输入框”,其变量类型设置为date型。将所属部门设置为“下拉式菜单选择框”,并且在其扩展属性中,设置其p_options为deplist。设置tijiao字段的录入方式为“提交按钮”,并将其显示名称定义为“提交”。将成功提示字段的字段类型定义为成功字段。将部门信息段的录入方式和输出方式都定义成“不设置”,如下所示:

设定完字段的这些属性之后,还需要设置字段的长度和非空设置。我们可以通过向导从数据库的表结构中初始化具体的值。
右键点击jsp页面编辑窗口中的字段,在弹出的右键菜单中选择“更新字段长度向导”:

然后选择hr_employee表下面除了empid,pictrure外的所有字段来进行更新,如下所示:

设置完jsp页面的字段的属性后,我们还需要设置jsp页面的属性窗口。如下所示,我们对jsp页面的显示方式进行设置:

我们将显示导航属性设置为“显示并包含返回按钮”,将字符长度设置为“按字符数校验”,将数据提交区属性设置为“自定义”,将成功提示属性设置为“成功字段非空转到成功页面”,并将成功页面设置为“list.jsp”。
这样就定义完了新增员工信息页面。我们点击jsp web浏览器,打开该页面,看到如下界面:

4.修改员工信息规则包
(1)新建规则包
我们新建个规则包将将其命名为修改员工信息,外部调用名为wage.employee.edit:

(2)定义数据源、变量
首先我们需要将hr_employee,hr_department导入到对象库中。

我们需要定义一个empid的变量,这个变量用于定义员工编号。当第一次进入修改页面时会传递一个员工编号,然后根据这个编号查询数据库表取得员工信息,显示到页面供用户修改。修改完毕后,再提交到数据库表中。
在本系统框架中,修改页面是由list.jsp页面中的修改按钮触发而进入的,因此缺省情况下,系统会提交一个id的变量到这个页面。因此我们只需在对象库中定义一个id的变量,就可以从页面上到empid的值,再定义string类型的提交按钮tijiao,string类型的成功字段su,list<list>类型的部门信息deplist。

(3)定义规则
我们需要定义两个规则集一个是数据已提交,一个是数据未提交,一个是数据未提交。
在未提交规则集下设置规则如下:

在未提交数据的规则集下面添加一个“读取员工信息”的规则,将该规则的“初始化动作”以及“否则动作”的属性打上勾,并右键点击该规则,选择“对表字段取值向导”:

在接下来的选择窗体中,选择员工信息表的除empid外其他所有字段,并且将“包含查询操作”打上勾:

点击确定后,会在规则中设置好查询以及取值操作。将初始化中的设置员工信息表的员工编号字段的值为ID。

在数据提交规则集下添加设置数据的规则,我们需在提交规则集设置规则为:


在有提交数据时,我们需要先根据id找到那条记录,然后再对其进行修改。
我们将原先的添加记录的规则名称,修改为修改记录。然后将此规则属性中的初始化动作打上勾,再右键点击这个“修改记录”规则包,选择“对表字段赋值向导”,如下:

在规则属性初始化打勾。在接下来的操作界面中,我们选择员工信息表的empid字段,并且将“包含查询操作”以及“包含更新操作”打上勾,如下所示:

点击确定后,我们将初始化中,设置员工信息表的员工编号字段的值为ID。同理,那么中的请选择,也设置为ID。设置完后,我们同时删除,在那么中的“添加员工信息表当前记录”。同时将成功提示设置为等于"修改员工信息成功!"。

然后我们需要为所属部门添加部门名称,所以要为部门信息添加数据。
新建部门信息规则包。
由于我们需要在部门信息表添加两个方法,在前面打勾:

我们再定义规则:

(4)定义jsp页面
因此我们首先右键规则包,点击添加jsp页面,将字段属性修改为:

然后修改页面属性如下:

这样就定义完了修改员工信息页面。我们点击jsp web浏览器,打开该页面,看到如下界面:

这是由于我们没有传入员工能够编号进去的,所以没法显示数据。当我们从员工列表点击修改将会出现下面的页面:

5.删除员工信息规则包
在员工信息规则组下面,新建一个“删除员工信息”规则包,将该规则包的外部调用名设置为“wage.employee.del”。
(1)定义变量
由于删除页面是从list.jsp页面传递进来的,因此在进入删除页面之前,会传递一个包含了多个删除id的nID变量,这个nID用“,”将多个id隔开。由于这些定义我们和以前定义的删除操作雷同,因此可以导入原先原先定义的对象库。
我们在对象库中定义一个变量nID,其类型设置为string,并且在定义一个su的成功提示变量。

(2)添加数据源
我们将员工信息列表导入到对象库中:

我们再添加一个删除语句,批量删除的操作,如下,首先右键点击hr数据源,选择“添加SQL执行语句”:

然后将此SQL语句的显示名称命名为“批量删除员工信息”,并且将SQL语句设置为:delete from hr_employee where empid in ({string})。
其中{list}表示此位置传入string类型的变量值,如下所示:

点击确定后,在hr数据源下面就会有一个“批量删除员工信息”的SQL执行操作。
(3)定义规则
定义了变量以及数据源后,我们就可以定义删除记录的业务逻辑。在这个例子中,我们将传入的nID直接传递给批量删除员工信息的string。
我们在规则包下面添加一个“删除员工信息”的规则。
并且定义逻辑为如果需删除的编号不为空,则根据需删除编号执行批量删除员工信息的语句。如下:

(4)定义页面
定义完业务逻辑之后,就可以定义页面。在规则包下面添加jsp页面,会自动添加一个名为wage/employee/del.jsp的jsp页面。在这个jsp页面的属性窗口中,将其模板文件设置为“判断处理页面”,再将成功提示属性设置为“成功字段非空forward”,并且设置成功页面为list.jsp。如下所示:

我们在设置jsp的编辑窗口。设置su字段的字段类型为成功字段,如下所示:

这些信息设置完后,就完成了删除页面的设置,由于,删除页面不能单独执行,因此不能以单独的页面进行显示。以上我们设置了员工信息的增、删、改、查的操作。
对于“部门信息管理”和“ 员工月工资管理”与“员工信息管理”类似。如果感兴趣的话可以试着做一下。具体的操作在下一篇博客中进行详细的说明。
发表评论
-
规则引擎Visual Rules Solution开发基础教程【连载24】-- 使用VisualRules规则引擎实现业务逻辑
2016-04-29 09:33 916使用VisualRules规则引擎实现业务逻辑 ... -
规则引擎Visual Rules Solution开发基础教程【连载23】--规则协同管理之系统管理
2016-04-22 15:44 1011规则协同管理之系统管 ... -
规则引擎Visual Rules Solution开发基础教程【连载22】--规则协同管理之信息维护
2016-01-25 09:12 1027规则协同管理之信息维护 信息维护只有两个部分 ... -
规则引擎Visual Rules Solution开发基础教程【连载21】--规则协同管理之权限管理
2016-01-18 09:47 1334规则协同管理之权限管理 权限管理由三部分组成 ... -
规则引擎Visual Rules Solution开发基础教程【连载20】--规则协同管理之规则管理
2016-01-11 09:48 1486规则协同管理之规则管理 一、规则上传 我们 ... -
规则引擎Visual Rules Solution开发基础教程【连载19】--规则协同管理介绍
2016-01-07 09:20 678规则协同管理介绍 一、简介 在团队开发项目 ... -
规则引擎Visual Rules Solution开发基础教程【连载18】-- Linux环境 安装配置说明
2015-12-21 10:15 1278Linux环境 安装配置说明 一、安装配置测试环境及版本 ... -
规则引擎Visual Rules Solution开发基础教程【连载17】--VisualRules接口调用(六)
2015-12-16 11:28 1033VisualRules接口调用(六) ——Java类中含类 ... -
规则引擎Visual Rules Solution开发基础教程【连载16】--VisualRules接口调用(五)
2015-12-07 09:09 1397VisualRules接口调用(五) Java类中的List ... -
规则引擎Visual Rules Solution开发基础教程【连载15】--VisualRules接口调用(四)
2015-11-30 09:11 1058VisualRules接口调用(四) 一、Java类调用服务 ... -
规则引擎Visual Rules Solution开发基础教程【连载14】--VisualRules接口调用(三)
2015-11-23 09:23 990VisualRules接口调用(三 ... -
规则引擎Visual Rules Solution开发基础教程【连载13】--VisualRules接口调用(二)
2015-11-16 10:31 941VisualRules接口调用(二) 接上一篇,下面介绍一下 ... -
规则引擎Visual Rules Solution开发基础教程【连载12】--VisualRules接口调用(一)
2015-11-09 10:25 1798VisualRules接口调用(一 ... -
规则引擎Visual Rules Solution开发基础教程【连载11】--WebService 搭建及调用
2015-11-02 10:15 1324WebService 搭建及调用 webs ... -
规则引擎Visual Rules Solution开发基础教程【连载10】--VisualRules的组成及执行原理
2015-10-26 17:41 1188VisualRules的组成及执行原理 在 ... -
规则引擎Visual Rules Solution开发基础教程【连载9】--VisualRules实例二(下)
2015-10-19 10:46 893VisualRules实例二(下) 书接上 ... -
规则引擎Visual Rules Solution开发基础教程【连载8】--VisualRules实例二(中)
2015-10-12 10:11 1059VisualRules实例二(中) 上一篇 ... -
规则引擎Visual Rules Solution开发基础教程【连载6】--VisualRules实例一
2015-09-28 11:22 676VisualRules实例一 以下通过一个 ... -
规则引擎Visual Rules Solution开发基础教程【连载5】--VisualRules深入了解
2015-09-21 10:02 1753VisualRules深入了解 通过前两篇的 ... -
规则引擎Visual Rules Solution开发基础教程【连载4】--VRS相关调用篇
2015-09-14 10:10 1009VRS相关调用 一、Java类 ...
相关推荐
Visual Basic 6.0程序设计基础教程---李锦--大连理工大学出版社--2007.8.pdf
《Visual C++6.0实例教程》是一份专为初学者设计的教程,旨在通过具体的实例来教授如何在Microsoft Visual C++ 6.0(简称VC++6.0)环境中进行C++编程。Visual C++6.0是微软公司发布的一款强大的集成开发环境,它不仅...
综上所述,Visual Rules规则引擎是一款针对中国市场的专业解决方案,它将业务规则管理与优化相结合,提供便捷的规则编辑、高效的执行机制和全面的管理功能,旨在帮助企业快速适应市场变化,提升业务决策的准确性和...
在描述中提到的Visual Rules Solution旗正规则引擎中,决策池扮演了这样的角色。 1. **决策池功能介绍** 决策池的设计目标是提高规则的复用性和效率。在规则开发中,如果某些规则被频繁使用,将这些规则放入决策池...
Visual Basic 6.0程序设计教程---曾强聪--中国水利水电出版社--2003.7.pdf
《Visual FoxPro 9.0项目开发案例教程》是一本专为学习和掌握Visual FoxPro 9.0编程技术而设计的教材。该教程通过实际的项目案例,深入浅出地讲解了如何利用Visual FoxPro进行数据库应用系统开发。Visual FoxPro 9.0...
综上所述,基于VisualRules的电信业务支撑系统的开发是一项复杂而细致的工作,需要IT人员与业务分析人员紧密合作。通过合理的设计和实施,不仅能提升系统的灵活性和可扩展性,还能大幅提高电信运营商的业务处理效率...
《Visual C++游戏开发技术与实例》是一本专为游戏开发者和初学者设计的教程,旨在通过实践案例帮助读者深入理解和掌握使用Visual C++进行游戏开发的核心技能。Visual C++作为Microsoft开发的一款强大的编程环境,...
通过学习和实践《Visual Basic 数据库开发及工程实例》5-7中的内容,开发者能够具备使用Visual Basic进行数据库应用开发的能力,为后续更复杂的项目开发打下坚实的基础。无论是初学者还是有一定经验的开发者,都能从...
根据提供的文件信息,“AutoCAD VBA _ VB.NET开发基础与实例教程 第2版.pdf”,我们可以推断出这是一本关于如何使用Visual Basic for Applications (VBA) 和 Visual Basic .NET (VB.NET) 开发AutoCAD应用程序的专业...
Visual Basic程序开发完整实例教程
不过,我将根据标题、描述以及文件名中提及的“Visual C++数据库开发经典实例精解”这一主题,为您提供与该主题相关联的知识点。 Visual C++数据库开发是面向数据库编程的一个领域,主要侧重于使用Visual C++这一...
《Visual Basic 2005基础与实例教程》是一本专为初学者设计的编程教材,旨在帮助读者掌握Visual Basic 2005这一强大的编程工具。VB(Visual Basic)是微软公司推出的一种面向对象的事件驱动编程语言,是.NET框架的一...
《visual basic开发实例大全》超级详尽的实例大全,源码分析的案头手册,提高效率的绝好帮手! 36个方向,1200个实例案例,visual basic编程类四库全书,分门别类常用编程实例,一网打尽! 实例说明、技术要点、...
《Visual C++程序设计案例教程》是张荣梅教授编著的一本面向实践的编程教材,旨在帮助读者深入理解和掌握Visual C++编程技术。这本书涵盖了从基础到高级的各种主题,结合丰富的实例,使得学习者能够从实践中理解理论...
[Visual.C.权威剖析--MFC的原理、机制与开发实例].辛长安.王颜国.扫描版~~~~~好不好大家知道~ 下载完整后解压,谢谢~~
《Visual C++ 6.0 实例教程》是一本针对初学者和有一定基础的程序员设计的教程,旨在帮助读者深入理解和掌握Microsoft的Visual C++ 6.0开发环境。Visual C++是C++编程语言的强大集成开发环境(IDE),它不仅支持C++...
.NET开发基础与实例教程第二版随书光盘》是一部专为学习AUTOCAD编程的读者准备的教程资源。该教程涵盖了VBA(Visual Basic for Applications)和VB.NET(Visual Basic .NET)两种语言在AUTOCAD环境中的应用,旨在...
《Visual C++开发实例大全9-15章(基础卷)源代码》涵盖了C++编程在Windows环境下的多个重要领域,这些章节包含了丰富的实例和部分配套视频教程,旨在帮助开发者深入理解和掌握Visual C++的使用技巧。以下是这些章节...
尽管已经过去多年,Visual C++这个IDE依然不过时,熟练使用它最好的方式就是通过大量的实战,《Visual C++ 6.0开发实例大全_基础卷》从visual c++6.0和C++语法讲起,一步一步带你成为C++大神。