您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > U8开发之UAP表单
UAP表单一、功能概述UAP表单为U8产品增加了自定义单据和档案的能力。并为单据和档案提供了全方位的功能支持,包括:增、删、改、查、打、审、格式设计。在实施过程中,可以为用户定制个性化的单据和档案。1、UAP表单据包括BS表单和CS表单。两者的区别只是在客户端的展现形式不同。CS表单适用于局域网,BS表单适用于局域网和互联网。2、使用UAP定义的单据,可以实现多子表、多布局视图。3、使用UAP定义的档案,支持复杂档案、列表档案、树型编辑档案(形如部门档案)、树形导航档案(形如人员档案)4、使用UAP定义的档案可以在U8单据格式设置中引用5、UAP提供了完善的插件机制,用于个性化开发。UAP表单允许开发人员进行扩展性和取代性的开发工作。二、核心特性1.支持树形结构的业务实体。2.支持业务模型的一个实体对应多个视图,一个视图只能对应一个业务实体。3.支持一个业务实体属性对应多个视图控件。4.丰富的客户端展现:多子表、分组、页签。5.表单和业务模型是一对一的关系。6.与门户集成。7.视图在表单上支持自由布局。8.业务逻辑层(M)、界面层(V)、业务逻辑和界面之间的控制层(C)互相分离。9.支持运行时多语。10.支持用户自定义控件。3、 集成的开发工具及案例1、开发工具概述a)用户通过开发工具实现单据的通用性定制,如单据名称,主子表名称,主子表列的名称、类型等属性,单据的格式设置等。b)集成开发环境中BS单据和CS单据的开发步骤和过程都是相同的。2、操作步骤1、UAP登录2、建立项目3、建立表单4、 建立实体关系5、 增加实体属性6、 设计单据布局7、 单据发布8、 在U8中显示表单四、二次开发接口说明4.1开发接口概述在集成开发环境中已经可以实现自定义单据和档案的增、删、改、查等通用操作,但更加个性化的操作和业务逻辑,就需要通过代码调用接口,可以在下面操作的接口中实现。4.1二次开发流程1)安装MicrosoftVisualStudio2)创建一个C#类库(.dll)项目3)为项目添加引用:UFIDA.U8.Framework.ErrorUFIDA.U8.UAP.UI.Runtime.ModelUFIDA.U8.UAP.UI.Runtime.Common4)添加一个类,并实现接口IReceiptpublicclassPurchaseOrder:IReceipt5)实现业务逻辑6)编译工程,得到一个dll7)在UAP设计时中注册dll。4.2BS单据接口说明///summary///在进入单元格编辑状态之前判断单元格是否可编辑////summary///paramname=para单元格信息/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param///returns是否可编辑,true:可编辑,false:不可编辑/returnsboolCellEditing(CellSelectEventArgspara,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///值更新之前的接口,对值的合法性检查在这里进行///paramname=paraCell的值变动参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param///return是否允许更新单元格的值,false--不允许更新,将保持原值/return////summaryboolCellChanging(CellChangeEventArgspara,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///值更新之后的接口,对值的后续处理(如对其他Cell值的变更)在这里进行///paramname=paraCell的值变动参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param////summaryvoidCellChanged(CellChangeEventArgspara,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///增加行之前的接口,对行的合法性检查在这里进行///paramname=para新增的行参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param///returns是否允许增加新行,false-不允许增加新的行/returns////summaryboolRowAdding(RowChangeEventArgspara,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///增加行之后的接口,对新增行的后续处理在这里进行///paramname=para新增的行参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param////summaryvoidRowAdded(RowChangeEventArgspara,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///复制行之前的接口,对行的合法性检查在这里进行///paramname=para复制的行参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param///returns是否允许增加新行,false-不允许增加新的行/returns////summaryboolRowCopying(RowChangeEventArgspara,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///复制行之后的接口,对复制行的后续处理在这里进行///paramname=para复制的行参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param////summaryvoidRowCopyed(RowChangeEventArgspara,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///删除行之前的接口,对行的合法性检查在这里进行///paramname=paraRowChangeEventArgs[]类型,要删除的行参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param///returns是否允许删除这些行,false--不允许删除这些行/returns////summaryboolRowsDeleting(RowChangeEventArgs[]para,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///删除行之后的接口,对删除行的后续处理在这里进行///paramname=paraRowChangeEventArgs[]类型,要删除的行参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param////summaryvoidRowsDeleted(RowChangeEventArgs[]para,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///观察者视图工具条按钮单击事件的接口///paramname=para被单击的按钮参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param///returnstrue表示实现了相应按钮的方法;false表示没有实现相应按钮的方法。/returns////summaryboolClickToolBarButton(ToolBarActionEventArgspara,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///设置为当前行之前的接口///paramname=para被选择的行参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param///returns是否允许选择新行,false--不允许选择新行,当前行不发生改变/returns////summaryboolRowSelecting(RowSelectEventArgspara,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///设置为当前行之后的接口///paramname=para被选择的行参数/param///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param////summaryvoidRowSelected(RowSelectEventArgspara,BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///业务数据合法性检查之前的接口///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param///returns检查是否通过,false--不通过/returns////summaryboolDataChecking(BusinessProxybusinessObject,VoucherProxyvoucherObject);///summary///业务数据合法性检查之后的接口///paramname=businessObject所属业务对象/param///paramname=voucherObject所属表单对象/param////summaryvoidDataChecked(BusinessProxybusinessObje
本文标题:U8开发之UAP表单
链接地址:https://www.777doc.com/doc-5101862 .html