电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

U9技术文档-范例-U9研发体系(前台调用BP取数).PDFVIP免费

U9技术文档-范例-U9研发体系(前台调用BP取数).PDF_第1页
1/12
U9技术文档-范例-U9研发体系(前台调用BP取数).PDF_第2页
2/12
U9技术文档-范例-U9研发体系(前台调用BP取数).PDF_第3页
3/12
前台调用 BP 取数 版 本 号 :V1.0 作者:张刘剑 版本记录 【此部分要记录该文档形成过程中的历次版本变更过程及变更的内容】 版本 修改与参与人 修改时间 修改原因 修改概述 审批人1.0 张刘剑 2008/07/1 原始文档建立 一、 问题域说明 本范例描述前台如何实现调用后台数据操作; 例如在 UI 项目中你得到一个员工 ID,这时你想知道这个员工的姓名,但在前台数据中没有,为取得员工姓名你需要开发一个后台 BP 实现通过员工 ID 返回员工姓名的操作。 二、 基本原理 概念 BP BP 业务操作:英文全称 Business Process,领域模块中的业务逻辑对象,用于描述对象行为,如审核、检查库存、检查信用额度等。 DTO DTO 数据传输对象:英文全称 Data Transient Object,领域模型中数据传输对象,用于 BP、Servie 的传入参数、返回参数,不参与持久化。 BP 传入参数类型 传入参数可分为 5 类: 简单系统类型:如整型、长整型、字符型等 BE 数据对象:如人员,联系对象,会计期间等 DTO 类型:根据业务需求自定义 DTO 对象 集合类型:特定类型的集合 实体 KEY : 特定类型的 Key 类型,继承 UFSoft.UBF.Business.BusinessEntity.EntityKey 枚举类型:如员工类别、性别等 BP 返回参数类型 与 BP 传入参数一致 BP 产出 BP DLL:如 UFIDA.U9.XXXBP.dll BP Agent DLL:如 UFIDA.U9.XXXBP.Agent.dll BP Deploy DLL: 如 UFIDA.U9.XXXBP.Deploy.dll BP ubfsvc 配置文件 UFIDA.U9.XXXBP.ubfsvc 三、 关键代码及说明 样例 设计一个 BP,通过员工 ID 获取员工姓名、性别。 设计 BP 新建 BP 组件 步骤 1:右击 BP 组件树,在弹出菜单选择新建 步骤 2:输入业务组件名称,确定 步骤 3:切换到模型视图界面,选中组件命名空间,然后切换到属性视图,按规范修改命名空间(如 UFIDA.U9.CBO.HR.Person) 添加 DTO 步骤 1:添加 DTO 模型图,如果有了跳过该步骤 步骤 2:从操作定义工具中拖入一个数据传输对象到模型图,选中并在属性视图修改名称、现实名称和描述 步骤 3:增加 DTO 属性,在模型图中选中 DTO,在详细信息视图中添加属性 添加操作 步骤 1:双击打开模型图,从操作定义工具中拖入一个操作,并选中在属性视图修改名称、显示名称和描述 步骤2:设置 BP 传入参数,在模型图中选中 BP,在详细信息视图中添加传入参数 注:实体 Key 类型是在类型选择将将实体 Key 复选框选中 步骤3:设置 BP 返回类型,在模型图中选中 BP,在属性视图设置返回类型 构造,生成代码 选中 BP 项目,右击菜单选构造 修改代码添加操作业务逻辑 打开生成的 VS 工程项目,修改 BP 实现策略代码,然后编译 namespace UFIDA.U9.CBO.HR.Person { using System; using System.Collections.Generic; using System.Text; using UFSoft.UBF.AopFrame; using UFSoft.UBF.Util.Context; /// /// GetPersonNameSex partial /// public partial class GetPersonNameSex { internal BaseStrategy Select() { return new GetPersonNameSexImpementStrategy(); } } #region implement strategy /// /// Impement Implement /// /// internal partial class GetPersonNameSexImpementStrategy : BaseStrategy { public GetPersonNameSexImpementStrategy() { } public override object Do(object obj) { GetPersonNameSex bpObj = (GetPersonNameSex)obj; if( bpObj.PersonKey == null || bpObj.PersonKey.ID <= 0 ) return null; //通过人员实体Key获取人员对象 UFIDA.U9.CBO.HR.Person.Person o = UFIDA.U9.CBO.HR.Person.Person.Finder.FindByID(bpObj.PersonKey); //对返回DTO赋值 PersonNameSexDTO dto = new PersonNameSexDTO(); dto.PersonName = o.Name; dto.PersonSex = o.Sex; return dto; } } #endregion } 部署 BP 产出 ...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

U9技术文档-范例-U9研发体系(前台调用BP取数).PDF

您可能关注的文档

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信