简单记录一下金蝶动态表单插件

动态表单模型是通过插件代理实现业务逻辑,对外部的接口主要是插件,这些接口可以提供给二次开发使用。 命名空间Kingdee.BOS.Core.DynamicForm.PlugIn 主要类及说明:

[tr][td=3%][td=44%]Class[td=51%]Description

[tr][td=3%][td=44%]AbstractDynamicFormDataBinder[td=51%]动态表单数据绑定器抽象类

[tr][td=3%][td=44%]AbstractDynamicFormPlugIn[td=51%]动态表单插件抽象基类

[tr][td=3%][td=44%]AbstractDynamicWebFormBuilderPlugIn[td=51%]动态表单页面元数据构建插件

[tr][td=3%][td=44%]AbstractOperationServicePlugIn[td=51%]操作服务插件抽象类

主要接口:

[tr][td=3%][td=36%]Interface[td=59%]Description

[tr][td=3%][td=36%]IDynamicFormModelPlugIn[td=59%]动态表单Model层插件控制接口;实现本接口的插件,可以接收Model层的事件

[tr][td=3%][td=36%]IDynamicFormViewPlugIn[td=59%]动态表单View层插件接口;实现本接口的插件可以接收动态表单View层事件

继承体系动态表单插件分4类,单据、基础资料、动态表单和列表。

[tr][td=92]业务模型[td=123]类(插件、服务)[td=365]继承自抽象类

[tr][td=1,3,92]表单插件[td=123]单据插件[td=365]Kingdee.BOS.Core.Bill.PlugIn.AbstractBillPlugIn

[tr][td=123]基础资料插件[td=365]Kingdee.BOS.Core.Base.PlugIn.AbstractBasePlugIn

[tr][td=123]动态表单插件[td=365]Kingdee.BOS.Core.DynamicForm.PlugIn.AbstractDynamicFormPlugIn

[tr][td=92]列表插件[td=123]列表插件[td=365]Kingdee.BOS.Core.List.PlugIn.AbstractListPlugIn

接口视图访问接口接口名:IdynamicFormViewPlugIn动态表单View层插件接口;实现本接口的插件可以接收动态表单View层事件。

[tr][td=18][td=195]Name[td=311]Description

[tr][td=18][td=195]AfterBarItemClick[td=311]菜单单击事件完成后处理扩展接口

[tr][td=18][td=195]AfterBindData[td=311]绑定数据后事件处理后扩展接口

[tr][td=18][td=195]AfterButtonClick[td=311]按钮单击之后调用

[tr][td=18][td=195]AfterCopyRow[td=311]分录行拷贝后调用

[tr][td=18][td=195]AfterDoOperation[td=311]操作完成后调用

[tr][td=18][td=195]AfterEntryBarItemClick[td=311]分录菜单单击事件处理扩展接口

[tr][td=18][td=195]AfterF7Select[td=311]基础资料选择返回后调用

[tr][td=18][td=195]AfterToolBarItemClick[td=311]工具栏单击事件处理扩展接口

[tr][td=18][td=195]BarItemClick[td=311]主菜单单击事件处理扩展接口

[tr][td=18][td=195]BeforeBindData[td=311]绑定数据前事件处理后扩展接口,主要用于加载数据到界面前对控件状态进行设置

[tr][td=18][td=195]BeforeClosed[td=311]页面准备关闭

[tr][td=18][td=195]BeforeDoOperation[td=311]操作开始前调用

[tr][td=18][td=195]BeforeF7Select[td=311]基础资料界面调出之前抛出

[tr][td=18][td=195]ButtonClick[td=311]按钮单击时调用

[tr][td=18][td=195]EntityRowClick[td=311]分录行单击事件

[tr][td=18][td=195]EntityRowDoubleClick[td=311]分录行双击事件

[tr][td=18][td=195]EntryBarItemClick[td=311]分录菜单单击事件处理扩展接口

[tr][td=18][td=195]EntryButtonCellClick[td=311]表格按钮单击时调用

[tr][td=18][td=195]FieldLabelClick[td=311]字段标题单击事件

[tr][td=18][td=195]FireEntryCheck[td=311]单据体列全选事件

[tr][td=18][td=195]ListViewClick[td=311]列表控件单击事件

[tr][td=18][td=195]OnInitialize[td=311]页面初始化

[tr][td=18][td=195]TabItemSelectedChange[td=311]页签控件的页签选中事件

[tr][td=18][td=195]ToolBarItemClick[td=311]工具栏单击事件处理扩展接口

[tr][td=18][td=195]TreeDragDrop[td=311]KDTree 拖拽事件

[tr][td=18][td=195]TreeNodeClick[td=311]TreeView 节点单击之后调用

[tr][td=18][td=195]TreeNodeDoubleClick[td=311]TreeView 节点双击之后调用

模型访问接口接口名:IdynamicFormModelPlugIn动态表单Model层插件控制接口;实现本接口的插件,可以接收Model层的事件。主要包括:

[tr][td=18][td=196]Name[td=322]Description

[tr][td=18][td=196]AfterCopyRow[td=322]分录行拷贝后扩展接口

[tr][td=18][td=196]AfterCreateNewData[td=322]业务对象创建后的扩展接口

[tr][td=18][td=196]AfterCreateNewEntryRow[td=322]新增、插入、多行输入后调用

[tr][td=18][td=196]AfterDeleteEntry[td=322]清空分录数据完成时调用

[tr][td=18][td=196]AfterDeleteRow[td=322]成功删除分录行后扩展接口调用

[tr][td=18][td=196]BeforeDeleteEntry[td=322]清空分录数据前调用,可以由插件模型决定是否Cancel本次行为

[tr][td=18][td=196]BeforeDeleteRow[td=322]删除分录行前调用

[tr][td=18][td=196]BeforeSetItemValueByNumber[td=322]在根据编码检索数据之前调用; 通过重载本事件,可以设置必要的过滤条件,以限定检索范围;

[tr][td=18][td=196]BeforeUpdateValue[td=322]值改变更新前的扩展接口

[tr][td=18][td=196]CreateNewData[td=322]创建新业务对象扩展接口,插件可以更加需要自己创建对象

[tr][td=18][td=196]DataChanged[td=322]字段值改变后扩展接口

[tr][td=18][td=196]GetTreeViewData[td=322]请求取树形控件数据

加载机制动态表单元模型包括外观模型和表单逻辑模型,第一次访问时会先加载元数据,初始化视图和模型对象,初始化页面,然后创建数据包并绑定数据。对于二次开发提供了一系列插件允许二次开发在加载表单时对视图、模型、数据包及界面进行控制,插件在加载过程中的执行顺序如下:

PreOpenForm 动态表单打开前事件

OnInitializeService服务初始化

OnSetBusinessInfo 处理逻辑元数据

OnSetLayoutInfo处理外观元数据

OnCreateDataBinder创建数据绑定器事件

OnInitialize 页面初始化

CreateNewData动态表单数据包创建

AfterCreateNewEntryRow 创建分录行后

AfterCreateNewData动态表单数据包创建后

AfterCreateModelData模型数据包创建完毕

OnLoad页面加载

BeforeBindData 绑定数据前事件

AfterBindData绑定数据及控件状态

BeforeClosed 页面关闭前

对于大多数二次开发来说并不需要掌握所有接口。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值