K3+Cloud+BOS单据转换插件开发
- 格式:ppt
- 大小:1.17 MB
- 文档页数:18


kk .. ..
oooo...............................................................................................................................................................................................
1 / 13xx .. ..
xxkk...............................................................................................................................................................................................
金蝶 K/3 BOS V10.1插件
开发指导手册
金蝶软件(中国)有限公司
2004.9 kk .. ..
oooo...............................................................................................................................................................................................
K3+Cloud+BOS开发培训 - 插件开发2-代码
表单插件
OnBillInitialize初始化事件
BillInitializeEventArgs 示例:
public override void OnBillInitialize(BillInitializeEventArgs e) {
base.OnBillInitialize(e);
firstLoad = this.View.OpenParameter.Status != OperationStatus.ADDNEW;
}
AfterBindData绑定数据后事件
示例:
public override void AfterBindData(EventArgs e) {
base.AfterBindData(e);
DynamicObject dy = this.View.Model.GetValue(\ if (dy != null
&& !string.IsNullOrWhiteSpace(dy[\ {
DynamicObject org = dy[\
if (org != null && !string.IsNullOrWhiteSpace(org[\ {
this.View.Model.SetValue(\ } }
}
BeforeClosed绑定数据后事件
BeforeClosedEventArgs 示例:
public override void BeforeClosed(BeforeClosedEventArgs e) {
ReturnData();
base.BeforeClosed(e);
架构模型
动态表单领域模型
插件开发步骤
定义插件类(参照继承体系);
分析业务定义重载方法;
引用相关组件(参照组件引用规则);
重载方法编码;
设置编译路径,编译组件; 打开IDE设计器,配置插件;
动态表单视图
接口
IDynamicFormView
IDynamicFormViewService
2个重要的属性
BusinessInfo
LayoutInfo
界面元素访问
1、访问菜单
this.View.GetMainBarItem
this.View.GetBarItem
2、访问表单控件
this.View.GetControl
this.View.GetView
3、访问字段
this.View.GetFieldEditor
this.View.LockField
this.View.SetFormTitle
4、执行操作
ShowForm
UpdateView
InvokeFieldUpdateService
动态表单模型
接口
IDynamicFormModel
IDynamicFormModelService
属性
BusinessInfo
DataObject
数据操作
CreateNewData
CreateNewEntryRow
InsertEntryRow
GetEntryCurrentRowIndex
LoadReferenceData
GetValue GetEntityDataObject
动态表单插件
命名空间:Kingdee.BOS.Core.DynamicForm.PlugIn
抽 象 类:AbstractDynamicFormPlugIn
业务模型 类(插件) 继承自抽象类
表单插件 单据插件 Kingdee.BOS.Core.
Bill.PlugIn.AbstractBillPlugIn
基础资料插件 Kingdee.BOS.Core.
Base.PlugIn.AbstractBasePlugIn
10.插件开发
在过去,由于追求大规模集约生产技术、标准化的理念和操作的高效率,使得很多应用产品都趋于标准化。随着信息技术快速发展,越来越多的企业把对人的关注、人的个性释放及人的个性需求的满足推到空前中心的地位,企业与市场逐步建立一种新型关系,建立消费者个人数据库和信息档案,与消费者建立更为个人化的联系,及时地了解市场动向和顾客需求,向顾客提供一种个人化的销售和服务,顾客根据自己需求提出商品性能要求,企业尽可能按顾客要求进行生产,迎合消费者个别需求和品味,并应用信息,采用灵活战略适时地加以调整,以生产者与消费者之间的协调合作来提高竞争力,以多品种、中小批量混合生产取代过去的大批量生产。这有利于节省中间环节,降低销售成本。
K/3Cloud BOS平台提供动态扩展功能,通过动态领域模型建模将业务成各种标准接口和标准服务,通过插件开发完成标准业务扩展,快速高效实现个性化和非标准化业务。
K/3Cloud BOS平台的插件是一种专门为某一软件设计、用于功能扩充的程序。通过它可以:
实现更灵活的控制方式和客户化定制;
实现标准产品中特殊的业务流程处理;
进行个性化的菜单、外观定制;增加自定义的菜单并响应其操作;
对已有操作和服务未支持的功能进行扩展;
快速开发、快速实施、快速应用;
可配置,可测试,快速部署。
介绍插件开发前再回顾一下BOS架构模型:
(图 10 – 1 架构模型) 动态表单模型封装了表单标准服务、操作和扩展服务,通过引擎和标准插件调用来组装业务。标准插件可被业务插件继承和替代,实现客户个性化需求。根据应用,BOS平台提供了4类插件:
1. 动态表单插件
业务逻辑封装的插件,用于单据上业务各种事件、操作和服务的介入;
提供了一系列事件、操作和服务接口;
此类插件最常用。
2. 服务插件
基于动态表单服务端的插件,提供服务编程接口;
此类接口在外部服务直接调用。
3. 校验规则插件