U8门户开发手册
U8UAP开发手册
U8UAP开发手册UAP开发样例指导用友研发中心U8平台技术部<本文档适用于U871版本>目录一、摘要7二、样例开发前提8三、建立UAP项目9四、建立表单模型11(一)新建实体 (12)(二)新建实体属性 (15)五、建立表单布局26六、行为对象开发26(一)表单开发 (29)(二)列表开发 (45)(三)生单二次开发 (52)(四)联查报表 (55)(五)联查UAP列表 (57)(六)UAP列表联查U8单据 (57)(七)用户自定义控件开发 (61)(八)U8单据引用UAP档案 (62)七、行为对象注册79功能介绍: (79)使用说明: (80)应用技巧: (82)八、建立数据引擎83功能介绍: (83)使用说明: (86)应用技巧: (111)九、设置过滤条件111功能介绍: (111)使用说明: (111)应用技巧: (119)十、设置栏目120功能介绍 (120)使用说明 (120)应用技巧 (122)十一、权限122功能权限 (122)记录级权限 (123)字段级权限 (124)十二、部署126附录:功能介绍 (126)1、行为对象升级说明 (126)2、LoginInfo 对象介绍 (132)一、摘要本文以U8-ERP中的销售订单为应用原型,介绍了如何通过UAP进行软件开发,文中给出了开发方法和丰富样例。
内容包括:UAP表单开发原理UAP项目的建立和导入、导出UAP表单的模型设计和布局设计UAP表单的行为对象开发UAP表单列表设计与开发UAP表单列表的行为对象开发如何对UAP表单的缺省按钮进行扩展性开发如何对UAP表单的缺省按钮进行取代性开发如何为UAP表单增加新的按钮及行为如何用程序代码调用UAP报表如何用程序代码调用UAP表单列表如何在UAP表单中增加权限控制:功能权限、字段权限、记录权限如何为UAP表单开发自定义控件如何开发树形档案如何维护UAP数据引擎如何维护栏目如何维护过滤条件如何调用U8APIU8单据自定义项如何引用UAP档案本文档中使用的示例文件为“销售订单二次开发”,可以通过UAP将该文件导入到帐套中。
U8工作流开发手册
工作流开发手册1 功能介绍:工作流系统是以规格化的流程描述作为输入的软件组件,它维护流程的运行状态,并在人和应用之间分派活动、最终达到协同多人或服务共同完成工作任务的目的。
2 使用过程:工作流系统的使用过程分为三个阶段:设计时、配置时、运行时;设计时阶段需要完成流程模型设计;配置时阶段需要完成工作流系统运行环境的配置、工作流模型发布及版本管理等工作;运行时阶段需要负责发起和完成流程实例等工作。
U8系统安装完毕后,首先需要进入工作流环境配置模块设置MOM服务器和工作流引擎信息;配置的信息会通知到对应的MOM服务器,使得MOM服务器感知与其协同工作的工作流引擎信息。
配置时涉及的功能模块及运行时的流程实例管理模块存在于工作流管理控制台中。
环境配置完毕后,可以进行流程模型设计工作。
通过流程设计器,设计过程中结合UAP工具中设计出来的业务对象和注册在MOM服务器上的消息和服务信息,生成流程模型。
流程设计器设计出来的流程模型还不能直接投入使用,需要通过重定位模块对其消息和服务地址信息从设计时环境的地址转化为运行时地址后,才能正式使用。
重定位模块通过“流程发布”动作来完成该动作的。
流程模型发布后,业务应用就可通过消息发送接口发送特定类型的消息,消息通过MOM服务器通知工作流引擎,生成对应的流程实例,在流程实例处理过程中调用业务服务、生成需要人工交互的任务项、并最终协调完成流程实例的处理。
流程实例可以被流程实例管理模块加以管理、修改。
3 开发帮助基于新的工作流平台之上的审批流应用,利用UAP的数据引擎、MOM消息发布订阅和消息转发功能来完成审批这一类特殊流程的管理、配置、设计、使用、维护、监视操作。
下图是工作流系统使用流程图:在上述流程涉及到业务系统开发人员的活动中,服务开发、服务注册、预制业务对象、编写预制运行时活动插件、编写客户端审批提交代码等工作是在业务模块中实现审批功能都可能涉及的动作。
3.1开发与注册服务本处服务是指业务部门提供能、为了能满足特定业务功能而实现的组件中的方法;这些服务可在流程设计过程中运用于流程模型,体现为流程模型中的自动服务。
U8API开发手册
U8API开发⼿册U8API开发⼿册1.简介“U8API资源管理器”是⼀个为U8客户化应⽤开发提供统⼀的U8API资源查询、访问、调⽤规范等服务的平台化⼯具产品。
本产品向外提供⼀套完整统⼀的标准U8 API调⽤接⼝,以便基于U8标准API资源,采⽤统⼀编程模型和开发规范,为企业提供应⽤集成和个性化功能扩展增值服务,打造量体合⾝的信息系统。
在分类体系上,本产品向外提供的U8 API资源主要按照功能模块以及各个单据进⾏划分,如库存管理下的盘点单,提供“添加新单据”、“审核单据”、“弃审单据”、“删除单据”、“装载单据”和“修改单据”这样六个标准的API接⼝,以供客户调⽤。
客户可以在“U8API资源管理器”中查看要调⽤的API接⼝描述,同时可以获取调⽤该API的代码⽰例(⽬前⽀持两种语⾔C#和VB),客户只需要结合API接⼝描述并按照代码注释中给出的提⽰步骤进⾏操作就可以⽅便的使⽤U8 API资源。
下⾯主要介绍如何使⽤U8API进⾏个性化开发,如何对U8API进⾏调⽤,同时给出使⽤过程中需要注意的内容。
2.API应⽤2.1. API总体应⽤过程2.1.1 API查找发现在U8产品中“UAP”⽬录下找到“U8API资源管理器”,单击,登录,进⼊“U8API资源管理器”。
在左侧“U8API”树形节点下,找到某某模块,如“库存管理”模块(可以看到下⾯列有很多个单据,如盘点单、采购⼊库单等),展开要操作的单据,分两个⼦节点:“事件”和“服务接⼝”,在“服务接⼝”下可以看到该单据提供的API接⼝,如“添加新单据”、“审核单据”等。
双击这些节点出现该API的详细描述,如下图2.1所⽰。
在节点上右键单击弹出“上下⽂菜单”,在“代码⽰例”菜单项上弹出下⼀级⼦菜单,单击它们,如单击“C#代码⽰例”则可以看到调⽤该API的C#⽰例代码,如下图2.2所⽰。
直接拷贝这些代码,然后在集成开发环境(IDE)中编辑和编译这些代码,即能实现调⽤U8标准API。
U8API开发手册(C#版)
U8API开发手册作者:商平锋版权所有:用友软件股份有限公司1.简介U8API是为U8客户化应用开发提供的一套标准化的U8ERP业务编程接口。
是U8UAP二次开发体系的重要组成部分。
它包括一整套涵盖U8ERP采购、销售、库存、制造(规划中)、财务(规划中)、基本档案(规划中)等业务模块的API接口资源。
U8API的推出为U8标准产品更好的适应用户的个性化需求,更好的实现客户化交付提供了有力支持。
U8API按照U8ERP业务产品模块进行分类,并以U8主要业务实体(单据、档案、凭证)作为操作对象,提供了常用的基本操作。
比如:对于库存的收发单据,提供“新增”、“审核”、“弃审”、“删除”、“装载”、“修改”六个API接口。
目前,U8API提供了供应链采购、销售、库存三个产品的所有单据的增删改、审核/弃审等API接口,后续版本会逐步将制造、财务、基本档案等模块的API纳入进来。
U8API通过“U8API资源管理器”对U8范围内所有API进行集中统一分类管理,形成了一套完整的U8API资源库。
U8API的使用者可以使用“U8API资源管理器”浏览、查看API 及其接口定义,并可辅助进行代码生成(目前支持C#和VB语言);API的开发者可以通过此工具发布、注册API,所有业务API都必须在“U8API资源管理器”中进行注册。
U8API还提供了一套运行时调用框架——U8APIBroker。
它是所有U8API的调用代理,用户要使用某个API只需调用U8APIBroker即可,无需直接访问真正的API。
U8APIBroker 作为一个服务代理中间件,起到了隔离API的提供者与使用者的作用,降低了耦合依赖关系。
U8API与U8EAI接口从功能上看比较相识,但它们的特性有差别。
U8API采用传统的编程模型,更靠近底层,业务逻辑粒度更细,而且还需要或依赖一些特定的上下文环境,比如:login、事务等;而U8EAI接口则是完全松耦合的,采用XML和请求/响应的消息传递模式,且业务粒度比较粗放。
用友U8操作手册说明书
用友U8操作手册目录第一部分系统初始化 (3)1.1系统说明 (3)1.2权限说明 (3)1.4系统管理员注册 (4)1.6增加操作员用户 (6)1.7更改账套名称 (8)第二部分总账 (11)2.1系统登录 (11)2.4会计科目调整 (12)2.6录入期初余额 (14)2.7凭证 (17)2.7.1填制凭证 (17)2.7.2作废/整理凭证 (21)2.7.3其他常用功能说明 (23)2.7.4审核凭证 (28)2.7.5查询凭证 (31)2.7.6打印凭证 (34)2.7.7记账与反记账 (37)2.8期末 (41)2.8.1期间损益结转 (41)2.8.3结账与反结账 (43)2.9账表 (45)2.9.1科目账 (45)2.9.2项目往来辅助账 (51)2.9.3账簿打印 (57)3.4设置备份计划 (59)3.5自动账套备份的还原及引入 (60)3.6清除单据锁定 (63)3.7清除系统运行异常 (63)第一部分系统初始化1.1 系统说明业务平台: 主要进行日常的账务处理:记账、结账、凭证及账表的查询打印等操作。
其图标如下:系统管理: 主要进行(1)账套的备份还原, (2)用户的填加, (3)年度账的建立及结转。
等操作。
其图标如下:1.2 权限说明主要指在登陆“系统管理”时可能涉及到的用户及权限:admin:系统管理员(1)账套的备份还原; (2)备份计划的建立; (3)用户的填加;(4)异常任务的清理等。
demo :账套主管(1) 年度账的建立; (2)年度数据的结转等。
系统管理员和账套主管的权限比较(Y代表可以,N代表不可以)主要功能功能选项功能细项系统管理员是否拥有账套主管是否拥有账套主管账套建立Y N 账套修改N Y 账套引入Y N 账套输出Y N 账套数据删除Y N1.4 系统管理员注册点击“系统管理”—“系统”—“注册”如下图:则弹出登陆对话框,如下图:“登录到”栏务必保证是本机的计算机名(在本系统中所有的登录窗口,都必须保证这一点),一般会自动带出,不用作任何修改。
用友U8基本操作手册
用友U8基本操作手册一、系统登录打开用友 U8 软件,在登录界面输入用户名和密码。
用户名一般由系统管理员提前设置好,密码则是您自己设定并牢记的。
输入完成后,点击“登录”按钮即可进入系统。
二、基础档案设置1、部门档案依次点击“基础设置” “机构人员” “部门档案”,进入部门档案设置界面。
点击“增加”按钮,输入部门编码和部门名称等信息,然后点击“保存”。
2、人员档案在“基础设置” “机构人员” “人员档案”中进行人员信息的录入。
包括人员编码、姓名、所属部门等。
3、客户档案选择“基础设置” “客商信息” “客户档案”,点击“增加”录入客户的相关信息,如客户编码、名称、地址、联系方式等。
4、供应商档案同样在“客商信息”中,找到“供应商档案”进行类似的操作来录入供应商的信息。
三、财务模块操作1、总账(1)凭证录入点击“财务会计” “总账” “凭证” “填制凭证”,选择凭证类别,然后依次输入日期、摘要、科目、金额等信息。
(2)凭证审核审核人员登录系统,在“凭证” “审核凭证”中对已录入的凭证进行审核。
(3)记账审核通过的凭证可以进行记账操作,点击“记账”按钮即可。
2、应收款管理(1)应收单据处理包括录入销售发票、其他应收单等。
(2)收款单据处理登记收到的款项。
(3)核销处理将收款与应收款进行核销。
3、应付款管理与应收款管理类似,对应付单据、付款单据进行处理和核销。
四、供应链模块操作1、采购管理(1)采购订单在“采购管理”中录入采购订单,包括供应商、采购物品、数量、价格等。
(2)采购到货货物到达后进行到货登记。
(3)采购入库验收合格的货物办理入库手续。
2、销售管理(1)销售订单录入客户的销售订单信息。
(2)发货单根据销售订单生成发货单。
(3)销售出库发货后进行销售出库操作。
3、库存管理(1)入库业务除了采购入库,还包括其他入库,如盘盈入库等。
(2)出库业务如销售出库、材料领用出库等。
(3)库存盘点定期对库存进行盘点,调整库存数量。
U8UAP开发手册簿
UAP开发样例指导用友研发中心U8平台技术部<本文档适用于U871版本>目录一、摘要 (3)二、样例开发前提 (3)三、建立UAP项目 (3)四、建立表单模型 (5)(一)新建实体 (6)(二)新建实体属性 (8)五、建立表单布局 (14)六、行为对象开发 (15)(一)表单开发 (17)(二)列表开发 (30)(三)生单二次开发 (36)(四)联查报表 (37)(五)联查UAP列表 (38)(六)UAP列表联查U8单据 (39)(七)用户自定义控件开发 (42)(八)U8单据引用UAP档案 (43)七、行为对象注册 (56)功能介绍: (56)使用说明: (56)应用技巧: (58)八、建立数据引擎 (59)功能介绍: (59)使用说明: (60)应用技巧: (82)九、设置过滤条件 (82)功能介绍: (82)使用说明: (82)应用技巧: (87)十、设置栏目 (88)功能介绍 (88)使用说明 (88)应用技巧 (89)十一、权限 (89)功能权限 (89)记录级权限 (90)字段级权限 (91)十二、部署 (92)附录:功能介绍 (93)1、行为对象升级说明 (93)2、LoginInfo 对象介绍 (95)一、摘要本文以U8-ERP中的销售订单为应用原型,介绍了如何通过UAP进行软件开发,文中给出了开发方法和丰富样例。
容包括:UAP表单开发原理UAP项目的建立和导入、导出UAP表单的模型设计和布局设计UAP表单的行为对象开发UAP表单列表设计与开发UAP表单列表的行为对象开发如何对UAP表单的缺省按钮进行扩展性开发如何对UAP表单的缺省按钮进行取代性开发如何为UAP表单增加新的按钮及行为如何用程序代码调用UAP报表如何用程序代码调用UAP表单列表如何在UAP表单中增加权限控制:功能权限、字段权限、记录权限如何为UAP表单开发自定义控件如何开发树形档案如何维护UAP数据引擎如何维护栏目如何维护过滤条件如何调用U8APIU8单据自定义项如何引用UAP档案本文档中使用的示例文件为“销售订单二次开发”,可以通过UAP将该文件导入到帐套中。
U8API开发手册(C#版)
U8API开发手册作者:商平锋版权所有:用友软件股份有限公司1.简介U8API是为U8客户化应用开发提供的一套标准化的U8ERP业务编程接口。
是U8UAP二次开发体系的重要组成部分。
它包括一整套涵盖U8ERP采购、销售、库存、制造(规划中)、财务(规划中)、基本档案(规划中)等业务模块的API接口资源。
U8API的推出为U8标准产品更好的适应用户的个性化需求,更好的实现客户化交付提供了有力支持。
U8API按照U8ERP业务产品模块进行分类,并以U8主要业务实体(单据、档案、凭证)作为操作对象,提供了常用的基本操作。
比如:对于库存的收发单据,提供“新增”、“审核”、“弃审”、“删除”、“装载”、“修改”六个API接口。
目前,U8API提供了供应链采购、销售、库存三个产品的所有单据的增删改、审核/弃审等API接口,后续版本会逐步将制造、财务、基本档案等模块的API纳入进来。
U8API通过“U8API资源管理器”对U8范围内所有API进行集中统一分类管理,形成了一套完整的U8API资源库。
U8API的使用者可以使用“U8API资源管理器”浏览、查看API 及其接口定义,并可辅助进行代码生成(目前支持C#和VB语言);API的开发者可以通过此工具发布、注册API,所有业务API都必须在“U8API资源管理器”中进行注册。
U8API还提供了一套运行时调用框架——U8APIBroker。
它是所有U8API的调用代理,用户要使用某个API只需调用U8APIBroker即可,无需直接访问真正的API。
U8APIBroker 作为一个服务代理中间件,起到了隔离API的提供者与使用者的作用,降低了耦合依赖关系。
U8API与U8EAI接口从功能上看比较相识,但它们的特性有差别。
U8API采用传统的编程模型,更靠近底层,业务逻辑粒度更细,而且还需要或依赖一些特定的上下文环境,比如:login、事务等;而U8EAI接口则是完全松耦合的,采用XML和请求/响应的消息传递模式,且业务粒度比较粗放。
U8UAP开发手册
U8U A P开发手册work Information Technology Company.2020YEARUAP开发样例指导用友研发中心 U8平台技术部<本文档适用于U871版本>目录一、摘要 (4)二、样例开发前提 (4)三、建立UAP项目 (5)四、建立表单模型 (7)(一) 新建实体 (8)(二) 新建实体属性 (10)五、建立表单布局 (21)六、行为对象开发 (21)(一) 表单开发 (24)(二) 列表开发 (39)(三) 生单二次开发 (46)(四) 联查报表 (48)(五) 联查UAP列表 (50)(六) UAP列表联查U8单据 (50)(七) 用户自定义控件开发 (54)(八) U8单据引用UAP档案 (55)七、行为对象注册 (70)功能介绍: (70)使用说明: (71)应用技巧: (73)八、建立数据引擎 (74)功能介绍: (74)使用说明: (76)应用技巧: (98)九、设置过滤条件 (98)功能介绍: (98)使用说明: (98)应用技巧: (104)十、设置栏目 (105)功能介绍 (105)使用说明 (105)应用技巧 (107)十一、权限 (107)功能权限 (107)记录级权限 (108)字段级权限 (109)十二、部署 (111)附录:功能介绍 (111)1、行为对象升级说明 (111)2、LoginInfo 对象介绍 (115)一、摘要本文以U8-ERP中的销售订单为应用原型,介绍了如何通过UAP进行软件开发,文中给出了开发方法和丰富样例。
内容包括:UAP表单开发原理UAP项目的建立和导入、导出UAP表单的模型设计和布局设计UAP表单的行为对象开发UAP表单列表设计与开发UAP表单列表的行为对象开发如何对UAP表单的缺省按钮进行扩展性开发如何对UAP表单的缺省按钮进行取代性开发如何为UAP表单增加新的按钮及行为如何用程序代码调用UAP报表如何用程序代码调用UAP表单列表如何在UAP表单中增加权限控制:功能权限、字段权限、记录权限如何为UAP表单开发自定义控件如何开发树形档案如何维护UAP数据引擎如何维护栏目如何维护过滤条件如何调用U8APIU8单据自定义项如何引用UAP档案本文档中使用的示例文件为“销售订单二次开发”,可以通过UAP将该文件导入到帐套中。
U8UAP开发手册
U8U A P开发手册(总43页) -CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除UAP开发样例指导用友研发中心 U8平台技术部<本文档适用于U871版本>目录一、摘要............................................. 错误!未指定书签。
二、样例开发前提..................................... 错误!未指定书签。
三、建立UAP项目..................................... 错误!未指定书签。
四、建立表单模型..................................... 错误!未指定书签。
(一) 新建实体....................................... 错误!未指定书签。
(二) 新建实体属性................................... 错误!未指定书签。
五、建立表单布局..................................... 错误!未指定书签。
六、行为对象开发..................................... 错误!未指定书签。
(一) 表单开发....................................... 错误!未指定书签。
(二) 列表开发....................................... 错误!未指定书签。
(三) 生单二次开发................................... 错误!未指定书签。
(四) 联查报表....................................... 错误!未指定书签。
(五) 联查UAP列表................................... 错误!未指定书签。
U8UAP开发手册
UAP开发样例指导用友研发中心 U8平台技术部<本文档适用于U871版本>目录一、摘要 (3)二、样例开发前提 (3)三、建立UAP项目 (3)四、建立表单模型 (5)(一) 新建实体 (6)(二) 新建实体属性 (8)五、建立表单布局 (14)六、行为对象开发 (15)(一) 表单开发 (17)(二) 列表开发 (29)(三) 生单二次开发 (35)(四) 联查报表 (37)(五) 联查UAP列表 (38)(六) UAP列表联查U8单据 (38)(七) 用户自定义控件开发 (42)(八) U8单据引用UAP档案 (43)七、行为对象注册 (56)功能介绍: (56)使用说明: (56)应用技巧: (58)八、建立数据引擎 (59)功能介绍: (59)使用说明: (60)应用技巧: (82)九、设置过滤条件 (82)功能介绍: (82)使用说明: (82)应用技巧: (87)十、设置栏目 (88)功能介绍 (88)使用说明 (88)应用技巧 (89)十一、权限 (89)功能权限 (89)记录级权限 (90)字段级权限 (91)十二、部署 (92)附录:功能介绍 (93)1、行为对象升级说明 (93)2、LoginInfo 对象介绍 (95)一、摘要本文以U8-ERP中的销售订单为应用原型,介绍了如何通过UAP进行软件开发,文中给出了开发方法和丰富样例。
内容包括:UAP表单开发原理UAP项目的建立和导入、导出UAP表单的模型设计和布局设计UAP表单的行为对象开发UAP表单列表设计与开发UAP表单列表的行为对象开发如何对UAP表单的缺省按钮进行扩展性开发如何对UAP表单的缺省按钮进行取代性开发如何为UAP表单增加新的按钮及行为如何用程序代码调用UAP报表如何用程序代码调用UAP表单列表如何在UAP表单中增加权限控制:功能权限、字段权限、记录权限如何为UAP表单开发自定义控件如何开发树形档案如何维护UAP数据引擎如何维护栏目如何维护过滤条件如何调用U8APIU8单据自定义项如何引用UAP档案本文档中使用的示例文件为“销售订单二次开发”,可以通过UAP将该文件导入到帐套中。
U8门户开发手册(内部资料)
U8门户开发手册1. 功能概述如何使伙伴二次开发的程序很好地和U8产品集成在一起?需要满足什么条件的程序才能和门户集成?如何开发一个满足这个条件的程序?本文将为您解答这些问题。
2。
名词解释2.1菜单调整工具功能:调整菜单位置;新增、修改、删除菜单(除U8系统菜单外)。
菜单调整工具在UAP中,通过菜单“工具-〉菜单调整工具"进入。
2。
2 idt.dll文件位置:在U8安装目录的Portal目录里.该文件其实是一个xml文件,可以用任何文本编辑器打开。
其内容描述了双击每个末级菜单项目时需要调用的物理程序。
在872版本里,idt。
dll并不在安装盘里,而是U8门户第一次运行时通过UFSystem.。
UA_IDT表里的内容动态生成的。
当UFSystem。
UA_IDT有变化时,U8门户会重新生成idt.dll文件.有了这种机制后,菜单调整工具就可以通过维护UFSystem..UA_IDT里的内容,从而达到维护idt.dll的目的.3. 如何开发可与门户集成的VB dll3.1代码修改3.1.1引用工程UFPortalProxyInterface文件位置:U8安装路径\Portal\UFPortalProxyInterface。
dll3。
1。
2相关代码修改clsProductFacade文件为门户的入口文件,即在idt。
dll文件后assembly项所对应的类名。
如下所描述的:<idt id=’Test01’ type=’0’ assembly='TestU8Prj。
clsProductFacade'/〉首先,idt。
dll中assembly属性描述的对应类要实现接口ILoginalbe。
比如idt.dll中描述了如下信息:〈idt id=’Test01’ type='0' assembly=’TestU8Prj.clsProductFacade’/〉则要在clsProductFacade中实现ILoginable接口。
U8界面按钮二次开发手册
U8界面按钮二次开发手册适用范围U8ToolBar原则上都可以支持二次开发行为,但由于某些界面没有这方面的需求,所以并没有支持二次开发功能如何检查是否支持二次开发在一个界面上同时按住Ctrl+Shift 并点击任何一个按钮,这样你所需要的信息将被Copy 到写字板(附件中的写字板)上,(注意不是记事本notepad)。
数据预置数据预置在Meta库中的Meta数据库,表AA_CustomerButton中。
销售订单的数据预置脚本销售订单的保存按钮后面增加一个按钮的脚本INSERT INTO [AA_CustomerButton]([cButtonID], [cButtonKey], [cButtonType], [cProjectNO], [cFormKey], [cVoucherKey], [cKeyBefore], [iOrder], [cGroup], [cCustomerObjectName], [cCaption], [cLocalelD], [cImage], [cToolTip], [cHotKey], [bInneralCommand], [cVariant], [cVisibleAsKey], [cEnableAsKey])VALUES(newid(), 'btntest','default', 'U8CustDef,'17', '17','save', '0', 'IEDIT','',' 测试','zh-cn','',' 测试','Ctrl+N',1,' 测试数据','save','save')注意:类需要注册,否则会报ActiveX不能创建对象。
U8工作流开发手册
工作流开发手册1 功能介绍:工作流系统是以规格化的流程描述作为输入的软件组件,它维护流程的运行状态,并在人和应用之间分派活动、最终达到协同多人或服务共同完成工作任务的目的。
2 使用过程:工作流系统的使用过程分为三个阶段:设计时、配置时、运行时;设计时阶段需要完成流程模型设计;配置时阶段需要完成工作流系统运行环境的配置、工作流模型发布及版本管理等工作;运行时阶段需要负责发起和完成流程实例等工作。
U8系统安装完毕后,首先需要进入工作流环境配置模块设置MOM服务器和工作流引擎信息;配置的信息会通知到对应的MOM服务器,使得MOM服务器感知与其协同工作的工作流引擎信息。
配置时涉及的功能模块及运行时的流程实例管理模块存在于工作流管理控制台中。
环境配置完毕后,可以进行流程模型设计工作。
通过流程设计器,设计过程中结合UAP工具中设计出来的业务对象和注册在MOM服务器上的消息和服务信息,生成流程模型。
流程设计器设计出来的流程模型还不能直接投入使用,需要通过重定位模块对其消息和服务地址信息从设计时环境的地址转化为运行时地址后,才能正式使用。
重定位模块通过“流程发布”动作来完成该动作的。
流程模型发布后,业务应用就可通过消息发送接口发送特定类型的消息,消息通过MOM服务器通知工作流引擎,生成对应的流程实例,在流程实例处理过程中调用业务服务、生成需要人工交互的任务项、并最终协调完成流程实例的处理。
流程实例可以被流程实例管理模块加以管理、修改。
3 开发帮助基于新的工作流平台之上的审批流应用,利用UAP的数据引擎、MOM消息发布订阅和消息转发功能来完成审批这一类特殊流程的管理、配置、设计、使用、维护、监视操作。
下图是工作流系统使用流程图:在上述流程涉及到业务系统开发人员的活动中,服务开发、服务注册、预制业务对象、编写预制运行时活动插件、编写客户端审批提交代码等工作是在业务模块中实现审批功能都可能涉及的动作。
3.1开发与注册服务本处服务是指业务部门提供能、为了能满足特定业务功能而实现的组件中的方法;这些服务可在流程设计过程中运用于流程模型,体现为流程模型中的自动服务。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
U8门户开发手册1. 功能概述如何使伙伴二次开发的程序很好地和U8产品集成在一起?需要满足什么条件的程序才能和门户集成?如何开发一个满足这个条件的程序?本文将为您解答这些问题。
2. 名词解释2.1菜单调整工具功能:调整菜单位置;新增、修改、删除菜单(除U8系统菜单外)。
菜单调整工具在UAP中,通过菜单“工具->菜单调整工具”进入。
2.2 idt.dll文件位置:在U8安装目录的Portal目录里。
该文件其实是一个xml文件,可以用任何文本编辑器打开。
其内容描述了双击每个末级菜单项目时需要调用的物理程序。
在872版本里,idt.dll并不在安装盘里,而是U8门户第一次运行时通过UFSystem..UA_IDT表里的内容动态生成的。
当UFSystem..UA_IDT有变化时,U8门户会重新生成idt.dll文件。
有了这种机制后,菜单调整工具就可以通过维护UFSystem..UA_IDT里的内容,从而达到维护idt.dll的目的。
3. 如何开发可与门户集成的VB dll3.1代码修改3.1.1引用工程UFPortalProxyInterface文件位置:U8安装路径\Portal\UFPortalProxyInterface.dll3.1.2相关代码修改clsProductFacade文件为门户的入口文件,即在idt.dll文件后assembly项所对应的类名。
如下所描述的:<idt id=’Test01’ type=’0’ assembly=’TestU8Prj.clsProductFacade’/>首先,idt.dll中assembly属性描述的对应类要实现接口ILoginalbe。
比如idt.dll中描述了如下信息:<idt id=’Test01’ type=’0’ assembly=’TestU8Prj.clsProductFacade’/>则要在clsProductFacade中实现ILoginable接口。
即用代码:Implements UFPortalProxyInterface.ILoginable然后在该接口的实现函数中转发调用原先工程中的Login,CallFunction,Logoff三个方法,具体参见后附的例子。
在左树启动一项命令时依次调用Login和CallFunction。
在门户退出或在权限管理中结束该产品时调用LogOff。
子系统必须自己维护是否已经进行了子系统登录过程,业务系统须维护子系统是否已经登录。
Login对象从g_business中通过调用GetVBclsLogin方法获得。
各接口含义如下:1、Login接口( Private Function ILoginable_Login() As Boolean ),不管弹出的是模式窗体还是非模式窗体,此接口在成功登录后须返回True,而且要保证登录成功后,第二次调用此接口时也要返回True。
只有在登录失败后方可返回False。
也就是说此接口返回值的含义是是否已经成功登录子系统。
2、LogOff接口( Private Function ILoginable_LogOff() As Boolean ),此接口的含义是执行LogOff过程,如查成功使该子系统牌LogOff状态返回True,否则返回False。
也就是说,如果该子统还未登录,则真接返回False就可以了。
如果系统处于已经登录的过程,则执行业务组原有所需的LogOff过程,如果执行功能,正确LogOff了子系统,则返回True,否则返回False。
如果在实际程序中没有此过程,则直接返回True即可。
3、CallFunction接口(Private Function ILoginable_CallFunction() As Boolean)。
如果861产品没有子系统登录过程的产品,此值须返回True.4、对于显示模式窗体的产品,如果已经申请了任务,请在模式窗体退出时自已清除任务。
实现这三个方法的例子如下:Private Function ILoginable_Login() As BooleanIf g_bLogined = True ThenILoginable_Login = TrueExit FunctionEnd IfIf ((Not g_business Is Nothing) And g_bLogined = False) Then Dim oLoginTmp As ObjectSet oLoginTmp = g_business.GetVBclsLogin()Set g_oLogin = oLoginTmpILoginable_Login = Login(oLoginTmp)If (ILoginable_Login = True) Theng_bLogined = TrueEnd IfElseILoginable_Login = Not g_business Is NothingEnd IfEnd FunctionPrivate Function ILoginable_LogOff() As BooleanIf (g_bLogined = True) ThenILoginable_LogOff = LogOff()If (ILoginable_LogOff = True) Then g_bLogined = FalseEnd IfElseILoginable_LogOff = TrueEnd IfEnd Function3.1.2.1增加Business属性可读可写,且对大小写敏感。
此属性维护一个对于此业务工程全局变量,以实现和VB程序和870Portal的交互。
参考实现如下:Public Property Get Business() As ObjectSet Business = g_businessEnd PropertyPublic Property Set Business(busVal As Object)Set g_business = busValEnd Property3.1.2.2增加全局变量新建一module文件,并加入如下全局变量:Public g_business As ObjectPublic g_bLogined As Boolean3.1.3三种窗体3.1.3.1修改嵌入Portal的窗体文件原来有MdiExtender控件的窗体要嵌入Portal的窗体修改方法:调用CreateFormEnv方法调用ShowForm方法每个窗体都要有方法ExitForm3.1.3.2修改第一次弹出就是模态的窗体可以直接使用通过采用VB窗体的Form.Show (vbModal)的方式,也调用ShowForm方法来显示此窗体。
3.1.3.3由嵌入Portal的窗体弹出的窗体,不作修改,如果是模式窗体,请在此窗体上加入UFFormPartner控件3.1.4 UFToolbar的修改3.1.4.1在Settoolbar之前将g_business传入3.1.4.2在Settoolbar之前设置Tag信息设置微软Toolbar每个Button的Tag信息调用CreatePortalToolbarTag方法设置示例button.Tag =CreatePortalToolbarTag(“ICON_NEW”,”ICOMMON”,”PortalToolbar”) 注意:严禁创建多次3.1.4.2.1图标人机工程部给出完整的图标,并制定相应文件的命名规格放在%U8SOFT%的icons目录下直接使用图标的文件名(不需扩展名)3.1.4.2.2分组常用(ICOMMON):如打开、保存等编辑(IEDIT):如增行、拷贝单元格等处理(IDEAL):如审核、分单等查询(ISEARCH):如过滤、联查等3.1.4.2.3类型PortalToolbar,目前填入此值即可。
3.1.4.3在窗体的Unload事件中加入Set UFToolbar1.Business = Nothing3.1.5中间过程3.1.5.1判断窗体是否打开FormIsOpened3.1.5.2设置并激活某个已经存在的窗体SetFormActive3.1.5.3在显示过程中(窗体已经显示)关闭自身窗体CloseForm3.2常见问题程序已经修改,双击门户节点时没有反应,调用状态进不了VB程序;未正确修改clsProductFacade文件;窗体已经嵌入到Portal中,但Toolbar的相关信息未转移到门户的工具栏上;是否正确设置了每个Button的Tag信息;3.3参考3.3.1 ShowForm显示嵌入Portal的窗体Public Function ShowForm(ByVal obj As Object, ByVal SubID As String, ByVal sKey As String, Optional modalable As Boolean = False, Optional DockToProtal As Boolean = True, Optional ByVal vfd As Object) As Stringobj: Form对象;SubID: 子产品号;sKey: Key,注意不能是form的Hwnd,在窗体的生命周期中,此值必须唯一;modalable: 该窗体是否为Model窗口;DockToProtal : 是否要嵌入到Portal中;vfd: 由CreateFormEnv对象的返回对象;3.3.2 CreateFormEnv初始化嵌入Portal的环境Public Function CreateFormEnv(ByVal sKey As String, ByRef formObj As Object) As VBFormDescriptorsKey: Key,注意不能是form的Hwnd,在窗体的生命周期中,此值必须唯一;formObj: Form对象3.3.3 CloseForm关闭一个已经打开的窗体Public Function CloseForm(ByVal sKey As String, ByVal obj As Object)sKey: Key,注意不能是form的Hwnd,在窗体的生命周期中,此值必须唯一obj: Form对象。
3.3.4 FormIsOpened判断某个Key值的窗体是否已经打开Public Function FormIsOpened(ByVal sKey As String)sKey: Key,注意不能是form的Hwnd,在窗体的生命周期中,此值必须唯一;3.3.5 CreatePortalToolbarTag创建Toolbar的Tag信息Public Function CreatePortalToolbarTag(Image As String, actionSet As String, toolbarType As String) As StringImage按钮的图片actionSet分组toolbarType分组Toolbar的类型3.3.6 SetFormActive使某个窗口成为当前窗口Public Function SetFormActive(ByVal sKey As String, ByVal obj As Object)sKey: Key,注意不能是form的Hwnd,在窗体的生命周期中,此值必须唯一obj: Form对象3.4挂接菜单4. 如何开发可与门户集成的.NET User Control.net user control 与门户集成需要建立实现INetUserControl 接口的组件4.1通过 建立一个项目类型为类库的项目此处项目名称为ProductSample4.2继承门户中类NetLoginable在该项目中添加以下DLL的引用Windows.Form.dllU8安装路径\Framework\UFSoft.U8.Framework.Login.UI.dllU8安装路径\Interop\Interop.U8Login.dllU8安装路径\Interop\ Interop.UFPortalProxyInterface.dllU8安装路径\Portal\UFIDA.U8.Portal.Framework.dllU8安装路径\Portal\UFIDA.U8.Portal.Proxy.dllU8安装路径\Portal\mon.dll在项目中新建一个类,该类需要继承类NetLoginable,并重写其中的两个方法,示例如下:public override object CallFunction(string cMenuId, string cMenuName, string cAuthId, string cCmdLine){INetUserControl mycontrol = new MyNetUserControl();mycontrol.Title = "SSSS";base.ShowEmbedControl(mycontrol, cMenuId, true);return null;}public override bool SubSysLogin(){Return true;}4.3 实现接口INetUserControl在项目中再新建一个类,该类实现接口INetUserControl,INetUserControl接口有三个属性(EditorPart、EditorInput、Title)和三个方法(CreatControl、CreatToolbar、CloseEvent),详细说明:4.3.1 EditorPart属性原型声明:NetEditor EditorPart { get;set;}对于二次开发人员,这个是只读属性,严禁为该属性赋值。