首编于:2024年10月09日
关键词:BOS二开、基础介绍、BOS环境搭建、二开注意事项
前言:
金蝶 EAS-BOS 作为金蝶企业应用套件(EAS)的集成开发平台,为构建、定制以及扩展企业级应用系统提供了一整套完备的工具与框架。在整个 EAS 体系里,BOS 占据核心之位,向上能够有力地支撑诸如财务、供应链、人力资源等各类业务应用模块;向下则与数据库、操作系统等基础软件紧密交互,从而实现数据的妥善存储以及系统的稳定运行。
小编身为金蝶机构的一名开发人员,投身于 EAS-BOS 二次开发领域已然长达十年之久,对于诸多 BOS 二次开发问题基本都能迎刃而解。日常工作主要涵盖项目开发、各项目的运维支持以及月结事宜。本系列文章主要面向具备一定 JAVA 开发经验以及拥有数据库(oracle、sqlserver、mysql 等)脚本编写能力的开发人员。输出BOS二开常见问题系列文章的目的是为了帮助同样从事BOS二次开发人员,在遇到类似问题时,能快速定位解决问题,提高开发效率。本文主要涉及BOS环境搭建的一些小经验和二开的注意事项。
一、BOS环境搭建的一些小经验
1、最开始肯定是要搭建BOS开发环境,那么可以了解客户所使用的EAS版本,从而知道我们应该下载哪个版本的BOS工具(虽说高版本一般会兼容低版本,但建议用同版本的工具),一般我们都可以在云之家的企业云盘中下载到https://pan.yunzhijia.com/index?appid=101091498&client_id=101091498&expire_time=1729674773329&msgShowStyle=31#/com/560823
2、BOS工具安装好之后,就是导入解决方案了,有两种方式:
1>可以从远程服务器直接导入,如下图
当导入时可能会提示如下图信息
解决方法:联系系统管理员,找到对应的EAS应用服务的管理控制台将BIM启动即可(不需要停服务哦,只需要将BIM启动即可)
用该种远程服务器直接导入的方式,可能会出现下载资源丢失的情况(一般就是sql包,语言包太大导致),处理方法,可以停掉服务,将比较大的几个包先备份删除,然后再导入,在导入成功后将这几个包再放回原路径下,同样的也要将这几个包放到自己的开发环境对应的目录下
2>从本地服务器导入,如下图:
处理方式:将服务器的server包打包拷贝下来放到自己的电脑上,然后解压,再用上面的从本地服务导入的方式(此种方式是比较稳妥的,但一般server包会有10几个G,需看下电脑空间够不够)
二、二次开发过程中我们需要注意的事项:
1、需求分析阶段
在承接一个项目时,需求分析与明确需求乃是关键之重。务必与业务部门展开充分沟通,深度洞察客户的业务流程与实际需求,确保所开发的功能能够切实有效地解决业务痛点。明确需求后,必须将详细需求整理成文档,并与客户以及项目相关人员进行确认签字。尤其是在需求变更时,更应如此处理,以免日后出现推诿扯皮的现象。
此外,需根据企业的战略目标与紧急程度,确定需求的优先级,进而合理规划开发进度。
2、开发过程阶段
a.熟悉系统架构
要深入熟悉 EAS-BOS 的系统架构。特别是在对标准单据进行二次开发时,切不可使用 BOS 工具对元数据进行修改,否则会对升级造成影响。通常情况下,对于标准单据的改造,我们会通过 dep 进行处理,或者直接采用写代码的方式。
b.遵循开发规范
应当严格遵循开发规范,涵盖代码风格、命名规范以及注释要求等方面。例如,新增的二开单据若为付款申请单,应命名为“paymentbill”,切勿使用拼音首字母如“fksqd”之类的难以解读的命名方式。对于新增字段,若为编码,则应命名为“number”,而不是使用中文拼音“bianma”。另外,强烈要求在编写代码时必须添加注释,否则后续的项目维护将极为困难。作为一名运维支持人员,每当看到几乎没有注释甚至一行注释都没有的代码,尤其是那种长达几千行的类时,着实令人头疼。
c.避免过度定制
在满足需求的前提下,应尽量减少对原系统的定制,以降低维护成本和升级难度。要基于我们的 BOS 框架进行开发。
3、代码实现方面
a.代码质量控制
编写高质量的代码,并进行充分的代码审查,以确保代码具有良好的可读性、可维护性和可扩展性。对于一些较为常用的代码,例如获取 dep 控件的方法,可以直接编写一个工具类,避免每次获取 dep 控件时都重复编写代码。在进行接口开发时,可将第三方的配置信息单独放在一个类中,这样当第三方进行修改时,只需修改该类即可,无需在每一个涉及该配置的地方都进行修改,从而提高开发效率。
b.数据安全考虑
在开发过程中,要充分考虑数据的安全性,采取适当的加密、权限控制等措施。例如,在开发接口时,要进行必要的信息校验,如登录接口。
4、测试与部署阶段
a.全面测试
进行单元测试、集成测试、系统测试等多种测试,确保二次开发的功能稳定可靠。
b.兼容性测试
测试新功能与原系统以及其他相关系统的兼容性,避免出现冲突。尤其要重点关注版本是否支持。
c.部署前准备
在部署前,做好数据备份、环境检查等准备工作,确保部署过程顺利进行。
小经验分享:通常情况下,测试人员在测试时会按照现有的业务场景进行操作测试,因此可能会有一些 Bug 无法被检测出来。建议二次开发人员在进行测试时,可以进行多种操作,比如不输入某些值、输入不符合规范的值,甚至在界面上随意点击、进行误操作等,以查看是否存在问题。
5、维护与升级阶段
a.文档记录
对二次开发的过程和结果进行详细的文档记录,以便于后续的维护和升级。需求文档、设计文档、开发文档、操作文档等都应具备。在此强调,开发文档要尽可能详细地编写,并多做截图说明。例如接口开发文档,要详细描述接口的地址、账号信息、报文样例等内容。接口账号切记不能修改或删除,并知会项目相关人,曾经在一个项目中,突然所有接口都无法使用,经检查发现是接口账号的密码被修改了。因此,建议在该接口账号处添加备注信息。
b.持续优化
密切关注系统的运行情况,及时进行性能优化和功能改进,以满足企业不断变化的需求。
持续更新中,欢迎指正~~~~