用友软件股份有限公司
侯关士
hgs@
62435294
U8-UAP培训
Unit 1 UAP概述—视频
Unit 2 简单演示
Unit 3 基础知识
Unit 4 详细特性
Unit 5 代码开发
Unit 6 案例
Unit 7 总结
总体课程安排
UAP:Ufida Application Platform
用友公司有多条UAP线:U8-UAP、NC-UAP、U9-UAP(UBF:Ufida Business Framework)
UAP是管理软件领域的应用程序开发平台
UAP是用友产品在技术上对外开放的途径,是产业链的核心
U8-UAP包括很丰富的内容:门户、工作流、报表、表单、集成框架等等。
本培训的内容仅限于UAP表单,这是狭义的UAP概念。
大UAP概念
UAP工作流、门户
外部的UAP
UAP报表
内部的UAP
UAP工具:菜单调整、栏目设计器、过滤设计器、参照设计器、商业敏感工具、数据引擎
UAP表单
Unit 1 概述
Unit 1 概述
Unit 2 演示
Unit 3 基础知识
Unit 4 详细特性
Unit 5 代码开发
Unit 6 案例
Unit 7 总结
总体课程安排
Unit 2 演示—内容
如何进入UAP
如何购买UAP
如何建立UAP项目,并向UAP项目中增加子产品
如何建立一个档案
如何建立一个单据,并引用已经创建的档案
实体的概念,和树状实体结构
各种实体属性类型
如何为表单设计布局视图
发布表单,并在U8门户中找到发布的位置
在U8门户中运行档案和单据,包括打开、录入、保存等等
其他特性,如附件、工作流审批、单据编号规则、运行时格式定制、代码开发等后面会仔细讲解
Unit 2 演示—案例
培训管理的一个模拟演示,这个案例和我们现在的场景很相似,大家会比较熟悉
培训管理包括:课程档案、培训单
培训单内容包括:
基本情况:开始时间、结束时间、组织人、地点、培训简介等
培训课程:讲师、课程、日期等
培训学员:姓名、性别等等
Unit 2 演示--UAP登录
Unit 2 演示--角色
角色设置功能。
UAP使用U8的用户数据。
UAP内置角色分为:开发人员、企业用户、未授权用户
每个U8用户可被分配一个UAP角色
账套主管默认被设置为“开发人员”角色
账套主管的角色类型不能修改
账套主管可以为其他非账套主管的操作员分配角色
未授权用户无法登录UAP系统
Unit 2 演示--角色设置
Unit 2 演示--角色功能清单
功能清单
产品开发人员
开发人员
企业用户
参照设计器
是
是
否
栏目设计器
是
是
否
过滤设计器
是
是
否
数据引擎设计
是
是
否
敏感数据维护工具
是
是
是
新行为对象定义
是
是
否
单据转换规则
是
是
否
报表定义
是
是
是
UAP表单定义
是
是
否
分配角色
全为否,只有账套主管可以分配角色
Unit 2 演示--建立UAP项目
Unit 2 演示--为已有UAP项目添加子产品
鼠标右键单击项目名称
右键单击自定义表单
Unit 2 演示--新建自定义表单
新建单据后可在此修改单据的名称。
表单建立后,缺省建立“主表”和“第一子表”两个实体,并且“第一子表”实体是“主表”实体的子实体。
Unit 2 演示--业务建模(建立实体关系)
可以在实体的属性设置框里修改实体的属性
可根据业务需要,添加其他实体。添加的实体默认类型为“列表实体”,以列表形式显示数据。新实体可设置单行或多行模式
Unit 2 演示--一个完整的实体关系示例
根实体,录入培训的基本情况
一级子实体实体,录入参加培训的学员
一级子实体,录入培训的课程及时间安排
培训议程的子实体,录入每门课程的讲师
一级子实体,录入培训的负责机构和负责人
Unit 2 演示--增加实体属性
实体属性:描述实体的明细特征。
鼠标右键单击实体名称
实体属性的类型:
表单编号
日期
金额
审核人
表单名称(档案适用)
日期时间
复选框
审核日期
正数
枚举
制单人
审核时间
正整数
基础资料
制单日期
附件
小数
基础资料属性
制单时间
正小数
数量
修改日期
文本
价格
修改时间
选择实体属性的类型
选择为哪个实体添加实体属性,缺省为鼠标右键单击的实体。
Unit 2 演示--实体属性
每个表单的“主表”实体中必须增加“表单编号”类型。
Unit 2 演示--布局视图
布局视图区,初始状态是空白的。可以用鼠标拖拽它的区域大小设计布局时可以把工具箱里的元素用鼠标拖过来。
公共组件,是所有表单共有的布局原材料,可以用鼠标拖到布局视图区。
这里列出了所有实体,是进行布局的原材料,可以用鼠标拖到布局视图区。
系统提供的一个缺省布局视图
可以在这里单击鼠标右键增加布局视图
鼠标双击一个布局视图,进入布局视图界面
布局用工具箱
Unit 2 演示--布局视图效果示例
Unit 2 演示--发布
业务模型和布局视图设计完毕后,通过发布功能把表单发布到U8运行环境中
进行发布前需要把正在设计的表单关闭。
通过这个工具条按钮发布
注意:如在此过程中出现问题,建议退出UAP重新登录后再发布。
Unit 2 演示--在U8中运行表单
表单发布后就可以在U8中运行并使用这个表单了。
首先登录U8,在左树菜单中定位到表单所属的子产品(这里是销售管理),就可以找到发布过的表单。
Unit 2 演示--在U8中运行表单的效果示例
UAP表单运行时提供了门户工具条按钮功能的缺省实现。
这里切换不同的布局视图。
每个编辑窗口(EditWindow)拥有自己的工具条按钮。
多行文本录入
可以用鼠标拖拽这些单元格
Unit 1 概述
Unit 2 演示
Unit 3 基础知识
Unit 4 详细特性
Unit 5 代码开发
Unit 6 案例
Unit 7 总结
总体课程安排
Unit 3 基础知识
UAP表单为U8产品增加了自定义单据和档案的能力。并为单据和档案提供了全方位的功能支持,包括:增、删、改、查、打、审、格式设计等等
在实施过程中,可以为用户定制个性化的单据和档案。
使用UAP定义的单据,可以实现多子表、多布局视图
使用UAP定义的档案,支持复杂档案、列表档案、树型编辑档案(形如 部门档案)、树形导航档案(形如 人员档案)
使用UAP定义的档案可以在U8单据格式设置中引用
UAP提供了完善的插件机制,用于个性化开发。 UAP表单允许开发人员进行扩展性和取代性的开发工作。
UAP表单支持分层开发
Unit 3 基础知识—分层开发
分层开发有两方面的含义:
在开发过程上(或开发组织上) 允许各个参与者分层次依次开展工作,进行迭代性开发,从而保证向客户快速交付成果,符合敏捷开发原则。
销售
售前
实施
开发
客户
服务
可工作的软件胜过面面俱到的文档
特点:
1、是向客户交付一个项目的各个阶段,是横向的。
2、每个阶段的成果都是半成品或中间产品,每次迭代都逼近客户的真实需求。
扩展性或取代性开发
Unit 3 基础知识—分层开发
在技术上
第三层
(区域解决方案)
第二层
(行业解决方案)
第一层
(水平产品解决方案)
第四层
(用户个性化解决方案)
特点:
1、每个层次都是独立的项目,是纵向的。
2、每个层次都是独立的解决方案,是一个领域的成品。
Unit 3 基础知识—核心特性
支持树形结构的业务实体
支持业务模型的一个实体对应多个视图,一个视图只能对应一个业务实体
支持一个业务实体属性对应多个视图控件
丰富的客户端展现:多子表、分组、页签
表单和业务模型是一对一的关系
与门户集成
视图在表单上支持自由布局
业务逻辑层(M)、界面层(V)、业务逻辑和界面之间的控制层(C)互相分离
支持运行时多语
支持用户自定义控件
接口
M
C
V
Unit 3 基础知识—组成
核心设计时
业务建模工具
视图布局工具
功能定义工具
行为对象注册工具
栏目设计器
过滤设计器
单据编号规则设置
核心运行时
与门户交互 业务逻辑的基础实现
维护模型和布局视图的关系
为行为对象提供运行环境
客户端展现,布局视图灵活切换
Unit 1 概述
Unit 2 演示
Unit 3 基础知识
Unit 4 详细特性
Unit 5 代码开发
Unit 6 案例
Unit 7 总结
总体课程安排
Unit 4 详细特性—列表档案
1、新建列表档案,从“档案类型”中选择“列表档案”,在名称文本框中输入所建列表档案的名称即可。
2、列表档案只有主表实体,并且不允许再添加新实体,在“主表”实体中必须添加“表单编号”和“表单名称字段”
Unit 4 详细特性—树形编辑档案
1、新建树形编辑档案,从“档案类型”中选择“树形编辑档案”,在名称文本框中输入所建档案的名称即可。
2、树形编辑档案只有主表实体,并且不允许再添加新实体,在“主表”实体中必须添加“表单编号”和“表单名称字段”
Unit 4 详细特性—树形编辑档案
4、编码规则属性:编码规则为树形编辑档案建立上下级关系的基础
Unit 4 详细特性—树形编辑档案
5、在设计树形导航档案的布局视图,需要添加树形控件,以体现主表的树形层次接口
选中树形控件,拖拽至布局窗体,然后右键绑定主表
Unit 4 详细特性—树型导航档案
1、新建树形导航档案,从“档案类型”中选择“树形导航档案”,在名称文本框中输入所建档案的名称即可。
2、树形导航档案包含“主表”和“子表”实体,不能建立新实体。
Unit 4 详细特性—树型导航档案(主表)
1、主表中包含两个实体属性“编码字段”和显示字段,不能添加新的实体属性;
2、主表属性设置
首先设置主表查询数据所使用的数据引擎,如需要做人员档案,主表需要设置为部门档案的相关信息,此处就需要设置查询部门档案的数据引擎
根据实际设置当前主表所需要设置的主键列名称及主键的类型
Unit 4 详细特性—树型导航档案
3、子表中必须需要设置“表单编号”和“表单名称”类型字段。
4、在设计树形导航档案的布局视图,需要添加树形控件,以体现主表的树形层次接口(支持自动布局,可不用手动设计)
选中树形控件,拖拽至布局窗体,然后右键绑定主表
Unit 4 详细特性—多行文本
1、设置“文本”类型字段时,可以为其设置“多行输入”属性。
2、设置多行属性后在布局视图中可拖拽设置输入框大小(按住键盘“Crtl”键后用鼠标拖拽即可)。
Unit 4 详细特性—验证字段
每个实体的属性窗口中可以设置“验证字段”属性。如果为子表实体的“验证字段”属性设置值(假如选定了字段“A”和“B”),则在运行时录入单据保存时,系统会自动检测单据中子表的每一条记录。如果检测到一条记录中A字段和B字段都没有录入值,则会对这一条记录不予保存到数据库中。
Unit 4 详细特性—值更新事件
1、值更新事件分类:
计算定义公式的值到指定列
表达式为真/假时改变指定栏目编辑状态
表达式为真/假时改变指定栏目显示状态
表达式为真/假时改变指定功能状态
携带当前字段的相关参照属性到指定列
Unit 4 详细特性—值更新事件
计算定义公式的值到指定列
一般用来做数值类型的计算,例如:单据 ×数量=金额
Unit 4 详细特性—值更新事件
表达式为真/假时改变指定栏目编辑状态
字段的联动控制时,可以使用该事件,例如:字段A有值,则字段B可写,否则,字段B只读。 (此处需要设置两个值更新事件)
Unit 4 详细特性—值更新事件
表达式为真/假时改变指定栏目显示状态
字段的联动控制时,可以使用该事件,例如:字段A有值,则字段B可见,否则,字段B隐藏(此处需要设置两个值更新事件)。
Unit 4 详细特性—值更新事件
表达式为真/假时改变指定功能状态
字段值的变化影响功能按钮的状态时,可以使用该事件,例如:字段A有值,则打印功能可用,否则,打印功能不可用(此处需要设置两个值更新事件)。
Unit 4 详细特性—值更新事件
携带当前字段的相关参照属性到指定列
(该事件只能在“基础资料”字段上建立)
参照字段选择时,将选择的参照的相关栏目的值填写到指定的栏目中。
Unit 4 详细特性—功能管理
表单功能:设计时通过“功能管理”添加功能或修改已有功能属性
实体功能:设计时通过实体的“功能”属性添加功能货修改已有功能属性
Unit 4 详细特性—功能管理
表单功能
表单发布后,在运行时门户的工具栏中可以看到的功能按钮
实体功能
表单发布后,在运行时每个实体上的功能按钮。
Unit 4 详细特性—功能权限
表单功能支持功能权限
在设计时,修改表单功能的属性“控制权限”为“是”,重新发布表单。
表单发布时会生成相应的功能权限控制对象
在U8的系统管理端为操作员赋功能权限时会看到新增加的功能权限
Unit 4 详细特性—功能权限
在设计时设定功能的“控制权限”属性为“是”后,发布表单。在U8系统管理的功能权限中为用户或角色设置该功能的使用权限。假设设定表单的“打印”功能控制权限,发布后如图所示
分别为表单生成“打印”和“浏览”权限。“浏览”权限控制用户是否可从左树查看该表单节点;“打印”即为设计时设置的打印功能的权限。
Unit 4 详细特性—记录级数据权限
单据中的参照字段支持设置记录级权限。
在表单实体的“基础资料”的属性设置中包含“记录级权限”
例如字段的参照对象设置为“客户基本参照”,并且需要控制记录级权限,则“记录级权限”属性可设置为“客户”。
Unit 4 详细特性—字段级数据权限
UAP表单发布之后,即生成了字段级权限控制业务对象,UAP表单的主表和第一字表中的字段自动加入该业务对象。
在U8中可以使用启用这个业务对象,并为用户分配字段权限。
Unit 4 详细特性—单据编号规则
在设计时中可以设置使用表单“主表”中的几个固定类型字段去参与新增表单的单据编号生成。可以参与单据编号生成的字段类型包括:基础资料、日期、制单人三种。
此处的“重新发布”选项框必须选中,设定后需要重新发布表单
发布后,就可在使用U8的单据编号规则设置功能为单据设置编号规则了
Unit 4 详细特性—状态设置
UAP表单状态:新增、修改、审核、浏览
功能(按钮)状态
可设置功能(按钮)在各个状态下的“可用”、“不可用”、“隐藏”等选项。
表单功能状态
实体功能状态
Unit 4 详细特性—状态设置
UAP表单状态:新增、修改、审核、浏览(审核状态目前没有使用)
实体属性(栏目)状态
可设置表单实体中的各个字段在各个状态下的“可写”、“只读”、“灰化”等选项。
实体属性状态
Unit 4 详细特性—多人协同开发
任务管理器
为基于UAP的多人协同开发提供了基础服务
列出当前存活的工作任务,可以看到谁正在使用什么功能
任务管理器管理的对象包括项目和表单
先打开某个管理对象的开发人员拥有对它的读写权限,之后打开同一个管理对象的开发人员只拥有读权限。
开发人员关闭某个管理对象后,他拥有的权限自动释放。
对于UAP设计时因异常退出,无法清除的任务,可以清除。
Unit 4 详细特性—运行时多语 支持
多语如何设置
目前支持简体、繁体、英文三种语种,从设置多语的属性设置进入如图窗体设置。
支持多语的地方。
UAP表单中的实体属性、功能、及布局视图中都可以设置多语。
Unit 4 详细特性—枚举
枚举类型字段与U8的枚举字段一致
属性设置
枚举模式如果为“新创建枚举”(默认为该模式),则必须设置属性“枚举值”;
枚举模式如果为“使用已存在的枚举”,则必须设置属性“枚举类型”;
Unit 4 详细特性—基础资料
基础资料类型即为U8老单据中的参照字段
基础资料类型字段属性设置:
属性“参照对象”
属性“参照显示值”
属性“参照显示字段”
字段标示名称,用来作为数据引擎的返回字段标示,不要与其他字段名称重复
属性“记录级权限”
是:输入框中输入数据后回车,系统会自动校验数据是否是一个合法的参照数据
否:不执行上述校验,在需要支持录入参照中不存在的数据时使用。
属性“自动校验”
Unit 4 详细特性—基础资料属性
基础资料属性字段默认为只读,它依附与当前实体中的一个基础资料类型字段,当基础资料字段做参照选择时,相应的值也会填充到基础资料属性字段。
属性设置
所有当前实体中“基础资料”类型字段已设置参照
左边选中的参照中可以使用参照的栏目字段
Unit 4 详细特性—年度结转
UAP表单支持设置“年度结转”。单据类型的表单默认不支持结转,档案类型表单默认支持结转。可以通过单据属性修改上述默认设置。
如果要设置复杂的结转条件,可以在年度库的UA_NextToYear表中预置
Unit 4 详细特性—自动布局
UAP表单的布局视图支持自动布局。在布局视图设计界面的工具栏中有一个“自动布局”的功能按钮。
自动布局后,如果不满足要求,还可以手动调整
Unit 4 详细特性—分组页签
表单的实体较多或者实体中的字段较多时,可以使用分组页签,将相关的一组字段设置在一个页签上。类似于存货档案的多页签界面。
将该分组页签控件拖拽至布局界面即可
Unit 4 详细特性—调整栏
相对于U8单据界面上布局相对固定不同,UAP表单的布局视图设置中引入了“调整栏”控件。在布局中加入调整栏后,在运行时界面中可以根据需要自由的调整一块区域的显示大小。一般放在两个“容器”控件之间。
将该调整栏控件拖拽至布局界面即可
Unit 4 详细特性—停靠
.Net控件的基础属性之一,该属性是一个枚举值,可以设置为Top、Bottom、Left、Right、Fill。分别代表该控件停靠填充到所在容器控件的顶、底、左、右或者完全填充整个容器控件。设置这个属性后不需要关心控件在运行时的位置或者大小,都是控件自动计算的。
Unit 4 详细特性—实体功能和表单功能映射
为了做出和U8单据一样的布局效果,功能按钮都在门户上。而实体的按钮要调用门户按钮的功能,就需要与门户按钮做映射关联。具体是通过在布局视图上为一个实体的控件设置“功能选择”属性时设置关联。
Unit 4 详细特性—卡片式表格的栏目调整
调整位置
放在被覆盖控件前方
放在被覆盖控件下方
放在被覆盖控件上方
放在被覆盖控件后方
Unit 4 详细特性—表格样式设置
UAP表单的布局视图界面可设置多种样式。通过布局视图的属性“样式”可具体设置样式。
Unit 4 详细特性—自定义控件
UAP表单的布局视图设置中可以添加“自定义控件”。在设计时为自定义控件预留一个区域,通过二次开发代码向预留区域中添加具体控件。并且预留区域可以与表单中的一个实体绑定,以便访问实体数据
Unit 4 详细特性—附件
增加一种实体属性类型:附件
在应用上有两种模式:
模式一 附件数量可以预期
附件和内容在同一个实体里,一个附件类型字段只能上传一个附件,但是一个实体里可以有多个附件。
模式二 附件数量不可预期
单独为附件创建一个实体,作为内容实体的子实体,附件实体可以增行,这样内容实体的一行记录可以有任意多个附件。
Unit 4 详细特性—基础资料返回值和显示值分离
基础资料返回值和显示值分离
用于保存值不易让用户理解的情况,如保存档案的主键值,显示时向用户显示名称
Unit 4 详细特性—引用的档案数据不允许删除
被其他单据和档案使用的档案数据应该不能删除
如:订货会订单中使用了订货会档案中的 “北京冬季订货会” 数据,那么,“北京冬季订货会”就应该不允许删除。
向表AA_ProcedureDic和AA_TableDic_Lang预置数据
下面的示例是被订货会订单引用的订货会数据不允许被删除的sql脚本,如果试图被删除则会给出提示。
if(select count(*) from AA_ProcedureDic where cTableName = 'uap001_0002_E001' and cRefTableName = 'uap001_0001_E001' ) > 0
delete from AA_ProcedureDic where cTableName = 'uap001_0002_E001' and cRefTableName = 'uap001_0001_E001'
insert into AA_ProcedureDic(cProcedureName, cTableName, cRefTableName, cRefFieldName)
Values('ArchIsUsed', 'uap001_0002_E001', 'uap001_0001_E001', 'cMeeting')
if(select count(*) from AA_TableDic_Lang where cTableName = 'uap001_0001_E001')>0
delete AA_TableDic_Lang where cTableName = 'uap001_0001_E001'
insert into AA_TableDic_Lang(cProductId, cTableName, cShowTableName, LocaleID)
Values('SA', 'uap001_0001_E001', '订货会订单', 'zh-CN')
insert into AA_TableDic_Lang(cProductId, cTableName, cShowTableName, LocaleID)
Values('SA', 'uap001_0001_E001', '订货会订单', 'en-US')
insert into AA_TableDic_Lang(cProductId, cTableName, cShowTableName, LocaleID)
Values('SA', 'uap001_0001_E001', '訂貨會訂單', 'zh-TW')
Unit 4 详细特性—小数位数支持系统参数
保证UAP开发的单据和档案中相关的数值型属性的小数位数和U8中定义的小数位数一致。
Unit 4 详细特性—实体属性标题支持 自定义项/自由项 标题
Unit 4 详细特性—U8单据中引用UAP档案
U8单据可以通过自定义项使用UAP开发的档案
应用效果
Unit 4 详细特性—运行时布局视图定制
UAP表单在U8门户中运行时,可以通过定制按钮穿透到UAP布局视图设计器
在UAP布局视图设计器中设计需要的格式
设计完成后,发布布局视图,再次进入单据后就是新格式了
用户也可以把已有布局视图另存为一个新的布局视图。
Unit 4 详细特性—表单脚本导出
提供一个表单的sql脚本导出功能,用于部署。
Unit 4 详细特性—支持工作流审批
单据的主表中包含审核人等信息,当UAP发布单据时,自动把单据元数据发布到工作流设计器中,建立审批业务对象
在工作流设计器中为UAP单据设计审批流程,设计方法和U8已有 的单据一样
UAP已经预置了通用的审批插件和终审服务程序。用户也可以参考工作流开发规范,开发自己的审批插件和终审服务,来满足个性化的审批要求
基于源单据的生单规则
UAP生单规则以源单据为核心,生单界面由源单据列表和源单据组成
UAP生单界面继承了源单据的实体、实体属性、实体功能、栏目元数据、过滤元数据、数据引擎元数据、插件等等
UAP生单界面也可以增加视图属性、实体功能,修改栏目、过滤、数据引擎等,也可以增加新的插件
支持UAP单据之间、U8单据之间、UAP与U8单据之间的生单
前提是U8单据的单据模板已经转换成了UAP单据元数据
872版本已经转换了三十多个U8单据
U8单据作为目标单据时,需要在 单据格式设置 中设置表头和表体的某个自定义项为UAP生单记录ID
如果需要把U8单据作为源单据,需要先导入一个U8单据,然后再建立单据转换规则
可以设置比较字段
只有比较字段的值相同的源单据才能转换到同一张目标单据上
例如只有客户相同的销售订单才能生成到一个发货单上
如果要实现单到单生单可以把单据编号设置为比较字段
Unit 4 详细特性— UAP生单规则 1of3
Unit 4 详细特性— UAP生单规则 2of3
支持转换公式
从源字段到目标字段可以实现复杂的逻辑运算转换
支持中间实体
中间实体存储转换的中间结果
如果源单据到目标单据的转换过于复杂,不能够一步到位,可以使用中间实体。
支持映射和汇总两种转换方式
映射:是简单的源字段到目标字段的对照
汇总:可以支持聚合、最值、均值、SUM等操作。
钩稽字段设置
对于数值型的源字段,可以约束总的转换量不能超过源字段的量。
如按单生产的情况下,多次下达生产的产量不能超过源订单的订购量。订购量要设置为钩稽字段。
Unit 4 详细特性— UAP生单规则 3of3
自动模拟填充特性
目标单据有自己的字段间关系,在使用转换结果填充时,可以指定运行哪些字段的关系。
如源单据上只有客户没有客户地址,目标单据需要客户地址,把目标单据的客户字段设置为自动模拟填充字段后,在填充目标单据时,可以把客户地址带出。
插件接口
可以写个性化的UI交互规则、数据转换规则等。
Unit 1 概述
Unit 2 演示
Unit 3 基础知识
Unit 4 详细特性
Unit 5 代码开发
Unit 6 案例
Unit 7 总结
总体课程安排
Unit 5 代码开发
支持代码开发的程度及开放的可访问接口是衡量一个软件平台开放程度及功能强弱的一个标准。
代码开发是为了满足目标领域的特殊要求而在软件平台基础之上开发的新功能
基于软件平台的代码开发包括取代性开发和扩展性开发两种:
取代性开发:是摒弃掉软件平台已经实现的某个功能,而用新的算法程序代替,如表单保存按钮的功能可以通过代码开发完全取代。
扩展性开发:是开发软件平台没有的功能,或对已有功能的补充,如作废功能、折扣价和折扣互算功能。
软件平台要具备对代码成果的管理能力,如注册、运行上下文、创建、调用、销毁等。
软件平台要提供代码开发的规范。
Unit 5 代码开发
UAP把代码开发的编译对象称为行为对象。
行为对象可以在表单设计时注册。
UAP针对不同的功能提供了多种行为对象
表单行为对象:作用于表单
表单列表行为对象:作用于表单列表
服务器端行为对象:作用于后台保存
生单行为对象:作用于生单,可以对生单算法进行更改。
由于支持分层开发,每种类型的行为对象都支持多个,后面这册的行为对象可以访问前面的行为对象(调用、重载、继承)
Unit 5 代码开发--开发表单行为对象的步骤
安装Microsoft Visual Studio 2005
创建一个 C# 类库(.dll)项目
为项目添加引用:
添加一个类,并实现接口IReceipt
public class PurchaseOrder : IReceipt
实现业务逻辑
编译工程,得到一个dll
在UAP设计时中注册dll。
案例代码:
UAP帮助菜单下的“表单开发SDK”中,可以查阅IReceipt中的方法,及UAP提供的可由代码调用的方法和属性。
Unit 1 概述
Unit 2 演示
Unit 3 基础知识
Unit 4 详细特性
Unit 5 代码开发
Unit 6 案例
Unit 7 总结
总体课程安排
U872中UAP开发的功能
U872中UAP演示项目
项目文件在:
\U8SOFT\UAP\sdk\samplefile
用UAP项目导入功能导入后即可使用
案例背景
订货会是企业推销产品、企业宣传、广泛沟通的一种有效手段;
订货会主要应用于服装、图书等行业;
对订货会业务的管理在管理软件中还不多见;
订货会业务的功能
参加订货会的样品(商品、存货)管理—重点是新品
订货会档案管理—不同时间不同地点要举办多个订货会
订货会订单管理—收集订货会上客户的订购意向,订货会的核心单据
样品起订量检查 —确定哪些样品可以批量生产,起订量从成本、企业战略综合考虑后设置
确认有效的订货会订单转销售订单—执行后续销售流程
相关报表—样品订购排名表 、客户订货汇总表等等
Unit 6 演示案例
Unit 6 演示案例
演示内容
订货会档案
订货会订单维护
附件—订货会订单依据的文档作为附件管理起来
订货会订单流程审批
订货会订单上需要有审核人,审核日期,审核时间字段
订货会订单生成销售订单
设置销售订单的 UAP生单记录ID
模拟输入设置(只有可编辑项才支持,所以要求源单据上有对应值,如销售订单上客户简称是可输入的,在订货会订单上要有客户简称信息)
勾稽检查—订货数量
在U8门户中定制 订货会订单 的格式
选择列
调整列位置
恢复默认功能
格式设计—布局格式调整和新增布局视图
二次开发功能
作废功能如何实现
推式生单—订货会订单审批之后自动生成销售订单
折扣价和折扣之间的换算
Unit 7 总结.特性
Complete(完整)---完整表单解决方案
增、删、改、查、打、存、审
单据和档案
单据编号
多子表
附件、多行文本
生单
运行时定制
Integration(集成)
与U8紧密集成-
门户
工作流
权限
数据库(1、U8数据库 2、数据库技术隔离)
安装与部署
Open(开放)
开放的接口
开放的方法和属性
支持.NET和VB6两种语言
扩展开发和取代性开发
用户自定义控件
了一个符合.特性的开发平台--UAP
我们为CIO提供
*
*
*
*