本文介绍了金蝶云星空系统的二次开发,由于相关资料分散,项目旨在整合文档和帖子以方便开发者。主要讲述了BOS平台及其技术、插件类型与功能、WebAPI的能力与约束,并提供了二次开发的知识地图、安装部署指南、开发规范、工作流、账表报表平台、移动平台开发等内容,还提及了系统集成和使用Python进行二次开发的便利。
金蝶云星空系统二次开发资料相对分散,开发者在学习和开发时为了解决问题需要花费不少的精力去寻找文档和资料,本项目尽力将文档和帖子综合在一起。
金蝶云.星空系统二次开发基础介绍
星空系统的二次开发主要分为以下几个部分的相互配合来达到对星空系统的增强:
BOS开发
BOS插件开发
WebAPI开发
金蝶云BOS的全称是Business Operation System(业务操作系统),是针对金蝶云产品,自主研发的新一代技术平台。其核心技术是动态领域建模。基于动态领域建模技术, BOS平台抽象了动态表单、业务单据、基础资料、业务流程、工作流、报表、弹性域、权限、多组织架构模型和框架,提供了元数据驱动架构、一系列业务模型元数据解释引擎和运行时业务服务构件,面向业务人员领域建模,快速搭建复杂的、可扩展的商业应用,满足企业未来发展和变化的应用需要,为客户带来持续的信息化投资收益。BOS平台还提供了一套完整的业务建模、插件开发、系统测试、运行部署的解决方案,允许伙伴、独立软件开发商、客户聚焦于高价值的应用,可以以最小的代价基于BOS平台开发行业扩展应用,也可开发独立的应用系统,而无需关注技术细节。
BOS平台提供动态扩展功能,通过动态领域模型建模将业务成各种标准接口和标准服务,通过插件 开发完成标准业务扩展,快速高效实现个性化和非标准化业务。
BOS平台的插件是一种专门为某一软件设计、用于功能扩充的程序。
通过它可以:
实现更灵活的控制方式和客户化定制;
实现标准产品中特殊的业务流程处理;
进行个性化的菜单、外观定制;
增加自定义的菜单并响应其操作;
对已有操作和服务未支持的功能进行扩展;
快速开发、快速实施、快速应用;
可配置,可测试,快速部署。
BOS平台提供了4类插件:
动态表单插件
业务逻辑封装的插件,用于单据上业务各种事件、操作和服务的介入;
提供了一系列事件、操作和服务接口;
此类插件最常用。服务插件
基于动态表单服务端的插件,提供服务编程接口;
此类接口在外部服务直接调用。校验规则插件
针对业务规则进行校验的插件;表单构建插件
对界面加载控件和元数据的插件;
通过此插件可对界面控件及元数据动态调整实现特殊需求。
WebAPI 为异构系统访问 K/3Cloud 系统数据提供通用的接口。WebAPI是一种轻量级的、可维护的、可伸缩的 Web 服务。采用 HTTP+JSON,也就是用RESTful的方式来开发。使用 .NET Framework 4.0 为开发平台,源代码使用 C#编写。整个框架由 三个组装件组成。 WebAPI提供了以下能力:
提供对 K/3Cloud 单据和基础信息的查看、保存、提交、审核、反审核和删除等功能;
提供对 K/3Cloud 单据和基础信息的查询功能;
但是WebAPI有以下约束:
数据操作接口仅支持以基础资料编码、单据编号或直接以表单主键去操作数据;
支持对某一具体单据的数据查询,但多单关联查询需要二开接口实现。
WebAPI官方文档【重要】:https://openapi.open.kingdee.com/ApiHome
金蝶云.星空 - 二次开发知识地图
安装部署
请在官网下载最新版本安装包+最新补丁包,参考安装包help目录下的产品安装指南。
金蝶云星空开放平台的官网地址是:https://open.kingdee.com
安装问题排除参考:https://vip.kingdee.com/article/45669
开发规范
BOS IDE入门
基本配置手册及常用操作说明【基础】
BOS设计器【入门】
扩展业务对象【入门】
新建业务对象【入门】
权限控制【入门】
BOS IDE案例【视频】
BOS平台院校版教材【入门】
常用功能
编码规则【重要】
附件及文件服务器
值更新/实体服务
网络控制
业务配置
自动补号重构说明
发送邮件
系统预设快捷键
上机操作日志丢失排查
Win10环境兼容问题解决方法
帐表
报表平台【入门】
简单帐表
分页帐表
直接SQL帐表
透视表
帐表开发【汇总贴】
账表服务取数插件示例代码
万能报表
部署/发布/解决方案
套打
套打平台【汇总贴】
凭证打印从入门到进阶【汇总贴】
操作手册【基础】
套打模板操作案例【视频】
常见问题
常见问题与应用
工作流
业务流
移动平台
移动BOS平台【汇总贴】
移动平台开发【入门】
移动开发知识【汇总贴】
插件开发
从零开始开发插件【入门】
二次开发开规范部署【入门】
数据模型【基础】
BOS二次开发示例【汇总贴】
流程插件开发
二次开发基于WebDev附加进程调试【入门】
DynamicObject的结构及操作【入门】
弹性域
不重启IIS开发插件【重要】
系统集成
系统集成使用指南【汇总贴】
K/3 Cloud系统集成【汇总贴】
执行计划
常见案例
相对于C#来说,Python插件不需要特殊的环境,只需要BOS开发平台即可可以,开发速度也比C#快,代码量也少的可怕。
其他
推荐阅读