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

金蝶EAS Cloud BOS开发平台功能和基础业务详介.pptx

金蝶EAS Cloud BOS开发平台功能和基础业务详介.pptx_第1页
1/129
金蝶EAS Cloud BOS开发平台功能和基础业务详介.pptx_第2页
2/129
金蝶EAS Cloud BOS开发平台功能和基础业务详介.pptx_第3页
3/129
P1版权所有©1993-2012金蝶软件(中国)有限公司金蝶EASBOS开发平台技术支持部颜敬忠P2BOS产品概述业务建模工具设计开发工具编码规则权限控制单据转换二次开发案例纲要P3–了解BOS平台的技术架构,掌握BOS平台基础功能–掌握BOS业务建模和开发工具的使用–掌握BOS平台的单据转换、编码规则、权限等基础业务功能–学习BOS平台开发业务应用系统的案例课程收益P4BOS开发平台概述金蝶BOS定义KingdeeBusinessOperatingSystem金蝶业务操作系统•开放的集成与应用平台•金蝶ERP解决方案•合作伙伴解决方案、客户定制应用的技术平台P5企业信息化需要解决的问题有效集成有效集成随需应变随需应变提高效率提高效率123企业的管理模式(组织结构、业务流程变化)随着企业迅速发展而变化企业的管理优化亟待软件的持续完善;在管理的深度上需要加强(行业特性、个性化)集团企业存在多个系统,但各自封闭、应用分割各个系统间信息难以沟通带来信息反映片面,领导决策缺乏依据业务需求的不断变化,集成成为众多IT部门的一项无休止的重要任务软件开发效率低下,跟不上项目进度要求软件质量难以保证,经常出现BUG客户希望多关注业务逻辑,软件能快速实现P6集成信息平台的需求资产管理人力资源管理集团财务项目管理企业集成信息平台供应链管理客户关系管理电子商务系统办公自动化决策分析系统P7金蝶BOS平台解决方案BPR+通用产品无法满足个性化需求变革风险高+削足适屐总体拥有成本高标准套件+个性化定制预置丰富内容,能满足未来需要能快速适应变化,快速交付普遍人才即可驾驭能与其他业务有效集成较低的总体拥有成本资产管理人力资源管理集团财务项目管理企业集成信息平台供应链管理客户关系管理电子商务系统办公自动化决策分析系统完全项目开发周期长,难以适应企业快速变化人才“选育用留”成本高扩展性差,无法适应未来业务总体拥有成本高P8产品理念业务创新触手可行BOS(业务操作系统)是一个开放的集成以及应用平台,基于先进的TOGAF架构,是金蝶ERP解决方案、合作伙伴解决方案以及客户定制应用的业务创新平台。为部队面临转型调整的集团和企业快速简便实习业务创新,并能够与现有IT基础设施无法的协调运作。•整合集成:面对集团企业大量的信息孤岛,通过BOS实现人员、信息、流程的统一。实现业务的端到端执行。•业务创新:面对市场的快速变化,通过BOS企业动态建模,快速的构建新的业务系统,抓住机遇,助力企业转型战略落地。•灵活扩展:根据集团企业的行业特性,结合金蝶云端的预配置方案,简单的金鑫业务定制,调整业务组织,更新策略,优化流程,实现贴身易用的业务系统。•可靠运行:面对业务急速扩张,人员高速增长,通过运维平台的洞察与优化,保证业务的持续运行。P9金蝶BOS平台支撑业务蓝图BOS平台(业务建模、设计开发、流程建模、动态配置、基础引擎、门户服务、基础业务服务、移动服务、集成服务、安全服务、测试部署…)EAS标准产品(财务会计、供应链、人力资源、生产制造、协同、合并报表、BI、资金管理、预算…)行业产品行业产品(金融、冶金、餐饮、PLM、房地产、建筑、交通、零售、服装、4S…)企业客户化定制产品企业客户化定制产品(养殖、物流、考勤、油运、售楼、…)3G移动设备其他异构系统企业网银数据库服务器系统安全认证服务重点关注:性能稳定性易用性重点关注:集成性扩展性交付效率第三方产品/应用第三方产品/应用关注点关注点P10BOS开发工具概述金蝶BOS基础原理金蝶EASBOS在逻辑结构上将企业级应用的开发分成了三个模型层次•业务模型→业务建模工具•设计模型•实现模型P11BOS开发工具概述金蝶BOS基础原理金蝶EASBOS在逻辑结构上将企业级应用的开发分成了三个模型层次•业务模型•设计模型→设计开发工具•实现模型P12BOS开发工具概述金蝶BOS基础原理金蝶EASBOS在逻辑结构上将企业级应用的开发分成了三个模型层次•业务模型•设计模型•实现模型→JAVA视图P13版权所有©1993-2011金蝶国际软件集团有限公司金蝶BOS集成开发环境P14BOS开发工具概述金蝶BOS的工作原理元数据是用来描述业务数据模型结构的一种模型。BOS的元数据包括有解决方案、包、实体、关系、查询,数据表、功能、业务功能、枚举、异常等诸多元数据类型。P15业务建模工具业务建模工具是一个ERP业务建模工具是一个定制和扩展ERP系统的平台是金蝶BOS的一个组成部分,面向业务人员P16业务建模工具业务建模工具工作原理通过基础原理介绍,对业务建模工具的工作原理需要明确两个基本概念:•金蝶EASBOS在完成业务单元的定义后,需要通过“发布”和“部署”功能转化后才能在业务场景中使用的•金蝶EASBOS定义的应用是编译运行的,最终都将会转化成实现模型:Java代码、数据库定义、J2EE部署及BOS所独有的元数据(MetaData)P17业务建模工具业务建模工具特点避免繁复:•BIM有如下特点:•图形化的业务定义,所见即所得•对运行引擎进行了封装•与应用框架、单据转换平台无缝结合•支持绑定业务功能到业务流程•屏蔽了技术细节,用户只需从业务模型的角度来定制和扩展ERP系统,决定其适应面更广,更易用随需而变:支持用户自定义P18业务建模工具业务建模工具用途基础资料自定义、业务单据自定义定义资料的查询和过滤功能设置核算项目、设置薪酬项目、设置业务范围主菜单管理工具栏和菜单栏的菜单管理权限管理集成工作流、单据转换平台、编码规则P19建模工具详解-组别新增设计步骤:步骤1:选中某个目录,点鼠标右键,选择【新建】【业务组别】步骤2:定义业务组别P20建模工具详解-根据向导定义单据步骤1:业务单元管理视图鼠标右键,选择【新建】【业务单元】P21建模工具详解-根据向导定义单据步骤2:设置单据基本信息,输入单据的名称和别名P22建模工具详解-根据向导定义单据步骤3:业务类别选择业务单据,业务属性(即主业务组织),选择适当的业务类型步骤4:设置创建方式,选择复制基础模板P23建模工具详解-根据向导定义单据步骤5:模板选择“多分录单据基础模板”,此模板适用于单分录/多分录等各种情况,比较通用。P24建模工具详解-根据向导定义单据步骤6:选择模板字段,然后完成。P25建模工具详解-根据向导定义单据根据向导定义完成的单据初始界面P26建模工具详解-新增字段方式一:逐个新增点设计界面的单据头或单据体位置点鼠标右键,选择【新增字段】在字段定义窗口逐个新增字段P27建模工具详解-新增字段方式二:批量新增点设计界面的单据头或单据体位置点鼠标右键,选择【字段管理】批量新增字段•单据表头字段•分录字段P28建模工具详解-新增字段方式三:复制新增对于属性接近的字段可以进行【复制新增】P29建模工具详解-数据来源新增字段中字段来源:手工录入:用户直接录入基础资料类别:系统中定义的基础资料已有基础资料相关属性:业务单元上已有基础资料的属性固定下拉列表:系统中定义的枚举(包括自定义枚举)其他业务单元:系统中定义的其他的业务单元P30建模工具详解-手工录入字段来源为手工录入的分为以下几种:文本日期小数整数数量金额单价备注布尔时间P31建模工具详解-基础资料及其属性步骤1:数据来源:选择【基础资料类别】P32建模工具详解-基础资料及其属性步骤2:基础资料:选择【F7】P33建模工具详解-基础资料及其属性步骤3:设置界面显示字段P34建模工具详解-已有基础资料相关属性数据来源:已有基础资料相关属性选择具体的基础资料P35建模工具详解-固定下拉列表数据来源:固定下拉列表选择具体得基础资料点击[F7],选择关联的枚举P36建模工具详解-枚举设计枚举包括系统默认的枚举用户自定义枚举设计步骤:步骤1:选择菜单上【业务单元】【枚举】步骤2:新增枚举步骤3:定义枚举类型步骤4:定义枚举项P37建模工具详解-枚举设计枚举定义P38建模工具详解-字段布局调整为使得业务单据界面美观及符合用户录入习惯,需要对界面字段的位置及录入顺序进行调整界面字段位置格式快速调整对齐左对齐右对齐居中对齐顶部对齐中间对齐底部对齐宽度相等高度相等规范化控件尺寸标签等宽多选控件之后,使用布局调整功能P39建模工具详解-字段录入顺序调整调整录入时TAB/回车切换顺序点鼠标右键,选择【字段管理】菜单切换到【录入顺序调整】页签调整字段录入顺序P40建模工具详解-字段查询顺序调整调整序时簿中字段显示顺序是否可见点鼠标右键,选择【字段管理】菜单切换到【查询顺序管理】页签调整顺序跟可见性P41建模工具详解-预留字段系统运行时通过“界面配置”功能使用点鼠标右键,选择【字段管理】菜单切换到【预留字段】页签点击【新增】编辑字段属性P42建模工具详解-常用属性设置从【大纲】中选择某个字段,并在【属性】窗口设置相关属性字段标题有关的属性:描述字段值录入控制有关属性:是否是必录项、自动校验必录项、默认值、可用(锁定)字段数值合计有关属性:编辑合计、列表合计字段的可见性有关属性:录入可见、查询可见、在通用过滤中显示、是否在通用过滤中参与排序P43建模工具详解-常用属性设置字段属性设置大纲或者编辑界面选中某“字段”,“属性”视图中设置字段各属性P44建模工具详解-字段管理—F7过滤自定义的基础资料可以在F7中以树型结构出现,由系统后台自动实现F7按主业务组织和用户权限范围过滤,通过新增业务组织关联字段,由系统在后台实现F7可定义过滤条件P45建模工具详解-事件管理—事件触发对某控件,可以在以下情况设置触发事件(保存、更新、加载)P46建模工具详解-事件管理—操作分类定义指定字段计算公式设置功能属性单据合法性校验携带关联资料属性到指定字段设置字段属性根据关联资料属性设置字段精度P471、选中字段2、指定规则3、新增事件建模工具详解-事件管理—事件定义步骤1、选中某个字段2、指定规则事件3、新增事件操作P48建模工具详解-事件管理—事件定义4、定义事件操作类型和逻辑P49建模工具详解-事件管理—操作分类系统预定义的事件操作类型I定义指定字段计算公式:为需要重新计算的字段指定一个计算公式•比如:金额=数量x建议采购单价•则“金额”的值随着“数量”和“建议采购单价”的值的改变而改变。由此可判断事件应该定义在公式右侧的字段“数量”和“建议采购单价”上;事件的触发时机在“更新”事件上。P50建模工具详解-事件管理—操作分类系统预定义的事件操作类型II单据合法性校验:对字段的录入值进行校验,判断是否符合需求描述根据关联资料属性设置字段精度:选择关联资料,将其属性设置另一数值型字段的精度。•比如金额的精度是由币别的属性——精度决定的。当币别发生变化时,币别的精度随之发生变化,同时此精度影响到金额的精度一并发生变化.因此此事件触发在“更新”事件上,事件的触发位置在“币别”字段上P51建模工具详解-事件管理—操作分类系统预定义的事件操作类型III设置字段属性:设置字段的可见性或可用性携带关联资料属性到指定字段:选择基础资料,将其属性设置另一字段的值•此事件触发位置在被引用的基础资料上,触发在更新事件上;当该基础的值发生变化时,它的一个相关属性的值同时也在变化,并赋值给被设置的字段。P52建模工具详解-菜单管理菜单管理菜单栏工具栏P53建模工具详解-主菜单管理设计业务单元与界面菜单的绑定通过BIM设计EAS主控台界面的菜单,包括菜单组和菜单项,在业务单元发布后,将直接写入对应的数据库中去菜单【方案】【主菜单管理】P54建模工具详解-主菜单管理P55建模工具详解-主菜单管理-设置菜单组建立菜单分组在根菜单下建立“案例演示”菜单组1、选中【根菜单】2、点击【新建菜单组】3、输入名称P56建模工具详解-主菜单管理-设置菜单项在菜单组下增加菜单项1:点【新增菜单项】按钮2:设置菜单项名称3:选择关联的业务单元4:设置状态5:设置权限P57选择刚才新建的“采购订单”建模工具详解-主菜单管理-设置菜单项在菜单组下增加菜单项选中“案例演示”,执行【新建菜单项】然后输入名称“浏览”绑定对应的业务单元P58建模工具详解-发布定义完的元数据可以即时发布“业务单元管理”选中单据并右键“发布业务单元”注:发布时要把它引用的业务单元先发布发布过程包含的功能:发布之前计算、装载业务单元相关元数据发布相关元数据,包括校验、发布生成代码生成部署文件,生成相关的属性文件编译代码生成数据库升级脚本(根据目标数据库的内容)执行数据库脚本生成、更新表结构还包括做发布记录等相关内容P59建模工具详解-发布定义完的元数据可以即时发布P60建模工具详解-测试两种测试方式:界面测试,不登陆BOS主框架,不需加主菜单启动测试,需登陆BOS主框架,需要加主菜单P61建模工具-动手实践新建物料:类型:基础资料字段:编码、名称、物料产地、物料规格新建币别:类型:基础资料字段:编码、名称、ISO编码、计量单位、精度采购申请单:类型:业务单据字段:申请编码、申请人(base\permission\user.bizunit)、供应商(supplier.bizunit)、新建币别、申请时间、申请状态分录:物料编码、物料名称、物料规则、申请数量、已定货数量、建议采购单价、总金额采购订单:类型:业务单据字段:订单编码、采购员(base\permission\user.bizunit)、供应商(supplier.bizunit)、新建币别、业务日期、付款方式(固定下拉框)、汇率分录:物料编码、物料名称、物料规则、采购数量、单价、总金额P62元数据是BOS的核心,元数据的设计与管理需通过设计开发进行BIM虽可生成相应元数据,但其功能也是有限的,对于繁杂的元数据应功能的定义需通过设计开发工具进行,如特殊用户界面、Query及其他元数据的定义。元数据是BOS的核心,元数据的设计与管理需通过设计开发进行BIM虽可生成相应元数据,但其功能也是有限的,对于繁杂的元数据应功能的定义需通过设计开发工具进行,如特殊用户界面、Query及其他元数据的定义。为什么需要设计开发工具设计开发工具P63各项元数据的定义,主要包括:实体、实体关系、数据表、查询、用户界面、功能对象、业务功能、枚举、异常、权限、多语言资源、规则、业务数据类型日志等。各项元数据的导入、导出元数据的校验及发布业务建模工具与设计开发工具关注同一元数据,只是处于不视图各项元数据的定义,主要包括:实体、实体关系、数据表、查询、用户界面、功能对象、业务功能、枚举、异常、权限、多语言资源、规则、业务数据类型日志等。各项元数据的导入、导出元数据的校验及发布业务建模工具与设计开发工具关注同一元数据,只是处于不视图设计开发工具能做什么设计开发工具P64设计开发工具-元数据介绍元数据是用来描述业务数据模型结构的一种模型数据。BOS的元数据包括有解决方案、包、实体、关系、查询,数据表、功能、业务功能、枚举、异常等诸多元数据类型。实体(Entity)和关系(Relationship)实体:实体对象是元数据模型的核心内容,数据对象、查询对象、实体界面对象等其他对象均附属或依赖于他。实体对象是数据存储的一个逻辑视图,它对应于业务系统中的实体类,指的是可永久存储的数据对象。关系:关系是指实体对象之间的连接关系。关系可以用连接(Link)来描述。关系一般分为以下几种:继承(Implementation)、关联(Association)、组成(Composition)从数据库操作的角度看,关联、聚合和组合关系之间的唯一不同是对象相互之间的绑定程度:组合通常需要整体的读取、保存和删除。P65设计开发工具-元数据介绍数据表(Table)数据表:数据表(Table)是与关系型数据库中对应的数据实体表。数据表在元数据模型分为三类:普通类型:作为实体对象主表的数据表。交叉类型。当两个业务对象间存在多对多的关系时,映射到E—R关系时,需要有一个单独的表来存储关联关系。扩展类型:扩展表可以将实体映射到不同的数据表中。当一个业务对象的内容在物理上无法在一张表中完全存储时(数据库的列个数/总宽度的限制,或者当表中有数据时限制对表结构的更改),就需要用扩展表来完成存储。这样不至于在逻辑上人为地将业务对象割裂。P66设计开发工具-元数据介绍查询(Query)查询:BOS中的Query对象是实体对象的查询视图,可以在数据访问过程中只获取视图中指定属性的数据,并按照过滤、排序条件进行数据的过滤和排序。Query对象的数据组织形式是二维模型的,Query对象可以分为连接查询对象(JoinQuery)和联合查询对象(UnionQuery)。在一个连接查询对象中可以包含多个子对象:实体(Entity)或者其他的查询对象(SubQuery称为子查询),但是在一个连接查询对象中有且仅有一个主对象。在一个联合查询对象中,包含的子对象都必须是一个(SubQuery称为子查询),并且联合查询对象默认第一个选中的子对象为主对象。用户界面(UI)用户界:用户界面是对人机交互界面的抽象性描述,记录了一个界面内有什么控件、控件的各属性值是多少、控件是如何布局、界面的多语言等信息。P67设计开发工具-元数据介绍枚举(Enumeration)枚举:枚举是一种常用的数据类型,用于定义例如性别、血型、单据状态等。枚举元数据的发布的类名这个属性是生成的枚举类名称,允许与枚举元数据的名称不同。权限(Permission)权限:权限是用于对使用者使用功能或数据的一种控制手段。通过定义权限,可以对菜单显示、界面功能操作、及后台数据操作进行使用限制。权限元数据是权限项的一个集合,权限项是定义权限的最小单位。业务功能(Function)和功能(Facade)业务功能(Function)是对运行系统的Entity对象、UI对象及其方法的一定封装,供其它模块或二次开发使用,目前业务功能的主要使用对象为工作流和后台事务。功能对象(Facade)是相对与实体对象而言的,它是只包含操作的Interface类或操作多个实体的BusinessFaçade类。区别:功能(Facade)与业务功能(Function)相似,区别在于功能的操作不绑定到实体,而业务功能的操作需要绑定到某个实体。因此在依赖于某个实体的处理,例如单据的审核操作,使用业务功能(Function),而不依赖于具体实体的处理,例如月末结账,使用功能(Facade)。P68设计开发工具-动手实践采购申请单:列表显示”申请人”的”组织范围、”供应商”的编码。更改列表界面和编辑界面的标题。采购订单:列表显示”采购员”的”组织范围、”供应商”的编码。更改列表界面和编辑界面的标题。将描述字段从编辑界面中删除。P69BOSStudio常用类说明第一个:IPurOrder作为创建,更新及其他操作‘采购订单’实体对象的接口。获得IPurOrder的实例:IPurOrderiPurOrder=PurOrderFactory.getRemoteInstance();第二个:PurOrderInfo对于值对象,都从BillBaseInfo继承,其中BillBaseInfo包含单据基本信息所需要的属性,PurOrderInfo类添加了对于特定的实体对象的属性。第三个:PurOrderFactory作为辅助工具类(helper)屏蔽后台屏蔽后台操作,提供静态方法,方便用户创建IPurOrder接口,该类继承自Object:常用创建方法:PurOrderFactory.getRemoteInstance();PurOrderFactory.getLocalInstance();以上方法均返回接口IPurOrder,通过该接口可以创建、更新、删除、查询‘采购订单’实体对象的值对象‘PurOrderInfo’。P70BOSStudio常用类说明第四个:PurOrderControllerBean作为‘采购订单’实现类:专注于业务逻辑的实现。第五个:PurOrderEditUI、PurOrderListUI用户界面类,包含客户端的业务逻辑控制代码其它:Abstract*对应同格式类名的抽象类,在每次发布的时候会重新生成。开发修改java代码一般只需要修改这三个java文件的代码:*EditUI.java、*ListUI.java、*ControllerBean.java。确切的说我们需要修改的java类主要包括*ControllerBean,*EidteUI,*ListUI结尾的非抽象类。P71BOSStudio代码调用过程在采购订单例子中,例如新增一条‘采购订单’信息,Step1:用户打开‘采购订单编辑界面’(系统调用PurOrderEditUI.class)Step2:录入相关信息Step3:保存,PurOrderEditUI先进行合法性校验Step4:调用PurOrderEditUI的storeFields方法将值填入editDataStep5:应用框架调用PurOrderFactory类创建IPurOrder接口Step6:应用框架调用IPurOrder接口以editData值对象为参数调用addNew远程方法Step7:应用框架调用PurOrderControllerBean的addNew方法,完成新增操作P72BOSStudio-常见扩展点服务端常见扩扩展点:addnew:新增数据时调用delete:删除数据时调用save:保存数据时调用submit:设置业务数据生效,并保存时调用getValue:获取业务数据时调用passAudit:审核通过时调用P73BOSStudio-常见扩展点客户端常见扩扩展点:loadFields:将业务数据装载到控件delete:删除数据时调用submit:提交业务数据时调用afterActionPerformed:在每个Action动作之后调用beforeActionPerformed:在每个Action动作之前调用storeFields:从控件中获得最新的业务数据applyDefaultValue:设置默认值到数据对象afterSelectLine:在选中分录行后调用afterRemoveLine:在删除分录行后调用P74BOSStudio-常见扩展点客户端常见扩扩展点:checkSelected:判断是否选中行getSelectedKeyValue:获取选中行的IDinitDefaultFilter:设置默认条件refresh:刷新表格数据refreshList:序事薄刷新P75BOSStudio-常用代码1.设置是否在调入列表界面之前先出过滤框protectedbooleaninitDefaultFilter(){returntrue;}2.客户端环境工具类com.kingdee.eas.common.client.SysContext;静态存储用户当前登录信息,登录的当前组织信息(ContextUtil在服务端使用)获得当前用户的环境变量Contextctx=SysContext.getSysContext();获得当前财务组织,其他组织如:销售等也可从环境变量中取得SysContext.getSysContext().getCurrentFIUnit();取得用户信息:SysContext.getSysContext().getCurrentUserInfo();P76BOSStudio-常用代码3.SysUtil.abort()停止当前UI的所有操作,或终止服务端方法。4.接口方法的访问方式•客户端访问CurrencyInfocur=newCurrencyInfo();ICurrencyc=CurrencyFactory.getRemoteInstance();//建立实体对象c.getCurrencyCollection();•服务端访问CurrencyInfocur=newCurrencyInfo();ICurrencyc=CurrencyFactory.getLocalInstance(ctx);//建立实体对象c.getCurrencyCollection();5.关联的编辑UI对象名//返回编辑UI的整个路径名,方便在LIST界面调用对应的编辑界面getEditUINameP77BOSStudio-常用代码6.监听this.promtF7.addChangeListener(newjavax.swing.event.ChangeListener(){publicvoidstateChanged(javax.swing.event.ChangeEvente){try{myStateChanged(e);}catch(Exceptionexc){handUIException(exc);}finally{}}});7.监听消息提示框com.kingdee.eas.util.client.MsgBox该工具类拥有多个方法,根据不同的需要调用方法,只能在客户端使用。P78BOSStudio-常用代码消息提示框例子:P79BOSStudio-动手实践采购申请单:通过代码实现”申请状态”的默认值设为制表。实现审核功能,审核功能为将申请单的申请状态设为”下达”。采购订单:。P80编码规则概念编码业务单据都需要一个具有数字含义,同时参杂着重要信息的编号,作为单据的唯一的、有意义的标识,这个标识符,就是编码。编码规则如何在应用系统中,有效的管理、控制和应用这些编码?我们需要统一的编码生成策略并进行管理,这个编码生成策略,称作编码规则。P81编码规则-主要属性固定值:标识编码业务对象的含义,可以由用户按自己的设计要求,定义固定值的具体内容:通常为英文缩写或中文缩写,例如:借款单-20051115-001LRB-20051115-001属性值:用户可以将当前业务对象的属性参与编码。系统日期:用户可以将当前的时间加入到编码中,而且我们可以提供各种不同的时间格式供用户选择。系统属性:用户可以将当前系统属性加入到编码中,例如创建时间,修改时间。顺序号:由数字组成,如001,002,003等,顺序号不会重复。P82编码规则-主要属性初始值:顺序号起始的数值步长:业务对象递增编码的顺序号之差例如:对于客户编码,初始值为100,步长为10,对于第一个客户编码为Coding00000100,那么第二个客户编码为Coding00000110。注意:一般用于编码规则的尾段,目的是为了对应用规则的对象进行计数和相关排序。校验码:检查编码是否存在分隔符以及编码长度是否符合要求。分9+1和EAN13两种验证码,主要是用来验证长度,而且检验码必须放在分录的最后一行。集团优先:集团内任何一个组织设定的编码规则均可以被集团内所有组织应用。多组织优先:指定的组织(可以指派多个)均可以使用当前规则。组织优先:指定的组织均可以使用当前规则。P83编码规则-断号与新增显示新增显示、不允许断号、新增显示且不允许断号新增显示:即单据新增时即产生编码,这样的方式不能用在不允许断号的场景,因为新增一个单据时就取了号,用户很可能不会保存这么一个单据,那这个取到号就会丢失,就会产生断号。不允许断号:不允许断号的应用场景就是要求断号约束的编码规则,要满足这种需求,必须在单据保存的时候才去取编码,这样才能保证的不丢失编码,另外,在单据删除时,发现当前启用的编码规则是不允许断号的时候,必须显式的调用编码规则的回收接口来回收当前的这个编码,以备下一次取编码的时候使用。新增显示且不允许断号:P84编码规则-流程图P85编码规则-编码生成P86编码规则实体中与BOTP相关的扩展属性:codingRuleEnable:实体类是否使用编码规则生成编码。CRNumberEdit:实体类使用编码规则生成编码后是否允许修改。CRDHMaintain:实体类是否使用编码规则断号维护功能。CRNumberAddView:实体类使用编码规则生成编码后是否在界面显示。CRDHRefuse:实体类使用编码规则生成编码是否不允许断号。CRAddNoBreak:实体类使用编码规则既在界面显示且不允许断号。isInCode:属性是否可用于编码规则中参与编码。isBindingProperty:属性是否编码规则过滤条件。P87编码规则相关开发接口P88编码规则相关开发接口P89编码规则相关开发接口P90编码规则相关开发接口P91编码规则相关开发接口P92编码规则相关开发接口P93编码规则获取编号ICodingRuleManageriCodingRuleManager=null;iCodingRuleManager=CodingRuleManagerFactory.getRemoteInstance();//判断规则是否存在iCodingRuleManager.isExist(billInfo,companyID);//是否启用断号支持iCodingRuleManager.isUseIntermitNumber(billInfo,companyID);//读取当前最新编码StringsysNumber=iCodingRuleManager.readNumber(billInfo,companyID);//没有启用断号支持功能,则获取编码规则产生的编码StringsysNumber=iCodingRuleManager.getNumber(billInfo,companyID);P94BOTP概述BOTP名称BOTP(BusinessObjectTranslatePlatform),业务对象转换平台。是为了解决单据和单据之间的数据转换的问题,通过参数配置的方式,让这种转换规则不再是一种固化的规则,而是可以灵活调配的BOTP原理基于元数据模型的对象转换引擎,提供单据间的自动转换BOTP职责通过统一的平台处理多种转换关系实现企业应用中的单据转换的可配置P95BOTP:属性映射(3种方式)直接映射:目标对象属性对应源对象属性缺省值:目标对象属性对应默认值公式计算:目标对象属性对应运算结果申请单号币别汇率经办时间公司供应商物料申请数量已订货数量采购申请单(源单据)采购订单号币别汇率经办时间公司供应商物料订货数量付款方式采购订单(目标单据)相减采购申请单(源单据)采购订单(目标单据)P96BOTP:分组与合并按公司分组合并订单号公司订货数量1A1001A3001A5001B2001B2001B200采购订单申请单号公司申请数量1A1001B2002B2002A3003A5003B200采购申请单订单号公司订货数量1A9001B600采购订单采购申请单采购订单采购订单11111111221133AAAABABBABBBBA按公司分组合并P97BOTP:反写转换申请单号申请人申请数量1张三1001李四200采购申请单(下达)订单号采购人订货数量1张三1001李四200采购订单申请单号申请人申请数量1张三1001李四200借款单[关闭]反写状态反写状态标志等P98BOTP:核销反写申请单号申请人申请数量已订货数量1张三100501李四2000采购申请单订单号采购人订货数量1张三501李四100采购订单转换核销反写申请单号申请人申请数量已订货数量1张三1001001李四200100采购申请单P99功能讲解单据的转换方式推式生成•由源单据生成成目标单据•分为两种方式:推式生成和关联生成•在单据编辑界面叫做推式生成,列表界面叫做关联生成•关联生成时可选择一条单据,也可选择多条拉式生成•在目标单据上从源单据“拉”数据生成目标单据•必须是新建的空目标单据才能拉式生成P100费用申请单申请单费用报销单推费用报销单出差任务单费用申请单借款单拉源单据目标单据推式生成拉式生成功能详解—单据转换方式P101BOTP扩展点实体中与BOTP相关的扩展属性:isForMapping:是否映射属性,单据/单据分录实体中需要参与BOTP映射的属性(作为目标单据)isForMatching:是否核销属性,单据/单据分录实体中需要参与BOTP核销的属性(作为目标单据)IsBOTPMustInput:用来做BOTP必录项设置ISACCTCUSSENT:(是否往来户ID)单据/单据分录实体中作为往来帐id的属性(作为源单据)isForGrouping:是否分组属性,单据/单据分录实体中需要参与BOTP分组合并的属性(作为目标单据)isForWrittenBack:是否反写属性,单据/单据分录实体中需要参与BOTP反写的属性(作为源单据)P102BOTP扩展点判断是否已生成凭证EAS6.1及以后版本还可以通过以下接口方法判断,IDAPTransformer类中提供了以下接口方法查询单据是否已生成凭证:publicbooleanisHaveVoucher(StringsrcBillId,StringcompanyOrgId)throwsBOSException;其中参数srcBillId为单据单据;参数companyOrgId用于指定组织ID,为空表示单账簿;返回值为boolean型,true表示已生成凭证,false表示未生成;P103转换前回调接口BOTP单据转换开始前会调用CoreBillListUI类的以下接口,业务开发可根据需要重载://在下推生成时,要求在转换前业务单据能够加上适当的校验,内容有具体单据单据填//充,框架不做处理;publicvoidbeforeTransform(IObjectCollectionsrcObjCols,StringdestBillBosType){}转换后回调接口BOTP在单据转换完成,单据保存、提交、显示前都会调用CoreBillBaseControllerBean类的以下接口,业务开发可根据需要重载://单据转换后回调接口,业务开发可根据需要重载protectedvoid_handleAfterTransform(Contextctx,Stringaction,IObjectCollectioncollection)throwsBOSException,EASBizException{}//单据转换后回调接口,业务开发可根据需要重载protectedvoid_handleAfterTransform(Contextctx,Stringaction,IObjectValueobjectValue)throwsBOSException,EASBizException{}BOTP扩展点P104权限系统BOS权限系统是基于用户、角色、组织、权限的思维权限模型,能够控制系统的功能、数据、属性各个维度,包括以下一些方面:1.权限项元数据:是所需要控制的功能的元数据模型,由开发人员在开发期间创建,元数据中可绑定界面操作功能、服务端方法、查询(query),部署时系统会将元数据信息同步到数据库中。2.功能权限:功能权限控制用户能做什么操作,BOS权限系统的权限和组织相关。3.普通数据权限:数据权限可以控制用户可以操作哪些数据记录,可以通过定义授权规则,限制用户拥有操作哪些数据的权限,这是一种纵向的数据控制。4.字段权限:字段权限控制用户可以操作哪些字段。5.特殊数据权限:业务操作中经常有这样的需求:用户只能对自己创建的单据进行操作,或用户只能对自己主管的部门的单据进行操作,这种规则是动态的,不能用普通的数据权限进行配置,由此产生了特殊数据权限参考资料:金蝶EAS_权限_二次开发指南.docP105工作流基本概念起源于生产组织和办公自动化领域。针对日常工作中具有固定程序的活动提出的一个概念。目的是通过将工作分解成定义良好的任务、角色,按照一定的规则和过程来执行这些任务并对它们进行监控,达到提高办事效率、降低生产成本、提高企业生产经营管理水平和企业竞争力的目标。P106扩展类出现背景案例-扩展类开发抽象类实现类二次开发新增单据发布标准产品修改单据发布先来了解下BOS发布生成代码体系P107案例-扩展类开发业务场景:很多业务场景下,需要我们对标准产品的单据进行二次开发。这时候我们就需要使用扩展类开发,服务端扩展相关步骤:1、用文本编辑器打开实体元数据PayRequestBill.entity,增加一扩展属性<rskey="entityObject[com.kingdee.eas.fi.ap.app.PayRequestBill].extendedProperty.controllerBeanEx"><langlocale="zh_CN"value="com.kingdee.eas.fi.ap.app.PayRequestBillControllerBeanEx"/><langlocale="zh_TW"value="com.kingdee.eas.fi.ap.app.PayRequestBillControllerBeanEx"/><langlocale="en_US"value="com.kingdee.eas.fi.ap.app.PayRequestBillControllerBeanEx"/></>P108案例-扩展类开发2、切换到java视图,创建XXXC...

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

碎片内容

金蝶EAS Cloud BOS开发平台功能和基础业务详介.pptx

管理软件+ 关注
实名认证
内容提供者

管理软件资料分享

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