实际业务中我们除了对数据进行各种CURD操作之外,很多时候我们是需要手动调用后台的某个计算服务完成某种计算的。比如考勤计算,薪资计算等等。
这些计算都需要从前端传入各种计算参数到后台的计算服务,所以我们支持“远程服务调用对话框”功能,用于提供输入后台计算的参数。后台计算可以是自己实现的插件(《插件开发》),也可以是一个计算用的存储过程。
远程服务调用对话框最终都需要以“插件”的形式显示到某个页面的工具条中供用户调用,所以下面我们就以一个远程调用存储过程进行计算作为例子进行说明。
1、右键点击要增“远程服务调用对话框”的分类,点击弹出菜单项“增加服务调用对话框”,如下图:
2、在弹出窗口中输入“对话框名”和“对话框ID”,如下图:
3、指定对话框调用的服务类型,服务类型可以是SP(存储过程)和Service(自己开发的后台插件)
4、在新增加的对话框设计页面,我们可以增加各种输入框(和设计表单界面完全一致),只不过这些输入框的“参数名”比如和你后台计算用的存储过程或者插件所需要的参数名称一致,数据类型一致:
5、完成服务调用对话框设计后,怎么在需要调用的页面调用呢?需要用到插件。
假设我们有个“员工薪资报表”,我们需要在上面增加一个“薪资计算”的按钮,调用上面的“薪资计算”对话框实现薪资计算。双击打开“员工薪资报表”,点击报表窗口,然后“插件菜单”属性后面的按钮:
6、在“插件菜单编辑”的表格中,输入插件名称为“薪资计算”(这个根据你的需求来,自由命名),插件类型选择“服务调用”,然后点击右侧的“设置插件内容”列的按钮。
7、输入插件名称,选择“服务调用对话框ID”(如果你系统中有多个服务调用对话框,这里就有多个选项),然后点确定,如果需要图标,可以设置图标的class名称
8、发布后登录Web客户端,进入“员工薪资报表”后,如果你有此插件的权限,则可以看到插件按钮,点击后将会弹出我们所设计的服务调用对话框,可以进行后台存储过程或者服务调用;
9、如果你的“服务调用对话框”中有“多引用列表”控件,如下图,那么我们可以批量选择待计算的参数,此时如果数据量太大,必然导致后台计算超时,那么我们可以设置其参数“每次调用传几条记录”属性,使得分次调用后台: