Skip to content

金蝶 EAS BOS 核心架构与业务建模开发指南

本文系统梳理金蝶 EAS BOS 开发平台的核心架构、IDE 工具组成、业务单据与基础资料建模原理、代码继承扩展规范以及解决方案的导入部署流程。

1. BOS IDE 工具组成

金蝶 BOS 安装完成后,可以通过启动安装目录下的工具文件进入集成开发环境: bos/BOSModular/BOSModular.bat

标准轻量级二次开发主要包含三大核心部分:

[ 1. 金蝶 BOS 业务建模工具 ] ──> [ 2. 金蝶 BOS 设计开发工具 ] ──> [ 3. Java 扩展逻辑开发 ]
  1. 金蝶 BOS 业务建模工具:负责新建业务单元、定义元数据并与后台数据库结构进行刷盘同步。
  2. 金蝶 BOS 设计开发工具:对模型的“UI 零件”进行图形化编辑与细节调整(如调整界面控件坐标、样式等)。
  3. Java 底层代码扩展:基于框架自动生成的代码进行二次业务开发。

2. 业务单元分类

在 BOS 建模工具中,业务单元主要划分为以下两大类:

业务单元类型特性描述分录支持F7 参照支持
业务单据 (Bill)包含普通增删改查功能的业务主表及子表单据支持主从分录不直接作为参照对象
基础资料 (Data)基础主数据,常用于被其他业务单据关联参照不带从表分录支持 F7 弹窗参照选择

3. 模型组成零件解构

一个标准的 BOS 模型在底层拆解为以下五大零件:

  • entity (实体):数据模型定义,包含属性、校验规则与字段映射。
  • table (数据表):映射在物理数据库中的实际数据表。
  • relation (关系):定义当前实体字段与其他实体之间的主外键与引用依赖关系。
  • query (查询):SQL/EQL 数据库结果集定义,用于序时簿列表与 F7 弹窗展示。
  • ui (界面):分为两类:
    • list (序时簿列表):展示多条单据记录的列表表格界面。
    • edit (编辑窗体):单据新增、修改与查看的详情界面。

4. Java 代码继承与逻辑覆盖规范

每次在 BOS IDE 中发布业务单元或更新元数据时,平台会自动生成/覆盖 Java 抽象基类代码:

⚠️ 核心规范严禁直接修改抽象基类 (Abstract*.java)!因为每次重新发布元数据都会彻底覆盖抽象类。所有的控件事件、初始化逻辑与业务扩展必须在非抽象子类中进行方法重写(Override)!

java
// 1. 自动生成的抽象基类(包含控件坐标、实体的基本属性,重新发布会被覆盖)
public abstract class AbstractCustomerEditUI extends CoreUI {
    // 自动构建页面控件...
}

// 2. 开发者编写的实现子类(业务代码存放处,重新发布不会被覆盖)
public class CustomerEditUI extends AbstractCustomerEditUI {
    
    @Override
    public void onLoad() throws Exception {
        super.onLoad();
        // 在此处书写 UI 加载时的初始化业务代码
    }
}

5. 导入解决方案全流程

在多人协同或接手旧项目时,需要从 EAS 服务器导入已有的业务解决方案:

步骤 1:启动服务器端的 BIM 控制台

  1. 登录 EAS 后台 Linux 服务器。
  2. 进入安装目录:cd /home/kingdee/eas/admin/
  3. 执行脚本 ./admin.sh 打开 BOS 管理控制台,并启动 BIM 服务器

步骤 2:IDE 导入向导操作

  1. 打开 BOS 业务建模工具,在空白处右键选择 导入业务解决方案
  2. 配置本地工程名称、别名与磁盘物理存放路径。
  3. 输入 EAS 服务器 IP 地址、端口与管理员鉴权信息(默认管理账号:admin/admin)。
  4. 勾选对应的目标账套信息,点击完成,等待 IDE 自动从服务器同步并下载依赖 Jar 包与资源文件。

基于 VitePress 构建 | 技术知识库