分录转换规则匹配字段配置太多,导致对应关系保存报错,提示目标缓冲区太小,无法容纳字符集转换之后的数据

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

分录转换规则匹配字段配置太多,导致对应关系保存报错,提示目标缓冲区太小,无法容纳字符集转换之后的数据

**需求背景:** 二开单据配置botp规则时,由于分录转换规则配置的字段过多,导致再保存规则的时候,提示目标缓冲区太小,无法容纳字符集转换之后的数据 ![2.webp](/download/0100710bee45d8574778850f7e24d30ed9ca.webp)

**解决思路:** 1、由于配置的规则都会存储到T_BOT_MAPPING表中FEXTCONFIG字段中,所以我们先通过sql语句 select * from KSQL_USERCOLUMNS where KSQL_COL_NAME = 'FEXTCONFIG' 查看FEXTCONFIG字段的字段类型为varchar2类型,长度为4000 ![3.webp](/download/0100456768afe4bf4d308909ce7aa4275899.webp)


2、报错提示:目标缓冲区太小,无法容纳字符集转换之后的数据,通过查看日志发现转换规则的额外配置长度超过了4000,所以需要考虑存储更大的clob类型。(即:将FEXTCONFIG字段的字段类型由varchar2更改为clob) 操作步骤如下: 1)拷贝一份T_BOT_MAPPING,生成备份表 T_BOT_MAPPING_1112 select * into T_BOT_MAPPING_1112 from T_BOT_MAPPING 2)查看备份表 T_BOT_MAPPING_1112中是否已有T_BOT_MAPPING表中的数据 select * from T_BOT_MAPPING_1112 3)向T_BOT_MAPPING表中添加类型为clob类型的FEXTCONFIG1字段 alter table T_BOT_MAPPING add (FEXTCONFIG1 clob) 4)将T_BOT_MAPPING表中FEXTCONFIG字段的数据拷贝一份到FEXTCONFIG1字段中 UPDATE T_BOT_MAPPING SET FEXTCONFIG1 = FEXTCONFIG 5)将T_BOT_MAPPING表中的FEXTCONFIG字段删除 alter table T_BOT_MAPPING drop column FEXTCONFIG 6)向T_BOT_MAPPING表中添加类型为clob类型的FEXTCONFIG字段 (`提示:上一步的删除和这一步的添加,目的是为了更新FEXTCONFIG字段的数据类型`) alter table T_BOT_MAPPING add (FEXTCONFIG clob) 7)将T_BOT_MAPPING表中FEXTCONFIG1字段的数据拷贝一份到FEXTCONFIG字段中 (`这样就达到了将FEXTCONFIG字段数据类型给更新了,同时恢复之前的数据`) UPDATE T_BOT_MAPPING SET FEXTCONFIG = FEXTCONFIG1 8)将T_BOT_MAPPING表中的FEXTCONFIG1字段删除 alter table T_BOT_MAPPING drop column FEXTCONFIG1 9)`请在确保测试无误之后再删除备份表`(当然也可以不删除) drop TABLE T_BOT_MAPPING_1112

分录转换规则匹配字段配置太多,导致对应关系保存报错,提示目标缓冲区太小,无法容纳字符集转换之后的数据

**需求背景:** 二开单据配置botp规则时,由于分录转换规则配置的字段过多,导致再保存规则的时候,提示目标缓冲区太小,无法容纳字...
点击下载文档
分享:
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息