【研发讲坛】MRP是否正在运行的判定逻辑

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

【研发讲坛】MRP是否正在运行的判定逻辑

1从锁的角度来判定:
MRP在运算的时候,会直接将组织id加上数据锁,所以直接通过MutexServiceControlFactory.getLocalInstance(ctx).requestObjIDForUpdate(storageOrgUnitID, ctx.getCaller().toString(),Uuid.create());
返回false,则说明无法取得锁表明当前组织MRP正在运行。 如果返回true说明可以获得锁,说明当前组织没有MRP运行,随后需要释放掉锁即可。
2 通过运算日志表来判断:
select FStatus from T_MM_MRPRunLog where FStorageOrgUnitID = '"+当前组织id+"'" order by fstarttime desc
取得最近的一次运算日志表,取结果的第一条,如果FStatus 为0,则说明正在运行,否则说明没有运行。
3 如果使用了集群,可以从进程数据表的角度来判断:
select FStop FROM t_mm_runstopparam where FStorageOrgUnitID = '"+当前组织ID+"'",FStop 为1 说明正在运行,否则说明没有运行。


不错,学习了

【研发讲坛】MRP是否正在运行的判定逻辑

1从锁的角度来判定:MRP在运算的时候,会直接将组织id加上数据锁,所以直接通过MutexServiceControlFactory.getLocalInstance(ctx).request...
点击下载文档
分享:
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息