最近客户在测试环境做单据,一直出现DBSQL_DUPLICATE_KEY_ERROR的DUMP。ST22查看报错原因,发现报错的地方都是在insert插表的时候。然后想到可能是号码段的问题,问了一下客户,前段时间做过Client Copy的操作。copy了正式环境的数据和配置到测试环境,但是号码段不属于配置,一般上线号码段都是单独配的。导致号码段的编号落后于数据表中的编号,就比如说测试库的号码段编号现在是30,下一条产生的数据应该是31,但是数据表中编号已经到了70,也就是说31这条数据已经存在了,所以inert的时候就报了DBSQL_DUPLICATE_KEY_ERROR错误。
解决方法就是讲号码段的编号调成与数据表中的一致即可。
比如:
上图的路径是:SPRO->物料管理->采购->合同->定义编号范围
OVER…