1.查询
思路:获取文本框的值--》传给控件--》刷新控件
在MP中实现查询功能,只需使用3条规则:CreateUserVar、SetCtrlAttrBySpecialCtrlName、RefreshDataBrowseGrid。
CreateUserVar(通用规则):
创建用户自定义变量函数,供后续规则对自定义变量进行调用处理。(官方解析)
将多个查询条件封装在一个对象变量中,使得后续的SQL可以获取查询条件的值(本人理解)
参数设置如下图:
SetCtrlAttrBySpecialCtrlName(UI规则):
通过选择控件名设置控件的高度,边框,边距等属性值。(官方)
设置控件的属性值,即将第一规则获取到的查询条件传入控件。(本人)
RefreshDataBrowseGrid(UI规则):
用于刷新指定数据浏览控件的数据源。(官方)
刷新控件,使得控件根据查询条件显示数据(本人)2.新增、修改
新增和修改功能的实现除了管理页面还需要一个编辑页面,二者共享一个编辑页面。
2.1新增(管理页面)
两个规则:ShowBill(打开其他窗口)、RefreshDataBrowseGrid(刷新页面控件)
ShowBill只需设置三个参数:窗体ID(需要打开窗口的ID)、打开方式(弹出)、表单状态(新增,作用:使得编辑页面可以知道当前执行的是新增还是修改)
RefreshDataBrowseGrid控件的使用请参考查询的。
2.2修改(管理页面)
规则:GetDataBrowseRowData、AbortOperation、ShowBill、RefreshDataBrowseGrid
GetDataBrowseRowData(UI规则):
获取数据浏览控件指定行数据。(官方)
确定需要修改的数据。(本人)
PS:返回记录集变量在后面的中断规则中用到。
AbortOperation:
在需要中断规则执行并给用户提示信息的情况下,需要反馈给用户的提示信息并中断规则的执行,使规则不往下执行。(官方)
中断规则执行(本人)
规则设置,如下图:
if(fx$.isnull([var$.dt.TERMINAL_FLASH_BOARD])||[var$.dt.TERMINAL_FLASH_BOARD]=='')
判断是否执行该规则,如下图:
2.3保存(编辑页面)
六个规则:Validate(验证)、AbortOperation(中断)、ExecuteSQL(2个)、ShowMsgBox(提出框)、CloseForm(关闭窗口)。
思路:首先根据自己的需求验证是否符合--不符合----》中断
--符合-------》根据当前操作来判断是实现新增的SQL语句还是修改的SQL语句--》弹出框提示执行结果----成功--》关闭窗口。
3.删除
思路:提示用户是否删除--》获取需要删除的数据--》执行SQL删除数据--》刷新。
4个规则:showMsgBox、GetDataBrowseRowData、ExceuteSQL、RefreshDataBrowseGrid。