INV库存事务处理卡在接口表重新提交依然报错误

本文讨论了在库存事务处理接口导入过程中遇到的ORACLE错误问题,包括错误原因分析、常见现象和解决方案。重点介绍了如何通过检查MTL_MATERIAL_TRANSACTIONS_TEMP表中的数据状态来定位问题,并提出了两种处理方法:对于已手动补录的数据,删除接口表数据后删除临时表;对于未补录数据,删除错误数据后由定时运行的库存管理器重新导入。此外,文章还强调了避免异常中断请求的重要性,以及在重启应用和数据库时的正确操作步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

问题描述:子库存转移卡在事务处理接口,错误为ORACLE错误,重新提交请求依然报错

库存事务处理的流程如下:

INV库存事务处理卡在接口表重新提交依然报错误 -   不见 - Oracle ERP~菜鸟笔记

 

在库存事务处理接口导入过程中,后台请求“库存事务处理工作流程”,将MTL_TRANSACTIONS_INTERFACE表中的数据写入临时表MTL_MATERIAL_TRANSACTIONS_TEMP,

然后做数据验证,验证无误后会将数据导入到标准表MTL_MATERIAL_TRANSACTIONS,同时删除接口表和临时表的信息;如果错误则删除临时表信息回写错误信息到接口表。

 

案例中,检查错误发现MTL_MATERIAL_TRANSACTIONS_TEMP表中有大约有300多条,接口数据没有导入成功但临时表数据却没有回滚。一般只有事务处理导入请求运行时请求被异常中断才会发生。 和相关人员确认系统当时是否出现过异常。
当前再次提交请求:库存事务处理工作流程依然报错是当interface表插入到mtl_material_transactions_temp时因该表中temp_id已经存在从而违反了唯一性索引(INV.MTL_MATERIAL_TRANS_TEMP_U1)造成的。

因此处理方法是:和相关用户确认这些事物处理的状态并根据实际情况进行处理:
1. 如果用户用手工或者其他方式补录入了事务处理。先删除接口表MTL_TRANSACTIONS_INTERFACE数据,再删除临时表MTL_MATERIAL_TRANSACTIONS_TEMP数据
2. 如果用户没有补录数据,则删除临时表MTL_MATERIAL_TRANSACTIONS_TEMP中的错误数据,定时运行的库存管理器会将接口数据重新导入

备注:导致该问题的原因一般是由于在请求“库存事务处理工作流程”运行过程中请求session被异常中断,导致临时表没有正常回滚。建议用户避免从后台中断或kill请求“库存事务处理工作流程”的session。用户在重启应用和数据库时,一定要等请求的session完成后再进行数据库的启停操作。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值