金蝶BOS开发指南_BOTP
金蝶BOS 开发指南——BOTP
索引目录
1 BOTP总体介绍 .................................................................................................................................................................. 4
1.1 BOTP简介 ............................................................................................................................................................... 4 1.2 BOS BOTP产品特性 .............................................................................................................................................. 4 2 BOTP规则定义实例 ..................................................................................................................................................... 5
2.1 新增转换规则定义 ........................................................................................................................................ 5 2.2 设置规则编码/名称 ....................................................................................................................................... 6 2.3 设置单据头属性 ............................................................................................................................................ 7 2.4 设置单据体(分录)属性 ................................................................................................................................. 7 2.5 设置分组合并规则 ........................................................................................................................................ 8 2.6 设置反写规则 ................................................................................................................................................ 9 2.7 设置源单属性 ................................................................................................................................................ 9 2.8 设置规则过滤 .............................................................................................................................................. 10 2.9 设置数据过滤 .............................................................................................................................................. 10 2.10 启用规则 ...................................................................................................................................................... 11 2.11 执行单据转换 .............................................................................................................................................. 12 2.12 查看转换结果 .............................................................................................................................................. 12 3 BOTP规则定义详解 ................................................................................................................................................... 13
3.1 规则列表界面 .............................................................................................................................................. 13 3.2 规则编辑界面 .............................................................................................................................................. 14 3.3 单据头属性设置 .......................................................................................................................................... 15 3.4 单据体属性设置 .......................................................................................................................................... 16 3.5 公式平台 ...................................................................................................................................................... 16 3.6 计算公式定义 .............................................................................................................................................. 17 3.7 使用函数 ...................................................................................................................................................... 18 3.8 分组合并规则 .............................................................................................................................................. 19 3.9 反写源单 ...................................................................................................................................................... 20
3.9.1 反写概述 .............................................................................................................................................. 21 3.9.2 规则反写 .............................................................................................................................................. 21
3.9.2.1 一般反写 .............................................................................................................................. 21 3.9.2.2 核销反写 .............................................................................................................................. 22 3.9.3 业务反写 .............................................................................................................................................. 22 3.9.4 批量反写 .............................................................................................................................................. 22 3.9.5 删除反反写 .......................................................................................................................................... 23 3.9.6 反写机制 .............................................................................................................................................. 23 3.10 源单属性设置 .............................................................................................................................................. 23 3.11 规则过滤设置 .............................................................................................................................................. 25
1 / 59
金蝶BOS开发指南_BOTP
3.12 3.13 3.14
4
5
6
数据过滤设置 .............................................................................................................................................. 25 规则复制 ...................................................................................................................................................... 26 规则导入导出 .............................................................................................................................................. 27 3.14.1 规则导出 .............................................................................................................................................. 27 3.14.2 规则导入 .............................................................................................................................................. 27 3.15 规则比较 ...................................................................................................................................................... 28 3.16 扩展属性设置 .............................................................................................................................................. 29
3.16.1 isForMapping ....................................................................................................................................... 29 3.16.2 isForMatching ...................................................................................................................................... 29 3.16.3 isForGrouping ...................................................................................................................................... 29 3.16.4 isForWrittenBack ................................................................................................................................. 30 3.16.5 isBotpMustInput ................................................................................................................................... 30 3.16.6 isDelRelationsWithoutEntries .............................................................................................................. 30 3.16.7 isSubmitReverseWrite .......................................................................................................................... 31 3.16.8 其它扩展属性 ...................................................................................................................................... 31 BOTP函数................................................................................................................................................................... 32 4.1 标准函数 ...................................................................................................................................................... 32
4.1.1 基础资料函数 ...................................................................................................................................... 32 4.1.2 业务组织函数 ...................................................................................................................................... 33 4.1.3 其它函数 .............................................................................................................................................. 34 4.1.4 数学函数 .............................................................................................................................................. 34 4.1.5 字符串函数 .......................................................................................................................................... 35 4.1.6 时间日期函数 ...................................................................................................................................... 35 4.1.7 聚合函数 .............................................................................................................................................. 36 4.1.8 I/O函数................................................................................................................................................ 36 4.1.9 其它函数 .............................................................................................................................................. 36 4.1.10 空处理函数 .......................................................................................................................................... 36 4.2 自定义函数支持 .......................................................................................................................................... 36 BOTP上下查 ............................................................................................................................................................... 39 5.1 界面操作 ...................................................................................................................................................... 39 5.2 编程说明 ...................................................................................................................................................... 40 5.3 其它接口 ...................................................................................................................................................... 41 BOTP编程要点 ........................................................................................................................................................... 42 6.1 规则定义 ...................................................................................................................................................... 42
6.1.1 组织隔离 .............................................................................................................................................. 42 6.1.2 属性是否可修改 .................................................................................................................................. 42 6.2 保存模式 ...................................................................................................................................................... 42
6.2.1 不保存单据 .......................................................................................................................................... 42 6.2.2 暂存单据 .............................................................................................................................................. 43 6.2.3 提交单据 .............................................................................................................................................. 43 6.3 推式生成 ...................................................................................................................................................... 43
6.3.1 界面操作 .............................................................................................................................................. 43 6.3.2 规则选择 .............................................................................................................................................. 44
2 / 59
金蝶BOS开发指南_BOTP
拉式生成 ...................................................................................................................................................... 44 6.4.1 界面操作 .............................................................................................................................................. 44 6.4.2 规则选择 .............................................................................................................................................. 45 6.4.3 源单列表 .............................................................................................................................................. 45 6.4.4 重新上拉 .............................................................................................................................................. 46 6.5 凭证 .............................................................................................................................................................. 46
6.5.1 判断是否已生成凭证 .......................................................................................................................... 46 6.6 分组合并 ...................................................................................................................................................... 47
6.6.1 分组合并设置原理 .............................................................................................................................. 47 6.6.2 按照分录字段来分单 .......................................................................................................................... 49 6.7 BOTP转换日志 ........................................................................................................................................... 51 7 BOTP扩展点 ............................................................................................................................................................... 51
7.1 过滤源单规则类型 ...................................................................................................................................... 51 7.2 过滤目标单规则类型 .................................................................................................................................. 51 7.3 转换前回调接口 .......................................................................................................................................... 52 7.4 转换后回调接口 .......................................................................................................................................... 52 7.5 指定源单字段 .............................................................................................................................................. 52 7.6 转换是否显示规则界面 .............................................................................................................................. 53 7.7 判断当前UI是否为BOTP打开 ................................................................................................................ 53 7.8 上拉源单界面是否显示合计行 .................................................................................................................. 53 8 BOTP常见问题 ........................................................................................................................................................... 54
8.1 规则定义F7界面不能看到指定属性 ........................................................................................................ 54 8.2 规则定义”值列表搜索”查询出错 .............................................................................................................. 54 8.3 转换后部分连接属性不能正常显示 .......................................................................................................... 55 8.4 getObjectById函数出错 ............................................................................................................................. 56 8.5 二次开发单据使用公式不能带值到目标单 .............................................................................................. 56 8.6 自定义函数需要在函数中引用context应该怎么获取 ............................................................................ 56 8.7 配置了源单分录的分组属性后不能正常分单 .......................................................................................... 56 8.8 生成凭证后提示无分录或至少需要一条分录 .......................................................................................... 57 8.9 生成凭证后辅助帐丢失 .............................................................................................. 错误!未定义书签。 8.10 HDD单据转换正确但分组错误 ................................................................................ 错误!未定义书签。 附录A .................................................................................................................................................................................. 58
6.4
3 / 59
金蝶BOS开发指南_BOTP
1 BOTP总体介绍
BOTP系统在企业信息化系统中一直扮演一个重要的角色,在BOS基础体系结构中,BOTP系统也是一个非常重要的支撑系统,是保证业务灵活随需应变的一个关键系统。本篇文档将会详细介绍BOS BOTP系统方方面面的知识,并将不断的进行完善和更新。 1.1 BOTP简介
BOTP是BOS平台提供的一套用于单据间自动转换的工具方法和界面UI的集合;
企业管理过程是动态的过程管理,随着实际情况不断变化,不是固化的。应用软件作为协助企业管理的工具,也要求能动态适应这个变化。
企业的各种业务之间存在一定的逻辑关系,而且这种逻辑关系在不同企业,或企业的不同时期是不同的。体现在管理软件中就是一种单据的数据,是根据另一单据的数据得来的,比如收款一般都是根据开票的金额决定的;发票或收款的金额需要做账生成凭证等。
在不同企业或企业的不同时期,转换规则存在变化。EAS系统中为了快速地适应这些变化,开发了单据转换平台,无须编程就可动态定制这些转换规则。当业务发生了变化时,可以重新定义或修订转换关系,以满足管理变化的需要。
1.2 BOS BOTP产品特性
在业务系统中有许多涉及不同单据间转换及与第三方数据集成的应用,这些应用的本质都是从一种对象转换到另一种对象,因此在BOS中单独设计一套基于元数据模型的对象转换引擎来提供该服务,在此基础上便于应用的搭建。
BOTP主要包括转换影射关系定义、转换规则定义、转换引擎三部分。
BOTP主要的作用就是支持用户在各种业务单据间定义转换关系,并自动/批量地帮助用户将源单据转换生成目标单据,从而大大地减少业务人员的相关工作量;
4 / 59
金蝶BOS开发指南_BOTP
2 BOTP规则定义实例
BOTP主要的操作流程如下:
第一步: 建立业务单据的元数据
第二步: 建立各业务单据类型之间的单据转换规则 第三步: 选择源单据
第四步: 执行单据转换,生成目标单 第五步: 查看/编辑目标单
第六步: 保存/提交目标单据转换结果,系统执行反写源单 第七步: 根据需要对目标单进行下一步处理
下面我们以一个典型的单据转换: 采购入库单生成库存调拨单为例来示范一下BOTP的工作流程; 2.1 新增转换规则定义
首先进入转换规则列表界面, 然后新增一个单据转换规则,需要选择转换规则的类型, 分为”动态会计规则”和”单据转换规则”两种:
在这里我们选择”单据转换规则”, 接下来点击F7按钮, 选择”源单据”类型和”目标单据”类型:
然后点击”确定”进入规则定义界面;
5 / 59